Page 1 of 1

[Cerere Plugin] wargods

Posted: 18 Jan 2023, 21:04
by BoGdAnMoNs
Plugin Cerut: scanare wargods
Descriere (adica ce face el mai exact): sa poti da scanare wargods prin comanda /wg nume , are 5 minute la dispozitie sau cat pui tu acolo 10 sa ti de-a test-ul daca nu il da in acest timp primeste ban , daca da drop tot asa sa primeasca ban , daca admin-ul care ia facut test-ul verifica si vede ca este curat sa exista comanda /curat nume , iar jucatorul poate intra sa joace , si doua poze cu player-ul inainte sa il bage spec , si comanda de /infowg
Ai cautat pluginul?(daca da, precizeaza cum): da am cautat nu am gasit ce caut am vazut ca exista pe alte sv
Serverul impune conditii strict HLDS/REHLDS?: rehlds
Necesita mod special?: nu
Versiune AMXX Server: 1.9.0



pun aici cod-ul care este asemanator cu ce doresc eu doar ca nu vreau acel meniu care apare acum , vreau comenzile /wg nume , /curat nume , /codat nume , /infowg

cand scrii comanda /wg nume ii face poze si lui si le are si admin-ul pentru proba , cu comanda /curat nume , anunti pe chat ca acel jucator este curat , /codat nume , anunti lumea ca este codat si ca a primit ban , /infowg , sa arate informatii despre test-ul wg

Code: Select all

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <colorchat>

#pragma tabsize 0

new bool: hascan[33],admin,target[33]=0,targetIP[32]
new const TAG[] = "[www.maniacs.ro]"

new gCvarMoveSpec,gCvarMinutesToGive,admin_spec,ban_time,SyncHudMessage

public plugin_init() {
	register_plugin("WarGods Cerere", "1.0", "DanN");
	
	register_clcmd ( "say", "hook_say" );
	register_clcmd ( "say_team", "hook_say" );
	
	gCvarMoveSpec = register_cvar( "wg_move_spec", "1" );
	gCvarMinutesToGive = register_cvar( "wg_min_to_response", "5" );
	
	admin_spec = register_cvar( "wg_admin_must_be_spec", "0" );
	ban_time = register_cvar( "wg_ban_time_minutes", "60" );
	
	SyncHudMessage=CreateHudSyncObj()
}

public client_connect(id)
{
	hascan[id] = false;
	target[id]=0
}

public client_disconnect(id)
{
	if(hascan[id]&&get_pcvar_num(ban_time)>=0)
	{
		ColorChat( 0, GREEN, "%s^x03 %s^1 a parasit serverul in timp ce trebuia sa prezinte^4 WG^1 si a primit ban", TAG, get_name(id));
		server_cmd( "addip %d ^"%s^"; wait; writeip", get_pcvar_num(ban_time),targetIP );
		hascan[id]=false
		target[id]=0
	}
}

public hook_say ( id )
{
	new szSaid[ 195 ],text[512]
	read_args( szSaid, sizeof( szSaid ) -1 );
	remove_quotes( szSaid );
	
	if( contain( szSaid, "/wg" ) != -1 )
	{
		if(!is_user_admin(id))   return PLUGIN_HANDLED
		
		new target[ 32 ];
		copy( target, sizeof( target ) -1, szSaid[ 6 ] );
		if(equal(target,""))
		{
			ColorChat( id, GREEN, "%s^x03 Folosire /wg NICK",TAG)
			return PLUGIN_HANDLED
		}

		for(new x=0;x<=get_maxplayers();x++)
		{
			if(hascan[x]/*||target[x]>0*/)
			{
				ColorChat( id, GREEN, "%s^x03 Deja se afla in curs o cerere de wg, ceruta de %s pentru %s", TAG, get_name(admin), get_name(x));
				break
			}
		}
		
		new player = cmd_target( id, target, 2 );
		
		if(hascan[player])
		{
			ColorChat( id, GREEN, "%s^x03 Jucatorului^x04 [%s]^x03 i s-a cerut deja o scanare wargods, de catre adminul ^x04[%s].", TAG, get_name(player), get_name(admin));
			return PLUGIN_HANDLED;
		}
		
		if( player )
		{
			if(get_pcvar_num(admin_spec)==1)
			{
				ColorChat(0, GREEN, "%s^x03 Trebuie sa fii SPECTATOR pentru a cere WG", TAG);
				return PLUGIN_HANDLED
			}
			
			new timer[ 32 ]
			get_time("%d/%m/%Y - %H:%M:%S", timer,31);
			hascan[player] = true;
			target[player]=id
			admin=id
			targetIP=get_ip(player)
			
			ColorChat(0, GREEN, "%s^x03 Adminul ^x04[%s] ^x03ii cere scanare Wargods lui ^x04[%s]. Data/Ora: ^x03 %s", TAG, get_name(id), get_name(player), timer);
			ColorChat(0, GREEN, "%s^x03 De asemenea are si el o poza cu mesajul ca ia cerut, in caz de neprezentare are dovada pentru ban.", TAG);
			ColorChat(0, GREEN, "%s^x03 Link download WG ^x04www.wargods.ro/wcd/download.php", TAG);
			
			if(get_pcvar_num(gCvarMoveSpec)==1)
			{
				if(is_user_alive(player))   user_silentkill(player)
				cs_set_user_team(player,CS_TEAM_SPECTATOR)
			}
			
			new Float:Minutes = (float(get_pcvar_num( gCvarMinutesToGive )) * 60.0);
			set_task( Minutes / 3.0, "BanThis", id );//??
			
			ColorChat(player, GREEN, "%s^x03 Ai %d minut%s pentru a prezenta WG Adminului %s", TAG,get_pcvar_num( gCvarMinutesToGive ),get_pcvar_num( gCvarMinutesToGive )==1?"":"e",get_name(id));

			client_cmd(player, ";Snapshot");
			client_cmd(id, ";Snapshot");
			
			formatex(text,charsmax(text),"%s %s Adminul %s i-a cerut o scanare WG jucatorului %s",TAG,timer,get_name(id),get_name(player))
			write_file("addons/amxmodx/logs/wg.txt",text,-1)
		}
		else
		{
			ColorChat(id, GREEN, "%s Jucatorul specificat nu exista.", TAG);
			return PLUGIN_HANDLED
		}
		
		return PLUGIN_HANDLED;
	}
	return PLUGIN_CONTINUE;
}

public BanThis( id )
{
	new MenuTitle[ 168 ];
	formatex( MenuTitle, sizeof( MenuTitle ), "\d|\r WG\d |\y Mertia\r %s\y ban?", get_name(target[id]) );

	new BanMenu = menu_create( MenuTitle, "BanHandler" );

	menu_additem( BanMenu, "\yDa", "1" );
	menu_additem( BanMenu, "\yNu", "2" );
	menu_additem( BanMenu, "\wIntreaba-ma mai incolo", "3" );
	menu_additem( BanMenu, "\wMa descurc singur", "4" );

	menu_setprop( BanMenu, MPROP_EXIT, MEXIT_NEVER );
	menu_display( id, BanMenu );
}

public BanHandler( id, BanMenu, item )
{
	if( item == MENU_EXIT )
		return PLUGIN_HANDLED;

	new Key[ 3 ];
	new Access, CallBack;

	menu_item_getinfo( BanMenu, item, Access, Key, 2, _, _, CallBack );

	new isKey = str_to_num( Key );

	switch( isKey )
	{
		case 1:
		{
			if( !is_user_connected( find_player( "c", targetIP ) ) )
			{
				if( is_user_connected( id ) )
				{
					client_cmd( id, "amx_addban %s %d ^"Neprezentare WG la timp^"", targetIP,get_pcvar_num(ban_time) );
				}
				else
				{
					server_cmd( "addip %d %s; wait; writeip",get_pcvar_num(ban_time), targetIP );
				}
			}

			set_hudmessage( 0, 255, 0, -1.0, -1.0, 0, 5.0, 10.0 );
			ShowSyncHudMsg( 0, SyncHudMessage, "[ADMIN] %s: l-a Banat pe %s (IP: %s)^n Motiv : Problema la WG !", get_name(admin), get_name(target[id]), targetIP );
			
			hascan[target[id]]=false
			target[id]=0
		}

		case 2:
		{
			set_hudmessage( 0, 255, 0, -1.0, -1.0, 0, 5.0, 10.0 );
			ShowSyncHudMsg( 0, SyncHudMessage, "[ADMIN] %s: l-a Crutat pe %s (IP: %s)^nMotiv : WG CURAT !", get_name(admin), get_name(target[id]), targetIP );
			
			switch(random_num(1,2))
			{
				case 1:	cs_set_user_team(target[id],CS_TEAM_T)
				case 2:	cs_set_user_team(target[id],CS_TEAM_CT)
			}
			
			hascan[target[id]]=false
			target[id]=0
		}

		case 3:	if(is_user_connected(id)&&is_user_admin(id)&&is_user_connected(target[id]))	set_task(5.0,"BanThis",id);

		case 4:	menu_destroy( BanMenu );
	}
	menu_destroy( BanMenu );
	return PLUGIN_HANDLED;
}

stock get_name ( id ) {
	new name [ 32 ]
	if(is_user_connected(id)&&!(is_user_hltv(id)||is_user_bot(id)))	get_user_name ( id, name, 31 );
	
	return name;
}
stock get_ip( id ) {
	new ip [ 20 ] ;
	if(is_user_connected(id)&&!(is_user_hltv(id)||is_user_bot(id)))	get_user_ip ( id, ip, 19,1 );
	
	return ip;
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1252\\ deff0\\ deflang1033{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/

Re: cerere plugin wargods

Posted: 18 Jan 2023, 21:22
by kidd0x
cauta ca e pe forum facut de @L E V I N

Re: cerere plugin wargods

Posted: 18 Jan 2023, 22:50
by BoGdAnMoNs
da-mi si adresa sa intru acolo daca tot vrei sa ma ajuti

Re: cerere plugin wargods

Posted: 19 Jan 2023, 02:53
by lexz

Re: cerere plugin wargods

Posted: 19 Jan 2023, 09:03
by BoGdAnMoNs
eu nu vreau cu acel meniu inutil , ai scris in chat /wg nume , il baga spec ii scrie mesajele , dupa ce il da sa scrii /curat sau /codat si daca nu are sa il bage la echipa care a fost daca are sa primeasca ban permanent , daca da drop tot ban permanent ,si /infowg , sa scrie informatii cine ia cerut wg cine ia dat ban sau nu in cazul care nu are nimic

Re: [Cerere Plugin] wargods

Posted: 22 Jan 2023, 17:34
by BoGdAnMoNs
up!

Re: [Cerere Plugin] wargods

Posted: 24 Jan 2023, 21:35
by BoGdAnMoNs
up!

Re: [Cerere Plugin] wargods

Posted: 08 Feb 2023, 00:15
by levin
/infowg ce să arate?

Re: [Cerere Plugin] wargods

Posted: 09 Feb 2023, 14:57
by BoGdAnMoNs
informatii despre player cat si despre starea acestuia dupa ce i s-a cerut wg daca a fost curat sau nu

Re: [Cerere Plugin] wargods

Posted: 11 Feb 2023, 00:37
by BoGdAnMoNs
up!