//============================================================================= // KFKActorSpawnable //============================================================================= // Custom KActorSpawnable that's used by KFDestructibleActor // Used to set lighting params on the client for replicated KActors //============================================================================= // Killing Floor 2 // Copyright (C) 2015 Tripwire Interactive LLC // - Andrew "Strago" Ladenberger //============================================================================= class KFKActorSpawnable extends KActorSpawnable native(Effect); cpptext { UBOOL ShouldTrace(UPrimitiveComponent* Primitive, AActor *SourceActor, DWORD TraceFlags); } simulated event PostBeginPlay() { Super.PostBeginPlay(); // Ideally, these never spawn on dedicated, but just in case destroy here if (WorldInfo.NetMode == NM_DedicatedServer && RemoteRole == ROLE_None) { Destroy(); } } simulated function HideForInterval(float Duration) { if ( Duration > 0 ) { StaticMeshComponent.SetHidden(TRUE); SetTimer(Duration, false, nameof(UnHideTimer)); } } simulated function UnHideTimer() { StaticMeshComponent.SetHidden(FALSE); } /** Level was reset without reloading */ simulated event Reset() { Destroy(); } defaultproperties { Begin Object Name=StaticMeshComponent0 CastShadow=FALSE RBChannel=RBCC_EffectPhysics End Object bBlockActors=FALSE LifeSpan=30.f RemoteRole=ROLE_None }