Cuberite
A lightweight, fast and extensible game server for Minecraft
Public Member Functions | Static Public Member Functions | Private Types | List of all members
cItemEyeOfEnderHandler Class Referencefinal

#include <ItemEyeOfEnder.h>

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

Public Member Functions

constexpr cItemEyeOfEnderHandler (int a_ItemType)
 
virtual bool OnItemUse (cWorld *a_World, cPlayer *a_Player, cBlockPluginInterface &a_PluginInterface, const cItem &a_Item, const Vector3i a_ClickedBlockPos, eBlockFace a_ClickedBlockFace) const override
 Called when the player tries to use the item (right mouse button). More...
 
- Public Member Functions inherited from cItemThrowableHandler
constexpr cItemThrowableHandler (int a_ItemType, cProjectileEntity::eKind a_ProjectileKind, double a_SpeedCoeff)
 
- Public Member Functions inherited from cItemHandler
virtual bool CanHarvestBlock (BLOCKTYPE a_BlockType) const
 Returns whether this tool / item can harvest a specific block (e.g. More...
 
virtual bool CanRepairWithRawMaterial (short a_ItemType) const
 Can the anvil repair this item, when a_Item is the second input? More...
 
constexpr cItemHandler (int a_ItemType)
 
virtual bool EatItem (cPlayer *a_Player, cItem *a_Item) const
 Lets the player eat a selected item. More...
 
virtual float GetBlockBreakingStrength (BLOCKTYPE a_Block) const
 Returns the strength to break a specific block. More...
 
virtual short GetDurabilityLossByAction (eDurabilityLostAction a_Action) const
 Get the durability lost which the item will get, when a specified action was performed. More...
 
virtual FoodInfo GetFoodInfo (const cItem *a_Item) const
 Returns the FoodInfo for this item. More...
 
virtual char GetMaxStackSize (void) const
 Returns the maximum stack size for a given item. More...
 
virtual bool IsDrinkable (short a_ItemDamage) const
 Indicates if this item is drinkable. More...
 
virtual bool IsFood (void) const
 Indicates if this item is food. More...
 
virtual bool IsPlaceable (void) const
 Blocks simply get placed. More...
 
virtual bool OnDiggingBlock (cWorld *a_World, cPlayer *a_Player, const cItem &a_HeldItem, const Vector3i a_ClickedBlockPos, eBlockFace a_ClickedBlockFace) const
 Called while the player digs a block using this item. More...
 
virtual void OnEntityAttack (cPlayer *a_Attacker, cEntity *a_AttackedEntity) const
 Called when a player attacks an entity with this item in hand. More...
 
virtual void OnFoodEaten (cWorld *a_World, cPlayer *a_Player, cItem *a_Item) const
 Called after the player has eaten this item. More...
 
virtual void OnItemShoot (cPlayer *, const Vector3i a_BlockPos, eBlockFace a_BlockFace) const
 Called when the client sends the SHOOT status in the lclk packet (releasing the bow). More...
 
void OnPlayerPlace (cPlayer &a_Player, const cItem &a_HeldItem, Vector3i a_ClickedPosition, BLOCKTYPE a_ClickedBlockType, NIBBLETYPE a_ClickedBlockMeta, eBlockFace a_ClickedBlockFace, Vector3i a_CursorPosition) const
 Called when the player tries to place the item (right mouse button, IsPlaceable() == true). More...
 
virtual void OnUpdate (cWorld *a_World, cPlayer *a_Player, const cItem &a_Item) const
 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...
 

Static Public Member Functions

static bool FindAndSetPortal (Vector3i a_FirstFrame, NIBBLETYPE a_Direction, cChunkInterface &a_ChunkInterface, cWorldInterface &a_WorldInterface)
 Returns false if portal cannot be made, true if portal was made. More...
 
static bool IsPortalFrame (BLOCKTYPE BlockType)
 Return true if this block is a portal frame. More...
 
static bool IsValidFrameAtPos (cChunkInterface &a_ChunkInterface, Vector3i a_BlockPos, NIBBLETYPE a_ShouldFace)
 Return true if this block is a portal frame, has an eye, and is facing the correct direction. More...
 

Private Types

using Super = cItemThrowableHandler
 

Additional Inherited Members

- Public Types inherited from cItemHandler
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...
 
- Protected Member Functions inherited from cItemThrowableHandler
 ~cItemThrowableHandler ()=default
 
- Protected Member Functions inherited from cItemHandler
virtual bool CommitPlacement (cPlayer &a_Player, const cItem &a_HeldItem, Vector3i a_PlacePosition, eBlockFace a_ClickedBlockFace, Vector3i a_CursorPosition) const
 Performs the actual placement of this placeable item. More...
 
 ~cItemHandler ()=default
 
- Static Protected Member Functions inherited from cItemHandler
static const cItemHandlerFor (int a_ItemType)
 
- Protected Attributes inherited from cItemThrowableHandler
cProjectileEntity::eKind m_ProjectileKind
 The kind of projectile to create when shooting. More...
 
double m_SpeedCoeff
 The speed multiplier (to the player's normalized look vector) to set for the new projectile. More...
 
- Protected Attributes inherited from cItemHandler
const int m_ItemType
 

Detailed Description

Definition at line 11 of file ItemEyeOfEnder.h.

Member Typedef Documentation

◆ Super

Definition at line 14 of file ItemEyeOfEnder.h.

Constructor & Destructor Documentation

◆ cItemEyeOfEnderHandler()

constexpr cItemEyeOfEnderHandler::cItemEyeOfEnderHandler ( int  a_ItemType)
inlineconstexpr

Definition at line 18 of file ItemEyeOfEnder.h.

Member Function Documentation

◆ FindAndSetPortal()

static bool cItemEyeOfEnderHandler::FindAndSetPortal ( Vector3i  a_FirstFrame,
NIBBLETYPE  a_Direction,
cChunkInterface a_ChunkInterface,
cWorldInterface a_WorldInterface 
)
inlinestatic

Returns false if portal cannot be made, true if portal was made.

Definition at line 70 of file ItemEyeOfEnder.h.

◆ IsPortalFrame()

static bool cItemEyeOfEnderHandler::IsPortalFrame ( BLOCKTYPE  BlockType)
inlinestatic

Return true if this block is a portal frame.

Definition at line 201 of file ItemEyeOfEnder.h.

◆ IsValidFrameAtPos()

static bool cItemEyeOfEnderHandler::IsValidFrameAtPos ( cChunkInterface a_ChunkInterface,
Vector3i  a_BlockPos,
NIBBLETYPE  a_ShouldFace 
)
inlinestatic

Return true if this block is a portal frame, has an eye, and is facing the correct direction.

Definition at line 185 of file ItemEyeOfEnder.h.

◆ OnItemUse()

virtual bool cItemEyeOfEnderHandler::OnItemUse ( cWorld a_World,
cPlayer a_Player,
cBlockPluginInterface a_PluginInterface,
const cItem a_HeldItem,
const Vector3i  a_ClickedBlockPos,
eBlockFace  a_ClickedBlockFace 
) const
inlineoverridevirtual

Called when the player tries to use the item (right mouse button).

Descendants can return false to abort the usage (default behavior).

Reimplemented from cItemThrowableHandler.

Definition at line 27 of file ItemEyeOfEnder.h.


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