LeviLamina
Loading...
Searching...
No Matches
CandleCakeBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/platform/brstd/function_ref.h"
7#include "mc/world/level/block/AbstractCandleBlock.h"
8
9// auto generated forward declare list
10// clang-format off
11class AABB;
12class Actor;
13class Block;
14class BlockActor;
15class BlockPos;
16class BlockSource;
17class ItemInstance;
18class Vec3;
19namespace BlockEvents { class BlockPlayerInteractEvent; }
20// clang-format on
21
22class CandleCakeBlock : public ::AbstractCandleBlock {
23public:
24 // prevent constructor by default
25 CandleCakeBlock();
26
27public:
28 // virtual functions
29 // NOLINTBEGIN
30 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar face) const /*override*/;
31
32 virtual ::AABB const& getVisualShape(::Block const&, ::AABB& bufferAABB) const /*override*/;
33
34 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
35
36 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
37 /*override*/;
38
39 virtual ::ItemInstance asItemInstance(::Block const&, ::BlockActor const*) const /*override*/;
40
41 virtual bool hasComparatorSignal() const /*override*/;
42
43 virtual int getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, uchar dir) const
44 /*override*/;
45
46 virtual bool checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const
47 /*override*/;
48
49 virtual bool isCandleCakeBlock() const /*override*/;
50
51 virtual int _getNumCandles(::Block const&) const /*override*/;
52
53 virtual void _iterateCandles(
54 ::Block const& block,
55 ::BlockPos const& pos,
56 ::brstd::function_ref<void(::Vec3 const&, int)> callback
57 ) const /*override*/;
58
59 virtual void _tryLightOnFire(::BlockSource& region, ::BlockPos const& pos, ::Actor* sourceActor) const /*override*/;
60 // NOLINTEND
61
62public:
63 // member functions
64 // NOLINTBEGIN
65 MCAPI CandleCakeBlock(::std::string const& nameId, int id);
66
67 MCAPI void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
68 // NOLINTEND
69
70public:
71 // static functions
72 // NOLINTBEGIN
73#ifdef LL_PLAT_C
74 MCAPI static ::Block const& getCandleFromCandleCake(::Block const& candleCakeBlock);
75#endif
76
77 MCAPI static bool tryLightFire(::BlockSource& region, ::BlockPos const& pos, ::Actor* sourceActor);
78 // NOLINTEND
79
80public:
81 // constructor thunks
82 // NOLINTBEGIN
83 MCAPI void* $ctor(::std::string const& nameId, int id);
84 // NOLINTEND
85
86public:
87 // virtual function thunks
88 // NOLINTBEGIN
89 MCFOLD bool $mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar face) const;
90
91 MCAPI ::AABB const& $getVisualShape(::Block const&, ::AABB& bufferAABB) const;
92
93 MCFOLD bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
94
95 MCAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
96
97 MCFOLD ::ItemInstance $asItemInstance(::Block const&, ::BlockActor const*) const;
98
99 MCFOLD bool $hasComparatorSignal() const;
100
101 MCFOLD int
102 $getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, uchar dir) const;
103
104 MCFOLD bool $checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const;
105
106 MCFOLD bool $isCandleCakeBlock() const;
107
108 MCFOLD int $_getNumCandles(::Block const&) const;
109
110 MCAPI void $_iterateCandles(
111 ::Block const& block,
112 ::BlockPos const& pos,
113 ::brstd::function_ref<void(::Vec3 const&, int)> callback
114 ) const;
115
116 MCAPI void $_tryLightOnFire(::BlockSource& region, ::BlockPos const& pos, ::Actor* sourceActor) const;
117
118
119 // NOLINTEND
120
121public:
122 // vftables
123 // NOLINTBEGIN
124 MCAPI static void** $vftable();
125 // NOLINTEND
126};
Definition AABB.h:18
Definition AbstractCandleBlock.h:21
static MCAPI void ** $vftable()
Definition Actor.h:113
Definition BlockActor.h:29
Definition BlockPlayerInteractEvent.h:18
Definition BlockPos.h:17
Definition BlockSource.h:71
Definition Block.h:41
Definition ItemInstance.h:15
Definition Vec3.h:10
Definition function_ref.h:60