|
Диалоги Часть3
Сложность:Сложно
-Как сделать разные action в диалогах.
1.Создаём обычный диалог:
Код <dialog id="test_dialog"> <dont_has_info>test_pogovoril</dont_has_info> <phrase_list> <phrase id="0"> <text>test_dialog_0</text> <next>1</next> </phrase> <phrase id="1"> <text>test_dialog_1</text> <next>2</next> <next>3</next> <next>4</next> </phrase> <phrase id="2"> <text>test_dialog_2</text> </phrase> <phrase id="3"> <text>test_dialog_3</text> </phrase> <phrase id="4"> <text>test_dialog_4</text> </phrase> </phrase_list> </dialog>
C такими текстами:
Код <string id="test_dialog_0"> <text>Я тестю функции.</text> </string> <string id="test_dialog_1"> <text>Ок, какую?</text> </string> <string id="test_dialog_2"> <text>Дать деньги</text> </string> <string id="test_dialog_3"> <text>Дать ПМ</text> </string> <string id="test_dialog_4"> <text>Заспавнить ПМ</text> </string>
2.Создаём свой скрипт в папке gamedata/script например test.script и пишем в него 3 функции:
Код function dat_dengi(first_speaker, second_speaker) dialogs.relocate_money(second_speaker, 3000, "in") end
Это функция отдачи денег ГГ. На месте 3000 любое число. На месте dat_dengi любое название. ------------------------------------------------------------
Код function dat_item(first_speaker, second_speaker) dialogs.relocate_item_section(second_speaker, "wpn_pm", "in") end
Это функция отдачи предмета ГГ. На месте wpn_pm любой предмет. На месте dat_item любое название. ------------------------------------------------------------
Код function spawn_item_or_monster_or_stalker() alife():create("wpn_pm",vector():set(pos),lvid,gvid) end
Это функция спавна чего либо. На месте wpn_pm любой предмет,монстр или сталкер. На месте (pos),lvid,gvid) любые координаты. На месте spawn_item_or_monster_or_stalker любое название. ------------------------------------------------------------ Так же функция может быть одна, но с несколькими действиями. Например:
Код function all(first_speaker, second_speaker) dialogs.relocate_money(second_speaker, 3000, "in") dialogs.relocate_item_section(second_speaker, "wpn_pm", "in") alife():create("wpn_pm",vector():set(pos),lvid,gvid) end
Значит что одновременно ГГ дадут 3000 рублей, ПМ и по заданным координатам заспавнится ПМ. ------------------------------------------------------------
3.Впишем функции в диалог:
Код <dialog id="test_dialog"> <phrase_list> <phrase id="0"> <text>test_dialog_0</text> <next>1</next> </phrase> <phrase id="1"> <text>test_dialog_1</text> <next>2</next> <next>3</next> <next>4</next> </phrase> <phrase id="2"> <text>test_dialog_2</text> <action>test.dat_dengi</action> </phrase> <phrase id="3"> <text>test_dialog_3</text> <action>test.dat_item</action> </phrase> <phrase id="4"> <text>test_dialog_4</text> <action>test.spawn_item_or_monster_or_stalker</action> </phrase> </phrase_list> </dialog>
Это значит что после после фразы <text>test_dialog_2</text> ГГ дадут 3000руб.
Это значит что после после фразы <text>test_dialog_3</text> ГГ дадут ПМ.
Это значит что после после фразы <text>test_dialog_3</text> Заспавнится ПМ.
|
Категория: Моддинг | Добавил: _Admin_ (31.10.2011)
|
Просмотров: 2703
| Рейтинг: 0.0/0 |
Добавлять комментарии могут только зарегистрированные пользователи. [ Регистрация | Вход ]
|
|
|
Меню сайта |
|
|
Свежие прохождения |
Просмотров: 417 Комментариев: 0 Добавил: Hardtmuth
Просмотров: 478 Комментариев: 0 Добавил: Hardtmuth
Просмотров: 577 Комментариев: 0 Добавил: Hardtmuth
Просмотров: 634 Комментариев: 0 Добавил: Hardtmuth
Просмотров: 600 Комментариев: 0 Добавил: Hardtmuth
|
|
Категории раздела |
|
|
Мини-чат |
|
|
Поиск |
|
|
Статистика |
Онлайн всего: 31 Гостей: 31 Пользователей: 0
|
|
Форма входа |
|
|
|