summaryrefslogtreecommitdiffstats
path: root/src/World.cpp
diff options
context:
space:
mode:
authorTiger Wang <ziwei.tiger@hotmail.co.uk>2014-02-18 23:13:44 +0100
committerTiger Wang <ziwei.tiger@hotmail.co.uk>2014-02-18 23:13:44 +0100
commita686656253b9bd11238b2ae2210f809b49c355b9 (patch)
tree112663e0d7be31401232bd6e3f4f10852776639e /src/World.cpp
parentMerge branch 'itemframes' of https://github.com/mc-server/MCServer into itemframes (diff)
parentMerge pull request #696 from mc-server/paintings (diff)
downloadcuberite-a686656253b9bd11238b2ae2210f809b49c355b9.tar
cuberite-a686656253b9bd11238b2ae2210f809b49c355b9.tar.gz
cuberite-a686656253b9bd11238b2ae2210f809b49c355b9.tar.bz2
cuberite-a686656253b9bd11238b2ae2210f809b49c355b9.tar.lz
cuberite-a686656253b9bd11238b2ae2210f809b49c355b9.tar.xz
cuberite-a686656253b9bd11238b2ae2210f809b49c355b9.tar.zst
cuberite-a686656253b9bd11238b2ae2210f809b49c355b9.zip
Diffstat (limited to 'src/World.cpp')
-rw-r--r--src/World.cpp41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/World.cpp b/src/World.cpp
index d67ad36d1..e57675c44 100644
--- a/src/World.cpp
+++ b/src/World.cpp
@@ -1487,6 +1487,37 @@ EMCSBiome cWorld::GetBiomeAt (int a_BlockX, int a_BlockZ)
+bool cWorld::SetBiomeAt(int a_BlockX, int a_BlockZ, EMCSBiome a_Biome)
+{
+ return m_ChunkMap->SetBiomeAt(a_BlockX, a_BlockZ, a_Biome);
+}
+
+
+
+
+
+bool cWorld::SetAreaBiome(int a_MinX, int a_MaxX, int a_MinZ, int a_MaxZ, EMCSBiome a_Biome)
+{
+ return m_ChunkMap->SetAreaBiome(a_MinX, a_MaxX, a_MinZ, a_MaxZ, a_Biome);
+}
+
+
+
+
+
+bool cWorld::SetAreaBiome(const cCuboid & a_Area, EMCSBiome a_Biome)
+{
+ return SetAreaBiome(
+ std::min(a_Area.p1.x, a_Area.p2.x), std::max(a_Area.p1.x, a_Area.p2.x),
+ std::min(a_Area.p1.z, a_Area.p2.z), std::max(a_Area.p1.z, a_Area.p2.z),
+ a_Biome
+ );
+}
+
+
+
+
+
void cWorld::SetBlock(int a_BlockX, int a_BlockY, int a_BlockZ, BLOCKTYPE a_BlockType, NIBBLETYPE a_BlockMeta)
{
m_ChunkMap->SetBlock(*this, a_BlockX, a_BlockY, a_BlockZ, a_BlockType, a_BlockMeta);
@@ -2490,6 +2521,16 @@ void cWorld::SendChunkTo(int a_ChunkX, int a_ChunkZ, cClientHandle * a_Client)
+void cWorld::ForceSendChunkTo(int a_ChunkX, int a_ChunkZ, cClientHandle * a_Client)
+{
+ a_Client->AddWantedChunk(a_ChunkX, a_ChunkZ);
+ m_ChunkSender.QueueSendChunkTo(a_ChunkX, a_ChunkZ, a_Client);
+}
+
+
+
+
+
void cWorld::RemoveClientFromChunkSender(cClientHandle * a_Client)
{
m_ChunkSender.RemoveClient(a_Client);