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

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

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

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

баг с бензином

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

Mamont

Новичок
когда покупаешь дом, в машине 0 литров. Когда прописываешь бензин, он появляется и можно ехать, но отнимается 2-7 литров и становится 0. Машина глохнет. А если убрать проверку на наличие бензина, то в минус литры отбaвляются нормально без скачков. Почему если 300 или 20000 или 100 литров есть, то отбaвляется 2-7 литров и бензина становится 0. Помогите плиз.

PHP:
public UpdateSpeedometr(playerid)//обновляем каждую секунду наш текстдрав
{
	if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
	{
		new vehicleid;
		vehicleid = GetPlayerVehicleID(playerid);
		new maxx[7];
		if(PlayerInfo[playerid][pOgran] >= 1){maxx = "~R~Max";}
		else{maxx = "~l~Max";}
		new locked[8];
		if(IsLocked[GetPlayerVehicleID(playerid)] == 1){locked = "~R~Lock";}
		else{locked = "Unlock";}
		format(str1, sizeof(str1),"%d  ~b~km/h",SpeedVehicle(playerid) / 2);
		if(Fuell[vehicleid] >50)
		{
			format(str2, sizeof(str2),"~g~%.0f ~r~FUEL",Fuell[vehicleid]);
		}
		if(Fuell[vehicleid] ==50)
		{
			format(str2, sizeof(str2),"~y~%.0f ~r~FUEL",Fuell[vehicleid]);
		}
		if(Fuell[vehicleid] <50)
		{
			format(str2, sizeof(str2),"~r~%.0f ~r~FUEL",Fuell[vehicleid]);
		}
		format(str5, sizeof(str5), "%s",locked);
		format(str6, sizeof(str6), "%s",maxx);
		/******************************************************************************************************/
		if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER && PlayerInfo[playerid][pOgran] >= 1)
		{
			#define MAX_SPEEDO 0.5 // Максимально допустимая скорость.
			#define SLOW_FACTOR 0.8 // На сколько будет сбавляться скорость
			new Float:x,Float:y,Float:z,veh;
			veh = GetPlayerVehicleID(playerid);
			GetVehicleVelocity(veh,x,y,z);
			if((x > MAX_SPEEDO || x < -MAX_SPEEDO) || (y > MAX_SPEEDO || y < -MAX_SPEEDO))
			{
				SetVehicleVelocity(veh,x*SLOW_FACTOR,y*SLOW_FACTOR,z);
			}
		}
		/******************************************************************************************************/
		if(SpeedVehicle(playerid) / 2 > MAX_SPEED)
		{
			SendClientMessage(playerid, COLOR_LIGHTRED, "Вы были кикнуты по подозрению в читерстве. (Код ошибки: 2888)");
			SendClientMessage(playerid, COLOR_LIGHTRED, "Удалите чит программу, чтобы продолжить игру на сервере");
			Kick(playerid);
		}
		/******************************************************************************************************/
		if(Fuell[vehicleid] <= 0)
		{
			Fuell[vehicleid] = 0;
			GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
			SetVehicleParamsEx(vehicleid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
			zavodis[vehicleid] = false;
		}
		if(SpeedVehicle(playerid) >= 50 && Playerderbi[playerid] >= 1)
		{
			SendClientMessage(playerid, COLOR_NEWS, "Вы были дисквалифицированы!");
			DisablePlayerRaceCheckpoint(playerid);
			derbichet[playerid] = 0;
			DerbiPlayers -= 1;
			TogglePlayerControllable(playerid, 1);
			SetPlayerInterior(playerid, 1);
			SetPlayerPos(playerid,-2159.0461,640.3610,1052.3817);
			SetPlayerFacingAngle(playerid, 76.4112);
			Playerderbi[playerid] = 0;
		}
		if(zavodis[vehicleid] == true)
		{
			Fuell[vehicleid] -= 0.004;
			if(GetPlayerVehicleID(playerid) == caridhouse[playerid])PlayerInfo[playerid][pFuelcar] -= 0.004;
		}
		TextDrawSetString(SpeedShow[playerid],str1);
		TextDrawSetString(FuelShow[playerid],str2);
		TextDrawSetString(StatusShow[playerid],str5);
		TextDrawSetString(MaxShow[playerid],str6);

		if(!SpecialVehicle(GetPlayerVehicleID(playerid))) UnSurfCar(GetPlayerVehicleID(playerid));
	}
}
PHP:
	new tacha = GetPlayerVehicleID(playerid);
	if(newstate == PLAYER_STATE_DRIVER)//если входит в авто мы показываем ему текстдрав
	{
		if(!IsAPlane(tacha) && !IsAZapretCar(tacha))
		{
			STimer[playerid] = SetTimerEx("UpdateSpeedometr", Update, true, "i", playerid);
			TextDrawShowForPlayer(playerid,Box);
			TextDrawShowForPlayer(playerid,SpeedShow[playerid]);
			TextDrawShowForPlayer(playerid,FuelShow[playerid]);
			TextDrawShowForPlayer(playerid,StatusShow[playerid]);
			TextDrawShowForPlayer(playerid,MaxShow[playerid]);
		}
	}
	else if(newstate == PLAYER_STATE_ONFOOT)//выходит скрываем
	{
		KillTimer(STimer[playerid]);
		TextDrawHideForPlayer(playerid,Box);
		TextDrawHideForPlayer(playerid,SpeedShow[playerid]);
		TextDrawHideForPlayer(playerid,FuelShow[playerid]);
		TextDrawHideForPlayer(playerid,StatusShow[playerid]);
		TextDrawHideForPlayer(playerid,MaxShow[playerid]);
	}
	if(newstate == PLAYER_STATE_DRIVER)
	{
		if(IsAZapretCar(caridi))//если не на велике то...
		{
			zavodis[caridi] = true;
			GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
			SetVehicleParamsEx(GetPlayerVehicleID(playerid),VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
		}
		if(zavodis[caridi] == false)
		{
			SendClientMessage(playerid,COLOR_GREEN,"{26931c}Чтобы завести двигатель нажмите на клавишу {ffffff}'2'{26931c}, включить фары {ffffff}'CTRL'");
		}
	}
PHP:
	else if (strcmp("/en", cmdtext, true) == 0)
	{
		new caridi = GetPlayerVehicleID(playerid);//Присваиваем значение переменной caridi
		if(zavodis[caridi] == false && !IsAZapretCar(caridi))//проверяем на состояние двигателя и велик
		{
			if(GetPlayerVehicleID(playerid) != INVALID_VEHICLE_ID)
			{
				if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
				{
					GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);//перечисляем переменные
					SetVehicleParamsEx(GetPlayerVehicleID(playerid) ,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);//вкл. движок
					zavodis[caridi] = true;//ставим движку состояние вкл.
				}
			}
		}
		else if(zavodis[caridi] == true && !IsAZapretCar(caridi))//проверяем на состояние двигателя и велик
		{
			if(GetPlayerVehicleID(playerid) != INVALID_VEHICLE_ID)
			{
				if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
				{
					GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);//перечисляем переменные
					SetVehicleParamsEx(GetPlayerVehicleID(playerid),VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);//выкл. движок
					zavodis[caridi] = false;//ставим движку состояние выкл.
				}
			}
		}
		return true;
	}


---------- Post added at 22:07 ---------- Previous post was at 21:40 ----------

поднимаем тему, вопрос актуален
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу