request plugin

Categoria cu cereri de pluginuri si nu numai.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Forum rules
Accesează link-ul pentru a putea vedea regulile forumului

Daca doriti sa vi se modifice un plugin, va rugam postati aici .
Post Reply
Mero^
Membru, skill +1
Membru, skill +1
Posts: 132
Joined: 17 Dec 2017, 22:41
Detinator Steam: Da
CS Status: Citesc forumul eXtreamCS.com...!
Detinator server CS: bromybro1
SteamID: bromybro1
Fond eXtream: 0
Has thanked: 4 times
Been thanked: 3 times
Contact:

19 Jan 2021, 06:54

I would like one of you to make this plugin please https://ibb.co/cDy0kFY
RoyalServer 2
User avatar
kidd0x
Utilizator neserios (tepar)
Utilizator neserios (tepar)
Posts: 1054
Joined: 06 Oct 2018, 14:41
Detinator Steam: Da
SteamID: /id/kidd0x/
Reputatie: Utilizator neserios (tepar!)
Fond eXtream: 0
Location: Constangeles
Discord: kidd0x
Has thanked: 172 times
Been thanked: 81 times

19 Jan 2021, 11:38

Code: Select all

#include <amxmodx>
#include <amxmisc>

#define PLUGIN 		"STEAM Players"
#define VERSION 	"0.0b"
#define AUTHOR 		"Quit edit"

#define ACCESS_LEVEL ADMIN_CVAR
#define ADMIN_LISTEN	ADMIN_RCON

new message[192]
new sayText
new teamInfo
new maxPlayers

new show_ip,show_steamid,show_time,show_ping,show_loss;

new g_MessageColor
new g_NameColor
new g_AdminListen

new strName[191]
new strText[191]
new alive[11]

public plugin_init()
{
	register_plugin (PLUGIN , VERSION , AUTHOR)
	
	g_MessageColor = register_cvar ("amx_color", "1")
	g_NameColor = register_cvar ("amx_namecolor", "6")
	g_AdminListen = register_cvar ("amx_listen", "1")
	show_ip = register_cvar("sp_showip","0")
	show_steamid = register_cvar("sp_showsteamid","1")
	show_time = register_cvar("sp_showtime","0")
	show_ping = register_cvar("sp_showping","0")
	show_loss = register_cvar("sp_showloss","0")
	
	
	sayText = get_user_msgid ("SayText")
	teamInfo = get_user_msgid ("TeamInfo")
	maxPlayers = get_maxplayers()
	
	
	register_message (sayText, "det_duplicated")
	
	register_clcmd ("amx_color", "set_color", ACCESS_LEVEL, "<color>")
	register_clcmd ("amx_namecolor", "set_name_color", ACCESS_LEVEL, "<color>")
	register_clcmd ("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
	
	register_clcmd ("say /whosteam", "who_steam")
	register_clcmd ("say /sp", "who_steam")
	register_clcmd ("say /ws", "who_steam")
	register_clcmd ("say", "hook_say")
	register_clcmd ("say_team", "hook_teamsay")
}


public det_duplicated (msgId, msgDest, receiver)
{
	return PLUGIN_HANDLED
}
public who_steam(id)
{
	new bool:ip_showed = false
	new bool:steamid_showed = false
	new bool:time_showed = false
	new bool:ping_showed = false
	new bool:loss_showed = false
	if (get_pcvar_num(show_ip)>0)
	{
		ip_showed = true
	}
	if (get_pcvar_num(show_steamid)>0)
	{
		steamid_showed = true
	}
	if (get_pcvar_num(show_time)>0)
	{
		time_showed = true
	}
	if (get_pcvar_num(show_ping)>0)
	{
		ping_showed = true
	}
	if (get_pcvar_num(show_loss)>0)
	{
		loss_showed = true
	}
	
	new players[32], playersFound
	get_players(players,playersFound)
	new pos, message[2048]
	new name[40], ip[30],steamid[32], ping, loss;
	new str_pentru[6],str_pi[6],str_lo[6]
	pos += format(message[pos],2048 - pos,"<STYLE>body{background:#232323;color:#cfcbc2;margin:20px}table{width:100%%;line-height:160%%;font-size:12px}th{background:#2f3030;color:#c4b550;text-align:left}.q{border:2px solid #4a4945}tr{background:#4a4945}.b{background:#3b3b37}</STYLE>")
	for (new i = 0;i < playersFound;i++) 
	{
		new bool:steam = false
		if (is_user_steam(id))
			steam = true
		new bool:bot = false
		if (is_user_bot(id))
			bot = true
		get_user_name(players[i],name,39)
		get_user_ip(players[i],ip,29,1)
		get_user_authid(players[i], steamid, 31)
		num_to_str(get_user_time(players[i]),str_pentru,5)
		get_user_ping(players[i],ping,loss)
		num_to_str(ping,str_pi,5)
		num_to_str(loss,str_lo,5)
			
		pos += format(message[pos],2048 - pos,"%d.<font color=^"red^">%s</font> <font color=^"green^">%s</font>%s %s%s",i+1,name,steam?"[STEAM]":"",bot?"[BOT]":"",ip_showed?"IP:":"",ip_showed?ip:"")
		pos += format(message[pos],2048 - pos," %s%s %s%s",steamid_showed?"STEAMID:":"",steamid_showed?steamid:"",time_showed?"TIME:":"",time_showed?str_pentru:"")
		pos += format(message[pos],2048 - pos," %s%s %s%s^n",ping_showed?"PING":"",ping_showed?str_pi:"",loss_showed?"LOSS:":"",loss_showed?str_lo:"")
	}
	show_motd(id,message,"Who Steam Player")
	return PLUGIN_HANDLED
}
public hook_say(id)
{
	read_args (message, 191)
	remove_quotes (message)
	
	if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, "")) 

		return PLUGIN_CONTINUE

		
	new name[32]
	get_user_name (id, name, 31)
	
	new bool:steam = false
	
	if (is_user_steam(id))
		steam = true
		
	
	new isAlive
	
	if (is_user_alive (id))
		{
			isAlive = 1
			alive = "^x01"
		}
	else
		{
			isAlive = 0
			alive = "^x01"
		}
	
	static color[10]
	

	
	if (steam)
		{
			switch (get_pcvar_num (g_NameColor))
				{
					case 1:
						format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)

					case 2:
						format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
						
					case 3:
						{
							color = "SPECTATOR"
							format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
						}
						
					case 4:
						{
							color = "CT"
							format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
						}

					case 5:
						{
							color = "TERRORIST"
							format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
						}
					
					case 6:
						{
							get_user_team (id, color, 9)
								
							format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
						}
				}
			
			switch (get_pcvar_num (g_MessageColor))
				{
					case 1:	// Yellow
						format (strText, 191, "%s", message)
						
					case 2:	// Green
						format (strText, 191, "^x04%s", message)
						
					case 3:	// White
						{
							copy (color, 9, "SPECTATOR")
							format (strText, 191, "^x03%s", message)
						}

					case 4:	// Blue
						{
							copy (color, 9, "CT")
							format (strText, 191, "^x03%s", message)
						}
						
					case 5:	// Red
						{
							copy (color, 9, "TERRORIST")
							format (strText, 191, "^x03%s", message)
						}
				}
		}
	
	else
		{
			get_user_team (id, color, 9)
			
			format (strName, 191, "%s^x03%s", alive, name)
			
			format (strText, 191, "%s", message)
		}

	format (message, 191, "%s^x01: %s", strName, strText)
			
	sendMessage (color, isAlive)
	
	return PLUGIN_CONTINUE
}


public hook_teamsay(id)
{
	new playerTeam = get_user_team(id)
	new playerTeamName[19]
	
	switch (playerTeam)
		{
			case 1:
				copy (playerTeamName, 11, "Terrorists")
				
			case 2:
				copy (playerTeamName, 18, "Counter-Terrorists")
				
			default:
				copy (playerTeamName, 9, "Spectator")
		}
		
	read_args (message, 191)
	remove_quotes (message)
	
	if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))  

		return PLUGIN_CONTINUE

		
	new name[32]
	get_user_name (id, name, 31)
	
	new bool:steam = false
	
	if (is_user_steam(id))
		steam = true
		
	
	new isAlive
	
	if (is_user_alive (id))
		{
			isAlive = 1
			alive = "^x01"
		}
	else
		{
			isAlive = 0
			alive = "^x01"
		}
	
	static color[10]
	

	
	if (steam)
		{
			switch (get_pcvar_num (g_NameColor))
				{
					case 1:
						format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)

					case 2:
						format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
						
					case 3:
						{
							color = "SPECTATOR"
							format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
						}
						
					case 4:
						{
							color = "CT"
							format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
						}

					case 5:
						{
							color = "TERRORIST"
							format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
						}
					
					case 6:
						{
							get_user_team (id, color, 9)
								
							format (strName, 191, "%s^x03%s ^x04[STEAM]", alive, name)
						}
				}
			
			switch (get_pcvar_num (g_MessageColor))
				{
					case 1:	// Yellow
						format (strText, 191, "%s", message)
						
					case 2:	// Green
						format (strText, 191, "^x04%s", message)
						
					case 3:	// White
						{
							copy (color, 9, "SPECTATOR")
							format (strText, 191, "^x03%s", message)
						}

					case 4:	// Blue
						{
							copy (color, 9, "CT")
							format (strText, 191, "^x03%s", message)
						}
						
					case 5:	// Red
						{
							copy (color, 9, "TERRORIST")
							format (strText, 191, "^x03%s", message)
						}
				}
		}
	
	else
		{
			get_user_team (id, color, 9)
			
			format (strName, 191, "%s^x03%s", alive, name)
			
			format (strText, 191, "%s", message)
		}
	
	format (message, 191, "%s^x01: %s", strName, strText)
	
	sendTeamMessage (color, isAlive, playerTeam)
	
	return PLUGIN_CONTINUE	
}


public set_color (id, level, cid)
{
	if (!cmd_access(id, level, cid, 2))
		return PLUGIN_HANDLED
		
	new arg[1], newColor
	read_argv (1, arg, 1)
	
	newColor = str_to_num (arg)
	
	if (newColor >= 1 && newColor <= 5)
		{
			set_cvar_num ("amx_color", newColor)
			set_pcvar_num (g_MessageColor, newColor)
	
			if (get_pcvar_num (g_NameColor) != 1 &&
			       ((newColor == 3 &&  get_pcvar_num (g_NameColor) != 3)
			     || (newColor == 4 &&  get_pcvar_num (g_NameColor) != 4)
			     || (newColor == 5 &&  get_pcvar_num (g_NameColor) != 5)))
				{
					set_cvar_num ("amx_namecolor", 2)
					set_pcvar_num (g_NameColor, 2)
				}
		}
		
	return PLUGIN_HANDLED
}


public set_name_color (id, level, cid)
{
	if (!cmd_access(id, level, cid, 2))
		return PLUGIN_HANDLED
		
	new arg[1], newColor
	read_argv (1, arg, 1)
	
	newColor = str_to_num (arg)
	
	if (newColor >= 1 && newColor <= 6)
		{
			set_cvar_num ("amx_namecolor", newColor)
			set_pcvar_num (g_NameColor, newColor)
			
			if ((get_pcvar_num (g_MessageColor) != 1
			    && ((newColor == 3 &&  get_pcvar_num (g_MessageColor) != 3)
			     || (newColor == 4 &&  get_pcvar_num (g_MessageColor) != 4)
			     || (newColor == 5 &&  get_pcvar_num (g_MessageColor) != 5)))
			     || get_pcvar_num (g_NameColor) == 6)
				{
					set_cvar_num ("amx_color", 2)
					set_pcvar_num (g_MessageColor, 2)
				}
		}
	
	return PLUGIN_HANDLED
}


public set_listen (id, level, cid)
{
	if (!cmd_access(id, level, cid, 2))
		return PLUGIN_HANDLED
		
	new arg[1], newListen
	read_argv(1, arg, 1)
	
	newListen = str_to_num (arg)
	
	set_cvar_num ("amx_listen", newListen)
	set_pcvar_num (g_AdminListen, newListen)
	
	return PLUGIN_HANDLED
}


public sendMessage (color[], alive)
{
	new teamName[10]
	
	for (new player = 1; player < maxPlayers; player++)
		{
			if (!is_user_connected(player))
				continue

			if (alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
				{
					get_user_team (player, teamName, 9)
					
					changeTeamInfo (player, color)
					
					writeMessage (player, message)
					
					changeTeamInfo (player, teamName)
				}
		}
}


public sendTeamMessage (color[], alive, playerTeam)
{
	new teamName[10]
	
	for (new player = 1; player < maxPlayers; player++)
		{
			if (!is_user_connected(player))
				continue

			if (get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
				{
					if (alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
						{
							get_user_team (player, teamName, 9)
							
							changeTeamInfo (player, color)
							
							writeMessage (player, message)
							
							changeTeamInfo (player, teamName)
						}
				}
		}
}


public changeTeamInfo (player, team[])
{
	message_begin (MSG_ONE, teamInfo, _, player)
	write_byte (player)
	write_string (team)
	message_end()
}


public writeMessage (player, message[])
{
	message_begin (MSG_ONE, sayText, {0, 0, 0}, player)
	write_byte (player)
	write_string (message)
	message_end ()
}
stock bool:is_user_steam(id)
{
	static dp_pointer;
     
	if (dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider")))
	{
		server_cmd("dp_clientinfo %d", id);
		server_exec();
		return (get_pcvar_num(dp_pointer) == 2) ? true : false;
	}
            
	return false;
}
Third link on the google : https://prnt.sc/x79t4j , lazy boy
User avatar
levin
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 3844
Joined: 24 Aug 2011, 12:24
Detinator Steam: Da
CS Status:
Detinator server CS: ☯∴
SteamID: riseofevo
Reputatie: Scripter eXtreamCS
Nume anterior: Adryyy
Location: ҳ̸Ҳ̸ҳ
Discord: devilclass
Has thanked: 36 times
Been thanked: 594 times
Contact:

19 Jan 2021, 12:51

Code: Select all

#include <amxmodx>

#define FLAGS_TYPE 1	//1-contain any of	2-equal with

static const	CHAT_CMD[]="steam",
		CHAT_CMD_PREFIX[]="/",
		CHAT_CMD_ACCESS[]="",
		MENU_TITLE[]="Steamers online:"

public plugin_init() {
	static form[125];formatex(form,charsmax(form),"say %s%s",CHAT_CMD_PREFIX,CHAT_CMD)
	register_clcmd(form,"SF")
	formatex(form,charsmax(form),"say_team %s%s",CHAT_CMD_PREFIX,CHAT_CMD)
	register_clcmd(form,"SF")
}

public SF(id){
	if(CHAT_CMD_ACCESS[0]){
		#if FLAGS_TYPE == 1
		if(!(get_user_flags(id)&read_flags(CHAT_CMD_ACCESS)))
		#endif
		#if FLAGS_TYPE == 2
		if(get_user_flags(id)!=read_flags(CHAT_CMD_ACCESS))
		#endif
		return 1
	}
	
	static menu, tf[125],players[32], pnum, tempid,szName[33]
	formatex(tf,charsmax(tf),MENU_TITLE)
	menu = menu_create( tf, "menu_handler" );
	get_players( players, pnum, "ch" );
	for ( new i; i<pnum; ++i ){
		tempid = players[i];
		if(!is_user_steamMETA(tempid))	continue
		get_user_name( tempid, szName, charsmax( szName ) );
		menu_additem( menu, szName );
	}
	menu_display( id, menu, 0 );
	
	return 1
}
public menu_handler( id, menu, item ){
	menu_destroy( menu );
	return PLUGIN_HANDLED;
}

stock bool:is_user_steamMETA(const id){
	if(!cvar_exists("dp_r_id_provider")){
		server_print("[AMXX] Eroare functie pentru validare steam!")
		log_to_file("addons/amxmodx/RS.log","[AMXX] Eroare functie pentru validare steam!")
		return false
	}
	static dp_pointer
	if(dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider"))){
		server_cmd("dp_clientinfo %d", id)
		server_exec()
		return (get_pcvar_num(dp_pointer) == 2) ? true : false
	}
	return false
}
Pentru ajutor, faceți cerere bine detaliată, completând și respectând modelul corespunzător.
Nu-mi mai dați cereri doar pentru a mă avea în lista de prieteni.
Dacă te ajut, și mă ignori/etc > te adaug în „foe”.
Aveți grijă la cei ce încearcă să mă copieze sau să dea drept mine..Puteți lua legătura cu mine prin STEAM dacă aveți o problemă/nelămurire în acest caz! Cont de forum am doar aici.
În cazul în care utilizați ceva din ce am postat(ex: aici), e bine să fiți la curent cu modificările aduse și de aici, iar dacă sunt ceva probleme nu ezitați să luați legătura cu mine. Actualizarea unor coduri nu se vor afișa public, doar dacă se găsește ceva critic/urgent de remediat, unele fiind coduri vechi iar unele refăcute chiar recent dar private.
* Nume pe cs1.6: eVoLuTiOn \ Nume vechi: eVo
* Atelierul meu - post2819572.html#p2819572 (închis, click link ca să vedeți de ce)
Post Reply

Return to “Cereri”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 35 guests