18class AquaticChargeAttackGoal :
public ::BaseGoal {
22 ::ll::TypedStorage<8, 8, ::Mob&> mMob;
23 ::ll::TypedStorage<4, 36, ::AquaticChargeAttackSettings> mSettings;
24 ::ll::TypedStorage<8, 16, ::std::optional<::ActorUniqueID>> mTargetId;
25 ::ll::TypedStorage<1, 1, bool> mHasAttacked;
26 ::ll::TypedStorage<1, 1, bool> mHasMissed;
27 ::ll::TypedStorage<4, 12, ::Vec3> mLockedTargetPosition;
28 ::ll::TypedStorage<8, 8, ::Tick> mNextChargeTick;
29 ::ll::TypedStorage<4, 12, ::Vec3> mRandomSwimTarget;
30 ::ll::TypedStorage<4, 12, ::Vec3> mRandomSwimLastPosition;
31 ::ll::TypedStorage<8, 8, ::Tick> mRandomSwimNoProgressTicks;
36 AquaticChargeAttackGoal& operator=(AquaticChargeAttackGoal
const&);
37 AquaticChargeAttackGoal(AquaticChargeAttackGoal
const&);
38 AquaticChargeAttackGoal();
43 virtual bool canUse() ;
45 virtual bool canContinueToUse() ;
47 virtual void start() ;
53 virtual void appendDebugInfo(::std::string& str)
const ;
59 MCAPI
explicit AquaticChargeAttackGoal(
::Mob& mob);
61 MCAPI
bool _isCloseEnoughToAttack()
const;
63 MCAPI
void _performKnockbackAttack(
::Actor& target);
65 MCAPI
void _resetForNextCharge();
67 MCAPI
void _transitionToCooldown(
bool hasAttacked);
73 MCAPI
void* $ctor(
::Mob& mob);
81 MCAPI
bool $canContinueToUse();
89 MCAPI
void $appendDebugInfo(::std::string& str)
const;