Перейти к содержанию

denis2000

Разработчики
  • Публикаций

    1 910
  • Зарегистрирован

  • Посещение

  • Победитель дней

    3

Весь контент denis2000

  1. Mawrak Починить, то все можно, только смысла в этом нет - ЗП работает по другим принципам...
  2. Mawrak Естественно он не работает, скрипты кардинально переделаны.
  3. Pavel2000 Тут нет - это в оригинале вы имеете ввиду? Дополнено 1 минуту спустя Если вставлять то так: function sim_squad_scripted:show() if self.show_disabled then self:hide() return end if(level.map_has_object_spot(self:commander_id(), "ui_pda2_trader_location")~=0) or (level.map_has_object_spot(self:commander_id(), "ui_pda2_mechanic_location")~=0) or (level.map_has_object_spot(self:commander_id(), "ui_pda2_scout_location")~=0) or (level.map_has_object_spot(self:commander_id(), "ui_pda2_quest_npc_location")~=0) or (level.map_has_object_spot(self:commander_id(), "ui_pda2_medic_location")~=0) then self.show_disabled = true return end if self.current_spot_id ~= self:commander_id() then self:hide() self.current_spot_id = self:commander_id() self:show() return end
  4. Я это и имел ввиду, но оказывается на одном объекте могут одновременно висеть несколько меток, а не одна последняя. На вашем НПС есть еще метка командира сквада нейтралов. Попробуйте открыть файл sim_squad_scripted.script там в функции sim_squad_scripted:show есть строки: if(level.map_has_object_spot(self:commander_id(), "ui_pda2_trader_location")~=0) or (level.map_has_object_spot(self:commander_id(), "ui_pda2_mechanic_location")~=0) or (level.map_has_object_spot(self:commander_id(), "ui_pda2_scout_location")~=0) or (level.map_has_object_spot(self:commander_id(), "ui_pda2_quest_npc_location")~=0) or (level.map_has_object_spot(self:commander_id(), "ui_pda2_medic_location")~=0) then self.show_disabled = true return end Добавьте свою метку по аналогии.
  5. Pavel2000 Отмена, значит это так не сработает, остается метка командира сквада...
  6. Pavel2000 Можно сделать так: 1. Добавляете в stalker_generic.script новую метку в функции reset_show_spot и remove_level_spot. Но делаете ее невидимой. 2. Добавляете свою метку в логику: [logic] level_spot = ...
  7. Я ничего не говорил о новичке в Зоне отчуждения! Новичок в зоне погибнет до первого выброса.
  8. Pavel2000 Нет необходимости прописывать логику, достаточно задать стори_ид: turn_off_underpass_lamps, turn_off, turn_on
  9. Поиск укрытий от выбросов Во время работы над модом Отступник, я задумался о том, что Главный Герой, а точнее его КПК, прекрасно знает о всех укрытиях от выбросов на всех локациях. Как мне кажется, такая ситуация не очень-то реалистична, ведь как правило, Зона отчуждения для персонажа игры или мода - это Терра инкогнито, а стало быть ему (и нам как игрокам) необходимо ее исследовать и узнавать о ней от более сведущих людей (НПС). Подумав так, я решил реализовать такую концепцию: 1. Главный Герой знает на каждой локации по два-три очевидных укрытия, например на известных базах дружественных/нейтральных НПС. 2. Главный Герой может в процессе исследования локации находить места пригодные для укрытия и отмечать их координаты в своем КПК. 3. Главный Герой может в процессе диалога с дружественным/нейтральным НПС выяснить координаты ближайшего не известного ему убежища. Итак, приступим:
  10. vladvexa188 Самое примитивное: function add_map_spot(actor, npc, p) local obj_id = get_story_object_id(p[1]) level.map_add_object_spot(obj_id, p[2], p[3]) end
  11. vladvexa188 Ничего не мешает добавить в любой момент любую метку на нужный объект: level.map_add_object_spot(id_объекта, имя_метки, описание_метки) И удалить: level.map_remove_object_spot(id_объекта, имя_метки)
  12. DimoNULL Call back (обратный вызов) - это когда движок вызывает определенную скриптовую функцию в ответ на определенное событие. Например на событие поднятие предмета ГГ вызывается функция actor_binder:on_item_take из bind_stalker.script. Space restrictor (Пространственный ограничитель) - специальный спавн-объект обладающий двумя основными функциями: 1. Запуск скриптовой логики 2. Ограничение игрового пространства для мобов.
  13. st_dialog_manager.xml Они разные бывают: есть в SGM 2.2, а есть оригинальный - travel_manager.script и его конфиг travel_manager.ltx
  14. Drive Секции secret в кастомдатах объектов в all.spawn. В них обязательно должен быть параметр name - имя тайника к которому объект привязан.
  15. sosiska23 Ну...ОК Объект [escape_medkit] в секции [secret] нет параметра name.
  16. Stinger Анимация камеры может быть в глобальных координатах: [sr_cutscene] global_cameffect = true Или в относительных: [sr_cutscene] global_cameffect = false По всей вероятности вы ее затерли своими предыдущими правками, откатите их. PS: В любом случает полный код функции abort я приводил выше.
  17. sosiska23 Наигрались? error_log(reason) раскомментируйте! Потому, что функция get_console():execute не предназначена для записи информации в лог, ее назначение - вызов команд в консоли, а потому попытка вызова ее с рандомной строкой закончиться сообщением: ! Unknown command: и далее символы до первого пробела