LeviLamina
Loading...
Searching...
No Matches
ChestBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/Direction.h"
7#include "mc/world/level/block/ActorBlockBase.h"
8#include "mc/world/level/block/BlockLegacy.h"
9#include "mc/world/level/block/BlockSupportType.h"
10#include "mc/world/level/material/MaterialType.h"
11
12// auto generated forward declare list
13// clang-format off
14class Actor;
15class BaseGameVersion;
16class Block;
17class BlockPos;
18class BlockSource;
19class Container;
20class Experiments;
22class Vec3;
23namespace BlockEvents { class BlockPlaceEvent; }
24namespace BlockEvents { class BlockPlayerInteractEvent; }
25// clang-format on
26
27class ChestBlock : public ::ActorBlock {
28public:
29 // ChestBlock inner types define
30 enum class ChestType : int {
31 Basic = 0,
32 Trap = 1,
33 Ender = 2,
34 };
35
36public:
37 // member variables
38 // NOLINTBEGIN
39 ::ll::TypedStorage<4, 4, ::ChestBlock::ChestType> mType;
40 // NOLINTEND
41
42public:
43 // prevent constructor by default
44 ChestBlock();
45
46public:
47 // virtual functions
48 // NOLINTBEGIN
49 // vIndex: 124
50 virtual ::BlockLegacy& init() /*override*/;
51
52 // vIndex: 66
53 virtual void setupRedstoneComponent(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
54
55 // vIndex: 131
56 virtual void onRemove(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
57
58 // vIndex: 83
59 virtual bool breaksFallingBlocks(::Block const& block, ::BaseGameVersion const version) const /*override*/;
60
61 // vIndex: 61
62 virtual void onMove(::BlockSource& region, ::BlockPos const& from, ::BlockPos const& to) const /*override*/;
63
64 // vIndex: 62
65 virtual bool detachesOnPistonMove(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
66
67 // vIndex: 104
68 virtual bool hasComparatorSignal() const /*override*/;
69
70 // vIndex: 105
71 virtual int getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, uchar dir) const
72 /*override*/;
73
74 // vIndex: 120
75 virtual uchar getMappedFace(uchar face, ::Block const& block) const /*override*/;
76
77 // vIndex: 87
78 virtual bool getSecondPart(::IConstBlockSource const& region, ::BlockPos const& pos, ::BlockPos& out) const
79 /*override*/;
80
81 // vIndex: 136
82 virtual bool isInteractiveBlock() const /*override*/;
83
84 // vIndex: 28
85 virtual bool isContainerBlock() const /*override*/;
86
87 // vIndex: 43
88 virtual bool isSignalSource() const /*override*/;
89
90 // vIndex: 53
91 virtual bool
92 shouldConnectToRedstone(::BlockSource& region, ::BlockPos const& pos, ::Direction::Type direction) const
93 /*override*/;
94
95 // vIndex: 22
96 virtual bool canProvideSupport(::Block const&, uchar face, ::BlockSupportType type) const /*override*/;
97
98 // vIndex: 58
99 virtual bool dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar face) const
100 /*override*/;
101
102 // vIndex: 130
103 virtual void _addHardCodedBlockComponents(::Experiments const&) /*override*/;
104
105 // vIndex: 0
106 virtual ~ChestBlock() /*override*/;
107 // NOLINTEND
108
109public:
110 // member functions
111 // NOLINTBEGIN
112 MCNAPI ChestBlock(::std::string const& nameId, int id, ::ChestBlock::ChestType type, ::MaterialType materialType);
113
114 MCNAPI void onPlace(::BlockEvents::BlockPlaceEvent& eventData) const;
115
116 MCNAPI void updateSignalStrength(::BlockSource& region, ::BlockPos const& pos, int strength) const;
117
118 MCNAPI void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
119 // NOLINTEND
120
121public:
122 // static functions
123 // NOLINTBEGIN
124 MCNAPI static bool _tryEquipChest(::Actor& actor);
125 // NOLINTEND
126
127public:
128 // constructor thunks
129 // NOLINTBEGIN
130 MCNAPI void* $ctor(::std::string const& nameId, int id, ::ChestBlock::ChestType type, ::MaterialType materialType);
131 // NOLINTEND
132
133public:
134 // destructor thunk
135 // NOLINTBEGIN
136 MCNAPI void $dtor();
137 // NOLINTEND
138
139public:
140 // virtual function thunks
141 // NOLINTBEGIN
142 MCNAPI ::BlockLegacy& $init();
143
144 MCNAPI void $setupRedstoneComponent(::BlockSource& region, ::BlockPos const& pos) const;
145
146 MCNAPI void $onRemove(::BlockSource& region, ::BlockPos const& pos) const;
147
148 MCNAPI bool $breaksFallingBlocks(::Block const& block, ::BaseGameVersion const version) const;
149
150 MCNAPI void $onMove(::BlockSource& region, ::BlockPos const& from, ::BlockPos const& to) const;
151
152 MCNAPI bool $detachesOnPistonMove(::BlockSource& region, ::BlockPos const& pos) const;
153
154 MCNAPI bool $hasComparatorSignal() const;
155
156 MCNAPI int
157 $getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, uchar dir) const;
158
159 MCNAPI uchar $getMappedFace(uchar face, ::Block const& block) const;
160
161 MCNAPI bool $getSecondPart(::IConstBlockSource const& region, ::BlockPos const& pos, ::BlockPos& out) const;
162
163 MCNAPI bool $isInteractiveBlock() const;
164
165 MCNAPI bool $isContainerBlock() const;
166
167 MCNAPI bool $isSignalSource() const;
168
169 MCNAPI bool
170 $shouldConnectToRedstone(::BlockSource& region, ::BlockPos const& pos, ::Direction::Type direction) const;
171
172 MCNAPI bool $canProvideSupport(::Block const&, uchar face, ::BlockSupportType type) const;
173
174 MCNAPI bool $dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar face) const;
175
177 // NOLINTEND
178
179public:
180 // vftables
181 // NOLINTBEGIN
182 MCNAPI static void** $vftable();
183 // NOLINTEND
184};
Definition ActorBlockBase.h:6
Definition Actor.h:103
Definition BaseGameVersion.h:8
Definition BlockPlaceEvent.h:16
Definition BlockPlayerInteractEvent.h:17
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:38
Definition ChestBlock.h:27
MCAPI bool $canProvideSupport(::Block const &, uchar face, ::BlockSupportType type) const
MCAPI void $dtor()
MCAPI ChestBlock(::std::string const &nameId, int id, ::ChestBlock::ChestType type, ::MaterialType materialType)
MCAPI bool $hasComparatorSignal() const
MCAPI bool $isInteractiveBlock() const
MCAPI void * $ctor(::std::string const &nameId, int id, ::ChestBlock::ChestType type, ::MaterialType materialType)
MCAPI::BlockLegacy & $init()
MCAPI bool $isSignalSource() const
MCAPI void $onMove(::BlockSource &region, ::BlockPos const &from, ::BlockPos const &to) const
MCAPI void $setupRedstoneComponent(::BlockSource &region, ::BlockPos const &pos) const
MCAPI void use(::BlockEvents::BlockPlayerInteractEvent &eventData) const
MCAPI bool $shouldConnectToRedstone(::BlockSource &region, ::BlockPos const &pos, ::Direction::Type direction) const
MCAPI void $onRemove(::BlockSource &region, ::BlockPos const &pos) const
static MCAPI void ** $vftable()
MCAPI void onPlace(::BlockEvents::BlockPlaceEvent &eventData) const
MCAPI int $getComparatorSignal(::BlockSource &region, ::BlockPos const &pos, ::Block const &block, uchar dir) const
MCAPI bool $breaksFallingBlocks(::Block const &block, ::BaseGameVersion const version) const
MCAPI bool $isContainerBlock() const
MCAPI bool $dispense(::BlockSource &region, ::Container &container, int slot, ::Vec3 const &pos, uchar face) const
MCAPI uchar $getMappedFace(uchar face, ::Block const &block) const
MCAPI void $_addHardCodedBlockComponents(::Experiments const &)
MCAPI void updateSignalStrength(::BlockSource &region, ::BlockPos const &pos, int strength) const
MCAPI bool $getSecondPart(::IConstBlockSource const &region, ::BlockPos const &pos, ::BlockPos &out) const
static MCAPI bool _tryEquipChest(::Actor &actor)
MCAPI bool $detachesOnPistonMove(::BlockSource &region, ::BlockPos const &pos) const
Definition Container.h:30
Definition Experiments.h:14
Definition IConstBlockSource.h:24
Definition Vec3.h:10