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 ActorInternalEvent; }
23namespace BlockEvents { class BlockRandomTickEvent; }
24// clang-format on
25
26class CropBlock : public ::FoliageBlock {
27public:
28 // prevent constructor by default
29 CropBlock();
30
31public:
32 // virtual functions
33 // NOLINTBEGIN
34 virtual bool mayPlaceOn(::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 bool canSurvive(::BlockSource& region, ::BlockPos const& pos) const /*override*/;
40
41 virtual int getVariant(::Block const& block) const /*override*/;
42
43 virtual ::ItemInstance asItemInstance(::Block const&, ::BlockActor const*) const /*override*/;
44
45 virtual ::AABB getCollisionShape(
46 ::Block const&,
48 ::BlockPos const&,
50 ) const /*override*/;
51
52 virtual ::AABB const& getOutline(
53 ::Block const& block,
54 ::IConstBlockSource const& region,
55 ::BlockPos const& pos,
56 ::AABB& bufferValue
57 ) const /*override*/;
58
59 virtual bool
60 hasTag(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, ::std::string const& tagName) const
61 /*override*/;
62
63 virtual ::ItemInstance const getBaseSeed() const;
64
65 virtual bool
66 onFertilized(::BlockSource& region, ::BlockPos const& pos, ::Actor* actor, ::FertilizerType fType) const
67 /*override*/;
68
69 virtual bool canBeFertilized(::BlockSource& region, ::BlockPos const& pos, ::Block const& aboveBlock) const
70 /*override*/;
71
72 virtual void _addHardCodedBlockComponents(::Experiments const& experiments) /*override*/;
73
74 virtual ~CropBlock() /*override*/ = default;
75 // NOLINTEND
76
77public:
78 // member functions
79 // NOLINTBEGIN
80 MCAPI CropBlock(::std::string const& nameId, int id);
81
82 MCAPI void onEvent(::BlockEvents::ActorInternalEvent& event) const;
83
84 MCAPI void randomTick(::BlockEvents::BlockRandomTickEvent& eventData) const;
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 MCFOLD bool $mayPlaceOn(::BlockSource& region, ::BlockPos const& pos) const;
97
98 MCAPI void $neighborChanged(::BlockSource& region, ::BlockPos const& pos, ::BlockPos const& neighborPos) const;
99
100 MCAPI bool $canSurvive(::BlockSource& region, ::BlockPos const& pos) const;
101
102 MCAPI int $getVariant(::Block const& block) const;
103
104 MCAPI ::ItemInstance $asItemInstance(::Block const&, ::BlockActor const*) const;
105
106 MCFOLD ::AABB $getCollisionShape(
107 ::Block const&,
108 ::IConstBlockSource const&,
109 ::BlockPos const&,
111 ) const;
112
113 MCAPI ::AABB const& $getOutline(
114 ::Block const& block,
115 ::IConstBlockSource const& region,
116 ::BlockPos const& pos,
117 ::AABB& bufferValue
118 ) const;
119
120 MCAPI bool
121 $hasTag(::BlockSource& region, ::BlockPos const& pos, ::Block const& block, ::std::string const& tagName) const;
122
123 MCAPI ::ItemInstance const $getBaseSeed() const;
124
125 MCAPI bool
126 $onFertilized(::BlockSource& region, ::BlockPos const& pos, ::Actor* actor, ::FertilizerType fType) const;
127
128 MCFOLD bool $canBeFertilized(::BlockSource& region, ::BlockPos const& pos, ::Block const& aboveBlock) const;
129
130 MCAPI void $_addHardCodedBlockComponents(::Experiments const& experiments);
131
132
133 // NOLINTEND
134
135public:
136 // vftables
137 // NOLINTBEGIN
138 MCAPI static void** $vftable();
139 // NOLINTEND
140};
Definition AABB.h:18
Definition Actor.h:106
Definition BlockActor.h:30
Definition ActorInternalEvent.h:16
Definition BlockRandomTickEvent.h:16
Definition BlockPos.h:19
Definition BlockSource.h:71
Definition Block.h:43
Definition Experiments.h:14
Definition FoliageBlock.h:23
Definition GetCollisionShapeInterface.h:13
Definition IConstBlockSource.h:25
Definition ItemInstance.h:15
Definition optional_ref.h:10