3333#include " filesystem.h"
3434#include " core/sp_gamedir.h"
3535#include " utility/wrap_macros.h"
36- #include " modules/listeners/listeners.h"
36+ #include " modules/listeners/listenermanager.h"
37+ #include " modules/entities/entities_wrap.h"
3738
3839// ---------------------------------------------------------------------------------
3940// External variables
@@ -66,27 +67,23 @@ CAddonManager::~CAddonManager( void )
6667// ---------------------------------------------------------------------------------
6768void CAddonManager::GameFrame ()
6869{
69- // Dispatch all tick listeners
70- get_tick_listener_manager ()->call_listeners ();
70+ CALL_LISTENERS (get_tick_listener_manager ());
7171}
7272
7373// ---------------------------------------------------------------------------------
7474// Calls network id validated listeners.
7575// ---------------------------------------------------------------------------------
7676void CAddonManager::NetworkIDValidated ( const char *pszUserName, const char *pszNetworkID )
7777{
78- // Dispatch all NetwordIDValidatedListeners
79- get_networkid_validated_listener_manager ()->call_listeners (pszUserName, pszNetworkID);
78+ CALL_LISTENERS (get_networkid_validated_listener_manager (), pszUserName, pszNetworkID);
8079}
8180
82-
8381// ---------------------------------------------------------------------------------
8482// Calls level init listeners.
8583// ---------------------------------------------------------------------------------
8684void CAddonManager::LevelInit ( char const *pMapName )
8785{
88- // Dispatch all LevelInit listeners
89- get_level_init_listener_manager ()->call_listeners (pMapName);
86+ CALL_LISTENERS (get_level_init_listener_manager (), pMapName);
9087}
9188
9289// ---------------------------------------------------------------------------------
@@ -95,54 +92,52 @@ void CAddonManager::LevelInit( char const *pMapName )
9592// TODO: will not work if this is really a list
9693void CAddonManager::ServerActivate ( edict_t *pEdictList, int edictCount, int clientMax )
9794{
98- // Dispatch all LevelInit listeners
99- get_server_activate_listener_manager ()-> call_listeners (pEdictList , edictCount, clientMax);
95+ CEdict edict = CEdict (pEdictList);
96+ CALL_LISTENERS ( get_server_activate_listener_manager (), edict , edictCount, clientMax);
10097}
10198
10299// ---------------------------------------------------------------------------------
103100// Calls level shutdown listeners.
104101// ---------------------------------------------------------------------------------
105102void CAddonManager::LevelShutdown ( void )
106103{
107- // Dispatch all tick listeners
108- get_level_shutdown_listener_manager ()->call_listeners ();
104+ CALL_LISTENERS (get_level_shutdown_listener_manager ());
109105}
110106
111-
112107// ---------------------------------------------------------------------------------
113108// Calls client active listeners.
114109// ---------------------------------------------------------------------------------
115110void CAddonManager::ClientActive ( edict_t *pEntity )
116111{
117- // Dispatch all LevelInit listeners
118- get_client_active_listener_manager ()-> call_listeners (pEntity );
112+ CEdict edict = CEdict (pEntity);
113+ CALL_LISTENERS ( get_client_active_listener_manager (), edict );
119114}
120115
121116// ---------------------------------------------------------------------------------
122117// Calls client disconnect listeners.
123118// ---------------------------------------------------------------------------------
124119void CAddonManager::ClientDisconnect ( edict_t *pEntity )
125120{
126- // Dispatch all LevelInit listeners
127- get_client_disconnect_listener_manager ()-> call_listeners (pEntity );
121+ CEdict edict = CEdict (pEntity);
122+ CALL_LISTENERS ( get_client_disconnect_listener_manager (), edict );
128123}
129124
130125// ---------------------------------------------------------------------------------
131126// Calls client put in server listeners.
132127// ---------------------------------------------------------------------------------
133128void CAddonManager::ClientPutInServer ( edict_t *pEntity, char const *playername )
134129{
135- // Dispatch all LevelInit listeners
136- get_client_put_in_server_listener_manager ()-> call_listeners (pEntity , playername);
130+ CEdict edict = CEdict (pEntity);
131+ CALL_LISTENERS ( get_client_put_in_server_listener_manager (), edict , playername);
137132}
138133
139134// ---------------------------------------------------------------------------------
140135// Calls client settings changed listeners.
141136// ---------------------------------------------------------------------------------
142137void CAddonManager::ClientSettingsChanged ( edict_t *pEdict )
143138{
144- // Dispatch all LevelInit listeners
145- get_client_settings_changed_listener_manager ()-> call_listeners (pEdict );
139+ CEdict edict = CEdict (pEdict);
140+ CALL_LISTENERS ( get_client_settings_changed_listener_manager (), edict );
146141}
147142
148143// ---------------------------------------------------------------------------------
@@ -151,8 +146,8 @@ void CAddonManager::ClientSettingsChanged( edict_t *pEdict )
151146void CAddonManager::ClientConnect ( bool *bAllowConnect, edict_t *pEntity,
152147 const char *pszName, const char *pszAddress, char *reject, int maxrejectlen )
153148{
154- // Dispatch all LevelInit listeners
155- get_client_connect_listener_manager ()-> call_listeners ( bAllowConnect, pEntity , pszName, pszAddress, reject, maxrejectlen);
149+ CEdict edict = CEdict (pEntity);
150+ CALL_LISTENERS ( get_client_connect_listener_manager (), * bAllowConnect, edict , pszName, pszAddress, reject, maxrejectlen);
156151}
157152
158153// ---------------------------------------------------------------------------------
@@ -162,29 +157,28 @@ void CAddonManager::OnQueryCvarValueFinished( QueryCvarCookie_t iCookie,
162157 edict_t *pPlayerEntity, EQueryCvarValueStatus eStatus, const char *pCvarName,
163158 const char *pCvarValue )
164159{
165-
166- // Dispatch all LevelInit listeners
167- get_client_fully_connect_listener_manager ()->call_listeners (iCookie, pPlayerEntity, eStatus, pCvarName, pCvarValue);
160+ CEdict edict = CEdict (pPlayerEntity);
161+ CALL_LISTENERS (get_on_query_cvar_value_finished_listener_manager (), (int ) iCookie, edict, eStatus, pCvarName, pCvarValue);
168162}
169163//
170164//
171165//
172166#if (SOURCE_ENGINE >= 3)
173167void CAddonManager::ClientFullyConnect ( edict_t *pEntity )
174168{
175- // Dispatch all LevelInit listeners
176- get_client_fully_connect_listener_manager ()-> call_listeners (pEntity );
169+ CEdict edict = CEdict (pEntity);
170+ CALL_LISTENERS ( get_client_fully_connect_listener_manager (), edict );
177171}
178172
179173void CAddonManager::OnEdictAllocated ( edict_t *edict )
180174{
181- // Dispatch all LevelInit listeners
182- get_on_edict_allocated_listener_manager ()-> call_listeners ( edict);
175+ CEdict edict = CEdict (pEntity);
176+ CALL_LISTENERS ( get_on_edict_allocated_listener_manager (), edict);
183177}
184178
185179void CAddonManager::OnEdictFreed ( const edict_t *edict )
186180{
187- // Dispatch all LevelInit listeners
188- get_on_edict_freed_listener_manager ()-> call_listeners ( const_cast < edict_t *>( edict) );
181+ CEdict edict = CEdict (pEntity);
182+ CALL_LISTENERS ( get_on_edict_freed_listener_manager (), edict);
189183}
190184#endif
0 commit comments