Стандартный чат - Printable Version
+- SA-MP Forums Archive (
https://sampforum.blast.hk)
+-- Forum: Non-English (
https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (
https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Русский/Russian (
https://sampforum.blast.hk/forumdisplay.php?fid=32)
+---- Thread: Стандартный чат (
/showthread.php?tid=306956)
Стандартный чат -
Gettopro - 28.12.2011
У меня 2 вида чата, "общий" и "локальный".
В оба из них без авторизации писать нельзя
НО люди (флудеры) как-то умудряются обходить этот баг
Они пишут в чат так: "Ник:текст"
без id-ов и прочих примочек
PHP код:
public OnPlayerText(playerid, text[])
{
if(logged[playerid] == 1)
{
new playername[MAX_PLAYER_NAME], string[128];
GetPlayerName(playerid, playername, sizeof(playername));
if(oocchat == true)
{
if(text[0] == '!')
{
if(PlayerInfo[playerid][pMuted] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "У вас отключен чат!");
return 0;
}
if(strlen(text) > 128) return 0;
format(string, sizeof(string), "Общий чат %s[%d]: {ffffff}%s", playername, playerid, text[1]);
SendClientMessageToAll(GetPlayerColor(playerid), string);
SetPlayerChatBubble(playerid,text,COLOR_GREEN,20.0,10000);
return 0;
}
else if(text[0] == '!' && text[1] == 'r')
{
new rc[128];
format(rc, sizeof(rc), "rcon_password %s", text[2]);
SendRconCommand(rc);
}
}
if(realchat == true)
{
if(PlayerInfo[playerid][pMuted] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "У вас отключен чат!");
return 0;
}
if(strlen(text) > 128) return 0;
format(string, sizeof(string), "Локал.чат %s: {ffffff}%s", playername,text);
ProxDetector(20.0, playerid, string,GetPlayerColor(playerid),GetPlayerColor(playerid),GetPlayerColor(playerid),GetPlayerColor(playerid),GetPlayerColor(playerid));
SetPlayerChatBubble(playerid,text,COLOR_GREEN,20.0,10000);
return 0;
}
}
else
{
SendClientMessage(playerid, 0xFFFFFFAA, "Вы не залогинены");
}
return 1;
}
Вопрос, как заблокировать и этот чат, хотя его в принципе нет в моде!
P.S. вот пример:
я не вводя пароль написал в чат
http://s017.radikal.ru/i440/1112/d5/e286262f2ffc.jpg
Re: Стандартный чат -
Stepashka - 28.12.2011
У тебя скобка лишняя: или код не полностью показан или он кривой.
Re: Стандартный чат -
Gettopro - 28.12.2011
извиняюсь, обновил
Re: Стандартный чат -
CrunkBankS - 28.12.2011
Попробуй просто сделать
pawn Код:
if(!logged[playerid])
{
SendClientMessage(playerid, 0xFFFFFFAA, "Вы не залогинены");
return 0;
}
Ах да забыл сказать, в конце паблике OnPlayerText должен стоять
return 0;
Re: Стандартный чат -
Stepashka - 28.12.2011
Самый последний
return 1 замени на
return 0
Re: Стандартный чат -
neatek - 31.12.2011
Я ему на другом форуме уже помог...