Mostly Harmless
Legacy:VitalOverdose/SFXMonsterSpawning
From Unreal Wiki, The Unreal Engine Documentation Site
Contents |
[edit] 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 }
[edit] Related Topcs
- Emitter
- Particle System
- ParticleEmitter
- ParticleEmitter Cookbook
- udn2:EmittersReference
- udn2:EmittersExamples
[edit] More custom emitter scripts
- SFXPawnTeleporting
- SFXTriggering
- SFXBoosting
- SFXHealing
- SFXVehicleTeleporting
- SFXSelfScaling
- SFXUltraLight
- InventoryFlare
