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) const /*override*/;
31
32 virtual ::AABB const& getVisualShape(::Block const& bufferAABB, ::AABB&) 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&, ::BlockPos const&, ::Block const&, uchar) const /*override*/;
44
45 virtual bool checkIsPathable(::Actor&, ::BlockPos const&, ::BlockPos const&) const /*override*/;
46
47 virtual bool isCandleCakeBlock() const /*override*/;
48
49 virtual int _getNumCandles(::Block const&) const /*override*/;
50
51 virtual void _iterateCandles(
52 ::Block const& pos,
53 ::BlockPos const& callback,
54 ::brstd::function_ref<void(::Vec3 const&, int)>
55 ) const /*override*/;
56
57 virtual void _tryLightOnFire(::BlockSource& region, ::BlockPos const& pos, ::Actor* sourceActor) const /*override*/;
58 // NOLINTEND
59
60public:
61 // member functions
62 // NOLINTBEGIN
63 MCAPI CandleCakeBlock(::std::string const& nameId, int id);
64
65 MCAPI void _popCandle(::BlockSource& region, ::BlockPos const& pos) const;
66
67 MCAPI void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
68 // NOLINTEND
69
70public:
71 // static functions
72 // NOLINTBEGIN
73 MCAPI static ::Block const& getCandleCakeFromCandle(::Block const& candleBlock);
74
75 MCAPI static ::Block const& getCandleFromCandleCake(::Block const& candleCakeBlock);
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) const;
90
91 MCAPI ::AABB const& $getVisualShape(::Block const& bufferAABB, ::AABB&) 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 $getComparatorSignal(::BlockSource&, ::BlockPos const&, ::Block const&, uchar) const;
102
103 MCFOLD bool $checkIsPathable(::Actor&, ::BlockPos const&, ::BlockPos const&) const;
104
105 MCFOLD bool $isCandleCakeBlock() const;
106
107 MCFOLD int $_getNumCandles(::Block const&) const;
108
109 MCAPI void $_iterateCandles(
110 ::Block const& pos,
111 ::BlockPos const& callback,
112 ::brstd::function_ref<void(::Vec3 const&, int)>
113 ) const;
114
115 MCAPI void $_tryLightOnFire(::BlockSource& region, ::BlockPos const& pos, ::Actor* sourceActor) const;
116
117
118 // NOLINTEND
119
120public:
121 // vftables
122 // NOLINTBEGIN
123 MCAPI static void** $vftable();
124 // NOLINTEND
125};
Definition AABB.h:18
static MCAPI void ** $vftable()
Definition Actor.h:125
Definition BlockActor.h:30
Definition BlockPlayerInteractEvent.h:20
Definition BlockPos.h:21
Definition BlockSource.h:73
Definition Block.h:69
Definition ItemInstance.h:15
Definition Vec3.h:10
Definition function_ref.h:60