LeviLamina
Loading...
Searching...
No Matches
FenceBlock.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/BlockType.h"
9
10// auto generated forward declare list
11// clang-format off
12class AABB;
13class BaseGameVersion;
14class Block;
15class BlockActor;
16class BlockPos;
17class BlockSource;
19class HitResult;
21class ItemInstance;
22class Material;
23class Player;
24class Vec3;
25// clang-format on
26
27class FenceBlock : public ::BlockType {
28public:
29 // prevent constructor by default
30 FenceBlock();
31
32public:
33 // virtual functions
34 // NOLINTBEGIN
35 virtual ::AABB const& getVisualShapeInWorld(
36 ::Block const& block,
37 ::IConstBlockSource const& region,
38 ::BlockPos const& pos,
39 ::AABB& bufferAABB
40 ) const /*override*/;
41
42 virtual ::AABB getCollisionShape(
43 ::Block const& block,
44 ::IConstBlockSource const& region,
45 ::BlockPos const& pos,
47 ) const /*override*/;
48
49 virtual ::AABB const& getOutline(
50 ::Block const& block,
51 ::IConstBlockSource const& region,
52 ::BlockPos const& pos,
53 ::AABB& bufferValue
54 ) const /*override*/;
55
56 virtual bool addCollisionShapes(
57 ::Block const& block,
58 ::IConstBlockSource const& region,
59 ::BlockPos const& pos,
60 ::AABB const* intersectTestBox,
61 ::std::vector<::AABB>& inoutBoxes,
63 ) const /*override*/;
64
65 virtual ::ItemInstance asItemInstance(::Block const& block, ::BlockActor const*) const /*override*/;
66
67 virtual ::Block const* playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const
68 /*override*/;
69
70 virtual ::std::string buildDescriptionId(::Block const& block) const /*override*/;
71
72 virtual bool isFenceBlock() const /*override*/;
73
74 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
75
76 virtual bool breaksFallingBlocks(::Block const& version, ::BaseGameVersion const) const /*override*/;
77
78 virtual ::HitResult clip(
79 ::Block const& block,
80 ::BlockSource const& region,
81 ::BlockPos const& pos,
82 ::Vec3 const& A,
83 ::Vec3 const& B,
84 ::ShapeType shapeType,
86 ) const /*override*/;
87 // NOLINTEND
88
89public:
90 // member functions
91 // NOLINTBEGIN
92 MCAPI FenceBlock(::std::string const& nameId, int id, ::Material const& material);
93
94 MCAPI void fetchPathableNeighbors(
95 ::std::vector<::BlockPos>& outNeighbors,
96 ::BlockSource& region,
97 ::BlockPos const& pos,
98 ::Vec3 const& entityPos
99 ) const;
100 // NOLINTEND
101
102public:
103 // static variables
104 // NOLINTBEGIN
105 MCAPI static ::BaseGameVersion const& FENCE_DOESNT_BREAK_FALLING_BLOCK_VERSION();
106 // NOLINTEND
107
108public:
109 // constructor thunks
110 // NOLINTBEGIN
111 MCAPI void* $ctor(::std::string const& nameId, int id, ::Material const& material);
112 // NOLINTEND
113
114public:
115 // virtual function thunks
116 // NOLINTBEGIN
117 MCAPI ::AABB const& $getVisualShapeInWorld(
118 ::Block const& block,
119 ::IConstBlockSource const& region,
120 ::BlockPos const& pos,
121 ::AABB& bufferAABB
122 ) const;
123
124 MCAPI ::AABB $getCollisionShape(
125 ::Block const& block,
126 ::IConstBlockSource const& region,
127 ::BlockPos const& pos,
129 ) const;
130
131 MCAPI ::AABB const& $getOutline(
132 ::Block const& block,
133 ::IConstBlockSource const& region,
134 ::BlockPos const& pos,
135 ::AABB& bufferValue
136 ) const;
137
138 MCAPI bool $addCollisionShapes(
139 ::Block const& block,
140 ::IConstBlockSource const& region,
141 ::BlockPos const& pos,
142 ::AABB const* intersectTestBox,
143 ::std::vector<::AABB>& inoutBoxes,
145 ) const;
146
147 MCFOLD ::ItemInstance $asItemInstance(::Block const& block, ::BlockActor const*) const;
148
149 MCAPI ::Block const* $playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const;
150
151 MCAPI ::std::string $buildDescriptionId(::Block const& block) const;
152
153 MCFOLD bool $isFenceBlock() const;
154
155 MCAPI bool $mayPlace(::BlockSource& region, ::BlockPos const& pos) const;
156
157 MCAPI bool $breaksFallingBlocks(::Block const& version, ::BaseGameVersion const) const;
158
159 MCFOLD ::HitResult $clip(
160 ::Block const& block,
161 ::BlockSource const& region,
162 ::BlockPos const& pos,
163 ::Vec3 const& A,
164 ::Vec3 const& B,
165 ::ShapeType shapeType,
167 ) const;
168
169
170 // NOLINTEND
171
172public:
173 // vftables
174 // NOLINTBEGIN
175 MCAPI static void** $vftable();
176 // NOLINTEND
177};
Definition AABB.h:18
Definition BaseGameVersion.h:13
Definition BlockActor.h:30
Definition BlockPos.h:21
Definition BlockSource.h:73
Definition Block.h:69
Definition GetCollisionShapeInterface.h:13
Definition HitResult.h:19
Definition IConstBlockSource.h:24
Definition ItemInstance.h:15
Definition Material.h:8
Definition Player.h:137
Definition Vec3.h:10
Definition optional_ref.h:10