28 if (ceilingParticleID <= 0)
54 boneIdx = creature.GetBoneIndexByName(boneName);
56 boneIdx = player.GetBoneIndexByName(boneName);
62 bonePos[1] = ownerPos[1];
71 pos[1] = pos[1] - thicc;
84 effect.SetParticle(ceilingParticleID);
85 effect.SetAutodestroy(
true);
144 bool upperVariant = effectPos[1] < playerPos[1];
169 return "CeilingDustEffect_SoundSet";
174 return "CeilingDustEffectTop_SoundSet";
void PlayCeilingDustSound()
ref ScriptInvoker Event_OnEffectStarted
Event used when the actual effect started playing.
vector m_Position
Cached world position.
void EffectParticleGeneral()
void ~CeilingDustEffectBase()
void CeilingDustEffectBase()
string GetAdjustedSoundSet(vector effectPos)
string GetUpperSoundsetVariant()
string GetLowerSoundsetVariant()
void PlayCeilingDustSound()
Super root of all classes in Enforce script.
static float FLOOR_THICKNESS_DEFAULT
void AdjustBySurfaceThickness(inout vector pos, SurfaceInfo surfaceInfo)
void CreateEffects(int ceilingParticleID, vector position)
void DustEffectCeilingHandlerBase(EntityAI owner)
void OnStepUpdate(SurfaceInfo surfaceInfo, string boneName="")
void CalculateNextEffect(string surfaceType, int particleID)
static int RANGE_MIN_DEFAULT
vector GetBonePosition(string boneName)
static int RANGE_MAX_DEFAULT
void CreateEffects(int ceilingParticleID, vector position)
Request from server, effecter handles the rest.
int IsCeilingDustEffectEnabled()
static string GetCeilingEffectType(int particleID)
Returns effect type paired to the particleID.
static DustEffectManager GetDustEffectManager()
static void AdjustCeilingDustEffectFrequency(string surfaceType, int particleID, inout int min, inout int max)
optional adjustment of frequency by particleID
override void SetAutodestroy(bool auto_destroy)
Sets whether Effect automatically cleans up when it stops.
static int PlayInWorld(notnull Effect eff, vector pos)
Play an Effect.
static int CreateParticleServer(vector pos, EffecterParameters parameters)
returns unique effecter ID
static EffectSound PlaySound(string sound_set, vector position, float play_fade_in=0, float stop_fade_out=0, bool loop=false)
Create and play an EffectSound.
Manager class for managing Effect (EffectParticle, EffectSound)
proto float GetThickness()
proto string GetSurfaceType()
proto int GetCeilingDustParticleId()
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
static int RandomIntInclusive(int min, int max)
Returns a random int number between and min [inclusive] and max [inclusive].
proto native ToType()
Returns internal type representation. Can be used in runtime, or cached in variables and used for fas...