LeviLamina
Loading...
Searching...
No Matches
SwimWithEntityGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/TempEPtr.h"
7#include "mc/world/actor/ai/goal/Goal.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
12class Mob;
13struct MobDescriptor;
14// clang-format on
15
16class SwimWithEntityGoal : public ::Goal {
17public:
18 // SwimWithEntityGoal inner types define
19 enum class EntityGoals : int {
20 CatchUpToEntity = 0,
21 MatchEntityDirection = 1,
22 };
23
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
28 ::ll::TypedStorage<8, 40, ::TempEPtr<::Actor>> mFollowing;
29 ::ll::TypedStorage<4, 4, int> mIntervalRefreshTicks;
30 ::ll::TypedStorage<4, 4, int> mIntervalTicks;
31 ::ll::TypedStorage<4, 4, float> mChanceToStop;
32 ::ll::TypedStorage<4, 4, float> mSuccessRate;
33 ::ll::TypedStorage<4, 4, float> mCatchUpThreshold;
34 ::ll::TypedStorage<4, 4, float> mMatchDirectionThreshold;
35 ::ll::TypedStorage<4, 4, float> mCatchUpMultiplier;
36 ::ll::TypedStorage<4, 4, float> mSpeedMultiplier;
37 ::ll::TypedStorage<4, 4, float> mSearchRange;
38 ::ll::TypedStorage<4, 4, float> mStopDistance;
39 ::ll::TypedStorage<4, 4, ::SwimWithEntityGoal::EntityGoals> mCurrentGoal;
40 ::ll::TypedStorage<8, 24, ::std::vector<::MobDescriptor>> mTargetTypes;
41 // NOLINTEND
42
43public:
44 // prevent constructor by default
45 SwimWithEntityGoal& operator=(SwimWithEntityGoal const&);
46 SwimWithEntityGoal(SwimWithEntityGoal const&);
47 SwimWithEntityGoal();
48
49public:
50 // virtual functions
51 // NOLINTBEGIN
52 virtual bool canUse() /*override*/;
53
54 virtual bool canContinueToUse() /*override*/;
55
56 virtual bool canBeInterrupted() /*override*/;
57
58 virtual void start() /*override*/;
59
60 virtual void stop() /*override*/;
61
62 virtual void tick() /*override*/;
63
64 virtual void appendDebugInfo(::std::string& str) const /*override*/;
65
66 virtual ~SwimWithEntityGoal() /*override*/ = default;
67 // NOLINTEND
68
69public:
70 // member functions
71 // NOLINTBEGIN
72 MCAPI bool _canSwimWith(::Actor& entity);
73
74 MCAPI bool _setWantedMob();
75 // NOLINTEND
76
77public:
78 // virtual function thunks
79 // NOLINTBEGIN
80 MCAPI bool $canUse();
81
82 MCAPI bool $canContinueToUse();
83
84 MCFOLD bool $canBeInterrupted();
85
86 MCAPI void $start();
87
88 MCAPI void $stop();
89
90 MCAPI void $tick();
91
92 MCAPI void $appendDebugInfo(::std::string& str) const;
93
94
95 // NOLINTEND
96
97public:
98 // vftables
99 // NOLINTBEGIN
100 MCNAPI static void** $vftable();
101 // NOLINTEND
102};
Definition Actor.h:106
Definition Goal.h:14
Definition Mob.h:51
static MCAPI void ** $vftable()
Definition MobDescriptor.h:8