summaryrefslogtreecommitdiffstats
path: root/MCServer/Plugins/Core/onblockplace.lua
diff options
context:
space:
mode:
authormadmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2013-01-13 12:10:26 +0100
committermadmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2013-01-13 12:10:26 +0100
commit752057fb1b3a71058b5391bde9b0e21d87196539 (patch)
treecfeb16a291ce13dc8408a82459224f029f56cd2f /MCServer/Plugins/Core/onblockplace.lua
parentMerged branch "branches/hooks" into "trunk". (diff)
downloadcuberite-752057fb1b3a71058b5391bde9b0e21d87196539.tar
cuberite-752057fb1b3a71058b5391bde9b0e21d87196539.tar.gz
cuberite-752057fb1b3a71058b5391bde9b0e21d87196539.tar.bz2
cuberite-752057fb1b3a71058b5391bde9b0e21d87196539.tar.lz
cuberite-752057fb1b3a71058b5391bde9b0e21d87196539.tar.xz
cuberite-752057fb1b3a71058b5391bde9b0e21d87196539.tar.zst
cuberite-752057fb1b3a71058b5391bde9b0e21d87196539.zip
Diffstat (limited to 'MCServer/Plugins/Core/onblockplace.lua')
-rw-r--r--MCServer/Plugins/Core/onblockplace.lua63
1 files changed, 0 insertions, 63 deletions
diff --git a/MCServer/Plugins/Core/onblockplace.lua b/MCServer/Plugins/Core/onblockplace.lua
deleted file mode 100644
index 9032f8207..000000000
--- a/MCServer/Plugins/Core/onblockplace.lua
+++ /dev/null
@@ -1,63 +0,0 @@
-function OnBlockPlace(Player, BlockX, BlockY, BlockZ, BlockFace, HeldItem)
-
- -- dont check if the direction is in the air
- if (BlockFace == -1) then
- return false
- end
-
- if( Player:HasPermission("core.build") == false ) then
- return true
- end
-
- -- TODO: If the placed block is not a block (torch etc.), allow it without checking for collisions
-
- local X = BlockX
- local Y = BlockY
- local Z = BlockZ
- X, Y, Z = AddDirection(X, Y, Z, BlockFace)
- if (Y >= 256 or Y < 0) then
- return true
- end
-
- local CheckCollision = function(Player)
- -- drop the decimals, we only care about the full block X,Y,Z
- local PlayerX = math.floor(Player:GetPosX(), 0)
- local PlayerY = math.floor(Player:GetPosY(), 0)
- local PlayerZ = math.floor(Player:GetPosZ(), 0)
-
- -- player height is 2 blocks, so we check the position and then offset it up one
- -- so they can't place a block in anyone's face
-
- local collision = false
- if ((BlockFace == BLOCK_FACE_TOP) and (PlayerY == BlockY - 2) and (PlayerX == BlockX) and (PlayerZ == BlockZ)) then
- collision = true
- end
-
- if ((BlockFace == BLOCK_FACE_BOTTOM) and (PlayerY == BlockY + 1) and (PlayerX == BlockX) and (PlayerZ == BlockZ)) then
- collision = true
- end
-
- if ((BlockFace == BLOCK_FACE_NORTH) and (PlayerX == BlockX) and (PlayerZ == BlockZ - 1)) then
- if ((PlayerY == BlockY) or (PlayerY + 1 == BlockY)) then collision = true end
- end
-
- if ((BlockFace == BLOCK_FACE_SOUTH) and (PlayerX == BlockX) and (PlayerZ == BlockZ + 1)) then
- if ((PlayerY == BlockY) or (PlayerY + 1 == BlockY)) then collision = true end
- end
-
- if ((BlockFace == BLOCK_FACE_WEST) and (PlayerX == BlockX - 1) and (PlayerZ == BlockZ)) then
- if ((PlayerY == BlockY) or (PlayerY + 1 == BlockY)) then collision = true end
- end
-
- if ((BlockFace == BLOCK_FACE_EAST) and (PlayerX == BlockX + 1) and (PlayerZ == BlockZ)) then
- if ((PlayerY == BlockY) or (PlayerY + 1 == BlockY)) then collision = true end
- end
-
- return collision
- end
-
- if (Player:GetWorld():ForEachPlayer(CheckCollision) == false) then
- return true
- end
- return false
-end \ No newline at end of file