mirror of
https://github.com/encounter/Petari.git
synced 2026-03-30 11:34:15 -07:00
67 lines
2.3 KiB
C++
67 lines
2.3 KiB
C++
#pragma once
|
|
|
|
#include "Game/LiveActor/Nerve.hpp"
|
|
#include "Game/Screen/LayoutActor.hpp"
|
|
#include "JSystem/JGeometry/TVec.hpp"
|
|
|
|
class CountUpPaneRumbler;
|
|
|
|
class MeterLayout : public LayoutActor {
|
|
public:
|
|
MeterLayout(const char *, const char *);
|
|
|
|
virtual ~MeterLayout();
|
|
|
|
virtual void init(const JMapInfoIter &rIter);
|
|
virtual void control();
|
|
|
|
void requestActive();
|
|
void requestDeactivate();
|
|
void requestPowerUp();
|
|
void requestForceAppear();
|
|
void requestPlayerMoving();
|
|
void requestPlayerStopped();
|
|
void initCount(s32);
|
|
void setCount(s32);
|
|
void exeAppear();
|
|
void exeWaitStart();
|
|
void exeWait();
|
|
void exePowerUp();
|
|
void exeMeterMove();
|
|
void exeCounterMove();
|
|
void exeRecover();
|
|
void exeDamage();
|
|
void exeBreakMeter();
|
|
void exeZeroMeter();
|
|
void exeZeroMeterBreak();
|
|
void calcMarioHeadPosition(TVec2f *) const;
|
|
void calcPowerUpMeterBasePosition(TVec2f *) const;
|
|
void setAnimBase();
|
|
void setCountAnimFrame();
|
|
void setRecoveryCountAnimFrame();
|
|
|
|
CountUpPaneRumbler* mCountUpPaneRumbler; // 0x20
|
|
s32 _24; // 0x24
|
|
s32 _28; // 0x28
|
|
TVec2f mFollowPos; // 0x2C
|
|
TVec2f mFollowPosW; // 0x34
|
|
TVec2f _38; // 0x38
|
|
s32 mCount; // 0x44
|
|
f32 _48; // 0x48
|
|
f32 _4C; // 0x4C
|
|
};
|
|
|
|
namespace NrvMeterLayout {
|
|
NERVE_DECL_NULL(MeterLayoutNrvHide);
|
|
NERVE_DECL_EXE(MeterLayoutNrvAppear, MeterLayout, Appear);
|
|
NERVE_DECL_EXE(MeterLayoutNrvWait, MeterLayout, Wait);
|
|
NERVE_DECL_EXE(MeterLayoutNrvWaitStart, MeterLayout, WaitStart);
|
|
NERVE_DECL_EXE(MeterLayoutNrvPowerUp, MeterLayout, PowerUp);
|
|
NERVE_DECL_EXE(MeterLayoutNrvMeterMove, MeterLayout, MeterMove);
|
|
NERVE_DECL_EXE(MeterLayoutNrvCounterMove, MeterLayout, CounterMove);
|
|
NERVE_DECL_EXE(MeterLayoutNrvRecover, MeterLayout, Recover);
|
|
NERVE_DECL_EXE(MeterLayoutNrvDamage, MeterLayout, Damage);
|
|
NERVE_DECL_EXE(MeterLayoutNrvBreakMeter, MeterLayout, BreakMeter);
|
|
NERVE_DECL_EXE(MeterLayoutNrvZeroMeter, MeterLayout, ZeroMeter);
|
|
NERVE_DECL_EXE(MeterLayoutNrvZeroMeterBreak, MeterLayout, ZeroMeterBreak);
|
|
} // namespace NrvMeterLayout
|