diff --git a/core/MenuStyle_Radio.cpp b/core/MenuStyle_Radio.cpp index cb588fb1..c8f75a69 100644 --- a/core/MenuStyle_Radio.cpp +++ b/core/MenuStyle_Radio.cpp @@ -16,6 +16,7 @@ #include "sm_stringutil.h" #include "UserMessages.h" #include "GameConfigs.h" +#include "PlayerManager.h" extern const char *g_RadioNumTable[]; CRadioStyle g_RadioMenuStyle; @@ -26,6 +27,11 @@ CRadioStyle::CRadioStyle() : m_players(new CBaseMenuPlayer[256+1]) { } +void CRadioStyle::OnSourceModAllInitialized() +{ + g_Players.AddClientListener(this); +} + void CRadioStyle::OnSourceModLevelChange(const char *mapName) { if (g_bRadioInit) @@ -55,6 +61,7 @@ void CRadioStyle::OnSourceModLevelChange(const char *mapName) void CRadioStyle::OnSourceModShutdown() { + g_Players.RemoveClientListener(this); g_UserMsgs.UnhookUserMessage(g_ShowMenuId, this, false); while (!m_FreeDisplays.empty()) diff --git a/core/MenuStyle_Radio.h b/core/MenuStyle_Radio.h index 1c86778f..d19dc245 100644 --- a/core/MenuStyle_Radio.h +++ b/core/MenuStyle_Radio.h @@ -37,6 +37,7 @@ class CRadioStyle : public: CRadioStyle(); public: //SMGlobalClass + void OnSourceModAllInitialized(); void OnSourceModLevelChange(const char *mapName); void OnSourceModShutdown(); public: //BaseMenuStyle