Вопросы

Здравствуйте, не работает починка по пикапу, наступаю на пикап высвечивается диалог и дальше ничего не происходит.

 

Спойлер

case dialog_REPAIR:
		{
            {
                if(!response) return true;
  		        new carid = GetPlayerVehicleID(playerid);
				new Float:hpc;
				if(carid == INVALID_VEHICLE_ID) return SendClientMessage(playerid, COLOR_WARNING, "Нужно находиться в автомобиле!");
			    GetVehicleHealth(carid,hpc);
			    if(hpc == 1000.0) return SendClientMessage(playerid, COLOR_WARNING, "Ваш автомобиль находиться в идеальном состоянии!");
				SetVehicleHealth(carid,1000.0);
				RepairVehicle(carid);
				SendClientMessage(playerid, 0x66CC00FF, "Вы починили свой автомобиль");
				for(new c; c < 3; c++)
				{
				    if(PLAYER_DATA[playerid][data_CAR][c] != GetVehicleModel(carid)) continue;
				    PLAYER_DATA[playerid][data_REPAIRS][c] += 1;
				    break;
				}
				PLAYER_DATA[playerid][data_ZAPCHASTI] = 0;
				return true;
            }
        }

 

 

Спойлер

if(pickupid == pick_repair)
    {
        ShowPlayerDialogFix(playerid, dialog_REPAIR, DIALOG_STYLE_MSGBOX,"Починка","Не желаете ли вы починить свой автомобиль за 100$?","Починится","Выход");
  		return true;
    }

 

 

Поделиться сообщением


Ссылка на сообщение

15 ответов на этот вопрос

  • 0

Да.

Поделиться сообщением


Ссылка на сообщение
  • 0

@Remmi_Feedвообще ноль реакций или диалог появляется но в нем ничего не выбирается? Да и как ты будешь активировать пикап находясь в машине? Он разве так активируется?

Поделиться сообщением


Ссылка на сообщение
  • 0

@stibs после того как я наступаю на пикап высвечивается диалог, после выбираю любую конпку и все. На этом кино заканчивается

Поделиться сообщением


Ссылка на сообщение
  • 0

@Remmi_Feed так действительно, как будет срабатывать пикап, если ты будешь находится в машине? 

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST Даже если не в машине

Поделиться сообщением


Ссылка на сообщение
  • 0

@Remmi_Feed если не в машине, то код не сработает из-за того, что невозможно получить ID машины. 

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST и как тогда сделать? Через команду?

Поделиться сообщением


Ссылка на сообщение
  • 0

@stibs ,@DEST , есть такой тип пикапа как 14 - "Берется, но только в машине. Падает сквозь объекты, созданные по CreateObject, и т.п."
Но, опять же, вроде как, сам не тестил, для того чтобы его взять необходимо наехать на пикап игроком, т.е. физической его моделью.



Могу предложить вариант реализации через динамическую зону.

Поделиться сообщением


Ссылка на сообщение
  • 0

@Skiffi Подобнее, впервые слышу просто 

Поделиться сообщением


Ссылка на сообщение
  • 0

@Remmi_Feed он имел введу стример зоны (streamer) там можно как и круглые создать так и любых размеров)))

Поделиться сообщением


Ссылка на сообщение
  • 0

@MuhammadPawn можно показать?

Поделиться сообщением


Ссылка на сообщение
  • 0

@Remmi_Feed в разделе уроки есть, посмотрите там. 

Поделиться сообщением


Ссылка на сообщение
  • 0
new
	RepairZone;

public OnGameModeInit() {
	RepairZone = CreateDynamicSphere(/*X,Y,Z*/,5.0); //X,Y,Z координаты, выставите самостоятельно
	return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
	switch(listitem) {
		case dialog_REPAIR: {
			if(!response)
				return 1;
			if(!IsPlayerInAnyVehicle(playerid))
				return SendClientMessage(playerid,-1,!"Вы должны находиться в транспорте!");

			new
				vID = GetPlayerVehicleID(playerid);

			SetVehicleHealth(vID, 1000.0);
			RepairVehicle(vID);

			return GivePlayerMoney(playerid,-100);
			/*Сохранение, сделаете сами*/
		}
	}
}

public OnPlayerEnterDynamicArea(playerid, areaid) {
	if(areaid == RepairZone)
		return ShowPlayerDialogFix(playerid, dialog_REPAIR, DIALOG_STYLE_MSGBOX,"Починка","Не желаете ли вы починить свой автомобиль за 100$?","Починится","Выход");
	return 1;
}

 

Поделиться сообщением


Ссылка на сообщение
  • 0

@Skiffi 

OnPlayerEnterDynamicArea

Такого паблика то нету. Создать?

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Redmondd
      От Redmondd
      При запуске сервера в консоли пишет: Started server on port: 7777, with maxplayers: 500 lanmode is OFF.
      И когда захожу на сервер пишет server didnt respond
       
      ---------- Loaded log file: "server_log.txt". ---------- SA-MP Dedicated Server ---------------------- v0.3.7-R2, (C)2005-2015 SA-MP Team filterscripts = ""  (string) Server Plugins --------------  Loading plugin: mysql   > MySQL plugin R7-2 successfully loaded.   Loaded.  Loading plugin: sscanf  ===============================       sscanf plugin loaded.          Version:  2.8.1    (c) 2012 Alex "Y_Less" Cole  ===============================   Loaded.  Loading plugin: dc_cmd   Daniel's CMD plugin v2.8     (c) 2014 Daniel_Cortez         www.pro-pawn.ru   Loaded.  Loading plugin: streamer *** Streamer Plugin v2.7.9 by Incognito loaded ***   Loaded.  Loaded 4 plugins. Started server on port: 7777, with maxplayers: 500 lanmode is OFF. Filterscripts ---------------   Loaded 0 filterscripts. Подключение к базе данных MYSQL успешно ---------------------------------- --------Redmond RP 01-------- ---------------------------------- Number of vehicle models: 5 Склады загружены успешно Дома (15 шт) загружены успешно