Byurrer 0 Опубликовано 31 Августа 2010 Поделиться Опубликовано 31 Августа 2010 (изменено) Мужики выручайте застрял по полной! Проблема такова, я сделал смарт-террейн по статье на инсайде, вот что у меня получаеться в коде: [logic@esc_bandits_smart_terrain_bandit1_walker] active = walker@esc_bandits_smart_terrain_bandit1 [walker@esc_bandits_smart_terrain_bandit1] path_walk = bandit1_walk danger = danger_condition@esc_bandits_smart_terrain def_state_moving1 = patrol def_state_moving2 = patrol def_state_moving3 = patrol meet = no_meet [logic@esc_bandits_smart_terrain_bandit1_kamp] active = kamp@esc_bandits_smart_terrain_bandit1 [kamp@esc_bandits_smart_terrain_bandit1] center_point = bandit_kamp path_walk = bandit_kamp_task [logic@esc_bandits_smart_terrain_bandit2_walker] active = walker@esc_bandits_smart_terrain_bandit2 [walker@esc_bandits_smart_terrain_bandit2] path_walk = bandit2_walk path_look = bandit2_look danger = danger_condition@esc_bandits_smart_terrain [logic@esc_bandits_smart_terrain_bandit2_sleeper] active = sleeper@esc_bandits_smart_terrain_bandit2 [sleeper@esc_bandits_smart_terrain_bandit2] path_main = bandit2_sleep wakeable = false [logic@esc_bandits_smart_terrain_bandit3_walker] active = walker@esc_bandits_smart_terrain_bandit3 [walker@esc_bandits_smart_terrain_bandit3] path_walk = bandit3_walk path_look = bandit3_look [danger_condition@esc_bandits_smart_terrain] ignore_distance_corpse = 0 ignore_distance = 0 [871]; сам смарт ; cse_abstract properties section_name = smart_terrain name = esc_bandits_smart_terrain position = -179.694000,-2.288012,-53.680004 direction = 0.062321275472641,0.00316426996141672,0.0140644172206521 ; cse_alife_object properties game_vertex_id = 68 distance = 4.19999980926514 level_vertex_id = 70925 object_flags = 0xffffffbe custom_data = <<END [smart_terrain] type = esc_bandits_smart_terrain capacity = 3 squad = 1 groups = 5 respawn = esc_respawn_inventory_box_0000 END ; cse_shape properties shapes = shape0 shape0:type = sphere shape0:offset = 0,0,0 shape0:radius = 4.5480751991272 ; cse_alife_space_restrictor properties restrictor_type = 3 ; se_smart_terrain properties [872];НПСы для смарта ; cse_abstract properties section_name = stalker name = esc_kancler position = -179.694000,-2.288012,-53.680004 direction = 0,0,0 ; cse_alife_trader_abstract properties money = 5000 character_profile = esc_senya ; cse_alife_object properties game_vertex_id = 68 distance = 0 level_vertex_id = 70925 object_flags = 0xffffffbf custom_data = <<END [smart_terrains] esc_bandits_smart_terrain = true END story_id = 10020 ; cse_visual properties visual_name = actors\soldier\soldier_beret_1 ; cse_alife_creature_abstract properties g_team = 0 g_squad = 1 g_group = 5 health = 1 dynamic_out_restrictions = dynamic_in_restrictions = upd:health = 1 upd:timestamp = 0 upd:creature_flags = 0 upd:position = -179.694000,-2.288012,-53.680004 upd:o_model = 0 upd:o_torso = 0.0280130300670862,0,0.999607563018799 upd:g_team = 0 upd:g_squad = 1 upd:g_group = 5 ; cse_alife_monster_abstract properties upd:next_game_vertex_id = 65535 upd:prev_game_vertex_id = 65535 upd:distance_from_point = 0 upd:distance_to_point = 0 ; cse_alife_human_abstract properties predicate5 = 1,2,2,1,2 predicate4 = 0,1,1,1 ; cse_ph_skeleton properties upd:start_dialog = ; se_stalker properties [873] ; cse_abstract properties section_name = stalker name = esc_kancler position = -179.694000,-2.288012,-53.680004 direction = 0,0,0 ; cse_alife_trader_abstract properties money = 5000 character_profile = esc_senya ; cse_alife_object properties game_vertex_id = 68 distance = 0 level_vertex_id = 70925 object_flags = 0xffffffbf custom_data = <<END [smart_terrains] esc_bandits_smart_terrain = true END story_id = 10021 ; cse_visual properties visual_name = actors\soldier\soldier_beret_1 ; cse_alife_creature_abstract properties g_team = 0 g_squad = 1 g_group = 5 health = 1 dynamic_out_restrictions = dynamic_in_restrictions = upd:health = 1 upd:timestamp = 0 upd:creature_flags = 0 upd:position = -179.694000,-2.288012,-53.680004 upd:o_model = 0 upd:o_torso = 0.0280130300670862,0,0.999607563018799 upd:g_team = 0 upd:g_squad = 1 upd:g_group = 5 ; cse_alife_monster_abstract properties upd:next_game_vertex_id = 65535 upd:prev_game_vertex_id = 65535 upd:distance_from_point = 0 upd:distance_to_point = 0 ; cse_alife_human_abstract properties predicate5 = 1,2,2,1,2 predicate4 = 0,1,1,1 ; cse_ph_skeleton properties upd:start_dialog = ; se_stalker properties [874] ; cse_abstract properties section_name = stalker name = esc_kancler position = -179.694000,-2.288012,-53.680004 direction = 0,0,0 ; cse_alife_trader_abstract properties money = 5000 character_profile = esc_senya ; cse_alife_object properties game_vertex_id = 68 distance = 0 level_vertex_id = 70925 object_flags = 0xffffffbf custom_data = <<END [smart_terrains] esc_bandits_smart_terrain = true END story_id = 10022 ; cse_visual properties visual_name = actors\soldier\soldier_beret_1 ; cse_alife_creature_abstract properties g_team = 0 g_squad = 1 g_group = 5 health = 1 dynamic_out_restrictions = dynamic_in_restrictions = upd:health = 1 upd:timestamp = 0 upd:creature_flags = 0 upd:position = -179.694000,-2.288012,-53.680004 upd:o_model = 0 upd:o_torso = 0.0280130300670862,0,0.999607563018799 upd:g_team = 0 upd:g_squad = 1 upd:g_group = 5 ; cse_alife_monster_abstract properties upd:next_game_vertex_id = 65535 upd:prev_game_vertex_id = 65535 upd:distance_from_point = 0 upd:distance_to_point = 0 ; cse_alife_human_abstract properties predicate5 = 1,2,2,1,2 predicate4 = 0,1,1,1 ; cse_ph_skeleton properties upd:start_dialog = ; se_stalker properties [bandit1_walk] points = p0,p1 p0:name = name00 p0:position = -175.667084,-4.136031,-47.569859 p0:game_vertex_id = 71 p0:level_vertex_id = 74841 p0:links = p1(1) p1:name = name01 p1:position = -168.147858,-4.774074,-45.499973 p1:game_vertex_id = 68 p1:level_vertex_id = 65072 p1:links = p0(1) [bandit_kamp] points = p0 p0:name = name00 p0:position = -179.694000,-2.288012,-53.680004 p0:game_vertex_id = 68 p0:level_vertex_id = 70925 [bandit_kamp_task] points = p0 p0:name = name00 p0:position = -175.667084,-4.136031,-47.569859 p0:game_vertex_id = 71 p0:level_vertex_id = 74841 [bandit2_walk] points = p0,p1 p0:name = name00 p0:position = -175.667084,-4.136031,-47.569859 p0:game_vertex_id = 71 p0:level_vertex_id = 74841 p0:links = p1(1) p1:name = name01 p1:position = -180.488449,-1.720561,-3-62.376045 p1:game_vertex_id = 68 p1:level_vertex_id = 70256 p1:links = p0(1) [bandit2_look] points = p0 p0:name = name00 p0:position = -179.694000,-2.288012,-53.680004 p0:game_vertex_id = 68 p0:level_vertex_id = 70925 [bandit2_sleep] points = p0 p0:name = name00 p0:position = -180.488449,-1.720561,-3-62.376045 p0:game_vertex_id = 68 p0:level_vertex_id = 70256 [bandit3_walk] points = p0,p1 p0:name = name00 p0:position = -180.488449,-1.720561,-3-62.376045 p0:game_vertex_id = 68 p0:level_vertex_id = 70256 p0:links = p1(1) p1:name = name01 p1:position = -175.667084,-4.136031,-47.569859 p1:game_vertex_id = 71 p1:level_vertex_id = 74841 p1:links = p0(1) [bandit3_look] points = p0 p0:name = name00 p0:position = -179.694000,-2.288012,-53.680004 p0:game_vertex_id = 68 p0:level_vertex_id = 70925 function load_job(sj, gname, type, squad, groups) ... if type == "esc_bandits_smart_terrain" then t = {section = "logic@esc_bandits_smart_terrain_bandit1_walker", idle = 0, timeout = 0, prior = 100, state = {0}, squad = squad, group = groups[1], position_threshold = 100, online = true, in_rest = "", out_rest = ""} table.insert(sj, t) t = {section = "logic@esc_bandits_smart_terrain_bandit1_kamp", idle = 0, timeout = 0, prior = 100, state = {1},squad = squad, group = groups[1], position_threshold = 100, online = true, in_rest = "", out_rest = ""} table.insert(sj, t) t = {section = "logic@esc_bandits_smart_terrain_bandit2_walker", idle = 0, prior = 5, state = {0}, squad = squad, group = groups[1], in_rest = "", out_rest = ""} table.insert(sj, t) t = {section = "logic@esc_bandits_smart_terrain_bandit2_sleeper", idle = 0, prior = 5, state = {1}, squad = squad, group = groups[1], in_rest = "", out_rest = ""} table.insert(sj, t) t = {section = "logic@esc_bandits_smart_terrain_bandit3_walker", idle = 0, prior = 5, state = {0, 1}, squad = squad, group = groups[1], in_rest = "", out_rest = ""} table.insert(sj, t) end ... ... function load_states(gname, type) ... if type == "esc_bandits_smart_terrain" then return function(gulag) if not db.actor then return gulag.state end if level.get_time_hours() >= 5 and level.get_time_hours() <= 22 then return 0 -- переключает всех мутантов/нпс на дневную работу else return 1 -- ереключает всех мутантов/нпс на ночную работу end end end ... ... function checkStalker(npc_community, gulag_type, npc_rank, se_obj) if gulag_type == "esc_bandits_smart_terrain" then return npc_community == "dolg" end ... И НПС спавняться прям на месте смарта и стоят а потом уходят в сторону лагеря новичков и вылет с логм: Expression : fatal error Function : CScriptEngine::lua_error File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp Line : 73 Description : <no expression> Arguments : LUA error: c:\s.t.a.l.k.e.r\gamedata\scripts\state_mgr.script:145: C stack overflow Я понял что эта ошибка значит переполнение стека в скрипте (указанном) на 145 строке, как я понял подробнее это НПС переходят в смарт и не могут найти там работу либо смарт принимает их но число выше указанного (кол-ва людей)! И не могут они никак принять это смарт либо он их, помогите пожалуйста разобраться мне с этой проблемой! Изменено 31 Августа 2010 пользователем Byurrer Ссылка на комментарий
Scarabay 98 Опубликовано 1 Сентября 2010 Поделиться Опубликовано 1 Сентября 2010 Люди, можно ли заспавнить источник света скриптом? Чтобы получилось что-то типа бьющихся лампочек, но не привязаных к чему-либо. Мой YouTube-канал Ссылка на комментарий
RayTwitty 492 Опубликовано 1 Сентября 2010 Поделиться Опубликовано 1 Сентября 2010 (изменено) Может быть детский вопрос, для тех кто хорошо знает скрипты. Суть вопроса. Имеется функция: local fov = device().fov local wpn if fov < 35 and xr_logic.pstor_retrieve(db.actor, "use_scope", 0) == 0 then wpn = db.actor:item_in_slot(db.actor:active_slot()) if wpn and wpn:section() == "wpn_crossbow" then level.add_pp_effector("bast.ppe", 1034, true) get_console():execute ("r2_sun_lumscale_amb 3") get_console():execute ("r2_mblur 0.6") xr_logic.pstor_store(db.actor, "use_scope", 1) wpn_crossbow - это пушка. Мне надо в этой строке сделать так чтобы было ДВЕ пушки. пробовал сделать так: if wpn and wpn:section() == "wpn_crossbow" and "wpn_arm_binoc" then Но ничего не вышло. Как добавить в функцию вторую пушку? Kirag, сработало! Большое спасибо! Изменено 1 Сентября 2010 пользователем Shadows Ссылка на комментарий
Kirag 39 Опубликовано 1 Сентября 2010 Поделиться Опубликовано 1 Сентября 2010 Shadows, if wpn and (wpn:section() == "wpn_crossbow" or wpn:section() == "wpn_arm_binoc") then Мои работы: Ночные прицелы + смена ножевого слота AI вертолетов + ПЗРК Soul Cube Работаю только с ТЧ. С ковырянием ЧН/ЗП не связываюсь ни в какой форме. Совсем. Ссылка на комментарий
antreg 178 Опубликовано 2 Сентября 2010 Поделиться Опубликовано 2 Сентября 2010 (изменено) Добрый день! Вопрос по вэйпойнтам walker_а: Есть walker, который перемещается в точку №1, в которой отрабатывается анимация a=binocular (сотрит 5 секунд в бинокль в заданную точку look), затем он бежит по маршруту, состоящему из 3 точек, две просто пробегает, а в третьей точке ещё раз отыгрывается анимация a=binocular. Затем, продолжает свой маршрут ещё по трём точкам, две из который просто пробегает, а в третьей останавливается и смотрит в заданную точку look - это конец его маршрута, там он и должен остаться. Вот вэйпойнты данной схемы движения НПС: [lesnik_look] points = p0,p1,p2 p0:name = wp00|a=binocular p0:flags = 0x1 p0:position = -165.067993164063,1.29299998283386,-54.8950004577637 p0:game_vertex_id = 3033 p0:level_vertex_id = 171004 p1:name = wp01|a=binocular p1:flags = 0x2 p1:position = 132.341003417969,1.22800004482269,-127.251998901367 p1:game_vertex_id = 3085 p1:level_vertex_id = 472831 p2:name = wp02 p2:flags = 0x3 p2:position = 132.341003417969,1.22800004482269,-127.251998901367 p2:game_vertex_id = 3085 p2:level_vertex_id = 472831 [lesnik_walk] points = p0,p1,p2,p3,p4,p5,p6 p0:name = wp00|a=run p0:flags = 0x1 p0:position = -186.158004760742,0.848999977111816,-76.2170028686523 p0:game_vertex_id = 3033 p0:level_vertex_id = 149064 p0:links = p1(1) p1:name = wp01|a=run p1:position = -165.067993164063,1.29299998283386,-54.8950004577637 p1:game_vertex_id = 3033 p1:level_vertex_id = 171004 p1:links = p2(1) p2:name = wp02|a=run p2:position = -145.369003295898,2.41100001335144,-40.298999786377 p2:game_vertex_id = 3033 p2:level_vertex_id = 191929 p2:links = p3(1) p3:name = wp03|a=run p3:flags = 0x2 p3:position = -116.537002563477,1.24600005149841,-4.30299997329712 p3:game_vertex_id = 3046 p3:level_vertex_id = 224003 p3:links = p4(1) p4:name = wp04|a=run p4:position = -96.9739990234375,1.08000004291534,-1.39699995517731 p4:game_vertex_id = 3046 p4:level_vertex_id = 246426 p4:links = p5(1) p5:name = wp05|a=run p5:position = -26.0919990539551,1.08000004291534,54.3880004882813 p5:game_vertex_id = 3065 p5:level_vertex_id = 327759 p5:links = p6(1) p6:name = wp06|a=run p6:flags = 0x3 p6:position = 48.5219993591309,1.06900000572205,-28.6609992980957 p6:game_vertex_id = 3076 p6:level_vertex_id = 405556 Такая схема работает, но случается вылет, если во время пути сохраниться, а потом попытаться загрузить сохранение. В логе указывается на пути этого НПС, он как бы "теряется" при загрузке сэйва. Это первое. И второе, если НПС с такой схемой движения оказывается в оффлайне (ГГ от него уходит на расстояние алайфа), а потом снова переходит в онлайн при приближении актёра, то этот НПС заново отрабатывает весь путь от первой точки, ну, по крайней мере он оказывается в процессе перемещения к конечной точке. Понятно, что можно в логике НПС перевести его под [remark] или вначале под [remark], а потом опять под логику [walker], но с двумя новыми точками walk1 и look1 с теми же координатами, что были у последних точек walk и look предыдущего пути. Тогда этот НПС будет стоять на месте точно. Но хочется сделать более грамотно, в одной схеме. Вопросы такие: 1) Вопрос №1: В конечной точке пути [lesnik_walk] (wp6 которая) прописана анимка |a=run. Возможно, это не совсем корректно. Что должно быть там? И ещё: в некоторых примерах путей "волкеров" в конечной точке прописаны такие анимки: wp06|sig=final или wp06|sig=return или wp06|arrive Что это за анимки и как они работают на финальной точке и на что влияют? Просто разницы большой не наблюдается. 2) Вопрос №2: Точек walk 7 штук, а точек look три. Эти три точки look флажками привязаны к трём точкам walk, которые не друг за другом идут. Надо ли в этом случае "связывать" точки look друг с другом линком, так же, как связаны точки walk? Например, после первой и второй точки look будет так: [lesnik_look] points = p0,p1,p2 p0:name = wp00|a=binocular p0:flags = 0x1 p0:position = -165.067993164063,1.29299998283386,-54.8950004577637 p0:game_vertex_id = 3033 p0:level_vertex_id = 171004 p0:links = p1(1) p1:name = wp01|a=binocular p1:flags = 0x12 p1:position = 132.341003417969,1.22800004482269,-127.251998901367 p1:game_vertex_id = 3085 p1:level_vertex_id = 472831 p1:links = p2(1) p2:name = wp02 p2:flags = 0x22 p2:position = 132.341003417969,1.22800004482269,-127.251998901367 p2:game_vertex_id = 3085 p2:level_vertex_id = 472831 Предполагаю, что связывать в этом случае точки look не надо, но правильно ли это? 3) Вопрос №3: в точках walk флажки стоят только у тех точек, которые привязаны к точкам look, в которых отыгрывается анимация или в которой остановка и направление взгляда задаётся. У остальных точек walk pх:flags = не проставлены. Это правильно? Или же всё-таки надо проставлять флажки (с последовательными номерами) у всех точек walk? Информации по таким тонкостям в сети практически нет, поэтому, думаю многим такая схема движения может быть интересна. Изменено 2 Сентября 2010 пользователем antreg "Тайные Тропы 2" техподдержка "Ф.О.Т.О.Г.Р.А.Ф" техподдержка Ссылка на комментарий
Tonny 4 Опубликовано 2 Сентября 2010 Поделиться Опубликовано 2 Сентября 2010 Подскажите, как в обьекте типа "оружие" (isWeapon(obj) == true) узнать список установленных у техников апгрейдов? Не предустановленных в конфигах, а именно в процессе игры? Ссылка на комментарий
Push85 4 Опубликовано 2 Сентября 2010 Поделиться Опубликовано 2 Сентября 2010 Tonny, через нет пакет Возможно всё, ну или почти всё. Ссылка на комментарий
Kolmogor 5 Опубликовано 2 Сентября 2010 Поделиться Опубликовано 2 Сентября 2010 (изменено) antreg, В шапке даны ссылки на цикл статей. Собственно ответы на твои вопросы там есть. 1) Вопрос №1: В конечной точке пути [lesnik_walk] (wp6 которая) прописана анимка |a=run. Возможно, это не совсем корректно. Что должно быть там? И ещё: в некоторых примерах путей "волкеров" в конечной точке прописаны такие анимки: wp06|sig=final или wp06|sig=return или wp06|arrive Что это за анимки и как они работают на финальной точке и на что влияют? Просто разницы большой не наблюдается. Это не анимки, а сигналы. По ним можно переключать логику. Подробней здесь 2) Вопрос №2: Точек walk 7 штук, а точек look три. Эти три точки look флажками привязаны к трём точкам walk, которые не друг за другом идут. Надо ли в этом случае "связывать" точки look друг с другом линком, так же, как связаны точки walk? Точки path_look связывать не надо - связи в этих путях игнорируются. 3) Вопрос №3: в точках walk флажки стоят только у тех точек, которые привязаны к точкам look, в которых отыгрывается анимация или в которой остановка и направление взгляда задаётся. У остальных точек walk pх:flags = не проставлены. Это правильно? Или же всё-таки надо проставлять флажки (с последовательными номерами) у всех точек walk? Информации по таким тонкостям в сети практически нет, поэтому, думаю многим такая схема движения может быть интересна. Этими флажками связываются точки path_walk и path_look, то есть в точке path_walk c заданным флажом НПЦ посмотрит в точку из path_look с таким же флажком. Цитат из доки по ссылке: В точках path_walk, которым соответствуют точки пути path_look (стоят одинаковые флажки) персонаж останавливается и смотрит в определенную точку, при этом отыгрывая (или не отыгрывая) определенную анимацию. Byurrer, возможно ошибка в function checkStalker(npc_community, gulag_type, npc_rank, se_obj) if gulag_type == "esc_bandits_smart_terrain" then return npc_community == "dolg" end ... Здесь написано что твоему смарт-террейну подходят только долговцы, а у тебя насколько я понял из алл.спавна там сталкеры. Напиши так: function checkStalker(npc_community, gulag_type, npc_rank, se_obj) if gulag_type == "esc_bandits_smart_terrain" then return npc_community == "stalker" end ... Изменено 2 Сентября 2010 пользователем Kolmogor Ссылка на комментарий
Real Wolf 34 Опубликовано 2 Сентября 2010 Поделиться Опубликовано 2 Сентября 2010 (изменено) Просьба объяснить цикл(как он работает, откуда берутся значения): for k,v in pairs(self.aLauncher) Спасибо, но об этом я как-то не подумал Изменено 2 Сентября 2010 пользователем Real Wolf Ссылка на комментарий
Malandrinus 615 Опубликовано 2 Сентября 2010 Поделиться Опубликовано 2 Сентября 2010 Real Wolf, Функция pairs, возвращает итератор - функцию, которая возвращает два значения на каждый вызов: очередные ключ и значение из указанной таблицы. При каждой итерации оператор for вызывает этот итератор и присваивает то, что он возвращает, переменным k и v. Когда значения заканчиваются, итератор возвращает nil и цикл заканчивается. P.S.: А вообще слабо почитать мануал Lua? Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Unnamed Black Wolf 4 Опубликовано 2 Сентября 2010 Поделиться Опубликовано 2 Сентября 2010 malandrinus, готов поспорить, слабо.... А некоторым Vito$, даже выше слабо своего поста глянуть.... Не то чтоб там про поиск речь. Scarabay, ещё один.. Возьми скрипты арены, там есть такое, только копайся.... Shadows, ещё один кому слабо книги по Луа полистать..... P.S. Вопрос а модеры тоже школьники, ушли учится? то с первым сентябрем такие проблемы стали..... Ссылка на комментарий
Scarabay 98 Опубликовано 2 Сентября 2010 Поделиться Опубликовано 2 Сентября 2010 Unnamed Black Wolf, ты не умничай давай. Со спавном света столкнулся впервые, вот и спрашиваю. Еще такой вопрос: как сделать чтобы гг не двигался, но мог крутить камерой и стрелять? Мой YouTube-канал Ссылка на комментарий
Malandrinus 615 Опубликовано 2 Сентября 2010 Поделиться Опубликовано 2 Сентября 2010 Scarabay, телепортируй актора постоянно (скорее всего на каждый апдейт, если этого не хватит - поставь fastcall) в одну и ту-же точку. В качестве лирического дополнения. Так можно даже летать, надо только наладить управление скоростью и высотой. Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Stalk15 27 Опубликовано 3 Сентября 2010 Поделиться Опубликовано 3 Сентября 2010 (изменено) Scarabay как сделать чтобы гг не двигался, но мог крутить камерой и стрелять? Так можно же просто отключить на время воод с клавиатуры и мыши. ---------------------------------------------------- malandrinus А ну да.Не внимательно вопрос проячел. Изменено 3 Сентября 2010 пользователем Stalk15 Ссылка на комментарий
Byurrer 0 Опубликовано 3 Сентября 2010 Поделиться Опубликовано 3 Сентября 2010 Kolmogor спасибо конечно, но я уж разобрался ... тупанул и задавал обычные вейпоинты, указывая поинты путей ... а надо было имя_смарта..поинт! А долговцев я прописал в комьюнити профилей созданных НПС! Ссылка на комментарий
Malandrinus 615 Опубликовано 3 Сентября 2010 Поделиться Опубликовано 3 Сентября 2010 Stalk15, тогда не сможет "крутить камерой и стрелять" Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
iDreD 5 Опубликовано 3 Сентября 2010 Поделиться Опубликовано 3 Сентября 2010 Люди, можно ли заспавнить источник света скриптом?Не совсем уверен, но function spawn_svet() alife():create("svet",vector():set(4.5661993026733,4.5522308349609,36.743591308594),953834,19) end Где svet то секция в спавн_секшенс.лтх, обращающаяся к секции из system.ltx например lights_signal_light. [svet]:lights_signal_light visual = путь\до\твоего\визуала Извращение конечно, но попробовать стоит). Работа в Sculptris 3D [туториал] Страничка на Проза.ру Ссылка на комментарий
Rolan 22 Опубликовано 10 Сентября 2010 Поделиться Опубликовано 10 Сентября 2010 (изменено) Всем привет! Такая проблемка... У меня в диалоге NPC и ГГ должны дёрныть по бутылочке , мне друг посоветовал сделать таким скриптом function buhaem() local item = db.actor:object("vodka") if vodka then db.actor:eat(item) end end И сказал вставь в диалог,что я и сделал <phrase id="10"> <text>Давай брат,помяним.</text> <give_info>buhaem</give_info> <action>pal.buhaem</action> <next>11</next> </phrase> Но сей скрипт не работает,тоесть ГГ не пьянеет,даже если есть водка в рюкзаке. Что делаю не правильно? Изменено 10 Сентября 2010 пользователем SDR-team Ссылка на комментарий
Министр 3 Опубликовано 10 Сентября 2010 Поделиться Опубликовано 10 Сентября 2010 SDR-team, усл-ие в своей ф-ии, то прочитай. Там ты проверяешь некое vodka... ...а что это? Ссылка на комментарий
Kolmogor 5 Опубликовано 10 Сентября 2010 Поделиться Опубликовано 10 Сентября 2010 Министр, ) жестоко себя ведешь SDR-team, попробуй так: function buhaem() local item = db.actor:object("vodka") if item then db.actor:eat(item) end end надеюсь у тебя хоть скрипт, где эта функция лежит, называется pal.script? Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти