LeviLamina
Loading...
Searching...
No Matches
AvoidMobTypeGoal.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/deps/ecs/WeakEntityRef.h"
8#include "mc/deps/shared_types/legacy/LevelSoundEvent.h"
9#include "mc/deps/shared_types/shared_types/FloatRange.h"
10#include "mc/world/actor/ActorDefinitionTrigger.h"
11#include "mc/world/actor/ai/goal/Goal.h"
12#include "mc/world/level/Tick.h"
13
14// auto generated forward declare list
15// clang-format off
16class Actor;
17class Mob;
18class Path;
19struct MobDescriptor;
20// clang-format on
21
22class AvoidMobTypeGoal : public ::Goal {
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
27 ::ll::TypedStorage<1, 1, bool> mIgnoreVisibility;
28 ::ll::TypedStorage<8, 32, ::std::string> mAvoidIdentifier;
29 ::ll::TypedStorage<4, 4, int> mAvoidTargetPositionXZDistance;
30 ::ll::TypedStorage<4, 4, int> mAvoidTargetPositionYDistance;
31 ::ll::TypedStorage<4, 4, float> mMaximumDistance;
32 ::ll::TypedStorage<4, 4, float> mMaximumFlee;
33 ::ll::TypedStorage<4, 4, float> mProbabilityPerStrength;
34 ::ll::TypedStorage<4, 4, float> mRiverSpeedModifier;
35 ::ll::TypedStorage<4, 4, float> mSprintDistanceSquared;
36 ::ll::TypedStorage<4, 4, float> mSprintSpeedModifier;
37 ::ll::TypedStorage<4, 4, float> mWalkSpeedModifier;
38 ::ll::TypedStorage<1, 1, bool> mRemoveTarget;
39 ::ll::TypedStorage<8, 104, ::ActorDefinitionTrigger> mOnEscapeTrigger;
40 ::ll::TypedStorage<4, 4, ::SharedTypes::Legacy::LevelSoundEvent> mSoundEvent;
41 ::ll::TypedStorage<4, 8, ::SharedTypes::FloatRange> mSoundIntervalRange;
42 ::ll::TypedStorage<8, 24, ::WeakEntityRef> mToAvoid;
43 ::ll::TypedStorage<4, 12, ::Vec3> mPosition;
44 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Path>> mPath;
45 ::ll::TypedStorage<8, 8, ::Tick> mNextSoundEventTick;
46 ::ll::TypedStorage<8, 24, ::std::vector<::MobDescriptor>> mAvoidMobs;
47 // NOLINTEND
48
49public:
50 // prevent constructor by default
51 AvoidMobTypeGoal& operator=(AvoidMobTypeGoal const&);
52 AvoidMobTypeGoal(AvoidMobTypeGoal const&);
53 AvoidMobTypeGoal();
54
55public:
56 // virtual functions
57 // NOLINTBEGIN
58 virtual bool canUse() /*override*/;
59
60 virtual bool canContinueToUse() /*override*/;
61
62 virtual void start() /*override*/;
63
64 virtual void stop() /*override*/;
65
66 virtual void tick() /*override*/;
67
68 virtual void appendDebugInfo(::std::string& str) const /*override*/;
69
70 virtual ~AvoidMobTypeGoal() /*override*/;
71 // NOLINTEND
72
73public:
74 // member functions
75 // NOLINTBEGIN
76 MCAPI bool canFindAvoidPath(::Actor* actor);
77
78 MCAPI bool canFindAvoidPos(::Actor& entity);
79
80 MCAPI ::Actor* findNearestEntityToAvoid(float dist);
81 // NOLINTEND
82
83public:
84 // destructor thunk
85 // NOLINTBEGIN
86 MCAPI void $dtor();
87 // NOLINTEND
88
89public:
90 // virtual function thunks
91 // NOLINTBEGIN
92 MCAPI bool $canUse();
93
94 MCAPI bool $canContinueToUse();
95
96 MCAPI void $start();
97
98 MCAPI void $stop();
99
100 MCAPI void $tick();
101
102 MCAPI void $appendDebugInfo(::std::string& str) const;
103
104
105 // NOLINTEND
106
107public:
108 // vftables
109 // NOLINTBEGIN
110 MCNAPI static void** $vftable();
111 // NOLINTEND
112};
Definition Actor.h:105
static MCAPI void ** $vftable()
Definition Goal.h:14
Definition Mob.h:50
Definition Path.h:16
Definition MobDescriptor.h:8