Romann 623 Опубликовано 19 Июня 2016 Поделиться Опубликовано 19 Июня 2016 Подскажите функцию проверки заряжен ли ствол, где-то было, не могу найти. Заранее спасибо. Мать: ASRock X470 Master SLI. Процессор: AMD Ryzen 9 3900X 12-Core(4200 MHz). Память: Patriot Memory 3200 C16 Series. DDR4-3200(1600МГц), 16Гбх2(32Гб). Видео: GeForce GTX 1060 6GB. Блок питания: CoolerMaster 750 Вт. Корпус: Zalman i3 Edge. Химера конечно сильный хищник, а все держится дома. Чего же ты пришел к ней домой и пытаешься её убить? © Болотный Доктор Ссылка на комментарий
Zander_driver 10 334 Опубликовано 19 Июня 2016 Поделиться Опубликовано 19 Июня 2016 -- если макс хп у объекта не равно -1, значит объект живой if object:max_health() ~= -1 then А если у него нету метода max_health то вылет. Он же, объект, может оказаться чем угодно. Пачкой патронов, рестриктором, бтр-ом... мне вот кстати почему-то думается что у бтр наверное здоровье есть. И у всяких разрушаемых физ.объектов, ящиков например. А являются они живыми? Дальше, получившийся объект бьете по голове. А если у него головы нету (он ящик например) то опять вылет. Я бы все таки проверял по клсиду, и если клсид объекта нашелся в списке клсидов сталкеров и монстров, то проверял бы еще методом obj:alive() чтобы трупы не хитовать. где-то было в справочнике по функциям и классам, методы класса game_object 1 Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine. Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист. AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD. Ссылка на комментарий
naxac 2 447 Опубликовано 19 Июня 2016 Поделиться Опубликовано 19 Июня 2016 @Romann, game_object:get_ammo_in_magazine() Аддон для ОП-2.09.2: Яндекс/Google/GitHub Ссылка на комментарий
CRAZY_STALKER666 36 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 (изменено) Отслеживаю наличие пушки в слоте 2(автоматы) Скрипт вот такой, работает через bind_stalker.update() Ну как работает, проблема в том что СМС о том что пушка в слоте - не выдаеться... Где я не доглядел? Сам скрипт: local active_slot=db.actor:active_slot()local active_item=db.actor:active_item()local rifle_in_slot=db.actor:item_in_slot(2)local rifle_containfunction check_barret()if rifle_in_slot~=nil and rifle_contain==rifle_in_slot:section() and actor:object("wpn_vintorez") thendb.actor:give_info_portion("barret_on")news_manager.send_tip(db.actor, "%c[25,240,25,25]wpn_vintorez ON", nil, nil, 20000)elsedb.actor:disable_info_portion("barret_on")news_manager.send_tip(db.actor, "%c[25,240,25,25]wpn_vintorez OFF", nil, nil, 20000)endend UPD1. Переписал скрипт - толку 0. Где я ошибся?) local tbl_wpn = {["wpn_vintorez"] = true}function check_barret()if rifle_in_slot and tbl_wpn[rifle_in_slot:section()] thendb.actor:give_info_portion("barret_on")news_manager.send_tip(db.actor, "%c[25,240,25,25]wpn_vintorez ON", nil, nil, 20000)elsedb.actor:disable_info_portion("barret_on")news_manager.send_tip(db.actor, "%c[25,240,25,25]wpn_vintorez OFF", nil, nil, 20000)endend Изменено 20 Июня 2016 пользователем CRAZY_STALKER666 Не соответствует правилам. Ссылка на комментарий
makdm 37 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 Так попробуй: function check_barret() local rifle_in_slot=db.actor:item_in_slot(2)if rifle_in_slot and rifle_in_slot:section() == "wpn_vintorez" thendb.actor:give_info_portion("barret_on")news_manager.send_tip(db.actor, "%c[25,240,25,25]wpn_vintorez ON", nil, nil, 20000)elsedb.actor:disable_info_portion("barret_on")news_manager.send_tip(db.actor, "%c[25,240,25,25]wpn_vintorez OFF", nil, nil, 20000)endend 1 Ссылка на комментарий
Zander_driver 10 334 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 в bind_stalker:update вызываете что? компиляцию своего скрипта? так она один раз делается, потом скрипт уже известен движку. вот эти переменные local active_slot=db.actor:active_slot()local active_item=db.actor:active_item()local rifle_in_slot=db.actor:item_in_slot(2) в нынешнем виде инициализируются только при компиляции скрипта, и больше не меняются. 1 Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine. Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист. AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD. Ссылка на комментарий
CRAZY_STALKER666 36 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 @Zander_driver, ну, это и так понятно... У меня были вопросы только к теме неработоспособности скрипта Не соответствует правилам. Ссылка на комментарий
Nazgool 250 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 (изменено) Как это Zander_driver ещё промолчал? @CRAZY_STALKER666, Ваши выражения это и так понятно и были вопросы только к теме неработоспособности полностью противоречат друг другу. Если Вам "и так понятно", то тогда не может быть "вопросов по неработоспособности". Вам уже Zander_driver объяснил почему, а makdm дал готовый вариант. Ну а если есть вопросы, то Вам всё-таки не понятно. Вы уже определитесь, в какой части Вашего высказывания сейчас находитесь?Если всё ещё "есть вопросы по неработоспособности", то постараемся объяснить подробнее, Изменено 20 Июня 2016 пользователем Nazgool 1 1 1 Ссылка на комментарий
CRAZY_STALKER666 36 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 @Nazgool, ммм да. Я прекрасно понял, что мне тут сказали. Готовый вариант действительно работает, за что отдельное спасибо я уже сказал... Теперь вопрос новый - по какой причине диалоги у всех НПЦ могут так сказать зависнуть - т.е нажимаешь допустим "до встречи" но просто ничего не происходит. И так со всеми. Кнопка Торговать работает... Не соответствует правилам. Ссылка на комментарий
Zander_driver 10 334 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 (изменено) функция break_dialogs которая выполняет прекращение диалога в фразе "до встречи", находится в файле dialogs.script Информация к размышлению: если в action вписать несуществующую функцию или функцию из несуществующего файла - то при произнесении фразы ничего не произойдет. Ни вылета, ни какого то сообщения в логе об ошибке... ничего. зы. Если опять ответ будет в духе "Я все понял", но демонстрирующий что на самом деле ничего не понял, то я умываю руки и помогать юзерам с "666" в конце ника больше не буду. Изменено 20 Июня 2016 пользователем Zander_driver Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine. Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист. AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD. Ссылка на комментарий
CRAZY_STALKER666 36 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 (изменено) @Zander_driver, не поверишь. Стоило выключить вот это - всё заработало... function check_barret()local rifle_in_slot=db.actor:item_in_slot(2)if rifle_in_slot and rifle_in_slot:section() == "wpn_vintorez" thendb.actor:give_info_portion("barret_on")news_manager.send_tip(db.actor, "%c[25,240,25,25]wpn_vintorez ON", nil, nil, 20000)elsedb.actor:disable_info_portion("barret_on")news_manager.send_tip(db.actor, "%c[25,240,25,25]wpn_vintorez OFF", nil, nil, 20000)endend И каким образом она на диалоги влияет? Втулкер такой втулкер... Попробую доп условию поставить, а то постоянный апдейт только ресурсы ест... Изменено 20 Июня 2016 пользователем CRAZY_STALKER666 1 Не соответствует правилам. Ссылка на комментарий
Zander_driver 10 334 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 Втулкер такой втулкер А может все же стоит в своих действиях искать причины? 1 Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine. Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист. AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD. Ссылка на комментарий
Nazgool 250 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 (изменено) Ага. Функция была ещё и на постоянном апдейте, а не по событию? Это я пропустил.Попутно Почему было просто не написать в dialogs.script function allow_break_dialog(first_speaker, second_speaker, id) return second_speaker:profile_name() ~= "osoznanie" end ? ..... @CRAZY_STALKER666, Да чего уж там - обращайтесь. Пока деды живы ) Изменено 20 Июня 2016 пользователем Nazgool Ссылка на комментарий
CRAZY_STALKER666 36 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 Очень интересно... Поставил функцию на условия ( по инфопоршням) чуть побегал по локации - включил её, а диалоги работают... Чудеса. Ну благо общими стараниями я почти закончил этот сложный квест. Всем спасибо за терпение и понимание! Я поддержку действительно очень ценю, куда без вас дедов модостроя я бы делся... Не соответствует правилам. Ссылка на комментарий
PTB 8 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 Здравствуйте! Снова прошу помощи. Есть функция: function start_demka() local console = get_console() console: execute("demo_play start_demka") end Как во время ролика можно отключить худ? В жизни много плохих моментов. Пытайся избавляться от них ! Ссылка на комментарий
TIGER_VLAD 361 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 @PTB, Попробуй функцию level.hide_indicators(), а чтобы включить level.show_indicators(). 1 2 Ссылка на комментарий
PTB 8 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 (изменено) @TIGER_VLAD, Спасибо, помогло! Но есть ещё одна проблема: Во время полёта, можно юзать вещи, например бинокль. Можно и это как нибудь отключить? Изменено 20 Июня 2016 пользователем PTB В жизни много плохих моментов. Пытайся избавляться от них ! Ссылка на комментарий
Painter 3 399 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 (изменено) PTB, Убрать оружие: db.actor:hide_weapon() Вернуть оружие: db.actor:restore_weapon() Можешь попробовать и такой вариант: Убрать: level.show_weapon(false) Вернуть: level.show_weapon(true) Изменено 20 Июня 2016 пользователем Dennis_Chikin здесь был пример, как из 4 строк сделать полотно на весь экран 1 Портфолио Ссылка на комментарий
dsh 3 824 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 @PTB, а ты сделай вообще level.disable_input() и никто, ничего не будет доставать. dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий
TIGER_VLAD 361 Опубликовано 20 Июня 2016 Поделиться Опубликовано 20 Июня 2016 (изменено) @dsh, Норм вариант. @PTB, и еще enable_input() для разблокировки. А вообще для полетов камеры по локациям есть level.add_cam_effector2. Только тут нужно делать кат-сцену в X-ray SDK. Изменено 20 Июня 2016 пользователем TIGER_VLAD Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти