• 0
Sign in to follow this  
Followers 0

Антивозгарание тачек Хелп

Question

Вечер в хату молодые,на связи Лелуш. Просьба опытных людей помочь мне с одной проблемкой... Суть в том что я хочу сделать что бы машина не горела как в обычной гташке и не взрывалась,мод на командном процессоре Pawn.CMD
Я так понял вся суть из-за "анти-чита" который тут очень убогий и никак не работает скажем так,но вот машину он чё-т то ли чинит то ли нет сам не понимаю.
В общем,благодаря людям из темы с Антивозгаранием Машины от DEST'a (2017ого года),я чёт подшаманил там,и теперь при достижении 300 или меньше HP Машины,система ставит 300 HP + Глушит авто. НО,что-то её чинит на 1000 HP,и потом опять на 300 и потом опять косарь,в общем - цирк... 
Всё что я знаю про это:
 

		if(IsPlayerInAnyVehicle(i))
		{
		    GetVehicleHealth(GetPlayerVehicleID(i), hp);
		    if(VEHICLE[GetPlayerVehicleID(i)][vHealth] < hp) {
			    if(GetPVarInt(i,"playerUsePaynSpray") == 0) SetVehicleHealth(GetPlayerVehicleID(i),VEHICLE[GetPlayerVehicleID(i)][vHealth]);
				if(GetPVarInt(i,"playerUsePaynSpray") != 0 && GetPlayerState(i) == PLAYER_STATE_DRIVER) {
				    setVehicleHealth(GetPlayerVehicleID(i),1000.0);
				    SetPVarInt(i,"playerUsePaynSpray",0);
				}
			}
			else VEHICLE[GetPlayerVehicleID(i)][vHealth] = hp;
			if(hp < 350) // Так и было если не ошибаюсь,а если ошибаюсь то тут было 300.
			{
				zavodis[i] = 0; // Я шаманил
				setVehicleHealth(GetPlayerVehicleID(i), 300.0); // Я шаманил
				RepairVehicle(GetPlayerVehicleID(i)); // Я шаманил,и походу это из-за данной функции он как бы чинил тачку. Ясно,надо снести её значит.
				GetVehicleParamsEx(GetPlayerVehicleID(i),engine,lights,alarm,doors,bonnet,boot,objective); // hz
				SetVehicleParamsEx(GetPlayerVehicleID(i),0,0,alarm,doors,bonnet,boot,objective); // hz
			}
		}

 

Share this post


Link to post

5 answers to this question

  • 0
10 минут назад, F1re сказал:

@Lelouch 

  открыть спойлер


setVehicleHealth(GetPlayerVehicleID(i), 300.0); // Я шаманил
RepairVehicle(GetPlayerVehicleID(i)); // Я шаманил,и походу это из-за данной функции он как бы чинил тачку. Ясно,надо снести её значит.
			

 

Судя по этому коду, у тебя на машину ставится 300 хп , и потом , следующая строчка кода - чинит до 1000, убери строку RepairVehicle.

Я уже заметил сам,через пару минут только смогу протестить на деле.

Share this post


Link to post
  • 0

@Lelouch 

Спойлер

setVehicleHealth(GetPlayerVehicleID(i), 300.0); // Я шаманил
RepairVehicle(GetPlayerVehicleID(i)); // Я шаманил,и походу это из-за данной функции он как бы чинил тачку. Ясно,надо снести её значит.
			

 

Судя по этому коду, у тебя на машину ставится 300 хп , и потом , следующая строчка кода - чинит до 1000, убери строку RepairVehicle.

Share this post


Link to post
  • 0

АВТОМАТИЧЕСКИ СФОРМИРОВАННОЕ СООБЩЕНИЕ:

Данная тема была перемещена модерацией или администрацией портала PAWNO-RUS.RU! 

Перемещена из: "Скриптинг PAWN > Готовые решения"

Перемещена в: "Скриптинг PAWN > Вопросы / проблемы, связанные со скриптингом"

 

С уважением, ваш Бот! 

Если вы НЕ согласны с переносом данной темы в раздел "Скриптинг PAWN > Вопросы / проблемы, связанные со скриптингом", пожалуйтесь на это сообщение в жалобе указав причины вашего недовольства. Спасибо. 

 

Share this post


Link to post
  • 0
1 минуту назад, Бот сказал:

АВТОМАТИЧЕСКИ СФОРМИРОВАННОЕ СООБЩЕНИЕ:

Данная тема была перемещена модерацией или администрацией портала PAWNO-RUS.RU! 

Перемещена из: "Скриптинг PAWN > Готовые решения"

Перемещена в: "Скриптинг PAWN > Вопросы / проблемы, связанные со скриптингом"

 

С уважением, ваш Бот! 

Если вы НЕ согласны с переносом данной темы в раздел "Скриптинг PAWN > Вопросы / проблемы, связанные со скриптингом", пожалуйтесь на это сообщение в жалобе указав причины вашего недовольства. Спасибо. 

 

Звиняй бот,забыл в какой категории я создал тему :c

26 минут назад, F1re сказал:

@Lelouch 

  открыть спойлер


setVehicleHealth(GetPlayerVehicleID(i), 300.0); // Я шаманил
RepairVehicle(GetPlayerVehicleID(i)); // Я шаманил,и походу это из-за данной функции он как бы чинил тачку. Ясно,надо снести её значит.
			

 

Судя по этому коду, у тебя на машину ставится 300 хп , и потом , следующая строчка кода - чинит до 1000, убери строку RepairVehicle.

Проверил,как бы работает,НО даже если 300 хп у тачки и мотор глушится,тачку можно завести потом она опять глушится. :c Щас сижу пытаюсь это решить

Share this post


Link to post
  • 0
28 минут назад, F1re сказал:

@Lelouch 

  открыть спойлер


setVehicleHealth(GetPlayerVehicleID(i), 300.0); // Я шаманил
RepairVehicle(GetPlayerVehicleID(i)); // Я шаманил,и походу это из-за данной функции он как бы чинил тачку. Ясно,надо снести её значит.
			

 

Судя по этому коду, у тебя на машину ставится 300 хп , и потом , следующая строчка кода - чинит до 1000, убери строку RepairVehicle.

Нашёл команду которая вызывает функция когда кончается Бензин видимо,решил сделать что бы и если ХП == 300 то что бы не заводился. (zavodis [0/1])
Код:

CMD:engggg(playerid, params[])
{
	if(GetPlayerVehicleID(playerid) == INVALID_VEHICLE_ID) return true;
	if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return true;
	if(zavodis[playerid] == 0)
	{
		new idd = GetPlayerVehicleID(playerid);
		if(Fuell[idd] <= 0) return SendClientMessage(playerid,COLOR_RED,"В машине нет бензина");
		GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
		SetVehicleParamsEx(GetPlayerVehicleID(playerid) ,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
		zavodis[playerid] = 1;
	}
	else if(zavodis[playerid] == 1)
	{
		GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
		SetVehicleParamsEx(GetPlayerVehicleID(playerid),VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
		zavodis[playerid] = 0;
	}
	new veh = GetPlayerVehicleID(playerid); // Я Шаманю...
	if(VEHICLE[veh][vHealth] == 300)// Я Шаманю...
	{
	zavodis[playerid] = 0;
	}
	return true;
}

 

Всем спасибо за помощь ! Я починил !

Для тех у кого такая-же ошибка:

В команде которую я тут выложил(которая вызывается если закончился бензин) ставьте самым первым данные строки...
И всё сработает !
Сами Строки:

	new veh = GetPlayerVehicleID(playerid); // --------------------------------|
	if(VEHICLE[veh][vHealth] == 300)//										   |
	{//																		   | ---- > Это тот самый код который чинит это, PS: SCM - SendClientMessage.
	zavodis[playerid] = 0;//												   |
	SCM(playerid, -1, "Ваша Машина сломана !");//------------------------------|
	}
// Команда должна получится такая(примерно,в зависимости от мода):
CMD:engggg(playerid, params[])
{
	new veh = GetPlayerVehicleID(playerid);
	if(VEHICLE[veh][vHealth] == 300)
	{
	zavodis[playerid] = 0;
	SCM(playerid, -1, "{adadad}Ваша Машина сломана !");
	return 0;
	}
	if(GetPlayerVehicleID(playerid) == INVALID_VEHICLE_ID) return true;
	if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return true;
	if(zavodis[playerid] == 0)
	{
		new idd = GetPlayerVehicleID(playerid);
		if(Fuell[idd] <= 0) return SendClientMessage(playerid,COLOR_RED,"В машине нет бензина");
		GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
		SetVehicleParamsEx(GetPlayerVehicleID(playerid) ,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
		zavodis[playerid] = 1;
	}
	else if(zavodis[playerid] == 1)
	{
		GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
		SetVehicleParamsEx(GetPlayerVehicleID(playerid),VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
		zavodis[playerid] = 0;
	}
	return true;
}

 

Share this post


Link to post
This topic is now closed to further replies.
Sign in to follow this  
Followers 0
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By def
      arizona.pwn(23374) : error 012: invalid function call, not a valid address
      arizona.pwn(23374) : error 001: expected token: ";", but found ")"
      arizona.pwn(23374) : error 029: invalid expression, assumed zero
      arizona.pwn(23374) : fatal error 107: too many error messages on one line
      жалуется на данную строчку:
       
      %s{cccccc}Для продолжения нажмите 'Далее'",PN(playerid),playerid,ItemsInfo[itemid][ItemName2],hours,cost*hours,Inventory[playerid][2][slot], AksColorName(Inventory[playerid][4][slot]), Inventory[playerid][5][slot] ? GetNameStripe(Inventory[playerid][5][slot]) : "");  
    • By d7.KrEoL
      Datalink filterscript - передача тактической информации об игроках на карту sampmap.ru
      Скачать файл Данный скрипт позволяет передавать информацию об игроках на тактическую карту проекта sampmap. Управление функциями через RCON команды, сам скрипт хоть и полностью готов к использованию, но скорее является примером, на его основе можно писать свои системы для взаимодействия с тактической картой.
      Тактическая карта проекта sampmap - это подобие даталинк системы, которая позволяет координировать действия отряда, либо просто отслеживать местоположение игроков в режиме радара. Для каждого переданного в datalink систему (на тактическую карту) игрока выводится его основная информация о скорости, азимуте, высоте, величине и направлении вектора скорости, а так же принадлежность свой/чужой
      Несколько скринов:
       
       
      Архивы:
       
      Исходники:
       
      Команды (ркон) для dlink:
      Помимо серверной версии скрипта существуют так же клиентские для обычного клиента с moonloader и для RakSAMP Lite бота. Все эти скрипты распространяются по открытой лицензии MIT, здесь находится git с исходниками. Проект открыт для ваших предложений относительно кода, или дальнейшего развития, вы можете оставить свои предложения на официальной странице github.






      Добавил d7.KrEoL Добавлено 09.12.2024 Категория Скрипты Автор d7.KrEoL