You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
767 B
38 lines
767 B
/** |
|
* @file effects.h |
|
* |
|
* Interface of functions for loading and playing sounds. |
|
*/ |
|
#pragma once |
|
|
|
#include <cstdint> |
|
#include <memory> |
|
#include <string> |
|
|
|
#include "engine/sound.h" |
|
#include "sound_effect_enums.h" |
|
|
|
namespace devilution { |
|
|
|
struct TSFX { |
|
uint8_t bFlags; |
|
std::string pszName; |
|
std::unique_ptr<TSnd> pSnd; |
|
}; |
|
|
|
extern int sfxdelay; |
|
extern SfxID sfxdnum; |
|
|
|
bool effect_is_playing(SfxID nSFX); |
|
void stream_stop(); |
|
void PlaySFX(SfxID psfx); |
|
void PlaySfxLoc(SfxID psfx, Point position, bool randomizeByCategory = true); |
|
void sound_stop(); |
|
void sound_update(); |
|
void effects_cleanup_sfx(); |
|
void sound_init(); |
|
void ui_sound_init(); |
|
void effects_play_sound(SfxID); |
|
int GetSFXLength(SfxID nSFX); |
|
|
|
} // namespace devilution
|
|
|