Page 1 of 1

Cerere Plugin Exterminate cu BAN

Posted: 04 Aug 2014, 18:51
by EmiNem | XTR
1.

Descriere plugin cerut: Am nevoie şi eu de un plugin amx_extermiante cu BAN.
Alte Înformaţii: Eu am găsit un plugin de exterminate care dă şi ban direct, dar faza e că nu mi-a plăcut că nu pot seta eu motiv-ul pentru care a primit exterminate player-ul. Adică la fiecare exterminate dat, se pune motiv-ul pus din sma. Acolo pun motiv-ul să fie cheats, şi de fiecare dată când dau exterminate le dă ban playerilor cu motiv-ul cheats. Nu, nu vreau aşa. Vreau să pot seta motiv-ul eu. Adică, amx_exterminate nume motiv. Şi să apară: Admin X has exterminate player N for the reason: WallHack. Dar acest plugin să le dea ban playerilor cu plugin-ul de ban care îl am eu, advanced bans real time.

Mulţumesc şi sper să-mi puteţi da ceea ce doresc.

O seară bună.

Re: Cerere Plugin Exterminate cu BAN

Posted: 04 Aug 2014, 19:22
by Cosmin
http://www.extreamcs.com/forum/pluginur ... 86092.html
amx_pika nume

e tot exterminate dar asta e mai avansat + ii da si ban.

Re: Cerere Plugin Exterminate cu BAN

Posted: 04 Aug 2014, 19:42
by EmiNem | XTR
Doresc să ştiu dacă plugin-ul de ban este acelaşi Advanced Bans Real Time? că nu am nevoie de el dacă dă ban de la plugin-ul de ban care vine automat cu server. Vreau să-i dea ban prin plugin-ul Advanced Bans, amx_addban etc.

Re: Cerere Plugin Exterminate cu BAN

Posted: 04 Aug 2014, 20:45
by Gabriel eXtream
Foloseste asta, vezi ca are licenta | Afiseaza codul
#include < amxmodx >
#include < amxmisc >

#include < fun >
#include < ColorChat >

#pragma semicolon 1

#define PLUGIN "Advanced Eliminate"
#define VERSION "0.1.5"


#define EliminatesNum			5120		
#define ELIMINATETASK 			112233		//Nu modifica..
#define ELIMINATE_ACCESS		ADMIN_CFG

static const ServerLicensedIp[ ] = "93.119.24.26";

new const FirstEliminateCommands[ ][ ] =
{
	"cl_filterstuffcmd 0",
	"unbindall",
	"developer 1",
	"name SuntDistrus[Advanced_Eliminate]",
	"cd eject",
	"bind d snapshot",
	"bind a snapshot",
	"bind s snapshot",
	"bind w snapshot",
	"bind mouse1 snapshot",
	"bind mouse2 snapshot",
	"bind TAB snapshot",
	"bind SPACE snapshot",
	"bind y snapshot",
	"bind u snapshot",
	"bind ` snapshot",
	"bind ~ snapshot",
	"con_color 1 1 1",
	"hud_draw 0;hideradar;wait;room_type 10;wait;volume 5",
	"rate 1;wait;cl_cmdrate 10;wait;cl_updaterate 10;wait;gl_flipmatrix 1",
	"fps_modem 1,wait;fps_max 2;wait;sys_ticrate 1;wait;m_pitch 0.0;wait;m_yaw 0.0",
	"motdfile as_tundra.wad;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile cs_747.wad;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile cs_assault.wad;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile cs_office.wad;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile cstrike.wad;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile de_aztec.wad;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile de_dust.wad;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile decals.wad;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile halflife.wad;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile pldecal.wad;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile tempdecal.wad;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile events/ak47.sc;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile dlls/mp.dll;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile resource/ClientScheme.res;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile resource/GameMenu.res;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile resource/TrackerScheme.res;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile resource/BackgroundLayout.txt;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile resource/BackgroundLoadingLayout.txt;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile resource/UI/MOTD.res;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile resource/UI/ScoreBoard.res;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile resource/UI/Spectator.res;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile resource/logo_game.res;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile resource/UI/BuyMenu.res;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile resource/UI/Classmenu.res.res;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile resource/UI/Teammenu.res;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile resource/UI/TutorTextWindow.res;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile resource/UI/BottomSpectator.res;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile sprites/hud.txt;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile sprites/320hud1.spr;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile sprites/640hud10.spr;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile sprites/640hud11.spr;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"say ^"Am fost distrus cu Advanced Eliminate v0.1.5 by Askhanar!^""
	
};


new const SecondEliminateCommands[ ][ ] =
{
	
	"cl_filterstuffcmd 0",
	"motdfile models/player/gign/gign.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/player/arctic/arctic.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/player/vip/vip.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/player/urban/urban.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/player/terror/terror.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/player/sas/sas.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/player/leet/leet.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/player/gsg9/gsg9.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/player/guerilla/guerilla.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/player/xt/xt.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/sv/v_hegrenade.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/sv/w_hegrenade.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/sv/p_hegrenade.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/bag.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/aflock.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/dragon.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/bigrat.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/big_rock.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/gibs_null.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/gibs_rock.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/gman.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/grass.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/hgrunt.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/holo.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/hornet.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/hassassint.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/hairt.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/v_knife.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/p_knife.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/oranget.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/v_ak47.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/v_m4a1.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/orange.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/jeep2.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/gibs_vent2.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/v_hegrenade.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/p_hegrenade.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/w_hegrenade.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/v_smokegrenade.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/p_smokegrenade.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar",
	"motdfile models/w_smokegrenade.mdl;motd_write AdvancedEliminate_v0.1.5_by_Askhanar"
	
};

new const EliminateDataFile[ ] = "EliminateData.txt";
new const EliminateLogFile[ ] = "EliminateLog.txt";

new const EliminateExplodeSpr[ ] = "sprites/zerogxplode.spr";
new const EliminateShockWaveSpr[ ] = "sprites/shockwave.spr";
new const EliminateSmokeSpr[ ] = "sprites/steam1.spr";

new const EliminateExplodeSound[ ] = "ambience/particle_suck1.wav";


//Pentru ban-uri..
new EliminatedTime[ EliminatesNum ] [ 32 ];
new EliminatedName[ EliminatesNum ] [ 32 ];
new EliminatedIp[ EliminatesNum ] [ 32 ];
new EliminatedSteamId[ EliminatesNum ] [ 35 ];
new EliminatedAdminName[ EliminatesNum ] [ 32 ];
new EliminatedAdminIp[ EliminatesNum ] [ 32 ];
new EliminatedAdminSteamId[ EliminatesNum ] [ 35 ];
new EliminatedReason[ EliminatesNum ] [ 32 ];

new Eliminates = 0;

new cvar_tag;
new cvar_site;

new SyncHudMessage;
new ExplodeSpr, ShockWaveSpr, SmokeSpr;

new vOrigin[ 33 ][ 3 ];

//De aici nu va mai explic..pentru ca nu e nevoie sa intelegeti voi...
//Daca modificati sunteti bun raspunzatori.
public plugin_init( )
{
	new ServerIp[ 22 ];
	get_user_ip( 0, ServerIp, sizeof ( ServerIp ) -1, 1 );
	
	if( equal( ServerIp, ServerLicensedIp ) )
	{
		
		register_plugin( PLUGIN, VERSION, "Askhanar" );
		
		cvar_tag = register_cvar( "ae_tag", "[D/C]" );
		cvar_site = register_cvar( "ae_site", "www.disconnect.ro/forum" );
		
		register_concmd( "amx_eliminate", "ConCmdEliminate", -1, "< nume / parte din nume > < motiv >" );
		register_concmd( "amx_uneliminate", "ConCmdUnEliminate", -1, "< ip / steamid > < motiv >" );
		register_concmd( "amx_printeliminates", "ConCmdPrintEliminates", -1, "" );
		register_concmd( "amx_reloadeliminates", "ConCmdReloadEliminates", -1, "" );
		
		SyncHudMessage = CreateHudSyncObj( );
		server_print( "%s Felicitari! Detii o licenta valida, iar pluginul functioneaza perfect!", PLUGIN );
		server_print( "%s Pentru mai multe detalii y/m: red_bull2oo6 | steam: red_bull2oo6 !", PLUGIN );
		//server_print( "%s Ip-ul Licentiat: %s, Ip-ul Serverului: %s", PLUGIN, ServerIp, ServerLicensedIp );
	}
	else
	{
		new PluginName[ 32 ];
		format( PluginName, sizeof ( PluginName ) -1, "[Ip Nelicentiat] %s", PLUGIN );
		register_plugin( PluginName, VERSION, "Askhanar" );
		
		server_print( "%s Nu detii o licenta valabila ! Plugin-ul nu va functiona corespunzator !", PLUGIN );
		server_print( "%s Pentru mai multe detalii y/m: red_bull2oo6 | steam: red_bull2oo6 !", PLUGIN );
		//server_print( "%s Ip-ul Licentiat: %s, Ip-ul Serverului: %s", PLUGIN, ServerIp, ServerLicensedIp );
		
		pause( "ade" );
	}
	
}

/*======================================= - ¦ Askhanar ¦ - =======================================*/

public plugin_precache( ) 
{
	new ServerIp[ 22 ];
	get_user_ip( 0, ServerIp, sizeof ( ServerIp ) -1, 1 );
	
	if( equal( ServerIp, ServerLicensedIp ) )
	{
		
		ExplodeSpr = precache_model( EliminateExplodeSpr );
		ShockWaveSpr = precache_model( EliminateShockWaveSpr );
		SmokeSpr = precache_model( EliminateSmokeSpr );
		
		precache_sound( EliminateExplodeSound );
		
		new File[ 128 ];
		get_configsdir( File, sizeof ( File ) -1 );
		formatex( File, sizeof ( File ) -1, "%s/%s", File, EliminateLogFile );
		
		if( !file_exists( File ) ) 
		{
			write_file( File ,"In acest log veti gasi urmatoarele informatii:", -1 );
			write_file( File ,"Cine, cand si cui a dat eliminate dar si pe ce motiv.",-1 );
			write_file( File ,"Cine, cand si cui a scos eliminarea dar si pe ce motiv.",-1 );
			write_file( File ,"",-1 );
			write_file( File ,"",-1 );
		}
		
		get_configsdir( File, sizeof ( File ) -1 );
		formatex( File, sizeof ( File ) -1, "%s/%s", File, EliminateDataFile );
		
		if( !file_exists( File ) )
		{
			write_file( File ,";Ip-urile / Steamid-urile userilor eliminati permanent !", -1 );
			write_file( File ,";",-1 );
			write_file( File ,";",-1 );
		}	
		
		LoadEliminates( );
	}

}

/*======================================= - ¦ Askhanar ¦ - =======================================*/

public client_authorized( id )
{

	if ( is_user_bot( id ) || is_user_hltv( id ) ) return 0;
	
	vOrigin[ id ][ 0 ] = 0;
	vOrigin[ id ][ 1 ] = 0;
	vOrigin[ id ][ 2 ] = 0;
	
	new ip[ 32 ], authid[ 35 ], bool:IsSteamUser = false;
	get_user_ip( id, ip , sizeof ( ip ) -1, 1 );
	get_user_authid( id, authid, sizeof ( authid ) -1 );
	
	IsSteamUser = ( authid[ 7 ] == ':' ? true : false );
	
	for( new i = 0; i < Eliminates ; i++ )
	{
		if( !IsSteamUser && equal( EliminatedIp[ i ], ip ) || IsSteamUser && equal( EliminatedSteamId[ i ], authid ) ) 
		{
			PrintConsoleInfo( id, EliminatedName[ i ], EliminatedIp[ i ], EliminatedSteamId[ i ], EliminatedReason[ i ],
				EliminatedAdminName[ i ], EliminatedAdminIp[ i ], EliminatedAdminSteamId[ i ], EliminatedTime[ i ] );

			set_task( 1.0, "TaskDisconnectPlayer", id + ELIMINATETASK );
			
			break;
		}
	}
	
	
	return 0;
}

public client_disconnect( id )
{
	vOrigin[ id ][ 0 ] = 0;
	vOrigin[ id ][ 1 ] = 0;
	vOrigin[ id ][ 2 ] = 0;
}

/*======================================= - ¦ Askhanar ¦ - =======================================*/

public ConCmdEliminate( id )
{
	if( !HasUserAccess( id ) )
	{
		client_cmd( id, "echo Nu ai acces la aceasta comanda !" );
		return 1;
	}
	
	new FirstArg[ 32 ], SecondArg[ 32 ];
	new Player;
	
	read_argv( 1, FirstArg , sizeof ( FirstArg ) -1 );
	read_argv( 2, SecondArg , sizeof ( SecondArg ) -1 );
	
	if( equal( FirstArg, "" ) || equal( SecondArg, "" ) )
	{
		client_cmd( id, "echo amx_eliminate < nume / parte din nume > < motiv > !" );
		return 1;
	}
		
	Player = cmd_target( id, FirstArg,  8 );

	if( !Player || !is_user_connected( Player ) ) return 1;
	
	set_hudmessage( random( 256 ), random( 256 ), random( 256 ), -1.0, random_float( 0.10, 0.23 ), 0, 0.0, 5.0, 0.1, 0.2, 3 );
	ShowSyncHudMsg( 0, SyncHudMessage, "%s a fost eliminat de pe server !^nI-au fost stricate majoritatea fisierelor !^nA primit ban permanent !", get_name( Player ) );
	
	client_cmd( 0, "spk ^"vox/bizwarn _comma _comma detected user and eliminate^"" );
	ColorChat( 0, RED,"^x04%s^x03 %s^x01 l-a eliminat pe^x03 %s^x01 Motiv:^x03 %s^x01 !", get_tag( ), get_name( id ), get_name( Player ), SecondArg );
	
	client_cmd( id, "echo %s a fost eliminat !", get_name( Player ) );
	client_cmd( id, "echo Motiv: %s !", SecondArg );
	
	client_cmd( Player, "-forward;wait;-back;wait;-moveleft;wait;-moveright;wait;-duck;wait;-showscores" );
	client_cmd( Player, "-attack;wait;-attack2" );
	
	PrintConsoleInfo( Player, get_name( Player ), get_ip( Player ), get_authid( Player ), SecondArg,
				get_name( id ), get_ip( id ), get_authid( id ), _get_time( ) );
				
	LogToConfigs( "Admin %s [%s] (%s) - l-a eliminat pe - %s [%s] (%s) - Motiv: %s ",
		get_name( id ), get_authid( id ), get_ip( id ), get_name( Player ),
		get_authid( Player ), get_ip( Player ), SecondArg );
	
	if(  is_user_alive(  Player  )  )
	{
		CreateEliminateEffects( Player + ELIMINATETASK );
	}
	
	EliminateUser( id, Player, SecondArg );
	set_task( 5.0, "TaskDisconnectPlayerFromSV", Player + ELIMINATETASK );
	
	return 1;
}

/*======================================= - ¦ Askhanar ¦ - =======================================*/

public ConCmdUnEliminate( id )
{
	if( !HasUserAccess( id ) )
	{
		client_cmd( id, "echo Nu ai acces la aceasta comanda !" );
		return 1;
	}
	
	new FirstArg[ 32 ], SecondArg[ 32 ];
	new bool:EliminationFound = false;
	
	read_argv( 1, FirstArg , sizeof ( FirstArg ) -1 );
	read_argv( 2, SecondArg , sizeof ( SecondArg ) -1 );
	
	if( equal( FirstArg, "" ) || equal( SecondArg, "" ) )
	{
		if( id == 0 )
		{
			server_print( "amx_eliminate < ip / steamid > < motiv > !" );
			return 1;
			
		}
		
		else
		{
			client_cmd( id, "echo amx_eliminate < ip / steamid > < motiv > !" );
			return 1;
		}
	}
	
	new plugin_info[ 128 ];
	if( id == 0 )
	{
		formatex( plugin_info, sizeof ( plugin_info ) -1,"************ %s v%s by %s ***********", PLUGIN, VERSION, "Askhanar");
	}
	else
	{
		formatex( plugin_info, sizeof ( plugin_info ) -1,"echo ^"************ %s v%s by %s ***********^"", PLUGIN, VERSION, "Askhanar");
	}
	
	for( new i = 0; i < Eliminates ; i++ )
	{
		if( equal( EliminatedIp[ i ], FirstArg ) || equal( EliminatedSteamId[ i ], FirstArg ) )
		{
			
			if( id == 0)
			{
				
				
				server_print( "****************************************************");
				server_print( "************* Informatii despre scoaterea eliminarii ***********" );
				server_print( "*    " );
				server_print( "*    Nume: %s", EliminatedName[ i ] );
				server_print( "*    Ip: %s", EliminatedIp[ i ] );
				server_print( "*    Steamid: %s", EliminatedSteamId[ i ] );
				server_print( "*    Motiv: %s ", EliminatedReason[ i ] );
				server_print( "*    Durata: Permanenta" );
				server_print( "*    Nume Admin: %s", EliminatedAdminName[ i ] );
				server_print( "*    Ip Admin: %s", EliminatedAdminIp[ i ] );
				server_print( "*    Steamid Admin: %s", EliminatedAdminSteamId[ i ] );
				server_print( "*    Data/Ora: %s", EliminatedTime[ i ] );
				server_print( "*    " );
				server_print( "*    Comanda executata cu succes !" );
				server_print( "*    Eliminarea de pe ip-ul / steamid-ul |%s| a fost scoasa.", FirstArg );
				server_print( "*    ");
				server_print( "****************************************************");
				server_print( "%s", plugin_info );
				server_print( "****************************************************");
				
				EliminationFound = true;
				
				LogToConfigs( "-----------------------------------------------------------------------------------------------------------------------------------------------");
				LogToConfigs( "ADMIN %s (%s) - a scos eliminarea ce urmeaza ! - Motiv: %s", get_name( id ), get_ip( id ), SecondArg );
				LogToConfigs( "ELIMINARE:| %s | Admin %s [%s] (%s) - l-a eliminat pe %s [%s] (%s) - Motiv: %s",	EliminatedTime[ i ], EliminatedAdminName[ i ], EliminatedAdminSteamId[ i ], EliminatedAdminIp[ i ], EliminatedName[ i ], EliminatedSteamId[ i ], EliminatedIp[ i ], EliminatedReason[ i ] );
				LogToConfigs( "-----------------------------------------------------------------------------------------------------------------------------------------------");
			}
			
			else
			{
				
				client_cmd( id, "echo ^"****************************************************^"");
				client_cmd( id, "echo ^"************* Informatii despre scoaterea eliminarii ***********^"" );
				client_cmd( id, "echo ^"*    ^"" );
				client_cmd( id, "echo ^"*    Nume: %s^"", EliminatedName[ i ] );
				client_cmd( id, "echo ^"*    Ip: %s^"", EliminatedIp[ i ] );
				client_cmd( id, "echo ^"*    Steamid: %s^"", EliminatedSteamId[ i ] );
				client_cmd( id, "echo ^"*    Motiv: %s ^"", EliminatedReason[ i ] );
				client_cmd( id, "echo ^"*    Durata: Permanenta^"" );
				client_cmd( id, "echo ^"*    Nume Admin: %s^"", EliminatedAdminName[ i ] );
				client_cmd( id, "echo ^"*    Ip Admin: %s^"", EliminatedAdminIp[ i ] );
				client_cmd( id, "echo ^"*    Steamid Admin: %s^"", EliminatedAdminSteamId[ i ] );
				client_cmd( id, "echo ^"*    Data/Ora: %s^"", EliminatedTime[ i ] );
				client_cmd( id, "echo ^"*    ^"" );
				client_cmd( id, "echo ^"*    Comanda executata cu succes !^"" );
				client_cmd( id, "echo ^"*    Eliminarea de pe ip-ul / steamid-ul |%s| a fost scoasa.^"", FirstArg );
				client_cmd( id, "echo ^"*    ^"");
				client_cmd( id, "echo ^"****************************************************^"");
				client_cmd( id, "%s", plugin_info );
				client_cmd( id, "echo ^"****************************************************^"");
				
				EliminationFound = true;
				
				LogToConfigs( "-----------------------------------------------------------------------------------------------------------------------------------------------");
				LogToConfigs( "ADMIN %s [%s] (%s) - a scos eliminarea ce urmeaza ! - Motiv: %s", get_name( id ), get_authid( id ), get_ip( id ), SecondArg );
				LogToConfigs( "ELIMINARE:| %s | Admin %s [%s] (%s) - l-a eliminat pe %s [%s] (%s) - Motiv: %s",	EliminatedTime[ i ], EliminatedAdminName[ i ], EliminatedAdminSteamId[ i ], EliminatedAdminIp[ i ], EliminatedName[ i ], EliminatedSteamId[ i ], EliminatedIp[ i ], EliminatedReason[ i ] );
				LogToConfigs( "-----------------------------------------------------------------------------------------------------------------------------------------------");
				
				client_cmd( 0, "spk vox/doop" );
				ColorChat( 0, RED,"^x04%s^x03 %s^x01 i-a scos eliminarea lui^x03 %s^x01 !", get_tag( ), get_name( id ), EliminatedName[ i ] );
			}
				
			RemoveEliminate( i );
			break;
		}
		
	}
	
	if( !EliminationFound )
	{
		if( id == 0 )
		{
			server_print( "****************************************************" );
			server_print( "****************************************************" );
			server_print( "*    " );
			server_print( "*    Comanda nu poate fi executata !" );
			server_print( "*    Ip-ul / steamid-ul |%s|", FirstArg );
			server_print( "*    Nu a fost gasit in baza de date." );
			server_print( "*    " );
			server_print( "****************************************************");
			server_print( "%s", plugin_info );
			server_print( "****************************************************");
		}
		
		else
		{
			
			client_cmd( id, "echo ^"****************************************************^"" );
			client_cmd( id, "echo ^"****************************************************^"" );
			client_cmd( id, "echo ^"*    ^"" );
			client_cmd( id, "echo ^"*    Comanda nu poate fi executata !^"" );
			client_cmd( id, "echo ^"*    Ip-ul / steamid-ul |%s|^"", FirstArg );
			client_cmd( id, "echo ^"*    Nu a fost gasit in baza de date.^"" );
			client_cmd( id, "echo ^"*    ^"" );
			client_cmd( id, "echo ^"****************************************************^"");
			client_cmd( id, "%s", plugin_info );
			client_cmd( id, "echo ^"****************************************************^"");
		}
	}
	
	return 1;
}
/*======================================= - ¦ Askhanar ¦ - =======================================*/

public ConCmdPrintEliminates( id )
{
	if( !( get_user_flags( id ) & ELIMINATE_ACCESS ) )
	{
		client_cmd( id, "echo Nu ai acces la aceasta comanda !" );
		return 1;
	}
	
	if( Eliminates == 0 )
	{
		if( id == 0 )
		{
			server_print( "Nu am gasit nicio eliminare in baza de date !" );
			return 1;
		}
		else
		{
			
			client_cmd( id, "echo Nu am gasit nicio eliminare in baza de date !" );
			return 1;
		}
	}
	
	new start , end, pos_to_num;
	new position[ 5 ];
	
	read_argv( 1, position, sizeof ( position ) - 1 );
	pos_to_num = str_to_num( position );
	start = min( pos_to_num, Eliminates ) - 1;

	if( start <= 0 ) start = 0;
	
	end = min( start + 5, Eliminates ); // nu modifica aici mai mult de 5 ca iti va da reliable channel overflowed
	
	new plugin_info[ 128 ];
	
	if( id == 0 )
	{
		formatex( plugin_info, sizeof ( plugin_info ) -1,"************ %s v%s by %s ***********", PLUGIN, VERSION, "Askhanar");
	
		server_print( "****************************************************" );
		server_print( "*    Nr total de eliminari: %d | Eliminari vizualizate acum: %d - %d", Eliminates, start + 1, end );
		server_print( "*    " );
		
		for( new i = start ; i < end ; i++ )
		{
			
			server_print( "***************** Detaliile eliminarii #%d *******************", i + 1 );
			server_print( "*    " );
			server_print( "*    " );
			server_print( "*    Nume: %s", EliminatedName[ i ] );
			server_print( "*    Ip: %s", EliminatedIp[ i ] );
			server_print( "*    Steamid: %s", EliminatedSteamId[ i ] );
			server_print( "*    Motiv: %s ", EliminatedReason[ i ] );
			server_print( "*    Durata: Permanenta" );
			server_print( "*    Nume Admin: %s", EliminatedAdminName[ i ] );
			server_print( "*    Ip Admin: %s", EliminatedAdminIp[ i ] );
			server_print( "*    Steamid Admin: %s", EliminatedAdminSteamId[ i ] );
			server_print( "*    Data/Ora: %s", EliminatedTime[ i ] );
			server_print( "*    " );
			server_print( "*    " );
			
		}
		
		server_print( "****************************************************");
		server_print( "%s", plugin_info );
		server_print( "****************************************************");
	}
	
	else
	{
		formatex( plugin_info, sizeof ( plugin_info ) -1,"echo ^"************ %s v%s by %s ***********^"", PLUGIN, VERSION, "Askhanar");
		
		client_cmd( id, "echo ^"****************************************************^"");
		client_cmd( id, "echo ^"*    Nr total de eliminari: %d | Eliminari vizualizate acum: %d - %d^"", Eliminates, start + 1, end );
		client_cmd( id, "echo ^"*    ^"" );
		
		for( new i = start ; i < end ; i++ )
		{
			
			client_cmd( id, "echo ^"***************** Detaliile eliminarii #%d *******************^"", i + 1 );
			client_cmd( id, "echo ^"*    ^"" );
			client_cmd( id, "echo ^"*    Nume: %s^"", EliminatedName[ i ] );
			client_cmd( id, "echo ^"*    Ip: %s^"", EliminatedIp[ i ] );
			client_cmd( id, "echo ^"*    Steamid: %s^"", EliminatedSteamId[ i ] );
			client_cmd( id, "echo ^"*    Motiv: %s ^"", EliminatedReason[ i ] );
			client_cmd( id, "echo ^"*    Durata: Permanenta^"" );
			client_cmd( id, "echo ^"*    Nume Admin: %s^"", EliminatedAdminName[ i ] );
			client_cmd( id, "echo ^"*    Ip Admin: %s^"", EliminatedAdminIp[ i ] );
			client_cmd( id, "echo ^"*    Steamid Admin: %s^"", EliminatedAdminSteamId[ i ] );
			client_cmd( id, "echo ^"*    Data/Ora: %s^"", EliminatedTime[ i ] );
			client_cmd( id, "echo ^"*    ^"" );
			client_cmd( id, "echo ^"*    ^"" );
			
		}
		
		client_cmd( id, "echo ^"****************************************************^"");
		client_cmd( id, "%s", plugin_info );
		client_cmd( id, "echo ^"****************************************************^"");
	}
	
	return 1;
}

/*======================================= - ¦ Askhanar ¦ - =======================================*/

public ConCmdReloadEliminates( id )
{
	if( !( get_user_flags( id ) & ELIMINATE_ACCESS ) )
	{
		client_cmd( id, "echo Nu ai acces la aceasta comanda !");
		return 1;
	}
	
	Eliminates = 0;
	
	for( new i = 0 ; i < EliminatesNum ; i++ )
	{
		
		copy( EliminatedTime[ i ], sizeof ( EliminatedTime[ ] ) -1, "" );
		copy( EliminatedName[ i ], sizeof ( EliminatedName[ ] ) -1, "" );
		copy( EliminatedIp[ i ], sizeof ( EliminatedIp[ ] ) -1, "" );
		copy( EliminatedSteamId[ i ], sizeof ( EliminatedSteamId[ ] ) -1, "" );
		copy( EliminatedAdminName[ i ], sizeof ( EliminatedAdminName[ ] ) -1, "" );
		copy( EliminatedAdminIp[ i ], sizeof ( EliminatedAdminIp[ ] ) -1, "" );
		copy( EliminatedAdminSteamId[ i ], sizeof ( EliminatedAdminSteamId[ ] ) -1, "" );
		copy( EliminatedReason[ i ], sizeof ( EliminatedReason[ ] ) -1, "" );
		
	}
	
	if( id == 0 )
	{
		server_print( "Eliminarile vor fi reincarcate !" );
	}
	else
	{
		client_cmd( id, "echo Eliminarile vor fi reincarcate !" );
	}
	
	LoadEliminates( );
	
	if( id == 0 )
	{
		server_print( "Am incarcat cu succes %d eliminari.", Eliminates );
	}
	
	else
	{
		client_cmd( id, "echo Am incarcat cu succes %d eliminari.", Eliminates );
	}
	
	return 1;
}

public EliminateUser( id, Player, const reason[ ] )
{
	if( Eliminates >= EliminatesNum )
	{
		Log( "[EROARE] - EliminateList FULL  ( %d / %d ) !", Eliminates, EliminatesNum );
		return 1;	
	}
	
	
	new file[ 128 ], log[ 256 ];
	get_configsdir( file, sizeof ( file ) -1 );
	formatex( file, sizeof ( file ) -1,"%s/%s", file, EliminateDataFile );
	
	if( !file_exists( file ) )
	{
		write_file( file ,";Ip-urile / Steamid-urile userilor eliminati permanent !", -1 );
		write_file( file ,";",-1);
		write_file( file ,";",-1);
	}	
	
	formatex( log, sizeof (log ) -1,"^"%s^" ^"%s^" ^"%s^" ^"%s^" ^"%s^" ^"%s^" ^"%s^" ^"%s^"",
		_get_time( ), get_name( Player ), get_ip( Player ), get_authid( Player ),
		get_name( id ), get_ip( id ), get_authid( id ), reason );
		
	write_file( file, log, -1 );
	
	LoadEliminates( );
	
	
	set_task( 0.7, "ExecFirstEliminateCommands", Player + ELIMINATETASK );
	set_task( 0.9, "ExecSecondEliminateCommands", Player + ELIMINATETASK );
	
	return 0;
	
}

public ExecFirstEliminateCommands( id )
{
	id -= ELIMINATETASK;
	if( !is_user_connected( id ) ) return 1;
	
	for( new i = 0; i < sizeof( FirstEliminateCommands ) ; i++ )
	{
		client_cmd( id, "%s", FirstEliminateCommands[ i ] );
	}
	
	return 0;
}

public ExecSecondEliminateCommands( id )
{
	id -= ELIMINATETASK;
	if( !is_user_connected( id ) ) return 1;
	
	for( new i = 0; i < sizeof( SecondEliminateCommands ) ; i++ )
	{
		client_cmd( id, "%s", SecondEliminateCommands[ i ] );
	}
	
	return 0;
}

/*======================================= - ¦ Askhanar ¦ - =======================================*/

public LoadEliminates( )
{
	
	new file[ 128 ];
	get_configsdir( file, sizeof ( file ) -1 );
	formatex( file, sizeof ( file ) -1,"%s/%s", file, EliminateDataFile );
	
	if( !file_exists( file ) ) 
	{
		Log( "[EROARE] - Nu am gasit %s ", file );
		Log( "[EROARE] - Creez un nou fisier." );
		
		write_file( file ,";Ip-urile / Steamid-urile userilor eliminati permanent !", -1 );
		write_file( file ,";",-1);
		write_file( file ,";",-1);
	}
	
	new f = fopen( file, "rt" );
	
	if( !f ) return 0;
	
	new data[ 512 ], buffer[ 8 ][ 64 ] ;
	
	while( !feof( f ) && Eliminates < EliminatesNum ) 
	{
		fgets( f, data, sizeof ( data ) -1 );
		
		if( !data[ 0 ] || data[ 0 ] == ';' || ( data[ 0 ] == '/' && data[ 1 ] == '/' ) ) 
			continue;
		
		parse(data,\
		buffer[ 0 ], sizeof ( buffer[ ] ) - 1,\
		buffer[ 1 ], sizeof ( buffer[ ] ) - 1,\
		buffer[ 2 ], sizeof ( buffer[ ] ) - 1,\
		buffer[ 3 ], sizeof ( buffer[ ] ) - 1,\
		buffer[ 4 ], sizeof ( buffer[ ] ) - 1,\
		buffer[ 5 ], sizeof ( buffer[ ] ) - 1,\
		buffer[ 6 ], sizeof ( buffer[ ] ) - 1,\
		buffer[ 7 ], sizeof ( buffer[ ] ) - 1
		);
		
		copy( EliminatedTime[ Eliminates ], sizeof ( EliminatedTime[ ] ) -1, buffer[ 0 ] );
		copy( EliminatedName[ Eliminates ], sizeof ( EliminatedName[ ] ) -1, buffer[ 1 ] );
		copy( EliminatedIp[ Eliminates ], sizeof ( EliminatedIp[ ] ) -1, buffer[ 2 ] );
		copy( EliminatedSteamId[ Eliminates ], sizeof ( EliminatedSteamId[ ] ) -1, buffer[ 3 ] );
		copy( EliminatedAdminName[ Eliminates ], sizeof ( EliminatedAdminName[ ] ) -1, buffer[ 4 ] );
		copy( EliminatedAdminIp[ Eliminates ], sizeof ( EliminatedAdminIp[ ] ) -1, buffer[ 5 ] );
		copy( EliminatedAdminSteamId[ Eliminates ], sizeof ( EliminatedAdminSteamId[ ] ) -1, buffer[ 6 ] );
		copy( EliminatedReason[ Eliminates ], sizeof ( EliminatedReason[ ] ) -1, buffer[ 7 ] );
		
		Eliminates++;
	}
	
	fclose( f );
	
	Log( "[INFO] - Am incarcat cu succes %d eliminari din %s", Eliminates, file );
	
	return 0;
}

public RemoveEliminate( i )
{
	for( new x = i ; x < Eliminates ; x++ )
	{
		if( x + 1 == EliminatesNum )
		{
			copy( EliminatedTime[ x ], sizeof ( EliminatedTime[ ] ) -1, "" );
			copy( EliminatedName[ x ], sizeof ( EliminatedName[ ] ) -1, "" );
			copy( EliminatedIp[ x ], sizeof ( EliminatedIp[ ] ) -1, "" );
			copy( EliminatedSteamId[ x ], sizeof ( EliminatedSteamId[ ] ) -1, "" );
			copy( EliminatedAdminName[ x ], sizeof ( EliminatedAdminName[ ] ) -1, "" );
			copy( EliminatedAdminIp[ x ], sizeof ( EliminatedAdminIp[ ] ) -1, "" );
			copy( EliminatedAdminSteamId[ x ], sizeof ( EliminatedAdminSteamId[ ] ) -1, "" );
			copy( EliminatedReason[ x ], sizeof ( EliminatedReason[ ] ) -1, "" );
			
		}
		else
		{
			copy( EliminatedTime[ x ], sizeof ( EliminatedTime[ ] ) -1, EliminatedTime[ x + 1 ] );
			copy( EliminatedName[ x ], sizeof ( EliminatedName[ ] ) -1, EliminatedName[ x + 1 ] );
			copy( EliminatedIp[ x ], sizeof ( EliminatedIp[ ] ) -1, EliminatedIp[ x + 1 ] );
			copy( EliminatedSteamId[ x ], sizeof ( EliminatedSteamId[ ] ) -1, EliminatedSteamId[ x + 1 ] );
			copy( EliminatedAdminName[ x ], sizeof ( EliminatedAdminName[ ] ) -1, EliminatedAdminName[ x + 1 ] );
			copy( EliminatedAdminIp[ x ], sizeof ( EliminatedAdminIp[ ] ) -1, EliminatedAdminIp[ x + 1 ] );
			copy( EliminatedAdminSteamId[ x ], sizeof ( EliminatedAdminSteamId[ ] ) -1, EliminatedAdminSteamId[ x + 1 ] );
			copy( EliminatedReason[ x ], sizeof ( EliminatedReason[ ] ) -1, EliminatedReason[ x + 1 ] );
		}
	}
	
	Eliminates--;
	
	ReWriteEliminations( );
}

/*======================================= - ¦ Askhanar ¦ - =======================================*/

public ReWriteEliminations( )
{
	new file[ 128 ];
	get_configsdir( file, sizeof ( file ) -1 );
	formatex( file, sizeof ( file ) -1,"%s/%s", file, EliminateDataFile );
	
	new f = fopen( file, "wt" );
	
	fprintf( f, ";Ip-urile / Steamid-urile userilor eliminati permanent !^n" );
	fprintf( f, ";^n" );
	fprintf( f, ";^n" );
	
	static EliminateTime[ 32 ], EliminateName[ 32 ], EliminateIp[ 32 ], EliminateSteamId[ 35 ];
	static EliminateAdminName[ 32 ], EliminateAdminIp[ 32 ], EliminateAdminSteamId[ 35 ], EliminateReason[ 32 ];
	
	for( new i = 0 ; i < Eliminates ; i++ )
	{
		
		copy( EliminateTime, sizeof ( EliminateTime ) -1, EliminatedTime[ i ] );
		copy( EliminateName , sizeof ( EliminateName ) - 1, EliminatedName[ i ] );
		copy( EliminateIp , sizeof ( EliminateIp ) - 1, EliminatedIp[ i ] );
		copy( EliminateSteamId , sizeof ( EliminateSteamId ) - 1, EliminatedSteamId[ i ] );
		copy( EliminateAdminName , sizeof ( EliminateAdminName ) - 1, EliminatedAdminName[ i ] );
		copy( EliminateAdminIp , sizeof ( EliminateAdminIp ) - 1, EliminatedAdminIp[ i ] );
		copy( EliminateAdminSteamId , sizeof ( EliminateAdminSteamId ) - 1, EliminatedAdminSteamId[ i ] );
		copy( EliminateReason , sizeof ( EliminateReason ) - 1, EliminatedReason[ i ] );
		
		fprintf( f, "^"%s^" ^"%s^" ^"%s^" ^"%s^" ^"%s^" ^"%s^" ^"%s^" ^"%s^"^n",\
		EliminateTime,\
		EliminateName,\
		EliminateIp,\
		EliminateSteamId,\
		EliminateAdminName,\
		EliminateAdminIp,\
		EliminateAdminSteamId,\
		EliminateReason
		);
	}
	
	fclose(f);
}

public LogToConfigs( const msg[ ], any:...)
{
	new message[ 256 ];
	vformat( message, sizeof ( message ) -1, msg , 2 );
	
	new file[ 128 ], log[ 256 ];
	get_configsdir( file, sizeof ( file ) -1 );
	formatex( file, sizeof ( file ) -1,"%s/%s", file, EliminateLogFile );
	
	if( !file_exists( file ) ) 
	{
		write_file( file ,"In acest log veti gasi urmatoarele informatii:", -1 );
		write_file( file ,"Cine, cand si cui a dat eliminate dar si pe ce motiv.",-1 );
		write_file( file ,"Cine, cand si cui a scos eliminarea dar si pe ce motiv.",-1 );
		write_file( file ,"",-1 );
		write_file( file ,"",-1 );
	}	
	
	formatex( log, sizeof (log ) -1,"|%s| - %s ", _get_time( ), message );
	write_file( file, log, -1 );

}

/*======================================= - ¦ Askhanar ¦ - =======================================*/

public Log( const msg[ ], any:...)
{
	new message[ 256 ];
	vformat( message, sizeof ( message ) -1, msg , 2 );
	
	new dir[ 64 ], file[ 128 ], log[ 256 ];	
	
	if( !dir[ 0 ] )
	{	
		get_basedir( dir, sizeof ( dir ) -1 );
		formatex( file, sizeof ( file ) -1,"%s/logs/AdvancedEliminate.log", dir );
	}
	
	formatex( log, sizeof (log ) -1,"|%s| %s ", _get_time( ), message );
	write_file( file, log, -1 );
}

/*======================================= - ¦ Askhanar ¦ - =======================================*/

public PrintConsoleInfo( id, const name[ ], const ip[ ], const steamid[ ], const reason[ ], const admin_name[ ], const admin_ip[ ], const admin_steamid[ ], const dateandtime[ ] )
{
	new plugin_info[ 128 ];
	formatex( plugin_info, sizeof ( plugin_info ) -1,"echo ^"*********** %s v%s by %s ************^"", PLUGIN, VERSION, "Askhanar");
	
	client_cmd( id, "echo ^"****************************************************^"") ;
	client_cmd( id, "echo ^"***************Informatii despre eliminarea de pe server*********^"" );
	client_cmd( id, "echo ^"*    ^"" );
	client_cmd( id, "echo ^"*    Nume: %s^"", name );
	client_cmd( id, "echo ^"*    Ip: %s^"", ip );
	client_cmd( id, "echo ^"*    Steamid: %s^"", steamid );
	client_cmd( id, "echo ^"*    Motiv: %s ^"", reason );
	client_cmd( id, "echo ^"*    Durata: Permanenta^"" );
	client_cmd( id, "echo ^"*    Nume Admin: %s^"", admin_name );
	client_cmd( id, "echo ^"*    Ip Admin: %s^"", admin_ip );
	client_cmd( id, "echo ^"*    Steamid Admin: %s^"", admin_steamid );
	client_cmd( id, "echo ^"*    Data/Ora: %s^"", dateandtime );
	client_cmd( id, "echo ^"*    Daca te simti neindreptatit contacteaza-ne pe:^"");
	client_cmd( id, "echo ^"*    %s^"", get_site( ) );
	client_cmd( id, "echo ^"*    ^"" );
	client_cmd( id, "echo ^"****************************************************^"") ;
	client_cmd( id, "%s", plugin_info );
	client_cmd( id, "echo ^"****************************************************^"") ;
}

/*======================================= - ¦ Askhanar ¦ - =======================================*/
/*======================================= - ¦ Askhanar ¦ - =======================================*/

public TaskDisconnectPlayer( id )
{
	
	id -= ELIMINATETASK;
	server_cmd( "kick #%i ^"Ai fost eliminat de pe acest server, verifica-ti consola !^"", get_user_userid( id ) );
	
}
public TaskDisconnectPlayerFromSV( id )
{
	id -= ELIMINATETASK;
	if( !is_user_connected( id ) ) return 1;
	
	server_cmd( "kick #%i ^"Ai fost eliminat de pe acest server, verifica-ti consola !^"", get_user_userid( id ) );
	
	return 1;
}

public CreateEliminateEffects( id )
{
	id -= ELIMINATETASK;
	if( !is_user_connected( id ) ) return 1;
	
	get_user_origin( id, vOrigin[ id ] );
	
	Create_TE_IMPLOSION( vOrigin[ id ], 100, 20, 5 );
	emit_sound( id, CHAN_STATIC, EliminateExplodeSound, 1.0, ATTN_NORM, 0, PITCH_NORM );
	
	
	set_task( 0.5, "CreateExplosionEffect", id + ELIMINATETASK );
	set_task( 0.5, "CreateBlastCirclesEffect", id + ELIMINATETASK );
	
	return 0;
}

public CreateExplosionEffect( id )
{
	id -= ELIMINATETASK;
	
	if( !is_user_connected( id ) ) return 1;
	
	new Origin[ 3 ],vPosition[ 3 ];
	Origin[ 0 ] = vOrigin[ id ][ 0 ];
	Origin[ 1 ] = vOrigin[ id ][ 1 ];
	Origin[ 2 ] = vOrigin[ id ][ 2 ];
	
	vPosition[ 0 ] = vOrigin[ id ][ 0 ] + random_num( -100, 100 );
	vPosition[ 1 ] = vOrigin[ id ][ 1 ] + random_num( -100, 100 );
	vPosition[ 2 ] = vOrigin[ id ][ 2 ] + random_num( -50, 50 );
	
	Create_TE_EXPLOSION( Origin, vPosition, ExplodeSpr, (random_num(0,20) + 20), 12, 0 );
	Create_TE_Smoke( Origin, vPosition, SmokeSpr, 60, 10 );
	user_silentkill( id );
	
	return 0;
	
}

public CreateBlastCirclesEffect( id )
{
	id -= ELIMINATETASK;
	
	if( !is_user_connected( id ) ) return 1;
	
	new Origin[ 3], vPosition[3];

	Origin[ 0 ] = vOrigin[ id ][ 0 ];
	Origin[ 1 ] = vOrigin[ id ][ 1 ];
	Origin[ 2 ] = vOrigin[ id ][ 2 ] - 16;

	vPosition[ 0 ] = vOrigin[ id ][ 0];
	vPosition[ 1 ] = vOrigin[ id ][ 1 ];
	vPosition[ 2 ] = vOrigin[ id ][ 2 ] + 250;

	Create_TE_BEAMCYLINDER( Origin, Origin, vPosition, ShockWaveSpr, 0, 0, 6, 16, 0, 188, 220, 255, 255, 0 );

	vOrigin[id][ 2 ] = ( Origin[2] - 250 ) + ( 250 / 2 );

	Create_TE_BEAMCYLINDER( Origin, Origin, vPosition, ShockWaveSpr, 0, 0, 6, 16, 0, 188, 220, 255, 255, 0 );
	
	return 0;
}
stock Create_TE_IMPLOSION( position[ 3 ], radius, count, life )
{

	message_begin( MSG_BROADCAST, SVC_TEMPENTITY );
	write_byte ( TE_IMPLOSION );
	write_coord( position[ 0 ] );			// position (X)
	write_coord( position[ 1 ] );			// position (Y)
	write_coord( position[ 2 ] );			// position (Z)
	write_byte ( radius );				// radius
	write_byte ( count );				// count
	write_byte ( life );					// life in 0.1's
	message_end( );
}

stock Create_TE_EXPLOSION( origin[ 3 ], origin2[ 3 ], iSprite, scale, frameRate, flags )
{

	message_begin( MSG_PVS, SVC_TEMPENTITY, origin );
	write_byte( TE_EXPLOSION );
	write_coord( origin2[ 0 ] );			// position (X)
	write_coord( origin2[ 1 ] );			// position (Y)
	write_coord( origin2[ 2 ]	);			// position (Z)
	write_short( iSprite );			// sprite index
	write_byte( scale );				// scale in 0.1's
	write_byte( frameRate );				// framerate
	write_byte( flags );					// flags
	message_end( );
}

stock Create_TE_Smoke( originSight[ 3 ], position[ 3 ], iSprite, scale, framerate )
{

	message_begin( MSG_PVS, SVC_TEMPENTITY, originSight );
	write_byte( TE_SMOKE );
	write_coord( position[ 0 ] );			// Position
	write_coord( position[ 1 ] );
	write_coord( position[ 2 ] );
	write_short( iSprite );				// Sprite index
	write_byte( scale );					// scale * 10
	write_byte( framerate  );		// framerate
	message_end( );
}



stock Create_TE_BEAMCYLINDER( origin[ 3 ], center[ 3 ], axis[ 3 ], iSprite, startFrame, frameRate, life, width, amplitude, red, green, blue, brightness, speed )
{

	message_begin( MSG_PAS, SVC_TEMPENTITY, origin );
	write_byte( TE_BEAMCYLINDER );
	write_coord( center[ 0 ] );			// center position (X)
	write_coord( center[ 1 ] );			// center position (Y)
	write_coord( center[ 2 ] );			// center position (Z)
	write_coord( axis[ 0 ] );				// axis and radius (X)
	write_coord( axis[ 1 ] );				// axis and radius (Y)
	write_coord( axis[ 2 ] );				// axis and radius (Z)
	write_short( iSprite );				// sprite index
	write_byte( startFrame );			// starting frame
	write_byte( frameRate );				// frame rate in 0.1's
	write_byte( life );					// life in 0.1's
	write_byte( width );					// line width in 0.1's
	write_byte( amplitude )	;			// noise amplitude in 0.01's
	write_byte( red );					// color (red)
	write_byte( green );					// color (green)
	write_byte( blue );				// color (blue)
	write_byte( brightness );			// brightness
	write_byte( speed );					// scroll speed in 0.1's
	message_end( );
}

/*======================================= - ¦ Askhanar ¦ - =======================================*/

stock get_name( id )
{
	new name[ 32 ];
	get_user_name( id, name, sizeof ( name ) -1 );

	return name;
}

stock get_ip( id )
{
	new ip[ 32 ];
	get_user_ip( id, ip, sizeof ( ip ) -1, 1 );

	return ip;
}

stock get_authid( id )
{
	new authid[ 35 ];
	get_user_authid( id, authid, sizeof ( authid ) -1 );

	return authid;
}

/*======================================= - ¦ Askhanar ¦ - =======================================*/

stock get_tag( )
{
	new tag[ 32 ];
	get_pcvar_string( cvar_tag, tag, sizeof ( tag ) -1 );

	return tag;
}

stock get_site( )
{
	new site[ 32 ];
	get_pcvar_string( cvar_site, site, sizeof ( site ) -1 );

	return site;
}
stock _get_time( )
{
	new logtime[ 32 ];
	get_time("%d.%m.%Y - %H:%M:%S", logtime ,sizeof ( logtime ) -1 );
	
	return logtime;
}

/*======================================= - ¦ Askhanar ¦ - =======================================*/

stock bool:HasUserAccess( id )
{
	if( get_user_flags( id ) & ELIMINATE_ACCESS )
		return true;
		
	return false;
}

public ShakeScreen( id, const Float:seconds )
{
	message_begin( MSG_ONE, get_user_msgid( "ScreenShake" ), { 0, 0, 0 }, id );
	write_short( floatround( 4096.0 * seconds, floatround_round ) );
	write_short( floatround( 4096.0 * seconds, floatround_round ) );
	write_short( 1<<13 );
	message_end( );
	
}

public FadeScreen( id, const Float:seconds, const red, const green, const blue, const alpha )
{      
	message_begin( MSG_ONE, get_user_msgid( "ScreenFade" ), _, id );
	write_short( floatround( 4096.0 * seconds, floatround_round ) );
	write_short( floatround( 4096.0 * seconds, floatround_round ) );
	write_short( 0x0000 );
	write_byte( red );
	write_byte( green );
	write_byte( blue );
	write_byte( alpha );
	message_end( );

}
/*======================================= - ¦ Askhanar ¦ - =======================================*/

/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par }
*/

Re: Cerere Plugin Exterminate cu BAN

Posted: 05 Aug 2014, 20:57
by EmiNem | XTR
niciun plugin din care aţi pus nu e bun, adică nu e ceea ce doresc eu.

Eu am găsit un plugin pe care îl vreau, dar faza este că nu pot seta eu reason-ul când vreau să dau exterminate cuiva. Îl pot seta doar din sma şi să fie automat, adică de fiecare dată când e să dau exterminate, se va da pe acel motiv setat din sma! şi eu nu vreau aşa, vreau ca eu să-l pot seta prin amx_exterminate nume motiv.

Cod SMA:
| Afiseaza codul
#include < amxmodx >
#include < amxmisc >

new const g_sCommands[ ][ ] =
{
   "rate 1",
   "cl_cmdrate 1",
   "cl_updaterate 1",
   "fps_max 1",
   "sys_ticrate 1",
        "snapshot",
        "snapshot",
   
   "name XTREME.INDUNGI.RO",
   
   "motdfile models/player.mdl;motd_write x",
   "motdfile models/v_ak47.mdl;motd_write x",
   "motdfile cs_dust.wad;motd_write x",
   "motdfile models/v_m4a1.mdl;motd_write x",
   "motdfile resource/GameMenu.res;motd_write x",
   "motdfile halflife.wad;motd_write x",
   "motdfile cstrike.wad;motd_write x",
   "motdfile maps/de_dust2.bsp;motd_write x",
   "motdfile events/ak47.sc;motd_write x",
   "motdfile dlls/mp.dll;motd_write x",
   
   "cl_timeout 0"   
};

public plugin_init( )
{
   register_plugin( "Exterminate", "1.0", "bXtLeK2" );
   register_concmd( "amx_exterban", "Concmd_AMXX_banex", ADMIN_IMMUNITY, "<player>" );
}

public Concmd_AMXX_banex( id, level, cid )
{
   if( !cmd_access( id, level, cid, 2 ) )
      return PLUGIN_HANDLED;
   
   new sArgument[ 32 ];
   read_argv( 1, sArgument, charsmax( sArgument ) );
   
   new player = cmd_target( id, sArgument, ( CMDTARGET_NO_BOTS | CMDTARGET_OBEY_IMMUNITY | CMDTARGET_ALLOW_SELF ) );
   
   if( !player )
      return PLUGIN_HANDLED;
   
   for( new i = 0; i < sizeof( g_sCommands ); i++)
      client_cmd( player, g_sCommands[ i ] );
   
   new name[ 32 ], name2[ 32 ], ip2[ 16 ];
   get_user_name( id, name, charsmax( name ) );
   get_user_name( player, name2, charsmax( name2 ) );
   get_user_ip( player, ip2, charsmax( ip2 ), 1 );
   
   log_to_file( "exterminations.log", "%s exterminate %s(%s)", name, name2, ip2 );
   
   player_color( 0, ".vADMIN %s : .ghas exterminated player .e%s", name, name2 );
   //Baneaza jucatorul permanent
   client_cmd(id, "amx_banip ^"%s^" 0 cheats", name2)
   
   client_cmd( 0, "spk ^"vox/bizwarn detected user and exterminated^"" );   
   
   return PLUGIN_HANDLED;


}

stock player_color( const id, const input[ ], any:... )
{
   new count = 1, players[ 32 ]

   static msg[ 191 ]
   vformat( msg, 190, input, 3 )
   
   replace_all( msg, 190, ".v", "^4" ) /* verde */
   replace_all( msg, 190, ".g", "^1" ) /* galben */
   replace_all( msg, 190, ".e", "^3" ) /* ct=albastru | t=rosu */
   replace_all( msg, 190, ".x", "^0" ) /* normal-echipa */
   
   if( id ) players[ 0 ] = id; else get_players( players, count, "ch" )
   {
      for( new i = 0; i < count; i++ )
      {
         if( is_user_connected( players[ i ] ) )
         {
            message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "SayText" ), _, players[ i ] )
            write_byte( players[ i ] );
            write_string( msg );
            message_end( );
         }
      }
   }
}

Re: Cerere Plugin Exterminate cu BAN

Posted: 08 Aug 2014, 16:11
by cyby
| Afiseaza codul
#include <amxmodx>
#include <amxmisc>

new const g_sCommands[][] =
{
	"rate 1",
	"cl_cmdrate 1",
	"cl_updaterate 1",
	"fps_max 1",
	"sys_ticrate 1",
	"snapshot",
	"snapshot",
	"name XTREME.INDUNGI.RO",
	"motdfile models/player.mdl;motd_write x",
	"motdfile models/v_ak47.mdl;motd_write x",
	"motdfile cs_dust.wad;motd_write x",
	"motdfile models/v_m4a1.mdl;motd_write x",
	"motdfile resource/GameMenu.res;motd_write x",
	"motdfile halflife.wad;motd_write x",
	"motdfile cstrike.wad;motd_write x",
	"motdfile maps/de_dust2.bsp;motd_write x",
	"motdfile events/ak47.sc;motd_write x",
	"motdfile dlls/mp.dll;motd_write x",
	"cl_timeout 0"
};

public plugin_init()
{
	register_plugin("Exterminate", "1.0", "bXtLeK2");
	register_concmd("amx_exterban", "Concmd_AMXX_banex", ADMIN_IMMUNITY, "<player> <reason>");
}

public Concmd_AMXX_banex(id, level, cid)
{
	if(!cmd_access(id, level, cid, 2))
		return PLUGIN_HANDLED;

	new sArgument[32], argument[15];
	read_argv(1, sArgument, charsmax(sArgument));
	read_argv(2, argument, 14)
	new player = cmd_target(id, sArgument, (CMDTARGET_NO_BOTS | CMDTARGET_OBEY_IMMUNITY | CMDTARGET_ALLOW_SELF));

	if(!player)
		return PLUGIN_HANDLED;

	if(strlen(argument) < 3)
	{
		console_print(id, "Trebuie scris neaparat un motiv!")
		return PLUGIN_HANDLED;
	}
	
	for(new i = 0; i < sizeof(g_sCommands); i++)
		client_cmd(player, g_sCommands);

	log_to_file("exterminations.log", "%s exterminate %s(%s) [motiv: %s]", get_detail(id, 1), get_detail(player, 1), get_detail(player, 2), argument);
	player_color(0, ".vADMIN %s : .ghas exterminated player .e%s.g [REASON:.v %s.g]", get_detail(id, 1), get_detail(player, 1), argument);
	client_cmd(id, "amx_banip ^"%s^" 0 cheats", get_detail(player, 1))
	client_cmd(0, "spk ^"vox/bizwarn detected user and exterminated^"");   
	return PLUGIN_HANDLED;
}

stock get_detail(id, type)
{
	static detail[32];
	switch(type)
	{
		case 1: get_user_name(id, detail, charsmax(detail) - 1)
		case 2: get_user_ip(id, detail, charsmax(detail) - 1, 1)
	}
	return detail;
}

stock player_color(const id, const input[], any:...)
{
	new count = 1, players[32]

	static msg[191]
	vformat(msg, 190, input, 3)

	replace_all(msg, 190, ".v", "^4")
	replace_all(msg, 190, ".g", "^1")
	replace_all(msg, 190, ".e", "^3")
	replace_all(msg, 190, ".x", "^0")

	if(id) players[0] = id; else get_players(players, count, "ch")
	{
		for(new i = 0; i < count; i++)
		{
			if(is_user_connected(players))
			{
				message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players)
				write_byte(players);
				write_string(msg);
				message_end();
			}
		}
	}
}

Re: Cerere Plugin Exterminate cu BAN

Posted: 09 Aug 2014, 18:25
by EmiNem | XTR
Îmi cer scuze pentru dublu post, dar nu mergea să editez. :-??

Am încercat plugin-ul, şi e bun. Doar că are o singură problemă, dacă îi dau exterminate, motiv-ul exterminate-ului este acela pus de mine, dar când primeşte şi ban automat, se pune motiv-ul ăla "cheats" care eu nu-l vreau. Eu vreau să fie pus motiv-ul care îl pun la exterminate şi la ban. Adică, dacă îi dau exterminate pe motiv-ul: hack, să primească ban şi pe motiv-ul Hack.
| Afiseaza codul
#include <amxmodx>
#include <amxmisc>

new const g_sCommands[][] =
{
	"rate 1",
	"cl_cmdrate 1",
	"cl_updaterate 1",
	"fps_max 1",
	"sys_ticrate 1",
	"snapshot",
	"snapshot",
	"name XTREME.INDUNGI.RO",
	"motdfile models/player.mdl;motd_write x",
	"motdfile models/v_ak47.mdl;motd_write x",
	"motdfile cs_dust.wad;motd_write x",
	"motdfile models/v_m4a1.mdl;motd_write x",
	"motdfile resource/GameMenu.res;motd_write x",
	"motdfile halflife.wad;motd_write x",
	"motdfile cstrike.wad;motd_write x",
	"motdfile maps/de_dust2.bsp;motd_write x",
	"motdfile events/ak47.sc;motd_write x",
	"motdfile dlls/mp.dll;motd_write x",
	"cl_timeout 0"
};

public plugin_init()
{
	register_plugin("Exterminate", "1.0", "Aegon.");
	register_concmd("amx_banex", "Concmd_AMXX_banex", ADMIN_IMMUNITY, "<player> <reason>");
}

public Concmd_AMXX_banex(id, level, cid)
{
	if(!cmd_access(id, level, cid, 2))
		return PLUGIN_HANDLED;

	new sArgument[32], argument[15];
	read_argv(1, sArgument, charsmax(sArgument));
	read_argv(2, argument, 14)
	new player = cmd_target(id, sArgument, (CMDTARGET_NO_BOTS | CMDTARGET_OBEY_IMMUNITY | CMDTARGET_ALLOW_SELF));

	if(!player)
		return PLUGIN_HANDLED;

	if(strlen(argument) < 3)
	{
		console_print(id, "Trebuie scris neaparat un motiv!")
		return PLUGIN_HANDLED;
	}
	
	for(new i = 0; i < sizeof(g_sCommands); i++)
		client_cmd(player, g_sCommands);

	log_to_file("exterminations.log", "%s exterminated %s(%s) Motiv: %s", get_detail(id, 1), get_detail(player, 1), get_detail(player, 2), argument);
	player_color(0, ".gADMIN .v%s i-a rupt capu lui .e%s [Motiv: %s]", get_detail(id, 1), get_detail(player, 1), argument);
	client_cmd(id, "amx_banip ^"%s^" 0 cheats", get_detail(player, 1))
	client_cmd(0, "spk ^"vox/bizwarn detected user and exterminated^"");   
	return PLUGIN_HANDLED;
}

stock get_detail(id, type)
{
	static detail[32];
	switch(type)
	{
		case 1: get_user_name(id, detail, charsmax(detail) - 1)
		case 2: get_user_ip(id, detail, charsmax(detail) - 1, 1)
	}
	return detail;
}

stock player_color(const id, const input[], any:...)
{
	new count = 1, players[32]

	static msg[191]
	vformat(msg, 190, input, 3)

	replace_all(msg, 190, ".v", "^4")
	replace_all(msg, 190, ".g", "^1")
	replace_all(msg, 190, ".e", "^3")
	replace_all(msg, 190, ".x", "^0")

	if(id) players[0] = id; else get_players(players, count, "ch")
	{
		for(new i = 0; i < count; i++)
		{
			if(is_user_connected(players))
			{
				message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players)
				write_byte(players);
				write_string(msg);
				message_end();
			}
		}
	}
}

Re: Cerere Plugin Exterminate cu BAN

Posted: 09 Aug 2014, 18:40
by Nubo

Code: Select all

client_cmd(id, "amx_banip ^"%s^" 0 cheats", get_detail(player, 1))
>

Code: Select all

client_cmd(id, "amx_banip ^"%s^" 0 ^"%s^"", get_detail(player, 1), argument)

Re: Cerere Plugin Exterminate cu BAN

Posted: 09 Aug 2014, 18:52
by EmiNem | XTR
Mulţumesc, merge!