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;
21class ItemInstance;
22namespace BlockEvents { class BlockPlaceEvent; }
23namespace BlockEvents { class BlockQueuedTickEvent; }
24// clang-format on
25
26class BannerBlock : public ::ActorBlock {
27public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<1, 1, bool> mOnGround;
31 // NOLINTEND
32
33public:
34 // prevent constructor by default
35 BannerBlock();
36
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 virtual ::AABB const& getVisualShape(::Block const& block, ::AABB&) const /*override*/;
41
42 virtual ::AABB getCollisionShape(
43 ::Block const&,
45 ::BlockPos const&,
47 ) const /*override*/;
48
49 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
50 /*override*/;
51
52 virtual bool checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const
53 /*override*/;
54
55 virtual ::ItemInstance asItemInstance(::Block const&, ::BlockActor const* blockActor) const /*override*/;
56
57 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
58
59 virtual int getVariant(::Block const& block) const /*override*/;
60 // NOLINTEND
61
62public:
63 // member functions
64 // NOLINTBEGIN
65 MCAPI BannerBlock(::std::string const& nameId, int id, bool onGround);
66
67 MCAPI void onPlace(::BlockEvents::BlockPlaceEvent& eventData) const;
68
69 MCFOLD void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
70 // NOLINTEND
71
72public:
73 // static functions
74 // NOLINTBEGIN
75 MCAPI static ::ItemInstance itemInstanceFromBlockEntity(::gsl::not_null<::BannerBlockActor const*> banner);
76 // NOLINTEND
77
78public:
79 // static variables
80 // NOLINTBEGIN
81 MCAPI static ::AABB& EAST_AABB();
82
83 MCAPI static ::AABB& NORTH_AABB();
84
85 MCAPI static ::AABB& SOUTH_AABB();
86
87 MCAPI static ::AABB& STANDING_AABB();
88
89 MCAPI static ::AABB& WEST_AABB();
90 // NOLINTEND
91
92public:
93 // constructor thunks
94 // NOLINTBEGIN
95 MCAPI void* $ctor(::std::string const& nameId, int id, bool onGround);
96 // NOLINTEND
97
98public:
99 // virtual function thunks
100 // NOLINTBEGIN
101 MCAPI ::AABB const& $getVisualShape(::Block const& block, ::AABB&) const;
102
103 MCFOLD ::AABB $getCollisionShape(
104 ::Block const&,
105 ::IConstBlockSource const&,
106 ::BlockPos const&,
108 ) const;
109
110 MCAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
111
112 MCFOLD bool $checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const;
113
114 MCAPI ::ItemInstance $asItemInstance(::Block const&, ::BlockActor const* blockActor) const;
115
116 MCAPI bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
117
118 MCFOLD int $getVariant(::Block const& block) const;
119
120
121 // NOLINTEND
122
123public:
124 // vftables
125 // NOLINTBEGIN
126 MCAPI static void** $vftable();
127 // NOLINTEND
128};
Definition AABB.h:18
Definition Actor.h:113
Definition BannerBlockActor.h:21
Definition BlockActor.h:29
Definition BlockPlaceEvent.h:16
Definition BlockQueuedTickEvent.h:16
Definition BlockPos.h:17
Definition BlockSource.h:71
Definition Block.h:41
Definition GetCollisionShapeInterface.h:13
Definition IConstBlockSource.h:25
Definition ItemInstance.h:15
Definition optional_ref.h:10