LeviLamina
Loading...
Searching...
No Matches
FertilizeFarmBlockGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/ai/goal/BaseMoveToBlockGoal.h"
7
8// auto generated forward declare list
9// clang-format off
10class BlockPos;
11class BlockSource;
12class Item;
13class Mob;
14// clang-format on
15
16class FertilizeFarmBlockGoal : public ::BaseMoveToBlockGoal {
17public:
18 // member variables
19 // NOLINTBEGIN
20 ::ll::TypedStorage<8, 8, uint64> mNextFertilizeStartTick;
21 ::ll::TypedStorage<4, 4, int> mMaxFertilizerUsage;
22 ::ll::TypedStorage<4, 4, int> mSearchCooldownMaximumTicks;
23 ::ll::TypedStorage<4, 4, int> mInventoryFertilizerIndex;
24 ::ll::TypedStorage<4, 4, int> mTimesFertilized;
25 // NOLINTEND
26
27public:
28 // prevent constructor by default
29 FertilizeFarmBlockGoal();
30
31public:
32 // virtual functions
33 // NOLINTBEGIN
34 virtual bool canUse() /*override*/;
35
36 virtual bool canContinueToUse() /*override*/;
37
38 virtual void start() /*override*/;
39
40 virtual void stop() /*override*/;
41
42 virtual void tick() /*override*/;
43
44 virtual void appendDebugInfo(::std::string& str) const /*override*/;
45
46 virtual bool isValidTarget(::BlockSource& region, ::BlockPos const& pos) /*override*/;
47 // NOLINTEND
48
49public:
50 // member functions
51 // NOLINTBEGIN
52 MCAPI explicit FertilizeFarmBlockGoal(::Mob& mob);
53
54 MCAPI int findInventorySlotForItem(::std::function<bool(::Item const&)> itemCallback) const;
55
56 MCAPI bool tryFertilizeCrop(::BlockSource& region, ::BlockPos const& farmlandPos);
57 // NOLINTEND
58
59public:
60 // constructor thunks
61 // NOLINTBEGIN
62 MCAPI void* $ctor(::Mob& mob);
63 // NOLINTEND
64
65public:
66 // virtual function thunks
67 // NOLINTBEGIN
68 MCAPI bool $canUse();
69
70 MCAPI bool $canContinueToUse();
71
72 MCAPI void $start();
73
74 MCAPI void $stop();
75
76 MCAPI void $tick();
77
78 MCAPI void $appendDebugInfo(::std::string& str) const;
79
80 MCAPI bool $isValidTarget(::BlockSource& region, ::BlockPos const& pos);
81
82
83 // NOLINTEND
84
85public:
86 // vftables
87 // NOLINTBEGIN
88 MCNAPI static void** $vftable();
89 // NOLINTEND
90};
Definition BlockPos.h:21
Definition BlockSource.h:73
static MCAPI void ** $vftable()
Definition Item.h:71
Definition Mob.h:57