o modificare (gag) [rezolvat!]

Modificari necesare ale pluginurilor

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Post Reply
User avatar
burn09
Membru, skill +2
Membru, skill +2
Posts: 549
Joined: 16 Dec 2008, 23:02
Detinator Steam: Da
CS Status: CSDM Project
Detinator server CS: Inchis din 2011.
SteamID: burnnn669
Location: Bucuresti
Has thanked: 27 times
Been thanked: 47 times

17 Jan 2010, 21:22

Salutare. As vrea si eu sa-mi modifice cineva pluginul asta, astfel:
1. Atunci cand un jucator ia gag sa nu vada nimeni ce scrie, iar daca scrie ceva si da enter sa-i apara "Ai primit gag pentru injurat bla bla bla; Timp ramas: %d minute"
2. In caz ca da retry sa ii ramana gag-ul (sa fie inregistrat pe authid sau ip dar sa nu aiba bug, adica daca iese de tot urmatorul care intra sa nu aiba gag-ul astuia dinainte; sper ca m-am facut inteles)

ps: punctul 2 daca se poate bine daca nu, nu.
| Afiseaza codul
[code]#include <amxmodx>
#include <amxmisc>

#define WORDS 256
#define SWEAR_MINUTES 2

new const tag[] 		= "GAG #";
new const g_FileName[] 	= "cuvinte-cenzurate.ini";

new 
bool:g_Gaged[33], g_GagTime[33],
bool:g_SwearGag[33], bool:g_CmdGag[33],
bool:g_NameChanged[33];

new g_name[33][32];
new g_WordsFile[128];
new g_Words[WORDS][32], g_Count, g_Len, toggle_tag, toggle_admins;

public plugin_init() 
{	
	register_plugin("Advance Gag", "2.1", "anakin_cstrike/ update -B1ng0-")
	register_clcmd("say", "check");
	register_clcmd("say_team", "check");
	
	toggle_tag 	= register_cvar("sv_gag_tag", "1");
	toggle_admins 	= register_cvar("sv_gag_admins", "0");
}

public plugin_cfg()
{
	static dir[64];
	get_localinfo("amxx_configsdir", dir, 63);
	formatex(g_WordsFile, 127, "%s/%s", dir, g_FileName);
	
	if(!file_exists(g_WordsFile))
		write_file(g_WordsFile, "[Gag Words]", -1);
	
	new Len;
	while(g_Count < WORDS && read_file(g_WordsFile, g_Count ,g_Words[g_Count][1], 30, Len))
	{
		g_Words[g_Count][0] = Len;
		g_Count++;
	}
}

public count(task)
{
	new index = task - 123;
	if(!is_user_connected(index))
		return 0;
	
	g_GagTime[index] -= 1;	
	if(g_GagTime[index] <= 0)
	{
		remove_task(index + 123);
		client_print(index, print_chat, "* Ai primit ungag automat. Acum poti vorbi!");
		
		g_Gaged[index] = false;
		if(g_NameChanged[index])
			client_cmd(index, "name ^"%s^"", g_name[index]);
		
		return 0;
	}
	return 1;
}

public check(id)
{
	new said[192];
	read_args(said, sizeof said - 1);
	
	if(!strlen(said))
		return PLUGIN_CONTINUE;

	new bool:g_Sweared, i, pos;
	for(i = 0; i < g_Count; ++i)
	{
		if((pos = containi(said, g_Words[1])) != -1)
		{
			if(access(id, ADMIN_RESERVATION) && get_pcvar_num(toggle_admins) == 0)
				return PLUGIN_CONTINUE;
				
			g_Len = g_Words[0];
			while(g_Len--)
				said[pos++] = '*';
				
			g_Sweared = true;
			continue;
		}
	}

	if(g_Sweared)
	{
		new cmd[32], name[32];
			
		get_user_name(id, name, sizeof name - 1);
		read_argv(0, cmd, sizeof cmd - 1);
		copy(g_name[id], 31, name);
		engclient_cmd(id, cmd, said);
			
		g_Gaged[id] = true;
		g_CmdGag[id] = false;
		
		if(get_pcvar_num(toggle_tag) == 1)
		{
			new Buffer[64];
			formatex(Buffer, sizeof Buffer - 1, "%s %s", tag, name);
			g_NameChanged[id] = true;
			client_cmd(id, "name ^"%s^"", Buffer) ;
		}
			
		g_SwearGag[id] = true;
		g_GagTime[id] = SWEAR_MINUTES;
			
		client_print(id, print_chat, "* Ai primit gag automat pentru limbaj vulgar sau reclama %d minut", g_GagTime[id], g_GagTime[id] == 1 ? "" : "e");
		
		set_task(60.0, "count",id+123,_,_,"b");
		return PLUGIN_HANDLED;
	}
	return PLUGIN_CONTINUE;
}

public client_connect(id) 
{
	g_Gaged[id] = false;
	g_SwearGag[id] = false;
	g_NameChanged[id] = false;
}

public client_disconnect(id) 
{ 
	if(g_Gaged[id]) 
	{
		new nick[32];
		get_user_name(id, nick, 31);
		client_print(0, print_chat, "* Jucatorul cu gag %s, ne-a parasit", nick); 
		
		g_Gaged[id] = false;
		g_SwearGag[id] = false;
		g_NameChanged[id] = false;
		remove_task(id);
	}
}[/code]
RoyalServer 2
PoSiTiOn Of PoWeR
Utilizator banat
Utilizator banat
Posts: 2467
Joined: 28 Oct 2007, 12:18
Detinator Steam: Nu
Reputatie: Fost super moderator (suspendare 2 luni)
Fost scripter eXtreamCS
Nick anterior : AlinHD
1.6 / 3
Has thanked: 4 times
Been thanked: 116 times

18 Jan 2010, 17:06

la primul punct incearca asa:
adaugi in plugin_init

Code: Select all

register_message(get_user_msgid("SayText"), "message_saytext")
si

Code: Select all

public message_saytext(msg, dest, receiver)
{
	static sender
	sender = get_msg_arg_int(1)
	
	if(g_Gaged[receiver] || g_Gaged[sender])
		return PLUGIN_HANDLED
	
	return PLUGIN_CONTINUE
}
la punctul 2 este mai greu.. cand am timp si chef poate il fac :)
User avatar
burn09
Membru, skill +2
Membru, skill +2
Posts: 549
Joined: 16 Dec 2008, 23:02
Detinator Steam: Da
CS Status: CSDM Project
Detinator server CS: Inchis din 2011.
SteamID: burnnn669
Location: Bucuresti
Has thanked: 27 times
Been thanked: 47 times

18 Jan 2010, 18:00

Daca pun asa nu mai arata deloc, pe cand eu vream sa-i arate de fiecare data cand scria ceva "Ai primit gag bla bla bla" si timpul ramas din gag. :-S
Si am observat inca o chestie, dupa ce un jucator injura, primeste gag si ii adauga tagu "GAG #" in nick, bun, dar dupa ce a primit gag daca mai injura iar ii adauga iar tagu "GAG #" in nick si ajunge cu nicku "GAG # GAG # GAG # GAG # nume". :|
PoSiTiOn Of PoWeR
Utilizator banat
Utilizator banat
Posts: 2467
Joined: 28 Oct 2007, 12:18
Detinator Steam: Nu
Reputatie: Fost super moderator (suspendare 2 luni)
Fost scripter eXtreamCS
Nick anterior : AlinHD
1.6 / 3
Has thanked: 4 times
Been thanked: 116 times

18 Jan 2010, 19:35

vezi asta http://www.mediafire.com/?tmmfnwjzyjo
aranjezi tu spatiile corecte si mesajele.
User avatar
burn09
Membru, skill +2
Membru, skill +2
Posts: 549
Joined: 16 Dec 2008, 23:02
Detinator Steam: Da
CS Status: CSDM Project
Detinator server CS: Inchis din 2011.
SteamID: burnnn669
Location: Bucuresti
Has thanked: 27 times
Been thanked: 47 times

18 Jan 2010, 21:51

am modificat, e exact ce vream :X
multumesc aline >:D< , rezolvat!
No_Sadyst#
Membru, skill +1
Membru, skill +1
Posts: 294
Joined: 08 Jul 2008, 05:08
Detinator Steam: Da
CS Status: Citesct forumul
Detinator server CS: Pub.QcK-Zone.COm
Has thanked: 6 times
Been thanked: 2 times

29 Jan 2010, 02:47

Ar fi bine daca s-ar gasi rezolvare si pentrul punctul 2 :D ! m-ar interesa si pe mine si cred ca pe multi altii ! :D
Merita efortul sa rezolvati si punctul 2 :P
Image
PoSiTiOn Of PoWeR
Utilizator banat
Utilizator banat
Posts: 2467
Joined: 28 Oct 2007, 12:18
Detinator Steam: Nu
Reputatie: Fost super moderator (suspendare 2 luni)
Fost scripter eXtreamCS
Nick anterior : AlinHD
1.6 / 3
Has thanked: 4 times
Been thanked: 116 times

29 Jan 2010, 09:34

No_Sadyst#
Membru, skill +1
Membru, skill +1
Posts: 294
Joined: 08 Jul 2008, 05:08
Detinator Steam: Da
CS Status: Citesct forumul
Detinator server CS: Pub.QcK-Zone.COm
Has thanked: 6 times
Been thanked: 2 times

24 Feb 2010, 00:41

da eroare la COMPILARE !
UITE : http://i48.tinypic.com/2q8sjs6.jpg
Image
PoSiTiOn Of PoWeR
Utilizator banat
Utilizator banat
Posts: 2467
Joined: 28 Oct 2007, 12:18
Detinator Steam: Nu
Reputatie: Fost super moderator (suspendare 2 luni)
Fost scripter eXtreamCS
Nick anterior : AlinHD
1.6 / 3
Has thanked: 4 times
Been thanked: 116 times

24 Feb 2010, 14:19

Instaleaza ultima versiune de amxx. (1.8.1)
No_Sadyst#
Membru, skill +1
Membru, skill +1
Posts: 294
Joined: 08 Jul 2008, 05:08
Detinator Steam: Da
CS Status: Citesct forumul
Detinator server CS: Pub.QcK-Zone.COm
Has thanked: 6 times
Been thanked: 2 times

26 Feb 2010, 21:53

A mers compilat ... Revin cu EDIT sa zic daca merge sau nu !
MERGE DESTUL DE BINE :X
Ms

Dupa mine puteti da rezolvat !
App... mai ai un MULTUMESC !
Image
Post Reply

Return to “Modificari pluginuri”

  • Information
  • Who is online

    Users browsing this forum: Bing [Bot] and 4 guests