diff options
author | Mattes D <github@xoft.cz> | 2014-07-17 11:23:09 +0200 |
---|---|---|
committer | Mattes D <github@xoft.cz> | 2014-07-17 11:23:09 +0200 |
commit | ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4 (patch) | |
tree | e2a6e048422755b6a5b04c0fbe3afd0bfbf1c700 /src/ClientHandle.cpp | |
parent | Merge pull request #1193 from mc-server/deathmessages (diff) | |
parent | Fixed 3 MSVC warnings in SplashPotionEntity. (diff) | |
download | cuberite-ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4.tar cuberite-ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4.tar.gz cuberite-ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4.tar.bz2 cuberite-ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4.tar.lz cuberite-ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4.tar.xz cuberite-ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4.tar.zst cuberite-ec77cf1b06c3008a3c9046a6e0b6a85b0629dba4.zip |
Diffstat (limited to 'src/ClientHandle.cpp')
-rw-r--r-- | src/ClientHandle.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/ClientHandle.cpp b/src/ClientHandle.cpp index a6477eb25..bd6fc1287 100644 --- a/src/ClientHandle.cpp +++ b/src/ClientHandle.cpp @@ -877,7 +877,7 @@ void cClientHandle::HandleLeftClick(int a_BlockX, int a_BlockY, int a_BlockZ, eB case DIG_STATUS_SHOOT_EAT: { cItemHandler * ItemHandler = cItemHandler::GetItemHandler(m_Player->GetEquippedItem()); - if (ItemHandler->IsFood()) + if (ItemHandler->IsFood() || ItemHandler->IsDrinkable(m_Player->GetEquippedItem().m_ItemDamage)) { m_Player->AbortEating(); return; @@ -1202,15 +1202,16 @@ void cClientHandle::HandleRightClick(int a_BlockX, int a_BlockY, int a_BlockZ, e return; } + short EquippedDamage = Equipped.m_ItemDamage; cItemHandler * ItemHandler = cItemHandler::GetItemHandler(Equipped.m_ItemType); if (ItemHandler->IsPlaceable() && (a_BlockFace != BLOCK_FACE_NONE)) { HandlePlaceBlock(a_BlockX, a_BlockY, a_BlockZ, a_BlockFace, a_CursorX, a_CursorY, a_CursorZ, *ItemHandler); } - else if (ItemHandler->IsFood() && !m_Player->IsGameModeCreative()) + else if ((ItemHandler->IsFood() || ItemHandler->IsDrinkable(EquippedDamage)) && !m_Player->IsGameModeCreative()) { - if (m_Player->IsSatiated()) + if (m_Player->IsSatiated() && !ItemHandler->IsDrinkable(EquippedDamage)) { // The player is satiated, they cannot eat return; |