![]() |
Cuberite
A lightweight, fast and extensible game server for Minecraft
|
#include <FlowerPotEntity.h>
Public Member Functions | |
cFlowerPotEntity (BLOCKTYPE a_BlockType, NIBBLETYPE a_BlockMeta, Vector3i a_Pos, cWorld *a_World) | |
Creates a new flowerpot entity at the specified block coords. More... | |
virtual cItems | ConvertToPickups () const override |
Returns the contents of this block entity that it would drop if broken. More... | |
virtual void | CopyFrom (const cBlockEntity &a_Src) override |
Copies all properties of a_Src into this entity, except for its m_World and location. More... | |
cItem | GetItem (void) const |
Get the item in the flower pot. More... | |
bool | IsItemInPot (void) |
Is a flower in the pot? More... | |
virtual void | SendTo (cClientHandle &a_Client) override |
Sends the packet defining the block entity to the client specified. More... | |
void | SetItem (const cItem &a_Item) |
Set the item in the flower pot. More... | |
virtual bool | UsedBy (cPlayer *a_Player) override |
Called when a player uses this entity; should open the UI window. More... | |
![]() | |
OwnedBlockEntity | Clone (Vector3i a_Pos) |
Makes an exact copy of this block entity, except for its m_World (set to nullptr), and at a new position. More... | |
virtual void | Destroy () |
Called when this block entity's associated block is destroyed. More... | |
BLOCKTYPE | GetBlockType () const |
int | GetChunkX () const |
int | GetChunkZ () const |
Vector3i | GetPos () const |
int | GetPosX () const |
int | GetPosY () const |
int | GetPosZ () const |
Vector3i | GetRelPos () const |
int | GetRelX () const |
int | GetRelZ () const |
cWorld * | GetWorld () const |
virtual void | OnAddToWorld (cWorld &a_World, cChunk &a_Chunk) |
Called when the block entity object is added to a world. More... | |
virtual void | OnRemoveFromWorld () |
Called when the block entity object is removed from a world. More... | |
void | SetPos (Vector3i a_NewPos) |
Updates the internally stored position. More... | |
void | SetWorld (cWorld *a_World) |
virtual bool | Tick (std::chrono::milliseconds a_Dt, cChunk &a_Chunk) |
Ticks the entity; returns true if the chunk should be marked as dirty as a result of this ticking. More... | |
virtual | ~cBlockEntity ()=default |
Static Public Member Functions | |
static bool | IsFlower (short m_ItemType, short m_ItemData) |
![]() | |
static OwnedBlockEntity | CreateByBlockType (BLOCKTYPE a_BlockType, NIBBLETYPE a_BlockMeta, Vector3i a_Pos, cWorld *a_World=nullptr) |
Creates a new block entity for the specified block type at the specified absolute pos. More... | |
static bool | IsBlockEntityBlockType (BLOCKTYPE a_BlockType) |
Returns true if the specified blocktype is supposed to have an associated block entity. More... | |
Private Types | |
using | Super = cBlockEntity |
Private Attributes | |
cItem | m_Item |
Additional Inherited Members | |
![]() | |
cBlockEntity (BLOCKTYPE a_BlockType, NIBBLETYPE a_BlockMeta, Vector3i a_Pos, cWorld *a_World) | |
![]() | |
NIBBLETYPE | m_BlockMeta |
The block meta representing this particular instance in the world Mainly used for directional entities, such as dispensers. More... | |
BLOCKTYPE | m_BlockType |
The blocktype representing this particular instance in the world. More... | |
Vector3i | m_Pos |
Position in absolute block coordinates. More... | |
int | m_RelX |
Position relative to the chunk, used to speed up ticking. More... | |
int | m_RelZ |
cWorld * | m_World |
Definition at line 19 of file FlowerPotEntity.h.
|
private |
Definition at line 24 of file FlowerPotEntity.h.
cFlowerPotEntity::cFlowerPotEntity | ( | BLOCKTYPE | a_BlockType, |
NIBBLETYPE | a_BlockMeta, | ||
Vector3i | a_Pos, | ||
cWorld * | a_World | ||
) |
Creates a new flowerpot entity at the specified block coords.
a_World may be nullptr
Definition at line 16 of file FlowerPotEntity.cpp.
|
overridevirtual |
Returns the contents of this block entity that it would drop if broken.
Note that the block handler will usually handle pickups for the block itself, in addition to any items returned here.
Reimplemented from cBlockEntity.
Definition at line 26 of file FlowerPotEntity.cpp.
|
overridevirtual |
Copies all properties of a_Src into this entity, except for its m_World and location.
Each non-abstract descendant should override to copy its specific properties, and call Super::CopyFrom(a_Src) to copy the common ones.
Reimplemented from cBlockEntity.
Definition at line 35 of file FlowerPotEntity.cpp.
|
inline |
Get the item in the flower pot.
Definition at line 38 of file FlowerPotEntity.h.
|
static |
Definition at line 81 of file FlowerPotEntity.cpp.
|
inline |
Is a flower in the pot?
Definition at line 35 of file FlowerPotEntity.h.
|
overridevirtual |
Sends the packet defining the block entity to the client specified.
To send to all eligible clients, use cWorld::BroadcastBlockEntity()
Implements cBlockEntity.
Definition at line 72 of file FlowerPotEntity.cpp.
|
inline |
Set the item in the flower pot.
Definition at line 41 of file FlowerPotEntity.h.
|
overridevirtual |
Called when a player uses this entity; should open the UI window.
returns true if the use was successful, return false to use the block as a "normal" block
Implements cBlockEntity.
Definition at line 46 of file FlowerPotEntity.cpp.
|
private |
Definition at line 55 of file FlowerPotEntity.h.