LeviLamina
Loading...
Searching...
No Matches
CrafterBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/Flip.h"
7#include "mc/world/level/block/ActorBlockBase.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
12class Block;
13class BlockLegacy;
14class BlockPos;
15class BlockSource;
16class Experiments;
17class Player;
18class Random;
19class Vec3;
20namespace BlockEvents { class BlockPlaceEvent; }
21// clang-format on
22
23class CrafterBlock : public ::ActorBlock {
24public:
25 // virtual functions
26 // NOLINTBEGIN
27 // vIndex: 118
28 virtual int getVariant(::Block const& block) const /*override*/;
29
30 // vIndex: 92
31 virtual ::Block const&
32 getPlacementBlock(::Actor const& by, ::BlockPos const& pos, uchar face, ::Vec3 const& clickPos, int itemValue) const
33 /*override*/;
34
35 // vIndex: 132
36 virtual void onRemove(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
37
38 // vIndex: 139
39 virtual bool use(::Player& player, ::BlockPos const& pos, uchar) const /*override*/;
40
41 // vIndex: 138
42 virtual bool isInteractiveBlock() const /*override*/;
43
44 // vIndex: 29
45 virtual bool isContainerBlock() const /*override*/;
46
47 // vIndex: 67
48 virtual void setupRedstoneComponent(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
49
50 // vIndex: 61
51 virtual void onRedstoneUpdate(::BlockSource& region, ::BlockPos const& pos, int strength, bool isFirstTime) const
52 /*override*/;
53
54 // vIndex: 105
55 virtual bool hasComparatorSignal() const /*override*/;
56
57 // vIndex: 106
58 virtual int getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, uchar dir) const
59 /*override*/;
60
61 // vIndex: 136
62 virtual void tick(::BlockSource& region, ::BlockPos const& pos, ::Random& random) const /*override*/;
63
64 // vIndex: 120
65 virtual ::Block const& getRenderBlock() const /*override*/;
66
67 // vIndex: 121
68 virtual uchar getMappedFace(uchar face, ::Block const& block) const /*override*/;
69
70 // vIndex: 122
71 virtual ::Flip getFaceFlip(uchar face, ::Block const& block) const /*override*/;
72
73 // vIndex: 141
74 virtual bool allowStateMismatchOnPlacement(::Block const& clientTarget, ::Block const& serverTarget) const
75 /*override*/;
76
77 // vIndex: 131
78 virtual void _addHardCodedBlockComponents(::Experiments const&) /*override*/;
79
80 // vIndex: 0
81 virtual ~CrafterBlock() /*override*/ = default;
82 // NOLINTEND
83
84public:
85 // member functions
86 // NOLINTBEGIN
87 MCAPI void dispenseFrom(::BlockSource& region, ::BlockPos const& pos) const;
88
89 MCAPI void onPlace(::BlockEvents::BlockPlaceEvent& eventData) const;
90 // NOLINTEND
91
92public:
93 // destructor thunk
94 // NOLINTBEGIN
95
96 // NOLINTEND
97
98public:
99 // virtual function thunks
100 // NOLINTBEGIN
101 MCAPI int $getVariant(::Block const& block) const;
102
103 MCAPI ::Block const&
104 $getPlacementBlock(::Actor const& by, ::BlockPos const& pos, uchar face, ::Vec3 const& clickPos, int itemValue)
105 const;
106
107 MCFOLD void $onRemove(::BlockSource& region, ::BlockPos const& pos) const;
108
109 MCFOLD bool $use(::Player& player, ::BlockPos const& pos, uchar) const;
110
111 MCFOLD bool $isInteractiveBlock() const;
112
113 MCFOLD bool $isContainerBlock() const;
114
115 MCFOLD void $setupRedstoneComponent(::BlockSource& region, ::BlockPos const& pos) const;
116
117 MCAPI void $onRedstoneUpdate(::BlockSource& region, ::BlockPos const& pos, int strength, bool isFirstTime) const;
118
119 MCFOLD bool $hasComparatorSignal() const;
120
121 MCAPI int $getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, uchar dir) const;
122
123 MCAPI void $tick(::BlockSource& region, ::BlockPos const& pos, ::Random& random) const;
124
125 MCAPI ::Block const& $getRenderBlock() const;
126
127 MCAPI uchar $getMappedFace(uchar face, ::Block const& block) const;
128
129 MCAPI ::Flip $getFaceFlip(uchar face, ::Block const& block) const;
130
131 MCFOLD bool $allowStateMismatchOnPlacement(::Block const& clientTarget, ::Block const& serverTarget) const;
132
133 MCAPI void $_addHardCodedBlockComponents(::Experiments const&);
134 // NOLINTEND
135
136public:
137 // vftables
138 // NOLINTBEGIN
139 MCAPI static void** $vftable();
140 // NOLINTEND
141};
Definition ActorBlockBase.h:6
Definition Actor.h:104
Definition BlockPlaceEvent.h:15
Definition BlockLegacy.h:88
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:36
Definition CrafterBlock.h:23
Definition Experiments.h:14
Definition Player.h:119
Definition Random.h:16
Definition Vec3.h:10