![]() |
Cuberite
A lightweight, fast and extensible game server for Minecraft
|
#include <ItemSlab.h>
Public Member Functions | |
cItemSlabHandler (int a_ItemType, BLOCKTYPE a_DoubleSlabBlockType) | |
Creates a new handler for the specified slab item type. More... | |
virtual bool | OnPlayerPlace (cWorld &a_World, cPlayer &a_Player, const cItem &a_EquippedItem, int a_BlockX, int a_BlockY, int a_BlockZ, eBlockFace a_BlockFace, int a_CursorX, int a_CursorY, int a_CursorZ) override |
Called when the player tries to place the item (right mouse button, IsPlaceable() == true). More... | |
![]() | |
virtual bool | CanHarvestBlock (BLOCKTYPE a_BlockType) |
Returns whether this tool / item can harvest a specific block (e.g. More... | |
virtual bool | CanRepairWithRawMaterial (short a_ItemType) |
Can the anvil repair this item, when a_Item is the second input? More... | |
cItemHandler (int a_ItemType) | |
virtual bool | EatItem (cPlayer *a_Player, cItem *a_Item) |
Lets the player eat a selected item. More... | |
virtual float | GetBlockBreakingStrength (BLOCKTYPE a_Block) |
Returns the strength to break a specific block. More... | |
virtual bool | GetBlocksToPlace (cWorld &a_World, cPlayer &a_Player, const cItem &a_EquippedItem, int a_BlockX, int a_BlockY, int a_BlockZ, eBlockFace a_BlockFace, int a_CursorX, int a_CursorY, int a_CursorZ, sSetBlockVector &a_BlocksToSet) |
Called from OnPlayerPlace() to determine the blocks that the current placement operation should set. More... | |
virtual short | GetDurabilityLossByAction (eDurabilityLostAction a_Action) |
Get the durability lost which the item will get, when a specified action was performed. More... | |
virtual FoodInfo | GetFoodInfo (const cItem *a_Item) |
Returns the FoodInfo for this item. More... | |
virtual char | GetMaxStackSize (void) |
Returns the maximum stack size for a given item. More... | |
virtual bool | GetPlacementBlockTypeMeta (cWorld *a_World, cPlayer *a_Player, int a_BlockX, int a_BlockY, int a_BlockZ, eBlockFace a_BlockFace, int a_CursorX, int a_CursorY, int a_CursorZ, BLOCKTYPE &a_BlockType, NIBBLETYPE &a_BlockMeta) |
Called when the player right-clicks with this item and IsPlaceable() == true, and OnPlayerPlace() is not overridden. More... | |
virtual bool | IsDrinkable (short a_ItemDamage) |
Indicates if this item is drinkable. More... | |
virtual bool | IsFood (void) |
Indicates if this item is food. More... | |
virtual bool | IsPlaceable (void) |
Blocks simply get placed. More... | |
virtual bool | IsTool (void) |
Indicates if this item is a tool. More... | |
virtual bool | OnDiggingBlock (cWorld *a_World, cPlayer *a_Player, const cItem &a_HeldItem, int a_BlockX, int a_BlockY, int a_BlockZ, eBlockFace a_BlockFace) |
Called while the player digs a block using this item. More... | |
virtual void | OnEntityAttack (cPlayer *a_Attacker, cEntity *a_AttackedEntity) |
Called when a player attacks a other entity. More... | |
virtual void | OnFoodEaten (cWorld *a_World, cPlayer *a_Player, cItem *a_Item) |
Called after the player has eaten this item. More... | |
virtual void | OnItemShoot (cPlayer *, int a_BlockX, int a_BlockY, int a_BlockZ, eBlockFace a_BlockFace) |
Called when the client sends the SHOOT status in the lclk packet. More... | |
virtual bool | OnItemUse (cWorld *a_World, cPlayer *a_Player, cBlockPluginInterface &a_PluginInterface, const cItem &a_Item, int a_BlockX, int a_BlockY, int a_BlockZ, eBlockFace a_BlockFace) |
Called when the player tries to use the item (right mouse button). More... | |
virtual void | OnUpdate (cWorld *a_World, cPlayer *a_Player, const cItem &a_Item) |
Called every tick while the item is on the player's inventory (used by maps, for example) - For now, called only for equipped items. More... | |
virtual | ~cItemHandler () |
Force virtual destructor. More... | |
Protected Attributes | |
BLOCKTYPE | m_DoubleSlabBlockType |
The block type to use when the slab combines into a doubleslab block. More... | |
![]() | |
int | m_ItemType |
Private Types | |
typedef cItemHandler | super |
Additional Inherited Members | |
![]() | |
enum | eDurabilityLostAction { dlaAttackEntity, dlaBreakBlock, dlaBreakBlockInstant } |
Actions that may cause durability of an item may be lost, where the magnitude of the loss depends on the specific item used to perform the action. More... | |
![]() | |
static void | Deinit () |
static cItemHandler * | GetItemHandler (int a_ItemType) |
static cItemHandler * | GetItemHandler (const cItem &a_Item) |
![]() | |
static cItemHandler * | CreateItemHandler (int m_ItemType) |
![]() | |
static bool | m_HandlerInitialized = false |
static cItemHandler * | m_ItemHandler [E_ITEM_LAST+1] |
Definition at line 10 of file ItemSlab.h.
|
private |
Definition at line 13 of file ItemSlab.h.
|
inline |
Creates a new handler for the specified slab item type.
Sets the handler to use the specified doubleslab block type for combining self into doubleslabs.
Definition at line 19 of file ItemSlab.h.
|
inlineoverridevirtual |
Called when the player tries to place the item (right mouse button, IsPlaceable() == true).
The block coords are for the block that has been clicked. The default handler uses GetBlocksToPlace() and places the returned blocks. Override if the item needs advanced processing, such as spawning a mob based on the blocks being placed. If the block placement is refused inside this call, it will automatically revert the client-side changes. Returns true if the placement succeeded, false if the placement was aborted for any reason.
Reimplemented from cItemHandler.
Definition at line 27 of file ItemSlab.h.
|
protected |
The block type to use when the slab combines into a doubleslab block.
Definition at line 119 of file ItemSlab.h.