EGER.OVERKILL WF 3 Опубликовано 10 Февраля 2022 (изменено) Доброго времени суток, господа. Благодарю за внимание, и попрошу сильно не пинать, (Заранее извиняюсь за возможный оффтоп, если уже было(а я не знал)) Как сделать такую картину: ГГ открывает инвентарь, и убирает все оружие (по открытию инвентаря, все оружие в активных слотах, убирается), Потому как, у меня пока получились только: а) вылеты б)все что используется по кнопке действия - стало неиспользуемым (нельзя говорить, открывать двери и тд.) Тени Чернобыля, Версия игры 1.0004 Сделал так: Скрытый текст Создал отдельный файл и вписал ф-ию: function inv() if active_slot~=inventory_slots.NO_ACT_SLOT then local gg = db.actor local item = gg:item_in_slot(1),(2),(3),(4),(5) then if item and item:section() == "item" then db.actor:hide_weapon() end end И две другие ниже (из фикса оп.2.1 "фикс - убирания оружия при открытии инвентаря") (убрал комментарии) -- Апдейт прятание оружия игрока во время диалога if weapon_hide == true or self.object:is_talking() then if self.weapon_hide == false then self.object:hide_weapon() self.weapon_hide = true end else if self.weapon_hide == true then self.object:restore_weapon() self.weapon_hide = false end end --function start() hide_and_disable=function() local active_slot=db.actor:active_slot() keyvals():set("active_weapon_slot",active_slot) --ключ в контейнере по умолчанию if active_slot~=inventory_slots.NO_ACT_SLOT then db.actor:activate_slot(inventory_slots.NO_ACT_SLOT,true) --спрячем с анимацией активное оружие end db.actor:hide_weapon() --запретим использование слотов end show_and_enable=function() db.actor:clear_blocked_slots() --разрешим использование слотов local stored_slot=keyvals():get("active_weapon_slot",inventory_slots.NO_ACT_SLOT) --ключ в контейнере по умолчанию if stored_slot~=inventory_slots.NO_ACT_SLOT then db.actor:activate_slot(stored_slot,true) --активируем с анимацией сохраненный слот end end need_update = true end При запуске любой из них , под любым предлогом и условием, либо вылет, либо не рабочие двери/диалоги (Все что юзается на клавишу) Подключал к bind_stalker.script к actor:reinit , в начале. Поправьте меня пожалуйста, потому что эффект "третьей руки", хочется пофиксить у себя в сборочке. Поправьте/направьте, подскажите как, где и с чем это едят, желательно ткните носом. Поиск по форуму, мне мало что дал, может я карлан и мало что знаю (Не там ищу). Изменено 10 Февраля 2022 пользователем EGER.OVERKILL WF Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 10 Февраля 2022 2 часа назад, mole venomous сказал: В файле inventory.script: Показать -- Открытие/закрытие инвентаря function on_inventory_info(info_id) if info_id == "ui_inventory" then inventory_open = true if debug == true then get_console():execute("inventory_open") end bind_stalker.hide_weapon() -- убираем ствол elseif info_id == "ui_inventory_hide" then inventory_open = false need_update = true if debug == true then get_console():execute("inventory_close") end bind_stalker.restore_weapon() end end Спасибо, а подскажи пожалуйста, где его искать, потому что я по путям config/scripts , и scripts не нашел ничего похожего. Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 10 Февраля 2022 1 час назад, mole venomous сказал: Если там нет, распакуй последние архивы gamedata.db... или обратись сюда. Распаковал, к сожалению, такого файла у меня нет. Спасибо, надеюсь найду то что ищу. Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 10 Февраля 2022 50 минут назад, ted.80 сказал: а по точнее можно про этот файл? Я просто надеюсь, что быть может он подумал из-за названии функции (fuction inv), так и обозвал этот файл. (потому как у меня файл в котором это все написано, называется по другому) Но тем не менее, тогда наклевывается следующий: к чему подключать это в bind_stalker.script (если это вообще, к нему отношение имеет). 3 минуты назад, mole venomous сказал: Расширение .script Я же указал. А это точно тч? Может версия другая, ну потому как я на голой игре, и в распакованных .db архивах , его не вижу (Аналогично по пути gamedata/config/scripts) , а по запросу в гугле, выдает вообще картинки, с инвентарем ЗП 11 минут назад, mole venomous сказал: Значит, его нет в оригинале. Тогда, у меня предсказуемо, выходит еще один вопрос: А где мне его тогда взять, и к чему подключать? Какой-то непонятный совет получился. Скажи хоть откуда ты его взял-то. 1 Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 10 Февраля 2022 8 минут назад, mole venomous сказал: поправь его под себя, если надо inventory Признателен, за файл и за пояснения. Надеюсь если я оставлю только все что связанно с инвентарем, приколов не будет. @mole venomous Не-а, Не фурычит. И с поршнями инвентаря игрался , взятые с gameplay/info_portions Скрытый текст <info_portion id="ui_trade"> <disable>ui_trade_hide</disable> </info_portion> <info_portion id="ui_trade_hide"> <disable>ui_trade</disable> </info_portion> И к коллбекам подключил , без вылетов, но ничего не происходит. Как ни прыгал, ни тужился, ничего , абсолютно. 1 час назад, EGER.OVERKILL WF сказал: Как ни прыгал, ни тужился, ничего , абсолютно. Исключая возможность своей болезни "кривых рук", Проверял только что на своем квесте, при/после взятия квеста пушку достать нельзя. При/после сдачи, пушку снова можно доставать. Что-то либо с кодом ф-ции, либо в подключении. 1 Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 11 Февраля 2022 3 часа назад, ted.80 сказал: пользуйся Спасибо огромное. Работает! 1 Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 16 Февраля 2022 Добрый вечер, Вопрос такой В большой сборке маленьких модификаций, присутствует "Встречают по одежке", лично мне это мешает и я ищу способ ее отключить. Прошу помощи, подскажите. Если оффтоп , направьте. Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 18 Февраля 2022 17.02.2022 в 02:33, EGER.OVERKILL WF сказал: Добрый вечер, Вопрос такой В большой сборке маленьких модификаций, присутствует "Встречают по одежке", лично мне это мешает и я ищу способ ее отключить. Прошу помощи, подскажите. Если оффтоп , направьте. И еще вопрос как ограничить инветарь? Подскажите, мне например 6х6 хватит вполне, мысль такая: Что сделать чтоб не появлялся скрол-бар (прокрутка вниз/вверх) ? Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 18 Февраля 2022 (изменено) 3 часа назад, Norman Eisenherz сказал: с вылетом Хотелось бы найти универсальное решение без вылета, ибо получается что подобрать "лишний", предмет который уже не влезает, мы можем, а открыть инвентарь нет, ибо вылет. Сегодня уже испытал функцию unlimited=0/1. Просто допустим инвентарь миниатюрный, а гг захочет набрать "ништяков", допустим 3 костюма, и в 35 клеток это вряд ли вместится корректно. Так-то мои карланские навыки мне подсказали что ковырять, но вот как "довести до ума", я пока не знаю. Не ищу готового решения, просто хочу сделать качественно, или хотя бы замахнуться на подобное. upd: Суть, в том, которую я хочу донести , это что можно и 6х6 и 3х3 сделать инвентарь, просто если гг наберет "сверх" нормы, то он просто расширяется. Хотелось бы сделать его (Инвентарь/рюкзак) фиксированным, а не "резиновым". Разумеется если это возможно, может это вообще ограничивается движком. Изменено 18 Февраля 2022 пользователем EGER.OVERKILL WF 1 Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 19 Февраля 2022 6 часов назад, ted.80 сказал: напречь ганглии Спасибо, с этим модом знаком, просто думал есть, может еще что-то. Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 3 Июня 2022 Здравствуйте, появился вопрос. Допустим, я играю в модификацию, в которой присутствует правка "по одежке встречают", и она мне только мешает. Вопрос в состоит в том, как бы ее отключить. Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 5 Июля 2022 Господа, вопрос такой: Хочу сделать рестриктор, что бы выдался квест при заходе в него. (Можно инфопоршень, неважно). А то по трем гайдам, у меня проблемы, везде вылеты с логом по "g_.script'у" с ошибкой "#2". Направьте пожалуйста, и прошу прощения если оффтоп. ТЧ. 1.0004 Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 5 Июля 2022 (изменено) 23 минуты назад, mole venomous сказал: выдать инфо, который запустит квест. Это понял, делаю по урокам разным, но результат один, при НИ вылет. Как правильнее сделать выдачу поршня в логике? Я делаю так: Скрытый текст custom_data = <<END [logic] active = sr_idle [sr_idle] on_inside = %+kura% END Изменено 5 Июля 2022 пользователем EGER.OVERKILL WF Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 5 Июля 2022 (изменено) 9 минут назад, HellRatz сказал: nil (on_actor_inside = nil %+kura%) Cпасибо за ценные инструкции, я по этому сюда и написал, тут люди грамотные собрались. Сейчас попробую. Скрытый текст ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; [871] ; cse_abstract properties section_name = space_restrictor name = wy position = -40.14, -15.15, -159.5; 13.43, 4. 51, 91.69 direction = 0.0, 0.0, 0.0 id = 65535 version = 118 script_version = 6 spawn_id = 871 ; cse_alife_object properties game_vertex_id = 108 level_vertex_id = 238464 object_flags = 0xffffff3e custom_data = <<END [logic] active = sr_idle [sr_idle] on_actor_inside = nil %+kura% END ; cse_shape properties shapes = shape0 shape0:type = sphere shape0:offset = 0,0,0 shape0:radius = 5 ; cse_alife_space_restrictor properties restrictor_type = 0 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Но поршень который выдается, не активирует квест. (Хотя должен), В диалоге поршень отыгрывается нормально и выдается квест. Бегаю по этому месту (координатам которые указывал), по прежнему, никакой реакции. Изменено 5 Июля 2022 пользователем EGER.OVERKILL WF Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 5 Июля 2022 1 минуту назад, mole venomous сказал: поршень другим способом Да, порядок. Вызываю диалогом, и все работает как надо. 16 минут назад, HellRatz сказал: а рестриктор правильно установлен? На счет правильности, не уверен. Сейчас попробую, подскажете как реализовать, или тоже через поршни следует делать? (сообщение) 23 минуты назад, HellRatz сказал: Имею ввиду его шейп Сообщение нет. Вы правы, ничего не происходит. Скрипт сообщения заведомо рабочий, так что в нём ошибки быть не может. Как правильно установить шейп? Делаю по координатам, там где спавниться один из моих НПС. Нпс есть, рестриктора нет (исходя из данных выше.) 2 часа назад, HellRatz сказал: а рестриктор правильно установлен? Имею ввиду его шейп В этом я новичок, и по сему, что именно "на поверхности", и как поправить шейп, я не понимаю. Подскажите пожалуйста. Насколько я догадываюсь, редактировать нужно то, что под "cse_shape properties". У меня там следующая билеберда: (брал из этого же файла, с другого рестриктора) Скрытый текст ; cse_shape properties shapes = 1 shape_0:type = sphere shape_0:offset = 0,0,0 shape_0:radius = 4.5480751991272 Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 6 Июля 2022 13 часов назад, HellRatz сказал: через копи-паст в all.spawn не самый грамотный подход. Знаю, но я только учусь. Думая, что если взять что-то за основу исходно рабочее (оригинальное), ну такой уж я выбор сделал, в данном случае. Про СДК знаю, но слишком уж много заморочек получается для всего этого, три редактора на один рестриктор и это в лучшем случае. Основная мысль - сделать максимально просто и красиво, но видимо без стороннего софта и знающих людей, одному реализовать слишком уж проблемно. Новые рекомендации по Шейпу не сработали, к сожалению, прилагаю весь рестриктор, спойлером ниже. P.S Локация кордон, все Х,Y,Z взяты из Позишн Информера. Скрытый текст ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; [871] ; cse_abstract properties section_name = space_restrictor name = wy position = 6.638, 2.548, 72.340 direction = -0.79547029733658, 0.0, 0.60599255561829 id = 65535 version = 118 script_version = 6 spawn_id = 871 ; cse_alife_object properties game_vertex_id = 89 distance = 9.8000002 level_vertex_id = 283095 object_flags = 0xffffff3e custom_data = <<END [logic] active = sr_idle [sr_idle] nil (on_actor_inside = nil %+kura%) END ; cse_shape properties shapes = shape0 shape0:type = box shape0:axis_x = 2.64159965515137,0,0 --ширина зоны по X shape0:axis_y = 0,2.22759985923767,0 --ширина зоны по Y shape0:axis_z = 0,0,2.64159965515137 --ширина зоны по Z shape0:offset = 0,0,0 --поворот по осям (x,y,z) ; cse_alife_space_restrictor properties restrictor_type = 0 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 6 Июля 2022 6 минут назад, Купер сказал: shapes = 1 shape0:type = box В данный момент меня поправили, уже так Скрытый текст ; cse_shape properties shapes = shape0 shape0:type = sphere shape0:offset = 0, 0, 0 shape0:radius = 5 Скрытый текст [logic] active = sr_idle [sr_idle] on_actor_inside = {-kura} nil %+kura% {...} - условия для выполнения %...% - действия Должно быть все таки условие? Или нет? Меня просто интересует, можно ли задать рестриктору логику что при заходе в него, гг получает поршень (и квест соотв.) , или нет? (без условия.) Если так, то считается ли условием, наличие другого инфопоршня? Поделиться этим сообщением Ссылка на сообщение
EGER.OVERKILL WF 3 Опубликовано 8 Июля 2022 23 часа назад, Zander_driver сказал: Немножко ликбеза... Боже, храни вас господь. Низкий поклон, и уважение. Именно ваше решение, с ликбезом и комментариями помогло мне! Выражаю благодарность! Теперь, все работает как часы. 1 Поделиться этим сообщением Ссылка на сообщение