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