LeviLamina
Loading...
Searching...
No Matches
FollowMobGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/ActorFilterGroup.h"
7#include "mc/world/actor/TempEPtr.h"
8#include "mc/world/actor/ai/goal/BaseGoal.h"
9
10// auto generated forward declare list
11// clang-format off
12class Actor;
13class Mob;
14// clang-format on
15
16class FollowMobGoal : public ::BaseGoal {
17public:
18 // member variables
19 // NOLINTBEGIN
20 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
21 ::ll::TypedStorage<8, 64, ::ActorFilterGroup> mFilters;
22 ::ll::TypedStorage<8, 40, ::TempEPtr<::Mob>> mFollowingMob;
23 ::ll::TypedStorage<8, 32, ::std::string> mPreferredActorType;
24 ::ll::TypedStorage<4, 4, float> mSpeedMultiplier;
25 ::ll::TypedStorage<4, 4, float> mStopDistance;
26 ::ll::TypedStorage<4, 4, int> mTimeToRecalcPath;
27 ::ll::TypedStorage<4, 4, int> mSearchRange;
28 ::ll::TypedStorage<1, 1, bool> mUseHomePositionRestriction;
29 // NOLINTEND
30
31public:
32 // prevent constructor by default
33 FollowMobGoal& operator=(FollowMobGoal const&);
34 FollowMobGoal(FollowMobGoal const&);
35 FollowMobGoal();
36
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 virtual bool canUse() /*override*/;
41
42 virtual bool canContinueToUse() /*override*/;
43
44 virtual void start() /*override*/;
45
46 virtual void stop() /*override*/;
47
48 virtual void tick() /*override*/;
49
50 virtual void appendDebugInfo(::std::string& str) const /*override*/;
51 // NOLINTEND
52
53public:
54 // member functions
55 // NOLINTBEGIN
56 MCAPI FollowMobGoal(
57 ::Mob& mob,
58 float speedMultiplier,
59 float stopDistance,
60 int searchRange,
61 bool useHomePositionRestriction,
62 ::std::string const& preferredActorType,
63 ::ActorFilterGroup const& filters
64 );
65
66 MCAPI ::gsl::span<::gsl::not_null<::Actor*>> _findCandidateMobs();
67
68 MCAPI void setFilters(::ActorFilterGroup& filters);
69 // NOLINTEND
70
71public:
72 // constructor thunks
73 // NOLINTBEGIN
74 MCAPI void* $ctor(
75 ::Mob& mob,
76 float speedMultiplier,
77 float stopDistance,
78 int searchRange,
79 bool useHomePositionRestriction,
80 ::std::string const& preferredActorType,
81 ::ActorFilterGroup const& filters
82 );
83 // NOLINTEND
84
85public:
86 // virtual function thunks
87 // NOLINTBEGIN
88 MCAPI bool $canUse();
89
90 MCAPI bool $canContinueToUse();
91
92 MCAPI void $start();
93
94 MCAPI void $stop();
95
96 MCAPI void $tick();
97
98 MCAPI void $appendDebugInfo(::std::string& str) const;
99
100
101 // NOLINTEND
102
103public:
104 // vftables
105 // NOLINTBEGIN
106 MCNAPI static void** $vftable();
107 // NOLINTEND
108};
Definition ActorFilterGroup.h:19
Definition Actor.h:125
static MCAPI void ** $vftable()
Definition Mob.h:57