qweere9901
Умник
Почему при вводе команды /pm и ID которого нет на сервере, пишет SERVER: Unknown command, хотя я добавил в команду "Игрока нет на сервере".
PHP:
if(strcmp(cmd, "/pm", true) == 0 || strcmp(cmd, "/зь", true) == 0 || strcmp(cmd, "/sms", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PMChat[playerid] > 0 && !IsPlayerAdmin(playerid) && !PlayerInfo[playerid][pAdmin])
{
format(string, sizeof(string),"{FFFFFF}Анти-Флуд: Ты сможешь отправлять сообщения через {E3BE88}%d{FFFFFF} секунд",PMChat[playerid]);
SendClientMessage(playerid, COLOR_GRAD1, string);
return 1;
}
if(PlayerInfo[playerid][pLevel] < 1)
{
format(string, sizeof(string),"{F70000}x {ADAEAD}Ты ещё не отыграл(а) 4 часа на сервере. Сейчас только %d.",PlayerInfo[playerid][pExp]);
SendClientMessage(playerid, -1, string);
return 1;
}
new is1=0;
new r=0;
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), "{EBF619}Подозрение на рекламу %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(gPlayerLogged[playerid] == 0) return 1;
if(GetPlayerMoney(playerid) < 25) return SendClientMessage(playerid, -1, "{F70000}x {ADAEAD}У вас не достаточно денег!");
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD2, "Используй: /pm [playerid] [текст]");
new tmpp=ReturnUser(tmp);
if(HidePM[tmpp]>=1 && !IsPlayerAdmin(playerid) && !PlayerInfo[playerid][pAdmin]) return SendClientMessage(playerid, -1, "{F70000}x {ADAEAD}Игрок заблокировал личные сообщения");
if(gPlayerLogged[giveplayerid] == 0)
{
SendClientMessage(playerid, -1, "{F70000}x {ADAEAD}Игрок еще не авторизовался.");
return 1;
}
if(tmpp == playerid) return SendClientMessage(playerid, COLOR_WHITE, "Глупо наверно отправлять сообщения самому себе :D");
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
{
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[256];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result)) return SendClientMessage(playerid, COLOR_GRAD2, "Используй: /pm [playerid] [текст]");
format(string, sizeof(string), "Сообщение от %s[%d]: %s", sendername, playerid, (result));
SendClientMessage(giveplayerid, COLOR_YELLOW, string);
foreach(new i:Player)
{
if(PlayerInfo[i][pAdmin] >= 4 && ShowPM[i] == 1)
{
if(PlayerInfo[i][pLevel] <=0) continue;
format(string, sizeof(string), "Сообщение от %s[%d] к %s[%d]: %s", sendername, playerid, giveplayer, giveplayerid, (result));
SendClientMessage(i, COLOR_GREY, string);
}
}
PMChat[playerid] = 10;
SBizzInfo[2][sbTill] += 25;
PMChat[playerid] = 7;
if(AFKTIME[giveplayerid] > 60)
{
format(string, sizeof(string), "Сообщение к %s[%d]: %s", giveplayer, giveplayerid, (result));
SendClientMessage(playerid, COLOR_YELLOWPM, string);
format(string, sizeof(string), "Игрок находится в AFK %d минут(ы)",AFKTIME[giveplayerid]/60);
SendClientMessage(playerid, COLOR_YELLOWPM, string);
}
else
{
format(string, sizeof(string), "Сообщение к %s[%d]: %s", giveplayer, giveplayerid, (result));
SendClientMessage(playerid, COLOR_YELLOWPM, string);
}
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
PlayerPlaySound(giveplayerid, 1085, 0.0, 0.0, 0.0);
format(string, sizeof(string), "~r~$-%d", 25);
GameTextForPlayer(playerid, string, 200, 1);
GiveMoney(playerid,-25);
return 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD,"Игрока нет на сервере");
return true;
}
}
return 1;
}
