diff options
author | Mattes D <github@xoft.cz> | 2013-12-22 15:45:24 +0100 |
---|---|---|
committer | Mattes D <github@xoft.cz> | 2013-12-22 15:45:24 +0100 |
commit | f404130e8c5f91788eec9dfc3b9d22099b8d060c (patch) | |
tree | 64e2f2959d7e560101200541b85f18357826e163 /src/ChunkMap.cpp | |
parent | Using regular assignments. (diff) | |
parent | Fixed compiler warning. (diff) | |
download | cuberite-f404130e8c5f91788eec9dfc3b9d22099b8d060c.tar cuberite-f404130e8c5f91788eec9dfc3b9d22099b8d060c.tar.gz cuberite-f404130e8c5f91788eec9dfc3b9d22099b8d060c.tar.bz2 cuberite-f404130e8c5f91788eec9dfc3b9d22099b8d060c.tar.lz cuberite-f404130e8c5f91788eec9dfc3b9d22099b8d060c.tar.xz cuberite-f404130e8c5f91788eec9dfc3b9d22099b8d060c.tar.zst cuberite-f404130e8c5f91788eec9dfc3b9d22099b8d060c.zip |
Diffstat (limited to '')
-rw-r--r-- | src/ChunkMap.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/ChunkMap.cpp b/src/ChunkMap.cpp index c67d8e2e8..86fbceff7 100644 --- a/src/ChunkMap.cpp +++ b/src/ChunkMap.cpp @@ -605,6 +605,25 @@ void cChunkMap::BroadcastEntityAnimation(const cEntity & a_Entity, char a_Animat +void cChunkMap::BroadcastParticleEffect(const AString & a_ParticleName, float a_SrcX, float a_SrcY, float a_SrcZ, float a_OffsetX, float a_OffsetY, float a_OffsetZ, float a_ParticleData, int a_ParticleAmmount, cClientHandle * a_Exclude) +{ + cCSLock Lock(m_CSLayers); + int ChunkX, ChunkZ; + + cChunkDef::BlockToChunk((int) a_SrcX, (int) a_SrcZ, ChunkX, ChunkZ); + cChunkPtr Chunk = GetChunkNoGen(ChunkX, 0, ChunkZ); + if (Chunk == NULL) + { + return; + } + // It's perfectly legal to broadcast packets even to invalid chunks! + Chunk->BroadcastParticleEffect(a_ParticleName, a_SrcX, a_SrcY, a_SrcZ, a_OffsetX, a_OffsetY, a_OffsetZ, a_ParticleData, a_ParticleAmmount, a_Exclude); +} + + + + + void cChunkMap::BroadcastRemoveEntityEffect(const cEntity & a_Entity, int a_EffectID, const cClientHandle * a_Exclude) { cCSLock Lock(m_CSLayers); |