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: 142
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
63 clip(::Block const& block, ::BlockSource const& region, ::BlockPos const& pos, ::Vec3 const& A, ::Vec3 const& B, ::ShapeType, ::optional_ref<::GetCollisionShapeInterface const>)
64 const /*override*/;
65
66 // vIndex: 23
67 virtual bool canProvideSupport(::Block const& block, uchar face, ::BlockSupportType) const /*override*/;
68
69 // vIndex: 87
70 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
71 /*override*/;
72
73 // vIndex: 84
74 virtual bool breaksFallingBlocks(::Block const& block, ::BaseGameVersion const version) const /*override*/;
75
76 // vIndex: 89
77 virtual ::Block const* playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const
78 /*override*/;
79
80 // vIndex: 90
81 virtual ::ItemInstance asItemInstance(::Block const&, ::BlockActor const*) const /*override*/;
82
83 // vIndex: 88
84 virtual bool getSecondPart(::IConstBlockSource const& region, ::BlockPos const& pos, ::BlockPos& out) const
85 /*override*/;
86
87 // vIndex: 131
88 virtual void _addHardCodedBlockComponents(::Experiments const&) /*override*/;
89
90 // vIndex: 0
91 virtual ~PistonArmBlock() /*override*/ = default;
92 // NOLINTEND
93
94public:
95 // member functions
96 // NOLINTBEGIN
97 MCAPI void _getCollisions(::AABB& armBaseAABB, ::AABB& armAABB, ::AABB& frontAABB, uchar facingDir) const;
98
99 MCAPI void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
100 // NOLINTEND
101
102public:
103 // destructor thunk
104 // NOLINTBEGIN
105
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
130 $clip(::Block const& block, ::BlockSource const& region, ::BlockPos const& pos, ::Vec3 const& A, ::Vec3 const& B, ::ShapeType, ::optional_ref<::GetCollisionShapeInterface const>)
131 const;
132
133 MCAPI bool $canProvideSupport(::Block const& block, uchar face, ::BlockSupportType) const;
134
135 MCFOLD void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
136
137 MCFOLD bool $breaksFallingBlocks(::Block const& block, ::BaseGameVersion const version) const;
138
139 MCAPI ::Block const* $playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const;
140
141 MCAPI ::ItemInstance $asItemInstance(::Block const&, ::BlockActor const*) const;
142
143 MCAPI bool $getSecondPart(::IConstBlockSource const& region, ::BlockPos const& pos, ::BlockPos& out) const;
144
145 MCAPI void $_addHardCodedBlockComponents(::Experiments const&);
146 // NOLINTEND
147
148public:
149 // vftables
150 // NOLINTBEGIN
151 MCAPI static void** $vftable();
152 // NOLINTEND
153};
Definition AABB.h:16
Definition BaseGameVersion.h:13
Definition BlockActor.h:32
Definition BlockQueuedTickEvent.h:15
Definition BlockLegacy.h:88
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:36
Definition Experiments.h:14
Definition GetCollisionShapeInterface.h:13
Definition HitResult.h:19
Definition IConstBlockSource.h:24
Definition ItemInstance.h:16
Definition PistonArmBlock.h:30
Definition Player.h:119
Definition Vec3.h:10
Definition optional_ref.h:10