[ Главная страница · Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Сталкер форум » С.Т.А.Л.К.Е.Р ТЕНЬ ЧЕРНОБЫЛЯ » Модостроение » Как сделать полный квест
Как сделать полный квест
SNIPERДата: Пятница, 13.01.2012, 23:09 | Сообщение # 1
Рядовой
Группа: Пользователи
Сообщений: 6
Репутация: 0
Ответ: Мы создадим квест (например для того чтобы нас пустили к Воронину)
Приступим:
<text>Найти артефакт панцирь</text>
<icon height="50" width="50" x="100" y="50">ui\ui_icons_task</icon>
<function_complete>dan_dialog.bar_dolg_propusk_have</function_complete>
<infoportion_set_complete>bar_dolg_propusk_have</infoportion_set_complete>
</objective>
<objective>
<text>Принести артефакт Пличко</text>
<map_location_type hint="Пличко">blue_location</map_location_type>
<object_story_id>bar_dolg_guard_commander</object_story_id>
<infoportion_complete>bar_dolg_propusk_done</infoportion_complete>
</objective>
</game_task>

Все теперь нам надо добавить инфопоршни в наш диалог, находим dialogs_bar ищем в нем наши диалоги и добавляем инфопоршни;
<dialog id="bar_ohran_propusk">
<dont_has_info>bar_dolg_propusk_start</dont_has_info> это значит что диалог не появиться у Пличко
<dont_has_info>bar_dolg_propusk_have</dont_has_info> если сработали наши инфопоршни т.е. чтобы
<dont_has_info>bar_dolg_propusk_done</dont_has_info> после выполнения задания диалог вновь не появлялся
<phrase_list>
<phrase id="0">
<text>bar_ohran_propusk_0</text>
<next>1</next>
</phrase>
<phrase id="1">
<text>bar_ohran_propusk_1</text>
<next>2</next>
<next>3</next>
</phrase>
<phrase id="2">
<text>bar_ohran_propusk_2</text>
<action>dan_dialog.bar_dolg_propusk_have</action> т.е. будет выполняться функция
<give_info>bar_dolg_propusk_start</give_info> bar_dolg_propusk_have из сриптового файла dan_dialog.
</phrase>
<phrase id="3">
<text>bar_ohran_propusk_3</text>
<give_info>bar_dolg_propusk_start</give_info> информации о получении первого инфопоршня.
<action>dialogs.break_dialog</action>
</phrase>
</phrase_list>
</dialog>

<dialog id="bar_friend_propusk">
<dont_has_info>bar_dolg_propusk_done</dont_has_info> не показывать после получения 3 инфопоршня
<has_info>bar_dolg_propusk_have</has_info> показывать если есть второй инфопоршень
<phrase_list>
<phrase id="0">
<text>bar_friend_propusk_0</text>
<next>1</next>
</phrase>
<phrase id="1">
<text>bar_friend_propusk_1</text>
<next>2</next>
</phrase>
<phrase id="2">
<text>bar_friend_propusk_2</text>
<action>dan_dialog.bar_dolg_propusk_done</action> вызывается функция bar_dolg_propusk_done
<give_info>bar_dolg_propusk_done</give_info> информация о получения 3 инфопоршня задание выполенено
<next>3</next>
</phrase>
<phrase id="3">
<text>bar_friend_propusk_3</text>
<give_info>bar_dolg_base_pass</give_info> это срабатывает инфопоршни о пропуске нас на базу долга.
<give_info>bar_dolg_community_start</give_info>
<give_info>bar_dolg_community_leader</give_info>
</phrase>
</phrase_list>
</dialog>
Теперь нам надо создать свой скриптовой файл и вписать 2 функции. Одна нужна для проверки наличия в инвентаре панциря и соответственно включения инфопоршня bar_dolg_propusk_have. Вторая для передачи Пличко
арта. Например dan_dialog и вписать наши функции.

function kill_stalker_padla_escape(task, objective) эта функция проверяет наличие арта
if db.actor ~= nil then
return db.actor:object("af_armor_3") ~= nil
end
return false
end

function bar_dolg_propusk_done(first_speaker, second_speaker) эта функция отдачи арта Пличко
dialogs.relocate_item_section(second_speaker, "af_armor_3", "out")
second_speaker:set_relation(game_object.friend, first_speaker) эта строчка делает Пличко другом.
end

Ну вот вроде все. Если сделали все правильно, то после того, как принесли арт Пличко, вас свободно пропустят на базу долга.
 
цувцфсфДата: Четверг, 18.04.2013, 22:49 | Сообщение # 2
Нет аватара
Рядовой
Группа: Пользователи
Сообщений: 3
Репутация: 0
Попробую..
 
Сталкер форум » С.Т.А.Л.К.Е.Р ТЕНЬ ЧЕРНОБЫЛЯ » Модостроение » Как сделать полный квест
  • Страница 1 из 1
  • 1
Поиск:




  stalker-simbion.ucoz.ru (c) 2009 - 2024
  Любое использование материалов сайта возможно только с разрешения администрации.
  Сайт управляется системой uCoz
  Карта сайта

Яндекс цитирования