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

71 lines
1.7 KiB
Ucode

class repl_FlameTendril extends FlameTendril;
// remove flamer flaming effects
// KFMod.FlameTendril
simulated function PostBeginPlay()
{
SetTimer(0.2, true);
// ADDITION!!!
// turn off pulsating lights, perf +++
bDynamicLight = false;
LightType = LT_None;
Velocity = Speed * Vector(Rotation);
// ADDITION!!! switch to shut it off
if (Level.NetMode != NM_DedicatedServer && !class'Settings'.default.bHideFlamethrowerEffects)
{
if (!PhysicsVolume.bWaterVolume)
{
FlameTrail = spawn(class'FlameThrowerFlameB', self);
Trail = spawn(class'FlameThrowerFlame', self);
}
}
Velocity.z += TossZ;
}
// remove flamer flaming effects
// KFMod.FlameTendril
simulated function PostNetBeginPlay()
{
super(ShotgunBullet).PostNetBeginPlay();
if (Level.NetMode == NM_DedicatedServer)
return;
// ADDITION!!! removed old code
// have to do this light hack since ProcessTouch() is not simulated
// and we can't prevent spawning of zed burning flame effect
// at least no pulsing shit with -10-50fps
bDynamicLight = false;
LightType = LT_None;
}
// remove flamer flaming effects
// KFMod.FlameTendril
simulated function Explode(vector HitLocation,vector HitNormal)
{
if (Role == ROLE_Authority)
HurtRadius(Damage, DamageRadius, MyDamageType, MomentumTransfer, HitLocation);
// ADDITION!!! emitter-effect toggle
if (KFHumanPawn(Instigator) != none && !class'Settings'.default.bHideFlamethrowerEffects)
{
if (EffectIsRelevant(Location,false))
{
Spawn(ExplosionDecal,self,,Location, rotator(-HitNormal));
Spawn(class'FuelFlame',self,,Location);
}
}
SetCollisionSize(0.0, 0.0);
Destroy();
}
defaultproperties
{
}