Labadal 68 Опубликовано 16 Декабря 2020 Добрый день В секции с бронёй есть такие строки: additional_inventory_weight = 0 additional_inventory_weight2 = 0 Скажите, можно как-то присвоить им значение скриптом? очень нужно, спасибо God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 6 Января 2021 Помогите с проблемой (ТЧ) у меня есть локальная переменная text, в которой содержится текст Как его сравнить с текстом, который находится в <string id="test"> <text>текст, с которым нужно сравнить</text> </string> что-то типа if text == *тут ссылка на string id* then как сослаться на этот текст? Я, конечно, могу сравнивать напрямую If text == "test text" then Но это работает только для английского текста, русский текст, написанный в скрипте он переводит в какую-то нечитаемую ересь God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 25 Июля 2021 Подскажите, как добавить новую кнопку в пда? Делаю по аналогии с кнопкой "центр на меченом", но кнопки не появляется. Пробовал удалить секцию кнопки "центр на меченом", но вылета не было, просто кнопка не появилась. Значит - её нигде не требуют. Но моя кнопка даже с готовой секцией не появляется. Неужели это тоже движковая тема? Всем спасибо God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 2 Августа 2021 Доброго времени суток, подскажите функцию для открытия окна торговли, для ТЧ. (чтобы торговля, к примеру, открывалась после фразы "Имею желание поторговаться") (оригинальная function trade_init(seller, buyer) - работать отказывается) God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 13 Августа 2021 (изменено) Всем привет Как узнать имя нпс, кто его убил и чем? на выходе хочу получить что-то типа "вы убили волка ножом" Изменено 13 Августа 2021 пользователем Labadal God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 14 Августа 2021 Как определить от какого оружия умер нпс? Конструкция, типа: function name() local wpn = db.actor:active_item() if wpn and wpn:section()=="grenade_f1" then return true else return false end end Не очень подходит, я могу кинуть гранату и достать другое оружие, тогда функция вернёт false, даже, если нпс умер от гранаты актора. God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 14 Августа 2021 (изменено) @AndreySol так ведь в ней содержится объект, который убил, т.е. актор, а не оружие, из которого он это сделал upd: что-то я не проснулся ещё. who:active_item():section() В общем, это возращает то, что в руках на момент смерти нпс, что неподходит, ибо если кинуть гранату и взять в руки нож, вернет нож, а не гранату, которой был убит нпс. Копаем дальше, интересно Изменено 14 Августа 2021 пользователем Labadal God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 14 Августа 2021 @Zander_driver С первым пунктом более менее разобрался, а как получить тип хита, от которого умер нпс? upd: такое чувство, что решение где-то близко, а я его не вижу. Вдвойне интересно God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 15 Августа 2021 (изменено) @AndreySol А хит оружия ,которое в руках, без правки движка получить можно? upd: да, можно Кажется, с ума сойду быстрее, чем определю как отследить тип хита, от которого умер нпс Пойду дальше пытаться, будут идеи - не стесняйтесь, пишите:3 Изменено 15 Августа 2021 пользователем Labadal God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 16 Августа 2021 @_Sk8_AsTeR_ емнип, секции таких персонажей в файлах character_desc_локация, начинаются с "sim_", попробуй начать поиски отсюда God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 16 Августа 2021 @UriZzz function motivator_binder:before_hit_callback(p_s_hit, p_ignore_flags) А вот как с этим работать - ума не приложу, пытаюсь по маленьку, но безрезультатно. Нашёл в тырнетах где данный калбек используется, но там все на ОГСЕ разрабатывается, чую - что должен был способ на чистом ХЕ узнать тип хита, но тут я нуб) Когда нибудь да разберусь) God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 16 Августа 2021 @UriZzz в тех скриптах, используется то, чего нет в ЕХ, что печально) God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 16 Августа 2021 (изменено) @UriZzz например: function motivator_binder:before_hit_callback( p_s_hit, p_ignore_flags ) self.last_hit_data = read_hit_data( p_s_hit ) read_hit_data() - из ogse.dll @Zander_driver в том то и дело, что в огсе он вытаскивается тем, чего нет в ХЕ https://github.com/dsh2dsh/op2ogse/blob/3f7514f804eaf1dc875cc3ce8513d8537dd53bc2/gamedata/scripts/xr_motivator.script#L673 Изменено 16 Августа 2021 пользователем Labadal God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 19 Августа 2021 @_Sk8_AsTeR_ По идее, в алл спавне в секции нпс пишешь [smart_terrains] имя_гулага = true END и в случае свободных мест в том же гулаге, нпс=а должно в него затянуть God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 22 Августа 2021 (изменено) Такой вопрос, вешаю на худ имя нпс: hud:AddCustomStatic("hud_name"):wnd():SetTextST(victim:character_name()) и тут же вешаю ещё один худ hud:AddCustomStatic("hud_static") -- это картинка. эти два худа hud_name и hud_static конечно же прописаны в ui_custom_msgs, и координаты им прописаны. но вот в чём проблема, мне нужно, чтобы выводилось "имя нпс + рядом картинка", а имя нпс может быть разных размеров, и фиксированные координаты не подойдут. Может быть, вешая худ, можно указать его координаты? чтобы при любой длине имени нпс картинка была рядом с ним? Спасибо Изменено 22 Августа 2021 пользователем Labadal God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 22 Августа 2021 @AndreySol нет, нужно именно имя + картинка, причем в зависимости от условий картинка либо будет, либо нет, а имя будет всегда. God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 10 Ноября 2021 (изменено) 22 часа назад, Colder сказал: Возможно ли скриптово отследить удар ножом (ТЧ) Попробуй просто отследить, что на момент получения целью урона, в руках у гг был нож. local wpn = db.actor:active_item() if wpn and wpn:section()=="wpn_knife" then *твои действия* end Вопрос касательно ТЧ. Есть у меня переменная, по умолчанию объявлена как local energia = 10 Есть предмет, использующий энергию - при каждом использовании тратится одна, то есть, без подзарядки у меня всего 10 использований. Но как только я делаю сейв-лоад, переменная снова становится равной 10, что даёт ещё 10 использований. Как "сохранить" текущее значение переменной? Спасибо Изменено 10 Ноября 2021 пользователем Labadal God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 10 Ноября 2021 10 минут назад, ted.80 сказал: Очень не правильно - что-то подобное пробовал очень давно - поясню: если выстрелить из рпг или подствольника ну или гренку кинуть, и переключиться на нож - то твой скрипт покажет что урон нанесён ножом, Увы даже на костыль не тянет Я так упавшую звезду проходил, кидал в нпс гранатами и переключался на метательные ножи. 1 1 God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 10 Ноября 2021 (изменено) 1 час назад, ted.80 сказал: "Молодец" - что ещё сказать, только задавали вопрос ни как налюбить игру - а как отловить именно удар ножом так что твой совет весьма сомнителен Окей, вот тебе подробный "туториал" как это сделать. 1. подключить X-ray Extensions 2. подключить OGSE.dll 3. подключить каллбек before_hit 4. function motivator_binder:before_hit_callback(p_s_hit, p_ignore_flags) self.last_hit_data = read_hit_data(p_s_hit) local who = level.object_by_id(self.last_hit_data.who_id) if who:id() == db.actor:id() then local wpn = level.object_by_id(self.last_hit_data.weapon_id) weapon_kill = wpn:section() end end 5. Теперь переменная weapon_kill хранит себе название оружия, которым был убит нпс. То есть в ней всё равно будет храниться, допустим, grenade_f1, даже если ты кинул гранату и быстро достал нож. 6. а дальше все просто if weapon_kill=="wpn_knife" then *что-то делается* end 7. В принципе, всё довольно просто. А используя оригинальные возможности, лучше тех вариантов, которые предложил я и товарищ Norman Eisenherz не придумаешь. Изменено 10 Ноября 2021 пользователем Labadal 1 God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение
Labadal 68 Опубликовано 10 Ноября 2021 @ted.80 чет туплю жестко, сплошные вылеты ловлю. где вставить этот кусок? Можно ли переменную сделать глобальной? (Для использования в других скриптах небоходимо) God save Hatsune Miku! Поделиться этим сообщением Ссылка на сообщение