LeviLamina
Loading...
Searching...
No Matches
ArmorStand.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Vec3.h"
7#include "mc/deps/shared_types/legacy/EquipmentSlot.h"
8#include "mc/world/actor/Mob.h"
9
10// auto generated forward declare list
11// clang-format off
12class Actor;
15class ActorHurtResult;
17class CompoundTag;
18class DataLoadHelper;
19class EntityContext;
21class ItemStack;
22class Player;
24// clang-format on
25
26class ArmorStand : public ::Mob {
27public:
28 // ArmorStand inner types declare
29 // clang-format off
30 struct Pose;
31 // clang-format on
32
33 // ArmorStand inner types define
34 struct Pose {
35 public:
36 // member variables
37 // NOLINTBEGIN
38 ::ll::TypedStorage<4, 12, ::Vec3> mHeadPose;
39 ::ll::TypedStorage<4, 12, ::Vec3> mBodyPose;
40 ::ll::TypedStorage<4, 12, ::Vec3> mRightArmPose;
41 ::ll::TypedStorage<4, 12, ::Vec3> mLeftArmPose;
42 ::ll::TypedStorage<4, 12, ::Vec3> mRightLegPose;
43 ::ll::TypedStorage<4, 12, ::Vec3> mLeftLegPose;
44 ::ll::TypedStorage<4, 12, ::Vec3> mRightItemPose;
45 // NOLINTEND
46 };
47
48public:
49 // member variables
50 // NOLINTBEGIN
51 ::ll::TypedStorage<8, 8, uint64> mLastHit;
52 ::ll::TypedStorage<4, 4, int> mLastCircuitStrength;
53 // NOLINTEND
54
55public:
56 // prevent constructor by default
57 ArmorStand();
58
59public:
60 // virtual functions
61 // NOLINTBEGIN
62 virtual float getShadowRadius() const /*override*/;
63
64 virtual void addAdditionalSaveData(::CompoundTag& tag) const /*override*/;
65
66 virtual void readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) /*override*/;
67
68 virtual ::InteractionResult
69 getInteraction(::Player& player, ::ActorInteraction& interaction, ::Vec3 const& location) /*override*/;
70
71 virtual void kill() /*override*/;
72
73 virtual void die(::ActorDamageSource const& source) /*override*/;
74
75 virtual ::ActorHurtResult _hurt(::ActorDamageSource const& source, float, bool, bool) /*override*/;
76
77 virtual void normalTick() /*override*/;
78
79 virtual void pushActors() /*override*/;
80
81 virtual bool isInvulnerableTo(::ActorDamageSource const& source) const /*override*/;
82
83 virtual ~ArmorStand() /*override*/ = default;
84 // NOLINTEND
85
86public:
87 // member functions
88 // NOLINTBEGIN
89 MCAPI ArmorStand(
90 ::ActorDefinitionGroup* definitions,
91 ::ActorDefinitionIdentifier const& definitionName,
92 ::EntityContext& entityContext
93 );
94
95 MCAPI void _causeDamage(float damage);
96
97 MCAPI void _destroyWithEffects(::Actor* sourceActor);
98
99 MCAPI void _dropHeldItems();
100
101 MCAPI void _dropHeldItemsAndResource();
102
103 MCAPI void _dropItem(::ItemStack const& item);
104
105 MCAPI bool _trySwapItem(::Player& player, ::SharedTypes::Legacy::EquipmentSlot slot);
106
107 MCAPI void setPoseIndex(int poseIndex);
108 // NOLINTEND
109
110public:
111 // constructor thunks
112 // NOLINTBEGIN
113 MCAPI void* $ctor(
114 ::ActorDefinitionGroup* definitions,
115 ::ActorDefinitionIdentifier const& definitionName,
116 ::EntityContext& entityContext
117 );
118 // NOLINTEND
119
120public:
121 // virtual function thunks
122 // NOLINTBEGIN
123 MCFOLD float $getShadowRadius() const;
124
125 MCAPI void $addAdditionalSaveData(::CompoundTag& tag) const;
126
127 MCAPI void $readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
128
129 MCAPI ::InteractionResult
130 $getInteraction(::Player& player, ::ActorInteraction& interaction, ::Vec3 const& location);
131
132 MCAPI void $kill();
133
134 MCAPI void $die(::ActorDamageSource const& source);
135
136 MCAPI ::ActorHurtResult $_hurt(::ActorDamageSource const& source, float, bool, bool);
137
138 MCAPI void $normalTick();
139
140 MCAPI void $pushActors();
141
142 MCFOLD bool $isInvulnerableTo(::ActorDamageSource const& source) const;
143
144
145 // NOLINTEND
146
147public:
148 // vftables
149 // NOLINTBEGIN
150 MCAPI static void** $vftable();
151 // NOLINTEND
152};
Definition ActorDamageSource.h:18
Definition ActorDefinitionGroup.h:36
Definition ActorHurtResult.h:5
Definition ActorInteraction.h:8
Definition Actor.h:106
Definition CompoundTag.h:23
Definition DataLoadHelper.h:20
Definition EntityContext.h:16
Definition InteractionResult.h:5
Definition ItemStack.h:26
Definition Player.h:129
Definition Vec3.h:10
Definition ActorDefinitionIdentifier.h:15
Definition ArmorStand.h:34