Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Создаем больницу.

Статус
В этой теме нельзя размещать новые ответы.

Deans

Новичок
В enum pinfo
PHP:
pHospital,
pHospitalTime,
в public SetPlayerSpawn(playerid)

PHP:
if(PlayerInfo[playerid][pHospital] == 1)
			{
			    SetPlayerInterior(playerid, 3); //меняем интерьер
			    SetPlayerPos(playerid,338.4664,161.4294,1019.9844); //портуем в больницу, кординаты норм можете не менять
			    SetPlayerVirtualWorld(playerid, 3);// хотите меняйте вирт мир..
				SetPlayerHealthAC(playerid, 100); //хиляем до 100%
				TogglePlayerControllable(playerid, 0); // морозим чтоб не дрался
				ApplyAnimation(playerid, "CRACK", "crckdeth2", 4.0, 1, 0, 0, 0, 0); //забацаем анимку))
				SendClientMessage(playerid, COLOR_LIGHTRED, "Вы попали в больницу, отдыхайте."); // пишем сообщение при попадании в больницу
				return 1;
			}
в public OnPlayerDeath(playerid, killerid, reason)
PHP:
	if(killerid != INVALID_PLAYER_ID)
	{
	 	ResetPlayerWeapons(playerid); // забираем оружие
		PlayerInfo[playerid][pHospital] = 1;
	 	PlayerInfo[playerid][pHospitalTime] = 300;  // Сажаем игрока на 5 минут
	}

======================Теперь функция выбрасывания игрока из больницы=======================
Это у меня после паблика Freeh стоит, вы у себя можете найти в моде строчку под названием "вы заплатили свой долг общевству"

PHP:
if(IsPlayerConnected(i))
	    {
	if(PlayerInfo[i][pHospital] > 0) // делаем проверку, если у игрока не осталось времени то следуем дальше)
				{
					if(PlayerInfo[i][pHospitalTime] > 0)
					{
						PlayerInfo[i][pHospitalTime]--; 
					}
					if(PlayerInfo[i][pHospitalTime] <= 0)
					{
					 	PlayerInfo[i][pHospitalTime] = 0; //если игрок здоров скидываем время на 0
						PlayerInfo[i][pHospital] = 0; //тоже самое
						SendClientMessage(i, COLOR_GRAD1,"Теперь ты полностью здоров");
						SetPlayerInterior(i, 0); //тп на улицу(больница ЛС)
						SetPlayerVirtualWorld(i, 0);//
						SetPlayerPos(i,2024.3229,-1404.7660,17.2010)//координаты тоже норммальные, на улицу возле больницы
						TogglePlayerControllable(i, 1); // размараиваем обязательно
						SetPlayerHealthAC(i,100); //ну и хилим если хотите..
					}
				}
			}
==============================================================================

в public OnPlayerRegister(playerid, password[])
PHP:
 ini_setInteger(File,"Hosp",PlayerInfo[playerid][pHospital]);
				ini_setInteger(File,"HospTime",PlayerInfo[playerid][pHospitalTime]);
тоже самое в public OnPlayerUpdateRL(playerid)
PHP:
 ini_setInteger(File,"Hosp",PlayerInfo[playerid][pHospital]);
				ini_setInteger(File,"HospTime",PlayerInfo[playerid][pHospitalTime]);
и сюды тоже public OnPlayerLogin(playerid,password[])

PHP:
 ini_setInteger(File,"Hosp",PlayerInfo[playerid][pHospital]);
				ini_setInteger(File,"HospTime",PlayerInfo[playerid][pHospitalTime]);
=======================================================================================

И да можете сделать тексдрав или же командой будем выводить игроку время скока ему лижать в больнице
PHP:
else if(strcmp(cmd, "/timeh", true) == 0)
	{
	if(IsPlayerConnected(playerid))
	    {
			if (PlayerInfo[playerid][pHospitalTime] > 0)
				{
					format(string, sizeof(string), "Осталось время больнице %d секунд", PlayerInfo[playerid][pHospitalTime]-10);
				}

			SendClientMessage(playerid, COLOR_WHITE, string);
		return 1;
 }
===================================================================================
Все было протестенно и не раз
p.s И если не жалко прошу плюса за сторания..
p.s Прошу если что не судить сильно за офрмление это маф первая тема...
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу