Legacy:VitalOverdose/SFXMonsterSpawning
From Unreal Wiki, The Unreal Engine Documentation Site
Overview
class SFXMonsterSpawning Extends Emitter
placeable;
var () bool bRandomList;
Var int TotalParticles;
Var () int TimerFrequency;
var () array < class< Monster > > MonsterSpawnList;
var () float ScanSize;
var int MonsterSpawnlistCounter;
var () int Bounces;
function PostBeginPlay()
{
Super.PostBeginPlay();
if (( Emitters[0].MaxParticles > 20) ||
( MonsterSpawnList.length > 0 ))
Destroyed();
if (ScanSize < 1)
ScanSize=64;
if (TimerFrequency < 0.1)
TimerFrequency = 0.1;
SetTimer( TimerFrequency , True );
}
Simulated function Timer()
{
Local int Counter;
for ( Counter=0 ; Counter < Emitters[0].Particles.Length ; Counter++ )
if (Emitters[0].Particles[Counter].HitCount == Bounces)
spawnRNDMonster(counter);
}
simulated function spawnrndmonster (int Emitternumber)
{
Local int RNDPickedNumb;
local Class< monster > RNDPickedmonsterClass;
local monster SpawnedMonster;
RNDPickedNumb = Rand(MonsterSpawnList.Length);
RNDPickedmonsterclass = MonsterSpawnList[RNDPickedNumb];
MonsterSpawnlistCounter += 1;
if (MonsterSpawnlistCounter == MonsterSpawnlist.length)
MonsterSpawnlistCounter=0;
SpawnedMonster = Spawn(RNDPickedmonsterclass,Self,,Emitters[0].Particles[Emitternumber].Location ,Rotation );
}
defaultproperties
{
bNoDelete=False
RemoteRole=ROLE_SimulatedProxy
}
Related Topcs
- Emitter
- Particle System
- ParticleEmitter
- ParticleEmitter Cookbook
- udn2:EmittersReference
- udn2:EmittersExamples
More custom emitter scripts
- SFXVehicleTeleporting
- SFXPainful
- SFXBoosting
- SFXTriggering
- SFXEjecting
- SFXHealing
- SFXSelfScaling
- SFXUltraLight
- InventoryFlare
- ExampleFlares