sasa50
Умник
Вот вообщем команда для выдачи мед карты , для GF серверов , ну что сказать это повысит РП , я так думаю . Выдать ее могу только медики. Начнем
Добавляем сначала ко всем define - цвет
Теперь в pInfo добавьте
В public OnPlayerConnect добавьте
Затем сделаем сохранение
В public OnPlayerRegister добавьте
В public OnPlayerRename (если у вас есть!) добавьте
В public OnPlayerUpdate или же public SavePlayer добавьте
И в public OnPlayerLogin добавьте
Теперь добавим команды в public OnPlayerCommandText
Автор: Неизвестный.
Урок закончен всем спасибо...
Добавляем сначала ко всем define - цвет
PHP:
#define COLOR_ISPOLZUY 0x7FB151FF
PHP:
pMedCard,
PHP:
PlayerInfo[playerid][pMedCard] = 0;
В public OnPlayerRegister добавьте
PHP:
format(var, 32, "MedCard=%d\n",PlayerInfo[playerid][pMedCard]);fwrite(hFile, var);
PHP:
format(var, 32, "MedCard=%d\n",PlayerInfo[playerid][pMedCard]);fwrite(hFile, var);
PHP:
format(var, 32, "MedCard=%d\n",PlayerInfo[playerid][pMedCard]);fwrite(hFile, var);
PHP:
if( strcmp( key , "MedCard" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pMedCard] = strval( val ); }
PHP:
if(strcmp(cmd, "/givemedcard", true) == 0)
{
if(PlayerInfo[playerid][pLeader] != 4 || PlayerInfo[playerid][pMember] != 4 && PlayerInfo[playerid][pRank] < 17) return SendClientMessage(playerid, COLOR_RED, "** Вы не медик или же вы младше 17 ранга !");
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_ISPOLZUY, "* Используйте: /givemedcard [ид игрока]");
new plo;
plo = ReturnUser(tmp);
if(!IsPlayerConnected(plo)) return SendClientMessage(playerid, COLOR_RED, "Этот игрок оффлайн!");
if(plo != INVALID_PLAYER_ID)
{
PlayerInfo[giveplayerid][pMedCard] = 1; // by BАSE-GАMES.ru
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), "* Вы выдали %s Мед.Карту",giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* %s выдал вам Мед.Карту",sendername);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* Доктор %s выдал Мед.Карту %s", sendername,giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
format(string, sizeof(string), "* Доктор %s выдал Медицинскую Карту %s",sendername,giveplayer);
SendRadioMessage(4,COLOR_LIGHTRED ,string);
}
return 1;
}
PHP:
if(strcmp(cmd,"/showmedcard",true)==0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_ISPOLZUY,"* Используйте /showmedcard [ид]");
new target = strval(tmp);
new text1[120];
if(!IsPlayerConnected(target)) return SendClientMessage(playerid, COLOR_RED, "* Этот игрок оффлайн");
if(GetDistanceBetweenPlayers(playerid,target) > 2) return SendClientMessage(playerid, COLOR_RED, "* Нет ни кого рядом");
if(PlayerInfo[playerid][pMedCard]) { text1 = "Пройден"; } else { text1 = "Не пройден"; }
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(target, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), "{FFFFFF}Медицинский Осмотр {D8F600}%s {FFFFFF}: {D8F600}%s",sendername, text1);
ShowPlayerDialog(target,7587,DIALOG_STYLE_MSGBOX,"Медицинская карта",string,"Ок","");
format(string, sizeof(string), "* %s показывает свою медицинскую карту %s", sendername,giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
return 1;
}
Урок закончен всем спасибо...
