DayZ 1.30
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
ParticleSource.c
См. документацию.
1
13
15enum PlayParticleFlags
16{
18 NONE,
19 // Is just a placeholder for now
20}
21
23enum StopParticleFlags
24{
26 NONE,
40}
41
43enum EGetParticleMode
44{
51}
52
53enum ParticlePropertiesFlags
54{
55 NONE,
64
65};
66
68class ParticleProperties
69{
81 void ParticleProperties(vector localPos, int flags, Object parent = null, vector localOri = vector.Zero, Class owner = null)
82 {
83 }
84
87 {
88 }
89
95 proto Class GetOwner();
98 proto int GetPPFlags();
99 proto bool IsPlayOnCreation();
100 proto bool IsForceWorldRotation();
101 proto bool IsKeepParentOnEnd();
102 proto bool IsDisabledInUI();
104}
105
106typedef array<ref ParticleProperties> ParticlePropertiesArray;
108
128{
131 {
132 m_ParticleEffect = this;
133 }
134
137 {
138 }
139
141 override protected void ParticleInit() {}
142
151
159
164 proto native int GetParticleAutoDestroyFlags();
165
170
182 static ParticleSource CreateParticle( int id, vector pos, bool playOnCreation = false, Object parent = null, vector ori = vector.Zero, bool forceWorldRotation = false, Class owner = null )
183 {
184 int flags = ParticlePropertiesFlags.NONE;
185
186 if (playOnCreation)
187 {
188 flags = flags | ParticlePropertiesFlags.PLAY_ON_CREATION;
189 }
190
191 if (forceWorldRotation)
192 {
193 flags = flags | ParticlePropertiesFlags.FORCE_WORLD_ROT;
194 }
195
196 return CreateParticleEx(id, pos, flags, parent, ori, owner);
197 }
198
209 static ParticleSource CreateParticleEx( int id, vector pos, int flags = ParticlePropertiesFlags.NONE, Object parent = null, vector ori = vector.Zero, Class owner = null )
210 {
211 string particlePath = ParticleList.GetParticleFullPath(id);
212 if (particlePath == "") // There is already an error inside of ParticleList signaling this
213 {
214 ErrorEx(string.Format("Could not create ParticleSource as particle id %1 is invalid.", id));
215 return null;
216 }
217
218 vector localPos = pos;
219
220 if (parent)
221 pos = parent.GetPosition();
222
223 ParticleSource p = ParticleSource.Cast( g_Game.CreateObjectEx("ParticleSource", pos, ECE_LOCAL) );
224 p.SetParticle(particlePath);
225 ParticleProperties props = new ParticleProperties(localPos, flags, parent, ori, owner);
226 p.ApplyProperties(props);
227
228 return p;
229 }
230
240 override static Particle CreateOnObject(
241 int particle_id,
242 Object parent_obj,
243 vector local_pos = "0 0 0",
244 vector local_ori = "0 0 0",
245 bool force_world_rotation = false )
246 {
247 return CreateParticle(particle_id, local_pos, false, parent_obj, local_ori, force_world_rotation);
248 }
249
253 override static Particle Create( int particle_id, Object parent_obj, vector local_pos = "0 0 0", vector local_ori = "0 0 0" )
254 {
255 return CreateOnObject( particle_id, parent_obj, local_pos, local_ori);
256 }
257
266 override static Particle CreateInWorld( int particle_id, vector global_pos, vector global_ori = "0 0 0", bool force_world_rotation = false )
267 {
268 return CreateParticle(particle_id, global_pos, false, null, global_ori, force_world_rotation);
269 }
270
274 override static ParticleSource Create( int particle_id, vector global_pos, vector global_ori = "0 0 0" )
275 {
276 return CreateInWorld( particle_id, global_pos, global_ori );
277 }
278
280
281
282
287
297 override static Particle PlayOnObject(int particle_id, Object parent_obj, vector local_pos = "0 0 0", vector local_ori = "0 0 0", bool force_world_rotation = false )
298 {
299 return CreateParticle(particle_id, local_pos, true, parent_obj, local_ori, force_world_rotation);
300 }
301
305 override static Particle Play( int particle_id, Object parent_obj, vector local_pos = "0 0 0", vector local_ori = "0 0 0" )
306 {
307 return PlayOnObject( particle_id, parent_obj, local_pos, local_ori);
308 }
309
316 override static Particle PlayInWorld( int particle_id, vector global_pos)
317 {
318 return CreateParticle(particle_id, global_pos, true);
319 }
320
324 override static Particle Play( int particle_id, vector global_pos)
325 {
326 return PlayInWorld( particle_id, global_pos);
327 }
328
330
331
332
337
343 private proto bool PlayParticleNative(int flags);
344
350 override bool PlayParticleEx(int particle_id = -1, int flags = 0)
351 {
352 if ( particle_id > -1 )
353 {
354 // Here we can just do it directly
355 // While with the old system it will not work when the particle is already created
357 }
358
359 return PlayParticleNative(flags);
360 }
361
369 private proto bool StopParticleNative(int flags);
370
376 override bool StopParticle(int flags = 0)
377 {
378 return StopParticleNative(flags);
379 }
380
385 private proto native bool ResetParticleNative();
386
391 override bool ResetParticle()
392 {
393 return ResetParticleNative();
394 }
395
400 private proto native bool RestartParticleNative();
401
406 override bool RestartParticle()
407 {
408 return RestartParticleNative();
409 }
410
415 private proto bool IsParticlePlayingNative();
416
421 override bool IsParticlePlaying()
422 {
424 }
425
427
428
429
434
440 private proto native bool SetParticleNative(string path);
441
448 private bool SetParticle(string path)
449 {
450 return SetParticleNative(path);
451 }
452
458 bool SetParticleByID(int id)
459 {
461 }
462
468 override void SetSource(int particle_id)
469 {
471 }
472
474
475
476
481
488 private proto bool GetParticleNative(out string path, EGetParticleMode mode);
489
496 bool GetParticle(out string path, EGetParticleMode mode)
497 {
498 return GetParticleNative(path, mode);
499 }
500
505 override int GetParticleID()
506 {
507 string path;
508 if (GetParticle(path, EGetParticleMode.FILE))
510 else
511 return -1;
512 }
513
521 {
522 string path;
523 if (GetParticle(path, EGetParticleMode.NO_EXT))
525 else
526 return -1;
527 }
528
530
531
532
537
544 private proto native bool ApplyPropertiesNative(ParticleProperties properties);
545
551 bool ApplyProperties(ParticleProperties properties)
552 {
553 return ApplyPropertiesNative(properties);
554 }
555
557
558
559
564
571 {
572 return this;
573 }
574
580 {
581 return Object.Cast(GetParent());
582 }
583
588 private proto bool HasActiveParticleNative();
589
594 override bool HasActiveParticle()
595 {
597 }
598
604 private proto int GetParticleCountNative();
605
611 override int GetParticleCount()
612 {
613 return GetParticleCountNative();
614 }
615
620 private proto bool IsRepeatNative();
621
626 override bool IsRepeat()
627 {
628 return IsRepeatNative();
629 }
630
635 private proto float GetMaxLifetimeNative();
636
641 override float GetMaxLifetime()
642 {
643 return GetMaxLifetimeNative();
644 }
645
650 proto native Class GetOwner();
651
656 proto native void SetOwner(Class owner);
657
661 proto native void Orphan();
662
664
665
666
671
677
682 proto native int GetIndex();
683
685
686
687
692
698 proto int GetCountID();
699
704 proto native static int GetStaticCount();
705
710 proto native static int GetStaticActiveCount();
711
713
714
715
722
726 override protected void OnParticleParented(IEntity parent)
727 {
728 m_ParentObject = Object.Cast(parent);
729
730 super.OnParticleParented(parent);
731 }
732
736 override protected void OnParticleUnParented(IEntity parent)
737 {
738 m_ParentObject = null;
739
740 // Since we have lost the parent, we will need to refresh the wiggle
741 // As it uses a cached local position, which is now no longer correct
743 {
744 float randomAngle = m_MaxOriWiggle;
745 float randomInterval = m_MaxOriInterval;
748
749 StopWiggle();
750 SetWiggle(randomAngle, randomInterval);
751 }
752
753 super.OnParticleUnParented(parent);
754 }
755
759 override protected void OnParticleStop()
760 {
761 if (IsWiggling())
762 {
763 StopWiggle();
764 delete m_RandomizeOri;
765 }
766
767 super.OnParticleStop();
768 }
769
771
772
773
778
787 override void AddAsChild(Object parent, vector local_pos = "0 0 0", vector local_ori = "0 0 0", bool force_rotation_to_world = false)
788 {
789 int flags = ParticlePropertiesFlags.NONE;
790
791 if (force_rotation_to_world)
792 flags = ParticlePropertiesFlags.FORCE_WORLD_ROT;
793
794 ParticleProperties props = new ParticleProperties(local_pos, flags, parent, local_ori);
795 ApplyProperties(props);
796 }
797
799
800
801
806
812 override void SetParticleParam(int parameter_id, float value )
813 {
814 SetParticleParm(this, -1, parameter_id, value);
815 }
816
823 override void SetParameter(int emitter, int parameter, float value)
824 {
825 SetParticleParm(this, emitter, parameter, value);
826 }
827
834 override void GetParameter(int emitter, int parameter, out float value)
835 {
836 GetParticleParm(this, emitter, parameter, value);
837 }
838
845 override float GetParameterEx(int emitter, int parameter)
846 {
847 float value;
848 GetParticleParm(this, emitter, parameter, value);
849 return value;
850 }
851
857 override void ScaleParticleParamFromOriginal(int parameter_id, float coef )
858 {
859 int emitors = GetParticleEmitorCount(this);
860 for (int i = 0; i < emitors; ++i)
861 {
862 float value;
863 GetParticleParmOriginal(this, i, parameter_id, value);
864 SetParticleParm(this, i, parameter_id, value * coef);
865 }
866 }
867
873 override void ScaleParticleParam(int parameter_id, float coef )
874 {
875 int emitors = GetParticleEmitorCount(this);
876 for (int i = 0; i < emitors; ++i)
877 {
878 float value;
879 GetParticleParm(this, i, parameter_id, value);
880 SetParticleParm(this, i, parameter_id, value * coef);
881 }
882 }
883
890 override void IncrementParticleParamFromOriginal(int parameter_id, float value )
891 {
892 int emitors = GetParticleEmitorCount(this);
893 for (int i = 0; i < emitors; ++i)
894 {
895 float param;
896 GetParticleParmOriginal(this, i, parameter_id, param);
897 SetParticleParm(this, i, parameter_id, param + value);
898 }
899 }
900
907 override void IncrementParticleParam(int parameter_id, float value )
908 {
909 int emitors = GetParticleEmitorCount(this);
910 for (int i = 0; i < emitors; ++i)
911 {
912 float param;
913 GetParticleParm(this, i, parameter_id, param);
914 SetParticleParm(this, i, parameter_id, param + value);
915 }
916 }
917
919
920
921
926
933 override void SetWiggle(float random_angle, float random_interval)
934 {
935 if (random_angle != 0 || random_interval != 0)
936 {
937 if (IsWiggling())
938 {
939 m_MaxOriWiggle = random_angle;
940 m_MaxOriInterval = random_interval;
941 return;
942 }
943
944 // We need the position to be accurate before storing it
945 Update();
946
947 // These are only ever used within the Wiggle API
948 // To restore the properties after wiggling
949 // So let's only set them within the Wiggle API c:
950
952 m_DefaultOri = GetLocalYawPitchRoll();
953 m_DefaultWorldPos = GetWorldPosition();
954 m_DefaultWorldOri = GetYawPitchRoll();
955 m_ForceOrientationRelativeToWorld = IsHierarchyPositionOnly();
956 }
957
958 super.SetWiggle(random_angle, random_interval);
959 }
960
964 override void StopWiggle()
965 {
966 bool wiggling = IsWiggling();
967
968 super.StopWiggle();
969
970 if (wiggling)
971 {
972 // Restore pre-wiggle orientation
973 int flags = ParticlePropertiesFlags.NONE;
974
976 flags = ParticlePropertiesFlags.FORCE_WORLD_ROT;
977
978 ParticleProperties prop = new ParticleProperties(m_DefaultPos, flags, GetParticleParent(), m_DefaultOri, GetOwner());
979 ApplyProperties(prop);
980 }
981 }
982
986 override private void RandomizeOrientation()
987 {
988 if (ToDelete())
989 return;
990
991 m_WiggleProcessing = true;
992
993 if ( !m_RandomizeOri.IsRunning() )
994 m_RandomizeOri.Run( Math.RandomFloat(0, m_MaxOriInterval) , this, "RandomizeOrientation", null, false);
995
996 int flags = ParticlePropertiesFlags.NONE;
997
999 flags = ParticlePropertiesFlags.FORCE_WORLD_ROT;
1000
1001 ParticleProperties prop = new ParticleProperties(m_DefaultPos, flags, GetParticleParent(), m_DefaultOri + RandWiggleVector(), GetOwner());
1002 ApplyProperties(prop);
1003
1004 m_WiggleProcessing = false;
1005 }
1006
1008
1009
1010
1015
1017 override private void UpdateState() { ErrorEx("Should not be in use on ParticleSource."); }
1018
1020 override private void DestroyParticleEffect() { ErrorEx("Should not be in use on ParticleSource."); }
1021
1023 override private void CreateParticleEffect() { ErrorEx("Should not be in use on ParticleSource."); }
1024
1026 override protected void EOnFrame(IEntity other, float timeSlice) { ErrorEx("Should not be in use on ParticleSource."); }
1027
1029 override private void OnCheckAutoDelete() { ErrorEx("Should not be in use on ParticleSource."); }
1030
1032 override private void OnToDelete() { ErrorEx("Should not be in use on ParticleSource."); }
1033
1035}
IMMEDIATE
It gets added in immediately, which means that when called while an invoker is running,...
Определения 2_GameLib/DayZ/tools.c:7
const int ECE_LOCAL
Определения CentralEconomy.c:25
DayZGame g_Game
Определения DayZGame.c:4074
vector GetLocalPosition()
Get the local position of the Effect.
Определения Effect.c:513
string path
Определения OptionSelectorMultistate.c:142
void ParticleManager(ParticleManagerSettings settings)
Constructor (ctor)
Определения ParticleManager.c:88
enum ParticleAutoDestroyFlags PLAY_ON_CREATION
Makes the particle start playing immediately after being created.
enum ParticleAutoDestroyFlags FILE
Filename only ("smoking_barrel_small")
ParticleAutoDestroyFlags
Flags to pass to ParticleSource.SetParticleAutoDestroyFlags.
Определения ParticleSource.c:3
enum ParticleAutoDestroyFlags PAUSE
(SPF_IMMEDIATE | SPF_VISIBLE) "Freezes" the particle while keeping it visible
enum ParticleAutoDestroyFlags FULL
Mode for GetParticle.
array< ParticleSource > ParticleSourceArray
Определения ParticleSource.c:107
enum ParticleAutoDestroyFlags NO_EXT
Full path without ext ("graphics/particles/smoking_barrel_small")
enum ParticleAutoDestroyFlags KEEP_PARENT_ON_END
By default, a particle unparents when it ends, this disables this behaviour.
enum ParticleAutoDestroyFlags DISABLED_IN_UI
Not created in player review.
enum ParticleAutoDestroyFlags FORCE_WORLD_ROT
Only applicable when there is a parent, this will force the localOri to be in world space instead of ...
int particle_id
Определения SmokeSimulation.c:28
Super root of all classes in Enforce script.
Определения EnScript.c:11
Определения EnEntity.c:165
Определения EnMath.c:7
Определения ObjectTyped.c:2
void Particle()
ctor
Определения Particle.c:61
vector m_DefaultPos
Used for Wiggle API, to restore after unparenting.
Определения Particle.c:33
Object m_ParticleEffect
The child object which contains the actual particle.
Определения Particle.c:50
vector m_DefaultWorldOri
Used for Wiggle API, to restore after unparenting.
Определения Particle.c:35
vector m_DefaultOri
Used for Wiggle API, to restore after unparenting.
Определения Particle.c:31
bool m_ForceOrientationRelativeToWorld
Used for Wiggle API, to restore after unparenting.
Определения Particle.c:29
bool m_WiggleProcessing
Used for Wiggle API, to signal that wiggle API is currently doing work.
Определения Particle.c:27
vector m_DefaultWorldPos
Used for Wiggle API, to restore after unparenting.
Определения Particle.c:37
vector RandWiggleVector()
Helper to get a randomized wiggle vector.
Определения Particle.c:833
Object m_ParentObject
Parent Object the Particle is child of.
Определения Particle.c:48
float m_MaxOriWiggle
Used for Wiggle API, Wiggle room [-m_MaxOriWiggle, m_MaxOriWiggle].
Определения Particle.c:40
float m_MaxOriInterval
Used for Wiggle API, Interval for wiggling [0, m_MaxOriInterval[.
Определения Particle.c:42
ref Timer m_RandomizeOri
Used for Wiggle API, calls the Wiggle functionality.
Определения Particle.c:44
bool IsWiggling()
Checks if particle is currently wiggling.
Определения Particle.c:763
static int GetParticleIDByName(string name)
Returns particle's ID based on the filename (without .ptc suffix)
Определения ParticleList.c:552
static string GetParticleFullPath(int particle_id)
Returns particle's full path (with .ptc suffix) based on its ID.
Определения ParticleList.c:535
static int GetParticleID(string particle_file)
Returns particle's ID based on the path (without .ptc suffix)
Определения ParticleList.c:541
Определения ParticleList.c:12
override void IncrementParticleParam(int parameter_id, float value)
Increments the value of the given parameter relatively from the CURRENT value.
Определения ParticleSource.c:907
static override Particle Play(int particle_id, Object parent_obj, vector local_pos="0 0 0", vector local_ori="0 0 0")
Legacy function for backwards compatibility with 1.01 and below.
Определения ParticleSource.c:305
proto int GetCountID()
Gets the ID for the ParticleSource.
override void ScaleParticleParamFromOriginal(int parameter_id, float coef)
Scales the given parameter on all emitors relatively to their ORIGINAL value.
Определения ParticleSource.c:857
void ParticleSource()
ctor
Определения ParticleSource.c:130
proto float GetMaxLifetimeNative()
Returns the approx. max lifetime.
proto bool HasActiveParticleNative()
Returns if there is any particle active.
void UpdateState()
Empty.
Определения ParticleSource.c:1017
static override Particle CreateInWorld(int particle_id, vector global_pos, vector global_ori="0 0 0", bool force_world_rotation=false)
Creates a particle emitter on the given position.
Определения ParticleSource.c:266
void RandomizeOrientation()
Randomizes a new orientation and applies it.
Определения ParticleSource.c:986
override int GetParticleCount()
Returns the total count of active particles in all emitors.
Определения ParticleSource.c:611
override float GetMaxLifetime()
Returns the approx. max lifetime.
Определения ParticleSource.c:641
void OnCheckAutoDelete()
Empty.
Определения ParticleSource.c:1029
static override Particle PlayOnObject(int particle_id, Object parent_obj, vector local_pos="0 0 0", vector local_ori="0 0 0", bool force_world_rotation=false)
Creates a particle emitter, attaches it on the given object and activates it.
Определения ParticleSource.c:297
static ParticleSource CreateParticleEx(int id, vector pos, int flags=ParticlePropertiesFlags.NONE, Object parent=null, vector ori=vector.Zero, Class owner=null)
Master create function.
Определения ParticleSource.c:209
void ParticleInit()
Empty - Only needed for Particle.
Определения ParticleSource.c:141
override bool StopParticle(int flags=0)
Method to tell the particle to stop playing.
Определения ParticleSource.c:376
proto native int GetIndex()
Get the index of this ParticleSource in the owning ParticleManager.
proto native bool SetParticleNative(string path)
Assigns a particle to the ParticleSource.
proto bool GetParticleNative(out string path, EGetParticleMode mode)
Gets the path to the currently assigned particle.
bool GetParticle(out string path, EGetParticleMode mode)
Gets the path to the currently assigned particle.
Определения ParticleSource.c:496
proto int GetParticleCountNative()
Returns the total count of active particles in all emitors.
static ParticleSource CreateParticle(int id, vector pos, bool playOnCreation=false, Object parent=null, vector ori=vector.Zero, bool forceWorldRotation=false, Class owner=null)
Create function.
Определения ParticleSource.c:182
override bool IsParticlePlaying()
Ask if the particle is still playing.
Определения ParticleSource.c:421
void OnToDelete()
Empty.
Определения ParticleSource.c:1032
override void AddAsChild(Object parent, vector local_pos="0 0 0", vector local_ori="0 0 0", bool force_rotation_to_world=false)
Attaches this particle onto some object. If null value is provided then the particle will be detached...
Определения ParticleSource.c:787
override void SetParameter(int emitter, int parameter, float value)
Set the value of a parameter of an emitor in the particle.
Определения ParticleSource.c:823
static override Particle PlayInWorld(int particle_id, vector global_pos)
Creates a particle emitter on the given position and activates it.
Определения ParticleSource.c:316
proto native bool RestartParticleNative()
Method to tell the particle to restart (reset + play)
bool SetParticleByID(int id)
Assigns a particle to the ParticleSource.
Определения ParticleSource.c:458
int GetParticleIDLegacy()
Gets the ParticleList ID of the currently assigned particle.
Определения ParticleSource.c:520
override void StopWiggle()
Stops randomized wiggle.
Определения ParticleSource.c:964
static override Particle Create(int particle_id, Object parent_obj, vector local_pos="0 0 0", vector local_ori="0 0 0")
Legacy function for backwards compatibility.
Определения ParticleSource.c:253
static override Particle Play(int particle_id, vector global_pos)
Legacy function for backwards compatibility with 1.01 and below.
Определения ParticleSource.c:324
override void IncrementParticleParamFromOriginal(int parameter_id, float value)
Increments the value of the given parameter relatively from the ORIGINAL value.
Определения ParticleSource.c:890
bool ApplyProperties(ParticleProperties properties)
Applies the properties given to the ParticleSource.
Определения ParticleSource.c:551
proto bool IsParticlePlayingNative()
Ask if the particle is still playing.
override Object GetParticleParent()
Returns the parent of this Particle if there is one.
Определения ParticleSource.c:579
proto native Class GetOwner()
Get the owner of this ParticleSource.
override void SetSource(int particle_id)
Sets particle id.
Определения ParticleSource.c:468
override bool PlayParticleEx(int particle_id=-1, int flags=0)
Method to tell the particle to start playing.
Определения ParticleSource.c:350
static override ParticleSource Create(int particle_id, vector global_pos, vector global_ori="0 0 0")
Legacy function for backwards compatibility with 1.01 and below.
Определения ParticleSource.c:274
override float GetParameterEx(int emitter, int parameter)
Get the value of a parameter of an emitor in the particle.
Определения ParticleSource.c:845
proto native void SetOwner(Class owner)
Set the owner of this ParticleSource.
void ~ParticleSource()
dtor
Определения ParticleSource.c:136
proto static native int GetStaticActiveCount()
Gets the amount of ParticleSource that are currently existing.
proto native int GetParticleAutoDestroyFlags()
Gets the currently set ParticleAutoDestroyFlags flags set on this ParticleSource.
override bool HasActiveParticle()
Returns if there is any particle active.
Определения ParticleSource.c:594
void OnParticleParented(IEntity parent)
Event when the particle receives a parent.
Определения ParticleSource.c:726
proto native void SetParticleAutoDestroyFlags(ParticleAutoDestroyFlags flags)
Enables the particle to automatically clean up itself when ending or stopping.
void DestroyParticleEffect()
Empty.
Определения ParticleSource.c:1020
override void SetWiggle(float random_angle, float random_interval)
Makes the particle change direction by random_angle every random_interval seconds.
Определения ParticleSource.c:933
void OnParticleUnParented(IEntity parent)
Event when the particle is orphaned.
Определения ParticleSource.c:736
override bool RestartParticle()
Method to tell the particle to restart (reset + play)
Определения ParticleSource.c:406
override Object GetDirectParticleEffect()
Returns direct particle effect entity.
Определения ParticleSource.c:570
static override Particle CreateOnObject(int particle_id, Object parent_obj, vector local_pos="0 0 0", vector local_ori="0 0 0", bool force_world_rotation=false)
Creates a particle emitter and attaches it on the given object.
Определения ParticleSource.c:240
override bool IsRepeat()
Returns whether there is a repeating particle.
Определения ParticleSource.c:626
void DisableAutoDestroy()
Disables the particle automatically cleaning up itself when ending or stopping.
Определения ParticleSource.c:155
proto native bool ApplyPropertiesNative(ParticleProperties properties)
Applies the properties given to the ParticleSource.
void OnParticleStop()
Event when the particle stops.
Определения ParticleSource.c:759
proto native void Orphan()
null the owner of this ParticleSource
override int GetParticleID()
Gets the ParticleList ID of the currently assigned particle.
Определения ParticleSource.c:505
bool SetParticle(string path)
Assigns a particle to the ParticleSource.
Определения ParticleSource.c:448
proto static native int GetStaticCount()
Gets the amount of ParticleSource that have been created since the start of the program.
void CreateParticleEffect()
Empty.
Определения ParticleSource.c:1023
proto native ParticleManager GetParticleManager()
Get the ParticleManager the ParticleSource belongs to if any.
proto bool IsRepeatNative()
Returns whether there is a repeating particle.
proto bool StopParticleNative(int flags)
Method to tell the particle to stop playing.
override void ScaleParticleParam(int parameter_id, float coef)
Scales the given parameter on all emitors relatively to their CURRENT value.
Определения ParticleSource.c:873
proto bool PlayParticleNative(int flags)
Method to tell the particle to start playing.
proto native bool ResetParticleNative()
Method to tell the particle to reset.
override void GetParameter(int emitter, int parameter, out float value)
Get the value of a parameter of an emitor in the particle.
Определения ParticleSource.c:834
void EOnFrame(IEntity other, float timeSlice)
Empty.
Определения ParticleSource.c:1026
override bool ResetParticle()
Method to tell the particle to reset.
Определения ParticleSource.c:391
override void SetParticleParam(int parameter_id, float value)
Set the value of a parameter of all emitors in the particle.
Определения ParticleSource.c:812
proto vector GetLocalPos()
proto vector GetLocalOri()
proto Object GetParent()
void ~ParticleProperties()
dtor
Определения ParticleSource.c:86
proto bool IsKeepParentOnEnd()
proto bool IsDisabledInUI()
proto Class GetOwner()
proto int GetPPFlags()
void ParticleProperties(vector localPos, int flags, Object parent=null, vector localOri=vector.Zero, Class owner=null)
Constructor (ctor)
Определения ParticleSource.c:81
proto bool IsPlayOnCreation()
proto bool IsForceWorldRotation()
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
static const vector Zero
Определения EnConvert.c:123
Определения EnConvert.c:119
enum ShapeType ErrorEx
@ VISIBLE
Определения EnDebug.c:136
@ ALL
Mask of all events.
Определения EnEntity.c:110
static proto float RandomFloat(float min, float max)
Returns a random float number between and min[inclusive] and max[exclusive].
proto void SetParticleParm(notnull IEntity ent, int emitor, EmitorParam parameter, void value)
proto void GetParticleParmOriginal(notnull IEntity ent, int emitor, EmitorParam parameter, out void value)
proto int GetParticleEmitorCount(notnull IEntity ent)
proto void GetParticleParm(notnull IEntity ent, int emitor, EmitorParam parameter, out void value)
@ NONE
body is not in simulation, nor in collision world
Определения SimulationState.c:15
@ RESET
When present, will reset [PD] on sorting, otherwise will accumulate on top of it.
Определения EnProfiler.c:13
proto native Widget GetParent()
Get parent of the Effect.
Определения Effect.c:422
@ ON_END
Определения EnWidgets.c:535
@ ON_STOP
Определения EnWidgets.c:534
proto native volatile void Update()
Определения PlayerSoundManager.c:125