LeviLamina
Loading...
Searching...
No Matches
CropBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/optional_ref.h"
7#include "mc/world/item/FertilizerType.h"
8#include "mc/world/level/block/FoliageBlock.h"
9
10// auto generated forward declare list
11// clang-format off
12class AABB;
13class Actor;
14class Block;
15class BlockActor;
16class BlockPos;
17class BlockSource;
18class Experiments;
21class ItemInstance;
22namespace BlockEvents { class BlockRandomTickEvent; }
23// clang-format on
24
25class CropBlock : public ::FoliageBlock {
26public:
27 // virtual functions
28 // NOLINTBEGIN
29 // vIndex: 81
30 virtual bool mayPlaceOn(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
31
32 // vIndex: 87
33 virtual void neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const
34 /*override*/;
35
36 // vIndex: 138
37 virtual bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
38
39 // vIndex: 118
40 virtual int getVariant(::Block const& block) const /*override*/;
41
42 // vIndex: 90
43 virtual ::ItemInstance asItemInstance(::Block const&, ::BlockActor const*) const /*override*/;
44
45 // vIndex: 5
46 virtual ::AABB getCollisionShape(
47 ::Block const&,
49 ::BlockPos const&,
51 ) const /*override*/;
52
53 // vIndex: 9
54 virtual ::AABB const&
55 getOutline(::Block const& block, ::IConstBlockSource const&, ::BlockPos const& pos, ::AABB& bufferValue) const
56 /*override*/;
57
58 // vIndex: 100
59 virtual void executeEvent(
60 ::BlockSource& region,
61 ::BlockPos const& pos,
62 ::Block const& block,
63 ::std::string const& eventName,
64 ::Actor& sourceEntity
65 ) const /*override*/;
66
67 // vIndex: 3
68 virtual bool
69 hasTag(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, ::std::string const& tagName) const
70 /*override*/;
71
72 // vIndex: 150
73 virtual ::ItemInstance const getBaseSeed() const;
74
75 // vIndex: 74
76 virtual bool
77 onFertilized(::BlockSource& region, ::BlockPos const& pos, ::Actor* actor, ::FertilizerType fType) const
78 /*override*/;
79
80 // vIndex: 76
81 virtual bool canBeFertilized(::BlockSource& region, ::BlockPos const& pos, ::Block const& aboveBlock) const
82 /*override*/;
83
84 // vIndex: 131
85 virtual void _addHardCodedBlockComponents(::Experiments const& experiments) /*override*/;
86
87 // vIndex: 0
88 virtual ~CropBlock() /*override*/ = default;
89 // NOLINTEND
90
91public:
92 // member functions
93 // NOLINTBEGIN
94 MCAPI void randomTick(::BlockEvents::BlockRandomTickEvent& eventData) const;
95 // NOLINTEND
96
97public:
98 // virtual function thunks
99 // NOLINTBEGIN
100 MCFOLD bool $mayPlaceOn(::BlockSource& region, ::BlockPos const& pos) const;
101
102 MCAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
103
104 MCAPI bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
105
106 MCAPI int $getVariant(::Block const& block) const;
107
108 MCAPI ::ItemInstance $asItemInstance(::Block const&, ::BlockActor const*) const;
109
110 MCFOLD ::AABB $getCollisionShape(
111 ::Block const&,
112 ::IConstBlockSource const&,
113 ::BlockPos const&,
115 ) const;
116
117 MCAPI ::AABB const&
118 $getOutline(::Block const& block, ::IConstBlockSource const&, ::BlockPos const& pos, ::AABB& bufferValue) const;
119
120 MCAPI void $executeEvent(
121 ::BlockSource& region,
122 ::BlockPos const& pos,
123 ::Block const& block,
124 ::std::string const& eventName,
125 ::Actor& sourceEntity
126 ) const;
127
128 MCAPI bool
129 $hasTag(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, ::std::string const& tagName) const;
130
131 MCAPI ::ItemInstance const $getBaseSeed() const;
132
133 MCAPI bool
134 $onFertilized(::BlockSource& region, ::BlockPos const& pos, ::Actor* actor, ::FertilizerType fType) const;
135
136 MCFOLD bool $canBeFertilized(::BlockSource& region, ::BlockPos const& pos, ::Block const& aboveBlock) const;
137
138 MCAPI void $_addHardCodedBlockComponents(::Experiments const& experiments);
139 // NOLINTEND
140
141public:
142 // vftables
143 // NOLINTBEGIN
144 MCNAPI static void** $vftable();
145 // NOLINTEND
146};
Definition AABB.h:18
Definition Actor.h:102
Definition BlockActor.h:32
Definition BlockRandomTickEvent.h:16
Definition BlockPos.h:17
Definition BlockSource.h:66
Definition Block.h:37
Definition CropBlock.h:25
static MCAPI void ** $vftable()
Definition Experiments.h:14
Definition FoliageBlock.h:23
Definition GetCollisionShapeInterface.h:13
Definition IConstBlockSource.h:24
Definition ItemInstance.h:15
Definition optional_ref.h:10
Definition BlockRandomTickEvent.h:13