Больница немного похожая на Advance Role Play. - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: Phoenixxx_Czar, Getbackthere, [CM]OlegEhtler  
Больница немного похожая на Advance Role Play.
CharleeQ Дата: Среда, 23.10.2013, 18:15 | Сообщение # 1
Боец
Сообщений: 124
Статус: Offline
Всем привет решил выложить больницу.
Интерьер делайте сами.
1. это ко всем new.

Код
new HospitalBed[4];  

Далее в форварды вставляем это.

Код
pKouka1,
pKouka2,
pKouka3,
pKouka4,
pBolnica  

[/spoiler]в public OnPlayerDeath(playerid, killerid, reason) добавляете
Код
new para1;
PlayerInfo[para1][pBolnica] = 1;  

в public OnPlayerSpawn(playerid) добавляете вот это!

Код
  if(PlayerInfo[playerid][pBolnica] == 1)
     {
         SetPlayerHealthAC(playerid, 30.0);
         SetPlayerFacingAngle(playerid, 90);
         SetPlayerInterior(playerid, 0);
         SetPlayerVirtualWorld(playerid, 0);
         SetPlayerPos(playerid,1027.9110107422,72.166999816895,3356.2351074219);
         new Bolnica1[] = "{29ff00}Ваш текст при попадание в больницу и цвет счас стоит зеленый";
         ShowPlayerDialog(playerid,32121,DIALOG_STYLE_MSGBOX,"Справка",Bolnica1,"Хорошо","");
         return 1;
     }  

Далее делаем паблик выдачи ХП

Код
public HP(playerid)
{
     new string[312];
     if(PlayerInfo[playerid][pKouka1] == 1 || PlayerInfo[playerid][pKouka2] == 1 || PlayerInfo[playerid][pKouka3] == 1 || PlayerInfo[playerid][pKouka4] == 1)
     {
         new Float:health;
         GetPlayerHealth(playerid, health);
         if (health < 95)
         {
             SetPlayerHealthAC(playerid, health + 5.0);
             format(string, sizeof(string), "+5hp");
             GameTextForPlayer(playerid, string, 1000, 3);
         }
         else
         {
             if(PlayerInfo[playerid][pKouka1] == 1 || PlayerInfo[playerid][pKouka2] == 1 || PlayerInfo[playerid][pKouka3] == 1 || PlayerInfo[playerid][pKouka4] == 1)
             {
                 SendClientMessage(playerid, COLOR_GREY, "Вы здоровы!");
                 PlayerInfo[playerid][pKouka1] = 0;
                 PlayerInfo[playerid][pKouka2] = 0;
                 PlayerInfo[playerid][pKouka3] = 0;
                 PlayerInfo[playerid][pKouka4] = 0;
                 PlayerInfo[playerid][pBolnica] = 0;
                 for(new d; d < 4; d++)
                 {
                     if(HospitalBed[d] != playerid) continue;
                     else
                     {
                         HospitalBed[d] = INVALID_PLAYER_ID;
                         break;
                     }
                 }
             }
         }
     }
     return 1;
}  

теперь добавьте в public OnPlayerRegister(playerid, password[]) и в public OnPlayerUpdateRL(playerid)

Код
ini_setInteger(File,"Больница",PlayerInfo[playerid][pBolnica]);
ini_setInteger(File,"Kouka1",PlayerInfo[playerid][pKouka1]);
ini_setInteger(File,"Kouka2",PlayerInfo[playerid][pKouka2]);
ini_setInteger(File,"Kouka3",PlayerInfo[playerid][pKouka3]);
ini_setInteger(File,"Kouka4",PlayerInfo[playerid][pKouka4]);  

в public OnPlayerLogin(playerid,password[])

В public OnPlayerDisconnect(playerid, reason)

Код
for(new d; d < 4; d++)
     {
         if(HospitalBed[d] != playerid) continue;
         else
         {
             HospitalBed[d] = INVALID_PLAYER_ID;
             break;
         }
     }
     PlayerInfo[playerid][pKouka1] = 0;
     PlayerInfo[playerid][pKouka2] = 0;
     PlayerInfo[playerid][pKouka3] = 0;
     PlayerInfo[playerid][pKouka4] = 0;  

Добавляю команду /hospital кто не знает это в паблик OnPlayerCommandText

Код
    {
         new Float:health;
         GetPlayerHealth(playerid, health);
         if(health > 95) return 1;
         if(PlayerInfo[playerid][pKouka1] == 1 || PlayerInfo[playerid][pKouka2] == 1
         || PlayerInfo[playerid][pKouka3] == 1 || PlayerInfo[playerid][pKouka4] == 1)
         return SendClientMessage(playerid, COLOR_GREY, "Вы уже лежите в больниц!");
         if(PlayerToPoint(3.0,playerid,1025.7496,80.0536,3356.8826))//1
         {
             if(HospitalBed[0] != INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_GREY, "Койка под номером 1 уже занята!");
             SendClientMessage(playerid, COLOR_GREY, "Вы заняли койку под номером 1!");
             PlayerInfo[playerid][pKouka1] = 1;
             HospitalBed[0] = playerid;
         }
         else if(PlayerToPoint(3.0,playerid,1025.7427,83.6644,3356.8826))//2
         {
             if(HospitalBed[1] != INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_GREY, "Койка под номером 2 уже занята!");
             SendClientMessage(playerid, COLOR_GREY, "Вы заняли койку под номером 2!");
             PlayerInfo[playerid][pKouka2] = 1;
             HospitalBed[1] = playerid;
         }
         else if(PlayerToPoint(3.0,playerid,1034.0323,80.2212,3356.8826))//3
         {
             if(HospitalBed[2] != INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_GREY, "Койка под номером 3 уже занята!");
             SendClientMessage(playerid, COLOR_GREY, "Вы заняли койку под номером 3!");
             PlayerInfo[playerid][pKouka3] = 1;
             HospitalBed[2] = playerid;
         }
         else if(PlayerToPoint(3.0,playerid,1034.0118,83.7613,3356.8826))//4
         {
             if(HospitalBed[3] != INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_GREY, "Койка под номером 4 уже занята!");
             SendClientMessage(playerid, COLOR_GREY, "Вы заняли койку под номером 4!");
             PlayerInfo[playerid][pKouka4] = 1;
             HospitalBed[3] = playerid;
         }
         return 1;
     }  

Теперь в OnGameModeInIt

Код
HospitalBed[0] = INVALID_PLAYER_ID;  
HospitalBed[1] = INVALID_PLAYER_ID;  
HospitalBed[2] = INVALID_PLAYER_ID;  
HospitalBed[3] = INVALID_PLAYER_ID;
SetTimer("HP", 10000, true);  
[size=6]
L0ney Дата: Среда, 23.10.2013, 19:42 | Сообщение # 2
Боец
Сообщений: 181
Статус: Offline
Отлично новичкам то самое



Ни чего не продаю/покупаю.

С деньгами можешь купить положение, но не уважение
WantedRobot Дата: Среда, 23.10.2013, 23:07 | Сообщение # 3
Боец
Сообщений: 88
Статус: Offline
Молодец ,
Прикрепления: 2641136.png (3.9 Kb)


Вы здесь: 228-й день , сегодня будет идеальный день . Хах

Сообщение отредактировал WantedRobot - Среда, 23.10.2013, 23:07
CharleeQ Дата: Четверг, 24.10.2013, 09:50 | Сообщение # 4
Боец
Сообщений: 124
Статус: Offline
Спасибо ребята)
Великс Дата: Воскресенье, 27.10.2013, 11:44 | Сообщение # 5
Новичок
Сообщений: 1
Статус: Offline
Писал давно такую систему, с таймером, 3D текстами и анимацией прикованности к кровати, вперемешку с VIP системой (меньшее время пребывания в больнице) и регистрацией койки, если есть свободные. Возможно выложу когда нибудь.
[CM]Luntick Дата: Воскресенье, 27.10.2013, 17:38 | Сообщение # 6
Боец
Сообщений: 75
Статус: Offline
Нормас для моего серва самое-то....

100дней на CM
Galaxy[CM] Дата: Воскресенье, 27.10.2013, 22:44 | Сообщение # 7
Новичок
Сообщений: 15
Статус: Offline
С паблика взято

http://cs418725.vk.me/v418725335/7c02/LbIVMn1dKtw.jpg
Donny[CM] Дата: Понедельник, 18.11.2013, 19:12 | Сообщение # 8
Любитель
Сообщений: 30
Статус: Offline
Отлично новичкам то самое

Мои пожелания :

Набить 100 репы[✔]
Набить 300 репы[✔]
Набить 500 репы[ - ]

Набить 50 сообщений[✔]
Набить 100 сообщений[✔]
Набить 200 сообщений[ - ]
Быть на СМ 20 дней[✔]
Быть на СМ 50 дней[ - ]
[CM]Sam1337 Дата: Вторник, 24.12.2013, 15:59 | Сообщение # 9
Любитель
Сообщений: 31
Статус: Offline
Спасибо
  • Страница 1 из 1
  • 1
Поиск:
Статистика Форума