Название: Создаём собственные квесты (часть 1) [Версия для печати] Автор: admin Время: 2024-9-17 18:39 Название: Создаём собственные квесты (часть 1) Хроники Interlude7 m2 G S3 J/ i Сборка L2j . p2 |* @6 x4 E, U% a7 L! XПример основан на сборке L2J. + d F4 h/ F4 o! v5 T 7 X; s0 A u5 V1 m+ ^3 G( PПервое что нужно сделать, это добавить необходимые Java классы в квест. , s5 T, e8 I8 g- A" P! r# W1 N
Тут объявляем квест выполненным, сбрасываем квестовый дроп, забираем все клыки у игрока и даем ему награду. Затем сообщаем серверу, что квест завершен и больше не повторяется. (st.exitQuest(False))' i9 y* `/ Q' g: s
- e$ [5 W, K c! m; H' l) p9 p# W+ v9 v# _& k7 }
9 k% @- s6 i. B
И наконец вспомогательная функция для проверки необходимого количества клыков у игрока для завершения квеста. (st должна быть в QuestState): 5 j! e, c' e' Z, a ?. } 0 [9 X( Y2 Q( j- Z7 g7 _9 M* m
def check(st) :% [/ ~! M* W* q" d$ E
if getCount(st) >= 4 :9 b- \! N4 Q/ \' l {5 G
completed(st)/ u1 |' h- g! q- A. ^
return
Скопировать код
Затем мы объявляем непосредственно сам класс quest. Quest – класс python, который расширяет java класс net.sf.l2j.gameserver.model.quest.jython.QuestJython. Затем мы объявляем метод onEvent, который вызывается Явой, если квест кто то начал.4 w6 \! L, d1 F" T1 V& l, \' q
4 o0 o0 b" B% Z% h" |2 \