shavanov
Ученик
Вот код узнавания чужого или своего РП рейтинга
Я создал
Вот код для голосования за другого игрока
Код /setrpr не правильный там нету функции причина помогите исправить
И еще сделать так чтобы 1 раз в сутки игроку давались очки для голосования по формуле
PHP:
if(strcmp(cmd, "/getrpr", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext,idx);
if(!strlen(tmp))
{
format(string, sizeof(string), "{00FFFF}Ваш текущий РП рейтинг: %d. Оставшиеся количевство очков для голосования: %d",PlayerInfo[playerid][pRp],PlayerInfo[playerid][pRpochki]);
SendClientMessage(playerid,COLOR_WHITE,string);
SendClientMessage(playerid,COLOR_WHITE,"Введите: /getrpr [playerid] Чтобы узнать РП рейтинг другого игрока");
return 1;
}
giveplayerid = ReturnUser(tmp);
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), "{00FFFF}Текуйший РП рейтинг %s: %d",giveplayer,PlayerInfo[giveplayerid][pRp]);
SendClientMessage(playerid,COLOR_BLUE,string);
}
return 1;
}
PHP:
pRp это сам рейтинг
pRpochki это очки
PHP:
if(strcmp(cmd, "/setrpr", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(!strlen(tmp))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "Введите: /setrpr [playerid] [Очки -5 - +5] [Причина]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "Введите: /setrpr [playerid] [Очки -5 - +5] [Причина]");
return 1;
}
if(giveplayerid == playerid)
{
SendClientMessage(playerid, COLOR_GRAD1, "Нельзя изменить рейтинг самому себе!");
return 1;
}
new amount;
amount = strval(tmp);
if(PlayerInfo[giveplayerid][pLevel] < amount)
{
SendClientMessage(playerid, COLOR_WHITE, "У игрока ниже РП рейтинг чем вы указали");
return 1;
}
if(PlayerInfo[giveplayerid][pRp] > PlayerInfo[playerid][pRp])
{
SendClientMessage(playerid, COLOR_WHITE, "У данного игрока РП рейтинг выше вашего");
return 1;
}
if(PlayerInfo[playerid][pRp] < -1)
{
SendClientMessage(playerid, COLOR_GRAD1, "вы не можете голосовать, ваш рп рейтинг слишком мал");
return 1;
}
if(golosov[playerid] >= 5)
{
SendClientMessage(playerid, COLOR_GRAD1, "Вы уже голосовали больше 5 раз");
return 1;
}
PlayerInfo[giveplayerid][pRp] += amount;
format(string, sizeof(string), "Голос: %d", amount);
SendClientMessage(playerid, COLOR_GRAD1, string);
GetPlayerName(playerid, sendername, sizeof(sendername));
golosov[playerid] +=1;
format(string, sizeof(string), "%s Проголосовал за ваш Рп рейтинг. Голос: %d",sendername,amount);
SendClientMessage(giveplayerid, COLOR_YELLOW2, string);
}
}
}
}
return 1;
}
И еще сделать так чтобы 1 раз в сутки игроку давались очки для голосования по формуле
PHP:
РП Рейтинг * Лвл игрока/ 100
Последнее редактирование:
