Mr.Srears 0 Опубликовано 8 Октября 2018 Ребят, может, кто скинуть мне ровный скрип на ремонтный комлект для ЗП? Пробовал создать по этому. Всё заработало, прям идеально, но эффекта починки нет. Он его просто лопает. Поделиться этим сообщением Ссылка на сообщение
Mr.Srears 0 Опубликовано 9 Октября 2018 @Charsi, Не мог бы ты подробней расписать про нумерацию слотов? Какие слоты использует оружие, и костюм? И что мне делать с методом "give_game_news" удалять его, или заменять другим значением? Поделиться этим сообщением Ссылка на сообщение
Mr.Srears 0 Опубликовано 11 Октября 2018 @Charsi, Пробовал сделать все, как ты сказал, все равно не работает. Дело в скрипте, скорее всего, я пропустил какие-то переменные или методы, ссылающие на актора имеют совсем другие значения на ЗП. Хотя я уверен, что там еще чего-то не хватает, уж больно скрипт простой. Вот посмотри код скрипта: function action_repair() -- эмулируем возврат ремкомплекта в инвентарь alife():create("repair_kit_outfit", vector(),0,0,0) -- нет ли рядом врагов и монстров local apos = db.actor:position() for obj_id,_ in pairs (db.storage)do local obj = level.object_by_id(obj_id) if obj and (IsStalker(obj) or IsMonster(obj)) and obj:alive() and obj:relation(db.actor) == game_object.enemy and obj:position():distance_to(apos)<30 then send_tip("Нельзя чинить костюм, когда враги слишком близко.") return end end -- пробуем чинить предмет в repair_item_in_slot(7) -- седьмом слоте end function repair_outfit() local item_s7 = db.actor:item_in_slot(7) --объявляем переменную (item_s7) if item_s7 ~= nil and item_s7:condition() >=0.60 and item_s7:condition() ~=1 then --когда костюм можно чинить (состояние больше или равно 60%) item_s7:set_condition(1) local snd_obj = xr_sound.get_safe_sound_object([[interface\inv_detach_addon]]) snd_obj:play_no_feedback(db.actor, sound_object.s2d, 0, vector(), 1.0) local news_text = "%c[255,160,160,160]Ремонт комплект:\\n%c[255,0,255,0]Ремонт костюма завершен." db.actor:give_game_news("st_tip",news_text, "ui_iconsTotal_grouping", 1000, 5000) elseif item_s7 == nil then --когда костюма нет local news_text = "%c[255,160,160,160]Ремонт комплект:\\n%c[255,255,0,0]Ремонт невозможен: нужно одеть коcтюм." db.actor:give_game_news("st_tip",news_text, "ui_iconsTotal_grouping", 1000, 5000) alife():create("repair_kit_outfit", db.actor:position(), 1, db.actor:game_vertex_id(), db.actor:id()) elseif item_s7:condition() <0.60 then --когда костюм нельзя чинить (состояние меньше 60%) local news_text = "%c[255,160,160,160]Ремонт комплект:\\n%c[255,255,0,0]Ремонт невозможен: костюм слишком сильно повреждён." db.actor:give_game_news("st_tip",news_text, "ui_iconsTotal_grouping", 1000, 5000) alife():create("repair_kit_outfit", db.actor:position(), 1, db.actor:game_vertex_id(), db.actor:id()) elseif item_s7:condition() ==1 then --когда костюм в отличном состояние local news_text = "%c[255,160,160,160]Ремонт комплект:\\n%c[255,255,0,0]Ремонт невозможен: %c[255,0,255,0]костюм в отличном состоянии." db.actor:give_game_news("st_tip",news_text, "ui_iconsTotal_grouping", 1000, 5000) alife():create("repair_kit_outfit", db.actor:position(), 1, db.actor:game_vertex_id(), db.actor:id()) end end function send_tip(news_text) db.actor:give_game_news("st_tip",news_text, "ui_iconsTotal_grouping", 1000, 5000) end Поделиться этим сообщением Ссылка на сообщение
Mr.Srears 0 Опубликовано 10 Ноября 2018 Ребят, может, кто-нибудь дать примерный набросок скрипта с проигрованием анимации у ствола? Я представляю примерно, как его наполнить, но просто не хватает уверенности, что он заработает. Проще говоря, хочу просто дополнить класс WP-PM, научив его проигрывать анимку затвора, который не хочет работать, если я сменю класс ствола. А жертвовать режимом автоматического огня или затвором, мне не очень хочется. Поделиться этим сообщением Ссылка на сообщение
Mr.Srears 0 Опубликовано 11 Ноября 2018 56 минут назад, Serge_888 сказал: Мне тут неделю назад популярно объяснили, что такого не существует. А то-что выдаёт поисковик, это хотелки, обращённые к тем, кто пытается править движек. И делает всякие Х-Ray экстеншины. Пытается делать... Хотя, в каком-то моде видел, как из аптечки шприц вкалывали. Такой анимки в оригинале не было. Вроде сами добавили. Но что при этом исправли - большой вопрос. Ну, и что мне теперь делать? Лезть в движок и править класс WP-PM? Я даже приблизительно не знаю, где он там находится. Или отказываться от режима автоматического огня у пистолетов на совсем, и делать их обычными однопатронными. Я вообще не пойму одного: в оригинале у той же Беретки и Вали 99 стояли режимы автоогня, и по 3 патрона они прекрасно работали, затвор там тоже работал. Хотя могу ошибаться, давно не играл в оригинал. Поделиться этим сообщением Ссылка на сообщение