summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
m---------lib/SQLiteCpp0
-rw-r--r--src/Bindings/DeprecatedBindings.cpp5
-rw-r--r--src/Bindings/LuaChunkStay.cpp1
-rw-r--r--src/Bindings/LuaChunkStay.h1
-rw-r--r--src/Bindings/LuaState.h1
-rw-r--r--src/Bindings/LuaWindow.cpp1
-rw-r--r--src/Bindings/ManualBindings.cpp2
-rw-r--r--src/Bindings/Plugin.h14
-rw-r--r--src/Bindings/PluginLua.cpp4
-rw-r--r--src/Bindings/PluginManager.cpp2
-rw-r--r--src/Bindings/PluginManager.h6
-rw-r--r--src/Bindings/WebPlugin.cpp1
-rw-r--r--src/Bindings/WebPlugin.h1
-rw-r--r--src/BlockEntities/BlockEntity.h5
-rw-r--r--src/BlockEntities/BlockEntityWithItems.h1
-rw-r--r--src/BlockEntities/ChestEntity.cpp1
-rw-r--r--src/BlockEntities/ChestEntity.h2
-rw-r--r--src/BlockEntities/CommandBlockEntity.cpp6
-rw-r--r--src/BlockEntities/DispenserEntity.cpp3
-rw-r--r--src/BlockEntities/DropSpenserEntity.cpp1
-rw-r--r--src/BlockEntities/DropSpenserEntity.h1
-rw-r--r--src/BlockEntities/DropperEntity.cpp2
-rw-r--r--src/BlockEntities/EnderChestEntity.cpp1
-rw-r--r--src/BlockEntities/EnderChestEntity.h1
-rw-r--r--src/BlockEntities/FlowerPotEntity.cpp1
-rw-r--r--src/BlockEntities/FlowerPotEntity.h2
-rw-r--r--src/BlockEntities/FurnaceEntity.cpp2
-rw-r--r--src/BlockEntities/FurnaceEntity.h1
-rw-r--r--src/BlockEntities/HopperEntity.cpp3
-rw-r--r--src/BlockEntities/JukeboxEntity.cpp4
-rw-r--r--src/BlockEntities/JukeboxEntity.h1
-rw-r--r--src/BlockEntities/MobHeadEntity.cpp1
-rw-r--r--src/BlockEntities/MobHeadEntity.h2
-rw-r--r--src/BlockEntities/NoteEntity.cpp2
-rw-r--r--src/BlockEntities/SignEntity.cpp4
-rw-r--r--src/Blocks/BlockBed.cpp9
-rw-r--r--src/Blocks/BlockBed.h8
-rw-r--r--src/Blocks/BlockBigFlower.h2
-rw-r--r--src/Blocks/BlockDirt.h4
-rw-r--r--src/Blocks/BlockDoor.cpp1
-rw-r--r--src/Blocks/BlockDoor.h1
-rw-r--r--src/Blocks/BlockHandler.cpp4
-rw-r--r--src/Blocks/BlockHandler.h8
-rw-r--r--src/Blocks/BlockPiston.cpp1
-rw-r--r--src/Blocks/BlockRedstoneRepeater.h2
-rw-r--r--src/Blocks/BlockSlab.h1
-rw-r--r--src/Blocks/BlockVine.h2
-rw-r--r--src/Blocks/ChunkInterface.cpp1
-rw-r--r--src/Blocks/ChunkInterface.h3
-rw-r--r--src/Chunk.cpp1
-rw-r--r--src/Chunk.h6
-rw-r--r--src/ChunkMap.cpp2
-rw-r--r--src/ChunkSender.cpp1
-rw-r--r--src/Entities/ArrowEntity.cpp1
-rw-r--r--src/Entities/EnderCrystal.cpp2
-rw-r--r--src/Entities/Entity.cpp1
-rw-r--r--src/Items/ItemBucket.h1
-rw-r--r--src/Mobs/Villager.h2
-rw-r--r--src/Simulator/FloodyFluidSimulator.cpp1
59 files changed, 70 insertions, 81 deletions
diff --git a/lib/SQLiteCpp b/lib/SQLiteCpp
-Subproject 203c2fb68bbf871eaf4ca98756a113d74d620de
+Subproject 55edadd56d0d6f506954ad00c3b9a5d425814a2
diff --git a/src/Bindings/DeprecatedBindings.cpp b/src/Bindings/DeprecatedBindings.cpp
index 36243bc92..02aa15be4 100644
--- a/src/Bindings/DeprecatedBindings.cpp
+++ b/src/Bindings/DeprecatedBindings.cpp
@@ -5,11 +5,6 @@
#undef TOLUA_TEMPLATE_BIND
#include "tolua++/include/tolua++.h"
-#include "Plugin.h"
-#include "PluginLua.h"
-#include "PluginManager.h"
-#include "LuaWindow.h"
-#include "LuaChunkStay.h"
#include "../BlockInfo.h"
diff --git a/src/Bindings/LuaChunkStay.cpp b/src/Bindings/LuaChunkStay.cpp
index 154bcb200..a3d3a8090 100644
--- a/src/Bindings/LuaChunkStay.cpp
+++ b/src/Bindings/LuaChunkStay.cpp
@@ -6,7 +6,6 @@
#include "Globals.h"
#include "LuaChunkStay.h"
#include "PluginLua.h"
-#include "../World.h"
diff --git a/src/Bindings/LuaChunkStay.h b/src/Bindings/LuaChunkStay.h
index 49ab9a0ad..d76b67de9 100644
--- a/src/Bindings/LuaChunkStay.h
+++ b/src/Bindings/LuaChunkStay.h
@@ -18,6 +18,7 @@
// fwd:
class cPluginLua;
+class cChunkMap;
diff --git a/src/Bindings/LuaState.h b/src/Bindings/LuaState.h
index 44f187701..094a200e0 100644
--- a/src/Bindings/LuaState.h
+++ b/src/Bindings/LuaState.h
@@ -56,7 +56,6 @@ struct HTTPRequest;
class cWebAdmin;
struct HTTPTemplateRequest;
class cTNTEntity;
-class cCreeper;
class cHopperEntity;
class cBlockEntity;
class cBoundingBox;
diff --git a/src/Bindings/LuaWindow.cpp b/src/Bindings/LuaWindow.cpp
index 1a2582ab0..c4d03b86b 100644
--- a/src/Bindings/LuaWindow.cpp
+++ b/src/Bindings/LuaWindow.cpp
@@ -6,7 +6,6 @@
#include "LuaWindow.h"
#include "../UI/SlotArea.h"
#include "PluginLua.h"
-#include "../Entities/Player.h"
#include "lua/src/lauxlib.h" // Needed for LUA_REFNIL
diff --git a/src/Bindings/ManualBindings.cpp b/src/Bindings/ManualBindings.cpp
index b7ea65759..d8134f159 100644
--- a/src/Bindings/ManualBindings.cpp
+++ b/src/Bindings/ManualBindings.cpp
@@ -5,7 +5,6 @@
#undef TOLUA_TEMPLATE_BIND
#include "tolua++/include/tolua++.h"
#include "polarssl/md5.h"
-#include "Plugin.h"
#include "PluginLua.h"
#include "PluginManager.h"
#include "LuaWindow.h"
@@ -27,7 +26,6 @@
#include "../BlockEntities/MobHeadEntity.h"
#include "../BlockEntities/FlowerPotEntity.h"
#include "../LineBlockTracer.h"
-#include "../Protocol/Authenticator.h"
#include "../WorldStorage/SchematicFileSerializer.h"
#include "../CompositeChat.h"
diff --git a/src/Bindings/Plugin.h b/src/Bindings/Plugin.h
index c9a53346d..fb22dd33e 100644
--- a/src/Bindings/Plugin.h
+++ b/src/Bindings/Plugin.h
@@ -1,23 +1,25 @@
#pragma once
-#include "PluginManager.h"
-
+#include "Defines.h"
+class cCommandOutputCallback;
+class cItems;
+class cHopperEntity;
+class cBlockEntityWithItems;
class cClientHandle;
-class cPlayer;
class cPickup;
-class cItem;
+class cPlayer;
+class cProjectileEntity;
class cEntity;
+class cMonster;
class cWorld;
class cChunkDesc;
struct TakeDamageInfo;
-// fwd: cPlayer.h
-class cPlayer;
// fwd: CraftingRecipes.h
class cCraftingGrid;
diff --git a/src/Bindings/PluginLua.cpp b/src/Bindings/PluginLua.cpp
index 2c2d05547..2629eb641 100644
--- a/src/Bindings/PluginLua.cpp
+++ b/src/Bindings/PluginLua.cpp
@@ -12,10 +12,12 @@
#endif
#include "PluginLua.h"
#include "../CommandOutput.h"
+#include "PluginManager.h"
+#include "../Item.h"
extern "C"
{
- #include "lua/src/lualib.h"
+ #include "lua/src/lauxlib.h"
}
#undef TOLUA_TEMPLATE_BIND
diff --git a/src/Bindings/PluginManager.cpp b/src/Bindings/PluginManager.cpp
index f62e6ae02..e0faa838a 100644
--- a/src/Bindings/PluginManager.cpp
+++ b/src/Bindings/PluginManager.cpp
@@ -4,12 +4,10 @@
#include "PluginManager.h"
#include "Plugin.h"
#include "PluginLua.h"
-#include "../WebAdmin.h"
#include "../Item.h"
#include "../Root.h"
#include "../Server.h"
#include "../CommandOutput.h"
-#include "../ChatColor.h"
#include "inifile/iniFile.h"
#include "../Entities/Player.h"
diff --git a/src/Bindings/PluginManager.h b/src/Bindings/PluginManager.h
index cef6619d7..fff3bc323 100644
--- a/src/Bindings/PluginManager.h
+++ b/src/Bindings/PluginManager.h
@@ -1,9 +1,8 @@
#pragma once
-#include "../Item.h"
-
+#include "Defines.h"
@@ -36,7 +35,6 @@ class cPickup;
// fwd: Pawn.h
struct TakeDamageInfo;
-class cPawn;
// fwd: CommandOutput.h
class cCommandOutputCallback;
@@ -49,6 +47,8 @@ class cBlockEntityWithItems;
+class cItems;
+
// tolua_begin
diff --git a/src/Bindings/WebPlugin.cpp b/src/Bindings/WebPlugin.cpp
index 4fa64d937..eca1c74e6 100644
--- a/src/Bindings/WebPlugin.cpp
+++ b/src/Bindings/WebPlugin.cpp
@@ -3,7 +3,6 @@
#include "WebPlugin.h"
#include "../WebAdmin.h"
-#include "../Server.h"
#include "../Root.h"
diff --git a/src/Bindings/WebPlugin.h b/src/Bindings/WebPlugin.h
index 46bc0cd2d..9b825b918 100644
--- a/src/Bindings/WebPlugin.h
+++ b/src/Bindings/WebPlugin.h
@@ -1,7 +1,6 @@
#pragma once
-struct lua_State;
struct HTTPRequest;
diff --git a/src/BlockEntities/BlockEntity.h b/src/BlockEntities/BlockEntity.h
index 5710f8543..066bbc696 100644
--- a/src/BlockEntities/BlockEntity.h
+++ b/src/BlockEntities/BlockEntity.h
@@ -1,8 +1,6 @@
#pragma once
-#include "../ClientHandle.h"
-#include "../World.h"
@@ -13,8 +11,9 @@ namespace Json
class Value;
};
+class cChunk;
class cPlayer;
-class cPacket;
+class cWorld;
diff --git a/src/BlockEntities/BlockEntityWithItems.h b/src/BlockEntities/BlockEntityWithItems.h
index 5f1639d45..e511ee8cb 100644
--- a/src/BlockEntities/BlockEntityWithItems.h
+++ b/src/BlockEntities/BlockEntityWithItems.h
@@ -12,6 +12,7 @@
#include "BlockEntity.h"
#include "../ItemGrid.h"
#include "../UI/WindowOwner.h"
+#include "World.h"
diff --git a/src/BlockEntities/ChestEntity.cpp b/src/BlockEntities/ChestEntity.cpp
index 21e1f6ba2..5447c7c49 100644
--- a/src/BlockEntities/ChestEntity.cpp
+++ b/src/BlockEntities/ChestEntity.cpp
@@ -5,7 +5,6 @@
#include "../Item.h"
#include "../Entities/Player.h"
#include "../UI/Window.h"
-#include "json/json.h"
diff --git a/src/BlockEntities/ChestEntity.h b/src/BlockEntities/ChestEntity.h
index cd06b3e2c..fa36e08be 100644
--- a/src/BlockEntities/ChestEntity.h
+++ b/src/BlockEntities/ChestEntity.h
@@ -13,8 +13,6 @@ namespace Json
};
class cClientHandle;
-class cServer;
-class cNBTData;
diff --git a/src/BlockEntities/CommandBlockEntity.cpp b/src/BlockEntities/CommandBlockEntity.cpp
index 20702a9ac..318874a9b 100644
--- a/src/BlockEntities/CommandBlockEntity.cpp
+++ b/src/BlockEntities/CommandBlockEntity.cpp
@@ -4,16 +4,14 @@
// Implements the cCommandBlockEntity class representing a single command block in the world
#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules
-#include "json/json.h"
#include "CommandBlockEntity.h"
-#include "../Entities/Player.h"
-#include "../WorldStorage/FastNBT.h"
#include "../CommandOutput.h"
#include "../Root.h"
#include "../Server.h" // ExecuteConsoleCommand()
-#include "../Chunk.h"
#include "../ChatColor.h"
+#include "../World.h"
+#include "../ClientHandle.h"
diff --git a/src/BlockEntities/DispenserEntity.cpp b/src/BlockEntities/DispenserEntity.cpp
index 068891d66..4794375cf 100644
--- a/src/BlockEntities/DispenserEntity.cpp
+++ b/src/BlockEntities/DispenserEntity.cpp
@@ -2,13 +2,10 @@
#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules
#include "DispenserEntity.h"
-#include "../Entities/Player.h"
#include "../Simulator/FluidSimulator.h"
#include "../Chunk.h"
#include "../World.h"
-#include "../Entities/ArrowEntity.h"
-#include "../Entities/FireChargeEntity.h"
#include "../Entities/ProjectileEntity.h"
diff --git a/src/BlockEntities/DropSpenserEntity.cpp b/src/BlockEntities/DropSpenserEntity.cpp
index dc38e3e9b..260c71641 100644
--- a/src/BlockEntities/DropSpenserEntity.cpp
+++ b/src/BlockEntities/DropSpenserEntity.cpp
@@ -8,7 +8,6 @@
#include "DropSpenserEntity.h"
#include "../Entities/Player.h"
#include "../Chunk.h"
-#include "json/json.h"
diff --git a/src/BlockEntities/DropSpenserEntity.h b/src/BlockEntities/DropSpenserEntity.h
index be56447aa..c70cd0531 100644
--- a/src/BlockEntities/DropSpenserEntity.h
+++ b/src/BlockEntities/DropSpenserEntity.h
@@ -22,7 +22,6 @@ namespace Json
}
class cClientHandle;
-class cServer;
diff --git a/src/BlockEntities/DropperEntity.cpp b/src/BlockEntities/DropperEntity.cpp
index 5d4a8ad97..5cbf6d56e 100644
--- a/src/BlockEntities/DropperEntity.cpp
+++ b/src/BlockEntities/DropperEntity.cpp
@@ -5,8 +5,6 @@
#include "Globals.h"
#include "DropperEntity.h"
-#include "../Entities/Player.h"
-#include "../Simulator/FluidSimulator.h"
diff --git a/src/BlockEntities/EnderChestEntity.cpp b/src/BlockEntities/EnderChestEntity.cpp
index 17816d63e..b870f9e50 100644
--- a/src/BlockEntities/EnderChestEntity.cpp
+++ b/src/BlockEntities/EnderChestEntity.cpp
@@ -5,7 +5,6 @@
#include "../Item.h"
#include "../Entities/Player.h"
#include "../UI/Window.h"
-#include "json/json.h"
diff --git a/src/BlockEntities/EnderChestEntity.h b/src/BlockEntities/EnderChestEntity.h
index ed178f6fc..311af8d76 100644
--- a/src/BlockEntities/EnderChestEntity.h
+++ b/src/BlockEntities/EnderChestEntity.h
@@ -3,7 +3,6 @@
#include "BlockEntity.h"
#include "UI/WindowOwner.h"
-#include "json/json.h"
diff --git a/src/BlockEntities/FlowerPotEntity.cpp b/src/BlockEntities/FlowerPotEntity.cpp
index e001634b8..d2bc59d34 100644
--- a/src/BlockEntities/FlowerPotEntity.cpp
+++ b/src/BlockEntities/FlowerPotEntity.cpp
@@ -4,7 +4,6 @@
// Implements the cFlowerPotEntity class representing a single flower pot in the world
#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules
-#include "json/json.h"
#include "FlowerPotEntity.h"
#include "../Entities/Player.h"
#include "../Item.h"
diff --git a/src/BlockEntities/FlowerPotEntity.h b/src/BlockEntities/FlowerPotEntity.h
index 89901cf2d..b86f9c840 100644
--- a/src/BlockEntities/FlowerPotEntity.h
+++ b/src/BlockEntities/FlowerPotEntity.h
@@ -9,8 +9,8 @@
#pragma once
#include "BlockEntity.h"
+#include "Item.h"
-class cItem;
diff --git a/src/BlockEntities/FurnaceEntity.cpp b/src/BlockEntities/FurnaceEntity.cpp
index 72fd7f2b3..d7b2fd910 100644
--- a/src/BlockEntities/FurnaceEntity.cpp
+++ b/src/BlockEntities/FurnaceEntity.cpp
@@ -5,8 +5,6 @@
#include "../UI/Window.h"
#include "../Entities/Player.h"
#include "../Root.h"
-#include "../Chunk.h"
-#include "json/json.h"
diff --git a/src/BlockEntities/FurnaceEntity.h b/src/BlockEntities/FurnaceEntity.h
index cf1a755e0..7ac25cf52 100644
--- a/src/BlockEntities/FurnaceEntity.h
+++ b/src/BlockEntities/FurnaceEntity.h
@@ -14,7 +14,6 @@ namespace Json
}
class cClientHandle;
-class cServer;
diff --git a/src/BlockEntities/HopperEntity.cpp b/src/BlockEntities/HopperEntity.cpp
index 88e7b8e1b..444378c92 100644
--- a/src/BlockEntities/HopperEntity.cpp
+++ b/src/BlockEntities/HopperEntity.cpp
@@ -10,10 +10,7 @@
#include "../Entities/Pickup.h"
#include "../Bindings/PluginManager.h"
#include "ChestEntity.h"
-#include "DropSpenserEntity.h"
#include "FurnaceEntity.h"
-#include "../BoundingBox.h"
-#include "json/json.h"
diff --git a/src/BlockEntities/JukeboxEntity.cpp b/src/BlockEntities/JukeboxEntity.cpp
index c96253b11..1131b99b0 100644
--- a/src/BlockEntities/JukeboxEntity.cpp
+++ b/src/BlockEntities/JukeboxEntity.cpp
@@ -3,8 +3,8 @@
#include "JukeboxEntity.h"
#include "../World.h"
-#include "json/json.h"
-
+#include "json/value.h"
+#include "Entities/Player.h"
diff --git a/src/BlockEntities/JukeboxEntity.h b/src/BlockEntities/JukeboxEntity.h
index d677d340f..a6fdf3c7e 100644
--- a/src/BlockEntities/JukeboxEntity.h
+++ b/src/BlockEntities/JukeboxEntity.h
@@ -2,7 +2,6 @@
#pragma once
#include "BlockEntity.h"
-#include "../Entities/Player.h"
diff --git a/src/BlockEntities/MobHeadEntity.cpp b/src/BlockEntities/MobHeadEntity.cpp
index ce895eb6f..9a1a40abe 100644
--- a/src/BlockEntities/MobHeadEntity.cpp
+++ b/src/BlockEntities/MobHeadEntity.cpp
@@ -4,7 +4,6 @@
// Implements the cMobHeadEntity class representing a single skull/head in the world
#include "Globals.h"
-#include "json/json.h"
#include "MobHeadEntity.h"
#include "../Entities/Player.h"
diff --git a/src/BlockEntities/MobHeadEntity.h b/src/BlockEntities/MobHeadEntity.h
index f91a3cc9e..45fa0d951 100644
--- a/src/BlockEntities/MobHeadEntity.h
+++ b/src/BlockEntities/MobHeadEntity.h
@@ -9,7 +9,7 @@
#pragma once
#include "BlockEntity.h"
-
+#include "Defines.h"
diff --git a/src/BlockEntities/NoteEntity.cpp b/src/BlockEntities/NoteEntity.cpp
index 95145c117..ecbedbcb1 100644
--- a/src/BlockEntities/NoteEntity.cpp
+++ b/src/BlockEntities/NoteEntity.cpp
@@ -3,7 +3,7 @@
#include "NoteEntity.h"
#include "../World.h"
-#include "json/json.h"
+#include "json/value.h"
diff --git a/src/BlockEntities/SignEntity.cpp b/src/BlockEntities/SignEntity.cpp
index 23d9ef926..423d254d2 100644
--- a/src/BlockEntities/SignEntity.cpp
+++ b/src/BlockEntities/SignEntity.cpp
@@ -4,9 +4,9 @@
// Implements the cSignEntity class representing a single sign in the world
#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules
-#include "json/json.h"
+#include "json/value.h"
#include "SignEntity.h"
-#include "../Entities/Player.h"
+#include "../ClientHandle.h"
diff --git a/src/Blocks/BlockBed.cpp b/src/Blocks/BlockBed.cpp
index cd1cc2a5f..3b6328b38 100644
--- a/src/Blocks/BlockBed.cpp
+++ b/src/Blocks/BlockBed.cpp
@@ -4,6 +4,15 @@
+#include "BroadcastInterface.h"
+#include "ChunkInterface.h"
+#include "Entities/../World.h"
+#include "Entities/Player.h"
+#include "WorldInterface.h"
+
+
+
+
void cBlockBedHandler::OnPlacedByPlayer(
cChunkInterface & a_ChunkInterface, cWorldInterface & a_WorldInterface, cPlayer * a_Player,
diff --git a/src/Blocks/BlockBed.h b/src/Blocks/BlockBed.h
index bf9d9c01d..9fd45644b 100644
--- a/src/Blocks/BlockBed.h
+++ b/src/Blocks/BlockBed.h
@@ -2,12 +2,14 @@
#pragma once
#include "BlockHandler.h"
-#include "ChunkInterface.h"
-#include "WorldInterface.h"
#include "MetaRotator.h"
-#include "../Entities/Player.h"
+#include "Item.h"
+class cChunkInterface;
+class cPlayer;
+class cWorldInterface;
+
diff --git a/src/Blocks/BlockBigFlower.h b/src/Blocks/BlockBigFlower.h
index 89ffc864d..3577bdd40 100644
--- a/src/Blocks/BlockBigFlower.h
+++ b/src/Blocks/BlockBigFlower.h
@@ -2,7 +2,7 @@
#pragma once
#include "BlockHandler.h"
-
+#include "ChunkInterface.h"
diff --git a/src/Blocks/BlockDirt.h b/src/Blocks/BlockDirt.h
index 23e5a3cde..60d81db72 100644
--- a/src/Blocks/BlockDirt.h
+++ b/src/Blocks/BlockDirt.h
@@ -3,8 +3,8 @@
#include "BlockHandler.h"
#include "../FastRandom.h"
-
-
+#include "Root.h"
+#include "Bindings/PluginManager.h"
diff --git a/src/Blocks/BlockDoor.cpp b/src/Blocks/BlockDoor.cpp
index 1a277f071..96345a2df 100644
--- a/src/Blocks/BlockDoor.cpp
+++ b/src/Blocks/BlockDoor.cpp
@@ -1,7 +1,6 @@
#include "Globals.h"
#include "BlockDoor.h"
-#include "../Item.h"
#include "../Entities/Player.h"
diff --git a/src/Blocks/BlockDoor.h b/src/Blocks/BlockDoor.h
index 69e30d9c8..b2f9e4dcd 100644
--- a/src/Blocks/BlockDoor.h
+++ b/src/Blocks/BlockDoor.h
@@ -5,6 +5,7 @@
#include "../Entities/Player.h"
#include "Chunk.h"
#include "MetaRotator.h"
+#include "ChunkInterface.h"
diff --git a/src/Blocks/BlockHandler.cpp b/src/Blocks/BlockHandler.cpp
index f43f98cf2..7bfff0545 100644
--- a/src/Blocks/BlockHandler.cpp
+++ b/src/Blocks/BlockHandler.cpp
@@ -3,8 +3,6 @@
#include "BlockHandler.h"
#include "../Item.h"
#include "../World.h"
-#include "../Root.h"
-#include "../Bindings/PluginManager.h"
#include "../Chunk.h"
#include "BlockAnvil.h"
#include "BlockBed.h"
@@ -85,6 +83,8 @@
#include "BlockWorkbench.h"
+#include "BlockPluginInterface.h"
+
diff --git a/src/Blocks/BlockHandler.h b/src/Blocks/BlockHandler.h
index 3a8115da0..83de836cb 100644
--- a/src/Blocks/BlockHandler.h
+++ b/src/Blocks/BlockHandler.h
@@ -2,10 +2,6 @@
#pragma once
#include "../Defines.h"
-#include "../Item.h"
-#include "WorldInterface.h"
-#include "ChunkInterface.h"
-#include "BlockPluginInterface.h"
@@ -14,6 +10,10 @@
// fwd:
class cPlayer;
class cChunk;
+class cBlockPluginInterface;
+class cChunkInterface;
+class cWorldInterface;
+class cItems;
diff --git a/src/Blocks/BlockPiston.cpp b/src/Blocks/BlockPiston.cpp
index 0169fb266..34d11f675 100644
--- a/src/Blocks/BlockPiston.cpp
+++ b/src/Blocks/BlockPiston.cpp
@@ -5,6 +5,7 @@
#include "../World.h"
#include "../Entities/Player.h"
#include "BlockInServerPluginInterface.h"
+#include "ChunkInterface.h"
diff --git a/src/Blocks/BlockRedstoneRepeater.h b/src/Blocks/BlockRedstoneRepeater.h
index 3e5259c56..1eb67f714 100644
--- a/src/Blocks/BlockRedstoneRepeater.h
+++ b/src/Blocks/BlockRedstoneRepeater.h
@@ -4,7 +4,7 @@
#include "BlockHandler.h"
#include "Chunk.h"
#include "MetaRotator.h"
-
+#include "ChunkInterface.h"
diff --git a/src/Blocks/BlockSlab.h b/src/Blocks/BlockSlab.h
index 4c46a39c5..ffe2414f7 100644
--- a/src/Blocks/BlockSlab.h
+++ b/src/Blocks/BlockSlab.h
@@ -12,6 +12,7 @@
#include "BlockHandler.h"
#include "../Items/ItemHandler.h"
#include "Root.h"
+#include "ChunkInterface.h"
diff --git a/src/Blocks/BlockVine.h b/src/Blocks/BlockVine.h
index b61673cc5..06d84f2d4 100644
--- a/src/Blocks/BlockVine.h
+++ b/src/Blocks/BlockVine.h
@@ -2,7 +2,7 @@
#include "BlockHandler.h"
#include "MetaRotator.h"
-
+#include "Bindings/PluginManager.h"
diff --git a/src/Blocks/ChunkInterface.cpp b/src/Blocks/ChunkInterface.cpp
index 5ac4dcf80..e22a1410e 100644
--- a/src/Blocks/ChunkInterface.cpp
+++ b/src/Blocks/ChunkInterface.cpp
@@ -4,6 +4,7 @@
#include "ChunkInterface.h"
#include "ChunkMap.h"
#include "BlockHandler.h"
+#include "WorldInterface.h"
diff --git a/src/Blocks/ChunkInterface.h b/src/Blocks/ChunkInterface.h
index 51647dc04..2f0cfea11 100644
--- a/src/Blocks/ChunkInterface.h
+++ b/src/Blocks/ChunkInterface.h
@@ -2,11 +2,12 @@
#pragma once
#include "../ForEachChunkProvider.h"
-#include "WorldInterface.h"
class cChunkMap;
+class cWorldInterface;
+class cPlayer;
class cChunkInterface:
public cForEachChunkProvider
diff --git a/src/Chunk.cpp b/src/Chunk.cpp
index 06260bead..3012f30b6 100644
--- a/src/Chunk.cpp
+++ b/src/Chunk.cpp
@@ -38,6 +38,7 @@
#include "BlockInServerPluginInterface.h"
#include "SetChunkData.h"
#include "BoundingBox.h"
+#include "Blocks/ChunkInterface.h"
#include "json/json.h"
diff --git a/src/Chunk.h b/src/Chunk.h
index 7a2e75685..b525fbb82 100644
--- a/src/Chunk.h
+++ b/src/Chunk.h
@@ -11,7 +11,7 @@
#include "Blocks/GetHandlerCompileTimeTemplate.h"
-
+#include "ChunkMap.h"
@@ -31,7 +31,10 @@ class MTRand;
class cPlayer;
class cChunkMap;
class cBeaconEntity;
+class cBoundingBox;
class cChestEntity;
+class cCHunkDataCallback;
+class cCommandBlockEntity;
class cDispenserEntity;
class cFurnaceEntity;
class cNoteEntity;
@@ -46,6 +49,7 @@ class cFluidSimulatorData;
class cMobCensus;
class cMobSpawner;
class cRedstonePoweredEntity;
+class cSetChunkData;
typedef std::list<cClientHandle *> cClientHandleList;
typedef cItemCallback<cEntity> cEntityCallback;
diff --git a/src/ChunkMap.cpp b/src/ChunkMap.cpp
index 828d8f164..38a7d9bd4 100644
--- a/src/ChunkMap.cpp
+++ b/src/ChunkMap.cpp
@@ -17,7 +17,7 @@
#include "MobSpawner.h"
#include "BoundingBox.h"
#include "SetChunkData.h"
-
+#include "Blocks/ChunkInterface.h"
#include "Entities/Pickup.h"
#ifndef _WIN32
diff --git a/src/ChunkSender.cpp b/src/ChunkSender.cpp
index 95c4d03d2..a3151eb3f 100644
--- a/src/ChunkSender.cpp
+++ b/src/ChunkSender.cpp
@@ -12,6 +12,7 @@
#include "World.h"
#include "BlockEntities/BlockEntity.h"
#include "Protocol/ChunkDataSerializer.h"
+#include "ClientHandle.h"
diff --git a/src/Entities/ArrowEntity.cpp b/src/Entities/ArrowEntity.cpp
index 954e0a267..c265c5043 100644
--- a/src/Entities/ArrowEntity.cpp
+++ b/src/Entities/ArrowEntity.cpp
@@ -3,7 +3,6 @@
#include "Player.h"
#include "ArrowEntity.h"
#include "../Chunk.h"
-#include "FastRandom.h"
diff --git a/src/Entities/EnderCrystal.cpp b/src/Entities/EnderCrystal.cpp
index c17bb608e..30df2c110 100644
--- a/src/Entities/EnderCrystal.cpp
+++ b/src/Entities/EnderCrystal.cpp
@@ -3,8 +3,8 @@
#include "EnderCrystal.h"
#include "ClientHandle.h"
-#include "Player.h"
#include "../Chunk.h"
+#include "../World.h"
diff --git a/src/Entities/Entity.cpp b/src/Entities/Entity.cpp
index c733d60ad..da85dec50 100644
--- a/src/Entities/Entity.cpp
+++ b/src/Entities/Entity.cpp
@@ -3,7 +3,6 @@
#include "Entity.h"
#include "../World.h"
-#include "../Server.h"
#include "../Root.h"
#include "../Matrix4.h"
#include "../ClientHandle.h"
diff --git a/src/Items/ItemBucket.h b/src/Items/ItemBucket.h
index a17c4838b..3a533958f 100644
--- a/src/Items/ItemBucket.h
+++ b/src/Items/ItemBucket.h
@@ -7,6 +7,7 @@
#include "../Blocks/BlockHandler.h"
#include "../LineBlockTracer.h"
#include "../BlockInServerPluginInterface.h"
+#include "../Blocks/ChunkInterface.h"
diff --git a/src/Mobs/Villager.h b/src/Mobs/Villager.h
index aa81f0790..d3a38dbf0 100644
--- a/src/Mobs/Villager.h
+++ b/src/Mobs/Villager.h
@@ -2,7 +2,7 @@
#pragma once
#include "PassiveMonster.h"
-
+#include "Blocks/ChunkInterface.h"
diff --git a/src/Simulator/FloodyFluidSimulator.cpp b/src/Simulator/FloodyFluidSimulator.cpp
index 2c5c4b658..b839aa746 100644
--- a/src/Simulator/FloodyFluidSimulator.cpp
+++ b/src/Simulator/FloodyFluidSimulator.cpp
@@ -12,6 +12,7 @@
#include "../BlockArea.h"
#include "../Blocks/BlockHandler.h"
#include "../BlockInServerPluginInterface.h"
+#include "../Blocks/ChunkInterface.h"