Change Medic and Commando perks to be one perk

This commit is contained in:
Anton Tarasenko 2020-04-21 13:55:36 +07:00
parent e7d1c539e8
commit ae28c24ef6
17 changed files with 103 additions and 43 deletions

View File

@ -272,17 +272,17 @@ simulated function Tick(float deltaTime){
if(gunslingerTimer <= 0) if(gunslingerTimer <= 0)
nicePlayer.abilityManager.SetAbilityState(1, ASTATE_COOLDOWN); nicePlayer.abilityManager.SetAbilityState(1, ASTATE_COOLDOWN);
} }
// Regen // Regen
if(class'NiceVeterancyTypes'.static.hasSkill(NicePlayerController(Controller), class'NiceSkillMedicRegeneration')){ if(class'NiceVeterancyTypes'.static.hasSkill(NicePlayerController(Controller), class'NiceSkillCommandoRegeneration')){
if(health < healthMax) if(health < healthMax)
regenTime += deltaTime; regenTime += deltaTime;
while(regenTime > class'NiceSkillMedicRegeneration'.default.regenFrequency){ while(regenTime > class'NiceSkillCommandoRegeneration'.default.regenFrequency){
if(health < healthMax) if(health < healthMax)
health += 1; health += 1;
else else
regenTime = 0.0; regenTime = 0.0;
regenTime -= class'NiceSkillMedicRegeneration'.default.regenFrequency; regenTime -= class'NiceSkillCommandoRegeneration'.default.regenFrequency;
} }
} }
// Update adrenaline // Update adrenaline
medicAdrenaliteTime -= deltaTime; medicAdrenaliteTime -= deltaTime;

View File

@ -162,9 +162,9 @@ simulated function HandleNiceHealingMechanicsAndSkills
if(nicePlayer == none) if(nicePlayer == none)
return; return;
if(class'NiceVeterancyTypes'.static. if(class'NiceVeterancyTypes'.static.
hasSkill(nicePlayer, class'NiceSkillMedicAdrenalineShot')){ hasSkill(nicePlayer, class'NiceSkillCommandoAdrenalineShot')){
healed.medicAdrenaliteTime = healed.medicAdrenaliteTime =
class'NiceSkillMedicAdrenalineShot'.default.boostTime; class'NiceSkillCommandoAdrenalineShot'.default.boostTime;
} }
if(class'NiceVeterancyTypes'.static. if(class'NiceVeterancyTypes'.static.
hasSkill(nicePlayer, class'NiceSkillMedicSymbioticHealth')){ hasSkill(nicePlayer, class'NiceSkillMedicSymbioticHealth')){
@ -176,7 +176,7 @@ simulated function HandleNiceHealingMechanicsAndSkills
KFWeapon(healer.weapon)); KFWeapon(healer.weapon));
} }
hasZEDHeavenCanceller = class'NiceVeterancyTypes'.static. hasZEDHeavenCanceller = class'NiceVeterancyTypes'.static.
hasSkill(nicePlayer, class'NiceSkillMedicZEDHeavenCanceller'); hasSkill(nicePlayer, class'NiceSkillCommandoZEDHeavenCanceller');
if(nicePlayer.IsZedTimeActive() && hasZEDHeavenCanceller){ if(nicePlayer.IsZedTimeActive() && hasZEDHeavenCanceller){
healed.health = healed.healthMax; healed.health = healed.healthMax;
healed.bZedTimeInvincible = true; healed.bZedTimeInvincible = true;
@ -253,7 +253,7 @@ simulated function HandleNiceDamageMechanicsAndSkills
// Medic's skills // Medic's skills
if(class<NiceDamTypeMedicDart>(damageType) != none){ if(class<NiceDamTypeMedicDart>(damageType) != none){
hasTranquilizer = class'NiceVeterancyTypes'.static. hasTranquilizer = class'NiceVeterancyTypes'.static.
hasSkill(nicePlayer, class'NiceSkillMedicTranquilizer'); hasSkill(nicePlayer, class'NiceSkillCommandoTranquilizer');
hasZEDFrenzy = class'NiceVeterancyTypes'.static. hasZEDFrenzy = class'NiceVeterancyTypes'.static.
hasSkill(nicePlayer, class'NiceSkillMedicZEDFrenzy'); hasSkill(nicePlayer, class'NiceSkillMedicZEDFrenzy');
// Medic's suppression // Medic's suppression

View File

@ -0,0 +1,5 @@
class NiceDamTypeMedicDart extends NiceDamageTypeVetCommando
abstract;
defaultproperties
{
}

View File

@ -9,15 +9,23 @@ static function int GetStatValueInt(ClientPerkRepLink StatOther, byte ReqNum){
static function array<int> GetProgressArray(byte ReqNum, optional out int DoubleScalingBase){ static function array<int> GetProgressArray(byte ReqNum, optional out int DoubleScalingBase){
return default.progressArray0; return default.progressArray0;
} }
static function class<Grenade> GetNadeType(KFPlayerReplicationInfo KFPRI){
/*if(KFPRI != none && class'NiceVetFieldMedic'.static.hasSkill(NicePlayerController(KFPRI.Owner), class'NiceSkillMedicArmament'))
return class'NicePack.NiceMedicNade';*/
return class'NiceMedicNadePoison';
}
static function float GetHealthBarsDistanceMulti(KFPlayerReplicationInfo KFPRI){ static function float GetHealthBarsDistanceMulti(KFPlayerReplicationInfo KFPRI){
if(KFPRI != none && SomeoneHasSkill(NicePlayerController(KFPRI.Owner), class'NiceSkillCommandoStrategist')) /*if(KFPRI != none && SomeoneHasSkill(NicePlayerController(KFPRI.Owner), class'NiceSkillCommandoStrategist'))
return class'NiceSkillCommandoStrategist'.default.visionRadius; return class'NiceSkillCommandoStrategist'.default.visionRadius;*/
return 0.0; return 1.0;
} }
static function float GetStalkerViewDistanceMulti(KFPlayerReplicationInfo KFPRI){ static function float GetStalkerViewDistanceMulti(KFPlayerReplicationInfo KFPRI){
if(KFPRI != none && SomeoneHasSkill(NicePlayerController(KFPRI.Owner), class'NiceSkillCommandoStrategist')) /*if(KFPRI != none && SomeoneHasSkill(NicePlayerController(KFPRI.Owner), class'NiceSkillCommandoStrategist'))
return class'NiceSkillCommandoStrategist'.default.visionRadius; return class'NiceSkillCommandoStrategist'.default.visionRadius;*/
return 0.0; return 1.0;
}
static function bool CanCookNade(KFPlayerReplicationInfo KFPRI, Weapon Weap){
return GetNadeType(KFPRI) != class'NicePack.NiceMedicNadePoison';
} }
static function float GetMagCapacityMod(KFPlayerReplicationInfo KFPRI, KFWeapon Other){ static function float GetMagCapacityMod(KFPlayerReplicationInfo KFPRI, KFWeapon Other){
local class<NiceWeaponPickup> pickupClass; local class<NiceWeaponPickup> pickupClass;
@ -26,13 +34,24 @@ static function float GetMagCapacityMod(KFPlayerReplicationInfo KFPRI, KFWeapon
return class'NiceSkillCommandoLargerMags'.default.sizeBonus; return class'NiceSkillCommandoLargerMags'.default.sizeBonus;
return 1.0; return 1.0;
} }
static function float GetSyringeChargeRate(KFPlayerReplicationInfo KFPRI){
return 3.0;
}
static function float GetHealPotency(KFPlayerReplicationInfo KFPRI){
local float potency;
potency = 1.5;
return potency;
}
static function float GetMovementSpeedModifier(KFPlayerReplicationInfo KFPRI, KFGameReplicationInfo KFGRI){
return 1.1;
}
static function float GetReloadSpeedModifierStatic(KFPlayerReplicationInfo KFPRI, class<KFWeapon> Other){ static function float GetReloadSpeedModifierStatic(KFPlayerReplicationInfo KFPRI, class<KFWeapon> Other){
return 1.3; return 1.3;
} }
static function int ZedTimeExtensions(KFPlayerReplicationInfo KFPRI){ static function int ZedTimeExtensions(KFPlayerReplicationInfo KFPRI){
if(HasSkill(NicePlayerController(KFPRI.Owner), class'NiceSkillCommandoTactitian')) /*if(HasSkill(NicePlayerController(KFPRI.Owner), class'NiceSkillCommandoTactitian'))
return class'NiceSkillCommandoTactitian'.default.bonusExt + 3; return class'NiceSkillCommandoTactitian'.default.bonusExt + 3;*/
return 3; return 4;
} }
static function string GetCustomLevelInfo(byte Level){ static function string GetCustomLevelInfo(byte Level){
return default.CustomLevelInfo; return default.CustomLevelInfo;
@ -40,16 +59,16 @@ static function string GetCustomLevelInfo(byte Level){
defaultproperties defaultproperties
{ {
bNewTypePerk=True bNewTypePerk=True
SkillGroupA(0)=Class'NicePack.NiceSkillCommandoTactitian' SkillGroupA(0)=Class'NicePack.NiceSkillCommandoExplosivePower'
SkillGroupA(1)=Class'NicePack.NiceSkillCommandoCriticalFocus' SkillGroupA(1)=Class'NicePack.NiceSkillCommandoLargerMags'
SkillGroupA(2)=Class'NicePack.NiceSkillCommandoLargerMags' SkillGroupA(2)=Class'NicePack.NiceSkillCommandoPerfectExecution'
SkillGroupA(3)=Class'NicePack.NiceSkillCommandoPerfectExecution' //SkillGroupA(3)=Class'NicePack.'
SkillGroupA(4)=Class'NicePack.NiceSkillCommandoZEDProfessional' SkillGroupA(4)=Class'NicePack.NiceSkillCommandoZEDProfessional'
SkillGroupB(0)=Class'NicePack.NiceSkillCommandoStrategist' SkillGroupB(0)=Class'NicePack.NiceSkillCommandoAdrenalineShot'
SkillGroupB(1)=Class'NicePack.NiceSkillCommandoTrashCleaner' SkillGroupB(1)=Class'NicePack.NiceSkillCommandoRegeneration'
SkillGroupB(2)=Class'NicePack.NiceSkillCommandoExplosivePower' SkillGroupB(2)=Class'NicePack.NiceSkillCommandoTranquilizer'
SkillGroupB(3)=Class'NicePack.NiceSkillCommandoGiantSlayer' //SkillGroupB(3)=Class'NicePack.'
SkillGroupB(4)=Class'NicePack.NiceSkillCommandoZEDEvisceration' SkillGroupB(4)=Class'NicePack.NiceSkillCommandoZEDHeavenCanceller'
progressArray0(0)=100 progressArray0(0)=100
progressArray0(1)=1000 progressArray0(1)=1000
progressArray0(2)=3000 progressArray0(2)=3000
@ -64,7 +83,7 @@ defaultproperties
OnHUDIcons(3)=(PerkIcon=Texture'ScrnTex.Perks.Perk_Commando_Blue',StarIcon=Texture'ScrnTex.Perks.Hud_Perk_Star_Blue',DrawColor=(B=255,G=255,R=255,A=255)) OnHUDIcons(3)=(PerkIcon=Texture'ScrnTex.Perks.Perk_Commando_Blue',StarIcon=Texture'ScrnTex.Perks.Hud_Perk_Star_Blue',DrawColor=(B=255,G=255,R=255,A=255))
OnHUDIcons(4)=(PerkIcon=Texture'ScrnTex.Perks.Perk_Commando_Purple',StarIcon=Texture'ScrnTex.Perks.Hud_Perk_Star_Purple',DrawColor=(B=255,G=255,R=255,A=255)) OnHUDIcons(4)=(PerkIcon=Texture'ScrnTex.Perks.Perk_Commando_Purple',StarIcon=Texture'ScrnTex.Perks.Hud_Perk_Star_Purple',DrawColor=(B=255,G=255,R=255,A=255))
OnHUDIcons(5)=(PerkIcon=Texture'ScrnTex.Perks.Perk_Commando_Orange',StarIcon=Texture'ScrnTex.Perks.Hud_Perk_Star_Orange',DrawColor=(B=255,G=255,R=255,A=255)) OnHUDIcons(5)=(PerkIcon=Texture'ScrnTex.Perks.Perk_Commando_Orange',StarIcon=Texture'ScrnTex.Perks.Hud_Perk_Star_Orange',DrawColor=(B=255,G=255,R=255,A=255))
CustomLevelInfo="Level up by doing damage with perked weapons|30% faster reload with all weapons|You get three additional Zed-Time Extensions" CustomLevelInfo="Level up by doing damage with perked weapons|30% faster reload with all weapons|10% faster movement speed|You get four additional Zed-Time Extensions|See health and cloacked zeds from 16 meters distance|50% more potent medical injections|Better Syringe handling"
PerkIndex=3 PerkIndex=3
OnHUDIcon=Texture'KillingFloorHUD.Perks.Perk_Commando' OnHUDIcon=Texture'KillingFloorHUD.Perks.Perk_Commando'
OnHUDGoldIcon=Texture'KillingFloor2HUD.Perk_Icons.Perk_Commando_Gold' OnHUDGoldIcon=Texture'KillingFloor2HUD.Perk_Icons.Perk_Commando_Gold'

View File

@ -0,0 +1,14 @@
class NiceSkillCommandoAdrenalineShot extends NiceSkill
abstract;
var float boostTime;
var float minHealth;
var float speedBoost, resistBoost;
defaultproperties
{
boostTime=1.000000
minHealth=50.000000
speedBoost=2.000000
resistBoost=1.500000
SkillName="Adrenaline shot"
SkillEffects="Wounded players healed by you gain boost in speed (up to 100%) and damage resistance (up to 50%) for one second."
}

View File

@ -0,0 +1,9 @@
class NiceSkillCommandoRegeneration extends NiceSkill
abstract;
var float regenFrequency;
defaultproperties
{
regenFrequency=0.500000
SkillName="Regeneration"
SkillEffects="You regenerate 2 hp per second."
}

View File

@ -0,0 +1,7 @@
class NiceSkillCommandoTranquilizer extends NiceSkill
abstract;
defaultproperties
{
SkillName="Tranquilizer"
SkillEffects="Zeds hit by your darts can be stunned by head-damage, but your darts lose 25% of their healing efficiency."
}

View File

@ -0,0 +1,7 @@
class NiceSkillCommandoZEDHeavenCanceller extends NiceSkill
abstract;
defaultproperties
{
SkillName="Heaven canceller"
SkillEffects="During zed-time your darts instantly restore health of your teammates and make them invincible for it's duration."
}

View File

@ -1,5 +0,0 @@
class NiceDamTypeMedicDart extends NiceDamageTypeVetMedic
abstract;
defaultproperties
{
}

View File

@ -1,4 +1,4 @@
class NiceDamTypeKrissM extends NiceDamTypeMedicBullet class NiceDamTypeKrissM extends NiceDamageTypeVetCommando
abstract; abstract;
defaultproperties defaultproperties
{ {

View File

@ -13,6 +13,7 @@ defaultproperties
AmmoItemName="45. ACP Ammo" AmmoItemName="45. ACP Ammo"
AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo'
EquipmentCategoryID=3 EquipmentCategoryID=3
CorrespondingPerkIndex=3
VariantClasses(0)=Class'KFMod.NeonKrissMPickup' VariantClasses(0)=Class'KFMod.NeonKrissMPickup'
InventoryType=Class'NicePack.NiceKrissMMedicGun' InventoryType=Class'NicePack.NiceKrissMMedicGun'
PickupMessage="You got the KRISS Vector Medic Gun" PickupMessage="You got the KRISS Vector Medic Gun"

View File

@ -1,4 +1,4 @@
class NiceDamTypeM7A3M extends NiceDamTypeMedicBullet class NiceDamTypeM7A3M extends NiceDamageTypeVetCommando
abstract; abstract;
defaultproperties defaultproperties
{ {

View File

@ -14,6 +14,7 @@ defaultproperties
AmmoItemName="7.6x40mm Ammo" AmmoItemName="7.6x40mm Ammo"
AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo'
EquipmentCategoryID=3 EquipmentCategoryID=3
CorrespondingPerkIndex=3
InventoryType=Class'NicePack.NiceM7A3MMedicGun' InventoryType=Class'NicePack.NiceM7A3MMedicGun'
PickupMessage="You got the M7A3 Medic Gun" PickupMessage="You got the M7A3 Medic Gun"
PickupSound=Sound'KF_M7A3Snd.M7A3_Pickup' PickupSound=Sound'KF_M7A3Snd.M7A3_Pickup'

View File

@ -1,4 +1,4 @@
class NiceDamTypeMP5M extends NiceDamTypeMedicBullet class NiceDamTypeMP5M extends NiceDamageTypeVetCommando
abstract; abstract;
defaultproperties defaultproperties
{ {

View File

@ -14,6 +14,7 @@ defaultproperties
AmmoItemName="9x19mm Ammo" AmmoItemName="9x19mm Ammo"
AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo'
EquipmentCategoryID=3 EquipmentCategoryID=3
CorrespondingPerkIndex=3
VariantClasses(0)=Class'KFMod.CamoMP5MPickup' VariantClasses(0)=Class'KFMod.CamoMP5MPickup'
InventoryType=Class'NicePack.NiceMP5MMedicGun' InventoryType=Class'NicePack.NiceMP5MMedicGun'
PickupMessage="You got the MP5M Medic Gun" PickupMessage="You got the MP5M Medic Gun"

View File

@ -1,4 +1,4 @@
class NiceDamTypeMP7M extends NiceDamTypeMedicBullet class NiceDamTypeMP7M extends NiceDamageTypeVetCommando
abstract; abstract;
defaultproperties defaultproperties
{ {

View File

@ -14,6 +14,7 @@ defaultproperties
AmmoItemName="4.6x30mm Ammo" AmmoItemName="4.6x30mm Ammo"
AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo' AmmoMesh=StaticMesh'KillingFloorStatics.L85Ammo'
EquipmentCategoryID=3 EquipmentCategoryID=3
CorrespondingPerkIndex=3
InventoryType=Class'NicePack.NiceMP7MMedicGun' InventoryType=Class'NicePack.NiceMP7MMedicGun'
PickupMessage="You got the MP7M Medic Gun" PickupMessage="You got the MP7M Medic Gun"
PickupSound=Sound'KF_MP7Snd.MP7_Pickup' PickupSound=Sound'KF_MP7Snd.MP7_Pickup'