SA-MP Forums Archive
Chat Toggle - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: Chat Toggle (/showthread.php?tid=583728)



Chat Toggle - DerickClark - 30.07.2015

How to only show for the id who typed the command and its not switching
Код:
CMD:chatid(playerid, params[])
{
	new Togglechat[250];
	if(Chat[playerid])
	{
	    format(Togglechat, sizeof(Togglechat), "You had set your chatid", ReturnName(playerid));
	    SendClientMessageToAll(COLOUR_CYAN, Togglechat);
	    Chat[playerid] = true;
	}
	else
	{
	    //format(Togglechat, Togglechat(playerid), "You have unsetted your chatid", ReturnName(playerid));
	    SendClientMessageToAll(COLOUR_CYAN, Togglechat);
	    Chat[playerid] = false;
	}
	return 1;
}
pawn Код:
public OnPlayerText(playerid, text[])
{
    if(Chat[playerid])
    {
        new string[500];
        format(string,sizeof(string),"%s: {FFFFFF}%s",ReturnName(playerid),text);
        SendClientMessageToAll(GetPlayerColor(playerid), string);
    }
    else
    {
        new string[500];
        format(string,sizeof(string),"(%i) %s: {FFFFFF}%s",playerid, ReturnName(playerid),text);
        SendClientMessageToAll(GetPlayerColor(playerid), string);
    }
    return 0;
}



Re: Chat Toggle - Dan. - 30.07.2015

Eh.. you have 1209 posts and you don't know how to change SendClientMessageToAll to SendClientMessage?


Re: Chat Toggle - DerickClark - 30.07.2015

Posts doesn't mater. i'm having a problem cause it's not switching messages.


Re: Chat Toggle - Dan. - 30.07.2015

Код:
new bool: Chat[MAX_PLAYERS];

CMD:chatid(playerid, params[])
{
	new Togglechat[128];
	if(Chat[playerid] == false)
	{
	    format(Togglechat, sizeof(Togglechat), "You had set your chatid", ReturnName(playerid));
	    SendClientMessage(playerid, COLOUR_CYAN, Togglechat);
	    Chat[playerid] = true;
	}
	else
	{
	    format(Togglechat, sizeof(Togglechat), "You have unsetted your chatid", ReturnName(playerid));
	    SendClientMessage(playerid, COLOUR_CYAN, Togglechat);
	    Chat[playerid] = false;
	}
	return 1;
}



public OnPlayerText(playerid, text[])
{
    if(Chat[playerid] == true)
	{
        new string[128];
   	    format(string,sizeof(string),"%s: {FFFFFF}%s",ReturnName(playerid),text);
 	    SendClientMessageToAll(GetPlayerColor(playerid), string);
 	}
    else
	{
        new string[128];
   	    format(string,sizeof(string),"(%i) %s: {FFFFFF}%s",playerid, ReturnName(playerid),text);
 	    SendClientMessageToAll(GetPlayerColor(playerid), string);
 	}
	return 0;
}



Re: Chat Toggle - ZachKnoxx - 30.07.2015

If that doesn't work then show us how you defined Chat.
Код HTML:
CMD:chatid(playerid, params[])
{
	new Togglechat[250];
	if(Chat[playerid])
	{
	    format(Togglechat, sizeof(Togglechat), "You had set your chatid", ReturnName(playerid));
	    SendClientMessageToAll(COLOUR_CYAN, Togglechat);
	    Chat[playerid] = 1;
	}
	else
	{
	    format(Togglechat, Togglechat(playerid), "You have unsetted your chatid", ReturnName(playerid));
	    SendClientMessageToAll(COLOUR_CYAN, Togglechat);
	    Chat[playerid] = 0;
	}
	return 1;
}
Also, you might want to change SendClientMessageToAll to SendClientMessage because it will display the message to everyone.


Re: Chat Toggle - DerickClark - 30.07.2015

Hm what if player cant see the message? if I set it to SendClientMessage
Like something like this


pawn Код:
if(Chat[playerid] == true)
    {
        new string[128];
        format(string,sizeof(string),"(%i) %s: {FFFFFF}%s",playerid, ReturnName(playerid),text);
        SendClientMessageToAll(GetPlayerColor(playerid), string);
        if(Chat[playerid] == false) // For the ones who didnt type /chatid
        {
            format(string,sizeof(string),"%s: {FFFFFF}%s",playerid, ReturnName(playerid),text);
            SendClientMessageToAll(GetPlayerColor(playerid), string);
            //SendClientMessage(playerid, -1, string);
        }
    }
    else
    {
        new string[128];
        format(string,sizeof(string),"%s: {FFFFFF}%s",ReturnName(playerid),text);
        SendClientMessageToAll(GetPlayerColor(playerid), string);
    }