diff options
author | Tycho <work.tycho+git@gmail.com> | 2014-05-10 14:05:44 +0200 |
---|---|---|
committer | Tycho <work.tycho+git@gmail.com> | 2014-05-10 14:05:44 +0200 |
commit | d478e3cfb19c0347ba0b5513d3250af9d69443de (patch) | |
tree | aaba81bda1ee2e53e5e4d9fdad0c2998ba8edb0f /src/UI/SlotArea.h | |
parent | Maybe coverage working? (diff) | |
parent | Merge pull request #992 from mc-server/coverity_fixes (diff) | |
download | cuberite-d478e3cfb19c0347ba0b5513d3250af9d69443de.tar cuberite-d478e3cfb19c0347ba0b5513d3250af9d69443de.tar.gz cuberite-d478e3cfb19c0347ba0b5513d3250af9d69443de.tar.bz2 cuberite-d478e3cfb19c0347ba0b5513d3250af9d69443de.tar.lz cuberite-d478e3cfb19c0347ba0b5513d3250af9d69443de.tar.xz cuberite-d478e3cfb19c0347ba0b5513d3250af9d69443de.tar.zst cuberite-d478e3cfb19c0347ba0b5513d3250af9d69443de.zip |
Diffstat (limited to 'src/UI/SlotArea.h')
-rw-r--r-- | src/UI/SlotArea.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/UI/SlotArea.h b/src/UI/SlotArea.h index 254722822..4da6a672f 100644 --- a/src/UI/SlotArea.h +++ b/src/UI/SlotArea.h @@ -9,6 +9,7 @@ #pragma once #include "../Inventory.h" +#include "Window.h" @@ -259,6 +260,43 @@ protected: +class cSlotAreaAnvil : + public cSlotAreaTemporary +{ + typedef cSlotAreaTemporary super; + +public: + cSlotAreaAnvil(cAnvilWindow & a_ParentWindow); + + // cSlotArea overrides: + virtual void Clicked(cPlayer & a_Player, int a_SlotNum, eClickAction a_ClickAction, const cItem & a_ClickedItem) override; + virtual void ShiftClicked(cPlayer & a_Player, int a_SlotNum, const cItem & a_ClickedItem) override; + virtual void DistributeStack(cItem & a_ItemStack, cPlayer & a_Player, bool a_ShouldApply, bool a_KeepEmptySlots) override; + + // cSlotAreaTemporary overrides: + virtual void OnPlayerRemoved(cPlayer & a_Player) override; + + /** Can the player take the item from the slot? */ + bool CanTakeResultItem(cPlayer & a_Player); + + /** This function will call, when the player take the item from the slot. */ + void OnTakeResult(cPlayer & a_Player); + + /** Handles a click in the item slot. */ + void UpdateResult(cPlayer & a_Player); + +protected: + /** The maximum cost of repairing/renaming in the anvil. */ + int m_MaximumCost; + + /** The stack size of the second item where was used for repair */ + char m_StackSizeToBeUsedInRepair; +} ; + + + + + class cSlotAreaEnchanting : public cSlotAreaTemporary { |