LeviLamina
Loading...
Searching...
No Matches
LecternBlockActor.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/Container.h"
7#include "mc/world/item/ItemStack.h"
8#include "mc/world/level/block/actor/BlockActor.h"
9
10// auto generated forward declare list
11// clang-format off
12class Actor;
14class BlockPos;
15class BlockSource;
16class CompoundTag;
17class DataLoadHelper;
18class ILevel;
19class SaveContext;
20// clang-format on
21
22class LecternBlockActor : public ::BlockActor, public ::Container {
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<4, 4, int> mPage;
27 ::ll::TypedStorage<4, 4, int> mTotalPages;
28 ::ll::TypedStorage<8, 152, ::ItemStack> mBook;
29 // NOLINTEND
30
31public:
32 // prevent constructor by default
33 LecternBlockActor();
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 virtual ::ItemStack const& getItem(int index) const /*override*/;
39
40 virtual void setItem(int modelSlot, ::ItemStack const& item) /*override*/;
41
42 virtual int getMaxStackSize() const /*override*/;
43
44 virtual int getContainerSize() const /*override*/;
45
46 virtual void startOpen(::Actor&) /*override*/;
47
48 virtual void stopOpen(::Actor& actor) /*override*/;
49
50 virtual ::Container* getContainer() /*override*/;
51
52 virtual ::Container const* getContainer() const /*override*/;
53
54 virtual void load(::ILevel& level, ::CompoundTag const& base, ::DataLoadHelper& dataLoadHelper) /*override*/;
55
56 virtual bool save(::CompoundTag& tag, ::SaveContext const& saveContext) const /*override*/;
57
58 virtual void onChanged(::BlockSource& region) /*override*/;
59
60 virtual void serverInitItemStackIds(
61 int containerSlot,
62 int count,
63 ::std::function<void(int, ::ItemStack const&)> onNetIdChanged
64 ) /*override*/;
65
66 virtual ::std::unique_ptr<::BlockActorDataPacket> _getUpdatePacket(::BlockSource& region) /*override*/;
67
68 virtual void _onUpdatePacket(::CompoundTag const& data, ::BlockSource& region) /*override*/;
69
70 virtual ~LecternBlockActor() /*override*/ = default;
71 // NOLINTEND
72
73public:
74 // member functions
75 // NOLINTBEGIN
76 MCAPI explicit LecternBlockActor(::BlockPos const& pos);
77
78 MCAPI void setItemFromBlock(int slot, ::ItemStack const& item);
79
80 MCAPI void setPageOnServer(int page, ::BlockSource& region);
81 // NOLINTEND
82
83public:
84 // constructor thunks
85 // NOLINTBEGIN
86 MCAPI void* $ctor(::BlockPos const& pos);
87 // NOLINTEND
88
89public:
90 // virtual function thunks
91 // NOLINTBEGIN
92 MCAPI ::ItemStack const& $getItem(int index) const;
93
94 MCAPI void $setItem(int modelSlot, ::ItemStack const& item);
95
96 MCFOLD int $getMaxStackSize() const;
97
98 MCFOLD int $getContainerSize() const;
99
100 MCFOLD void $startOpen(::Actor&);
101
102 MCFOLD void $stopOpen(::Actor& actor);
103
104 MCFOLD ::Container* $getContainer();
105
106 MCFOLD ::Container const* $getContainer() const;
107
108 MCAPI void $load(::ILevel& level, ::CompoundTag const& base, ::DataLoadHelper& dataLoadHelper);
109
110 MCAPI bool $save(::CompoundTag& tag, ::SaveContext const& saveContext) const;
111
112 MCAPI void $onChanged(::BlockSource& region);
113
114 MCAPI void $serverInitItemStackIds(
115 int containerSlot,
116 int count,
117 ::std::function<void(int, ::ItemStack const&)> onNetIdChanged
118 );
119
120 MCFOLD ::std::unique_ptr<::BlockActorDataPacket> $_getUpdatePacket(::BlockSource& region);
121
122 MCFOLD void $_onUpdatePacket(::CompoundTag const& data, ::BlockSource& region);
123
124
125 // NOLINTEND
126
127public:
128 // vftables
129 // NOLINTBEGIN
130 MCAPI static void** $vftableForBlockActor();
131
132 MCAPI static void** $vftableForContainer();
133 // NOLINTEND
134};
Definition Actor.h:105
Definition BlockActorDataPacket.h:19
Definition BlockPos.h:19
Definition BlockSource.h:68
Definition CompoundTag.h:23
Definition DataLoadHelper.h:20
Definition ILevel.h:214
Definition ItemStack.h:26
Definition SaveContext.h:5