Raised This Month: $ Target: $400
 0% 

AdminChat plug in problem


Post New Thread Reply   
 
Thread Tools Display Modes
ANTICHRISTUS
kingdom of weird stuff
Join Date: Jun 2010
Location: My kingdom is not in thi
Old 02-12-2014 , 14:04   Re: AdminChat plug in problem
Reply With Quote #11

if it's a plugin's bug, then read all the posts in the related thread, and post your problem there.
or, use another admin chat plugin, there are a lot. search for (in titles) admin+chat+colors, admin+chat, chat+green, etc.
__________________
ANTICHRISTUS is offline
sonel
Member
Join Date: Jul 2012
Old 02-12-2014 , 19:15   Re: AdminChat plug in problem
Reply With Quote #12

Try this

PHP Code:
#include <amxmodx>

public plugin_init()
{
    
register_plugin("Bug fix :)""1.0""sonel")
    
    
register_clcmd("say""Cmdsay")
    
register_clcmd("say_team""Cmdsay")
}

public 
Cmdsay(id)
{
    new 
message[256]
    
read_args(messagecharsmax(message))
    
remove_quotes(message)
    
    if (
containi(message"%") != -1)
    {
        return 
PLUGIN_HANDLED
    
}
    return 
PLUGIN_CONTINUE

Put it before admin chat color
sonel is offline
fysiks
Veteran Member
Join Date: Sep 2007
Location: Flatland, USA
Old 02-12-2014 , 22:16   Re: AdminChat plug in problem
Reply With Quote #13

Quote:
Originally Posted by renaut View Post
fysiks whats the adminchat does on the game? im not sure but i think allow the admins to write different from another players :p
Only amx_csay and amx_tsay are able to use different colors by default. These messages are not in chat. amx_say and amx_chat are in chat and do NOT have the ability to change color. Therefore, if your issue is related to colored chat (non-default colors) then you need to post in the thread of the plugin which provides that capability.
__________________
fysiks is offline
renaut
Junior Member
Join Date: Feb 2014
Old 02-25-2014 , 07:27   Re: AdminChat plug in problem
Reply With Quote #14

Hey,

Ive tried the options you have told me but it didnt work...

The bug is on the code coz when someone type say %.10000000d%s on console all the Admins, Mods e Vips on the server go out of the game. Can someone tell me how can i fix that?

HTML Code:
#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Admin Chat Colors"
#define VERSION "2.0"
#define AUTHOR "Arion"

#define ACCESS_LEVEL ADMIN_IMMUNITY
#define ADMIN_LISTEN ADMIN_LEVEL_C

new message[192]
new sayText
new teamInfo
new maxPlayers

new g_MessageColor
new g_NameColor
new g_AdminListen

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

new const g_szTag[][] = {
	"",
	"[ADMIN]",
	"[MOD]",
	"[VIP]"
}

public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR)

	g_MessageColor = register_cvar("amx_color", "2") // Message colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red
	g_NameColor = register_cvar("amx_namecolor", "6") // Name colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-color
	g_AdminListen = register_cvar("amx_listen", "1") // Set whether admins see or not all messages(Alive, dead and team-only)


	sayText = get_user_msgid("SayText")
	teamInfo = get_user_msgid("TeamInfo")
	maxPlayers = get_maxplayers()


	register_message(sayText, "avoid_duplicated")

	register_concmd("amx_color", "set_color", ACCESS_LEVEL, "<color>")
	register_concmd("amx_namecolor", "set_name_color", ACCESS_LEVEL, "<color>")
	register_concmd("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
	register_clcmd("say", "hook_say")
	register_clcmd("say_team", "hook_teamsay")
}


public avoid_duplicated(msgId, msgDest, receiver)
{
	return PLUGIN_HANDLED
}


public hook_say(id)
{
	read_args(message, 191)
	remove_quotes(message)

	// Gungame commands and empty messages
	if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
		return PLUGIN_CONTINUE

	new name[32]
	get_user_name(id, name, 31)

	new admin = 0, iFlags = get_user_flags(id)

	if(iFlags & ADMIN_BAN)
		admin = 1
	else if(iFlags & ADMIN_KICK)
		admin = 2
	//else if(iFlags & ADMIN_LEVEL_B)
	//	admin = 3

	new isAlive

	if(is_user_alive(id))
	{
		isAlive = 1
		alive = "^x01"
	}
	else
	{
		isAlive = 0
		alive = "^x01*DEAD* "
	}

	static color[10]

	if(admin)
	{
		// Name
		switch(get_pcvar_num(g_NameColor))
		{
			case 1:
				format(strName, 191, "^x04%s %s%s", g_szTag[admin], alive, name)
			case 2:
				format(strName, 191, "^x04%s %s^x04%s ", g_szTag[admin], alive, name)
			case 3:
			{
				color = "SPECTATOR"
				format(strName, 191, "^x04%s %s^x03%s ", g_szTag[admin], alive, name)
			}
			case 4:
			{
				color = "CT"
				format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
			}
			case 5:
			{
				color = "TERRORIST"
				format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
			}
			case 6:
			{
				get_user_team(id, color, 9)
				format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
			}
		}

		// Message
		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     // Player is not admin. Team-color name : Yellow message
	{
		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)    // Sends the colored message

	return PLUGIN_CONTINUE
}


public hook_teamsay(id)
{
	new playerTeam = get_user_team(id)
	new playerTeamName[19]

	switch(playerTeam) // Team names which appear on team-only messages
	{
		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)

	// Gungame commands and empty messages
	if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
		return PLUGIN_CONTINUE

	new name[32]
	get_user_name(id, name, 31)

	new admin = 0, iFlags = get_user_flags(id)

	if(iFlags & ADMIN_BAN)
		admin = 1
	else if(iFlags & ADMIN_KICK)
		admin = 2
	//else if(iFlags & ADMIN_LEVEL_B)
	//	admin = 3

	new isAlive

	if(is_user_alive(id))
	{
		isAlive = 1
		alive = "^x01"
	}
	else
	{
		isAlive = 0
		alive = "^x01*DEAD* "
	}

	static color[10]

	if(admin)
	{
		// Name
		switch(get_pcvar_num(g_NameColor))
		{
			case 1:
				format(strName, 191, "%s(%s)^x04%s %s", alive, playerTeamName, g_szTag[admin], name)
			case 2:
				format(strName, 191, "%s(%s)^x04%s ^x04%s", alive, playerTeamName, g_szTag[admin], name)
			case 3:
			{
				color = "SPECTATOR"
				format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
			}
			case 4:
			{
				color = "CT"
				format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
			}
			case 5:
			{
				color = "TERRORIST"
				format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
			}
			case 6:
			{
				get_user_team(id, color, 9)
				format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
			}
		}

		// Message
		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     // Player is not admin. Team-color name : Yellow message
	{
		get_user_team(id, color, 9)
		format(strName, 191, "%s(%s) ^x03%s", alive, playerTeamName, name)
		format(strText, 191, "%s", message)
	}

	format(message, 191, "%s ^x01:  %s", strName, strText)

	sendTeamMessage(color, isAlive, playerTeam)    // Sends the colored message

	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_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_pcvar_num(g_NameColor, 2)
		}
	}

	return PLUGIN_HANDLED
}
public plugin_init()
{
    register_plugin("Bug fix :)", "1.0", "sonel")
    
    register_clcmd("say", "Cmdsay")
    register_clcmd("say_team", "Cmdsay")
}

public Cmdsay(id)
{
    new message[256]
    read_args(message, charsmax(message))
    remove_quotes(message)
    
    if (containi(message, "%") != -1)
    {
        return PLUGIN_HANDLED
    }
    return PLUGIN_CONTINUE
}  

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_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_pcvar_num(g_MessageColor, 2)
		}
	}

	return PLUGIN_HANDLED
}


public plugin_init()
{
    register_plugin("Bug fix :)", "1.0", "sonel")
    
    register_clcmd("say", "Cmdsay")
    register_clcmd("say_team", "Cmdsay")
}

public Cmdsay(id)
{
    new message[256]
    read_args(message, charsmax(message))
    remove_quotes(message)
    
    if (containi(message, "%") != -1)
    {
        return PLUGIN_HANDLED
    }
    return PLUGIN_CONTINUE
}  

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_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)    // Stores user's team name to change back after sending the message
			changeTeamInfo(player, color)        // Changes user's team according to color choosen
			writeMessage(player, message)        // Writes the message on player's chat
			changeTeamInfo(player, teamName)    // Changes user's team back to original
		}
	}
}


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)    // Stores user's team name to change back after sending the message
				changeTeamInfo(player, color)        // Changes user's team according to color choosen
				writeMessage(player, message)        // Writes the message on player's chat
				changeTeamInfo(player, teamName)    // Changes user's team back to original
			}
		}
	}
}


public changeTeamInfo(player, team[])
{
	message_begin(MSG_ONE, teamInfo, _, player)    // Tells to to modify teamInfo(Which is responsable for which time player is)
	write_byte(player)                // Write byte needed
	write_string(team)                // Changes player's team
	message_end()                    // Also Needed
}


public writeMessage(player, message[])
{
	message_begin(MSG_ONE, sayText, {0, 0, 0}, player)    // Tells to modify sayText(Which is responsable for writing colored messages)
	write_byte(player)                    // Write byte needed
	write_string(message)                    // Effectively write the message, finally, afterall
	message_end()                        // Needed as always
}
renaut is offline
joshknifer
Veteran Member
Join Date: Jun 2011
Location: Denver, CO
Old 02-25-2014 , 11:58   Re: AdminChat plug in problem
Reply With Quote #15

Quote:
Originally Posted by joshknifer View Post
Post all of your outputs:

rcon version
rcon meta version
rcon meta list
rcon amxx version
rcon amxx modules
rcon amxx plugins
rcon status
__________________
joshknifer is offline
Send a message via Skype™ to joshknifer
Black Rose
Veteran Member
Join Date: Feb 2011
Location: Stockholm, Sweden
Old 02-25-2014 , 13:40   Re: AdminChat plug in problem
Reply With Quote #16

Stop encouraging the posts.

Quote:
Originally Posted by ANTICHRISTUS View Post
if it's a plugin's bug, then read all the posts in the related thread, and post your problem there.
or, use another admin chat plugin, there are a lot. search for (in titles) admin+chat+colors, admin+chat, chat+green, etc.
__________________
Black Rose is offline
ANTICHRISTUS
kingdom of weird stuff
Join Date: Jun 2010
Location: My kingdom is not in thi
Old 02-25-2014 , 16:34   Re: AdminChat plug in problem
Reply With Quote #17

sorry, but I don't understand what do you mean ?

edit: right, thanks .
__________________

Last edited by ANTICHRISTUS; 02-26-2014 at 06:11. Reason: avoiding another post.
ANTICHRISTUS is offline
Black Rose
Veteran Member
Join Date: Feb 2011
Location: Stockholm, Sweden
Old 02-25-2014 , 19:20   Re: AdminChat plug in problem
Reply With Quote #18

I wrote my text before yours so it wouldn't look like I'm replying to you.
I agree with you in this case, that's why I quoted you.
__________________
Black Rose is offline
joshknifer
Veteran Member
Join Date: Jun 2011
Location: Denver, CO
Old 02-26-2014 , 11:11   Re: AdminChat plug in problem
Reply With Quote #19

I don't understand what you are saying to me then. He asked a question and the answer is probably updating, but without his outputs I can't say for sure.
__________________
joshknifer is offline
Send a message via Skype™ to joshknifer
Black Rose
Veteran Member
Join Date: Feb 2011
Location: Stockholm, Sweden
Old 02-26-2014 , 12:05   Re: AdminChat plug in problem
Reply With Quote #20

AC has already clearly stated that this is not the place for such a discussion.
__________________
Black Rose is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 04:18.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode