cBlockHandler: take player by ref
This commit is contained in:
@@ -21,21 +21,21 @@ public:
|
||||
a_Pickups.push_back(cItem(E_ITEM_CAULDRON, 1, 0));
|
||||
}
|
||||
|
||||
virtual bool OnUse(cChunkInterface & a_ChunkInterface, cWorldInterface & a_WorldInterface, cPlayer * a_Player, int a_BlockX, int a_BlockY, int a_BlockZ, eBlockFace a_BlockFace, int a_CursorX, int a_CursorY, int a_CursorZ) override
|
||||
virtual bool OnUse(cChunkInterface & a_ChunkInterface, cWorldInterface & a_WorldInterface, cPlayer & a_Player, int a_BlockX, int a_BlockY, int a_BlockZ, eBlockFace a_BlockFace, int a_CursorX, int a_CursorY, int a_CursorZ) override
|
||||
{
|
||||
NIBBLETYPE Meta = a_ChunkInterface.GetBlockMeta(a_BlockX, a_BlockY, a_BlockZ);
|
||||
switch (a_Player->GetEquippedItem().m_ItemType)
|
||||
switch (a_Player.GetEquippedItem().m_ItemType)
|
||||
{
|
||||
case E_ITEM_WATER_BUCKET:
|
||||
{
|
||||
if (Meta < 3)
|
||||
{
|
||||
a_ChunkInterface.SetBlockMeta(a_BlockX, a_BlockY, a_BlockZ, 3);
|
||||
if (!a_Player->IsGameModeCreative())
|
||||
if (!a_Player.IsGameModeCreative())
|
||||
{
|
||||
a_Player->GetInventory().RemoveOneEquippedItem();
|
||||
a_Player.GetInventory().RemoveOneEquippedItem();
|
||||
cItem NewItem(E_ITEM_BUCKET, 1);
|
||||
a_Player->GetInventory().AddItem(NewItem);
|
||||
a_Player.GetInventory().AddItem(NewItem);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -45,9 +45,9 @@ public:
|
||||
if (Meta > 0)
|
||||
{
|
||||
a_ChunkInterface.SetBlockMeta(a_BlockX, a_BlockY, a_BlockZ, --Meta);
|
||||
a_Player->GetInventory().RemoveOneEquippedItem();
|
||||
a_Player.GetInventory().RemoveOneEquippedItem();
|
||||
cItem NewItem(E_ITEM_POTIONS, 1, 0);
|
||||
a_Player->GetInventory().AddItem(NewItem);
|
||||
a_Player.GetInventory().AddItem(NewItem);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user