Stalk15 27 Опубликовано 13 Января 2011 load(string) -- загрузить конфигурацию задачи из файла config\gameplay\game_tasks.xml .... string get_id() -- даёт строку-идентификатор задачи. Это атрибут id из тега game_task в XML -- если не был выполнен метод load или не была добавлена хоть одна подзадача, то вернёт nil ... Как выполнить метод load, если квест скриптовый? Из-за не выполнения метода load при выдаче квеста игра велетает, потому что get_id(), использующийся при выводе сообщения о новом квесте, дает nil. Удалите вот этот мой пост. Поделиться этим сообщением Ссылка на сообщение
Stalk15 27 Опубликовано 13 Января 2011 (изменено) malandrinus new_task:load("gar_car_graveyard_quest") Так это же загрузка уже существующего квеста. А ведь в скриптах делается новый квест, всеравно загружать существующий нужно? Как я понял, загружается квест из конфигов, а далее в скриптами можно его менять, так? Пример уже могу привести, работает в плоть до выполнения всего квеста, но одна проблема:После выполнения квеста(всех подзадач) он не изчезает из ПДА, хотя все подзадачи уже подмечены, как выполненые: function _on_task_() local task = CGameTask() task:load("teee") --teee - это "пустой" квест из конфигов task:set_title("Title") objective = SGameTaskObjective(task,1) objective:set_description("Description_1") objective:add_complete_func("sript.funct") task:add_objective(objective) objective = SGameTaskObjective(task,1) objective:set_description("Description_2") objective:add_complete_func("sript.funct") task:add_objective(objective) db.actor:give_task(task, 3600*22000, false) end Почему квест не изчезает после выполнения - непонятно, но зато ратотает=) Изменено 13 Января 2011 пользователем Stalk15 Поделиться этим сообщением Ссылка на сообщение
Stalk15 27 Опубликовано 13 Января 2011 Я скриптаи меняю этот квест: <game_task id="teee"> <objective> <icon>ui_iconsTotal_find_item</icon> </objective> </game_task> Условий нет, но они ведь добавляются в скрипте. А что за дефлотовый конструктор? Квест удалось выполнить, чтоб он изчез из ПДА, только тогда, когда я после выпонения последней подзадачи сменил статус квеста на completed. Если этот квест взять еще раз, то он уже не изчезнет из ПДА ни при каких условиях. Поделиться этим сообщением Ссылка на сообщение
Stalk15 27 Опубликовано 14 Января 2011 (изменено) malandrinus Не. неполучается. После этого при выдче квеста - вылет - не может вывести сообщение с названием квеста(титл).Set_title не срабатывает. Вообщем, есть небольшой прогресс в скриптовом квесте. Теперь при выполнении последнего подзадания стало появлятся сообщение, что квест выполнен, но квест назойливый, и из ПДА все же не хочет изчезать: function _on_task_() local task = CGameTask() task:load("teee") local oo = task:get_objective(0) oo:set_article_id("descr_bar_resque_information_2") task:set_title(Title) local objective = SGameTaskObjective(task,1) objective:set_description("Description_1") objective:add_complete_func("CompleteFuncObjectiv1") task:add_objective(objective) objective = SGameTaskObjective(task,0) objective:set_description(""Description_2"") objective:add_complete_func("CompleteFuncObjectiv2") task:add_objective(objective) db.actor:give_task(task, 3600*22000, false) end Вот теперь и в правду непонятки, сообщение "Задание выполнено" есть, а квест в ПДА сидит. Изменено 14 Января 2011 пользователем Stalk15 Поделиться этим сообщением Ссылка на сообщение
Stalk15 27 Опубликовано 22 Января 2011 Ни кто не в курсе, рабочий ли метод move_to(const vector&, const vector&) из класса партиклов? Я попробовал его применить: Particle:move_to(vector():set(-210,-20,-142), vector():set(-244,-24,-133)) Particle - это обьект партикла. Партикл проигрывается, но ни куда не движется. Поделиться этим сообщением Ссылка на сообщение