Никита_Царьков
Новичок
Добрый день уважаемые форумщики Pawno-Info.ru
Сегодня я покажу как сделать простенькую медицинскую карту.
Автор: Я.
И так, приступим.
В enum pInfo
В public OnPlayerRegister
В public OnPlayerLogin(playerid,password[])
В public SavePlayer(playerid)
Теперь команды:
В public OnPlayerCommandText(playerid, cmdtext[])
Для тех кто хочет чтобы выдача мед.карты шла через пикап
Ко всем new
В public OnPlayerPickUpPickup(playerid, pickupid)
Ко всем пикапам
В public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
На этом всё, если что то не будет хватать или работать, пишите, решим.
Или пишите что можно добавить, добавим :bi:
Сегодня я покажу как сделать простенькую медицинскую карту.
Автор: Я.
И так, приступим.
В enum pInfo
PHP:
pMedcard,
PHP:
ini_setInteger(File,"MedCard",PlayerInfo[playerid][pMedcard]);
PHP:
ini_getInteger(File,"MedCard",PlayerInfo[playerid][pMedcard]);
PHP:
ini_setInteger(File,"MedCard",PlayerInfo[playerid][pMedcard]);
В public OnPlayerCommandText(playerid, cmdtext[])
PHP:
else if(strcmp(cmd, "/medcard", true) == 0)
{
if(PlayerInfo[playerid][pMember]!=22) return SendMe(playerid, CGRADD, "Вы не медицинский работник."); //Ставим свой ид фракции медиков, у меня это будет к примеру 22
if(PlayerInfo[playerid][pRank] < 3) return SendMe(playerid,CGRADD, "Данная команда доступна с 3 ранга"); //Можете поставить на свой ранг по желанию
giveplayerid = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendMe(playerid, 0xFFFFFFFF, "Подсказка: /medcard [ID]");
return true;
}
giveplayerid = ReturnUser(tmp);
if (!IsPlayerConnected(giveplayerid)) return SendMe(playerid, CGRADD, "Игрок с данным ID отсутствует на сервере.");
if(gPlayerLogged[giveplayerid] == false) return SendMe(playerid, CGRADD, "Данный игрок не вступил в игру.");
if(!ProxDetectorS(6.0, playerid, giveplayerid)) return SendMe(playerid, CGRADD, "Вы слишком далеко.");
if(PlayerInfo[playerid][pMedcard] == 1) return SendMe(playerid,CGRADD, "У данного игрока уже есть мед.карта");
SendMes(playerid, CBLUEE, "Вы выдали мед.карту ироку %s",GN(giveplayerid));
SendMes(playerid, 0xFE2E2EFF, "Врач %s выдал Вам мед.карту. Введите {FFFFFF}/med {FE2E2E}чтобы посмотреть её",GN(playerid));
PlayerInfo[giveplayerid][pMedcard] = 1;
return true;
}
else if(strcmp(cmd,"/med",true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendMe(playerid, 0xFFFFFFFF, "Подсказка: /med [ID]");
giveplayerid = ReturnUser(tmp);
if(!IsPlayerConnected(giveplayerid)) return SendMe(playerid, CGRADD, "Игрок с данным ID отсутствует на сервере.");
if(GetPlayerState(giveplayerid) == PLAYER_STATE_SPECTATING && gSpectateID[giveplayerid] != INVALID_PLAYER_ID) return SendMe(playerid, CGRADD, "Вы слишком далеко.");
if (!ProxDetectorS(8.0, playerid, giveplayerid)) return SendMe(playerid, CGRADD, "Вы слишком далеко.");
new medcards[50];
switch(PlayerInfo[playerid][pMedcard])
{
case 1: { medcards = "{07F72B}Пройден"; }
case 0: { medcards = "{FE2E2E}Не пройден"; }
}
format(string,256,"{FFFFFF}Медицинская карта игрока {0FC284}%s: {FFFFFF}[%s{FFFFFF}]",GN(playerid),medcards);
SPD(giveplayerid,2,DIALOG_STYLE_MSGBOX, "{30C3F0}Медицинская карта:",string,Ok,"");
SetPlayerChatBubble(playerid,"показал(а) свою мед.карту",CPURPLE,20.0,10000);
format(string, sizeof(string), "%s показал(a) свою мед.карту %s'у",GN(playerid) ,GN(giveplayerid));
ProxDetector(10.0, playerid, string, CPURPLE,CPURPLE,CPURPLE,CPURPLE,CPURPLE);
}
Ко всем new
PHP:
new pickupmed;
PHP:
else if(pickupid == pickupmed)
{
SPD(playerid, 10087, DIALOG_STYLE_MSGBOX, "{FFFFFF}Мед.Карта","{FFFFFF}Вы желаете получить медицинскую карточку?", "Да", "Нет");
return true;
}
PHP:
pickupmed = CreatePickupAC(2894,2,1177.5438,-1318.3257,14.0689); //Тут ставимм свои координаты
PHP:
case 10087:
{
if(!response) return true;
if(PlayerInfo[playerid][pMedcard] == 1) return SendMes(playerid, 0xFE2E2EFF, "У Вас уже есть медицинская карточка");
PlayerInfo[playerid][pMedcard] = 1;
SendMes(playerid, 0xFE2E2EFF, "Вы получили медицинскую карточку. Введите {FFFFFF}/med {FE2E2E}чтобы посмотреть её");
return true;
}
На этом всё, если что то не будет хватать или работать, пишите, решим.
Или пишите что можно добавить, добавим :bi:
Последнее редактирование:
