LeviLamina
Loading...
Searching...
No Matches
MeleeAttackGoal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/ai/goal/MeleeAttackBaseGoal.h"
7
8// auto generated forward declare list
9// clang-format off
10class Actor;
11class BaseGameVersion;
12class Mob;
13class Vec3;
14// clang-format on
15
17public:
18 // MeleeAttackGoal inner types define
19 using LineOfSightEvaluator = bool (*)(::Mob const&, ::Actor const&);
20
21 using AttackReachEvaluator =
22 bool (*)(::Mob const&, ::Vec3 const&, float const, float const, float const, float const, int const);
23
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<
28 8,
29 8,
30 bool (*)(::Mob const&, ::Vec3 const&, float const, float const, float const, float const, int const)>
31 mReachEvaluator;
32 ::ll::TypedStorage<8, 8, bool (*)(::Mob const&, ::Actor const&)> mLineOfSightEvaluator;
33 ::ll::TypedStorage<4, 4, float> mReachMultiplier;
34 // NOLINTEND
35
36public:
37 // prevent constructor by default
39
40public:
41 // virtual functions
42 // NOLINTBEGIN
43 // vIndex: 0
44 virtual ~MeleeAttackGoal() /*override*/;
45
46 // vIndex: 6
47 virtual void tick() /*override*/;
48
49 // vIndex: 7
50 virtual void appendDebugInfo(::std::string& str) const /*override*/;
51 // NOLINTEND
52
53public:
54 // member functions
55 // NOLINTBEGIN
56 MCNAPI explicit MeleeAttackGoal(::Mob& mob);
57
58 MCNAPI float _getAttackReachSqr(::Actor const& target) const;
59 // NOLINTEND
60
61public:
62 // static functions
63 // NOLINTBEGIN
64 MCNAPI static bool _canReachTarget(
65 ::Mob const& mob,
66 ::Vec3 const& targetPosition,
67 float attackReachSq,
68 float targetMinY,
69 float targetMaxY,
70 float targetDistanceSqXZ,
71 int attackTicks
72 );
73
74 MCNAPI static bool _canReachTargetLegacy(
75 ::Mob const& mob,
76 ::Vec3 const& targetPosition,
77 float attackReachSq,
78 float targetMinY,
79 float targetMaxY,
80 float targetDistanceSqXZ,
81 int attackTicks
82 );
83
84 MCNAPI static bool _isTargetInLineOfSight(::Mob const& mob, ::Actor const& target);
85
86 MCNAPI static bool _isTargetInLineOfSightLegacy(::Mob const& mob, ::Actor const& target);
87 // NOLINTEND
88
89public:
90 // static variables
91 // NOLINTBEGIN
92 MCNAPI static ::BaseGameVersion const& min3DAttackVersion();
93
94 MCNAPI static ::BaseGameVersion const& minHitThroughWallFixVersion();
95 // NOLINTEND
96
97public:
98 // constructor thunks
99 // NOLINTBEGIN
100 MCNAPI void* $ctor(::Mob& mob);
101 // NOLINTEND
102
103public:
104 // destructor thunk
105 // NOLINTBEGIN
106 MCNAPI void $dtor();
107 // NOLINTEND
108
109public:
110 // virtual function thunks
111 // NOLINTBEGIN
112 MCNAPI void $tick();
113
114 MCNAPI void $appendDebugInfo(::std::string& str) const;
115 // NOLINTEND
116
117public:
118 // vftables
119 // NOLINTBEGIN
120 MCNAPI static void** $vftable();
121 // NOLINTEND
122};
Definition Actor.h:103
Definition BaseGameVersion.h:8
Definition MeleeAttackBaseGoal.h:19
Definition MeleeAttackGoal.h:16
MCAPI float _getAttackReachSqr(::Actor const &target) const
MCAPI void $tick()
static MCAPI void ** $vftable()
MCAPI void * $ctor(::Mob &mob)
MCAPI void $appendDebugInfo(::std::string &str) const
static MCAPI bool _canReachTargetLegacy(::Mob const &mob, ::Vec3 const &targetPosition, float attackReachSq, float targetMinY, float targetMaxY, float targetDistanceSqXZ, int attackTicks)
static MCAPI ::BaseGameVersion const & minHitThroughWallFixVersion()
MCAPI void $dtor()
static MCAPI bool _canReachTarget(::Mob const &mob, ::Vec3 const &targetPosition, float attackReachSq, float targetMinY, float targetMaxY, float targetDistanceSqXZ, int attackTicks)
MCAPI MeleeAttackGoal(::Mob &mob)
static MCAPI ::BaseGameVersion const & min3DAttackVersion()
static MCAPI bool _isTargetInLineOfSight(::Mob const &mob, ::Actor const &target)
static MCAPI bool _isTargetInLineOfSightLegacy(::Mob const &mob, ::Actor const &target)
Definition Mob.h:47
Definition Vec3.h:10