// This Header is auto generated by BDSLiteLoader Toolchain
#pragma once
#define AUTO_GENERATED
#include "../Global.h"

#define BEFORE_EXTRA

#undef BEFORE_EXTRA

class MeleeAttackGoal {

#define AFTER_EXTRA

#undef AFTER_EXTRA
#ifndef DISABLE_CONSTRUCTOR_PREVENTION_MELEEATTACKGOAL
public:
    class MeleeAttackGoal& operator=(class MeleeAttackGoal const &) = delete;
    MeleeAttackGoal(class MeleeAttackGoal const &) = delete;
    MeleeAttackGoal() = delete;
#endif

public:
    /*0*/ virtual ~MeleeAttackGoal();
    /*1*/ virtual bool canUse();
    /*2*/ virtual bool canContinueToUse();
    /*3*/ virtual void __unk_vfn_3();
    /*4*/ virtual void start();
    /*5*/ virtual void stop();
    /*6*/ virtual void tick();
    /*7*/ virtual void appendDebugInfo(std::string &) const;
    /*8*/ virtual void __unk_vfn_8();
    /*9*/ virtual void __unk_vfn_9();
    /*10*/ virtual void _attemptMoveToTarget(class Actor &);
    /*11*/ virtual void _attemptAttackTarget(class Actor &, float, float, float);
#ifdef ENABLE_VIRTUAL_FAKESYMBOL_MELEEATTACKGOAL
#endif
    MCAPI MeleeAttackGoal(class Mob &);

//protected:
    MCAPI void _attemptMoveToTargetPosition(class Actor &, float);
    MCAPI float _getAttackReachSqr(class Actor const &) const;
    MCAPI bool _inSunlight(class Actor const &) const;

protected:

};