RParticles?/ParticleSystem
This class is part of RParticles by Raven
This is base class for ParticleSystem. It holds everything together and contain basic enums and structures.
ENUMS
EAccelType
- ACC_Addictive
- acceleration will be added to velocity.
- ACC_Multiply
- velocity will be multiplied by acceleration.
ESizeType
- ST_Normal
- particle will not change size
- ST_Grow
- particle will grow (ParticleGrowth)
- ST_Shrink
- particle will shrink (ParticleShrink)
- ST_Cycle
- particle will cyclically shrinks and grow
ESizing
- SIZING_Infinity
- particle will grow/shrink till lifespan ends
- SIZING_UserDecided
- particle will grow/shrink till DrawScale reach specified size
ETAnim
- AN_PlayOnce
- should animation be played only once
- AN_Loop
- or should it be looped
EFType
- FACE_None
- rotation is not changed
- FACE_Velocity
- mesh always faces velocity
- FACE_Actor
- mesh always faces chosen actor
EDest
- DEST_None
- no destination
- DEST_Once
- will pick target's destination only once
- DEST_Seek
- will constantly try to found a way to destination actor
Structures
SAdvanced
- bool bUseParticleClass
- can we use custom class
- class<BasicParticle> ParticleClass
- custom class
SAnimation
- texture AnimTextures[60]
- animation textures
- int NumOfTextures
- number of textures
- bool DefineAnimationStorage
- should animated textures be taken from 'AnimationStorage' class (for coders)
- class<ParticleAnimationStorage> ParticleAnimationStorage
- stores animations (for coders)
SBounce
- bool CanBounce
- can we use bounce
- float BounceRatio
- bounce ratio
- float BounceModifier
- bounce height (when landed)
- bool EndlessBounce
- will bounce till it die if true
- int BounceNum
- if EndlessBounce is false this is number of bounces
SBuoyance
- bool CanBuoyance
- can buoyancy in water
- bool SplashWhenHitWater
- splash when hit water
- bool SoundWhenHitWater
- plays sound when hit water
- float ParticleBuoyancy
- particle buoyancy
- float ParticleMass
- particle mass
SCollision
- bool ParticlesUseCollision
- particle should collide with world and actors?
- float ParticleCollisonRadius
- collision radius
- float ParticleCollisonHeight
- collision height
- bool CollideWithActors
- will collide with actors if true
- bool BlockPlayers
- will block players if true
- bool BlockActors
- will block actors if true
- bool ParticleCollideWorld
- will Collide world
- bool DestroyWhenTouch
- will destroy particle when touching an actor
- bool DestroyWhenColideWorld
- will destroy particle when touching world geometry (eg walls)
- bool DestroyWhenLand
- will destroy particle when land
- bool DestroyWhenTouchWater
- will destroy particle when touches water
- bool StopWhenTouchWall
- will stop when touches world geometry
- bool StopWhenTouchPawn
- will stop when touches pawn
- bool StickToWall
- will stick to wall
- bool StickToPawn
- will stick to pawn
- bool bSpawnLandEffect
- spawn effect when landed
- class<actor> LandEffect
- land effect
- bool bOverrideWaterEntrySound
- override default water entry sound (if particles_use_collision is false)
- sound WaterEntrySound
- water entry sound
- bool bOverrideWaterEntryEffect
- override default water entry actor (if particles_use_collision is false)
- class<actor> WaterEntryActor
- water entry actor
- bool bSpawnEffectOnDestroy
- spawn effect when destroy
- class<actor> DestroyEffect
- destroy effect
SDamage
- bool ParticleGivesDamage
- particle will give damage when touching actor
- name ParticleDamageType
- damage type
- int ParticleDamage
- damage
- bool PlayerTakeDamage
- player pawn can be damaged
- bool ScriptedPawnTakeDamage
- scripted pawns can be damaged
- bool FlockPawnTakeDamage
- flock pawns can be damaged
- bool OtherActorTakeDamage
- all other actors such as eg. wooden boxes can be damaged
- int MomentumTransfer
- momentum transfer
SDecal
- texture ParticleDecalTexture
- texture used for decal
- bool ParticleSpawnDecal
- particle will spawn decal (true) when they hit wall
- class<decal> ParticleDecal
- decal class
- float ParticleDecalSize
- decal size
- bool bLimitDecals
- if true, decals will be limited
SSize
- ESizeType SizeType
- size type
- ST_Normal : particle will not change size
- ST_Grow : particle will grow (ParticleGrowth)
- ST_Shrink : particle will shrink (ParticleShrink)
- ST_Cycle : particle will cyclically shrinks and grow
- ESizing Sizing
- describes end size of particle (not used if SizeType is ST_Cycle)
- SIZING_Infinity: particle will grow/shrink till lifespan ends
- SIZING_UserDecided : particle will grow/shrink till DrawScale reach specified size
- float ParticleDrawScale
- particle default size
- float ParticleDrawScaleVariance
- particle default size variance
- float ParticleGrowth
- particle grow rate (absolute number)
- float float ParticleShrink
- particle shrink rate (absolute number)
- float MinSize
- the smallest of particle (only if SizeType is ST_Cycle)
- float float MaxSize
- the biggest size of particle (only if SizeType is ST_Cycle)
SDisplay
- ERenderStyle ParticleStyle
- particle render style
- bool bUnlitParticle
- is particle unlit
- bool bParticleCastShadow
- particle cast shadow
- bool bParticleMeshEnviroMap
- only when particle is a mesh
- bool bUseMesh
- particle will use mesh instead of sprite
- mesh PraticleMesh
- mesh (if use_mesh is true)
- bool bUseRandomTexture
- uses random texture from anim_textures
- texture ParticleTexture
- particle texture (if doesn't use particle animation
- bool bUseSpriteAnimation
- particle will use sprite animation
SFading
- bool CanFadeOut
- can fade out
- bool CanFadeIn
- can fade in
- float InitailScaleGlow
- initial glow
- float FadeOutTime
- fade out time
- float FadeOutScaleFactor
- fade out scale factor
- float FadeInTime
- fade in time
- float FadeInScaleFactor
- fade scale factor
SLight
- bool CastLight;
- particle will cast light!!
SLightColor
- byte ParticleLightBrightness
- light brightness
- byte ParticleLightHue
- light hue
- byte ParticleLightSaturation
- light satruation
SLighting
- ELightType ParticleLightType
- light type (can lag )
- ELightEffect ParticleLightEffect
- light effect (can lag )
- byte ParticleLightRadius
- light radius
- byte ParticleLightPeriod
- light period
- byte ParticleLightPhase
- light phase
- byte ParticleLightCone
- light cone
- byte ParticleVolumeBrightness
- volume brightness
- byte ParticleVolumeRadius
- volume radius
- byte ParticleVolumeFog
- volume fog
SGlobal
- float ParticleLifeTime
- lifespan (in seconds)
- float ParticleLifeTimeVariance
- lifespan variance (in seconds)
- bool bDefineSpeedAsVector
- defines speed as a vector
- vector BaseSpeed
- base particle speed (if bDefineSpeedAsVector is true)
- float SpeedVariance
- speed variance
- float ParticleSpeed
- speed when particle system is rotated as generator
- float SprayFactor
- spray
- float SprayFactorVariance
- spray vairance
SMain
- bool bForceGlobalSettings
- will force settings from SGlobal
- rotator ParticleRotation
- custom particle rotation (useful when we have mesh instead of sprite)
- bool bUseParticleRotation
- should we use custom particle rotation
- float ParticleLifeTime
- lifespan (in seconds)
- float ParticleLifeTimeVariance
- lifespan variance (in seconds)
- float ParticleSlowingDownFactor
- particle slow down factor (can not be 0 (!!) 1.0 : no slow down, higher then 1.0 : faster, lower then 1.0 : lower)
- bool bMoveSmooth
- particle will move smooth
- bool bDefineSpeedAsVector
- defines speed as a vector
- vector BaseSpeed
- base particle speed (if bDefineSpeedAsVector is true)
- float SpeedVariance
- speed variance
- float ParticleSpeed
- speed when particle system is rotated as generator
- float SprayFactor
- spray
- float SprayFactorVariance
- spray vairance
SPPhysics
- EPhysics ParticlePhysics
- custom physic
- bool bCanAccelerate
- particle can accelerate
- vector AccelerateFactor
- accelerate factor
- vector TerminalVelocity
- max accelerate
- EAccelType AccelerationType
- acceleration type
- ACC_Addictive : acceleration will be added to velocity.
- ACC_Multiply : velocity will be multiplied by acceleration.
SSound
- sound BornSound
- when particle starts it's life
- sound FlyingSound
- particle flying sound
- sound DyingSound
- particle dying sound
- sound LandingSound
- particle landing sound
- sound HittingSound
- when particle hit's wall
- sound TouchingSound
- when particle hits an actor
- ESoundSlot ParticleSoundSlot
- sound slot
- float ParticleSoundVolume
- sound volume
- bool ParticleSoundbNoOverride
- sound no override
- float ParticleSoundRadius
- sound radius
- float ParticleSoundPitch
- sound pitch
SVelocity
- bool bUseInvertVelocity
- whenever particle velocity should be changed
- bool InvertX
- X-Axis velocity will be inverted (Velocity.X*=-1)
- bool InvertY
- Y-Axis velocity will be inverted (Velocity.Y*=-1)
- bool InvertZ
- Z-Axis velocity will be inverted (Velocity.Z*=-1)
- float InvertDelay
- change time
SSpawnPlace
- vector OwnEffectArea
- each template can override effect area
- bool bUseOwnEffectArea
- overrided effect area
SDest
- actor Destination
- particle destination
- EDest DestinationType
- type of destination
- bool bForceFollow
- will ignore anything just to reach destination
SMesh
- bool bAnimatedMesh
- if mesh have to be animated
- name AnimationName
- name of animation which should be played
- float AnimationRate
- animation rate
- float TweenRate
- tween rate
- ETAnim AnimationType
- animation type
- EFType FaceObject
- object particle should face
- actor LookTarget
- Used if DynamicRotation == FACE_Actor
- rotator MeshRotationRate
- rotation rate (only if DynamicRotation == FACE_None)
SRot
- bool bRandomizeRotation
- uses random rotation
- bool bRandPitch
- random pitch
- bool bRandYaw
- random yaw
- bool bRandRoll
- randomed roll
- rotator MinRotation
- min rotation
- rotator MaxRotation
- max rotation
- bool bForceRndRot
- forces RotRand() function