Skip to content
LeviMC
English
AutoLightDark
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 MCNAPI CandleCakeBlock(::std::string const& nameId, int id);
66
67 MCNAPI void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
68 // NOLINTEND
69
70public:
71 // static functions
72 // NOLINTBEGIN
73#ifdef LL_PLAT_C
74 MCNAPI static ::Block const& getCandleCakeFromCandle(::Block const& candleBlock);
75
76 MCNAPI static ::Block const& getCandleFromCandleCake(::Block const& candleCakeBlock);
77#endif
78
79 MCNAPI static bool tryLightFire(::BlockSource& region, ::BlockPos const& pos, ::Actor* sourceActor);
80 // NOLINTEND
81
82public:
83 // constructor thunks
84 // NOLINTBEGIN
85 MCNAPI void* $ctor(::std::string const& nameId, int id);
86 // NOLINTEND
87
88public:
89 // virtual function thunks
90 // NOLINTBEGIN
91 MCNAPI bool $mayPlace(::BlockSource& region, ::BlockPos const& pos, uchar face) const;
92
93 MCNAPI ::AABB const& $getVisualShape(::Block const&, ::AABB& bufferAABB) const;
94
95 MCNAPI bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
96
97 MCNAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
98
99 MCNAPI ::ItemInstance $asItemInstance(::Block const&, ::BlockActor const*) const;
100
101 MCNAPI bool $hasComparatorSignal() const;
102
103 MCNAPI int
104 $getComparatorSignal(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, uchar dir) const;
105
106 MCNAPI bool $checkIsPathable(::Actor& entity, ::BlockPos const& lastPathPos, ::BlockPos const& pathPos) const;
107
108 MCNAPI bool $isCandleCakeBlock() const;
109
110 MCNAPI int $_getNumCandles(::Block const&) const;
111
112 MCNAPI void $_iterateCandles(
113 ::Block const& block,
114 ::BlockPos const& pos,
115 ::brstd::function_ref<void(::Vec3 const&, int)> callback
116 ) const;
117
118 MCNAPI void $_tryLightOnFire(::BlockSource& region, ::BlockPos const& pos, ::Actor* sourceActor) const;
119
120
121 // NOLINTEND
122
123public:
124 // vftables
125 // NOLINTBEGIN
126 MCNAPI static void** $vftable();
127 // NOLINTEND
128};
Definition AABB.h:18
Definition AbstractCandleBlock.h:21
Definition Actor.h:116
Definition BlockActor.h:30
Definition BlockPlayerInteractEvent.h:18
Definition BlockPos.h:14
Definition BlockSource.h:72
Definition Block.h:42
static MCAPI void ** $vftable()
MCAPI bool $checkIsPathable(::Actor &entity, ::BlockPos const &lastPathPos, ::BlockPos const &pathPos) const
MCAPI::ItemInstance $asItemInstance(::Block const &, ::BlockActor const *) const
MCAPI bool $mayPlace(::BlockSource &region, ::BlockPos const &pos, uchar face) const
MCAPI int $_getNumCandles(::Block const &) const
MCAPI void $_iterateCandles(::Block const &block, ::BlockPos const &pos, ::brstd::function_ref< void(::Vec3 const &, int)> callback) const
MCAPI void use(::BlockEvents::BlockPlayerInteractEvent &eventData) const
MCAPI::AABB const & $getVisualShape(::Block const &, ::AABB &bufferAABB) const
MCAPI void * $ctor(::std::string const &nameId, int id)
MCAPI void $_tryLightOnFire(::BlockSource &region, ::BlockPos const &pos, ::Actor *sourceActor) const
static MCAPI bool tryLightFire(::BlockSource &region, ::BlockPos const &pos, ::Actor *sourceActor)
MCAPI void $neighborChanged(::BlockSource &region, ::BlockPos const &pos, ::BlockPos const &neighborPos) const
MCAPI bool $canSurvive(::BlockSource &region, ::BlockPos const &pos) const
MCAPI bool $isCandleCakeBlock() const
MCAPI bool $hasComparatorSignal() const
MCAPI CandleCakeBlock(::std::string const &nameId, int id)
MCAPI int $getComparatorSignal(::BlockSource &region, ::BlockPos const &pos, ::Block const &block, uchar dir) const
Definition ItemInstance.h:15
Definition Vec3.h:10
Definition function_ref.h:60