//============================================================================= // ZEDMKIIPrimaryProjectileImpact //============================================================================= // Primary projectile impact effect class for the ZEDGun MKII //============================================================================= // Killing Floor Source // Copyright (C) 2013 Tripwire Interactive LLC // John "Ramm-Jaeger" Gibson //============================================================================= class ZEDMKIIPrimaryProjectileImpact extends Emitter; var () float BurnInterval; // Interval between burn damage. var Actor Parent; // Parent Actor var () int FlameDamage; // How much dmg the touchee takes. static function PreInitialize( int Damage, float Interval ) { // You can preserve the original default values in other default variables if you want, and restore them in prebeginplay. If you want. default.BurnInterval = Interval; default.FlameDamage = Damage; } simulated function PostBeginPlay() { SetTimer(BurnInterval,True); } function Timer() { local Material SurfaceMat; local int HitSurface; local Vector HitLocation, HitNormal; local rotator EffectDir; local Actor Other; Other = Trace(HitLocation, HitNormal, Location + vector(Rotation) * 32, Location - vector(Rotation) * 16, true,, SurfaceMat); EffectDir = rotator(MirrorVectorByNormal(vector(Rotation), HitNormal)); if(Vehicle(Other) != None && Other.SurfaceType == 0) HitSurface = 3; else if(Other != None && !Other.IsA('LevelInfo') && Other.SurfaceType != 0) HitSurface = Other.SurfaceType; else if(SurfaceMat != None) HitSurface = SurfaceMat.SurfaceType; if (SurfaceMat != none && Parent == none) { if (KFHumanPawn(Instigator) != none) Kill(); } if( Parent==none || Parent.DrawScale<=0.25 ) Kill(); } defaultproperties { Begin Object Class=SpriteEmitter Name=SpriteEmitter7 UseColorScale=True FadeOut=True FadeIn=True RespawnDeadParticles=False UseSizeScale=True UseRegularSizeScale=False UniformSize=True AutomaticInitialSpawning=False Acceleration=(Z=50.000000) ColorScale(0)=(Color=(B=255,G=102,R=102,A=255)) ColorScale(1)=(RelativeTime=1.000000,Color=(B=255,G=128,R=128,A=255)) FadeOutStartTime=0.102500 FadeInEndTime=0.050000 MaxParticles=2 Name="SpriteEmitter7" SizeScale(1)=(RelativeTime=0.140000,RelativeSize=1.000000) SizeScale(2)=(RelativeTime=1.000000,RelativeSize=3.000000) StartSizeRange=(X=(Min=25.000000,Max=25.000000),Y=(Min=25.000000,Max=25.000000),Z=(Min=25.000000,Max=25.000000)) InitialParticlesPerSecond=30.000000 DrawStyle=PTDS_Brighten Texture=Texture'KFZED_FX_T.Energy.ZedGun_Energy_A' TextureUSubdivisions=1 TextureVSubdivisions=1 LifetimeRange=(Min=0.200000,Max=0.200000) StartVelocityRange=(Z=(Min=10.000000,Max=10.000000)) End Object Emitters(0)=SpriteEmitter'SpriteEmitter7' Begin Object Class=SpriteEmitter Name=SpriteEmitter8 UseDirectionAs=PTDU_Up UseCollision=True UseColorScale=True FadeOut=True RespawnDeadParticles=False UniformSize=True AutomaticInitialSpawning=False Acceleration=(Z=-500.000000) ColorScale(0)=(Color=(B=255,G=255,A=255)) ColorScale(1)=(RelativeTime=1.000000,Color=(B=255,A=255)) FadeOutStartTime=0.800000 Name="SpriteEmitter8" StartSizeRange=(X=(Min=5.000000,Max=5.000000),Y=(Min=0.100000,Max=0.100000),Z=(Min=5.000000,Max=5.000000)) InitialParticlesPerSecond=5000.000000 DrawStyle=PTDS_Brighten Texture=Texture'KFX.KFSparkHead' LifetimeRange=(Min=0.100000,Max=0.200000) StartVelocityRange=(X=(Min=-500.000000,Max=500.000000),Y=(Min=-500.000000,Max=500.000000),Z=(Max=500.000000)) End Object Emitters(1)=SpriteEmitter'SpriteEmitter8' Begin Object Class=SpriteEmitter Name=SpriteEmitter9 UseCollision=True UseColorScale=True FadeOut=True RespawnDeadParticles=False UniformSize=True AutomaticInitialSpawning=False Acceleration=(Z=-500.000000) ColorScale(0)=(Color=(B=255,G=255,A=255)) ColorScale(1)=(RelativeTime=1.000000,Color=(B=255,G=255,R=255,A=255)) FadeOutStartTime=0.800000 MaxParticles=4 Name="SpriteEmitter9" StartSizeRange=(X=(Min=2.000000,Max=2.000000),Y=(Min=2.000000,Max=2.000000),Z=(Min=2.000000,Max=2.000000)) InitialParticlesPerSecond=5000.000000 Texture=Texture'kf_fx_trip_t.Misc.healingFX' LifetimeRange=(Min=0.150000,Max=0.150000) StartVelocityRange=(X=(Min=-500.000000,Max=500.000000),Y=(Min=-500.000000,Max=500.000000),Z=(Max=500.000000)) End Object Emitters(2)=SpriteEmitter'SpriteEmitter9' Begin Object Class=SpriteEmitter Name=SpriteEmitter10 UseColorScale=True FadeOut=True FadeIn=True RespawnDeadParticles=False SpinParticles=True UseSizeScale=True UseRegularSizeScale=False UniformSize=True AutomaticInitialSpawning=False ColorScale(0)=(Color=(B=255,G=255)) ColorScale(1)=(RelativeTime=1.000000,Color=(B=255,G=255,R=255,A=255)) ColorScale(2)=(RelativeTime=1.000000) ColorScale(3)=(RelativeTime=1.000000) FadeOutStartTime=0.200000 FadeInEndTime=0.140000 MaxParticles=1 Name="SpriteEmitter10" SpinsPerSecondRange=(X=(Max=0.100000)) StartSpinRange=(X=(Min=-0.500000,Max=0.500000)) SizeScale(0)=(RelativeTime=1.000000,RelativeSize=1.500000) StartSizeRange=(X=(Min=15.000000,Max=30.000000),Y=(Min=0.000000,Max=0.000000),Z=(Min=0.000000,Max=0.000000)) ScaleSizeByVelocityMultiplier=(X=0.000000,Y=0.000000,Z=0.000000) ScaleSizeByVelocityMax=0.000000 InitialParticlesPerSecond=5000.000000 Texture=Texture'Icebreaker_T.Coronas.SoftFlare' TextureUSubdivisions=1 TextureVSubdivisions=1 SecondsBeforeInactive=30.000000 LifetimeRange=(Min=0.250000,Max=0.250000) End Object Emitters(3)=SpriteEmitter'SpriteEmitter10' bNoDelete = false AutoDestroy = true SoundVolume = 255 SoundRadius = 100 bFullVolume = false AmbientSound = Sound'Amb_Destruction.Kessel_Fire_Small_Vehicle'//Sound'GeneralAmbience.firefx12' KFTODO: Replace this LightRadius = 3 LightType = LT_Pulse LightBrightness = 255 LightHue = 128 LightSaturation = 64 bDynamicLight = true FlameDamage = 10 BurnInterval = 1 LifeSpan=2 RemoteRole=ROLE_DumbProxy bNetTemporary=true // inherited vars bGameRelevant=true bNotOnDedServer=true }