LeviLamina
Loading...
Searching...
No Matches
TargetGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/ai/goal/BaseGoal.h"
7
8// auto generated forward declare list
9// clang-format off
10class Actor;
11class Mob;
12struct GoalId;
13struct MobDescriptor;
14// clang-format on
15
16class TargetGoal : public ::BaseGoal {
17public:
18 // member variables
19 // NOLINTBEGIN
20 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
21 ::ll::TypedStorage<1, 1, bool> mAttackOwner;
22 ::ll::TypedStorage<1, 1, bool> mMustReach;
23 ::ll::TypedStorage<1, 1, bool> mGlobalMustSee;
24 ::ll::TypedStorage<1, 1, bool> mTargetMustSee;
25 ::ll::TypedStorage<4, 4, int> mTargetMustSeeForgetTicks;
26 ::ll::TypedStorage<1, 1, bool> mFilterFailure;
27 ::ll::TypedStorage<4, 4, int> mFilterFailureTicks;
28 ::ll::TypedStorage<4, 4, int> mGlobalMustSeeForgetTicks;
29 ::ll::TypedStorage<4, 4, int> mPersistTargetTicks;
30 ::ll::TypedStorage<4, 4, int> mReachCache;
31 ::ll::TypedStorage<4, 4, int> mReachCacheTime;
32 ::ll::TypedStorage<4, 4, int> mUnseenTicks;
33 ::ll::TypedStorage<4, 4, float> mWithinDefault;
34 ::ll::TypedStorage<1, 1, bool> mReevaluateTarget;
35 ::ll::TypedStorage<8, 24, ::std::vector<::MobDescriptor>> mTargetTypes;
36 // NOLINTEND
37
38public:
39 // prevent constructor by default
40 TargetGoal& operator=(TargetGoal const&);
41 TargetGoal(TargetGoal const&);
42 TargetGoal();
43
44public:
45 // virtual functions
46 // NOLINTBEGIN
47 virtual bool isTargetGoal() const /*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 bool _canAttack(
60 ::Mob* testMob,
61 ::Actor* target,
62 bool allowInvulnerable,
63 bool mustSee,
64 ::MobDescriptor const** outDescriptorMatch
65 );
66
67 virtual ~TargetGoal() /*override*/;
68 // NOLINTEND
69
70public:
71 // member functions
72 // NOLINTBEGIN
73 MCAPI TargetGoal(
74 ::Mob& pathMob,
75 ::std::string name,
76 ::GoalId const& goalId,
77 ::std::vector<::MobDescriptor> const& targetTypes,
78 bool mustSee,
79 int mustSeeForgetTicks,
80 bool mustReach,
81 float withinDefault,
82 bool attackOwner,
83 int persistTargetTicks
84 );
85
86 MCAPI bool _canAttack(::Actor* target, bool allowInvulnerable, ::MobDescriptor const** outDescriptorMatch);
87
88 MCAPI bool _canReach(::Actor& target);
89
90 MCAPI bool
91 _matchesTargetTypes(::Mob* testMob, ::Actor* target, bool mustSee, ::MobDescriptor const** outDescriptorMatch);
92 // NOLINTEND
93
94public:
95 // constructor thunks
96 // NOLINTBEGIN
97 MCAPI void* $ctor(
98 ::Mob& pathMob,
99 ::std::string name,
100 ::GoalId const& goalId,
101 ::std::vector<::MobDescriptor> const& targetTypes,
102 bool mustSee,
103 int mustSeeForgetTicks,
104 bool mustReach,
105 float withinDefault,
106 bool attackOwner,
107 int persistTargetTicks
108 );
109 // NOLINTEND
110
111public:
112 // destructor thunk
113 // NOLINTBEGIN
114 MCAPI void $dtor();
115 // NOLINTEND
116
117public:
118 // virtual function thunks
119 // NOLINTBEGIN
120 MCFOLD bool $isTargetGoal() const;
121
122 MCAPI bool $canContinueToUse();
123
124 MCAPI void $start();
125
126 MCFOLD void $stop();
127
128 MCAPI void $tick();
129
130 MCAPI void $appendDebugInfo(::std::string& str) const;
131
132 MCAPI bool $_canAttack(
133 ::Mob* testMob,
134 ::Actor* target,
135 bool allowInvulnerable,
136 bool mustSee,
137 ::MobDescriptor const** outDescriptorMatch
138 );
139
140
141 // NOLINTEND
142
143public:
144 // vftables
145 // NOLINTBEGIN
146 MCAPI static void** $vftable();
147 // NOLINTEND
148};
Definition Actor.h:113
Definition BaseGoal.h:12
static MCAPI void ** $vftable()
Definition Mob.h:56
Definition GoalId.h:5
Definition MobDescriptor.h:8