Cuberite
A lightweight, fast and extensible game server for Minecraft
Public Member Functions | Protected Member Functions | Protected Attributes | Private Types | List of all members
cSlotAreaEnchanting Class Reference

#include <SlotArea.h>

Inheritance diagram for cSlotAreaEnchanting:
Inheritance graph
[legend]
Collaboration diagram for cSlotAreaEnchanting:
Collaboration graph
[legend]

Public Member Functions

virtual void Clicked (cPlayer &a_Player, int a_SlotNum, eClickAction a_ClickAction, const cItem &a_ClickedItem) override
 Called when a player clicks in the window. More...
 
 cSlotAreaEnchanting (cWindow &a_ParentWindow, int a_BlockX, int a_BlockY, int a_BlockZ)
 
virtual void DistributeStack (cItem &a_ItemStack, cPlayer &a_Player, bool a_ShouldApply, bool a_KeepEmptySlots, bool a_BackFill) override
 Called to store as much of a_ItemStack in the area as possible. More...
 
int GetBookshelvesCount (cWorld &a_World)
 
virtual void OnPlayerAdded (cPlayer &a_Player) override
 Called when a new player opens the same parent window. More...
 
virtual void OnPlayerRemoved (cPlayer &a_Player) override
 Called when one of the players closes the parent window. More...
 
virtual void SetSlot (int a_SlotNum, cPlayer &a_Player, const cItem &a_Item) override
 Called to set an item in the specified slot for the specified player. More...
 
- Public Member Functions inherited from cSlotAreaTemporary
 cSlotAreaTemporary (int a_NumSlots, cWindow &a_ParentWindow)
 
virtual const cItemGetSlot (int a_SlotNum, cPlayer &a_Player) const override
 Called to retrieve an item in the specified slot for the specified player. More...
 
void TossItems (cPlayer &a_Player, int a_Begin, int a_End)
 Tosses the player's items in slots [a_Begin, a_End) (ie. More...
 
- Public Member Functions inherited from cSlotArea
virtual bool CollectItemsToHand (cItem &a_Dragging, cPlayer &a_Player, bool a_CollectFullStacks)
 Called on DblClicking to collect all stackable items into hand. More...
 
 cSlotArea (int a_NumSlots, cWindow &a_ParentWindow)
 
virtual void DblClicked (cPlayer &a_Player, int a_SlotNum)
 Called from Clicked when the action is a caDblClick. More...
 
virtual void DropClicked (cPlayer &a_Player, int a_SlotNum, bool a_DropStack)
 Called from Clicked when the action is a drop click. More...
 
int GetNumSlots (void) const
 
virtual void MiddleClicked (cPlayer &a_Player, int a_SlotNum)
 Called from Clicked when the action is a middleclick. More...
 
virtual void NumberClicked (cPlayer &a_Player, int a_SlotNum, eClickAction a_ClickAction)
 Called from Clicked when the action is a number click. More...
 
virtual void ShiftClicked (cPlayer &a_Player, int a_SlotNum, const cItem &a_ClickedItem)
 Called from Clicked when the action is a shiftclick (left or right) More...
 
virtual ~cSlotArea ()
 

Protected Member Functions

void UpdateResult (cPlayer &a_Player)
 Handles a click in the item slot. More...
 
- Protected Member Functions inherited from cSlotAreaTemporary
cItemGetPlayerSlots (cPlayer &a_Player)
 Returns the pointer to the slot array for the player specified. More...
 

Protected Attributes

int m_BlockX
 
int m_BlockY
 
int m_BlockZ
 
- Protected Attributes inherited from cSlotAreaTemporary
cItemMap m_Items
 
- Protected Attributes inherited from cSlotArea
int m_NumSlots
 
cWindowm_ParentWindow
 

Private Types

typedef cSlotAreaTemporary super
 

Additional Inherited Members

- Protected Types inherited from cSlotAreaTemporary
typedef std::map< UInt32, std::vector< cItem > > cItemMap
 

Detailed Description

Definition at line 366 of file SlotArea.h.

Member Typedef Documentation

Definition at line 369 of file SlotArea.h.

Constructor & Destructor Documentation

cSlotAreaEnchanting::cSlotAreaEnchanting ( cWindow a_ParentWindow,
int  a_BlockX,
int  a_BlockY,
int  a_BlockZ 
)

Definition at line 1410 of file SlotArea.cpp.

Member Function Documentation

void cSlotAreaEnchanting::Clicked ( cPlayer a_Player,
int  a_SlotNum,
eClickAction  a_ClickAction,
const cItem a_ClickedItem 
)
overridevirtual

Called when a player clicks in the window.

Parameters taken from the click packet.

Reimplemented from cSlotArea.

Definition at line 1422 of file SlotArea.cpp.

void cSlotAreaEnchanting::DistributeStack ( cItem a_ItemStack,
cPlayer a_Player,
bool  a_ShouldApply,
bool  a_KeepEmptySlots,
bool  a_BackFill 
)
overridevirtual

Called to store as much of a_ItemStack in the area as possible.

a_ItemStack is modified to reflect the change. The default implementation searches each slot for available space and distributes the stack there. if a_ShouldApply is true, the changes are written into the slots; if a_ShouldApply is false, only a_ItemStack is modified to reflect the number of fits (for fit-testing purposes) If a_KeepEmptySlots is true, empty slots will be skipped and won't be filled

Reimplemented from cSlotArea.

Definition at line 1536 of file SlotArea.cpp.

int cSlotAreaEnchanting::GetBookshelvesCount ( cWorld a_World)

Definition at line 1643 of file SlotArea.cpp.

void cSlotAreaEnchanting::OnPlayerAdded ( cPlayer a_Player)
overridevirtual

Called when a new player opens the same parent window.

The window already tracks the player. CS-locked.

Reimplemented from cSlotAreaTemporary.

Definition at line 1581 of file SlotArea.cpp.

void cSlotAreaEnchanting::OnPlayerRemoved ( cPlayer a_Player)
overridevirtual

Called when one of the players closes the parent window.

The window already doesn't track the player. CS-locked.

Reimplemented from cSlotAreaTemporary.

Definition at line 1591 of file SlotArea.cpp.

void cSlotAreaEnchanting::SetSlot ( int  a_SlotNum,
cPlayer a_Player,
const cItem a_Item 
)
overridevirtual

Called to set an item in the specified slot for the specified player.

Reimplemented from cSlotAreaTemporary.

Definition at line 1603 of file SlotArea.cpp.

void cSlotAreaEnchanting::UpdateResult ( cPlayer a_Player)
protected

Handles a click in the item slot.

Definition at line 1613 of file SlotArea.cpp.

Member Data Documentation

int cSlotAreaEnchanting::m_BlockX
protected

Definition at line 390 of file SlotArea.h.

int cSlotAreaEnchanting::m_BlockY
protected

Definition at line 390 of file SlotArea.h.

int cSlotAreaEnchanting::m_BlockZ
protected

Definition at line 390 of file SlotArea.h.


The documentation for this class was generated from the following files: