Vadyanchikus 5 Опубликовано 18 Июля 2014 Люди, прошу помощи с одним скриптом. Бывалым скриптерам это труда не доставит. Суть скрипта в чём: мне нужно принести Сидоровичу один из артефактов: Выверт или Грави. За это он мне 1500 даёт. Если у игрока только Выверт - Сидор забирает Выверт, если только Грави - забирает Грави. Если и то, и другое - забирает Выверт. Проблема вот в чём: Сидор забирает у меня Грави, хотя его у меня нет в инвентаре, но есть Выверт, который так и остаётся в рюкзаке. Помимо этого он даёт 1500, получается, что ни за что. Помогите исправить эту проблему, пожалуйста. Вот код: function give_esc_art(first_speaker, second_speaker) local artefact=first_speaker:object("af_vyvert") if artefact==nil then dialogs.relocate_item_section(second_speaker, "af_gravi", "out") else dialogs.relocate_item_section(second_speaker, "af_vyvert", "out") end dialogs.relocate_money(second_speaker, 1500, "in") end Заранее спасибо. Поделиться этим сообщением Ссылка на сообщение
Vadyanchikus 5 Опубликовано 18 Июля 2014 (изменено) Увы, помогло только частично. Теперь Сидорович забирает нужный артефакт (Выверт), но он всё ещё остаётся в рюкзаке. А, проблема в самой функции relocate_item_section. Я посмотрел скрипт, отвечающий за передачу водки механику "Свободы" - там функция relocate_item. Хотя она указана, как устаревшая. Я посмотрел функцию relocate_item_section, и в ней есть пометка, что она перемещает только квестовые предметы. Вот функция: function relocate_item_section(victim, section, type) if db.actor and victim then if type == "in" then --' Трансферить нужно только квестовые предметы. if quest_section[section] == true and victim:object(section) ~= nil then victim:transfer_item(victim:object(section), db.actor) else alife():create(section, db.actor:position(), db.actor:level_vertex_id(), db.actor:game_vertex_id(), db.actor:id()) end elseif type == "out" then db.actor:transfer_item(db.actor:object(section), victim) end news_manager.relocate_item(db.actor, type, section) end end Наверное, из-за этого артефакт из моего рюкзака и не отбирается. Может, кто-нибудь подскажет, как сделать эту функцию универсальной, то есть не только квестовые предметы перетаскивать? Напоминаю: портянки убираем под спойлер. Kirgudu Изменено 18 Июля 2014 пользователем Kirgudu Поделиться этим сообщением Ссылка на сообщение
Vadyanchikus 5 Опубликовано 18 Июля 2014 Я в скриптах пока не очень понимаю, только если по шаблону писать. То есть этот скрипт на перемещение предметов подойдёт на ТЧ 1.0006? Поделиться этим сообщением Ссылка на сообщение