(01-21-2016, 06:44 AM)NiLSPACE Wrote: Could you show us our code?
The mcBlockRespawn function gets called by a HOOK_PLAYER_BREAKING_BLOCK (so i can prevent block breaking in creative), otherwise the mcLeft function is called by HOOK_PLAYER_LEFT_CLICK. This is because HOOK_PLAYER_LEFT_CLICK is not registered in creative.
Here are the files if you want to try it yourself: http://a.pomf.cat/xvwliy.7z
mcMetaTool = 280 mcBiomeTool = 369 function mcLeft(Player, BlockX, BlockY, BlockZ, BlockFace, Action) if (Player:GetEquippedItem().m_ItemType == mcMetaTool) then mcMetaLeft(Player, BlockX, BlockY, BlockZ, BlockFace, Action) elseif (Player:GetEquippedItem().m_ItemType == mcBiomeTool) then mcBiomeLeft(Player, BlockX, BlockY, BlockZ, BlockFace, Action) end end function mcRight(Player, BlockX, BlockY, BlockZ) if (Player:GetEquippedItem().m_ItemType == mcMetaTool) then mcMetaRight(Player, BlockX, BlockY, BlockZ) elseif (Player:GetEquippedItem().m_ItemType == mcBiomeTool) then mcBiomeRight(Player, BlockX, BlockY, BlockZ) end end -- function mcMetaLeft(Player, BlockX, BlockY, BlockZ, BlockFace, Action) if (Action == 1) then local meta = Player:GetWorld():GetBlockMeta(BlockX, BlockY, BlockZ) if (meta == 0) then meta = 16 else meta = meta - 1 end Player:SendMessage(meta) Player:GetWorld():SetBlockMeta(BlockX, BlockY, BlockZ, meta) end end function mcMetaRight(Player, BlockX, BlockY, BlockZ) local meta = Player:GetWorld():GetBlockMeta(BlockX, BlockY, BlockZ) if (meta == 16) then meta = 0 else meta = meta + 1 end Player:SendMessage(meta) Player:GetWorld():SetBlockMeta(BlockX, BlockY, BlockZ, meta) end function mcBiomeLeft(Player, BlockX, BlockY, BlockZ, BlockFace, Action) if (Action == 1) then local biome = Player:GetWorld():GetBiomeAt(BlockX, BlockZ) biome = biome - 1 Player:SendMessage(biome) Player:GetWorld():SetAreaBiome(BlockX, BlockX, BlockZ, BlockZ, biome) end end function mcBiomeRight(Player, BlockX, BlockY, BlockZ) local biome = Player:GetWorld():GetBiomeAt(BlockX, BlockZ) biome = biome + 1 Player:SendMessage(biome) Player:GetWorld():SetAreaBiome(BlockX, BlockX, BlockZ, BlockZ, biome) end -- function mcBlockRespawn(Player, BlockX, BlockY, BlockZ, BlockFace, Action) if (Player:GetEquippedItem().m_ItemType == mcMetaTool) or (Player:GetEquippedItem().m_ItemType == mcBiomeTool) then if (Player:GetGameMode() == 1) then mcLeft(Player, BlockX, BlockY, BlockZ, BlockFace, 1) end return true end end