[question] Требуется помощь в написании квеста
Железо: кор 2 квад, 2 гига оперы
ОС: Винда Vista х32
Программы: мускул 5.1.0 х32, ява х32
Сборка: Gracia 2, L2Dream
Взялся создавать сервер.
Хочу написать простенький квест: взять квест, набить итемов с мобов, по сдачи квеста отспавнить РБ на указаных координатах.
Прошу выложить небольшой мануал по созданию нового квеста, описанию вставки его в сервер и в клиентскую часть.
Или если кому несложно написать скрипт квеста по моему описанию с пояснительными пометками в скрипте.
Юзал поиск, нашел только 1 мануал по квестописанию и тот устаревший (судя по откликам).
Проблема как раз в том, что все мануалы давно устарели.
Остается способ научного тыка, и копипаста с готовых квестов.
Я понимаю конечно) но я в яве ноль) хотябы список основных используемых комманд и их расшифоровка нужна...
from net.l2emuproject.gameserver.model.quest import State
from net.l2emuproject.gameserver.model.quest import QuestState
from net.l2emuproject.gameserver.model.quest.jython import QuestJython as JQuest
qn = "blablabla" #название квеста
#айди итемов
ITEM1 = 1
ITEM2 = 2
ITEM3 = 3
ITEM4 = 4
ITEMCOUNT = 5 #количество каждого из итемов
SNPC = 123456 #id стартового нпс
RB = 123456 #d РБ
#координаты спауна РБ
cordX=
cordY=
cordZ=
class Quest (JQuest) :
def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)
def onTalk (Self,npc,player):
st = player.getQuestState(qn)
npcId = npc.getNpcId()
if npcId == SNPC :
reward = 0
for i in [ITEM1,ITEM2,ITEM3,ITEM4] :
if st.getQuestItemsCount(i) >= ITEMCOUNT:
reward = reward + 1
if reward == ITEMCOUNT :
for i in [ITEM1,ITEM2,ITEM3,ITEM4] :
st.takeItems(i,ITEMCOUNT)
st.addSpawn(RB,cordX,cordY,cordZ)
st.exitQuest(1)
return
else:
st.exitQuest(1)
return "1.htm"
QUEST = Quest(blablabla,qn,"custom")
QUEST.addStartNpc(SNPC)
QUEST.addTalkId(SNPC)
Примерно так..
Делаешь дроп нужных итемов с мобов.
Делаешь нпс. При необходимом кол-ве нужных итемов он заспаунит рб в нужном месте.
Если итемов не хватает будет выдавать содержимое 1.htm
Как добавить объяснять не буду.
В питоне нет особо ничего сложного как никак язык сверх высокого уровня, реализовать можно практически все что угодно, т.к с явой связан на прямую
— FoBOSS

