LeviLamina
Loading...
Searching...
No Matches
ItemActor.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4#include "mc/world/item/ItemStack.h"
5
6// auto generated inclusion list
7#include "mc/world/actor/Actor.h"
8#include "mc/world/actor/ActorEvent.h"
9#include "mc/world/actor/ActorInitializationMethod.h"
10#include "mc/world/item/ItemStack.h"
11
12// auto generated forward declare list
13// clang-format off
16class CompoundTag;
17class DataLoadHelper;
18class EntityContext;
19class ListTag;
20class Packet;
21class Player;
23struct ActorUniqueID;
25// clang-format on
26
27class ItemActor : public ::Actor {
28protected:
29 // ItemActor inner types declare
30 // clang-format off
32 // clang-format on
33
34 // ItemActor inner types define
36 public:
37 // member variables
38 // NOLINTBEGIN
39 ::ll::TypedStorage<1, 1, bool> mUseAdjustments;
40 ::ll::TypedStorage<4, 4, float> mFirstRenderedYaw;
41 // NOLINTEND
42 };
43
44public:
45 // member variables
46 // NOLINTBEGIN
47 ::ll::TypedStorage<8, 152, ::ItemStack> mItem;
48 ::ll::TypedStorage<4, 4, int> mAge;
49 ::ll::TypedStorage<4, 4, int> mPickupDelay;
50 ::ll::TypedStorage<4, 4, int> mThrowTime;
51 ::ll::TypedStorage<4, 4, float> mBobOffs;
52 ::ll::TypedStorage<4, 4, int> mHealth;
53 ::ll::TypedStorage<4, 4, int> mLifeTime;
54 ::ll::TypedStorage<1, 1, bool> mIsInItemFrame;
55 ::ll::TypedStorage<1, 1, bool> mIsFromFishing;
56 ::ll::TypedStorage<4, 12, ::std::optional<::ItemActor::ItemRenderAdjustments>> mRenderAdjustments;
57 // NOLINTEND
58
59public:
60 LLNDAPI ItemStack& item();
61 LLNDAPI ItemStack const& item() const;
62 LLNDAPI int& age();
63 LLNDAPI int const& age() const;
64 LLNDAPI int& pickupDelay();
65 LLNDAPI int const& pickupDelay() const;
66 LLNDAPI int& throwTime();
67 LLNDAPI int const& throwTime() const;
68 LLNDAPI float& bobOffs();
69 LLNDAPI float const& bobOffs() const;
70 LLNDAPI int& health();
71 LLNDAPI int const& health() const;
72 LLNDAPI int& lifeTime();
73 LLNDAPI int const& lifeTime() const;
74 LLNDAPI bool& isInItemFrame();
75 LLNDAPI bool const& isInItemFrame() const;
76 LLNDAPI bool& isFromFishing();
77 LLNDAPI bool const& isFromFishing() const;
78
79public:
80 // virtual functions
81 // NOLINTBEGIN
82 // vIndex: 2
83 virtual void reloadHardcoded(::ActorInitializationMethod, ::VariantParameterList const&) /*override*/;
84
85 // vIndex: 8
86 virtual ~ItemActor() /*override*/ = default;
87
88 // vIndex: 39
89 virtual void playerTouch(::Player& player) /*override*/;
90
91 // vIndex: 23
92 virtual ::std::unique_ptr<::Packet> tryCreateAddActorPacket() /*override*/;
93
94 // vIndex: 84
95 virtual ::ActorUniqueID getSourceUniqueID() const /*override*/;
96
97 // vIndex: 64
98 virtual bool isInvulnerableTo(::ActorDamageSource const& source) const /*override*/;
99
100 // vIndex: 99
101 virtual bool canSynchronizeNewEntity() const /*override*/;
102
103 // vIndex: 69
104 virtual void handleEntityEvent(::ActorEvent eventId, int data) /*override*/;
105
106 // vIndex: 18
107 virtual bool isFireImmune() const /*override*/;
108
109 // vIndex: 135
110 virtual bool _hurt(::ActorDamageSource const&, float damage, bool, bool) /*override*/;
111
112 // vIndex: 137
113 virtual void addAdditionalSaveData(::CompoundTag& tag) const /*override*/;
114
115 // vIndex: 136
116 virtual void readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) /*override*/;
117 // NOLINTEND
118
119public:
120 // member functions
121 // NOLINTBEGIN
122 MCAPI ItemActor(
123 ::ActorDefinitionGroup* definitions,
124 ::ActorDefinitionIdentifier const& definitionName,
125 ::EntityContext& entityContext
126 );
127
128 MCAPI void _addComponents();
129
130 MCAPI void _dropContents();
131
132 MCAPI void _dropItemList(::ListTag* itemList);
133
134 MCAPI bool _merge(::ItemActor* target);
135
136 MCAPI void _mergeWithNeighbours();
137
138 MCAPI void _validateItem();
139
140 MCAPI void postNormalTick();
141 // NOLINTEND
142
143public:
144 // constructor thunks
145 // NOLINTBEGIN
146 MCAPI void* $ctor(
147 ::ActorDefinitionGroup* definitions,
148 ::ActorDefinitionIdentifier const& definitionName,
149 ::EntityContext& entityContext
150 );
151 // NOLINTEND
152
153public:
154 // virtual function thunks
155 // NOLINTBEGIN
156 MCAPI void $reloadHardcoded(::ActorInitializationMethod, ::VariantParameterList const&);
157
158 MCAPI void $playerTouch(::Player& player);
159
160 MCAPI ::std::unique_ptr<::Packet> $tryCreateAddActorPacket();
161
162 MCFOLD ::ActorUniqueID $getSourceUniqueID() const;
163
164 MCAPI bool $isInvulnerableTo(::ActorDamageSource const& source) const;
165
166 MCFOLD bool $canSynchronizeNewEntity() const;
167
168 MCAPI void $handleEntityEvent(::ActorEvent eventId, int data);
169
170 MCAPI bool $isFireImmune() const;
171
172 MCAPI bool $_hurt(::ActorDamageSource const&, float damage, bool, bool);
173
174 MCAPI void $addAdditionalSaveData(::CompoundTag& tag) const;
175
176 MCAPI void $readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
177 // NOLINTEND
178
179public:
180 // vftables
181 // NOLINTBEGIN
182 MCNAPI static void** $vftable();
183 // NOLINTEND
184};
Definition ActorDamageSource.h:18
Definition ActorDefinitionGroup.h:32
Definition Actor.h:102
Definition CompoundTag.h:13
Definition DataLoadHelper.h:20
Definition EntityContext.h:16
Definition ItemActor.h:27
static MCAPI void ** $vftable()
Definition ItemStack.h:23
Definition ListTag.h:12
Definition Packet.h:43
Definition Player.h:123
STL namespace.
Definition ActorDefinitionIdentifier.h:15
Definition ActorUniqueID.h:5
Definition ItemActor.h:35
Definition VariantParameterList.h:13