Hosse
Изучающий
- Регистрация
- 17 Ноя 2011
- Сообщения
- 613
- Лучшие ответы
- 0
- Репутация
- 224
Доброго времени суток,заметил такую проблему.Когда я себе админой делаю респекты,например 200шт,то припередачи их у того игрока показывает в /stats тоже 200,на первый взгляд всё хорошо,но когда он покупает лувел ( /buylevel ) то у него лвл покупается,но респекты все 200 обращяются в "0".
Моя команда для передачи респектов
Моя команда для передачи респектов
PHP:
if(strcmp(cmd, "/giveexp", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_YELLOW, "Используйте: /giveexp [ид] [кол-во]");
return 1;
}
giveplayerid = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_YELLOW, "Используйте: /giveexp [ид] [кол-во]");
return 1;
}
moneys = strval(tmp);
if(moneys > 5 && PlayerInfo[playerid][pLevel] < 2)
{
SendClientMessage(playerid, COLOR_RED, "{FF0000}x{ffffff} Вам нужен 2 уровень чтобы передавать более 5 респектов!");
return 1;
}
if(moneys < 1 || moneys > 1000)
{
SendClientMessage(playerid, COLOR_RED, "{FF0000}x{ffffff} Нельзя передать более 1000 респектов.");
return 1;
}
if (IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(PlayerInfo[giveplayerid][pLocal] == 106)
{
SendClientMessage(playerid, COLOR_RED, "{FF0000}x{ffffff} Команда запрещена в данной локации");
return 1;
}
if (ProxDetectorS(5.0, playerid, giveplayerid))
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
playermoney = PlayerInfo[playerid][pExp];
if (moneys > 0 && playermoney >= moneys)
{
PlayerInfo[giveplayerid][pExp] += moneys;
PlayerInfo[playerid][pExp] -= moneys;
format(string, sizeof(string), "{ffffff}Вы передали %s[%d] %d Респектов.", giveplayer,giveplayerid, moneys);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
SendClientMessage(playerid, COLOR_YELLOW, string);
format(string, sizeof(string), "{ffffff}Вы получили %d респектов от %s[%d].", moneys, sendername, playerid);
SendClientMessage(giveplayerid, COLOR_YELLOW, string);
format(string, sizeof(string), "{ffffff}%s дал %d респектов %s", sendername, moneys, giveplayer);
// PayLog(string);
if(moneys >= 1000000)
{
ABroadCast(COLOR_YELLOW,string,1);
}
PlayerPlaySound(giveplayerid, 1052, 0.0, 0.0, 0.0);
format(string, sizeof(string), "%s передал респекты %s", sendername ,giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
else
{
SendClientMessage(playerid, COLOR_RED, "{FF0000}x{ffffff} Неверное кол-во.");
}
}
else
{
SendClientMessage(playerid, COLOR_RED, "{FF0000}x{ffffff} Вы слишком далеко.");
}
}//invalid id
}
else
{
format(string, sizeof(string), "{FF0000}x{ffffff} %d оффлайн.", giveplayerid);
SendClientMessage(playerid, COLOR_RED, string);
}
}
return 1;
}