|
Veteran Member
|
11-18-2015
, 00:19
Re: Switch team scores
|
#9
|
Any help?
Quote:
L 11/17/2015 - 03:28:21: [ORPHEU] Invalid memory structure "m_iNumCTWins"
L 11/17/2015 - 03:28:21: [AMXX] Run time error 10 (plugin "swap_teams.amxx") (native "OrpheuMemorySetAtAddress") - debug not enabled!
L 11/17/2015 - 03:28:21: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
|
Debug.
Quote:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <orpheu>
#include <orpheu_memory>
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"
#define SCORE_T 0
#define SCORE_CT 1
#define set_mp_pdata(%1,%2) ( OrpheuMemorySetAtAddress( g_pGameRules, %1, 1, %2 ) )
#define get_mp_pdata(%1) ( OrpheuMemoryGetAtAddress( g_pGameRules, %1 ) )
new g_pGameRules;
new g_TeamScore[2];
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("TeamScore", "eventTeamScore", "a");
register_clcmd( "say /swap", "ClientCommand_SetTeamScore");
}
public plugin_precache()
{
OrpheuRegisterHook( OrpheuGetFunction( "InstallGameRules" ), "OnInstallGameRules", OrpheuHookPost );
}
public OnInstallGameRules()
{
g_pGameRules = OrpheuGetReturn();
}
public eventTeamScore()
{
new sTeam[2];
read_data(1, sTeam, 1);
if( sTeam[0] == 'T' )
{
g_TeamScore[SCORE_T] = read_data(2);
}
else
{
g_TeamScore[SCORE_CT] = read_data(2);
}
return PLUGIN_CONTINUE;
}
public ClientCommand_SetTeamScore ()
{
set_mp_pdata( "m_iNumCTWins", g_TeamScore[SCORE_T] );
set_mp_pdata( "m_iNumTerroristWins", g_TeamScore[SCORE_CT] );
UpdateTeamScores( .notifyAllPlugins = true );
}
UpdateTeamScores ( const bool:notifyAllPlugins = false )
{
static OrpheuFunction:handleFuncUpdateTeamScores;
if ( !handleFuncUpdateTeamScores )
{
handleFuncUpdateTeamScores = OrpheuGetFunction( "UpdateTeamScores", "CHalfLifeMultiplay" )
}
( notifyAllPlugins ) ?
OrpheuCallSuper( handleFuncUpdateTeamScores, g_pGameRules ) :
OrpheuCall( handleFuncUpdateTeamScores, g_pGameRules );
}
|
|
|
|
|