Discord sunucumuz açılmıştır, hepinizi bekleriz

https://discord.gg/43gGDQe6tS

Gag eklentisindeki sorun için Yardım

Eklenti sorunlarınız ve özel eklenti istekleriniz

Moderatör: Moderatörler

Kullanıcı avatarı

Konu Sahibi
Gozyasi`
Mesajlar: 1394
Kayıt: Prş Şub 08, 2018 7:48 am
Konum: İstanbul
Clan İsmi: IMMORTAL Gaming
İletişim:

Gag eklentisindeki sorun için Yardım

Mesaj gönderen Gozyasi` »

Selam. Attiğim gag eklentisinde gaglanan kişinin süresi dolduğu zaman otomatik gag'ı kalkmıyor. Elle kaldırmamız gerekiyor. Bu sorunu düzeltebilecek varmı ? @ShooTeR @Yek'-ta
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

burakxd383
Mesajlar: 922
Kayıt: Pzt Şub 05, 2018 2:10 pm
Konum: Bursa
Server Ip/DNS: -
Clan İsmi: -
İletişim:

Gag eklentisindeki sorun için Yardım

Mesaj gönderen burakxd383 »

Paneldeki Default Eklentiyi Niye Kullanmıyorsunuz ?

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
Gozyasi`
Mesajlar: 1394
Kayıt: Prş Şub 08, 2018 7:48 am
Konum: İstanbul
Clan İsmi: IMMORTAL Gaming
İletişim:

Gag eklentisindeki sorun için Yardım

Mesaj gönderen Gozyasi` »

burakxd383 yazdı: Cum Şub 23, 2018 7:27 pm Paneldeki Default Eklentiyi Niye Kullanmıyorsunuz ?
Hem diğer eklentiler gibi renkli yazı olması hemde Türkçe ve daha belirgin olmasını istediğim için.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
Gozyasi`
Mesajlar: 1394
Kayıt: Prş Şub 08, 2018 7:48 am
Konum: İstanbul
Clan İsmi: IMMORTAL Gaming
İletişim:

Gag eklentisindeki sorun için Yardım

Mesaj gönderen Gozyasi` »

Güncel.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

ShooTeR
Mesajlar: 4496
Kayıt: Çrş Ağu 16, 2017 10:35 pm
Server Ip/DNS: CSXX.CSDURAGI.COM
Clan İsmi: NoMercy

Gag eklentisindeki sorun için Yardım

Mesaj gönderen ShooTeR »

Kod: Tümünü seç

#define VoiceCommMute 1		// 0 = Disabled ( no extra module required ) | 1 = Voicecomm muteing enabled. ( requires engine module)
#define BlockNameChange 1	// 0 = Disabled | 1 = Block namechange on gagged clients
#define LogAdminActions 1	// 0 = Disabled | 1 = Admin actions will be logged
#define DefaultGagTime 60.0	// The std gag time if no other time was entered. ( this is 10 min ), Remember the value MUST contain a .0
#define PlaySound 0		// 0 = Disabled | 1 = Play a sound to gagged clients when their trying to talk
#define GagReason 0		// 0 = Disabled | 1 = Gagged clients can see why there where gagged when they try to talk
#define MaxPlayers 32
#define AllowOtherPlugin2Interface 1
#define TAG "IMMORTAL"

#include <amxmodx>
#include <amxmisc>
#include <engine>

new g_GagPlayers[MaxPlayers+1]	// Used to check if a player is gagged
#if GagReason == 1
new gs_GagReason[MaxPlayers+1][48]
#endif

public plugin_init() 
{ 
	register_plugin("Admin Gag","1.8.3","EKS") 
	register_clcmd("say","block_gagged") 
	register_clcmd("say_team","block_gagged") 
	register_concmd("amx_gag","CMD_GagPlayer",ADMIN_KICK,"<nick or #userid> <a|b|c> <time>") 
	register_concmd("amx_ungag","CMD_UnGagPlayer",ADMIN_KICK,"<nick or #userid>") 
} 

public block_gagged(id){  // This function is what check the say / team_say messages & block them if the client is blocked.
	if(!g_GagPlayers[id]) return PLUGIN_CONTINUE // Is true if the client is NOT blocked.
	new cmd[5] 
	read_argv(0,cmd,4) 
	if ( cmd[3] == '_' )
		{ 
		if (g_GagPlayers[id] & 2){ 
#if GagReason == 1
			renkli_yazi(id,"!n[!t%s!n] !t%s !gSebiyle !tGag !gyedin.",TAG,gs_GagReason[id]) 
#else
			renkli_yazi(id,"!n[!t%s!n] !gGag yedigin icin yazi yazamazsin!g. !g[!tYazdiklarina Dikkat Et!g]",TAG) 
#endif

#if PlaySound == 1
			client_cmd(id,"spk barney/youtalkmuch")
#endif
			return PLUGIN_HANDLED 
			} 
		} 
	else if (g_GagPlayers[id] & 1)   { 
#if GagReason == 1
			renkli_yazi(id,"!n[!g%s!n] !t%s !gSebiyle !tGag !gyedin.",TAG,gs_GagReason[id]) 
#else
			renkli_yazi(id,"!n[!g%s!n] !gGag yedigin icin yazi yazamazsin!g. !g[!tYazdiklarina Dikkat Et!g]",TAG) 
#endif
#if PlaySound == 1
			client_cmd(id,"spk barney/youtalkmuch")
#endif
		return PLUGIN_HANDLED 
		} 
	return PLUGIN_CONTINUE 
	} 
public CMD_GagPlayer(id,level,cid) 
{ 
	if(!cmd_access (id,level,cid,1)) return PLUGIN_HANDLED
	new arg[32],VictimID
	
	read_argv(1,arg,31)  			// Arg contains Targets nick or Userid
	VictimID = cmd_target(id,arg,8)		// This code here tryes to find out the player index. Either from a nick or #userid
	if ((get_user_flags(VictimID) & ADMIN_IMMUNITY) && VictimID != id || !cmd_access (id,level,cid,2) ) { return PLUGIN_HANDLED; } // This code is kind of "long", its job is to. Stop actions against admins with immunity, Stop actions action if the user lacks access, or is a bot/hltv
	new s_Flags[4],VictimName[32],AdminName[32],flags,ShowFlags[32],CountFlags,s_GagTime[8],Float:f_GagTime

	read_argv(2,arg,31) 
	if (!arg[0]) // This means amx_gag <nick / userid> and no other flag or time was used.
	{
		f_GagTime = DefaultGagTime
		format(s_Flags,7,"abc")
	}
	else
	{
		if(contain(arg,"m")!=-1 && contain(arg,"!")==-1) // This means the time was entered in minuts and not seconds
		{
			copyc(s_GagTime,7,arg, 'm')
			f_GagTime = floatstr(s_GagTime)
		}
		else if(isdigit(arg[0])&& contain(arg,"!")==-1) // The value was entered in seconds
		{
			format(s_GagTime,7,arg)
			f_GagTime = floatstr(s_GagTime)
		}
		read_argv(3,arg,8)
		if (!arg[0])	// No flag has been entered
			format(s_Flags,7,"abc")
		else if(contain(arg,"!")==-1)		// This means that arg did NOT contain the ! symbot
			format(s_Flags,7,arg)
		else if(contain(arg,"!")!=-1)		// This means that arg did DOES contain the ! symbot
			format(s_Flags,7,"abc")
		if (f_GagTime == 0.0)
		{
			read_argv(2,arg,8)
			if(contain(arg,"!")!=-1)
				format(s_Flags,3,"abc") // Flag was entered.
			else
				format(s_Flags,3,arg) // Flag was entered.
			f_GagTime = DefaultGagTime
		}
#if GagReason == 1
		new GagReasonFound=0
		for(new i=2;i<=4;i++)
		{
			read_argv(i,arg,31)
			if(contain(arg,"!")!=-1)
			{	
				read_args(arg,31)
				new tmp[32]
				copyc(tmp,32,arg,33)
				copy(gs_GagReason[VictimID],47,arg[strlen(tmp)+1])
				GagReasonFound = 1
			}
		}
		if(GagReasonFound == 0)	// If no reason was entered, add the std reason.
			format(gs_GagReason[VictimID],47,"Kurallara uymadigin icin Gaglandin.")
#endif
	}

	flags = read_flags(s_Flags) // Converts the string flags ( a,b or c ) into a int
	g_GagPlayers[VictimID] = flags 
#if VoiceCommMute == 1
	if(flags & 4) // This code checks if the c flag was used ( reprisented by the number 4 ), If pressent it mutes his voicecomm.
		set_speak(VictimID, SPEAK_MUTED)
#endif
	new TaskParm[1]		// For some reason set_task requires a array. So i make a array :)
	TaskParm[0] = VictimID
	set_task(f_GagTime,"task_UnGagPlayer",VictimID,TaskParm,1) 

	CountFlags = 0
	if (flags & 1)
	{
		format(ShowFlags,31,"say")
		CountFlags++
	}
	if (flags & 2)
	{
		if(CountFlags)
			format(ShowFlags,31,"%s / say_team",ShowFlags)
		if(!CountFlags)
			format(ShowFlags,31,"say_team")
	}
#if VoiceCommMute != 0
	if(flags & 4)
	{
		if(CountFlags)
			format(ShowFlags,31,"%s / voicecomm",ShowFlags)
		if(!CountFlags)
			format(ShowFlags,31,"voicecomm")		
	}
#endif
	get_user_name(id,AdminName,31)
	get_user_name(VictimID,VictimName,31)
	switch(get_cvar_num("amx_show_activity"))   
	{ 
#if GagReason == 1
		case 2:   renkli_yazi(0,"!n[!g%s!n] !n[!t%s!n] !gyetkili !n[!t%s!n] !gadli oyuncuyu !t%0.0f !gSaniye !tGag'ladi., !tSebeb!n: !g%s !n( %s )",TAG,AdminName,VictimName,(f_GagTime),gs_GagReason[VictimID],ShowFlags) // debug added
   		case 1:   renkli_yazi(0,"!n[!g%s!n] !t[%s] !gadli oyuncu !t%0.0f !gSaniye !tGag'landi., !tSebeb!n: !g%s !n( %s )",TAG,VictimName,(f_GagTime),gs_GagReason[VictimID],ShowFlags) 
#else
		case 2:   renkli_yazi(0,"!n[!g%s!n] !n[!t%s!n] !gyetkili !n[!t%s!n] !gadli oyuncuyu !t%0.0f !gSaniye !tGag'ladi., ( %s )",TAG,AdminName,VictimName,(f_GagTime),ShowFlags) // debug added
   		case 1:   renkli_yazi(0,"!n[!g%s!n] !t[%s] !gadli oyuncu !t%0.0f Saniye !tGag'landi., ( %s )",TAG,VictimName,(f_GagTime),ShowFlags) 
#endif
	 
	 }	
#if LogAdminActions == 1
	new parm[5] /*0 = Victim id | 1 = Admin id | 2 = Used to control if its a gag or Ungag | 3 = The gag flags | 4  = Length of the gag */
	parm[0] = VictimID
	parm[1] = id
	parm[2] = 0
	parm[3] = flags
	parm[4] = floatround(Float:f_GagTime)
	LogAdminAction(parm)
#endif
	return PLUGIN_HANDLED
} 

public CMD_UnGagPlayer(id,level,cid)   /// Removed gagged player ( done via console command )
{
	new arg[32],VictimID
	read_argv(1,arg,31)  			// Arg contains Targets nick
	
	VictimID = cmd_target(id,arg,8)		// This code here tryes to find out the player index. Either from a nick or #userid
	if ((get_user_flags(VictimID) & ADMIN_IMMUNITY) && VictimID != id || !cmd_access (id,level,cid,2) ) { return PLUGIN_HANDLED; } // This code is kind of "long", its job is to. Stop actions against admins with immunity, Stop actions action if the user lacks access, or is a bot/hltv

	new AdminName[32],VictimName[32] 

	get_user_name(id,AdminName,31)		// Gets Admin name
	get_user_name(VictimID,VictimName,31)

	if(!g_GagPlayers[VictimID])		// Checks if player has gagged flag
	{
		console_print(id,"%s Is Not Gagged & Cannot Be Ungagged.",arg)
		return PLUGIN_HANDLED
	}
	switch(get_cvar_num("amx_show_activity"))   
	{ 
   		case 2:   renkli_yazi(0,"!n[!g%s!n] !n[!t%s!n] !gyetkili !n[!t%s!n] !gAdli oyuncunun Gag'ini !tKALDIRDI!g!",TAG,AdminName,VictimName) 
   		case 1:   renkli_yazi(0,"!n[!g%s!n] !t[%s] !gadli oyuncunun Gag'i !tKALDIRILDI!g!",TAG,VictimName) 
  	}

#if LogAdminActions == 1
	new parm[3] /*0 = Victim id | 1 = Admin id | 2 = Used to control if its a gag or Ungag | 3 = The gag flags | 4  = Length of the gag */
	parm[0] = VictimID
	parm[1] = id
	parm[2] = 1
	LogAdminAction(parm)
#endif
	remove_task(VictimID)		// Removes the set_task set to ungag the player
	UnGagPlayer(VictimID)		// This is the function that does the actual removal of the gag info
	return PLUGIN_HANDLED
} 

public client_disconnect(id) 
{ 
	if(g_GagPlayers[id]) // Checks if disconnected player is gagged, and removes flags from his id.
	{
		new Nick[32],Authid[35]
		get_user_name(id,Nick,31)
		get_user_authid(id,Authid,34)
		renkli_yazi(0,"!n[!t%s!n] ( !g%s <%s> !n) !gGag'liyken oyundan !tAyrildi.",TAG,Nick,Authid)
		remove_task(id)		// Removes the set_task set to ungag the player
		UnGagPlayer(id)		// This is the function that does the actual removal of the gag info
	}
}
#if BlockNameChange == 1
public client_infochanged(id)
{
	if(g_GagPlayers[id])
	{
		new newname[32], oldname[32]
		get_user_info(id, "name", newname,31)
		get_user_name(id,oldname,31)
	
		if (!equal(oldname,newname))
		{
			renkli_yazi(id,"!n[!g%s!n] !gGag'li iken !tNick !gDegistiremezsin!t!",TAG)
			set_user_info(id,"name",oldname)
		}
	}
}
#endif
public task_UnGagPlayer(TaskParm[])	// This function is called when the task expires
{
	new VictimName[32]
	get_user_name(TaskParm[0],VictimName,31)
	renkli_yazi(0,"!n[!t%s!n] !t%s !gadli oyuncunun !gGag'i !tKALDIRILDI!g!",VictimName)
	ungaghuman(TaskParm[0])
}
public ungaghuman(id)
{
	new name[32]
	get_user_name(id,name,31)
	server_cmd("amx_ungag %s",name)
}
#if LogAdminActions == 1
stock LogAdminAction(parm[]) // This code is what logs the admin actions.
{ 
	new VictimName[32],AdminName[32],AdminAuth[35],VictimAuth[35]
	get_user_name(parm[1],AdminName,31)
	get_user_name(parm[0],VictimName,31)
	get_user_authid(parm[1],AdminAuth,34)
	get_user_authid(parm[0],VictimAuth,34)

#if GagReason == 1
	if(parm[2] == 0)
		log_amx("Gag: ^"%s<%s>^" Has Gagged %s <%s> for %d ( %d ) Reason: %s",AdminName,AdminAuth,VictimName,VictimAuth,parm[4],parm[3],gs_GagReason[parm[0]])
#else
	if(parm[2] == 0)
		log_amx("Gag: ^"%s<%s>^" Has Gagged %s <%s> for %d ( %d )",AdminName,AdminAuth,VictimName,VictimAuth,parm[4],parm[3])
#endif
	if(parm[2] == 1)
		log_amx("UnGag: ^"%s<%s>^" Has Ungagged %s<%s>",AdminName,AdminAuth,VictimName,VictimAuth)
}
#endif
stock UnGagPlayer(id) // This code is what removes the gag.
{ 
#if VoiceCommMute == 1
	if(g_GagPlayers[id] & 4)	// Unmutes the player if he had voicecomm muted.
	{
		if(get_cvar_num("sv_alltalk") == 1)
			set_speak(id, SPEAK_ALL)
		else 
			set_speak(id, SPEAK_NORMAL)
	}
#endif
	g_GagPlayers[id] = 0
#if GagReason == 1
	setc(gs_GagReason[id],31,0)
#endif
}
#if AllowOtherPlugin2Interface == 1
public func_AddGag(id)
{
	g_GagPlayers[id] = 7 
	new TaskParm[1]		// For some reason set_task requires a array. So i make a array :)
	TaskParm[0] = id
#if VoiceCommMute == 1
	set_speak(id, SPEAK_MUTED)
#endif
	set_task( DefaultGagTime,"task_UnGagPlayer",id,TaskParm,1)
}

public func_RemoveGag(id)
{
	remove_task(id)		// Removes the set_task set to ungag the player
	UnGagPlayer(id)
#endif
}
stock renkli_yazi(const id, const input[], any:...) {
	new count = 1, players[32]
	static msg[191]
	vformat(msg, 190, input, 3)
	
	replace_all(msg, 190, "!n", "^x01"); 
	replace_all(msg, 190, "!g", "^x04"); 	
	replace_all(msg, 190, "!t", "^x03"); 
	
	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();
		}
	}
}
}



Dene bakim

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
Gozyasi`
Mesajlar: 1394
Kayıt: Prş Şub 08, 2018 7:48 am
Konum: İstanbul
Clan İsmi: IMMORTAL Gaming
İletişim:

Gag eklentisindeki sorun için Yardım

Mesaj gönderen Gozyasi` »

ShooTeR yazdı: Cum Şub 23, 2018 10:06 pm

Kod: Tümünü seç

#define VoiceCommMute 1		// 0 = Disabled ( no extra module required ) | 1 = Voicecomm muteing enabled. ( requires engine module)
#define BlockNameChange 1	// 0 = Disabled | 1 = Block namechange on gagged clients
#define LogAdminActions 1	// 0 = Disabled | 1 = Admin actions will be logged
#define DefaultGagTime 60.0	// The std gag time if no other time was entered. ( this is 10 min ), Remember the value MUST contain a .0
#define PlaySound 0		// 0 = Disabled | 1 = Play a sound to gagged clients when their trying to talk
#define GagReason 0		// 0 = Disabled | 1 = Gagged clients can see why there where gagged when they try to talk
#define MaxPlayers 32
#define AllowOtherPlugin2Interface 1
#define TAG "IMMORTAL"

#include <amxmodx>
#include <amxmisc>
#include <engine>

new g_GagPlayers[MaxPlayers+1]	// Used to check if a player is gagged
#if GagReason == 1
new gs_GagReason[MaxPlayers+1][48]
#endif

public plugin_init() 
{ 
	register_plugin("Admin Gag","1.8.3","EKS") 
	register_clcmd("say","block_gagged") 
	register_clcmd("say_team","block_gagged") 
	register_concmd("amx_gag","CMD_GagPlayer",ADMIN_KICK,"<nick or #userid> <a|b|c> <time>") 
	register_concmd("amx_ungag","CMD_UnGagPlayer",ADMIN_KICK,"<nick or #userid>") 
} 

public block_gagged(id){  // This function is what check the say / team_say messages & block them if the client is blocked.
	if(!g_GagPlayers[id]) return PLUGIN_CONTINUE // Is true if the client is NOT blocked.
	new cmd[5] 
	read_argv(0,cmd,4) 
	if ( cmd[3] == '_' )
		{ 
		if (g_GagPlayers[id] & 2){ 
#if GagReason == 1
			renkli_yazi(id,"!n[!t%s!n] !t%s !gSebiyle !tGag !gyedin.",TAG,gs_GagReason[id]) 
#else
			renkli_yazi(id,"!n[!t%s!n] !gGag yedigin icin yazi yazamazsin!g. !g[!tYazdiklarina Dikkat Et!g]",TAG) 
#endif

#if PlaySound == 1
			client_cmd(id,"spk barney/youtalkmuch")
#endif
			return PLUGIN_HANDLED 
			} 
		} 
	else if (g_GagPlayers[id] & 1)   { 
#if GagReason == 1
			renkli_yazi(id,"!n[!g%s!n] !t%s !gSebiyle !tGag !gyedin.",TAG,gs_GagReason[id]) 
#else
			renkli_yazi(id,"!n[!g%s!n] !gGag yedigin icin yazi yazamazsin!g. !g[!tYazdiklarina Dikkat Et!g]",TAG) 
#endif
#if PlaySound == 1
			client_cmd(id,"spk barney/youtalkmuch")
#endif
		return PLUGIN_HANDLED 
		} 
	return PLUGIN_CONTINUE 
	} 
public CMD_GagPlayer(id,level,cid) 
{ 
	if(!cmd_access (id,level,cid,1)) return PLUGIN_HANDLED
	new arg[32],VictimID
	
	read_argv(1,arg,31)  			// Arg contains Targets nick or Userid
	VictimID = cmd_target(id,arg,8)		// This code here tryes to find out the player index. Either from a nick or #userid
	if ((get_user_flags(VictimID) & ADMIN_IMMUNITY) && VictimID != id || !cmd_access (id,level,cid,2) ) { return PLUGIN_HANDLED; } // This code is kind of "long", its job is to. Stop actions against admins with immunity, Stop actions action if the user lacks access, or is a bot/hltv
	new s_Flags[4],VictimName[32],AdminName[32],flags,ShowFlags[32],CountFlags,s_GagTime[8],Float:f_GagTime

	read_argv(2,arg,31) 
	if (!arg[0]) // This means amx_gag <nick / userid> and no other flag or time was used.
	{
		f_GagTime = DefaultGagTime
		format(s_Flags,7,"abc")
	}
	else
	{
		if(contain(arg,"m")!=-1 && contain(arg,"!")==-1) // This means the time was entered in minuts and not seconds
		{
			copyc(s_GagTime,7,arg, 'm')
			f_GagTime = floatstr(s_GagTime)
		}
		else if(isdigit(arg[0])&& contain(arg,"!")==-1) // The value was entered in seconds
		{
			format(s_GagTime,7,arg)
			f_GagTime = floatstr(s_GagTime)
		}
		read_argv(3,arg,8)
		if (!arg[0])	// No flag has been entered
			format(s_Flags,7,"abc")
		else if(contain(arg,"!")==-1)		// This means that arg did NOT contain the ! symbot
			format(s_Flags,7,arg)
		else if(contain(arg,"!")!=-1)		// This means that arg did DOES contain the ! symbot
			format(s_Flags,7,"abc")
		if (f_GagTime == 0.0)
		{
			read_argv(2,arg,8)
			if(contain(arg,"!")!=-1)
				format(s_Flags,3,"abc") // Flag was entered.
			else
				format(s_Flags,3,arg) // Flag was entered.
			f_GagTime = DefaultGagTime
		}
#if GagReason == 1
		new GagReasonFound=0
		for(new i=2;i<=4;i++)
		{
			read_argv(i,arg,31)
			if(contain(arg,"!")!=-1)
			{	
				read_args(arg,31)
				new tmp[32]
				copyc(tmp,32,arg,33)
				copy(gs_GagReason[VictimID],47,arg[strlen(tmp)+1])
				GagReasonFound = 1
			}
		}
		if(GagReasonFound == 0)	// If no reason was entered, add the std reason.
			format(gs_GagReason[VictimID],47,"Kurallara uymadigin icin Gaglandin.")
#endif
	}

	flags = read_flags(s_Flags) // Converts the string flags ( a,b or c ) into a int
	g_GagPlayers[VictimID] = flags 
#if VoiceCommMute == 1
	if(flags & 4) // This code checks if the c flag was used ( reprisented by the number 4 ), If pressent it mutes his voicecomm.
		set_speak(VictimID, SPEAK_MUTED)
#endif
	new TaskParm[1]		// For some reason set_task requires a array. So i make a array :)
	TaskParm[0] = VictimID
	set_task(f_GagTime,"task_UnGagPlayer",VictimID,TaskParm,1) 

	CountFlags = 0
	if (flags & 1)
	{
		format(ShowFlags,31,"say")
		CountFlags++
	}
	if (flags & 2)
	{
		if(CountFlags)
			format(ShowFlags,31,"%s / say_team",ShowFlags)
		if(!CountFlags)
			format(ShowFlags,31,"say_team")
	}
#if VoiceCommMute != 0
	if(flags & 4)
	{
		if(CountFlags)
			format(ShowFlags,31,"%s / voicecomm",ShowFlags)
		if(!CountFlags)
			format(ShowFlags,31,"voicecomm")		
	}
#endif
	get_user_name(id,AdminName,31)
	get_user_name(VictimID,VictimName,31)
	switch(get_cvar_num("amx_show_activity"))   
	{ 
#if GagReason == 1
		case 2:   renkli_yazi(0,"!n[!g%s!n] !n[!t%s!n] !gyetkili !n[!t%s!n] !gadli oyuncuyu !t%0.0f !gSaniye !tGag'ladi., !tSebeb!n: !g%s !n( %s )",TAG,AdminName,VictimName,(f_GagTime),gs_GagReason[VictimID],ShowFlags) // debug added
   		case 1:   renkli_yazi(0,"!n[!g%s!n] !t[%s] !gadli oyuncu !t%0.0f !gSaniye !tGag'landi., !tSebeb!n: !g%s !n( %s )",TAG,VictimName,(f_GagTime),gs_GagReason[VictimID],ShowFlags) 
#else
		case 2:   renkli_yazi(0,"!n[!g%s!n] !n[!t%s!n] !gyetkili !n[!t%s!n] !gadli oyuncuyu !t%0.0f !gSaniye !tGag'ladi., ( %s )",TAG,AdminName,VictimName,(f_GagTime),ShowFlags) // debug added
   		case 1:   renkli_yazi(0,"!n[!g%s!n] !t[%s] !gadli oyuncu !t%0.0f Saniye !tGag'landi., ( %s )",TAG,VictimName,(f_GagTime),ShowFlags) 
#endif
	 
	 }	
#if LogAdminActions == 1
	new parm[5] /*0 = Victim id | 1 = Admin id | 2 = Used to control if its a gag or Ungag | 3 = The gag flags | 4  = Length of the gag */
	parm[0] = VictimID
	parm[1] = id
	parm[2] = 0
	parm[3] = flags
	parm[4] = floatround(Float:f_GagTime)
	LogAdminAction(parm)
#endif
	return PLUGIN_HANDLED
} 

public CMD_UnGagPlayer(id,level,cid)   /// Removed gagged player ( done via console command )
{
	new arg[32],VictimID
	read_argv(1,arg,31)  			// Arg contains Targets nick
	
	VictimID = cmd_target(id,arg,8)		// This code here tryes to find out the player index. Either from a nick or #userid
	if ((get_user_flags(VictimID) & ADMIN_IMMUNITY) && VictimID != id || !cmd_access (id,level,cid,2) ) { return PLUGIN_HANDLED; } // This code is kind of "long", its job is to. Stop actions against admins with immunity, Stop actions action if the user lacks access, or is a bot/hltv

	new AdminName[32],VictimName[32] 

	get_user_name(id,AdminName,31)		// Gets Admin name
	get_user_name(VictimID,VictimName,31)

	if(!g_GagPlayers[VictimID])		// Checks if player has gagged flag
	{
		console_print(id,"%s Is Not Gagged & Cannot Be Ungagged.",arg)
		return PLUGIN_HANDLED
	}
	switch(get_cvar_num("amx_show_activity"))   
	{ 
   		case 2:   renkli_yazi(0,"!n[!g%s!n] !n[!t%s!n] !gyetkili !n[!t%s!n] !gAdli oyuncunun Gag'ini !tKALDIRDI!g!",TAG,AdminName,VictimName) 
   		case 1:   renkli_yazi(0,"!n[!g%s!n] !t[%s] !gadli oyuncunun Gag'i !tKALDIRILDI!g!",TAG,VictimName) 
  	}

#if LogAdminActions == 1
	new parm[3] /*0 = Victim id | 1 = Admin id | 2 = Used to control if its a gag or Ungag | 3 = The gag flags | 4  = Length of the gag */
	parm[0] = VictimID
	parm[1] = id
	parm[2] = 1
	LogAdminAction(parm)
#endif
	remove_task(VictimID)		// Removes the set_task set to ungag the player
	UnGagPlayer(VictimID)		// This is the function that does the actual removal of the gag info
	return PLUGIN_HANDLED
} 

public client_disconnect(id) 
{ 
	if(g_GagPlayers[id]) // Checks if disconnected player is gagged, and removes flags from his id.
	{
		new Nick[32],Authid[35]
		get_user_name(id,Nick,31)
		get_user_authid(id,Authid,34)
		renkli_yazi(0,"!n[!t%s!n] ( !g%s <%s> !n) !gGag'liyken oyundan !tAyrildi.",TAG,Nick,Authid)
		remove_task(id)		// Removes the set_task set to ungag the player
		UnGagPlayer(id)		// This is the function that does the actual removal of the gag info
	}
}
#if BlockNameChange == 1
public client_infochanged(id)
{
	if(g_GagPlayers[id])
	{
		new newname[32], oldname[32]
		get_user_info(id, "name", newname,31)
		get_user_name(id,oldname,31)
	
		if (!equal(oldname,newname))
		{
			renkli_yazi(id,"!n[!g%s!n] !gGag'li iken !tNick !gDegistiremezsin!t!",TAG)
			set_user_info(id,"name",oldname)
		}
	}
}
#endif
public task_UnGagPlayer(TaskParm[])	// This function is called when the task expires
{
	new VictimName[32]
	get_user_name(TaskParm[0],VictimName,31)
	renkli_yazi(0,"!n[!t%s!n] !t%s !gadli oyuncunun !gGag'i !tKALDIRILDI!g!",VictimName)
	ungaghuman(TaskParm[0])
}
public ungaghuman(id)
{
	new name[32]
	get_user_name(id,name,31)
	server_cmd("amx_ungag %s",name)
}
#if LogAdminActions == 1
stock LogAdminAction(parm[]) // This code is what logs the admin actions.
{ 
	new VictimName[32],AdminName[32],AdminAuth[35],VictimAuth[35]
	get_user_name(parm[1],AdminName,31)
	get_user_name(parm[0],VictimName,31)
	get_user_authid(parm[1],AdminAuth,34)
	get_user_authid(parm[0],VictimAuth,34)

#if GagReason == 1
	if(parm[2] == 0)
		log_amx("Gag: ^"%s<%s>^" Has Gagged %s <%s> for %d ( %d ) Reason: %s",AdminName,AdminAuth,VictimName,VictimAuth,parm[4],parm[3],gs_GagReason[parm[0]])
#else
	if(parm[2] == 0)
		log_amx("Gag: ^"%s<%s>^" Has Gagged %s <%s> for %d ( %d )",AdminName,AdminAuth,VictimName,VictimAuth,parm[4],parm[3])
#endif
	if(parm[2] == 1)
		log_amx("UnGag: ^"%s<%s>^" Has Ungagged %s<%s>",AdminName,AdminAuth,VictimName,VictimAuth)
}
#endif
stock UnGagPlayer(id) // This code is what removes the gag.
{ 
#if VoiceCommMute == 1
	if(g_GagPlayers[id] & 4)	// Unmutes the player if he had voicecomm muted.
	{
		if(get_cvar_num("sv_alltalk") == 1)
			set_speak(id, SPEAK_ALL)
		else 
			set_speak(id, SPEAK_NORMAL)
	}
#endif
	g_GagPlayers[id] = 0
#if GagReason == 1
	setc(gs_GagReason[id],31,0)
#endif
}
#if AllowOtherPlugin2Interface == 1
public func_AddGag(id)
{
	g_GagPlayers[id] = 7 
	new TaskParm[1]		// For some reason set_task requires a array. So i make a array :)
	TaskParm[0] = id
#if VoiceCommMute == 1
	set_speak(id, SPEAK_MUTED)
#endif
	set_task( DefaultGagTime,"task_UnGagPlayer",id,TaskParm,1)
}

public func_RemoveGag(id)
{
	remove_task(id)		// Removes the set_task set to ungag the player
	UnGagPlayer(id)
#endif
}
stock renkli_yazi(const id, const input[], any:...) {
	new count = 1, players[32]
	static msg[191]
	vformat(msg, 190, input, 3)
	
	replace_all(msg, 190, "!n", "^x01"); 
	replace_all(msg, 190, "!g", "^x04"); 	
	replace_all(msg, 190, "!t", "^x03"); 
	
	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();
		}
	}
}
}



Dene bakim
Malesef aynı sorun. Gag atarken say mesajında saniye bazında görünüyor. Ama plugin içinde dakika olarak düzenlenmiş olabilirmi.
Mesela 30 saniye gag atiyoruz diyelim otomatik 30 dakika felan atıyor olmasın?

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

|.Gene[R]aL.|
Mesajlar: 994
Kayıt: Çrş Haz 22, 2016 6:38 pm
Konum: ANKARA
Server Ip/DNS: cs6.csduragi.net
Clan İsmi: STH Gaming
İletişim:

Gag eklentisindeki sorun için Yardım

Mesaj gönderen |.Gene[R]aL.| »

Gozyasi` yazdı: Cum Şub 23, 2018 7:23 pm Selam. Attiğim gag eklentisinde gaglanan kişinin süresi dolduğu zaman otomatik gag'ı kalkmıyor. Elle kaldırmamız gerekiyor. Bu sorunu düzeltebilecek varmı ? @ShooTeR @Yek'-ta
STH_gag.sma
bunu dene buda türkçe


STH Gaming COMMUNITY Pro Pub Server
Server ip : cs6.csduragi.net / 213.238.173.206 / cs1.sthgaming.org
Web Adresi : http://www.sthgaming.org
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

ShooTeR
Mesajlar: 4496
Kayıt: Çrş Ağu 16, 2017 10:35 pm
Server Ip/DNS: CSXX.CSDURAGI.COM
Clan İsmi: NoMercy

Gag eklentisindeki sorun için Yardım

Mesaj gönderen ShooTeR »

|.Gene[R]aL.| yazdı: Cum Şub 23, 2018 10:32 pm
Gozyasi` yazdı: Cum Şub 23, 2018 7:23 pm Selam. Attiğim gag eklentisinde gaglanan kişinin süresi dolduğu zaman otomatik gag'ı kalkmıyor. Elle kaldırmamız gerekiyor. Bu sorunu düzeltebilecek varmı ? @ShooTeR @Yek'-ta
STH_gag.sma
bunu dene buda türkçe


STH Gaming COMMUNITY Pro Pub Server
Server ip : cs6.csduragi.net / 213.238.173.206 / cs1.sthgaming.org
Web Adresi : http://www.sthgaming.org
Attıgınız eklentiyle konu sahibinin eklentisi aynı zaten

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

ShooTeR
Mesajlar: 4496
Kayıt: Çrş Ağu 16, 2017 10:35 pm
Server Ip/DNS: CSXX.CSDURAGI.COM
Clan İsmi: NoMercy

Gag eklentisindeki sorun için Yardım

Mesaj gönderen ShooTeR »

Diyecegim ancak iki eklentiyi karşılastırdıgımda ikisindede kodlama sayısı farklı konu sahibi buyuk oranla editinde yanlışlık yaptığı için oto gag kalkmıyor bakalım...

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

|.Gene[R]aL.|
Mesajlar: 994
Kayıt: Çrş Haz 22, 2016 6:38 pm
Konum: ANKARA
Server Ip/DNS: cs6.csduragi.net
Clan İsmi: STH Gaming
İletişim:

Gag eklentisindeki sorun için Yardım

Mesaj gönderen |.Gene[R]aL.| »

ShooTeR yazdı: Cum Şub 23, 2018 10:35 pm
|.Gene[R]aL.| yazdı: Cum Şub 23, 2018 10:32 pm
Gozyasi` yazdı: Cum Şub 23, 2018 7:23 pm Selam. Attiğim gag eklentisinde gaglanan kişinin süresi dolduğu zaman otomatik gag'ı kalkmıyor. Elle kaldırmamız gerekiyor. Bu sorunu düzeltebilecek varmı ? @ShooTeR @Yek'-ta
STH_gag.sma
bunu dene buda türkçe


STH Gaming COMMUNITY Pro Pub Server
Server ip : cs6.csduragi.net / 213.238.173.206 / cs1.sthgaming.org
Web Adresi : http://www.sthgaming.org
Attıgınız eklentiyle konu sahibinin eklentisi aynı zaten
ozaman baska eklentıyle çakısıyor benım serverımde gayet normal calısmakta

Link:
Linklerini gizle
Linki Kopyala
Cevapla