LeviLamina
Loading...
Searching...
No Matches
BannerBlock.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/ActorBlockBase.h"
8#include "mc/world/level/block/BlockType.h"
9
10// auto generated forward declare list
11// clang-format off
12class AABB;
13class Actor;
15class Block;
16class BlockActor;
17class BlockPos;
18class BlockSource;
19class Experiments;
22class ItemInstance;
23namespace BlockEvents { class BlockPlaceEvent; }
24namespace BlockEvents { class BlockQueuedTickEvent; }
25// clang-format on
26
27class BannerBlock : public ::ActorBlock {
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<1, 1, bool> mOnGround;
32 // NOLINTEND
33
34public:
35 // virtual functions
36 // NOLINTBEGIN
37 virtual ::AABB const& getVisualShape(::Block const& block, ::AABB&) const /*override*/;
38
39 virtual ::AABB getCollisionShape(
40 ::Block const&,
42 ::BlockPos const&,
44 ) const /*override*/;
45
46 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
47 /*override*/;
48
49 virtual bool checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const
50 /*override*/;
51
52 virtual ::ItemInstance asItemInstance(::Block const&, ::BlockActor const* blockActor) const /*override*/;
53
54 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
55
56 virtual int getVariant(::Block const& block) const /*override*/;
57
58 virtual void _addHardCodedBlockComponents(::Experiments const&) /*override*/;
59
60 virtual ~BannerBlock() /*override*/ = default;
61 // NOLINTEND
62
63public:
64 // member functions
65 // NOLINTBEGIN
66 MCAPI void onPlace(::BlockEvents::BlockPlaceEvent& eventData) const;
67
68 MCFOLD void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
69 // NOLINTEND
70
71public:
72 // static functions
73 // NOLINTBEGIN
74 MCAPI static ::ItemInstance itemInstanceFromBlockEntity(::gsl::not_null<::BannerBlockActor const*> banner);
75 // NOLINTEND
76
77public:
78 // static variables
79 // NOLINTBEGIN
80 MCAPI static ::AABB& EAST_AABB();
81
82 MCAPI static ::AABB& NORTH_AABB();
83
84 MCAPI static ::AABB& SOUTH_AABB();
85
86 MCAPI static ::AABB& STANDING_AABB();
87
88 MCAPI static ::AABB& WEST_AABB();
89 // NOLINTEND
90
91public:
92 // virtual function thunks
93 // NOLINTBEGIN
94 MCAPI ::AABB const& $getVisualShape(::Block const& block, ::AABB&) const;
95
96 MCFOLD ::AABB $getCollisionShape(
97 ::Block const&,
99 ::BlockPos const&,
101 ) const;
102
103 MCAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
104
105 MCFOLD bool $checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const;
106
107 MCAPI ::ItemInstance $asItemInstance(::Block const&, ::BlockActor const* blockActor) const;
108
109 MCAPI bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
110
111 MCFOLD int $getVariant(::Block const& block) const;
112
113 MCAPI void $_addHardCodedBlockComponents(::Experiments const&);
114
115
116 // NOLINTEND
117
118public:
119 // vftables
120 // NOLINTBEGIN
121 MCAPI static void** $vftable();
122 // NOLINTEND
123};
Definition AABB.h:18
Definition Actor.h:105
Definition BannerBlockActor.h:22
Definition BannerBlock.h:27
Definition BlockActor.h:32
Definition BlockPlaceEvent.h:16
Definition BlockQueuedTickEvent.h:16
Definition BlockPos.h:19
Definition BlockSource.h:68
static MCAPI void ** $vftable()
Definition Block.h:43
Definition Experiments.h:14
Definition GetCollisionShapeInterface.h:13
Definition IConstBlockSource.h:25
Definition ItemInstance.h:15
Definition optional_ref.h:10