LeviLamina
Loading...
Searching...
No Matches
JukeboxBlockActor.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/shared_types/legacy/LevelSoundEvent.h"
7#include "mc/world/level/block/actor/RandomizableBlockActorContainer.h"
8
9// auto generated forward declare list
10// clang-format off
12class BlockPos;
13class BlockSource;
14class CompoundTag;
15class Container;
16class DataLoadHelper;
17class ILevel;
18class ItemStack;
19class Level;
20class Player;
21class SaveContext;
22// clang-format on
23
25public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<8, 152, ::ItemStack> mRecord;
29 ::ll::TypedStorage<4, 4, int> mCount;
30 ::ll::TypedStorage<1, 1, bool> mRecordingFinished;
31 ::ll::TypedStorage<4, 4, int> mTicksPlaying;
32 ::ll::TypedStorage<1, 1, bool> mPostBlockChangeGameEvent;
33 // NOLINTEND
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 // vIndex: 2
39 virtual bool save(::CompoundTag& tag, ::SaveContext const& saveContext) const /*override*/;
40
41 // vIndex: 1
42 virtual void load(::ILevel& level, ::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) /*override*/;
43
44 // vIndex: 7
45 virtual void tick(::BlockSource& region) /*override*/;
46
47 // vIndex: 20
48 virtual int getContainerSize() const /*override*/;
49
50 // vIndex: 21
51 virtual int getMaxStackSize() const /*override*/;
52
53 // vIndex: 29
54 virtual bool canPushInItem(int, int, ::ItemStack const& item) const /*override*/;
55
56 // vIndex: 30
57 virtual bool canPullOutItem(int, int, ::ItemStack const&) const /*override*/;
58
59 // vIndex: 7
60 virtual ::ItemStack const& getItem(int) const /*override*/;
61
62 // vIndex: 12
63 virtual void setItem(int modelSlot, ::ItemStack const& item) /*override*/;
64
65 // vIndex: 22
66 virtual void startOpen(::Player&) /*override*/;
67
68 // vIndex: 23
69 virtual void stopOpen(::Player& player) /*override*/;
70
71 // vIndex: 33
72 virtual ::Container* getContainer() /*override*/;
73
74 // vIndex: 32
75 virtual ::Container const* getContainer() const /*override*/;
76
77 // vIndex: 8
78 virtual void onChanged(::BlockSource& region) /*override*/;
79
80 // vIndex: 2
81 virtual void serverInitItemStackIds(
82 int containerSlot,
83 int,
84 ::std::function<void(int, ::ItemStack const&)> onNetIdChanged
85 ) /*override*/;
86
87 // vIndex: 43
88 virtual ::std::unique_ptr<::BlockActorDataPacket> _getUpdatePacket(::BlockSource&) /*override*/;
89
90 // vIndex: 44
91 virtual void _onUpdatePacket(::CompoundTag const& data, ::BlockSource& region) /*override*/;
92
93 // vIndex: 0
94 virtual ~JukeboxBlockActor() /*override*/ = default;
95 // NOLINTEND
96
97public:
98 // member functions
99 // NOLINTBEGIN
100 MCAPI explicit JukeboxBlockActor(::BlockPos const& pos);
101
102 MCAPI void _onChanged(::BlockSource& region, ::SharedTypes::Legacy::LevelSoundEvent sound);
103
104 MCAPI void _spawnMusicParticles(::Level& level, float recordDuration);
105
106 MCAPI void setRecord(::ItemStack const& record, bool startPlaying);
107
108 MCAPI void startPlayingRecord(::BlockSource& region);
109
110 MCAPI void stopPlayingRecord(::BlockSource& region);
111 // NOLINTEND
112
113public:
114 // constructor thunks
115 // NOLINTBEGIN
116 MCAPI void* $ctor(::BlockPos const& pos);
117 // NOLINTEND
118
119public:
120 // destructor thunk
121 // NOLINTBEGIN
122
123 // NOLINTEND
124
125public:
126 // virtual function thunks
127 // NOLINTBEGIN
128 MCAPI bool $save(::CompoundTag& tag, ::SaveContext const& saveContext) const;
129
130 MCAPI void $load(::ILevel& level, ::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
131
132 MCAPI void $tick(::BlockSource& region);
133
134 MCFOLD int $getContainerSize() const;
135
136 MCFOLD int $getMaxStackSize() const;
137
138 MCAPI bool $canPushInItem(int, int, ::ItemStack const& item) const;
139
140 MCAPI bool $canPullOutItem(int, int, ::ItemStack const&) const;
141
142 MCAPI ::ItemStack const& $getItem(int) const;
143
144 MCAPI void $setItem(int modelSlot, ::ItemStack const& item);
145
146 MCFOLD void $startOpen(::Player&);
147
148 MCFOLD void $stopOpen(::Player& player);
149
150 MCFOLD ::Container* $getContainer();
151
152 MCFOLD ::Container const* $getContainer() const;
153
154 MCAPI void $onChanged(::BlockSource& region);
155
156 MCAPI void
157 $serverInitItemStackIds(int containerSlot, int, ::std::function<void(int, ::ItemStack const&)> onNetIdChanged);
158
159 MCAPI ::std::unique_ptr<::BlockActorDataPacket> $_getUpdatePacket(::BlockSource&);
160
161 MCAPI void $_onUpdatePacket(::CompoundTag const& data, ::BlockSource& region);
162 // NOLINTEND
163
164public:
165 // vftables
166 // NOLINTBEGIN
167 MCAPI static void** $vftableForContainer();
168
169 MCAPI static void** $vftableForRandomizableBlockActorContainerBase();
170 // NOLINTEND
171};
Definition BlockActorDataPacket.h:19
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition CompoundTag.h:13
Definition Container.h:30
Definition DataLoadHelper.h:20
Definition ILevel.h:203
Definition ItemStack.h:25
Definition JukeboxBlockActor.h:24
Definition Level.h:234
Definition Player.h:119
Definition RandomizableBlockActorContainer.h:16
Definition SaveContext.h:5