mirror of https://github.com/zeldaret/tp.git
192 lines
5.0 KiB
C++
192 lines
5.0 KiB
C++
#ifndef Z2SEMGR_H_
|
|
#define Z2SEMGR_H_
|
|
|
|
#include "JSystem/JAudio2/JAISe/JAISe.h"
|
|
#include "JSystem/JAudio2/JAISoundHandles/JAISoundHandles.h"
|
|
#include "Z2AudioLib/Z2Param/Z2Param.h"
|
|
#include "Z2AudioLib/Z2SeqMgr/Z2SeqMgr.h"
|
|
#include "global.h"
|
|
#include "mtx_vec.h"
|
|
|
|
struct Z2MultiSeObj {
|
|
Z2MultiSeObj();
|
|
~Z2MultiSeObj();
|
|
|
|
u8 unk0[28];
|
|
u32 field_0x1c;
|
|
u8 unk1[4];
|
|
};
|
|
|
|
class Z2SeMgr {
|
|
public:
|
|
Z2SeMgr(void);
|
|
|
|
void initSe(void);
|
|
void resetModY(void);
|
|
void modHeightAtCamera(Vec const**);
|
|
void incrCrowdSize(void);
|
|
void decrCrowdSize(void);
|
|
void seStart(JAISoundID, Vec const*, u32, s8, float, float, float, float, u8);
|
|
void seStartLevel(JAISoundID, Vec const*, u32, s8, float, float, float, float, u8);
|
|
void seStop(JAISoundID, u32);
|
|
void seStopAll(u32);
|
|
void seMoveVolumeAll(float, u32);
|
|
void messageSePlay(u16, Vec*, s8);
|
|
void talkInSe(void);
|
|
void talkOutSe(void);
|
|
void menuInSe(void);
|
|
void setLevObjSE(u32, Vec*, s8);
|
|
void setMultiTriggerSE(u32, Vec*, s8);
|
|
void processSeFramework(void);
|
|
bool isLevelSe(JAISoundID);
|
|
bool isSoundCulling(JAISoundID);
|
|
|
|
private:
|
|
JAISoundHandles sound_handles;
|
|
Z2SeMgr* se_mgr;
|
|
u32 field_0x64;
|
|
|
|
Z2MultiSeObj level_object_se[10];
|
|
u8 level_object_se_count;
|
|
|
|
u8 padding_1[3];
|
|
|
|
Z2MultiSeObj multi_trigger_se[10];
|
|
u8 multi_trigger_se_count;
|
|
|
|
u8 padding_2[3];
|
|
|
|
u8 unk0[128];
|
|
s8 unk1[12];
|
|
|
|
u8 mCrowdSize;
|
|
|
|
u8 unk2[3];
|
|
};
|
|
|
|
class Z2MultiSeMgr {
|
|
public:
|
|
Z2MultiSeMgr();
|
|
~Z2MultiSeMgr();
|
|
|
|
u32 registMultiSePos(Vec*);
|
|
void resetMultiSePos(void);
|
|
float getPanPower(void);
|
|
float getDolbyPower(void);
|
|
|
|
private:
|
|
u8 field_0x0;
|
|
u8 field_0x1;
|
|
u8 field_0x2;
|
|
u8 field_0x3;
|
|
f32 field_0x4;
|
|
f32 field_0x8;
|
|
f32 field_0xc;
|
|
f32 field_0x10;
|
|
f32 field_0x14;
|
|
s8 field_0x18;
|
|
};
|
|
|
|
extern "C" {
|
|
void Z2MultiSeObj(void);
|
|
void __ct__12Z2MultiSeObjFv(void);
|
|
|
|
void __ct__12Z2MultiSeMgrFv(void);
|
|
void __dt__12Z2MultiSeMgrFv(void);
|
|
void resetMultiSePos__12Z2MultiSeMgrFv(void);
|
|
|
|
void __ct__7Z2SeMgrFv(void);
|
|
void decrCrowdSize__7Z2SeMgrFv(void);
|
|
void incrCrowdSize__7Z2SeMgrFv(void);
|
|
void initSe__7Z2SeMgrFv(void);
|
|
void isLevelSe__7Z2SeMgrF10JAISoundID(JAISoundID);
|
|
void isSoundCulling__7Z2SeMgrF10JAISoundID(JAISoundID);
|
|
void modHeightAtCamera__7Z2SeMgrFPPC3Vec(Vec const**);
|
|
void processSeFramework__7Z2SeMgrFv(void);
|
|
void resetModY__7Z2SeMgrFv(void);
|
|
void seMoveVolumeAll__7Z2SeMgrFfUl(float, u32);
|
|
void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(JAISoundID, Vec const*, u32, s8, float, float,
|
|
float, float, u8);
|
|
void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(JAISoundID, Vec const*, u32, s8, float,
|
|
float, float, float, u8);
|
|
void seStop__7Z2SeMgrF10JAISoundIDUl(JAISoundID, u32);
|
|
void seStopAll__7Z2SeMgrFUl(void);
|
|
void setLevObjSE__7Z2SeMgrFUlP3VecSc(u32, Vec*, s8);
|
|
void setMultiTriggerSE__7Z2SeMgrFUlP3VecSc(u32, Vec*, s8);
|
|
|
|
void __ct__12Z2MultiSeMgrFv(void);
|
|
void registMultiSePos__12Z2MultiSeMgrFP3Vec(Vec*);
|
|
void resetMultiSePos__12Z2MultiSeMgrFv(void);
|
|
float getPanPower__12Z2MultiSeMgrFv(void);
|
|
float getDolbyPower__12Z2MultiSeMgrFv(void);
|
|
|
|
void resetCrowdSize__7Z2SeMgrFv(void);
|
|
}
|
|
|
|
extern Z2SeMgr* lbl_80450B88; // Z2SeMgr sInstance
|
|
extern double lbl_804558D8;
|
|
extern float lbl_804558D0;
|
|
extern float lbl_804558D4;
|
|
extern double lbl_804558E0;
|
|
extern float lbl_804558C0;
|
|
extern float lbl_8045587C;
|
|
extern float lbl_80455878; // 0.0f
|
|
extern float lbl_80455870;
|
|
extern float lbl_80455874;
|
|
extern float lbl_80455880;
|
|
extern float lbl_80455884;
|
|
extern float lbl_80455888;
|
|
extern float lbl_80455880;
|
|
extern float lbl_8045588C;
|
|
extern float lbl_80455890;
|
|
extern float lbl_80455894;
|
|
extern float lbl_80455898;
|
|
extern float lbl_8045589C;
|
|
extern float lbl_804558A0;
|
|
extern float lbl_804558A4;
|
|
extern float lbl_804558A8;
|
|
extern float lbl_804558AC;
|
|
extern float lbl_804558B0;
|
|
extern float lbl_804558B4;
|
|
extern float lbl_804558B8;
|
|
extern float lbl_804558BC;
|
|
extern float lbl_804558C4;
|
|
extern float lbl_804558C8;
|
|
extern float lbl_804558CC;
|
|
extern float lbl_804558E8;
|
|
extern float lbl_804558EC;
|
|
extern float lbl_804558F0;
|
|
extern float lbl_804558F4;
|
|
extern float lbl_804558F8;
|
|
extern double lbl_80455900;
|
|
extern double lbl_80455908;
|
|
extern double lbl_80455910;
|
|
extern double lbl_80455918;
|
|
extern double lbl_80455920;
|
|
extern double lbl_80455928;
|
|
extern double lbl_80455930;
|
|
extern float lbl_80455938;
|
|
extern float lbl_8045593C;
|
|
extern float lbl_80455940;
|
|
extern float lbl_80455944;
|
|
extern float lbl_80455948;
|
|
extern float lbl_8045594C;
|
|
extern float lbl_80455950;
|
|
extern float lbl_80455954;
|
|
extern float lbl_80455958;
|
|
extern double lbl_80455960;
|
|
extern double lbl_80455968;
|
|
extern double lbl_80455970;
|
|
extern float lbl_80455978;
|
|
extern float lbl_8045597C;
|
|
extern float lbl_80455980;
|
|
extern float lbl_80455984;
|
|
extern float lbl_80455988;
|
|
extern float lbl_8045598C;
|
|
extern float lbl_80455990;
|
|
extern float lbl_80455994;
|
|
extern u32 lbl_8039B9F0;
|
|
extern u32 lbl_8039B9FC;
|
|
extern u8 lbl_803C9D98[0x60];
|
|
|
|
#endif |