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 MobDescriptor;
13// clang-format on
14
15class TargetGoal : public ::BaseGoal {
16public:
17 // member variables
18 // NOLINTBEGIN
19 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
20 ::ll::TypedStorage<1, 1, bool> mAttackOwner;
21 ::ll::TypedStorage<1, 1, bool> mMustReach;
22 ::ll::TypedStorage<1, 1, bool> mGlobalMustSee;
23 ::ll::TypedStorage<1, 1, bool> mTargetMustSee;
24 ::ll::TypedStorage<4, 4, int> mTargetMustSeeForgetTicks;
25 ::ll::TypedStorage<1, 1, bool> mFilterFailure;
26 ::ll::TypedStorage<4, 4, int> mFilterFailureTicks;
27 ::ll::TypedStorage<4, 4, int> mGlobalMustSeeForgetTicks;
28 ::ll::TypedStorage<4, 4, int> mPersistTargetTicks;
29 ::ll::TypedStorage<4, 4, int> mReachCache;
30 ::ll::TypedStorage<4, 4, int> mReachCacheTime;
31 ::ll::TypedStorage<4, 4, int> mUnseenTicks;
32 ::ll::TypedStorage<4, 4, float> mWithinDefault;
33 ::ll::TypedStorage<1, 1, bool> mReevaluateTarget;
34 ::ll::TypedStorage<8, 24, ::std::vector<::MobDescriptor>> mTargetTypes;
35 // NOLINTEND
36
37public:
38 // prevent constructor by default
39 TargetGoal& operator=(TargetGoal const&);
40 TargetGoal(TargetGoal const&);
41 TargetGoal();
42
43public:
44 // virtual functions
45 // NOLINTBEGIN
46 virtual bool isTargetGoal() const /*override*/;
47
48 virtual bool canContinueToUse() /*override*/;
49
50 virtual void start() /*override*/;
51
52 virtual void stop() /*override*/;
53
54 virtual void tick() /*override*/;
55
56 virtual void appendDebugInfo(::std::string& str) const /*override*/;
57
58 virtual bool _canAttack(
59 ::Mob* testMob,
60 ::Actor* target,
61 bool allowInvulnerable,
62 bool mustSee,
63 ::MobDescriptor const** outDescriptorMatch
64 );
65 // NOLINTEND
66
67public:
68 // member functions
69 // NOLINTBEGIN
70 MCAPI TargetGoal(
71 ::Mob& pathMob,
72 bool mustSee,
73 int mustSeeForgetTicks,
74 bool mustReach,
75 float withinDefault,
76 bool attackOwner,
77 int persistTargetTicks
78 );
79
80 MCAPI TargetGoal(
81 ::Mob& pathMob,
82 ::std::vector<::MobDescriptor> const& targetTypes,
83 bool mustSee,
84 int mustSeeForgetTicks,
85 bool mustReach,
86 float withinDefault,
87 bool attackOwner,
88 int persistTargetTicks
89 );
90
91 MCAPI bool _canAttack(::Actor* target, bool allowInvulnerable, ::MobDescriptor const** outDescriptorMatch);
92
93 MCAPI bool _canReach(::Actor& target);
94
95 MCAPI bool _canReachAfterDelay(::Actor& target);
96
97 MCAPI bool
98 _matchesTargetTypes(::Mob* testMob, ::Actor* target, bool mustSee, ::MobDescriptor const** outDescriptorMatch);
99 // NOLINTEND
100
101public:
102 // constructor thunks
103 // NOLINTBEGIN
104 MCAPI void* $ctor(
105 ::Mob& pathMob,
106 bool mustSee,
107 int mustSeeForgetTicks,
108 bool mustReach,
109 float withinDefault,
110 bool attackOwner,
111 int persistTargetTicks
112 );
113
114 MCAPI void* $ctor(
115 ::Mob& pathMob,
116 ::std::vector<::MobDescriptor> const& targetTypes,
117 bool mustSee,
118 int mustSeeForgetTicks,
119 bool mustReach,
120 float withinDefault,
121 bool attackOwner,
122 int persistTargetTicks
123 );
124 // NOLINTEND
125
126public:
127 // virtual function thunks
128 // NOLINTBEGIN
129 MCFOLD bool $isTargetGoal() const;
130
131 MCAPI bool $canContinueToUse();
132
133 MCAPI void $start();
134
135 MCFOLD void $stop();
136
137 MCAPI void $tick();
138
139 MCAPI void $appendDebugInfo(::std::string& str) const;
140
141 MCAPI bool $_canAttack(
142 ::Mob* testMob,
143 ::Actor* target,
144 bool allowInvulnerable,
145 bool mustSee,
146 ::MobDescriptor const** outDescriptorMatch
147 );
148
149
150 // NOLINTEND
151
152public:
153 // vftables
154 // NOLINTBEGIN
155 MCAPI static void** $vftable();
156 // NOLINTEND
157};
Definition Actor.h:125
static MCAPI void ** $vftable()
Definition Mob.h:57
Definition MobDescriptor.h:13