Karters
Умник
Всем привет! В моём уроке Рейтинг лидерства Samp Virtual Life[YCMD] [RLS] все задавали вопрос, а как даёться рейтинг лидера!
Вот тут я продолжу этот урок!
В админ панели можно снять лидера с лидерки и отправить в отскавку (Отставка - это +1 к рейтингу лидера а снять это -1)
Так же можно посмотреть статистику персонажа и доп. информацию. Сколько денег в банке или сколько донат очей. Ну и ТП к Нему
ТП его к себе
Ищем public OnPlayerClickPlayer(playerid, clickedplayerid, source) вставляем туда
(Если вы в табе 2 раза тыкаете на игрока - и вы админ - то появиться меню)
Вставляем ко вcем CASE
Это сам диалог
В конце мода создаём паблик
Это дополнительная информация о игроке
И в начале создайте форвард
Вот и всё! Кому помог, можно +++ ???
Кому надо Рейтнг лидера (ТЫК)
Вот тут я продолжу этот урок!
В админ панели можно снять лидера с лидерки и отправить в отскавку (Отставка - это +1 к рейтингу лидера а снять это -1)
Так же можно посмотреть статистику персонажа и доп. информацию. Сколько денег в банке или сколько донат очей. Ну и ТП к Нему
ТП его к себе
Ищем public OnPlayerClickPlayer(playerid, clickedplayerid, source) вставляем туда
(Если вы в табе 2 раза тыкаете на игрока - и вы админ - то появиться меню)
PHP:
if(PlayerInfo[playerid][pAdmin] >= 6)
{
new string[228];
format(string,sizeof(string), " [0] Снять (-)\n [1] Отставить (+)\n [2] Телепортироваться к...\n [3] Телепортировать\n [4] Посадить (3 мин)\n [5] Уволить из фракции\n [6] Статистика\n [7] Данные об игроке");
ShowPlayerDialog(playerid,1541,DIALOG_STYLE_LIST, "Админ Панель",string, "Выбрать", "Отмена");
ChosenPlayer[playerid] = clickedplayerid;
}
Это сам диалог
PHP:
case 1541:
{
if(response)
{
new Float:PX,Float:PY,Float:PZ,Float:X,Float:Y,Float:Z,Float:Angle; GetPlayerPos(playerid,X,Y,Z); GetPlayerFacingAngle(playerid,Angle); GetPlayerPos(ChosenPlayer[playerid],PX,PY,PZ);
new ClickedPlayerName[MAX_PLAYER_NAME]; GetPlayerName(ChosenPlayer[playerid],ClickedPlayerName,24);
if(listitem == 0)
{
if(PlayerInfo[playerid][pAdmin] >= 6)
{
if(PlayerInfo[ChosenPlayer[playerid]][pLeader] <= 0) return SendClientMessage(playerid, COLOR_GREY, "Игрок не Лидер");
{
format(string, sizeof(string), "Вас выгнали с лидерки за неисполнение обязанностей");
SendClientMessage(ChosenPlayer[playerid], 0x6495EDFF, string);
format(string, sizeof(string), "Вы выгнали %s из организации", ClickedPlayerName);
SendClientMessage(playerid, 0x6495EDFF, string);
SendClientMessage(ChosenPlayer[playerid], 0xFF0000AA, "Рейтинг лидера уменьшен /myrp");
PlayerInfo[ChosenPlayer[playerid]][pMyRp] -= 1;
PlayerInfo[ChosenPlayer[playerid]][pMember] = 0;
PlayerInfo[ChosenPlayer[playerid]][pLeader] = 0;
PlayerInfo[ChosenPlayer[playerid]][pRank] = 0;
SetPlayerArmourAC(ChosenPlayer[playerid],0);
DelGun(ChosenPlayer[playerid]);
FormaFrac[ChosenPlayer[playerid]] = 0;
SetPlayerColor(ChosenPlayer[playerid], TEAM_HIT_COLOR);
SetPlayerSkin(ChosenPlayer[playerid], PlayerInfo[ChosenPlayer[playerid]][pChar][PlayerInfo[ChosenPlayer[playerid]][pViborChar]]);
return true;
}
}
}
if(listitem == 1)
{
if(PlayerInfo[playerid][pAdmin] >= 6)
{
if(PlayerInfo[ChosenPlayer[playerid]][pLeader] <= 0) return SendClientMessage(playerid, COLOR_GREY, "Игрок не Лидер");
{
format(string, sizeof(string), "Вы отправлены в отставку (лидерка закончилась)");
SendClientMessage(ChosenPlayer[playerid], 0x6495EDFF, string);
format(string, sizeof(string), "Вы отправили в отставку %s", ClickedPlayerName);
SendClientMessage(playerid, 0x6495EDFF, string);
SendClientMessage(ChosenPlayer[playerid], 0xFF0000AA, "Рейтинг лидера увеличен /myrp");
PlayerInfo[ChosenPlayer[playerid]][pMember] = 0;
PlayerInfo[ChosenPlayer[playerid]][pLeader] = 0;
PlayerInfo[ChosenPlayer[playerid]][pRank] = 0;
PlayerInfo[ChosenPlayer[playerid]][pMyRp] += 1;
SetPlayerArmourAC(ChosenPlayer[playerid],0);
DelGun(ChosenPlayer[playerid]);
FormaFrac[ChosenPlayer[playerid]] = 0;
SetPlayerColor(ChosenPlayer[playerid], TEAM_HIT_COLOR);
SetPlayerSkin(ChosenPlayer[playerid], PlayerInfo[ChosenPlayer[playerid]][pChar][PlayerInfo[ChosenPlayer[playerid]][pViborChar]]);
return true;
}
}
}
new Float:plocx,Float:plocy,Float:plocz;
new Float:xx,Float:yy,Float:zz;
GetPlayerPos(playerid, plocx, plocy, plocz);
GetPlayerPos(ChosenPlayer[playerid], xx, yy, zz);
if(listitem == 2)
{
if(PlayerInfo[playerid][pAdmin] >=2)
{
SetPlayerPos(playerid,xx,yy+2, zz);
SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(ChosenPlayer[playerid]));
SetPlayerInterior(playerid, GetPlayerInterior(ChosenPlayer[playerid]));
SendClientMessage(playerid, COLOR_WHITE, "Вы телепортировались к игроку");
}
}
if(listitem == 3)
{
if(PlayerInfo[playerid][pAdmin] >= 3)
{
SetPlayerPos(ChosenPlayer[playerid],plocx,plocy+2, plocz);
SendClientMessage(ChosenPlayer[playerid], COLOR_WHITE, "Вас телепортировал к себе администратор");
return true;
}
}
if(listitem == 4)
{
if(PlayerInfo[playerid][pAdmin] >= 2)
{
format(string, sizeof(string), "Вы посадили %s в тюрьму на 3 минутуы", ClickedPlayerName);
SendClientMessage(playerid, COLOR_LIGHTRED, string);
SendClientMessage(ChosenPlayer[playerid], COLOR_WHITE, "Вас посадили на 3 минуты за нарушение");
DelGun(ChosenPlayer[playerid]);
WantedPoints[ChosenPlayer[playerid]] = 0;
SetPlayerInterior(ChosenPlayer[playerid], 6);
SetPlayerPos(ChosenPlayer[playerid],264.1425,77.4712,1001.0391);
SetPlayerFacingAngle(ChosenPlayer[playerid], 263.0160);
PlayerInfo[ChosenPlayer[playerid]][pJailed] = 1;
PlayerInfo[ChosenPlayer[playerid]][pJailTime] = 180;
return true;
}
}
if(listitem == 5)
{
if(PlayerInfo[playerid][pAdmin] >= 3)
{
if (PlayerInfo[ChosenPlayer[playerid]][pMember] > 0)
{
format(string, sizeof(string), "%s выгнал вас из организации", pName);
SendClientMessage(ChosenPlayer[playerid], 0x6495EDFF, string);
format(string, sizeof(string), "Вы выгнали %s из организации", ClickedPlayerName);
SendClientMessage(playerid, 0x6495EDFF, string);
SendClientMessage(ChosenPlayer[playerid], 0x6495EDFF, "Теперь вы снова гражданский");
PlayerInfo[ChosenPlayer[playerid]][pMember] = 0;
PlayerInfo[ChosenPlayer[playerid]][pLeader] = 0;
PlayerInfo[ChosenPlayer[playerid]][pRank] = 0;
SetPlayerArmourAC(ChosenPlayer[playerid],0);
DelGun(ChosenPlayer[playerid]);
FormaFrac[ChosenPlayer[playerid]] = 0;
SetPlayerColor(ChosenPlayer[playerid], TEAM_HIT_COLOR);
SetPlayerSkin(ChosenPlayer[playerid], PlayerInfo[ChosenPlayer[playerid]][pChar][PlayerInfo[ChosenPlayer[playerid]][pViborChar]]);
return true;
}
}
}
if(listitem == 6)
{
ShowStats(playerid,ChosenPlayer[playerid]);
}
if(listitem == 7)
{
ShowStat(playerid,ChosenPlayer[playerid]);
}
}
else
{
return true;
}
}
Это дополнительная информация о игроке
PHP:
public ShowStat(playerid,targetid)
{
if(IsPlayerConnected(playerid)&&IsPlayerConnected(targetid))
{
new atext[32];
if(PlayerInfo[targetid][pSex] == 1) { atext = "Мужчина"; }
else if(PlayerInfo[targetid][pSex] == 2) { atext = "Женщина"; }
new drank[20];
if(PlayerInfo[targetid][pDonateRank] == 1) { drank = "BRONZE VIP"; }
else if(PlayerInfo[targetid][pDonateRank] == 2) { drank = "SILVER VIP"; }
else if(PlayerInfo[targetid][pDonateRank] == 3) { drank = "GOLD VIP"; }
else if(PlayerInfo[targetid][pLevel] == 1) { drank = "Новичёк"; }
else if(PlayerInfo[targetid][pLevel] == 2) { drank = "Начинающий"; }
else if(PlayerInfo[targetid][pLevel] == 3) { drank = "Начинающий"; }
else if(PlayerInfo[targetid][pLevel] == 4) { drank = "Уверенный"; }
else if(PlayerInfo[targetid][pLevel] == 5) { drank = "Уверенный"; }
else if(PlayerInfo[targetid][pLevel] == 6) { drank = "Постоянный игрок"; }
else if(PlayerInfo[targetid][pLevel] == 7) { drank = "Освоившийся"; }
else if(PlayerInfo[targetid][pLevel] >= 8) { drank = "Освоившийся"; }
else if(PlayerInfo[targetid][pLevel] >= 22) { drank = "Дед"; }
new name[MAX_PLAYER_NAME];
new cash = PlayerInfo[targetid][pCash];
new bank = PlayerInfo[targetid][pBank];
new level = PlayerInfo[targetid][pLevel];
new pnumber = PlayerInfo[targetid][pPnumber];
new warns = PlayerInfo[targetid][pWarns];
new zakon = PlayerInfo[targetid][pZakonp];
new donat = PlayerInfo[targetid][pDonatemoney];
GetPlayerName(targetid, name, sizeof(name));
new playerip[256];
GetPlayerIp(targetid, playerip, sizeof(playerip));
new coordsstring[1200];
new msg[] = "Ник:\t\t\t\t%s\n\nLevel:\t\t\t\t%d\nДеньги на руках:\t\t%d\nТелефон:\t\t\t%d\nВарнов:\t\t\t%d\nЗаконопослушность:\t\t%d\nДон.ранг:\t\t\t%s\nПол:\t\t\t\t%s\nДеньги в банке:\t\t\t%d\nДонат:\t\t\t\t%d";
format(coordsstring, 1000, msg, name, level, cash, pnumber, warns, zakon, drank, atext, bank, donat);
ShowPlayerDialog(playerid,16744,DIALOG_STYLE_MSGBOX, "Статистика игрока",coordsstring, "Готово", "");
}
}
PHP:
forward ShowStat(playerid,targetid);forvard ShowStat
Вот и всё! Кому помог, можно +++ ???
Кому надо Рейтнг лидера (ТЫК)
Последнее редактирование:
