Darien 0 Опубликовано 26 Декабря 2009 Но тогда ещё один вопрос - тогда что ли все новые (модифицированные) стволы нужно туда прописывать? Да, иначе при дропе ствола на землю будет вылет. Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 27 Декабря 2009 Krevedko Всё что тебе надо, это gamedata\scripts\bind_stalker.script и в этой же папке свой файл с расширением .script. Если ты конечно собрался использовать такую систему Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 29 Декабря 2009 (изменено) Всех с Наступающим. У меня есть очень важный вопрос(для меня), от которого в общем зависит судьба моего мини мода. Проблема такая - я функцией выдаю актору случайное однотипное задание из таблицы. А проблема в том, что когда я записываю в таблицу названия однотипных тасков(например tm_eliminate_camp_1) из task_manager.ltx, то при старте ф-ии выскакивает такой баг: Expression : start_node && path Function : CXml::NavigateToNode File : E:\stalker\patch_1_0004\xrXMLParser\xrXMLParser.cpp Line : 97 Description : NavigateToNode failed in XML file Arguments : gameplay\game_tasks.xml Раньше успешно тестил на вырезанных задания(типа 'sar_warlab'), и вот перед самым релизом такой досадный баг :ny_sad: Помогите пожалуйста. Изменено 29 Декабря 2009 пользователем Darien Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 29 Декабря 2009 (изменено) lekzd Нет, не менял. И инклуды, записанные в нём, то же не менял. Изменено 29 Декабря 2009 пользователем Darien Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 29 Декабря 2009 (изменено) lekzd Проблема в том, что любое задание(пробовал около 15 штук), которое я хочу получить, вылетает с такой ошибкой. Кстати про однотипные задания упоминаются только в game_tasks_by_vendor.xml, и то там только названия и описания. Незаю чё делать :ny_mellow: Изменено 29 Декабря 2009 пользователем Darien Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 29 Декабря 2009 (изменено) malandrinus Вот часть(другая часть ненужна, там таймер): function f_1() local rnd_tsk_1 = {} --\ Список тасков для Сидоровича local rnd_1 = rnd_tsk_1[math.random(#rnd_tsk_1)] local new_task_1 = CGameTask() if db.actor:dont_has_info('info_1') then new_task_1:load(rnd) db.actor:give_task(new_task_1, 216*100000, false) db.actor:give_info_portion('info_1') tim_1 = time_global() else news_manager.send_tip(db.actor, 'У меня сейчас нету заданий для тебя.', 0.5, 'trader', 3600) end end Знающие люди подсказали парсить конфиг, секцию , но всё равно вылетает с таким же логом. Неужто придётся превращать все однотипные задание в "подобие неоднотипных"(всмысле писать их в task_level.xml)? Изменено 29 Декабря 2009 пользователем Darien Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 26 Февраля 2010 Lebedev Функция спавна выглядит так: function spawn() alife():create("объект",vector():set(x, y, z), level_vertex, game_vertex) end Вызываешь любым удобным для тебя способом. Как координаты получать думаю знаешь. Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 26 Февраля 2010 Lebedev db.actor:give_info_portion("info") -- метод выдачи поршня актору. Пишется прямо в ф-ю. Для НПС нужно в all.spawn, в файле way_level.ltx прописать path_look и walk_look. Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 27 Февраля 2010 Создаю новую шкалу. Столкнулся с такой проблемой, что не установить что длину, что ширину самой полоски - ругается, что SetWidth() или SetHeight() принимают нулевое значение. Вот код: local main_hud = get_hud() function my_hud() if main_hud:GetCustomStatic("hud_wpn") == nil or main_hud:GetCustomStatic("p_hud_wpn") == nil then main_hud:AddCustomStatic("hud_wpn", true) main_hud:AddCustomStatic("p_hud_wpn", true) end local hud = main_hud:GetCustomStatic("p_hud_wpn") if hud then hud:SetWidth(100) hud:SetHeight(10) end end Сам конфиг шкалы из ui_custom_msgs.xml выглядит так: <hud_wpn x="860" y="508" width="155" height="34"> <texture>ui_hud_shkala_health</texture> </hud_wpn> <p_hud_wpn x="33" y="5" width="110" height="10" horz="1" min="0" max="100" pos="0"> <progress> <texture>ui_hud_shk_health</texture> </progress> </p_hud_wpn> Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 27 Февраля 2010 (изменено) Gonarh Ты имеешь ввиду эту статью? Изменено 27 Февраля 2010 пользователем Darien Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 1 Марта 2010 Как "положить" худ (в данном случае текст) поверх другого худа? У меня текст как бы на заднем плане, и поэтому его не видно при наложении. _http://img8.imageshack.us/img8/7466/65491876.jpg Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 4 Марта 2010 Monnoroch Так ведь это написано в самом начале оф. справки по Луа "Lua является языком, чувствительным к регистру символов: and – ключевое слово, тогда как And и AND – два разных допустимых идентификатора." Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 14 Марта 2010 Starter Hex-редактором. Только далеко ты не уедешь. Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 26 Апреля 2010 Функция нэт спавн запускается при начале игры и переходе на другую локу. Добавлю, что при каждой загрузке игры тоже. Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 26 Апреля 2010 Vergas Ну функция save(packet) это метод класса object_binder, и вызывается при каждом сохранении. Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 1 Мая 2010 andrewrap npc:kill() , если НПС в онлайне. npc:on_death() , если в оффлайне. Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 1 Мая 2010 (изменено) как выглядит функция проверки смерти сталкера local npc = alife():object("имя_нпс") function check() if not npc:alive() then return true end end - проверит, мёртв ли НПС. Изменено 1 Мая 2010 пользователем Darien Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 15 Мая 2010 elfog Как уже было сказано, спавнить через create аномалию без правки пакетов нельзя. Спавни через функцию, которую выложил Kirag, с передачей параметров. Если непонятно, что передавать, то поясню - anom_name - название аномалии plosh - радиус аномалии position - позиция по x y z, передавать вот так - vector():set(x, y, z) level_vertex_id - левел вертекс game_vertex_id - гейм вертекс powers_a - мощность аномалии time_dangeros - это передавать необязательно, пользы от него я не заметил. Вот пример такого вызова: anoms.an_spawn("zone_witches_galantine", 4, vector():set(100, -20, 50) , 16437, 16, 1) Собсно, тоже самое я писал в теме КоП на предпоследней странице. Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 16 Мая 2010 (изменено) Kirag Небольшая поправочка. Аномалии zone_mincer_weak в ЗП нету. Я проверил все файлы аномалии, вот такая табличка существующих у меня вышла: local zones_mine = { "zone_mine_acidic", -- зелёный пар с кислотой "zone_buzz", -- тоже кислота "zone_mine_electric", -- электра, только видно хуже (как в 'Железном лесу') "zone_witches_galantine", -- электра из тч "zone_mine_gravitational_strong", -- ну тут понятно "zone_mine_thermal", -- жарка "zone_zharka_static" -- тоже самое } Также есть ещё и поля (4 вида), не атакуют, но придают эффект при приближении. Vano_Santuri Всё это конечно хорошо, только смысла от этих weak, average и strong в этом случае нету. Ведь сила аномалии и радиус и так указываются скриптом. Тфу блин, тема то по ТЧ. Kirag извиняюсь за ложную поправку. Изменено 16 Мая 2010 пользователем Darien Поделиться этим сообщением Ссылка на сообщение
Darien 0 Опубликовано 16 Мая 2010 elfog У тебя функция спавна называется spawn_zone_mincer_weak(), а ты вызываешь некую ui_anomalii_menu.spawner(). Поделиться этим сообщением Ссылка на сообщение