2022-04-10 00:17:06 +00:00
|
|
|
#ifndef _CSFXMANAGER_HPP
|
|
|
|
#define _CSFXMANAGER_HPP
|
|
|
|
|
|
|
|
#include "types.h"
|
|
|
|
|
2022-08-15 04:51:06 +00:00
|
|
|
#include "Kyoto/Audio/CSfxHandle.hpp"
|
|
|
|
|
2022-04-10 00:17:06 +00:00
|
|
|
class CSfxManager {
|
|
|
|
public:
|
2022-07-15 00:48:18 +00:00
|
|
|
static void Update(f32 dt);
|
2022-08-15 04:51:06 +00:00
|
|
|
static void RemoveEmitter(CSfxHandle handle);
|
2022-10-03 16:23:22 +00:00
|
|
|
static void UpdateEmitter(CSfxHandle handle, const CVector3f& pos, const CVector3f& dir,
|
2022-10-02 10:13:35 +00:00
|
|
|
uchar maxVol);
|
|
|
|
static CSfxHandle AddEmitter(u16 id, const CVector3f& pos, const CVector3f& dir,
|
2022-10-03 17:00:51 +00:00
|
|
|
bool useAcoustics, bool looped, s16 prio, int areaId);
|
2022-10-02 10:13:35 +00:00
|
|
|
static CSfxHandle AddEmitter(u16 id, const CVector3f& pos, const CVector3f& dir, uchar vol,
|
2022-10-03 17:00:51 +00:00
|
|
|
bool useAcoustics, bool looped, s16 prio, int areaId);
|
2022-10-01 06:19:09 +00:00
|
|
|
static void Shutdown();
|
2022-10-02 10:13:35 +00:00
|
|
|
static u16 TranslateSFXID(u16);
|
|
|
|
|
2022-10-03 16:04:56 +00:00
|
|
|
static void PitchBend(CSfxHandle handle, int pitch);
|
2022-10-03 16:23:22 +00:00
|
|
|
|
2022-10-03 17:03:50 +00:00
|
|
|
const static s16 kMaxPriority; // 0xff
|
|
|
|
const static s16 kMedPriority; // 0x7f
|
|
|
|
const static int kAllAreas;
|
2022-04-10 00:17:06 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|