diff options
author | lapayo94@gmail.com <lapayo94@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6> | 2012-08-22 18:31:13 +0200 |
---|---|---|
committer | lapayo94@gmail.com <lapayo94@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6> | 2012-08-22 18:31:13 +0200 |
commit | 886c7f5624470c1545fef32c6b048739d131d47b (patch) | |
tree | 1db005dbbd33bce5f29a69cfbf2d66f8adccfb3c /source/items/Item.h | |
parent | WebAdmin should not cause crashes anymore (diff) | |
download | cuberite-886c7f5624470c1545fef32c6b048739d131d47b.tar cuberite-886c7f5624470c1545fef32c6b048739d131d47b.tar.gz cuberite-886c7f5624470c1545fef32c6b048739d131d47b.tar.bz2 cuberite-886c7f5624470c1545fef32c6b048739d131d47b.tar.lz cuberite-886c7f5624470c1545fef32c6b048739d131d47b.tar.xz cuberite-886c7f5624470c1545fef32c6b048739d131d47b.tar.zst cuberite-886c7f5624470c1545fef32c6b048739d131d47b.zip |
Diffstat (limited to 'source/items/Item.h')
-rw-r--r-- | source/items/Item.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/source/items/Item.h b/source/items/Item.h index f3d5842b8..67935ecb4 100644 --- a/source/items/Item.h +++ b/source/items/Item.h @@ -18,9 +18,13 @@ class cItemHandler {
public:
cItemHandler(int a_ItemID);
+ // Called when the player tries to use the item. Return false to make the item unusable. DEFAULT: False
virtual bool OnItemUse(cWorld *a_World, cPlayer *a_Player, cItem *a_Item, int a_X, int a_Y, int a_Z, char a_Dir); //eg for fishing or hoes
+ // Called while the player diggs a block using this item
virtual bool OnDiggingBlock(cWorld * a_World, cPlayer * a_Player, cItem * a_HeldItem, int a_BlockX, int a_BlockY, int a_BlockZ, char a_BlockFace);
+ // Called when the player destroys a block using this item. This also calls the drop function for the destroyed block
virtual void OnBlockDestroyed(cWorld *a_World, cPlayer *a_Player, cItem *a_Item, int a_X, int a_Y, int a_Z);
+ // Called after the player has eaten this item.
virtual void OnFoodEaten(cWorld *a_World, cPlayer *a_Player, cItem *a_Item);
/// Returns the maximum stack size for a given item
@@ -39,20 +43,27 @@ public: char PoisionChance; //0 - 100
};
+ // Returns the FoodInfo for this item. (FoodRecovery, Saturation and PoisionChance)
virtual FoodInfo GetFoodInfo();
+ // Lets the player eat a selected item. Returns true if the player ate the item
virtual bool EatItem(cPlayer *a_Player, cItem *a_Item);
+ // Places the current block and removes the item from the player inventory
virtual void PlaceBlock(cWorld *a_World, cPlayer *a_Player, cItem *a_Item, int a_X, int a_Y, int a_Z, char a_Dir);
+ // Indicates if this item is a tool
virtual bool IsTool();
+ // Indicates if this item is food
virtual bool IsFood();
//Blocks simply get placed
virtual bool IsPlaceable();
+ // Returns the block type on placement
virtual BLOCKTYPE GetBlockType();
+ //Returns the block meta on placement
virtual NIBBLETYPE GetBlockMeta(short a_ItemDamage);
-
+ // Returns whether this tool/item can harvest a specific block (e.g. wooden pickaxe can harvest stone, but wood canīt) DEFAULT: False
virtual bool CanHarvestBlock(BLOCKTYPE a_BlockID);
static cItemHandler *GetItemHandler(int a_ItemID);
|