FEET 1 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 Подскажите пожалуйста, есть ли возможность сделать дверь, чтобы, при приближении к ней нпс, она открывалась? В обычную дверь они врезаются и не могут пройти никак... Ссылка на комментарий
Shredder 49 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 Вот так раз. На Скадовске дверь глянь. Ссылка на комментарий
FEET 1 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 (изменено) @Shredder,Хмм, а что в ней за это отвечает то? [logic] active = ph_door@closed [ph_door@closed] closed = true locked = false on_use = ph_door@open on_info = {!check_smart_alarm_status(zat_stalker_base_smart:normal) !actor_in_zone(zat_a2_sr_light)} ph_door@locked snd_open_start = trader_door_open_start snd_close_start = trader_door_close_start snd_close_stop = trader_door_close_stop [ph_door@open] closed = false locked = false on_use = ph_door@closed on_info = {!check_smart_alarm_status(zat_stalker_base_smart:normal) !actor_in_zone(zat_a2_sr_light)} ph_door@locked on_game_timer = 50 | ph_door@closed snd_open_start = trader_door_open_start snd_close_start = trader_door_close_start snd_close_stop = trader_door_close_stop [ph_door@locked] closed = true locked = true on_info = {=check_smart_alarm_status(zat_stalker_base_smart:normal)} ph_door@closed on_info2 = {=check_smart_alarm_status(zat_stalker_base_smart:alarm)} ph_door@locked_alarm on_info3 = {=actor_in_zone(zat_a2_sr_light)} ph_door@closed snd_open_start = trader_door_locked tip_open = tip_door_closed_hide_weapon [ph_door@locked_alarm] closed = true locked = true on_info = {=check_smart_alarm_status(zat_stalker_base_smart:normal)} ph_door@closed on_info2 = {=check_smart_alarm_status(zat_stalker_base_smart:danger)} ph_door@locked snd_open_start = trader_door_locked tip_open = tip_door_closed_base_alarm В следующий раз "полотно" потру. ColR_iT Изменено 18 Сентября 2013 пользователем ColR_iT Ссылка на комментарий
Shredder 49 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 А логика тут нипричём. Все двери регистрируются при выходе в онлайн регистрируются в в табличке db.level_doors --скрипт bind_physic_object.script if self.object:section() == "physic_door" then db.level_doors[self.object:id()] = self.object:position() end Потом на апдейте НПС проверяется расстояние до каждой из них, и при необходимости дверь открывается/закрывается. Так что, скорее всего, у тебя секция двери не "physic_door" Ссылка на комментарий
FEET 1 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 Дверь из секции "physic_door", может это связано с тем, что аи сетка просчитана на драфте? Если просчитать укрытия, может нпсы смогут открывать двери? Ссылка на комментарий
Shredder 49 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 (изменено) Нет, аи-сетка тут нипричём. Проверяй регистрацию двери в bind_physic_object.script Кроме того, возможно ты изменял xr_motivator.script, где как раз и вызывается открытие/закрытие дверей. Вообщем, добавляй вывод в лог и смотри, чего не так. Изменено 18 Сентября 2013 пользователем Shredder Ссылка на комментарий
FEET 1 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 @Shredder,Там идёт отсылка на скрипт "db.script", а в нём есть строка " level_doors = {}", мне что, между скоб дверь нужно вписать? Ссылка на комментарий
Shredder 49 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 Нет конечно. Всё должно работать и так. Тебе нужно выяснить, почему не работает. Я щас ещё глянул bind_physic_object.script. Дверь не биндется, если у неё нет логики, т.е. нет секции [logic]. Ты прописал логику для двери? Ссылка на комментарий
FEET 1 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 (изменено) @Shredder,Да, вот такую: [logic] active = ph_door@close[ph_door@close]locked = falseclosed = trueon_use = ph_door@opensnd_open_start = wood_small_opensnd_close_start = wood_small_close_startsnd_close_stop = wood_small_close_stophit_on_bone = 1|ph_door@free|2|ph_door@free[ph_door@open]locked = falseclosed = falseon_use = ph_door@closesnd_open_start = wood_small_opensnd_close_start = wood_small_close_startsnd_close_stop = wood_small_close_stophit_on_bone = 1|ph_door@free|2|ph_door@free[ph_door@free]locked = falseclosed = trueon_use = ph_door@openno_force = trueМожет быть из-за того что дверь слегка утонула в геометри?(не точно подходит по размеру)Или из-за того что аи сетка проходит сквозь дверь? (дверь не лежит на аи сетке, она ниже её) Нет, не из-за этого, поставил дверь на пути у нпс, ровно на землю, всё равно не может открыть.(нпс идёт на вэйпоинт сна) Изменено 18 Сентября 2013 пользователем FEET 1 Ссылка на комментарий
karavan 36 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 FEET Если НПС создан отдельно в алл.спавне, то для того что бы дверь открывалась нужно много чего менять (сам таким страдал). Гораздо проще создать НПС через смарт и тогда перед НПС откроется любая дверь. Ссылка на комментарий
FEET 1 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 @karavan,Увы, всё создано через смарт, в спавне 0 нпс Ссылка на комментарий
karavan 36 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 Как это в смарте ноль НПС, а кто тогда пытается пройти в дверь? Ссылка на комментарий
FEET 1 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 @karavan,Я же написал "в спавне", всмысле в all.spawn Ссылка на комментарий
karavan 36 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 НПС либо под смартом создаются, либо без смарта просто, расставляются по локации. Значит у тебя НПС без смарта. Ссылка на комментарий
FEET 1 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 (изменено) @karavan,У меня там всё под смартом, во всех сквадах стоит таргет нейм = мой смарт, всё остальное работает как по маслу, а вот дверь что-то не может открыть...Нпс то и идёт на работу смартовскую, но не судьба Изменено 18 Сентября 2013 пользователем FEET Ссылка на комментарий
karavan 36 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 (изменено) НПС под смартом прописываются в simulation.ltx Смарт на появление: [start_position_dsa] dsa_01_squad = dsa_01 В squad_descr.ltx Кто будет появлятся и в каком смарте: [dsa_01_squad]:online_offline_group faction = monster_vegetarian npc_random = boar_normal npc_in_squad = 1, 1 target_smart = dsa_01 ; Целевой смарт spawn_point = dsa_01_spawn_point ; Точка спавна сквада story_id = dsa_01_squad Спавнить НПС в ЗП стал намного проще чем в ТЧ, но без СДК 0.7 не обойтись. Главное соблюдать названия в обозначениях смарт_терейна, аним_поинтов, точек спавна и имени стори айди Изменено 18 Сентября 2013 пользователем karavan Ссылка на комментарий
FEET 1 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 (изменено) Именно так, всё точ в точ как ты написал, и вэй поинты спавна сделаны, тут дело не в смарте я думаюВот это жесть Поменял меш двери, нпс приспокойно её открыл, как это вообще может влиять? Изменено 18 Сентября 2013 пользователем FEET Ссылка на комментарий
karavan 36 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 Какой именно меш? Забыл написать что еще важно правильно назвать кости у двери. Ссылка на комментарий
FEET 1 Опубликовано 18 Сентября 2013 Поделиться Опубликовано 18 Сентября 2013 (изменено) Короче вот этот работает: "door_wood_130x245_01"Вот этот не работал: " door_old_wood_120_240_01"Всё оригинальное, ничего не менялКстати да, во второй какие-то левые кости ещё есть, кроме нужных Изменено 18 Сентября 2013 пользователем FEET Ссылка на комментарий
Clayman 104 Опубликовано 19 Сентября 2013 Поделиться Опубликовано 19 Сентября 2013 По дверям: сталкивались и разбирали эту проблему, на новых (или подключенных) локах нпс двери не открывают. Решение: Убедиться что двери заспавнены как physic_door удалить в ph_door.script функции try_to_open_door и try_to_close_door строку if true then return {} end Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти