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 Experiments;
18class ItemInstance;
19class Vec3;
20namespace BlockEvents { class BlockPlayerInteractEvent; }
21// clang-format on
22
24public:
25 // virtual functions
26 // NOLINTBEGIN
27 virtual bool mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar face) const /*override*/;
28
29 virtual ::AABB const& getVisualShape(::Block const&, ::AABB& bufferAABB) const /*override*/;
30
31 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
32
33 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
34 /*override*/;
35
36 virtual ::ItemInstance asItemInstance(::Block const&, ::BlockActor const*) const /*override*/;
37
38 virtual bool hasComparatorSignal() const /*override*/;
39
40 virtual int getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, uchar dir) const
41 /*override*/;
42
43 virtual bool checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const
44 /*override*/;
45
46 virtual bool isCandleCakeBlock() const /*override*/;
47
48 virtual int _getNumCandles(::Block const&) const /*override*/;
49
50 virtual void _iterateCandles(
51 ::Block const& block,
52 ::BlockPos const& pos,
53 ::brstd::function_ref<void(::Vec3 const&, int)> callback
54 ) const /*override*/;
55
56 virtual void _tryLightOnFire(::BlockSource& region, ::BlockPos const& pos, ::Actor* sourceActor) const /*override*/;
57
58 virtual void _addHardCodedBlockComponents(::Experiments const& experiments) /*override*/;
59
60 virtual ~CandleCakeBlock() /*override*/ = default;
61 // NOLINTEND
62
63public:
64 // member functions
65 // NOLINTBEGIN
66 MCAPI void _popCandle(::BlockSource& region, ::BlockPos const& pos) const;
67
68 MCAPI void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
69 // NOLINTEND
70
71public:
72 // static functions
73 // NOLINTBEGIN
74 MCAPI static ::Block const& getCandleCakeFromCandle(::Block const& candleBlock);
75
76 MCAPI static ::Block const& getCandleFromCandleCake(::Block const& candleCakeBlock);
77
78 MCAPI static bool tryLightFire(::BlockSource& region, ::BlockPos const& pos, ::Actor* sourceActor);
79 // NOLINTEND
80
81public:
82 // virtual function thunks
83 // NOLINTBEGIN
84 MCFOLD bool $mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar face) const;
85
86 MCAPI ::AABB const& $getVisualShape(::Block const&, ::AABB& bufferAABB) const;
87
88 MCFOLD bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
89
90 MCAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
91
92 MCFOLD ::ItemInstance $asItemInstance(::Block const&, ::BlockActor const*) const;
93
94 MCFOLD bool $hasComparatorSignal() const;
95
96 MCFOLD int
97 $getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, uchar dir) const;
98
99 MCFOLD bool $checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const;
100
101 MCFOLD bool $isCandleCakeBlock() const;
102
103 MCFOLD int $_getNumCandles(::Block const&) const;
104
105 MCAPI void $_iterateCandles(
106 ::Block const& block,
107 ::BlockPos const& pos,
108 ::brstd::function_ref<void(::Vec3 const&, int)> callback
109 ) const;
110
111 MCAPI void $_tryLightOnFire(::BlockSource& region, ::BlockPos const& pos, ::Actor* sourceActor) const;
112
113 MCAPI void $_addHardCodedBlockComponents(::Experiments const& experiments);
114
115
116 // NOLINTEND
117
118public:
119 // vftables
120 // NOLINTBEGIN
121 MCAPI static void** $vftable();
122 // NOLINTEND
123};
Definition AABB.h:18
Definition AbstractCandleBlock.h:22
Definition Actor.h:106
Definition BlockActor.h:30
Definition BlockPlayerInteractEvent.h:17
Definition BlockPos.h:19
Definition BlockSource.h:71
Definition Block.h:43
Definition CandleCakeBlock.h:23
Definition Experiments.h:14
Definition ItemInstance.h:15
Definition Vec3.h:10
Definition function_ref.h:60