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