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