LeviLamina
Loading...
Searching...
No Matches
MeleeAttackBaseGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/ActorCategory.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 Actor;
14class Mob;
15class Path;
16class Vec3;
17// clang-format on
18
20public:
21 // member variables
22 // NOLINTBEGIN
23 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
24 ::ll::TypedStorage<8, 40, ::TempEPtr<::Actor>> mTarget;
25 ::ll::TypedStorage<1, 1, bool> mAttackOnce;
26 ::ll::TypedStorage<1, 1, bool> mHasAttacked;
27 ::ll::TypedStorage<1, 1, bool> mRequireCompletePath;
28 ::ll::TypedStorage<1, 1, bool> mTrackTarget;
29 ::ll::TypedStorage<4, 4, int> mRandomStopInterval;
30 ::ll::TypedStorage<4, 4, int> mAttackTicks;
31 ::ll::TypedStorage<4, 4, int> mCooldownTicks;
32 ::ll::TypedStorage<4, 4, int> mMinPathTicks;
33 ::ll::TypedStorage<4, 4, int> mMaxPathTicks;
34 ::ll::TypedStorage<4, 4, int> mTicksToRecalculatePath;
35 ::ll::TypedStorage<4, 4, int> mPathFailTickIncrease;
36 ::ll::TypedStorage<4, 4, int> mInnerBoundaryTickIncrease;
37 ::ll::TypedStorage<4, 4, int> mOuterBoundaryTickIncrease;
38 ::ll::TypedStorage<4, 4, float> mPathInnerBoundarySq;
39 ::ll::TypedStorage<4, 4, float> mPathOuterBoundarySq;
40 ::ll::TypedStorage<4, 4, float> mMeleeFov;
41 ::ll::TypedStorage<4, 4, float> mMaxRotationX;
42 ::ll::TypedStorage<4, 4, float> mMaxHeadRotationY;
43 ::ll::TypedStorage<4, 4, float> mSpeedMultiplier;
44 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Path>> mPath;
45 ::ll::TypedStorage<4, 12, ::Vec3> mPathTarget;
46 ::ll::TypedStorage<4, 4, ::ActorCategory> mAttackTypes;
47 ::ll::TypedStorage<8, 104, ::ActorDefinitionTrigger> mOnAttack;
48 ::ll::TypedStorage<8, 104, ::ActorDefinitionTrigger> mOnKill;
49 ::ll::TypedStorage<1, 1, bool> mSetPersistent;
50 ::ll::TypedStorage<1, 1, bool> mCanSpreadOnFire;
51 // NOLINTEND
52
53public:
54 // virtual functions
55 // NOLINTBEGIN
56 // vIndex: 0
57 virtual ~MeleeAttackBaseGoal() /*override*/;
58
59 // vIndex: 1
60 virtual bool canUse() /*override*/;
61
62 // vIndex: 2
63 virtual bool canContinueToUse() /*override*/;
64
65 // vIndex: 4
66 virtual void start() /*override*/;
67
68 // vIndex: 5
69 virtual void stop() /*override*/;
70
71 // vIndex: 6
72 virtual void tick() = 0;
73
74 // vIndex: 10
75 virtual void _attemptMoveToTarget(::Actor& target);
76 // NOLINTEND
77
78public:
79 // member functions
80 // NOLINTBEGIN
81 MCAPI explicit MeleeAttackBaseGoal(::Mob& mob);
82
83 MCAPI void _attemptAttackTarget(::Actor& target, bool canReachTarget, bool hasLineOfSight);
84
85 MCAPI void _attemptMoveToTargetPosition(::Actor& target, bool canReachTarget, float targetDistanceSq);
86
87 MCAPI bool _inSunlight(::Actor const& actor) const;
88 // NOLINTEND
89
90public:
91 // constructor thunks
92 // NOLINTBEGIN
93 MCAPI void* $ctor(::Mob& mob);
94 // NOLINTEND
95
96public:
97 // destructor thunk
98 // NOLINTBEGIN
99 MCAPI void $dtor();
100 // NOLINTEND
101
102public:
103 // virtual function thunks
104 // NOLINTBEGIN
105 MCAPI bool $canUse();
106
107 MCAPI bool $canContinueToUse();
108
109 MCFOLD void $start();
110
111 MCAPI void $stop();
112
113 MCAPI void $_attemptMoveToTarget(::Actor& target);
114 // NOLINTEND
115
116public:
117 // vftables
118 // NOLINTBEGIN
119 MCAPI static void** $vftable();
120 // NOLINTEND
121};
Definition ActorDefinitionTrigger.h:5
Definition Actor.h:104
Definition Goal.h:14
Definition MeleeAttackBaseGoal.h:19
Definition Mob.h:47
Definition Path.h:16
Definition Vec3.h:10