Remove musictype_t, S_MusicType and I_SongType return implementation string

Lua API change: S_MusicType now returns string instead of number
This commit is contained in:
James R 2023-01-12 02:48:44 -08:00
parent 78f04f8c71
commit 49c5c785bf
7 changed files with 12 additions and 39 deletions

View file

@ -20,7 +20,6 @@
#include "lua_script.h" // Lua stuff #include "lua_script.h" // Lua stuff
#include "m_cond.h" // Emblem constants #include "m_cond.h" // Emblem constants
#include "v_video.h" // video flags (for lua) #include "v_video.h" // video flags (for lua)
#include "i_sound.h" // musictype_t (for lua)
#include "g_state.h" // gamestate_t (for lua) #include "g_state.h" // gamestate_t (for lua)
#include "r_data.h" // patchalphastyle_t #include "r_data.h" // patchalphastyle_t
#include "k_boss.h" // spottype_t (for lua) #include "k_boss.h" // spottype_t (for lua)
@ -6776,18 +6775,6 @@ struct int_const_s const INT_CONST[] = {
{"MA_NOCUTSCENES",MA_NOCUTSCENES}, {"MA_NOCUTSCENES",MA_NOCUTSCENES},
{"MA_INGAME",MA_INGAME}, {"MA_INGAME",MA_INGAME},
// music types
{"MU_NONE", MU_NONE},
{"MU_WAV", MU_WAV},
{"MU_MOD", MU_MOD},
{"MU_MID", MU_MID},
{"MU_OGG", MU_OGG},
{"MU_MP3", MU_MP3},
{"MU_FLAC", MU_FLAC},
{"MU_GME", MU_GME},
{"MU_MOD_EX", MU_MOD_EX},
{"MU_MID_EX", MU_MID_EX},
// gamestates // gamestates
{"GS_NULL",GS_NULL}, {"GS_NULL",GS_NULL},
{"GS_LEVEL",GS_LEVEL}, {"GS_LEVEL",GS_LEVEL},

View file

@ -22,20 +22,6 @@
extern "C" { extern "C" {
#endif #endif
// copied from SDL mixer, plus GME
typedef enum {
MU_NONE,
MU_WAV,
MU_MOD,
MU_MID,
MU_OGG,
MU_MP3,
MU_FLAC,
MU_GME,
MU_MOD_EX, // libopenmpt
MU_MID_EX // Non-native MIDI
} musictype_t;
/** \brief Sound subsystem runing and waiting /** \brief Sound subsystem runing and waiting
*/ */
extern UINT8 sound_started; extern UINT8 sound_started;
@ -139,7 +125,7 @@ void I_ShutdownMusic(void);
// MUSIC PROPERTIES // MUSIC PROPERTIES
/// ------------------------ /// ------------------------
musictype_t I_SongType(void); const char *I_SongType(void);
boolean I_SongPlaying(void); boolean I_SongPlaying(void);
boolean I_SongPaused(void); boolean I_SongPaused(void);

View file

@ -2603,7 +2603,7 @@ static int lib_sMusicType(lua_State *L)
return LUA_ErrInvalid(L, "player_t"); return LUA_ErrInvalid(L, "player_t");
} }
if (!player || P_IsLocalPlayer(player)) if (!player || P_IsLocalPlayer(player))
lua_pushinteger(L, S_MusicType()); lua_pushstring(L, S_MusicType());
else else
lua_pushnil(L); lua_pushnil(L);
return 1; return 1;

View file

@ -36,6 +36,7 @@
#include "r_fps.h" // R_ResetViewInterpolation in level load #include "r_fps.h" // R_ResetViewInterpolation in level load
#include "s_sound.h" #include "s_sound.h"
#include "i_sound.h" // I_FreeSfx
#include "st_stuff.h" #include "st_stuff.h"
#include "w_wad.h" #include "w_wad.h"
#include "z_zone.h" #include "z_zone.h"

View file

@ -1701,7 +1701,7 @@ boolean S_MusicNotInFocus(void)
); );
} }
musictype_t S_MusicType(void) const char *S_MusicType(void)
{ {
return I_SongType(); return I_SongType();
} }

View file

@ -14,7 +14,6 @@
#ifndef __S_SOUND__ #ifndef __S_SOUND__
#define __S_SOUND__ #define __S_SOUND__
#include "i_sound.h" // musictype_t
#include "sounds.h" #include "sounds.h"
#include "m_fixed.h" #include "m_fixed.h"
#include "command.h" #include "command.h"
@ -162,7 +161,7 @@ boolean S_MusicDisabled(void);
boolean S_MusicPlaying(void); boolean S_MusicPlaying(void);
boolean S_MusicPaused(void); boolean S_MusicPaused(void);
boolean S_MusicNotInFocus(void); boolean S_MusicNotInFocus(void);
musictype_t S_MusicType(void); const char *S_MusicType(void);
const char *S_MusicName(void); const char *S_MusicName(void);
boolean S_MusicExists(const char *mname); boolean S_MusicExists(const char *mname);

View file

@ -338,27 +338,27 @@ void I_ShutdownMusic(void) {
// MUSIC PROPERTIES // MUSIC PROPERTIES
/// ------------------------ /// ------------------------
musictype_t I_SongType(void) { const char* I_SongType(void) {
if (!music_player) if (!music_player)
return MU_NONE; return nullptr;
SdlAudioLockHandle _; SdlAudioLockHandle _;
std::optional<audio::MusicType> music_type = music_player->music_type(); std::optional<audio::MusicType> music_type = music_player->music_type();
if (music_type == std::nullopt) { if (music_type == std::nullopt) {
return MU_NONE; return nullptr;
} }
switch (*music_type) { switch (*music_type) {
case audio::MusicType::kOgg: case audio::MusicType::kOgg:
return MU_OGG; return "OGG";
case audio::MusicType::kGme: case audio::MusicType::kGme:
return MU_GME; return "GME";
case audio::MusicType::kMod: case audio::MusicType::kMod:
return MU_MOD; return "Mod";
default: default:
return MU_NONE; return nullptr;
} }
} }