Core.Object | +--Engine.Actor | +--Engine.Emitter | +--XIDCine.TrigerredEmitter
float
EmitTime
bool
ForceParticlesSpawn
bInitiallyOn
bTriggeredOnceOnly
00001 //----------------------------------------------------------- 00002 // TrigerredEmitter 00003 // Created by iKi 00004 // Last Modification by iKi 00005 //----------------------------------------------------------- 00006 class TrigerredEmitter extends Emitter; 00007 00008 VAR() bool ForceParticlesSpawn; 00009 VAR() bool bInitiallyOn; 00010 VAR() bool bTriggeredOnceOnly; 00011 VAR() float EmitTime; 00012 00013 EVENT PostBeginPlay( ) 00014 { 00015 LOCAL int i; 00016 00017 for (i=0;i<Emitters.Length;++i) 00018 Emitters[i].Disabled=!bInitiallyOn; 00019 } 00020 /* 00021 EVENT Tick (float dt) 00022 { 00023 DebugLog("============================"@Rotation); 00024 } 00025 */ 00026 STATE() TriggerToggle 00027 { 00028 EVENT Trigger( actor Other, pawn EventInstigator ) 00029 { 00030 LOCAL int i; 00031 00032 if (bTriggeredOnceOnly) 00033 Disable('Trigger'); 00034 00035 for (i=0;i<Emitters.Length;++i) 00036 Emitters[i].Disabled=!Emitters[i].Disabled; 00037 } 00038 } 00039 00040 STATE() TriggerControl 00041 { 00042 EVENT Trigger( actor Other, pawn EventInstigator ) 00043 { 00044 LOCAL int i; 00045 00046 if (bTriggeredOnceOnly) 00047 Disable('Trigger'); 00048 00049 for (i=0;i<Emitters.Length;++i) 00050 Emitters[i].Disabled=bInitiallyOn; 00051 } 00052 EVENT Untrigger( actor Other, pawn EventInstigator ) 00053 { 00054 LOCAL int i; 00055 00056 if (bTriggeredOnceOnly) 00057 Disable('Untrigger'); 00058 00059 for (i=0;i<Emitters.Length;++i) 00060 Emitters[i].Disabled=!bInitiallyOn; 00061 } 00062 } 00063 00064 STATE() TriggerEmit 00065 { 00066 EVENT Trigger( actor Other, pawn EventInstigator ) 00067 { 00068 LOCAL int i; 00069 00070 if (bTriggeredOnceOnly) 00071 Disable('Trigger'); 00072 00073 for (i=0;i<Emitters.Length;++i) 00074 { 00075 Emitters[i].Disabled=!Emitters[i].Disabled; 00076 if (ForceParticlesSpawn) 00077 Emitters[i].SpawnParticle(Emitters[i].MaxParticles); 00078 } 00079 } 00080 } 00081 00082 STATE() TriggerPound 00083 { 00084 EVENT Trigger( actor Other, pawn EventInstigator ) 00085 { 00086 LOCAL int i; 00087 00088 if (bTriggeredOnceOnly) 00089 Disable('Trigger'); 00090 00091 for (i=0;i<Emitters.Length;++i) 00092 { 00093 Emitters[i].Disabled=!Emitters[i].Disabled; 00094 if (ForceParticlesSpawn) 00095 Emitters[i].SpawnParticle(Emitters[i].MaxParticles); 00096 } 00097 SetTimer(EmitTime,false); 00098 } 00099 00100 EVENT Timer( ) 00101 { 00102 LOCAL int i; 00103 00104 if (bTriggeredOnceOnly) 00105 Disable('Untrigger'); 00106 00107 for (i=0;i<Emitters.Length;++i) 00108 Emitters[i].Disabled=!bInitiallyOn; 00109 } 00110 } 00111 00112 00113 00114 00115 defaultproperties 00116 { 00117 EmitTime=1.000000 00118 InitialState="TriggerEmit" 00119 }