LeviLamina
Loading...
Searching...
No Matches
PistonArmBlock.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/ShapeType.h"
8#include "mc/world/level/block/BlockLegacy.h"
9#include "mc/world/level/block/BlockSupportType.h"
10#include "mc/world/level/block/PistonBlock.h"
11
12// auto generated forward declare list
13// clang-format off
14class AABB;
15class BaseGameVersion;
16class Block;
17class BlockActor;
18class BlockPos;
19class BlockSource;
20class Experiments;
22class HitResult;
24class ItemInstance;
25class Player;
26class Vec3;
27namespace BlockEvents { class BlockQueuedTickEvent; }
28// clang-format on
29
31public:
32 // member variables
33 // NOLINTBEGIN
34 ::ll::TypedStorage<4, 4, ::PistonBlock::Type> mType;
35 // NOLINTEND
36
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 // vIndex: 138
41 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
42
43 // vIndex: 5
44 virtual ::AABB getCollisionShape(
45 ::Block const& block,
46 ::IConstBlockSource const& region,
47 ::BlockPos const& pos,
49 ) const /*override*/;
50
51 // vIndex: 7
52 virtual bool addCollisionShapes(
53 ::Block const& block,
54 ::IConstBlockSource const& region,
55 ::BlockPos const& pos,
56 ::AABB const* intersectTestBox,
57 ::std::vector<::AABB>& inoutBoxes,
59 ) const /*override*/;
60
61 // vIndex: 4
62 virtual ::HitResult clip(
63 ::Block const& block,
64 ::BlockSource const& region,
65 ::BlockPos const& pos,
66 ::Vec3 const& A,
67 ::Vec3 const& B,
68 ::ShapeType shapeType,
70 ) const /*override*/;
71
72 // vIndex: 22
73 virtual bool canProvideSupport(::Block const& block, uchar face, ::BlockSupportType) const /*override*/;
74
75 // vIndex: 86
76 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
77 /*override*/;
78
79 // vIndex: 83
80 virtual bool breaksFallingBlocks(::Block const& block, ::BaseGameVersion const version) const /*override*/;
81
82 // vIndex: 88
83 virtual ::Block const* playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const
84 /*override*/;
85
86 // vIndex: 89
87 virtual ::ItemInstance asItemInstance(::Block const&, ::BlockActor const*) const /*override*/;
88
89 // vIndex: 87
90 virtual bool getSecondPart(::IConstBlockSource const& region, ::BlockPos const& pos, ::BlockPos& out) const
91 /*override*/;
92
93 // vIndex: 130
94 virtual void _addHardCodedBlockComponents(::Experiments const&) /*override*/;
95
96 // vIndex: 0
97 virtual ~PistonArmBlock() /*override*/ = default;
98 // NOLINTEND
99
100public:
101 // member functions
102 // NOLINTBEGIN
103 MCAPI void _getCollisions(::AABB& armBaseAABB, ::AABB& armAABB, ::AABB& frontAABB, uchar facingDir) const;
104
105 MCAPI void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
106 // NOLINTEND
107
108public:
109 // virtual function thunks
110 // NOLINTBEGIN
111 MCAPI bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
112
113 MCAPI ::AABB $getCollisionShape(
114 ::Block const& block,
115 ::IConstBlockSource const& region,
116 ::BlockPos const& pos,
118 ) const;
119
120 MCAPI bool $addCollisionShapes(
121 ::Block const& block,
122 ::IConstBlockSource const& region,
123 ::BlockPos const& pos,
124 ::AABB const* intersectTestBox,
125 ::std::vector<::AABB>& inoutBoxes,
127 ) const;
128
129 MCAPI ::HitResult $clip(
130 ::Block const& block,
131 ::BlockSource const& region,
132 ::BlockPos const& pos,
133 ::Vec3 const& A,
134 ::Vec3 const& B,
135 ::ShapeType shapeType,
137 ) const;
138
139 MCAPI bool $canProvideSupport(::Block const& block, uchar face, ::BlockSupportType) const;
140
141 MCFOLD void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
142
143 MCFOLD bool $breaksFallingBlocks(::Block const& block, ::BaseGameVersion const version) const;
144
145 MCAPI ::Block const* $playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const;
146
147 MCAPI ::ItemInstance $asItemInstance(::Block const&, ::BlockActor const*) const;
148
149 MCAPI bool $getSecondPart(::IConstBlockSource const& region, ::BlockPos const& pos, ::BlockPos& out) const;
150
151 MCAPI void $_addHardCodedBlockComponents(::Experiments const&);
152 // NOLINTEND
153
154public:
155 // vftables
156 // NOLINTBEGIN
157 MCNAPI static void** $vftable();
158 // NOLINTEND
159};
Definition AABB.h:18
Definition BaseGameVersion.h:8
Definition BlockActor.h:32
Definition BlockQueuedTickEvent.h:16
Definition BlockLegacy.h:88
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:38
Definition Experiments.h:14
Definition GetCollisionShapeInterface.h:13
Definition HitResult.h:19
Definition IConstBlockSource.h:24
Definition ItemInstance.h:16
Definition PistonArmBlock.h:30
static MCAPI void ** $vftable()
Definition Player.h:119
Definition Vec3.h:10
Definition optional_ref.h:10