Dark_Fox
Дебютант
Проблема заключается вот в чём:
Вырезал из мода CreativRPG /ooc, на нём работает общий чат, к примеру: "Написал сообщение, теперь можно написать следующее сообщение через 30 сек". А на моём сервере примерно так: "Написал сообщение в /ooc, и всё, больше писать нельзя, даже ели перезайти на сервер или рестартануть его". Надеюсь поможете, "+" не зажму...
Вырезал из мода CreativRPG /ooc, на нём работает общий чат, к примеру: "Написал сообщение, теперь можно написать следующее сообщение через 30 сек". А на моём сервере примерно так: "Написал сообщение в /ooc, и всё, больше писать нельзя, даже ели перезайти на сервер или рестартануть его". Надеюсь поможете, "+" не зажму...
PHP:
if(strcmp(cmd, "/ooc", true) == 0 || strcmp(cmd, "/o", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 0)
{
SendClientMessage(playerid, COLOR_RED, "** Âû åù¸ íå âîøëè â èãðó !");
return 1;
}
if(PlayerInfo[playerid][pMuted] == 1)
{
SendClientMessage(playerid, TEAM_CYAN_COLOR, " * Âû íå ìîæåòå ðàçãîâàðèâàòü, ó âàñ ìîë÷àíêà.!");
return 1;
}
new is1=0;
new r=0;
new strR[255];
while(strlen(cmdtext[is1]))
{
if('0'<=cmdtext[is1]<='9')
{
new is2=is1+1;
new p=0;
while(p==0)
{
if('0'<=cmdtext[is2]<='9'&&strlen(cmdtext[is2])) is2++;
else
{
strmid(strR[r],cmdtext,is1,is2,255);
if(strval(strR[r])<255) r++;
is1=is2;
p=1;
}
}
}
is1++;
}
if(r>=4)
{
new strMy[255];
new STRname[255];
GetPlayerName(playerid,STRname,255);
format(strMy, sizeof(strMy), "Ïîäîçðåíèå íà ðåêëàìó â OOC ÷àò %s(%d): %s",STRname,playerid,cmdtext);
ABroadCast(COLOR_YELLOW, strMy, 1);
for(new z=0;z<r;z++)
{
new pr2;
while((pr2=strfind(cmdtext,strR[z],true))!=-1) for(new i=pr2,j=pr2+strlen(strR[z]);i<j;i++) cmdtext[i]='*';
}
return 1;
}
if(OOCChat[playerid] > 0)
{
format(string,sizeof(string),"Àíòè-Ôëóä: Òû ñìîæåøü èñïîëüçîâàòü ýòó êîìàíäó ÷åðåç %d ñåêóíä",OOCChat[playerid]);
SendClientMessage(playerid, COLOR_WHITE,string);
return 1;
}
if ((noooc) && PlayerInfo[playerid][pAdmin] < 1)
{
SendClientMessage(playerid, COLOR_GRAD2, "*CreatiVe RPG : Îáùèé ÷àò îòêëþ÷¸í Àäìèíèñòðàòîðîì !");
return 1;
}
if(PlayerInfo[playerid][pLevel] < 1)
{
SendClientMessage(playerid, COLOR_RED, "** ×òî - áû ïèñàòü â îáùèé ÷àò íåîáõîäèì 1 LvL !");
return 1;
}
if(PlayerInfo[playerid][pMuted] == 1)
{
}
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GREY, "*Èñïîëüçóéòå: /o [òåêñò]");
return 1;
}
if(Rekl[playerid] == 1 && strfind(cmdtext,"www",true)!=-1 || Rekl[playerid] == 1 && strfind(cmdtext,".ru",true)!=-1
|| Rekl[playerid] == 1 && strfind(cmdtext,".net",true)!=-1 || Rekl[playerid] == 1 && strfind(cmdtext,".com",true)!=-1
|| Rekl[playerid] == 1 && strfind(cmdtext,"http",true)!=-1 || Rekl[playerid] == 1 && strfind(cmdtext,"org",true)!=-1)
{
format(string,256,"Ïîäîçðåíèå íà ðåêëàìó â OOC ÷àò %s(%d): %s", sendername, playerid, cmdtext);
ABroadCast(COLOR_YELLOW,string,1);
return 1;
}
format(string, sizeof(string), "((Îáùèé ÷àò: %s[%d]: %s ))", sendername,playerid, result);
OOCOff(COLOR_OOC,string);
format(string, sizeof(string), "Îáùèé ÷àò: %s: %s",sendername,result);// ëîã-÷àòà
OOCChat[playerid] = 31;
}
return 1;
}
