LeviLamina
Loading...
Searching...
No Matches
AbstractCandleBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/block/BlockType.h"
7
8// auto generated forward declare list
9// clang-format off
10class Actor;
11class Block;
12class BlockPos;
13class BlockSource;
14class Experiments;
15class Vec3;
17struct Brightness;
18namespace BlockEvents { class BlockQueuedTickEvent; }
19// clang-format on
20
21class AbstractCandleBlock : public ::BlockType {
22public:
23 // virtual functions
24 // NOLINTBEGIN
25 virtual bool hasVariableLighting() const /*override*/;
26
27 virtual bool isInteractiveBlock() const /*override*/;
28
29 virtual bool isLavaBlocking() const /*override*/;
30
31 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
32 /*override*/;
33
34 virtual void animateTickBedrockLegacy(::BlockAnimateTickData const& tickData) const /*override*/;
35
36 virtual ::Brightness getLightEmission(::Block const& block) const /*override*/;
37
38 virtual void entityInside(::BlockSource& region, ::BlockPos const& pos, ::Actor& entity) const /*override*/;
39
40 virtual void _onHitByActivatingAttack(::BlockSource& region, ::BlockPos const& pos, ::Actor*) const /*override*/;
41
42 virtual void _addHardCodedBlockComponents(::Experiments const&) /*override*/;
43
44 virtual int _getNumCandles(::Block const&) const;
45
46 virtual void _iterateCandles(::Block const&, ::BlockPos const&, ::std::function<void(::Vec3 const&, int)>) const;
47
48 virtual void _tryLightOnFire(::BlockSource&, ::BlockPos const&, ::Actor*) const;
49
50 virtual ~AbstractCandleBlock() /*override*/ = default;
51 // NOLINTEND
52
53public:
54 // member functions
55 // NOLINTBEGIN
56 MCAPI void _addExtinguishEffects(::Block const&, ::BlockSource& region, ::BlockPos const& pos) const;
57
58 MCAPI void _checkForWaterlogging(::BlockSource& region, ::BlockPos const& pos) const;
59
60 MCAPI void
61 _extinguish(::Actor* extinguisher, ::Block const& block, ::BlockSource& region, ::BlockPos const& pos) const;
62
63 MCAPI void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
64 // NOLINTEND
65
66public:
67 // virtual function thunks
68 // NOLINTBEGIN
69 MCFOLD bool $hasVariableLighting() const;
70
71 MCFOLD bool $isInteractiveBlock() const;
72
73 MCFOLD bool $isLavaBlocking() const;
74
75 MCAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
76
77 MCAPI void $animateTickBedrockLegacy(::BlockAnimateTickData const& tickData) const;
78
79 MCAPI ::Brightness $getLightEmission(::Block const& block) const;
80
81 MCAPI void $entityInside(::BlockSource& region, ::BlockPos const& pos, ::Actor& entity) const;
82
83 MCAPI void $_onHitByActivatingAttack(::BlockSource& region, ::BlockPos const& pos, ::Actor*) const;
84
85
86 // NOLINTEND
87};
Definition AbstractCandleBlock.h:21
Definition Actor.h:105
Definition BlockQueuedTickEvent.h:16
Definition BlockPos.h:19
Definition BlockSource.h:68
Definition Block.h:43
Definition Experiments.h:14
Definition Vec3.h:10
Definition BlockAnimateTickData.h:14
Definition Brightness.h:8