Class AirBubbleParticles
- Namespace
- Vintagestory.API.Common
- Assembly
- VintagestoryAPI.dll
public class AirBubbleParticles : IParticlePropertiesProvider
- Inheritance
-
AirBubbleParticles
- Implements
- Inherited Members
- Extension Methods
Fields
AddVelocity
The velocity to add to the bubble particle.
public Vec3f AddVelocity
Field Value
BasePos
The base position of the bubble particle.
public Vec3d BasePos
Field Value
Range
public float Range
Field Value
horVelocityMul
public float horVelocityMul
Field Value
quantity
public float quantity
Field Value
Properties
Async
If true, will be be spawned in the async particle system, which does not affect main game performance, recommended for large quantities of particles, slightly less optimal for particles that spawn very often
public bool Async { get; }
Property Value
BlueEvolve
Return null or 1 if opacity should remain unchanged over time. lifetimeLeft is always a value between 0 and 1
public EvolvingNatFloat BlueEvolve { get; }
Property Value
Bounciness
public float Bounciness { get; set; }
Property Value
DeathParticles
Gets the death particles.
public IParticlePropertiesProvider[] DeathParticles { get; }
Property Value
- IParticlePropertiesProvider[]
There are no death particles for bubbles.
DieInAir
Whether or not the bubbles die in air.
public bool DieInAir { get; }
Property Value
- bool
Yes they die in air.
DieInLiquid
Whether or not the bubbles die in liquid.
public bool DieInLiquid { get; }
Property Value
- bool
They don't.
DieOnRainHeightmap
If true, particle dies if it falls below the rain height at its given location
public bool DieOnRainHeightmap { get; }
Property Value
GravityEffect
Gets the gravity applied to the particle.
public float GravityEffect { get; }
Property Value
- float
None.
GreenEvolve
Return null or 1 if opacity should remain unchanged over time. lifetimeLeft is always a value between 0 and 1
public EvolvingNatFloat GreenEvolve { get; }
Property Value
LifeLength
Gets the length of life for the particle.
public float LifeLength { get; set; }
Property Value
- float
0.25f
LightEmission
If this particle emits light, this is its RGBA. Does not actually brighten the scene around it, but prevents incorrect lighting of particles when everything else around it is dark
public int LightEmission { get; }
Property Value
OpacityEvolve
Return null or 1 if opacity should remain unchanged over time. lifetimeLeft is always a value between 0 and 1
public EvolvingNatFloat OpacityEvolve { get; }
Property Value
ParentVelocity
public Vec3f ParentVelocity { get; }
Property Value
ParticleModel
The base model of the particle.
public EnumParticleModel ParticleModel { get; }
Property Value
- EnumParticleModel
It's a cube.
Pos
Position in the world where the particle should spawn
public Vec3d Pos { get; }
Property Value
Quantity
How many particles should spawn? For every particle spawned, all of belows methods are called once. E.g. if quantity is 10, GetPos(), GetVelocity(),... is called 10 times.
public float Quantity { get; }
Property Value
RandomVelocityChange
public bool RandomVelocityChange { get; set; }
Property Value
RedEvolve
Return null or 1 if opacity should remain unchanged over time. lifetimeLeft is always a value between 0 and 1
public EvolvingNatFloat RedEvolve { get; }
Property Value
SecondaryParticles
Gets the secondary particles
public IParticlePropertiesProvider[] SecondaryParticles { get; }
Property Value
- IParticlePropertiesProvider[]
null, the bubble particles don't have secondary particles.
SecondarySpawnInterval
Determines the interval of time that must elapse during it's parent particle's lifetime before this one will spawn. This is only honored if this particle is defined as a secondary particle.
public float SecondarySpawnInterval { get; }
Property Value
SelfPropelled
This particle is not self propelled.
public bool SelfPropelled { get; }
Property Value
Size
Size of the particle
public float Size { get; }
Property Value
SizeEvolve
Size change over time
public EvolvingNatFloat SizeEvolve { get; }
Property Value
SwimOnLiquid
Whether or not the bubbles die in liquid.
public bool SwimOnLiquid { get; set; }
Property Value
- bool
They don't.
TerrainCollision
Whether or not the bubble collides with the terrain.
public bool TerrainCollision { get; }
Property Value
VelocityEvolve
Velocity change over time (acts as a multiplier to the velocity)
public EvolvingNatFloat[] VelocityEvolve { get; }
Property Value
VertexFlags
Gets the glow level of the bubbles.
public int VertexFlags { get; }
Property Value
- int
No glow.
Methods
BeginParticle()
Called just before a new particle is being created. You can use this to produce e.g. alternating kinds of particles
public void BeginParticle()
FromBytes(BinaryReader, IWorldAccessor)
This particle does not load from file.
public void FromBytes(BinaryReader reader, IWorldAccessor resolver)
Parameters
reader
BinaryReaderresolver
IWorldAccessor
GetRgbaColor(ICoreClientAPI)
The particles Rgba Color
public int GetRgbaColor(ICoreClientAPI capi)
Parameters
capi
ICoreClientAPI
Returns
GetVelocity(Vec3d)
In what direction should the particle fly/fall
public Vec3f GetVelocity(Vec3d pos)
Parameters
pos
Vec3d
Returns
Init(ICoreAPI)
Initializes the bubble particle.
public void Init(ICoreAPI api)
Parameters
api
ICoreAPIThe core API.
PrepareForSecondarySpawn(ParticleBase)
Updates instance related state for secondary particles based on the given parent particle instance
public void PrepareForSecondarySpawn(ParticleBase particleInstance)
Parameters
particleInstance
ParticleBaseThe parent IParticleInstance from which this secondary particle is being spawned
ToBytes(BinaryWriter)
This particle does not save to file.
public void ToBytes(BinaryWriter writer)
Parameters
writer
BinaryWriter