jak-project/game/overlord/common/srpc.h

127 lines
1.9 KiB
C
Raw Normal View History

#pragma once
#include "common/common_types.h"
#include "game/overlord/common/ssound.h"
// added for PC port
extern u32 gMusicFadeHack;
constexpr int MUSIC_TWEAK_COUNT = 32;
struct MusicTweaks {
u32 TweakCount;
struct {
char MusicName[12];
s32 VolumeAdjust;
} MusicTweak[MUSIC_TWEAK_COUNT];
};
struct SoundRpcGetIrxVersion {
u32 major;
u32 minor;
u32 ee_addr;
};
struct SoundRpcBankCommand {
u8 pad[12];
char bank_name[16];
};
struct SoundRpcSetLanguageCommand {
u32 langauge_id; // game_common_types.h, Language
};
struct SoundRpcPlayCommand {
u32 sound_id;
u32 pad[2];
char name[16];
SoundParams parms;
};
struct SoundRpcSetParamCommand {
u32 sound_id;
SoundParams parms;
s32 auto_time;
s32 auto_from;
};
struct SoundRpcSoundIdCommand {
u32 sound_id;
};
struct SoundRpcSetFlavaCommand {
u8 flava;
};
struct SoundRpcSetReverb {
u8 core;
s32 reverb;
u32 left;
u32 right;
};
struct SoundRpcSetEarTrans {
Vec3w ear_trans;
Vec3w cam_trans;
s32 cam_angle;
};
struct SoundRpc2SetEarTrans {
Vec3w ear_trans1;
Vec3w ear_trans0;
Vec3w cam_trans;
s32 cam_angle;
};
struct SoundRpcSetFPSCommand {
u8 fps;
};
struct SoundRpcSetFallof {
u8 pad[12];
char name[16];
s32 curve;
s32 min;
s32 max;
};
struct SoundRpcSetFallofCurve {
s32 curve;
s32 falloff;
s32 ease;
};
struct SoundRpcGroupCommand {
u8 group;
};
struct SoundRpcMasterVolCommand {
SoundRpcGroupCommand group;
s32 volume;
};
struct SoundRpcStereoMode {
s32 stereo_mode;
};
struct SoundRpcSetMidiReg {
s32 reg;
s32 value;
};
struct SoundRpcSetMirrror {
u8 value;
};
extern s32 gMusicTweak;
extern MusicTweaks gMusicTweakInfo;
extern int32_t gSoundEnable;
extern snd::BankHandle gMusic;
extern s32 gMusicPause;
extern s32 gSoundInUse;
extern u8 gFPS;
extern const char* gLanguage;
extern u32 gFrameNum;
void srpc_init_globals();