я пробывал и это, но не выходит(
Добавлено через 4 минуты
Код:
# -*- coding:Utf-8 -*-
# Made by Mr. Have fun! Version 0.2
import sys
from com.l2jserver.gameserver.model.quest import State
from com.l2jserver.gameserver.model.quest import QuestState
from com.l2jserver.gameserver.model.quest.jython import QuestJython as JQuest
qn = "1_LettersOfLove1"
#NPCs
DARIN = 30048
ROXXY = 30006
BAULRO = 30033
#ITEMS
DARINGS_LETTER = 687
RAPUNZELS_KERCHIEF = 688
DARINGS_RECEIPT = 1079
BAULS_POTION = 1080
#REWARD
NECKLACE = 906
class Quest (JQuest) :
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
self.questItemIds = [DARINGS_LETTER, RAPUNZELS_KERCHIEF, DARINGS_RECEIPT, BAULS_POTION]
def onAdvEvent (self,event,npc, player) :
htmltext = event
st = player.getQuestState(qn)
if not st : return
if event == "daring_q0001_06.htm" :
st.set("cond","1")
st.setState(State.STARTED)
st.playSound("ItemSound.quest_accept")
if st.getQuestItemsCount(DARINGS_LETTER) == 0 :
st.giveItems(DARINGS_LETTER,1)
return htmltext
def onTalk (self,npc,player):
st = player.getQuestState(qn)
htmltext = "quest_error_q0001_1.htm"
if not st: return htmltext
npcId = npc.getNpcId()
id = st.getState()
cond = st.getInt("cond")
ItemsCount_DL = st.getQuestItemsCount(DARINGS_LETTER)
ItemsCount_RK = st.getQuestItemsCount(RAPUNZELS_KERCHIEF)
ItemsCount_DR = st.getQuestItemsCount(DARINGS_RECEIPT)
ItemsCount_BP = st.getQuestItemsCount(BAULS_POTION)
if id == State.COMPLETED :
htmltext = "quest_error_q0001_2.htm"
elif npcId == DARIN and id == State.CREATED:
if player.getLevel() >= 2 :
if cond < 15 :
htmltext = "daring_q0001_02.htm"
else:
htmltext = "daring_q0001_01.htm"
st.exitQuest(1)
else:
htmltext = "quest_error_q0001_3.htm"
st.exitQuest(1)
elif id == State.STARTED :
if npcId == ROXXY and cond:
if ItemsCount_RK == 0 and ItemsCount_DL :
htmltext = "rapunzel_q0001_01.htm"
st.takeItems(DARINGS_LETTER,-1)
st.giveItems(RAPUNZELS_KERCHIEF,1)
st.set("cond","2")
st.playSound("ItemSound.quest_middle")
elif ItemsCount_BP or ItemsCount_DR :
htmltext = "rapunzel_q0001_03.htm"
elif ItemsCount_RK :
htmltext = "rapunzel_q0001_02.htm"
elif npcId == DARIN and cond and ItemsCount_RK > 0:
htmltext = "daring_q0001_08.htm"
st.takeItems(RAPUNZELS_KERCHIEF,-1)
st.giveItems(DARINGS_RECEIPT,1)
st.set("cond","3")
st.playSound("ItemSound.quest_middle")
elif npcId == BAULRO and cond:
if ItemsCount_DR > 0 :
htmltext = "baul_q0001_01.htm"
st.takeItems(DARINGS_RECEIPT,-1)
st.giveItems(BAULS_POTION,1)
st.set("cond","4")
st.playSound("ItemSound.quest_middle")
elif ItemsCount_BP > 0 :
htmltext = "baul_q0001_02.htm"
elif npcId == DARIN and cond and ItemsCount_RK == 0:
if ItemsCount_DR > 0 :
htmltext = "daring_q0001_09.htm"
elif ItemsCount_BP > 0 :
htmltext = "daring_q0001_10.htm"
st.takeItems(BAULS_POTION,-1)
st.giveItems(57,2466)
st.giveItems(NECKLACE,1)
st.addExpAndSp(5672,446)
st.unset("cond")
st.exitQuest(False)
st.playSound("ItemSound.quest_finish")
else:
htmltext = "daring_q0001_07.htm"
return htmltext
QUEST = Quest(1,qn,"Письмо Любви")
QUEST.addStartNpc(DARIN)
QUEST.addTalkId(DARIN)
QUEST.addTalkId(ROXXY)
QUEST.addTalkId(BAULRO)
Добавлено через 8 минут
а вот еше 1 вопрос, а можно сделать так, допустим у меня есть квест написаный на яве, то его как нить можно впоять в сервак. чтоб работал?