LeviLamina
Loading...
Searching...
No Matches
ItemFrameBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/optional_ref.h"
7#include "mc/world/level/block/ActorBlockBase.h"
8#include "mc/world/level/block/BlockLegacy.h"
9
10// auto generated forward declare list
11// clang-format off
12class AABB;
13class Actor;
14class Block;
15class BlockActor;
16class BlockPos;
17class BlockSource;
18class Experiments;
20class HashedString;
22class ItemInstance;
23class Player;
24class Vec3;
26namespace BlockEvents { class BlockPlaceEvent; }
27namespace BlockEvents { class BlockPlayerInteractEvent; }
28namespace BlockEvents { class BlockQueuedTickEvent; }
29// clang-format on
30
32public:
33 // virtual functions
34 // NOLINTBEGIN
35 // vIndex: 91
36 virtual ::Block const&
37 getPlacementBlock(::Actor const& by, ::BlockPos const& pos, uchar face, ::Vec3 const& clickPos, int itemValue) const
38 /*override*/;
39
40 // vIndex: 79
41 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar face) const /*override*/;
42
43 // vIndex: 11
44 virtual ::AABB const& getVisualShape(::Block const& block, ::AABB& bufferAABB) const /*override*/;
45
46 // vIndex: 5
47 virtual ::AABB getCollisionShape(
48 ::Block const&,
50 ::BlockPos const&,
52 ) const /*override*/;
53
54 // vIndex: 136
55 virtual bool isInteractiveBlock() const /*override*/;
56
57 // vIndex: 89
58 virtual ::ItemInstance asItemInstance(::Block const&, ::BlockActor const* blockActor) const /*override*/;
59
60 // vIndex: 88
61 virtual ::Block const* playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const
62 /*override*/;
63
64 // vIndex: 94
65 virtual bool attack(::Player* player, ::BlockPos const& pos) const /*override*/;
66
67 // vIndex: 85
68 virtual bool getIgnoresDestroyPermissions(::Actor& entity, ::BlockPos const& pos) const /*override*/;
69
70 // vIndex: 131
71 virtual void onRemove(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
72
73 // vIndex: 86
74 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
75 /*override*/;
76
77 // vIndex: 104
78 virtual bool hasComparatorSignal() const /*override*/;
79
80 // vIndex: 105
81 virtual int getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, uchar dir) const
82 /*override*/;
83
84 // vIndex: 138
85 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
86
87 // vIndex: 30
88 virtual bool isLavaBlocking() const /*override*/;
89
90 // vIndex: 147
91 virtual ::HashedString getSpawnedItemName() const;
92
93 // vIndex: 130
94 virtual void _addHardCodedBlockComponents(::Experiments const&) /*override*/;
95
96 // vIndex: 90
97 virtual void
98 spawnAfterBreak(::BlockSource& region, ::Block const&, ::BlockPos const& pos, ::ResourceDropsContext const&) const
99 /*override*/;
100
101 // vIndex: 0
102 virtual ~ItemFrameBlock() /*override*/ = default;
103 // NOLINTEND
104
105public:
106 // member functions
107 // NOLINTBEGIN
108 MCAPI void _checkAchievements(::Player& player, ::BlockPos const& currentPos) const;
109
110 MCAPI void onPlace(::BlockEvents::BlockPlaceEvent& eventData) const;
111
112 MCFOLD void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
113
114 MCAPI void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
115 // NOLINTEND
116
117public:
118 // virtual function thunks
119 // NOLINTBEGIN
120 MCFOLD ::Block const& $getPlacementBlock(
121 ::Actor const& by,
122 ::BlockPos const& pos,
123 uchar face,
124 ::Vec3 const& clickPos,
125 int itemValue
126 ) const;
127
128 MCAPI bool $mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar face) const;
129
130 MCAPI ::AABB const& $getVisualShape(::Block const& block, ::AABB& bufferAABB) const;
131
132 MCFOLD ::AABB $getCollisionShape(
133 ::Block const&,
134 ::IConstBlockSource const&,
135 ::BlockPos const&,
137 ) const;
138
139 MCFOLD bool $isInteractiveBlock() const;
140
141 MCAPI ::ItemInstance $asItemInstance(::Block const&, ::BlockActor const* blockActor) const;
142
143 MCAPI ::Block const* $playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const;
144
145 MCAPI bool $attack(::Player* player, ::BlockPos const& pos) const;
146
147 MCAPI bool $getIgnoresDestroyPermissions(::Actor& entity, ::BlockPos const& pos) const;
148
149 MCFOLD void $onRemove(::BlockSource& region, ::BlockPos const& pos) const;
150
151 MCAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
152
153 MCFOLD bool $hasComparatorSignal() const;
154
155 MCAPI int $getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, uchar dir) const;
156
157 MCFOLD bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
158
159 MCFOLD bool $isLavaBlocking() const;
160
161 MCAPI ::HashedString $getSpawnedItemName() const;
162
163 MCAPI void $_addHardCodedBlockComponents(::Experiments const&);
164
165 MCAPI void
166 $spawnAfterBreak(::BlockSource& region, ::Block const&, ::BlockPos const& pos, ::ResourceDropsContext const&) const;
167 // NOLINTEND
168
169public:
170 // vftables
171 // NOLINTBEGIN
172 MCNAPI static void** $vftable();
173 // NOLINTEND
174};
Definition AABB.h:18
Definition ActorBlockBase.h:6
Definition Actor.h:103
Definition BlockActor.h:32
Definition BlockPlaceEvent.h:16
Definition BlockPlayerInteractEvent.h:17
Definition BlockQueuedTickEvent.h:16
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:38
Definition Experiments.h:14
Definition GetCollisionShapeInterface.h:13
Definition HashedString.h:5
Definition IConstBlockSource.h:24
Definition ItemFrameBlock.h:31
static MCAPI void ** $vftable()
Definition ItemInstance.h:16
Definition Player.h:119
Definition Vec3.h:10
Definition optional_ref.h:10
Definition ResourceDropsContext.h:12