Перейти к контенту

[CoP] Квесты


XMK

Рекомендуемые сообщения

(изменено)

Наконец-то хоть кто-то написал нормальный мануал... XMK респект и +.

Изменено пользователем кровоSTALKER

Поделиться этим сообщением


Ссылка на сообщение

Делал по мануалу, в итоге...

function has_eye3(task, objective)

if db.actor ~= nil then

return db.actor:object("af_eye") ~= nil

end

return false

end --не работает...

 

function eye_out(first_speaker, second_speaker)

dialogs.relocate_item_section(second_speaker, "af_eye", "out") --в диалоге сообщение мол арт отдан а в инвентаре он остается

end

 

function val_in(first_speaker, second_speaker)

dialogs.relocate_item_section(second_speaker, "wpn_val_m1", "in")

end

 

function lck_out(first_speaker, second_speaker)

dialogs.relocate_item_section(second_speaker, "lck", "out") --тут такая же проблема...

end

 

function has_lck_to_boroda(task, objective)

if db.actor ~= nil then

return db.actor:object("lck") ~= nil --и здесь не работает

end

return false

end

 

function val_in(first_speaker, second_speaker)

dialogs.relocate_item_section(second_speaker, "racia_m2", "in")

end

 

function give_lck_quest()

task_manager.get_task_manager():give_task("zat_chimera_search_lck")

end

 

Поделиться этим сообщением


Ссылка на сообщение

Да, разобрался ^_^ . Теперь другой вопрос, как выдать поршн когда подобрал предмет? Просто у меня возникла проблема с диалогом, ветка в которой нужно отдать предмет появляется раньше, а это критично для квеста...

 

Добавлено:

Прекондишн я ставил, он не работает(((...

 

Добавлено через 1 мин.:

function has_lck_to_boroda(task, objective)

if db.actor ~= nil then

return db.actor:object("lck") ~= nil

end

return false

end

 

Вот прекондишн.

Поделиться этим сообщением


Ссылка на сообщение

Да. Там вся фишка в том что нет "ступенек" квеста как в ТЧ. Там просто меняют текст описания при определённых условиях... Вот за этот хитрый ход уважаю ПЫС.

Поделиться этим сообщением


Ссылка на сообщение
(изменено)

[zat_chimera_search_lck]

icon = ui_inGame2_Put_v_pripyat

prior = 106

storyline = false

title = {-has_item(lck)}zat_chimera_lck_name_1, {+actor_has_item(lck)}{+has_lck}zat_chimera_lck_name_2

descr = {-has_item(lck)}zat_chimera_lck_text_1, {+actor_has_item(lck)}{+has_lck}zat_chimera_lck_text_2

target = {=actor_has_item(lck)}zat_a2_stalker_barmen

condlist_0 = {+drop_lck_to_boroda} complete

 

Если у ГГ нет итема описание и имя не меняются с дефолтных. А там если у ГГ есть поршн и итем (поршн выдаёшь через прикондишн(кстати можно обойтись и без поршна, но так надёжнее)) то описание менятся на другое.

Изменено пользователем кровоSTALKER

Поделиться этим сообщением


Ссылка на сообщение

title = это описание квеста

target = это цель квеста (любой объект из игры).

 

А так же читай вот этот мой пост. Там всё об этих строках.

Поделиться этим сообщением


Ссылка на сообщение
(изменено)

Из секции твоего квеста в tm_zaton.ltx убери

on_init = %+vzal_quest%

Убери +, там где %%, а лучше убери всю строку вообще. Я на самой первой странице сталкивался с подобной проблемой из-за этой строки. И квест выдавай скриптом.

 

Добавлено через 2 мин.:

Так же лучше пользуйся своими файлами... А не допихивай к ПЫСовским.

Изменено пользователем кровоSTALKER

Поделиться этим сообщением


Ссылка на сообщение

Где?! Здесь?

Открываем файл tm_zaton.ltx и в конец пишем:

Код

[quest_vodka_give]

icon = ui_inGame2_Put_v_pripyat

prior = 2

storyline = false

title = {=actor_has_item(vodka)}vodka_barmen_prinesti_name, vodka_barmen_naiti_name

descr = vodka_barmen_descr

target = {=actor_has_item(vodka)}zat_a2_stalker_barmen

condlist_0 = {+quest_vodka_done} complete

 

Поделиться этим сообщением


Ссылка на сообщение

1. Легко.

[vintorez_q1]
icon = ui_inGame2_Put_v_pripyat
prior = 50
storyline = false
title = {=actor_has_item(wpn_vintorez_m2)}vintorez_name_2, {=actor_has_item(wpn_pm)}vintorez_name_3, vintorez_name_1
descr = vintorez_descr
target = {=actor_has_item(wpn_vintorez_m2)}zat_a2_stalker_barmen
condlist_0 = {+vintorez_done} complete
condlist_1 = {+vintorez_fail} fail

 

2.

target = kolbasa

 

3. Выдать поршень а в диалоге проверку

<has_info>...</has_info>

Поделиться этим сообщением


Ссылка на сообщение

slayer_kch, вот пример из моих разработок по случайно генерируемым квестам:

[lob_q3_psevdodog]
icon = ui_inGame2_Monsters_Wave
prior = 30
storyline = false
title = {=actor_has_item(mutant_psevdodog_booty)}lob_psevdodog_name_2, lob_psevdodog_name_1
descr = lob_psevdodog_descr
target = {=actor_has_item(mutant_psevdodog_booty)}zat_lob
condlist_0 = {+psevdodog_done} complete

 

    if obj:section() == "mutant_psevdodog_booty" and has_alife_info("psevdodog_start") and not has_alife_info("psevdodog_find") then
     db.actor:give_info_portion("psevdodog_find")
    end

Только здесь у меня нужно добыть часть тела монстра). Ну а что бы сделать твой квест нужно кабанчику написать логику типа такой:

;[spawner];спавнить только ночью
;cond = {!is_day}

[logic]
active = remark1
on_death = death@chimera_dead

[death@chimera_dead]
on_info = %+mil_chimera_death%;даём поршень при смерти мутанта

[remark1]
no_move = true
on_actor_dist_le = 4|%+mil_chimera_palevo%;мутант нас "увидел"

 

Добавлено через 1 мин.:

хог, пропиши своему персонажу story_id, а потом ставь метку на этот стори-ай-ди
В ЗП файл стори айди пуст, вообще. Теперь метка ставится без этой пресловутой фичи.

Поделиться этим сообщением


Ссылка на сообщение

Требуется помощь:

[jup_gavaec_observe_the_jupiter_factory]

icon = ui_inGame2_Issledovatelskaya_gruppa

prior = 50

storyline = false

title = {+info_kaska_diary, =actor_has_item(jup_vova_photo)} observe_the_collectror_name_3, {=actor_has_item(jup_vova_photo)} observe_the_collectror_name_2, {+info_kaska_diary} observe_the_collectror_name_1, {-info_kaska_diary, -actor_has_item(jup_vova_photo)} observe_the_collectror_name

descr = observe_the_collectror_descr

target = {+info_kaska_diary, =actor_has_item(jup_kaska_diary), =actor_has_item(jup_vova_photo)}jup_a6_stalker_barmen

condlist_0 = {+observe_jup_end} complete

on_complete = %=add_actor_rank(5)%

 

Всё вроде бы работает, но, при получении задания отображается не текст, а {+info_kaska_diary в заголовке. Как исправить? Ах да, и ещё, при подбирании нужный предметов и при получении нужных поршней квест всё равно не меняет своё имя(. Как править?

Поделиться этим сообщением


Ссылка на сообщение
Народ,а можно story_id = объекту в логике прописать?Ну,он будет работать?
Стори айди устанавливается в spawn_sections_***.ltx строчкой
story_id = moy_nenormalniy_npc

в твоей секции сталкера.

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    Ни один зарегистрированный пользователь не просматривает эту страницу.

AMK-Team.ru

×
×
  • Создать...