mirror of
https://github.com/CraftyBoss/SuperMarioOdysseyOnline.git
synced 2024-11-18 17:25:13 +00:00
47 lines
No EOL
2.1 KiB
C++
47 lines
No EOL
2.1 KiB
C++
#pragma once
|
|
|
|
#include "sead/math/seadVector.h"
|
|
|
|
#include "al/sensor/HitSensor.h"
|
|
|
|
#include "game/Player/HackCap.h"
|
|
#include "game/Player/PlayerConst.h"
|
|
#include "game/Player/PlayerInput.h"
|
|
#include "game/Player/PlayerAnimator.h"
|
|
|
|
class PlayerTrigger;
|
|
class PlayerJudgePreInputCapThrow;
|
|
class PlayerCounterAfterCapCatch;
|
|
|
|
class PlayerSpinCapAttack {
|
|
public:
|
|
PlayerSpinCapAttack(HackCap *, const PlayerConst *, const PlayerTrigger *, const PlayerInput *, const PlayerCounterAfterCapCatch *, const PlayerJudgePreInputCapThrow *);
|
|
void clearAttackInfo(void);
|
|
void setupAttackInfo(void);
|
|
void startCapSpinAttack(PlayerAnimator *, PlayerInput const *);
|
|
void startCapSpinAttackAir(PlayerAnimator *, PlayerInput const *);
|
|
void startCapSpinAttackSwim(PlayerAnimator *, PlayerInput const *);
|
|
void startSpinSeparate(PlayerAnimator *, PlayerInput const *);
|
|
void startSpinSeparateSwim(PlayerAnimator *, PlayerInput const *);
|
|
void startSpinSeparateSwimSurface(PlayerAnimator *, PlayerInput const *);
|
|
void startCapThrow(sead::Vector3f const & front, sead::Vector3f const & up, float speed, bool, sead::Vector3f const& unused);
|
|
void attackSpinMsg(al::HitSensor *, al::HitSensor *);
|
|
bool tryCancelCapState(PlayerAnimator *);
|
|
bool tryStartCapSpinGroundMiss(PlayerAnimator *);
|
|
bool tryStartCapSpinAirMiss(PlayerAnimator *);
|
|
bool isCapSpinAttack(void) const;
|
|
bool isValidAttackSensor(const PlayerAnimator *) const;
|
|
bool isEnablePlaySpinCapMiss(const PlayerAnimator *) const;
|
|
bool isSeparateSingleSpin(void) const;
|
|
bool isThrowSwingRightDir(void) const;
|
|
int getThrowFrameGround(void) const;
|
|
int getThrowFrameAir(void) const;
|
|
int getThrowFrameSwim(void) const;
|
|
|
|
HackCap *mHackCap; // 0x0
|
|
PlayerConst *mPlayerConst; // 0x8
|
|
PlayerTrigger *mPlayerTrigger; // 0x10
|
|
PlayerInput *mPlayerInput; // 0x18
|
|
PlayerCounterAfterCapCatch *mCounterAfterCapCatch; // 0x20
|
|
PlayerJudgePreInputCapThrow *jPreInputCapThrow; // 0x28
|
|
}; |