LeviLamina
Loading...
Searching...
No Matches
BrushableBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/item/FertilizerType.h"
7#include "mc/world/level/block/FallingBlock.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
12class Block;
13class BlockActor;
14class BlockPos;
15class BlockSource;
16class BlockType;
17class HashedString;
18class ItemInstance;
19namespace BlockEvents { class BlockQueuedTickEvent; }
20namespace mce { class Color; }
21// clang-format on
22
23class BrushableBlock : public ::FallingBlock {
24public:
25 // BrushableBlock inner types define
26 enum class Type : int {
27 Sand = 0,
28 Gravel = 1,
29 };
30
31public:
32 // member variables
33 // NOLINTBEGIN
34 ::ll::TypedStorage<4, 4, ::BrushableBlock::Type> mType;
35 // NOLINTEND
36
37public:
38 // prevent constructor by default
39 BrushableBlock();
40
41public:
42 // virtual functions
43 // NOLINTBEGIN
44 virtual ::BlockType& init() /*override*/;
45
46 virtual void onLand(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
47
48 virtual ::ItemInstance asItemInstance(::Block const& block, ::BlockActor const* blockActor) const /*override*/;
49
50 virtual ::mce::Color getDustColor(::Block const&) const /*override*/;
51
52 virtual ::std::string getDustParticleName(::Block const&) const /*override*/;
53
54 virtual int getVariant(::Block const& block) const /*override*/;
55
56 virtual bool onFertilized(::BlockSource& region, ::BlockPos const& pos, ::Actor*, ::FertilizerType) const
57 /*override*/;
58
59 virtual bool mayConsumeFertilizer(::BlockSource&) const /*override*/;
60
61 virtual bool canBeFertilized(::BlockSource& aboveBlock, ::BlockPos const&, ::Block const&) const /*override*/;
62 // NOLINTEND
63
64public:
65 // member functions
66 // NOLINTBEGIN
67 MCAPI BrushableBlock(::std::string const& nameID, int id);
68
69 MCAPI void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
70 // NOLINTEND
71
72public:
73 // static variables
74 // NOLINTBEGIN
75 MCAPI static ::HashedString const& EmptyBrushedBlock();
76 // NOLINTEND
77
78public:
79 // constructor thunks
80 // NOLINTBEGIN
81 MCAPI void* $ctor(::std::string const& nameID, int id);
82 // NOLINTEND
83
84public:
85 // virtual function thunks
86 // NOLINTBEGIN
87 MCAPI ::BlockType& $init();
88
89 MCAPI void $onLand(::BlockSource& region, ::BlockPos const& pos) const;
90
91 MCAPI ::ItemInstance $asItemInstance(::Block const& block, ::BlockActor const* blockActor) const;
92
93 MCAPI ::mce::Color $getDustColor(::Block const&) const;
94
95 MCAPI ::std::string $getDustParticleName(::Block const&) const;
96
97 MCAPI int $getVariant(::Block const& block) const;
98
99 MCFOLD bool $onFertilized(::BlockSource& region, ::BlockPos const& pos, ::Actor*, ::FertilizerType) const;
100
101 MCFOLD bool $mayConsumeFertilizer(::BlockSource&) const;
102
103 MCFOLD bool $canBeFertilized(::BlockSource& aboveBlock, ::BlockPos const&, ::Block const&) const;
104
105
106 // NOLINTEND
107
108public:
109 // vftables
110 // NOLINTBEGIN
111 MCAPI static void** $vftable();
112 // NOLINTEND
113};
Definition Actor.h:125
Definition BlockActor.h:30
Definition BlockQueuedTickEvent.h:18
Definition BlockPos.h:21
Definition BlockSource.h:73
Definition BlockType.h:84
Definition Block.h:69
static MCAPI void ** $vftable()
Definition HashedString.h:5
Definition ItemInstance.h:15
Definition Color.h:13