Определение спавна конкретной машины -
K-911 - 07.01.2011
Хочу прикрепить объект к машине, но так, чтобы он исчезал при респавне машины. Паблик OnVehicleRespawn убирает этот объект при респавне любой машины на сервере. Уже 2-й день ломаю голову, и чувствую, что ответ будет элементарным

,но всё же, решил обратится к вам, т.к. уже нет вариантов.
Изначальный вариант был таким:
pawn Код:
public OnVehicleSpawn(vehicleid, playerid)
{
DelObjects(playerid);
return 1;
}
Re: Определение спавна конкретной машины -
Maccer - 07.01.2011
Ну значит у каких-то машин нужно убирать объект при спавне, а у других не нужно?
Определись, что является ключевым моментом в это вопросе нужно/не нужно и делай проверку ифом по нему )
Re: Определение спавна конкретной машины -
K-911 - 07.01.2011
Я просто хочу сделать проверку на респавн определённой машины, т.е., когда спавнится одна машина, чтобы именно для неё активировалась функция, а не для всех.
Re: Определение спавна конкретной машины -
Makar93 - 07.01.2011
Код:
new car;
car = CreateVehicle(....);
public OnVehicleSpawn(vehicleid)
{
if(vehicleid == car)
{
....
}
return 1;
}
Все просто (:
Re: Определение спавна конкретной машины -
K-911 - 07.01.2011
Хм... спасибо, чуть-чуть не то, но близко)
Попробую сделать по этому примеру.
Re: Определение спавна конкретной машины -
Stepashka - 07.01.2011
Решение банально, привязывать оъект не к игроку, а к машине.
Из твоего примера привязка к ироку:
DelObjects(playerid);
Re: Определение спавна конкретной машины -
K-911 - 07.01.2011
Нет, это паблик, в нём вписано удаление объектов, а playerid из-за этого DestroyObject(GetPVarInt(playerid, "undercover1"));
Re: Определение спавна конкретной машины -
K-911 - 07.01.2011
Проблемы, собственно не закончились, объясню более подробно, что я хотел в этой теме:
С помощью меню, каждый игрок может выбрать и прикрепить на свой транспорт какой-нибудь объект из списка. Проблема в том, что, когда транспорт взрывается, или респавнится, объект не исчезает, а удалить его может только тот, кто его туда поставил, т.к. этот объект записывается на определённого игрока через SetPVarInt. Вот пример:
pawn Код:
SetPVarInt(playerid, "bl", CreateObject(18648,0,0,0,0,0,0));
Это очень не удобно и я пытаюсь сделать так, чтобы при каждом респавне машины этот объект исчезал.
У меня получилось это сделать, но проблема в том, что при респавне 1-й машины, даже той, на которой нет объекта, объекты исчезают на всех машинах сервера, на которых были установлены. И я пытаюсь сделать так, чтобы объект исчезал только на той машине, которая совершила респавн, но у меня это, пока, не получается. Вот я и обратился за помощью к вам.
Re: Определение спавна конкретной машины -
Stepashka - 07.01.2011
K-911, я тебе уже сказал решение привязывай объект не к игроку, а к машине.
Давай свой код.
Re: Определение спавна конкретной машины -
K-911 - 07.01.2011
я написал выше, почему стоит не vehicleid, а playerid.
Quote:
Нет, это паблик, в нём вписано удаление объектов, а playerid из-за этого DestroyObject(GetPVarInt(playerid, "undercover1"));
|