Cuberite
A lightweight, fast and extensible game server for Minecraft
|
#include <MobHeadEntity.h>
Public Member Functions | |
cMobHeadEntity (BLOCKTYPE a_BlockType, NIBBLETYPE a_BlockMeta, Vector3i a_Pos, cWorld *a_World) | |
Creates a new mob head entity at the specified block coords. 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... | |
AString | GetOwnerName (void) const |
Returns the player name of the mob head. More... | |
AString | GetOwnerTexture (void) const |
Returns the texture of the mob head. More... | |
AString | GetOwnerTextureSignature (void) const |
Returns the texture signature of the mob head. More... | |
cUUID | GetOwnerUUID (void) const |
Returns the player UUID of the mob head. More... | |
eMobHeadRotation | GetRotation (void) const |
Returns the rotation of the mob head. More... | |
eMobHeadType | GetType (void) const |
Returns the type of the mob head. More... | |
virtual void | SendTo (cClientHandle &a_Client) override |
Sends the packet defining the block entity to the client specified. More... | |
void | SetOwner (const cPlayer &a_Owner) |
Set the player for mob heads with player type. More... | |
void | SetOwner (const cUUID &a_OwnerUUID, const AString &a_OwnerName, const AString &a_OwnerTexture, const AString &a_OwnerTextureSignature) |
Sets the player components for the mob heads with player type. More... | |
void | SetRotation (eMobHeadRotation a_Rotation) |
Set the rotation of the mob head. More... | |
void | SetType (const eMobHeadType &a_SkullType) |
Set the type of the mob head. More... | |
virtual bool | UsedBy (cPlayer *a_Player) override |
Called when a player uses this entity; should open the UI window. More... | |
Public Member Functions inherited from cBlockEntity | |
cBlockEntity * | 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 () |
BLOCKTYPE | GetBlockType () const |
int | GetChunkX () const |
int | GetChunkZ () const |
virtual const char * | GetClass () const |
Returns the name of the topmost class (the most descendant). More... | |
virtual const char * | GetParentClass () const |
Returns the name of the parent class, or empty string if no parent class. More... | |
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 bool | IsA (const char *a_ClassName) const |
Returns true if the object is the specified class, or its descendant. 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 () |
Private Types | |
using | super = cBlockEntity |
Private Attributes | |
AString | m_OwnerName |
AString | m_OwnerTexture |
AString | m_OwnerTextureSignature |
cUUID | m_OwnerUUID |
eMobHeadRotation | m_Rotation |
eMobHeadType | m_Type |
Additional Inherited Members | |
Static Public Member Functions inherited from cBlockEntity | |
static cBlockEntity * | 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 const char * | GetClassStatic () |
static bool | IsBlockEntityBlockType (BLOCKTYPE a_BlockType) |
Returns true if the specified blocktype is supposed to have an associated block entity. More... | |
Protected Member Functions inherited from cBlockEntity | |
cBlockEntity (BLOCKTYPE a_BlockType, NIBBLETYPE a_BlockMeta, Vector3i a_Pos, cWorld *a_World) | |
Protected Attributes inherited from cBlockEntity | |
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 21 of file MobHeadEntity.h.
|
private |
Definition at line 26 of file MobHeadEntity.h.
cMobHeadEntity::cMobHeadEntity | ( | BLOCKTYPE | a_BlockType, |
NIBBLETYPE | a_BlockMeta, | ||
Vector3i | a_Pos, | ||
cWorld * | a_World | ||
) |
Creates a new mob head entity at the specified block coords.
a_World may be nullptr
Definition at line 16 of file MobHeadEntity.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 28 of file MobHeadEntity.cpp.
|
inline |
Returns the player name of the mob head.
Definition at line 53 of file MobHeadEntity.h.
|
inline |
Returns the texture of the mob head.
Definition at line 56 of file MobHeadEntity.h.
|
inline |
Returns the texture signature of the mob head.
Definition at line 59 of file MobHeadEntity.h.
|
inline |
Returns the player UUID of the mob head.
Definition at line 70 of file MobHeadEntity.h.
|
inline |
Returns the rotation of the mob head.
Definition at line 50 of file MobHeadEntity.h.
|
inline |
Returns the type of the mob head.
Definition at line 47 of file MobHeadEntity.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 125 of file MobHeadEntity.cpp.
void cMobHeadEntity::SetOwner | ( | const cPlayer & | a_Owner | ) |
Set the player for mob heads with player type.
Definition at line 79 of file MobHeadEntity.cpp.
void cMobHeadEntity::SetOwner | ( | const cUUID & | a_OwnerUUID, |
const AString & | a_OwnerName, | ||
const AString & | a_OwnerTexture, | ||
const AString & | a_OwnerTextureSignature | ||
) |
Sets the player components for the mob heads with player type.
Definition at line 107 of file MobHeadEntity.cpp.
void cMobHeadEntity::SetRotation | ( | eMobHeadRotation | a_Rotation | ) |
Set the rotation of the mob head.
Definition at line 69 of file MobHeadEntity.cpp.
void cMobHeadEntity::SetType | ( | const eMobHeadType & | a_SkullType | ) |
Set the type of the mob head.
Definition at line 54 of file MobHeadEntity.cpp.
|
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 44 of file MobHeadEntity.cpp.
|
private |
Definition at line 82 of file MobHeadEntity.h.
|
private |
Definition at line 84 of file MobHeadEntity.h.
|
private |
Definition at line 85 of file MobHeadEntity.h.
|
private |
Definition at line 83 of file MobHeadEntity.h.
|
private |
Definition at line 80 of file MobHeadEntity.h.
|
private |
Definition at line 79 of file MobHeadEntity.h.