LeviLamina
Loading...
Searching...
No Matches
FollowOwnerGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/AutomaticID.h"
7#include "mc/world/actor/TempEPtr.h"
8#include "mc/world/actor/ai/goal/Goal.h"
9
10// auto generated forward declare list
11// clang-format off
12class Dimension;
13class Mob;
15class Player;
16// clang-format on
17
18class FollowOwnerGoal : public ::Goal {
19public:
20 // member variables
21 // NOLINTBEGIN
22 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
23 ::ll::TypedStorage<8, 40, ::TempEPtr<::Mob>> mOwner;
24 ::ll::TypedStorage<4, 4, int> mTimeToRecalculatePath;
25 ::ll::TypedStorage<4, 4, float> mSpeed;
26 ::ll::TypedStorage<4, 4, float> mStartDistance;
27 ::ll::TypedStorage<4, 4, float> mStopDistance;
28 ::ll::TypedStorage<4, 4, float> mMaxDistance;
29 ::ll::TypedStorage<1, 1, bool> mOldAvoidWater;
30 ::ll::TypedStorage<1, 1, bool> mOldAvoidPortals;
31 ::ll::TypedStorage<1, 1, bool> mCanTeleport;
32 ::ll::TypedStorage<1, 1, bool> mIgnoreVibrations;
33 ::ll::TypedStorage<4, 4, int> mPostTeleportDistance;
34 ::ll::TypedStorage<1, 1, bool> mRandomizeAndCheckForClearanceWhenTeleporting;
35 ::ll::TypedStorage<1, 1, bool> mKeepFollowingAfterTeleporting;
36 // NOLINTEND
37
38public:
39 // prevent constructor by default
40 FollowOwnerGoal& operator=(FollowOwnerGoal const&);
41 FollowOwnerGoal(FollowOwnerGoal const&);
42 FollowOwnerGoal();
43
44public:
45 // virtual functions
46 // NOLINTBEGIN
47 virtual bool canUse() /*override*/;
48
49 virtual bool canContinueToUse() /*override*/;
50
51 virtual void start() /*override*/;
52
53 virtual void stop() /*override*/;
54
55 virtual void tick() /*override*/;
56
57 virtual void appendDebugInfo(::std::string& str) const /*override*/;
58
59 virtual void
60 onPlayerDimensionChanged(::Player* player, ::DimensionType fromDimension, ::DimensionType toDimension) /*override*/;
61
62 virtual ~FollowOwnerGoal() /*override*/ = default;
63 // NOLINTEND
64
65public:
66 // member functions
67 // NOLINTBEGIN
68 MCAPI FollowOwnerGoal(
69 ::Mob& mob,
70 float speed,
71 float startDistance,
72 float stopDistance,
73 bool canTeleport,
74 int postTeleportDistance,
75 bool ignoreVibrations,
76 float maxDistance
77 );
78
79 MCAPI bool _canReachOwner(::Mob& owner, ::NavigationComponent& navigationComponent) const;
80 // NOLINTEND
81
82public:
83 // constructor thunks
84 // NOLINTBEGIN
85 MCAPI void* $ctor(
86 ::Mob& mob,
87 float speed,
88 float startDistance,
89 float stopDistance,
90 bool canTeleport,
91 int postTeleportDistance,
92 bool ignoreVibrations,
93 float maxDistance
94 );
95 // NOLINTEND
96
97public:
98 // virtual function thunks
99 // NOLINTBEGIN
100 MCAPI bool $canUse();
101
102 MCAPI bool $canContinueToUse();
103
104 MCAPI void $start();
105
106 MCAPI void $stop();
107
108 MCAPI void $tick();
109
110 MCAPI void $appendDebugInfo(::std::string& str) const;
111
112 MCAPI void $onPlayerDimensionChanged(::Player* player, ::DimensionType fromDimension, ::DimensionType toDimension);
113
114
115 // NOLINTEND
116
117public:
118 // vftables
119 // NOLINTBEGIN
120 MCNAPI static void** $vftable();
121 // NOLINTEND
122};
Definition Dimension.h:85
static MCAPI void ** $vftable()
Definition Goal.h:14
Definition Mob.h:50
Definition NavigationComponent.h:19
Definition Player.h:125