Chat Problems - 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 Problems (
/showthread.php?tid=589912)
Chat Problems -
Ryan50 - 23.09.2015
How to show it for the only who typed /togglechat with ids only shows for the who type /chatid
Код:
public OnPlayerText(playerid, text[])
{
new message[128];
if(Chat[playerid] == true)
{
if(Chat[playerid] == false) // For the ones who didnt type /chatid
{
format(message,sizeof(message),"%s: {FFFFFF}%s",playerid, ReturnName(playerid),text);
}
format(message,sizeof(message),"(%i) %s: {FFFFFF}%s",playerid, ReturnName(playerid),text);
SendClientMessageToAll(GetPlayerColor(playerid), message);
}
else
if(PlayerLogged[playerid] == 0)
{
format(message,sizeof(message),"You're not logged in to the server");
SendClientMessageToAll(-1, message);
}
else
{
format(message,sizeof(message),"%s: {FFFFFF}%s", ReturnName(playerid),text);
SendClientMessageToAll(GetPlayerColor(playerid), message);
}
return 0;
}
Код:
CMD:chatid(playerid, params[])
{
new Togglechat[128];
if(Chat[playerid] == false)
{
format(Togglechat, sizeof(Togglechat), "You have able to see chat ids.", ReturnName(playerid));
SendClientMessage(playerid, -1, Togglechat);
Chat[playerid] = true;
}
else
{
format(Togglechat, sizeof(Togglechat), "You disabled chat ids", ReturnName(playerid));
SendClientMessage(playerid, -1, Togglechat);
Chat[playerid] = false;
}
return 1;
}
Re: Chat Problems -
xVIP3Rx - 24.09.2015
As I understood, This should do
pawn Код:
new Chat[MAX_PLAYERS], bool:ChatForPlayer[MAX_PLAYERS][MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
Chat[playerid] = false;
for(new i; i<MAX_PLAYERS; i++) ChatForPlayer[playerid][i] = true;
}
CMD:chatid(playerid, params[])
{
new id;
if(sscanf(params, "r", id)) return SendClientMessage(playerid, -1, "Wrong syntax");
if(!IsPlayerConnected(id)) return SendClientMessage(playerid, -1, "Wrong player id");
ChatForPlayer[playerid][id] = !ChatForPlayer[playerid][id];
new string[128];
format(string, sizeof(string), "%s chat for %s", ChatForPlayer[playerid][id] ? ("Enabled"):("Disabled"), ReturnName(id));
return 1;
}
CMD:togglechat(playerid, params[])
{
Chat[playerid] = !Chat[playerid];
SendClientMessage(playerid, -1, Chat[playerid] ? ("Chat enabled."):("Chat disabled."));
return 1;
}
public OnPlayerText(playerid, text[])
{
if(PlayerLogged[playerid] == 0) return SendClientMessage(playerid, -1, "You're not logged in to the server"), 0;
if(!Chat[playerid]) return SendClientMessage(playerid, -1, "Chat disabled"), 0;
for(new i, message[128], j = GetPlayerPoolSize()+1; i<j; i++)
if(IsPlayerConnected(i) && ChatForPlayer[playerid][i])
format(message,sizeof(message),"%s: {FFFFFF}%s", ReturnName(playerid), text), SendClientMessage(i, -1, message);
return 0;
}
AW: Chat Problems -
Kaliber - 24.09.2015
You have to write it like this:
PHP код:
public OnPlayerText(playerid, text[])
{
new msg[128];
if(PlayerLogged[playerid] == 0)
{
format(msg,sizeof(msg),"You're not logged in to the server");
SendClientMessageToAll(-1, msg);
}
else
{
new tmp[128];
format(msg,sizeof(msg),"%s: {FFFFFF}%s", ReturnName(playerid),text);
format(tmp,sizeof(tmp),"(%i) %s: {FFFFFF}%s",playerid, ReturnName(playerid),text);
SendChatMessage(GetPlayerColor(playerid), msg, tmp);
}
return 0;
}
stock SendChatMessage(color,const txt[],const txt1[])
{
for(new i=GetPlayerPoolSize()+1; --i!=-1;)
{
if(!IsPlayerConnected(i) || IsPlayerNPC(i)) continue;
SendClientMessage(i,color,(Chat[i])?(txt1):(txt));
}
return 1;
}