//============================================================================= // BallisticEmitter. // // A Base class for Ballistic Emitters. Includes some default functionality: // -Disables individual particle emitters depedning on effects detail. // -Use EmitterZTestSwitches to auto set ZTest if you want it to be different // depending on players seeing emitter or not. // -Static function, VtoRV() can turn min and max vectors into a range vector // -Static function, ScaleRV() scales a range vector // -Static function, ScaleEmitter() scales an entire emitter (very handy!) // -static function, KillEmitter() is can smoothly remove an emitter instead of // using Destroy(). Obsolete now since Kill() was added... // // by Nolan "Dark Carnivour" Richert. // Copyright(c) 2006 RuneStorm. All Rights Reserved. //============================================================================= class BallisticEmitter extends Emitter placeable; enum EZTestMode // ZTest switch settings... { ZM_None, // Don't do anything ZM_OnWhenVisible, // Set ZTest on if the emitter is visible ZM_OffWhenVisible // Set ZTest off if this emitter is visible }; var() array EmitterZTestSwitches; // Swithes to change ZTest of each emitter depending on LOS simulated event PostBeginPlay() { local int i; local bool bLOS; super.PostBeginPlay(); if (EmitterZTestSwitches.length > 0) { bLOS = Level.GetLocalPlayerController().LineOfSightTo(self); for (i=0;i