Botcraft 1.21.10
Loading...
Searching...
No Matches
MannequinEntity.hpp
Go to the documentation of this file.
1#if PROTOCOL_VERSION > 772 /* > 1.21.8 */
2#pragma once
3
5
8
9namespace Botcraft
10{
12 {
13 protected:
14 static constexpr int metadata_count = 3;
15 static const std::array<std::string, metadata_count> metadata_names;
17
18 public:
20 virtual ~MannequinEntity();
21
22 // Object related stuff
23 virtual std::string GetName() const override;
24 virtual EntityType GetType() const override;
25
26 // Static stuff, for easier comparison
27 static std::string GetClassName();
28 static EntityType GetClassType();
29
30
31 virtual ProtocolCraft::Json::Value Serialize() const override;
32
33 // Metadata stuff
34 virtual void SetMetadataValue(const int index, const std::any& value) override;
35
37 bool GetDataImmovable() const;
38 const std::optional<ProtocolCraft::Chat>& GetDataDescription() const;
39
41 void SetDataImmovable(const bool data_immovable);
42 void SetDataDescription(const std::optional<ProtocolCraft::Chat>& data_description);
43
44 protected:
45 virtual double GetWidthImpl() const override;
46 virtual double GetHeightImpl() const override;
47
48 };
49}
50#endif
static constexpr int metadata_count
static constexpr int hierarchy_metadata_count
static EntityType GetClassType()
virtual void SetMetadataValue(const int index, const std::any &value) override
virtual ProtocolCraft::Json::Value Serialize() const override
void SetDataProfile(const ProtocolCraft::Components::DataComponentTypeResolvableProfile &data_profile)
void SetDataDescription(const std::optional< ProtocolCraft::Chat > &data_description)
static constexpr int hierarchy_metadata_count
virtual double GetHeightImpl() const override
const std::optional< ProtocolCraft::Chat > & GetDataDescription() const
static const std::array< std::string, metadata_count > metadata_names
virtual std::string GetName() const override
void SetDataImmovable(const bool data_immovable)
static constexpr int metadata_count
virtual EntityType GetType() const override
static std::string GetClassName()
virtual double GetWidthImpl() const override
const ProtocolCraft::Components::DataComponentTypeResolvableProfile & GetDataProfile() const
Main class, basically a JsonVariant with extra utility functions it doesn't inherit JsonVariant direc...
Definition Json.hpp:45