LeviLamina
Loading...
Searching...
No Matches
ItemFrameBlockActor.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/ecs/WeakEntityRef.h"
7#include "mc/world/item/ClockSpriteCalculator.h"
8#include "mc/world/item/CompassSpriteCalculator.h"
9#include "mc/world/item/ItemInstance.h"
10#include "mc/world/level/block/actor/BlockActor.h"
11#include "mc/world/level/block/actor/BlockActorType.h"
12#include "mc/world/level/block/states/BlockStateVariant.h"
13
14// auto generated forward declare list
15// clang-format off
16class Actor;
18class BlockPos;
19class BlockSource;
20class CompoundTag;
21class DataLoadHelper;
22class HashedString;
23class ILevel;
24class SaveContext;
25// clang-format on
26
27class ItemFrameBlockActor : public ::BlockActor {
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<4, 12, ::ClockSpriteCalculator> mClockSpriteCalc;
32 ::ll::TypedStorage<8, 32, ::CompassSpriteCalculator> mCompassSpriteCalc;
33 ::ll::TypedStorage<8, 32, ::CompassSpriteCalculator> mRecoveryCompassSpriteCalc;
34 ::ll::TypedStorage<1, 1, bool> mInstantClockCalculatorUpdate;
35 ::ll::TypedStorage<8, 128, ::ItemInstance> mItem;
36 ::ll::TypedStorage<4, 4, float> mDropChance;
37 ::ll::TypedStorage<4, 4, float> mRotation;
38 ::ll::TypedStorage<1, 1, bool> mUpgradeMapBit;
39 ::ll::TypedStorage<1, 1, bool> mUpgradePhotoBit;
40 ::ll::TypedStorage<1, 1, bool> mRefreshMap;
41 ::ll::TypedStorage<8, 24, ::WeakEntityRef> mDisplayEntity;
42 ::ll::TypedStorage<1, 1, bool> mIgnoreLighting;
43 // NOLINTEND
44
45public:
46 // prevent constructor by default
47 ItemFrameBlockActor();
48
49public:
50 // virtual functions
51 // NOLINTBEGIN
52 virtual void tick(::BlockSource& region) /*override*/;
53
54 virtual void load(::ILevel& level, ::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) /*override*/;
55
56 virtual bool save(::CompoundTag& tag, ::SaveContext const& saveContext) const /*override*/;
57
58 virtual float getShadowRadius(::BlockSource&) const /*override*/;
59
60 virtual void onChanged(::BlockSource& region) /*override*/;
61
62 virtual void onRemoved(::BlockSource& region) /*override*/;
63
64 virtual ::std::unique_ptr<::BlockActorDataPacket> _getUpdatePacket(::BlockSource&) /*override*/;
65
66 virtual void _onUpdatePacket(::CompoundTag const& data, ::BlockSource& region) /*override*/;
67
68 virtual ~ItemFrameBlockActor() /*override*/ = default;
69 // NOLINTEND
70
71public:
72 // member functions
73 // NOLINTBEGIN
74 MCAPI ItemFrameBlockActor(::BlockPos const& pos, ::BlockActorType type);
75
76 MCAPI void _checkMapRemoval(::BlockSource& region, ::ItemInstance& item);
77
78 MCAPI void
79 _updateBit(::BlockSource& region, ::BlockStateVariant<bool> const& vanillaState, ::HashedString const& itemName);
80
81 MCAPI void actuallyDropItem(::BlockSource& region, bool dropItem, ::Actor* entitySource);
82
83 MCAPI void dropFramedItem(::BlockSource& region, bool dropItem, ::Actor* entitySource);
84
85 MCAPI void setItem(::BlockSource& region, ::ItemInstance const& item, ::Actor* entitySource);
86
87 MCAPI void updateNameTag();
88 // NOLINTEND
89
90public:
91 // static variables
92 // NOLINTBEGIN
93 MCAPI static float const& ROTATION_DEGREES();
94 // NOLINTEND
95
96public:
97 // constructor thunks
98 // NOLINTBEGIN
99 MCAPI void* $ctor(::BlockPos const& pos, ::BlockActorType type);
100 // NOLINTEND
101
102public:
103 // virtual function thunks
104 // NOLINTBEGIN
105 MCAPI void $tick(::BlockSource& region);
106
107 MCAPI void $load(::ILevel& level, ::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
108
109 MCAPI bool $save(::CompoundTag& tag, ::SaveContext const& saveContext) const;
110
111 MCFOLD float $getShadowRadius(::BlockSource&) const;
112
113 MCFOLD void $onChanged(::BlockSource& region);
114
115 MCAPI void $onRemoved(::BlockSource& region);
116
117 MCFOLD ::std::unique_ptr<::BlockActorDataPacket> $_getUpdatePacket(::BlockSource&);
118
119 MCFOLD void $_onUpdatePacket(::CompoundTag const& data, ::BlockSource& region);
120
121
122 // NOLINTEND
123
124public:
125 // vftables
126 // NOLINTBEGIN
127 MCNAPI static void** $vftable();
128 // NOLINTEND
129};
Definition Actor.h:105
Definition BlockActorDataPacket.h:19
Definition BlockPos.h:19
Definition BlockSource.h:68
Definition BlockStateVariant.h:7
Definition CompoundTag.h:23
Definition DataLoadHelper.h:20
Definition HashedString.h:5
Definition ILevel.h:214
static MCAPI void ** $vftable()
Definition ItemInstance.h:15
Definition SaveContext.h:5