3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/world/actor/ai/goal/MeleeAttackBaseGoal.h"
17class MeleeAttackGoal :
public ::MeleeAttackBaseGoal {
20 using AttackReachEvaluator =
21 bool (*)(
::Mob const&,
::Vec3 const&,
float const,
float const,
float const,
float const,
int const);
23 using LineOfSightEvaluator = bool (*)(
::Mob const&,
::Actor const&);
31 bool (*)(
::Mob const&,
::Vec3 const&,
float const,
float const,
float const,
float const,
int const)>
33 ::ll::TypedStorage<8, 8, bool (*)(
::Mob const&,
::Actor const&)> mLineOfSightEvaluator;
34 ::ll::TypedStorage<4, 4, float> mReachMultiplier;
44 virtual ~MeleeAttackGoal() =
default;
48 virtual void appendDebugInfo(::std::string& str)
const ;
62 ::Vec3 const& targetPosition,
66 float targetXZDistanceSqr,
76 float targetXZDistanceSqr,
Definition BaseGameVersion.h:8
static MCAPI bool _canReachTarget(::Mob const &mob, ::Vec3 const &targetPosition, float attackReachSq, float targetMinY, float targetMaxY, float targetXZDistanceSqr, int attackTicks)
static MCAPI ::BaseGameVersion const & MIN_3D_ATTACK_VERSION()
static MCAPI ::BaseGameVersion const & MIN_HIT_THROUGH_WALL_FIX_VERSION()
static MCAPI void ** $vftable()
MCAPI MeleeAttackGoal(::Mob &mob, ::std::string name, ::GoalId const &goalId)
MCAPI void $appendDebugInfo(::std::string &str) const
MCAPI void * $ctor(::Mob &mob, ::std::string name, ::GoalId const &goalId)
static MCAPI bool _canReachTargetLegacy(::Mob const &mob, ::Vec3 const &, float attackReachSq, float targetMinY, float targetMaxY, float targetXZDistanceSqr, int attackTicks)
static MCAPI bool _isTargetInLineOfSight(::Mob const &mob, ::Actor const &target)
static MCAPI bool _isTargetInLineOfSightLegacy(::Mob const &mob, ::Actor const &target)