rott/kf_sources/ScrnBalanceSrv/Classes/ScrnSyringeAltFire.uc
2026-07-14 20:27:09 +07:00

32 lines
994 B
Ucode

// Self Healing Fire //
class ScrnSyringeAltFire extends SyringeAltFire;
function Timer()
{
local float HealSum, HealPotency;
local KFPlayerReplicationInfo KFPRI;
KFPRI = KFPlayerReplicationInfo(Instigator.PlayerReplicationInfo);
if ( Weapon.Level.Game.NumPlayers == 1 || (KFPRI != none && KFPRI.Team != none && KFPRI.Team.Size == 1) )
HealSum = 50;
else
HealSum = Syringe(Weapon).HealBoostAmount;
HealPotency = 1.0;
if ( KFPRI != none && KFPRI.ClientVeteranSkill != none )
HealPotency = KFPRI.ClientVeteranSkill.Static.GetHealPotency(KFPRI);
HealSum *= HealPotency;
Weapon.ConsumeAmmo(ThisModeNum, AmmoPerFire);
if ( ScrnHumanPawn(Instigator) != none )
ScrnHumanPawn(Instigator).TakeHealing(ScrnHumanPawn(Instigator), HealSum, HealPotency, KFWeapon(Instigator.Weapon));
else
KFPawn(Instigator).GiveHealth(HealSum, Instigator.HealthMax);
}
defaultproperties
{
}