LeviLamina
Loading...
Searching...
No Matches
MoveToBlockGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Vec3.h"
7#include "mc/util/TargetSelectionMethod.h"
8#include "mc/world/actor/ActorFilterGroup.h"
9#include "mc/world/actor/ai/goal/Goal.h"
10#include "mc/world/level/BlockPos.h"
11
12// auto generated forward declare list
13// clang-format off
15class Block;
16class ItemDescriptor;
17class Mob;
18// clang-format on
19
20class MoveToBlockGoal : public ::Goal {
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<4, 4, int> mGiveUpTicks;
25 ::ll::TypedStorage<4, 4, int> mStayDurationTicks;
26 ::ll::TypedStorage<4, 4, float> mSpeedMod;
27 ::ll::TypedStorage<4, 4, float> mGoalRadiusSq;
28 ::ll::TypedStorage<4, 12, ::BlockPos> mTargetBlockPos;
29 ::ll::TypedStorage<4, 12, ::Vec3> mTargetPositionOffset;
30 ::ll::TypedStorage<4, 4, float> mChanceToStart;
31 ::ll::TypedStorage<4, 4, int> mInterval;
32 ::ll::TypedStorage<4, 4, int> mSearchRange;
33 ::ll::TypedStorage<4, 4, int> mSearchHeight;
34 ::ll::TypedStorage<1, 1, ::TargetSelectionMethod const> mMethod;
35 ::ll::TypedStorage<8, 24, ::std::vector<::ActorDefinitionTrigger> const> mOnReachTriggers;
36 ::ll::TypedStorage<8, 24, ::std::vector<::ActorDefinitionTrigger> const> mOnStayCompletedTriggers;
37 ::ll::TypedStorage<8, 24, ::std::vector<::ItemDescriptor> const> mTargetBlockDescriptors;
38 ::ll::TypedStorage<8, 8, uint64> mCooldownCounter;
39 ::ll::TypedStorage<8, 8, uint64 const> mCooldownTimeoutTime;
40 ::ll::TypedStorage<1, 1, bool> mReachedTarget;
41 ::ll::TypedStorage<4, 4, int> mNextStartTick;
42 ::ll::TypedStorage<4, 4, int> mStayTicks;
43 ::ll::TypedStorage<4, 4, int> mTravelTicks;
44 ::ll::TypedStorage<4, 12, ::BlockPos> mStartPos;
45 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
46 ::ll::TypedStorage<1, 1, bool> mHasSentOnReachEvent;
47 ::ll::TypedStorage<8, 64, ::ActorFilterGroup> mTargetBlockFilter;
48 // NOLINTEND
49
50public:
51 // prevent constructor by default
52 MoveToBlockGoal& operator=(MoveToBlockGoal const&);
55
56public:
57 // virtual functions
58 // NOLINTBEGIN
59 // vIndex: 1
60 virtual bool canUse() /*override*/;
61
62 // vIndex: 2
63 virtual bool canContinueToUse() /*override*/;
64
65 // vIndex: 6
66 virtual void tick() /*override*/;
67
68 // vIndex: 7
69 virtual void appendDebugInfo(::std::string& str) const /*override*/;
70
71 // vIndex: 4
72 virtual void start() /*override*/;
73
74 // vIndex: 5
75 virtual void stop() /*override*/;
76
77 // vIndex: 0
78 virtual ~MoveToBlockGoal() /*override*/;
79 // NOLINTEND
80
81public:
82 // member functions
83 // NOLINTBEGIN
85 ::Mob& mob,
86 float speedModifier,
87 int searchRange,
88 int searchHeight,
89 int tickInterval,
90 int stayDurationTicks,
91 float goalRadius,
92 ::Vec3 targetPositionOffset,
93 float chanceToStart,
94 ::TargetSelectionMethod targetSelectionMethod,
95 ::std::vector<::ActorDefinitionTrigger> onReachTriggers,
96 ::std::vector<::ActorDefinitionTrigger> onStayCompletedTriggers,
97 ::std::vector<::ItemDescriptor> targetBlocks,
98 ::ActorFilterGroup const& targetBlockFilter
99 );
100
101 MCNAPI void _checkIfStuck();
102
103 MCNAPI bool _findTargetBlock();
104
105 MCNAPI bool _isValidTarget(::Block const& candidateBlock) const;
106
107 MCNAPI void _moveToBlock();
108 // NOLINTEND
109
110public:
111 // constructor thunks
112 // NOLINTBEGIN
113 MCNAPI void* $ctor(
114 ::Mob& mob,
115 float speedModifier,
116 int searchRange,
117 int searchHeight,
118 int tickInterval,
119 int stayDurationTicks,
120 float goalRadius,
121 ::Vec3 targetPositionOffset,
122 float chanceToStart,
123 ::TargetSelectionMethod targetSelectionMethod,
124 ::std::vector<::ActorDefinitionTrigger> onReachTriggers,
125 ::std::vector<::ActorDefinitionTrigger> onStayCompletedTriggers,
126 ::std::vector<::ItemDescriptor> targetBlocks,
127 ::ActorFilterGroup const& targetBlockFilter
128 );
129 // NOLINTEND
130
131public:
132 // destructor thunk
133 // NOLINTBEGIN
134 MCNAPI void $dtor();
135 // NOLINTEND
136
137public:
138 // virtual function thunks
139 // NOLINTBEGIN
140 MCNAPI bool $canUse();
141
142 MCNAPI bool $canContinueToUse();
143
144 MCNAPI void $tick();
145
146 MCNAPI void $appendDebugInfo(::std::string& str) const;
147
148 MCNAPI void $start();
149
150 MCNAPI void $stop();
151 // NOLINTEND
152
153public:
154 // vftables
155 // NOLINTBEGIN
156 MCNAPI static void** $vftable();
157 // NOLINTEND
158};
Definition ActorDefinitionTrigger.h:5
Definition ActorFilterGroup.h:16
Definition Block.h:38
Definition Goal.h:14
Definition ItemDescriptor.h:22
Definition Mob.h:47
Definition MoveToBlockGoal.h:20
static MCAPI void ** $vftable()
MCAPI void $start()
MCAPI bool _findTargetBlock()
MCAPI MoveToBlockGoal(::Mob &mob, float speedModifier, int searchRange, int searchHeight, int tickInterval, int stayDurationTicks, float goalRadius, ::Vec3 targetPositionOffset, float chanceToStart, ::TargetSelectionMethod targetSelectionMethod, ::std::vector<::ActorDefinitionTrigger > onReachTriggers, ::std::vector<::ActorDefinitionTrigger > onStayCompletedTriggers, ::std::vector<::ItemDescriptor > targetBlocks, ::ActorFilterGroup const &targetBlockFilter)
MCAPI bool _isValidTarget(::Block const &candidateBlock) const
MCAPI void * $ctor(::Mob &mob, float speedModifier, int searchRange, int searchHeight, int tickInterval, int stayDurationTicks, float goalRadius, ::Vec3 targetPositionOffset, float chanceToStart, ::TargetSelectionMethod targetSelectionMethod, ::std::vector<::ActorDefinitionTrigger > onReachTriggers, ::std::vector<::ActorDefinitionTrigger > onStayCompletedTriggers, ::std::vector<::ItemDescriptor > targetBlocks, ::ActorFilterGroup const &targetBlockFilter)
MCAPI void _checkIfStuck()
MCAPI void _moveToBlock()
MCAPI bool $canUse()
MCAPI void $dtor()
MCAPI void $stop()
MCAPI void $tick()
MCAPI bool $canContinueToUse()
MCAPI void $appendDebugInfo(::std::string &str) const
Definition Vec3.h:10