LeviLamina
Loading...
Searching...
No Matches
GrassBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Color.h"
7#include "mc/world/item/FertilizerType.h"
8#include "mc/world/level/block/BlockLegacy.h"
9#include "mc/world/level/levelgen/synth/PerlinSimplexNoise.h"
10
11// auto generated forward declare list
12// clang-format off
13class Actor;
14class Block;
15class BlockPos;
16class BlockSource;
17class Experiments;
18class ItemStack;
19class Randomize;
20struct Brightness;
21namespace BlockEvents { class BlockPlayerInteractEvent; }
22namespace BlockEvents { class BlockRandomTickEvent; }
23// clang-format on
24
25class GrassBlock : public ::BlockLegacy {
26public:
27 // member variables
28 // NOLINTBEGIN
29 ::ll::TypedStorage<8, 24, ::std::vector<::mce::Color>> mSideColors;
30 ::ll::TypedStorage<8, 40, ::PerlinSimplexNoise const> mBiomeInfoNoise;
31 // NOLINTEND
32
33public:
34 // prevent constructor by default
35 GrassBlock();
36
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 // vIndex: 73
41 virtual bool
42 onFertilized(::BlockSource& region, ::BlockPos const& pos, ::Actor* actor, ::FertilizerType fType) const
43 /*override*/;
44
45 // vIndex: 75
46 virtual bool canBeFertilized(::BlockSource& region, ::BlockPos const& pos, ::Block const& aboveBlock) const
47 /*override*/;
48
49 // vIndex: 92
50 virtual int calcVariant(::BlockSource& region, ::BlockPos const& pos, ::mce::Color const& baseColor) const
51 /*override*/;
52
53 // vIndex: 45
54 virtual bool canBeOriginalSurface() const /*override*/;
55
56 // vIndex: 82
57 virtual bool tryToTill(::BlockSource& region, ::BlockPos const& pos, ::Actor& entity, ::ItemStack& item) const
58 /*override*/;
59
60 // vIndex: 130
61 virtual void _addHardCodedBlockComponents(::Experiments const&) /*override*/;
62
63 // vIndex: 0
64 virtual ~GrassBlock() /*override*/ = default;
65 // NOLINTEND
66
67public:
68 // member functions
69 // NOLINTBEGIN
70 MCAPI GrassBlock(::std::string const& nameId, int id);
71
72 MCAPI bool _canBeGrass(::BlockSource const& region, ::BlockPos const& pos) const;
73
74 MCAPI bool _plantGrass(::BlockSource& region, ::BlockPos const& abovePos, ::Randomize& randomize) const;
75
76 MCAPI void randomTick(::BlockEvents::BlockRandomTickEvent& eventData) const;
77
78 MCFOLD void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
79 // NOLINTEND
80
81public:
82 // static variables
83 // NOLINTBEGIN
84 MCAPI static ::Brightness const& MIN_BRIGHTNESS();
85 // NOLINTEND
86
87public:
88 // constructor thunks
89 // NOLINTBEGIN
90 MCAPI void* $ctor(::std::string const& nameId, int id);
91 // NOLINTEND
92
93public:
94 // virtual function thunks
95 // NOLINTBEGIN
96 MCAPI bool
97 $onFertilized(::BlockSource& region, ::BlockPos const& pos, ::Actor* actor, ::FertilizerType fType) const;
98
99 MCFOLD bool $canBeFertilized(::BlockSource& region, ::BlockPos const& pos, ::Block const& aboveBlock) const;
100
101 MCAPI int $calcVariant(::BlockSource& region, ::BlockPos const& pos, ::mce::Color const& baseColor) const;
102
103 MCFOLD bool $canBeOriginalSurface() const;
104
105 MCAPI bool $tryToTill(::BlockSource& region, ::BlockPos const& pos, ::Actor& entity, ::ItemStack& item) const;
106
107 MCAPI void $_addHardCodedBlockComponents(::Experiments const&);
108 // NOLINTEND
109
110public:
111 // vftables
112 // NOLINTBEGIN
113 MCNAPI static void** $vftable();
114 // NOLINTEND
115};
Definition Actor.h:103
Definition BlockPlayerInteractEvent.h:18
Definition BlockRandomTickEvent.h:16
Definition BlockLegacy.h:86
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:38
Definition Experiments.h:14
Definition GrassBlock.h:25
static MCAPI void ** $vftable()
Definition ItemStack.h:25
Definition Randomize.h:13
Definition Color.h:13
Definition BlockRandomTickEvent.h:13
Definition Brightness.h:8