[SoC] Ковыряемся в файлах - Страница 118 - Скрипты / конфиги / движок - AMK Team
Перейти к контенту

[SoC] Ковыряемся в файлах


Рекомендуемые сообщения

Monnoroch,

для physic_destroyable_object

 

local t = amk.get_breakable_data(sobj)

t.visual -- визуал ящика

 

 

Зачем такое хитрое условие

почему не просто:

if self.actit ~= npc:active_item() then

 

Ругается скорее всего на то, что не может npc:active_item() привести к логическому типу. Ну и если self.actit присваиваешь npc:active_item(), то и на него тоже может ругатьсяФигня.

Так и не сумел получить такой вылет. Точно на этой строчке?

Изменено пользователем Kolmogor

Kolmogor, хитрое - потому,что self.actit вообще может не существовать.

А еще потому,что npc:active_item() тоже может быть нил.

 

А как это не может привести к логическому типу?Это game_object,везде может,а тут не может?Почему?

Изменено пользователем Monnoroch

if self.actit ~= npc:active_item() then

 

Если self.actit не существует, то условие выше будет истинным. По-моему ровно тоже самое что и твое условие

 

Проверил

Если self.actit = nil и npc:active_item() = nil, условие также как и у тебя не выполнятеся :)

Изменено пользователем Kolmogor

А если self.actit = nil и npc:active_item() = nil?

Тоже истина.А вот этого мне не надо.

Изменено пользователем Monnoroch
Вылет: No such operator defined

Для game_object не определен оператор сравнения, так что сравнивать их нельзя.

Привет.

Подскажите пожалуйста как должна выглядеть функция оживления трупов и объясните как такая функция определяет что именно "этот" труп надо оживить?

Пытался использовать такую функцию:

function npc_to_life()

for i=1,10000 do

local npc =alife():object(i)

if npc and IsStalker(npc) then

if npc:name() == "npc_top" and npc:alive()~=true then

local tbl = amk.read_stalker_params(npc)

tbl.health = 1

tbl.updhealth = 1

amk.write_stalker_params(tbl, npc)

end

end

end

end

После часа теста результат нулевой. Функция на появление трупа работает на 100%.

Помогите пожалуйста. Объясните что не так.

 

Добавлено через 214 мин.:

Господа модмейкеры.

Поскажите каким образом возможно custom_data с ссылкой на ltx фаил прописать в функции и вообще возможно ли такое? :rolleyes:

Спасибо.

Подскажите пожалуйста как должна выглядеть функция оживления трупов

Трупы оживить невозможно. Можно убрать труп и заспавнить вместо него живого непися.

Gonarh

Где здесь указывать название трупа, который нужно удалить?

alife():release(alife():object(npc:id()), true)

:mellow:

Уважаемые подскажите как сделать что бы оружие убитого НПС при поднятии было разряжено ?

 

и что значит эта строка в конфиге ствола ?

auto_spawn_ammo = false

Где здесь указывать название трупа, который нужно удалить?

тут название указывать не нуно в функцию передается идентификатор непися npc:id()

Изменено пользователем Gonarh

karavan

 

Удаляет волка проверял на живом (труп тоже наверно удалит)

вернее сначало нужно узнать труп он или нет а потом использовать функцию (как узнать не знаю)

 

function wolf_delete()

local obj = alife() : object( "esc_wolf" )

if obj then

alife():release(obj , true)

 

end

end

нужно узнать труп он или нет а потом использовать функцию (как узнать не знаю)

npc:alive()

npc - клиентский объект (game_object)

От чего может быть такая штука?

[error]Description : any vertex in patrol path [pri_wave2_rsniper_1_walk] in inaccessible for object [pri_wave2_monolith1_rsniper1]

malandrinus, так.я заставляю НПС идти к вертексу предварительно проверив npc:accessible(lv).

В таких условиях может произойти этот вылет?

Эээ...в смысле?Локация определенно совпадает.

А пути - это как?

 

Просто это вылет при спавн снайперов в Припяти на балконах.

А у меня всех сталкеров иногда цепляет и зовет спать.Или торговать.Но проверка accessible есть.

Вот я и думаю - она не срабатывает,или это не я виноват?

А пути - это как?

В смысле как? Локация непися и локация пути, по которому ходит непись.

 

Непонятно, как с балкончика можно ещё куда-то дойти. Но говоришь проверка срабатывает... Значит она неправильно срабатывает.

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...