LeviLamina
Loading...
Searching...
No Matches
LightBlock.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/BlockLegacy.h"
8#include "mc/world/level/block/BlockRenderLayer.h"
9#include "mc/world/level/block/BlockSupportType.h"
10
11// auto generated forward declare list
12// clang-format off
13class AABB;
14class Block;
15class BlockItem;
16class BlockPos;
17class BlockSource;
19class HashedString;
21class Player;
23// clang-format on
24
25class LightBlock : public ::BlockLegacy {
26public:
27 // member variables
28 // NOLINTBEGIN
29 ::ll::TypedStorage<8, 48, ::HashedString const> mNextLightLevel;
30 // NOLINTEND
31
32public:
33 // virtual functions
34 // NOLINTBEGIN
35 // vIndex: 7
36 virtual bool addCollisionShapes(
37 ::Block const& block,
38 ::IConstBlockSource const& region,
39 ::BlockPos const& pos,
40 ::AABB const* intersectTestBox,
41 ::std::vector<::AABB>& inoutBoxes,
43 ) const /*override*/;
44
45 // vIndex: 5
46 virtual ::AABB
48 const /*override*/;
49
50 // vIndex: 71
51 virtual bool isFilteredOut(::BlockRenderLayer heldItemRenderLayer) const /*override*/;
52
53 // vIndex: 80
54 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar face) const /*override*/;
55
56 // vIndex: 79
57 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
58
59 // vIndex: 82
60 virtual bool tryToPlace(
61 ::BlockSource& region,
62 ::BlockPos const& pos,
63 ::Block const& block,
64 ::ActorBlockSyncMessage const* syncMsg
65 ) const /*override*/;
66
67 // vIndex: 23
68 virtual bool canProvideSupport(::Block const&, uchar, ::BlockSupportType) const /*override*/;
69
70 // vIndex: 98
71 virtual bool canBeBuiltOver(::BlockSource& region, ::BlockPos const& pos, ::BlockItem const& item) const
72 /*override*/;
73
74 // vIndex: 139
75 virtual bool use(::Player& player, ::BlockPos const& pos, uchar) const /*override*/;
76
77 // vIndex: 0
78 virtual ~LightBlock() /*override*/ = default;
79 // NOLINTEND
80
81public:
82 // destructor thunk
83 // NOLINTBEGIN
84
85 // NOLINTEND
86
87public:
88 // virtual function thunks
89 // NOLINTBEGIN
90 MCFOLD bool $addCollisionShapes(
91 ::Block const& block,
92 ::IConstBlockSource const& region,
93 ::BlockPos const& pos,
94 ::AABB const* intersectTestBox,
95 ::std::vector<::AABB>& inoutBoxes,
97 ) const;
98
99 MCFOLD ::AABB
101 const;
102
103 MCAPI bool $isFilteredOut(::BlockRenderLayer heldItemRenderLayer) const;
104
105 MCFOLD bool $mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar face) const;
106
107 MCFOLD bool $mayPlace(::BlockSource& region, ::BlockPos const& pos) const;
108
109 MCFOLD bool $tryToPlace(
110 ::BlockSource& region,
111 ::BlockPos const& pos,
112 ::Block const& block,
113 ::ActorBlockSyncMessage const* syncMsg
114 ) const;
115
116 MCFOLD bool $canProvideSupport(::Block const&, uchar, ::BlockSupportType) const;
117
118 MCAPI bool $canBeBuiltOver(::BlockSource& region, ::BlockPos const& pos, ::BlockItem const& item) const;
119
120 MCAPI bool $use(::Player& player, ::BlockPos const& pos, uchar) const;
121 // NOLINTEND
122
123public:
124 // vftables
125 // NOLINTBEGIN
126 MCAPI static void** $vftable();
127 // NOLINTEND
128};
Definition AABB.h:16
Definition BlockItem.h:23
Definition BlockLegacy.h:88
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:36
Definition GetCollisionShapeInterface.h:13
Definition HashedString.h:5
Definition IConstBlockSource.h:24
Definition LightBlock.h:25
Definition Player.h:119
Definition optional_ref.h:10
Definition ActorBlockSyncMessage.h:10