Botcraft
1.21.4
Loading...
Searching...
No Matches
WitchEntity.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#if PROTOCOL_VERSION > 404
/* > 1.13.2 */
4
#include "
botcraft/Game/Entities/entities/raid/RaiderEntity.hpp
"
5
#else
6
#include "
botcraft/Game/Entities/entities/MobEntity.hpp
"
7
#endif
8
9
namespace
Botcraft
10
{
11
#if PROTOCOL_VERSION > 404
/* > 1.13.2 */
12
class
WitchEntity
:
public
RaiderEntity
13
#else
14
class
WitchEntity
:
public
MobEntity
15
#endif
16
{
17
protected
:
18
static
constexpr
int
metadata_count
= 1;
19
static
const
std::array<std::string, metadata_count>
metadata_names
;
20
#if PROTOCOL_VERSION > 404
/* > 1.13.2 */
21
static
constexpr
int
hierarchy_metadata_count
=
RaiderEntity::metadata_count
+
RaiderEntity::hierarchy_metadata_count
;
22
#else
23
static
constexpr
int
hierarchy_metadata_count
=
MobEntity::metadata_count
+
MobEntity::hierarchy_metadata_count
;
24
#endif
25
26
public
:
27
WitchEntity
();
28
virtual
~WitchEntity
();
29
30
// Object related stuff
31
virtual
std::string
GetName
()
const override
;
32
virtual
EntityType
GetType
()
const override
;
33
34
// Static stuff, for easier comparison
35
static
std::string
GetClassName
();
36
static
EntityType
GetClassType
();
37
38
39
virtual
ProtocolCraft::Json::Value
Serialize
()
const override
;
40
41
// Metadata stuff
42
virtual
void
SetMetadataValue
(
const
int
index,
const
std::any& value)
override
;
43
44
bool
GetDataUsingItem
()
const
;
45
46
void
SetDataUsingItem
(
const
bool
data_using_item);
47
48
// Attribute stuff
49
#if PROTOCOL_VERSION < 767
/* < 1.21 */
50
// 5cd17e52-a79a-43d3-a529-90fde04b181e
51
static
constexpr
std::array<unsigned char, 16>
speed_modifier_drinking_key
= { 0x5C, 0xD1, 0x7E, 0x52, 0xA7, 0x9A, 0x43, 0xD3, 0xA5, 0x29, 0x90, 0xFD, 0xE0, 0x4B, 0x18, 0x1E };
52
#else
53
inline
static
const
std::string
speed_modifier_drinking_key
=
"minecraft:drinking"
;
54
#endif
55
56
57
protected
:
58
virtual
double
GetWidthImpl
()
const override
;
59
virtual
double
GetHeightImpl
()
const override
;
60
61
};
62
}
MobEntity.hpp
RaiderEntity.hpp
Botcraft::MobEntity
Definition
MobEntity.hpp:8
Botcraft::MobEntity::hierarchy_metadata_count
static constexpr int hierarchy_metadata_count
Definition
MobEntity.hpp:12
Botcraft::MobEntity::metadata_count
static constexpr int metadata_count
Definition
MobEntity.hpp:10
Botcraft::RaiderEntity
Definition
RaiderEntity.hpp:9
Botcraft::RaiderEntity::metadata_count
static constexpr int metadata_count
Definition
RaiderEntity.hpp:11
Botcraft::RaiderEntity::hierarchy_metadata_count
static constexpr int hierarchy_metadata_count
Definition
RaiderEntity.hpp:13
Botcraft::WitchEntity
Definition
WitchEntity.hpp:16
Botcraft::WitchEntity::GetName
virtual std::string GetName() const override
Definition
WitchEntity.cpp:27
Botcraft::WitchEntity::metadata_count
static constexpr int metadata_count
Definition
WitchEntity.hpp:18
Botcraft::WitchEntity::GetDataUsingItem
bool GetDataUsingItem() const
Definition
WitchEntity.cpp:80
Botcraft::WitchEntity::~WitchEntity
virtual ~WitchEntity()
Definition
WitchEntity.cpp:21
Botcraft::WitchEntity::hierarchy_metadata_count
static constexpr int hierarchy_metadata_count
Definition
WitchEntity.hpp:21
Botcraft::WitchEntity::SetDataUsingItem
void SetDataUsingItem(const bool data_using_item)
Definition
WitchEntity.cpp:87
Botcraft::WitchEntity::GetClassName
static std::string GetClassName()
Definition
WitchEntity.cpp:38
Botcraft::WitchEntity::metadata_names
static const std::array< std::string, metadata_count > metadata_names
Definition
WitchEntity.hpp:19
Botcraft::WitchEntity::WitchEntity
WitchEntity()
Definition
WitchEntity.cpp:11
Botcraft::WitchEntity::SetMetadataValue
virtual void SetMetadataValue(const int index, const std::any &value) override
Definition
WitchEntity.cpp:63
Botcraft::WitchEntity::GetWidthImpl
virtual double GetWidthImpl() const override
Definition
WitchEntity.cpp:94
Botcraft::WitchEntity::Serialize
virtual ProtocolCraft::Json::Value Serialize() const override
Definition
WitchEntity.cpp:49
Botcraft::WitchEntity::GetHeightImpl
virtual double GetHeightImpl() const override
Definition
WitchEntity.cpp:99
Botcraft::WitchEntity::speed_modifier_drinking_key
static const std::string speed_modifier_drinking_key
Definition
WitchEntity.hpp:53
Botcraft::WitchEntity::GetType
virtual EntityType GetType() const override
Definition
WitchEntity.cpp:32
Botcraft::WitchEntity::GetClassType
static EntityType GetClassType()
Definition
WitchEntity.cpp:43
ProtocolCraft::Json::Value
Main class, basically a JsonVariant with extra utility functions it doesn't inherit JsonVariant direc...
Definition
Json.hpp:45
Botcraft
Definition
BaseNode.hpp:6
Botcraft::EntityType
EntityType
Definition
Entity.hpp:280
botcraft
include
botcraft
Game
Entities
entities
monster
WitchEntity.hpp
Generated by
1.9.8