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

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

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

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

Система температуры(игрока)

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

Dark_Ilya

Компетентный
Всем привет!Вот написал ещё небольшую системку к http://pawno-info.ru/threads/119617-Система-температуры
Суть в том что при минусовой температуре у игрока тратиться имунитет и повышается температура.Можно купить баночку имунеле и повысить иммунитет :D.Так же,прийдя в больницу(вставьте свои координаты) можно написать /градусник и через минуту вы узнаете свою температуру.
Итак, давайте приступим:
Ко всем new
PHP:
new minuta7;
Там где у вас pPlayerInfo
в enum pInfo
PHP:
pImmunitet,
	pImunele,
Float:pTemperatyra,
В вашу систему сохранения загрузки и регистрации,т.к. я не знаю ваши сохранения делайте по вашему примеру, где сохраняются числа!Например скопируйте строчку сохранения уровня админа.
и вставьте pImmunitet и pImunele,а вот температуру надо сделать как сохранение флоата(дроби).

В секундный таймер:
PHP:
minuta7 ++;
if(minuta7 == 300)
	{
	    minuta7 = 0;
	    if(temperature < 0 && PlayerInfo[i][pImmunitet] > 0 && PlayerInfo[i][pTemperatyra] < 42.0) PlayerInfo[i][pImmunitet] = PlayerInfo[i][pImmunitet] - random(5),PlayerInfo[i][pTemeratyra] = PlayerInfo[i][pTemeratyra] += random(4);
	    if(temperature < 0 && GetPlayerInterior(i) != 0 && PlayerInfo[i][pOdelsa] == 0 && PlayerInfo[i][pBolezn] < 6) PlayerInfo[i][pBolezn] ++;
	    if(PlayerInfo[i][pTemperatyra] > 37.0 && PlayerInfo[i][pImmunitet] > 0) PlayerInfo[i][pImmunitet] = PlayerInfo[i][pImmunitet] - random(5),PlayerInfo[i][pBolezn] ++;
 	}
Ко всем вашим командам:
PHP:
if(strcmp(cmd, "/имунеле", true) == 0)
	{
		if(IsPlayerConnected(playerid))
		{
		    if(PlayerInfo[playerid][pImunele] == 0)return SendClientMessage(playerid,COLOR_WHITE,"У вас нет баночки имунеле!");
			PlayerInfo[playerid][pImunele] --, SendClientMessage(playerid,COLOR_WHITE,"Вы выпили баночку имунеле");
			if(PlayerInfo[playerid][pImmunitet] < 100)PlayerInfo[playerid][pImmunitet] += random(8);
			if(PlayerInfo[playerid][pTemperatyra] > 37.0)PlayerInfo[playerid][pTemperatyra] -= random(2);
		}
		return 1;
	}
	if(strcmp(cmd, "/градусник", true) == 0)
	{
		if(IsPlayerConnected(playerid))
		{
		    if(!PlayerToPoint(20.0,playerid,1805.8915,-1600.8894,13.5469)) return SendClientMessage(playerid,COLOR_WHITE,"Взять градусник и измерить температуру можно только в больнице!");//Вместо моих координат вставьте свои
		    SetTimerEx("Gradusnik",60000,0,"%d",playerid);//минута
		    TogglePlayerControllable(playerid,0);
		}
		return 1;
	}
Ну и в конце мода создаём паблик
PHP:
forward Gradusnik(playerid);
public Gradusnik(playerid)
{
    TogglePlayerControllable(playerid,1);
	new string[60];
	format(string,sizeof(string),"%s измерил температуру(%f град.)",sendername,PlayerInfo[playerid][pTemperatyra]);
	SendClientMessage(playerid,COLOR_WHITE,string);
	return 1;
}
P.S. будут проблемы пишите помогу исправить(Если это будет в моих силах)
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу