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 Player;
20// clang-format on
21
22class AirBlock : public ::BlockType {
23public:
24 // virtual functions
25 // NOLINTBEGIN
26 virtual ::AABB const&
27 getVisualShapeInWorld(::Block const&, ::IConstBlockSource const&, ::BlockPos const&, ::AABB&) const /*override*/;
28
29 virtual ::AABB const& getVisualShape(::Block const&, ::AABB&) const /*override*/;
30
31 virtual ::AABB const&
32 getOutline(::Block const&, ::IConstBlockSource const&, ::BlockPos const&, ::AABB& bufferValue) const /*override*/;
33
34 virtual bool isObstructingChests(::BlockSource& region, ::BlockPos const& pos, ::Block const& thisBlock) const
35 /*override*/;
36
37 virtual void addAABBs(
38 ::Block const& block,
39 ::IConstBlockSource const& region,
40 ::BlockPos const& pos,
41 ::AABB const* intersectTestBox,
42 ::std::vector<::AABB>& inoutBoxes
43 ) const /*override*/;
44
45 virtual bool addCollisionShapes(
46 ::Block const& block,
47 ::IConstBlockSource const& region,
48 ::BlockPos const& pos,
49 ::AABB const* intersectTestBox,
50 ::std::vector<::AABB>& inoutBoxes,
52 ) const /*override*/;
53
54 virtual ::AABB getCollisionShape(
55 ::Block const&,
57 ::BlockPos const&,
59 ) const /*override*/;
60
61 virtual bool checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const
62 /*override*/;
63
64 virtual bool mayPick() const /*override*/;
65
66 virtual bool mayPick(::BlockSource const& region, ::Block const& block, bool liquid) const /*override*/;
67
68 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar face) const /*override*/;
69
70 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
71
72 virtual bool tryToPlace(
73 ::BlockSource& region,
74 ::BlockPos const& pos,
75 ::Block const& block,
76 ::ActorBlockSyncMessage const* syncMsg
77 ) const /*override*/;
78
79 virtual void
80 destroy(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, ::Actor* entitySource) const
81 /*override*/;
82
83 virtual ::Block const* playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const
84 /*override*/;
85
86 virtual ~AirBlock() /*override*/ = default;
87 // NOLINTEND
88
89public:
90 // virtual function thunks
91 // NOLINTBEGIN
92 MCFOLD ::AABB const&
93 $getVisualShapeInWorld(::Block const&, ::IConstBlockSource const&, ::BlockPos const&, ::AABB&) const;
94
95 MCFOLD ::AABB const& $getVisualShape(::Block const&, ::AABB&) const;
96
97 MCAPI ::AABB const&
98 $getOutline(::Block const&, ::IConstBlockSource const&, ::BlockPos const&, ::AABB& bufferValue) const;
99
100 MCFOLD bool $isObstructingChests(::BlockSource& region, ::BlockPos const& pos, ::Block const& thisBlock) const;
101
102 MCFOLD void $addAABBs(
103 ::Block const& block,
104 ::IConstBlockSource const& region,
105 ::BlockPos const& pos,
106 ::AABB const* intersectTestBox,
107 ::std::vector<::AABB>& inoutBoxes
108 ) const;
109
110 MCFOLD bool $addCollisionShapes(
111 ::Block const& block,
112 ::IConstBlockSource const& region,
113 ::BlockPos const& pos,
114 ::AABB const* intersectTestBox,
115 ::std::vector<::AABB>& inoutBoxes,
117 ) const;
118
119 MCFOLD ::AABB $getCollisionShape(
120 ::Block const&,
121 ::IConstBlockSource const&,
122 ::BlockPos const&,
124 ) const;
125
126 MCFOLD bool $checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const;
127
128 MCFOLD bool $mayPick() const;
129
130 MCFOLD bool $mayPick(::BlockSource const& region, ::Block const& block, bool liquid) const;
131
132 MCFOLD bool $mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar face) const;
133
134 MCFOLD bool $mayPlace(::BlockSource& region, ::BlockPos const& pos) const;
135
136 MCFOLD bool $tryToPlace(
137 ::BlockSource& region,
138 ::BlockPos const& pos,
139 ::Block const& block,
140 ::ActorBlockSyncMessage const* syncMsg
141 ) const;
142
143 MCFOLD void
144 $destroy(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, ::Actor* entitySource) const;
145
146 MCFOLD ::Block const* $playerWillDestroy(::Player& player, ::BlockPos const& pos, ::Block const& block) const;
147
148
149 // NOLINTEND
150
151public:
152 // vftables
153 // NOLINTBEGIN
154 MCNAPI static void** $vftable();
155 // NOLINTEND
156};
Definition AABB.h:18
Definition Actor.h:105
Definition AirBlock.h:22
static MCAPI void ** $vftable()
Definition BlockPos.h:19
Definition BlockSource.h:68
Definition Block.h:43
Definition GetCollisionShapeInterface.h:13
Definition IConstBlockSource.h:25
Definition Player.h:125
Definition optional_ref.h:10
Definition ActorBlockSyncMessage.h:8