Даём квест ГГ при входе в определённую зону
|
|
|
Scouser
Четверг, 10.01.2013, 21:37 | Сообщение # 1
Статус: |
|
Опытный: |
|
Сообщений: |
1614 |
Награды: |
16 |
Регистрация: |
21.10.2012 |
|
Здравствуйте, с вами LaRento. В этой статье я хочу объяснить модмейкерам, как можно получить квест или его выполнение при входе в определённую зону.
Введение: часто игроки хотят выдать квест или выполнение его минизадач и даже его самого при входе в какое-нибудь место. Но не многие знают о такой вещи, как Space Restrictor. Это определённый объект, который выдаёт инфпоршни, вызывает функции из скриптов при входе в зону. Так же я объясню, как можно это сделать с задержкой времени. Хоть и существуют туторы по рестрикторам, но я хочу привести примеры, ведь новички порой не знают что такое Спейс рестриктор.
Практика:
1. Распаковываем all.spawn и открываем alife_локация.ltx. Пишем туда следующую секцию Спейс Рестриктора:
2. Открываем info_локация.xml и пишем
Писать о создании квеста я не буду, думаю, вы найдёте такие статьи. В рестрикторе можно указать любой поршень: начало квеста, завершение подзадачи, завершение самого квеста.
Выдача квеста с задержкой времени Для этого достаточно поменять логику:
Вызываем функцию Стоит поменять логику и вписать важу функция в xr_effects.script: 1. Открываем этот скрипт и пишем вашу функцию. 2. Меняем логику:
Проигрывание звука Тоже дело в логике:
Ну вот собственно и всё. Надеюсь, что у вас всё получится. Всего хорошего, удачи.
Сообщение отредактировал LaRento - Пятница, 11.01.2013, 22:44
|
|
Четверг, 10.01.2013, 21:37
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
21.10.2012 |
|
|
|
|
|
Dead Autumn
Статус: |
|
Бывалый: |
|
Сообщений: |
1171 |
Награды: |
1 |
Регистрация: |
14.08.2012 |
|
LaRento, всё хорошо, но поправьте, пожалуйста ошибку: Цитата (LaRento) [logic] ; логика(можно указываться прямо в секции) active = sr_idle@one ; указание активной логики
[sr_idle@one] ; эта логика on_actor_inside = nill %=имя_скрипта.имя_функции% ; думаю, что не будет вопросов Добавлено (10.01.2013, 21:50) --------------------------------------------- Уточню, если незаметно - пишется nil, а не nill.
|
|
Четверг, 10.01.2013, 21:50
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
14.08.2012 |
|
|
|
|
|
Scouser
Четверг, 10.01.2013, 21:53 | Сообщение # 3
Статус: |
|
Опытный: |
|
Сообщений: |
1614 |
Награды: |
16 |
Регистрация: |
21.10.2012 |
|
Sany@Prizrak, Ты что, там nil просто)Добавлено (10.01.2013, 21:53) --------------------------------------------- Sany@Prizrak, ой, я спутал, извиняюсь, наркоман я xD
|
|
Четверг, 10.01.2013, 21:53
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
21.10.2012 |
|
|
|
|
|
Dead Autumn
Статус: |
|
Бывалый: |
|
Сообщений: |
1171 |
Награды: |
1 |
Регистрация: |
14.08.2012 |
|
LaRento, в следующий раз будь внимательнее. Ведь кто-то скопирует, и вылет словит, а кто в итоге виноват? Потом докапывайся, в чём причина.Добавлено (10.01.2013, 21:56) --------------------------------------------- Shizz, да. Лично я, если задание требует выдачи при заходе на локацию, прописываю выдачу инфы через бинд. Добавлено (10.01.2013, 21:56) --------------------------------------------- А рестрикторы спавнить лучше скриптом.
|
|
Четверг, 10.01.2013, 21:56
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
14.08.2012 |
|
|
|
|
|
Scouser
Четверг, 10.01.2013, 22:01 | Сообщение # 5
Статус: |
|
Опытный: |
|
Сообщений: |
1614 |
Награды: |
16 |
Регистрация: |
21.10.2012 |
|
Shizz, Квест выдастся. ведь ты уже вошёл в зону.Добавлено (10.01.2013, 22:01) --------------------------------------------- Shizz, А если в метре, то не получит. Можешь ты просто радиус увеличить.
|
|
Четверг, 10.01.2013, 22:01
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
21.10.2012 |
|
|
|
|
|
Dead Autumn
Статус: |
|
Бывалый: |
|
Сообщений: |
1171 |
Награды: |
1 |
Регистрация: |
14.08.2012 |
|
del
Сообщение отредактировал Sany@Prizrak - Четверг, 10.01.2013, 22:02
|
|
Четверг, 10.01.2013, 22:02
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
14.08.2012 |
|
|
|
|
|
Scouser
Четверг, 10.01.2013, 22:08 | Сообщение # 7
Статус: |
|
Опытный: |
|
Сообщений: |
1614 |
Награды: |
16 |
Регистрация: |
21.10.2012 |
|
Sany@Prizrak, что?Добавлено (10.01.2013, 22:08) --------------------------------------------- Sany@Prizrak, Скриптам не легче. Ты создаёшь тем самым множество файлов, а так же , как известно, из-за большого количество скриптов, игра будет тормозить, all.spawn - самый стабильный вариант.
|
|
Четверг, 10.01.2013, 22:08
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
21.10.2012 |
|
|
|
|
|
Dead Autumn
Статус: |
|
Бывалый: |
|
Сообщений: |
1171 |
Награды: |
1 |
Регистрация: |
14.08.2012 |
|
LaRento, нет, ничего. Я написал почти то же самое, что иЦитата (LaRento) А если в метре, то не получит. Можешь ты просто радиус увеличить. Добавлено (10.01.2013, 22:09) ---------------------------------------------
Цитата (LaRento) Скриптам не легче. Ты создаёшь тем самым множество файлов, а так же , как известно, из-за большого количество скриптов, игра будет тормозить, all.spawn - самый стабильный вариант. Я всегда скриптом делаю, и ничего не тормозит. И в отличии от олспавна новую игру начинать не надо, достаточно правильно вклинить рестриктор в игру.
|
|
Четверг, 10.01.2013, 22:09
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
14.08.2012 |
|
|
|
|
|
Scouser
Четверг, 10.01.2013, 22:13 | Сообщение # 9
Статус: |
|
Опытный: |
|
Сообщений: |
1614 |
Награды: |
16 |
Регистрация: |
21.10.2012 |
|
Sany@Prizrak, Ну для кого как.Добавлено (10.01.2013, 22:13) --------------------------------------------- Sany@Prizrak, Сюжетникам и спавнерам, которые вклинились в это сильно, удобнее использовать all.spawn
|
|
Четверг, 10.01.2013, 22:13
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
21.10.2012 |
|
|
|
|
|
BozKurt
Четверг, 10.01.2013, 22:15 | Сообщение # 10
Статус: |
|
Опытный: |
|
Сообщений: |
1753 |
Награды: |
3 |
Регистрация: |
25.05.2012 |
|
Цитата on_actor_inside = nil %=имя_скрипта.имя_функции% ; думаю, что не будет вопросов Конечно не будет... до первого вылета.
|
|
Четверг, 10.01.2013, 22:15
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
25.05.2012 |
|
|
|
|
|
Scouser
Четверг, 10.01.2013, 22:18 | Сообщение # 11
Статус: |
|
Опытный: |
|
Сообщений: |
1614 |
Награды: |
16 |
Регистрация: |
21.10.2012 |
|
ColR_iT, nil не надо? У меня с пашит , хотя многие знакомые получали вылеты.
|
|
Четверг, 10.01.2013, 22:18
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
21.10.2012 |
|
|
|
|
|
Статус: |
|
Отмычка: |
|
Сообщений: |
85 |
Награды: |
2 |
Регистрация: |
05.03.2011 |
|
Цитата (LaRento) Sany@Prizrak, что?Добавлено (10.01.2013, 22:08)---------------------------------------------Sany@Prizrak, Скриптам не легче. Ты создаёшь тем самым множество файлов, а так же , как известно, из-за большого количество скриптов, игра будет тормозить, all.spawn - самый стабильный вариант. Поддерживаю Саню Призрака, скриптами спейс рестрикторы спавнить всех легче!
|
|
Четверг, 10.01.2013, 22:20
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
05.03.2011 |
|
|
|
|
|
BozKurt
Четверг, 10.01.2013, 22:20 | Сообщение # 13
Статус: |
|
Опытный: |
|
Сообщений: |
1753 |
Награды: |
3 |
Регистрация: |
25.05.2012 |
|
Проблема вот в этом: Код %=имя_скрипта.имя_функции%
|
|
Четверг, 10.01.2013, 22:20
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
25.05.2012 |
|
|
|
|
|
Dead Autumn
Статус: |
|
Бывалый: |
|
Сообщений: |
1171 |
Награды: |
1 |
Регистрация: |
14.08.2012 |
|
Цитата (LaRento) Сюжетникам и спавнерам, которые вклинились в это сильно, удобнее использовать all.spawn Я сюжетник и спавнер. Раньше пользовался олспавном, тратил кучу лишнего времени на тесты, пока не нарыл статью о спавне реста через скрипт. В общем, да, каждому своё.
|
|
Четверг, 10.01.2013, 22:21
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
14.08.2012 |
|
|
|
|
|
Scouser
Четверг, 10.01.2013, 22:22 | Сообщение # 15
Статус: |
|
Опытный: |
|
Сообщений: |
1614 |
Награды: |
16 |
Регистрация: |
21.10.2012 |
|
ColR_iT, Проверь, теперь так?
|
|
Четверг, 10.01.2013, 22:22
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
21.10.2012 |
|
|
|
|