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