Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
HarvestFarmBlockGoal.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 Mob;
13struct GoalId;
14// clang-format on
15
16class HarvestFarmBlockGoal : public ::BaseMoveToBlockGoal {
17public:
18 // HarvestFarmBlockGoal inner types define
19 enum class Task : int {
20 None = -1,
21 Reap = 0,
22 Sow = 1,
23 };
24
25public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<4, 4, int> mMaximumTicksUntilSearch;
29 ::ll::TypedStorage<4, 4, int> mSearchCooldownMaximumTicks;
30 ::ll::TypedStorage<4, 4, int> mTaskCooldownTicks;
31 ::ll::TypedStorage<4, 4, int> mInventorySeedsIndex;
32 ::ll::TypedStorage<4, 4, ::HarvestFarmBlockGoal::Task> mCurrentTask;
33 // NOLINTEND
34
35public:
36 // prevent constructor by default
37 HarvestFarmBlockGoal();
38
39public:
40 // virtual functions
41 // NOLINTBEGIN
42 virtual bool canUse() /*override*/;
43
44 virtual bool canContinueToUse() /*override*/;
45
46 virtual void start() /*override*/;
47
48 virtual void stop() /*override*/;
49
50 virtual void tick() /*override*/;
51
52 virtual void appendDebugInfo(::std::string& str) const /*override*/;
53
54 virtual bool isValidTarget(::BlockSource& region, ::BlockPos const& pos) /*override*/;
55 // NOLINTEND
56
57public:
58 // member functions
59 // NOLINTBEGIN
60 MCNAPI HarvestFarmBlockGoal(::Mob& mob, ::std::string name, ::GoalId const& goalId);
61
63
64 MCNAPI bool trySowCrop(::BlockSource& region, ::BlockPos const& farmlandPos);
65 // NOLINTEND
66
67public:
68 // constructor thunks
69 // NOLINTBEGIN
70 MCNAPI void* $ctor(::Mob& mob, ::std::string name, ::GoalId const& goalId);
71 // NOLINTEND
72
73public:
74 // virtual function thunks
75 // NOLINTBEGIN
76 MCNAPI bool $canUse();
77
78 MCNAPI bool $canContinueToUse();
79
80 MCNAPI void $start();
81
82 MCNAPI void $stop();
83
84 MCAPI void $tick();
85
86 MCNAPI void $appendDebugInfo(::std::string& str) const;
87
88 MCNAPI bool $isValidTarget(::BlockSource& region, ::BlockPos const& pos);
89
90
91 // NOLINTEND
92
93public:
94 // vftables
95 // NOLINTBEGIN
96 MCNAPI static void** $vftable();
97 // NOLINTEND
98};
MCAPI void $tick()
Definition BlockPos.h:14
Definition BlockSource.h:72
MCAPI HarvestFarmBlockGoal(::Mob &mob, ::std::string name, ::GoalId const &goalId)
MCAPI bool $canContinueToUse()
MCAPI bool $canUse()
MCAPI void * $ctor(::Mob &mob, ::std::string name, ::GoalId const &goalId)
MCAPI void $appendDebugInfo(::std::string &str) const
MCAPI int findInventorySlotForFarmSeeds()
MCAPI bool trySowCrop(::BlockSource &region, ::BlockPos const &farmlandPos)
MCAPI bool $isValidTarget(::BlockSource &region, ::BlockPos const &pos)
static MCAPI void ** $vftable()
MCAPI void $start()
MCAPI void $stop()
Definition Mob.h:58
Definition GoalId.h:5