mirror of
https://github.com/zeldaret/ss
synced 2026-05-29 08:42:57 -04:00
bf79fa17fb
* Untangle eggAudio a bit * eggAudioRmtSpeakerMgr with a regswap * Fix eggAudioRmtSpeakerMgr (thanks Cuyler!) * eggAudioUtility with two regswaps
53 lines
1.1 KiB
C++
53 lines
1.1 KiB
C++
#ifndef EGG_AUDIO_ARC_UTILITY_H
|
|
#define EGG_AUDIO_ARC_UTILITY_H
|
|
|
|
#include <common.h>
|
|
#include <egg/audio/eggAudioMgr.h>
|
|
#include <nw4r/ut/ut_list.h>
|
|
|
|
namespace EGG {
|
|
|
|
// We don't really know much about this since it's
|
|
// unused in both NSMBW and SS
|
|
struct MultiArcSimpleAudioMgr {
|
|
u8 field_0x000[0x0FC - 0x000];
|
|
s32 field_0x0FC;
|
|
ArcPlayer players[];
|
|
|
|
nw4r::snd::SoundArchivePlayer *getPlayer(int i) {
|
|
return players[i].getPlayer();
|
|
}
|
|
};
|
|
|
|
class AudioUtility {
|
|
public:
|
|
class MoveParamMgr {
|
|
public:
|
|
MoveParamMgr();
|
|
static void init();
|
|
|
|
nw4r::ut::List mList;
|
|
};
|
|
|
|
class HBM {
|
|
public:
|
|
static void init(SimpleAudioMgr *mgr, void (*userCallback)(), u32 frame);
|
|
static void enter();
|
|
static void exit(bool);
|
|
|
|
static MultiArcSimpleAudioMgr *sMultiArcSimpleAudioMgr;
|
|
static SimpleAudioMgr *sSimpleAudioMgr;
|
|
static void (*sHBMEffectRestCallback)();
|
|
static void (*sHBMUserCallback)(s32, s32);
|
|
static u32 sHBFadeframe;
|
|
};
|
|
|
|
static MoveParamMgr sMoveParamMgr;
|
|
|
|
static nw4r::ut::List lbl_80675480;
|
|
};
|
|
|
|
} // namespace EGG
|
|
|
|
#endif
|