Raised This Month: $ Target: $400
 0% 

resetscore error


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
lashsh1
Member
Join Date: Dec 2010
Old 04-22-2012 , 06:33   resetscore error
Reply With Quote #1

Code:
L 04/22/2012 - 01:58:06: [CSTRIKE] Invalid player 15
L 04/22/2012 - 01:58:06: [AMXX] Run time error 10 (plugin "resetscore.amxx") (native "cs_set_user_deaths") - debug not enabled!
L 04/22/2012 - 01:58:06: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).

Code:
/*
	Copyright © 2009, aNNakin
		Suport & help : http://forums.alliedmods.net/showthread.php?t=103669
	
	ResetScore is free software;
	you can redistribute it and/or modify it under the terms of the
	GNU General Public License as published by the Free Software Foundation.

	This program is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
	GNU General Public License for more details.

	You should have received a copy of the GNU General Public License
	along with ResetScore; if not, write to the
	Free Software Foundation, Inc., 59 Temple Place - Suite 330,
	Boston, MA 02111-1307, USA.
*/

#include < amxmodx >
#include < amxmisc >
#include < cstrike >
#include < fun >

#define PLUGIN "ResetScore"
#define VERSION "0.2.0"
#define AUTHOR "aNNakin"

new const gs_Commands[ ][ ] =
{
	"say /resetscore",
	"say /restartscore"
	"say /rs",
	"say /ganuleba"
};

new ToggleMax, ToggleInterval, ToggleMoney, g_Pointer;
new gi_Reset[ 33 ], gi_CanReset[ 33 ];

public plugin_init ( )
{
	register_plugin ( PLUGIN, VERSION, AUTHOR );
	register_dictionary ( "resetscore.txt" );
	
	register_concmd ( "amx_resetscore", "resetscore_concmd", ADMIN_KICK, "- <target>" );
	
	for ( new i_Index; i_Index < sizeof gs_Commands; i_Index++ )
		register_clcmd ( gs_Commands[ i_Index ], "resetscore_clcmd" );
	
	// how many times players can reset their score
	ToggleMax = register_cvar ( "resetscore_max", "5" );
	
	// how many minutes must pass before players can reset theirs score again
	ToggleInterval = register_cvar ( "resetscore_interval", "3" );
	
	// -2 don't set, -1 set at mp_startmoney value, another number will set to that value (e.g 0)
	ToggleMoney = register_cvar ( "resetscore_money", "-1" );
	
	g_Pointer = get_cvar_pointer ( "mp_startmoney" );
	
}

public client_putinserver ( e_Index ) gi_Reset[ e_Index ] = get_pcvar_num ( ToggleMax );

public resetscore_clcmd ( e_Index )
{
	new i_TimeCvar, i_Free, i_GameTime, Float:f_GameTime;
			
	if ( ScoreReseted ( e_Index ) )
	{
		client_print ( e_Index, print_chat, "%L", e_Index, "RESETSCORE_PLAYER_ALREADY_RESETED" );
		return PLUGIN_HANDLED;
	}
	
	f_GameTime = get_gametime ( );
	i_GameTime = floatround ( f_GameTime );
	i_TimeCvar = get_pcvar_num ( ToggleInterval );
	
	if ( ! get_pcvar_num ( ToggleMax ) )
	{
		i_Free = 1;
		goto CheckLimit;
		FreeReset:
		client_print ( e_Index, print_chat, "%L", e_Index, "RESETSCORE_PLAYER_SUCCES_FREE_RESET" );
		ResetScore ( e_Index );
		gi_CanReset[ e_Index ] = i_GameTime;
	}
	else
	{
		if ( gi_Reset[ e_Index ] > 0 )
		{
			CheckLimit:
			if ( gi_CanReset[ e_Index ] && ( i_GameTime - gi_CanReset[ e_Index ] < ( i_TimeCvar * 60 ) ) )
			{
				client_print ( e_Index, print_chat, "%L", e_Index, "RESETSCORE_PLAYER_WAIT_BEFORE_RESET", i_TimeCvar );
				return PLUGIN_HANDLED;
			}
			else	
				if ( i_Free )
					goto FreeReset;
				
			gi_Reset[ e_Index ]--;
			gi_CanReset[ e_Index ] = i_GameTime;
			ResetScore ( e_Index );
					
			if ( gi_Reset[ e_Index ] > 0 )
			{
				if ( gi_Reset[ e_Index ] == 1 )
					client_print ( e_Index, print_chat, "%L", e_Index, "RESETSCORE_PLAYER_SUCCESS_ONE_REMAIN" );
				else	
					client_print ( e_Index, print_chat, "%L", e_Index, "RESETSCORE_PLAYER_SUCCESS_MORE_RAMAIN", gi_Reset[ e_Index ] );
			}
			else
				client_print ( e_Index, print_chat, "%L", e_Index, "RESETSCORE_PLAYER_SUCCESS_NOT_REMAIN" );
			
			return PLUGIN_CONTINUE;
		}
		else
		{
			client_print ( e_Index, print_chat, "%L", e_Index, "RESETSCORE_PLAYER_CANT_USE_NOT_REMAIN" );
			return PLUGIN_HANDLED;
		}
	}
	
	return PLUGIN_CONTINUE;
}

public resetscore_concmd ( id, level, cid )
{
	if ( ! cmd_access ( id, level, cid, 2 ) )
		return PLUGIN_HANDLED;
		
	new s_Arg[ 32 ];
	read_argv ( 1, s_Arg, 31 );
	
	new e_Target = cmd_target ( id, s_Arg, 3 );
	if ( ! e_Target )
		return PLUGIN_HANDLED;
		
	if ( ScoreReseted ( e_Target ) )
	{
		console_print ( id, "%L", id, "RESETSCORE_ADMIN_ALREADY_RESETED" );
		return PLUGIN_HANDLED;
	}
	
	ResetScore ( e_Target );
	
	client_print ( e_Target, print_chat, "%L", e_Target, "RESETSCORE_PLAYER_ADMIN_HAS_RESETSCORE" );
	console_print ( id, "%L", id, "RESETSCORE_ADMIN_SUCCESS_RESETED" );
	return PLUGIN_HANDLED;
}
	
ResetScore ( e_Index )
{
	set_user_frags ( e_Index, 0 );
	cs_set_user_deaths ( e_Index, 0 );
	set_user_frags ( e_Index, 0 );
	cs_set_user_deaths ( e_Index, 0 );
	
	new i_MoneyCvar = get_pcvar_num ( ToggleMoney );
	new i_Value;
	
	// make sure he won't get more money
	if ( i_MoneyCvar >= 0 && cs_get_user_money ( e_Index ) <= i_MoneyCvar )
		return 1;
		
	switch ( i_MoneyCvar )
	{
		case -2: return 1;
		case -1: i_Value = get_pcvar_num ( g_Pointer );
		default: i_Value = i_MoneyCvar;
	}
	
	cs_set_user_money ( e_Index, i_Value );
	return 1;
}

ScoreReseted ( e_Index )
	return  ( !get_user_frags ( e_Index ) && !get_user_deaths ( e_Index ) ) ? 1 : 0;
please help
__________________

Last edited by lashsh1; 04-22-2012 at 06:45.
lashsh1 is offline
EpicMonkey
buttmonkey
Join Date: Feb 2012
Old 04-22-2012 , 09:30   Re: resetscore error
Reply With Quote #2

no biggie , just check if user is connected
EpicMonkey is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 07:41.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode