View Single Post
4ever16
Veteran Member
Join Date: Apr 2015
Old 11-18-2015 , 00:19   Re: Switch team scores
Reply With Quote #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:
L 11/17/2015 - 0355: [ORPHEU] Invalid memory structure "m_iNumCTWins"
L 11/17/2015 - 0355: [AMXX] Displaying debug trace (plugin "swap_teams.amxx")
L 11/17/2015 - 0355: [AMXX] Run time error 10: native error (native "OrpheuMemorySetAtAddress")
L 11/17/2015 - 0355: [AMXX] [0] swap_teams.sma::ClientCommand_SetTeamScore (line 56)
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 );
}
4ever16 is offline