i am trying to make after this quest completed player get exp/sp as a reward too but always throws me an error.
in which part of the quest i must put st.addExpAndSp(0,0) or should i put something else?
quest:
# Made by Kerberos v1.0 on 2009/05/08
# this script is part of the Official L2J Datapack Project.
# Visit http://www.l2jdp.com/forum for more details.
import sys
from com.l2jfrozen import Config
from com.l2jfrozen.gameserver.model.quest import State
from com.l2jfrozen.gameserver.model.quest import QuestState
from com.l2jfrozen.gameserver.model.quest.jython import QuestJython as JQuest
qn = "640_TheZeroHour"
#NPC
Kahman = 31554
#MONSTERS
MONSTERS = range(22105,22112)+range(22113,22120)+[22121]
#ITEMS
Fang = 57
REWARDS={
"1":[500 ,7575, 1],
"2":[500 ,6579, 1],
}
class Quest (JQuest) :
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
self.questItemIds = [Fang]
def onAdvEvent (self,event,npc, player) :
htmltext = event
st = player.getQuestState(qn)
if not st : return
if event == "31554-02.htm" :
st.set("cond","1")
st.setState(STARTED)
st.playSound("ItemSound.quest_accept")
elif event == "31554-08.htm" :
st.playSound("ItemSound.quest_finish")
st.exitQuest(True)
elif event in REWARDS.keys() :
cost,item,amount = REWARDS[event]
if st.getQuestItemsCount(Fang)>=cost :
st.takeItems(Fang,cost)
st.giveItems(item, amount)
htmltext = "31554-09.htm"
else :
htmltext = "31554-06.htm"
return htmltext
def onTalk (self, npc, player) :
htmltext = "<html><body>You are either not on a quest that involves this NPC, or you don't meet this NPC's minimum quest requirements.</body></html>"
st = player.getQuestState(qn)
if not st : return htmltext
id = st.getState()
if id == CREATED :
if player.getLevel() <= 8 :
htmltext = "31554-01.htm"
elif st.getQuestItemsCount(Fang) >= 1 :
htmltext = "31554-04.htm"
else :
htmltext = "31554-03.htm"
return htmltext
def onKill(self, npc, player, isPet) :
st = player.getQuestState(qn)
if not st : return
st.giveItems(Fang,int(Config.RATE_DROP_QUEST))
st.playSound("ItemSound.quest_itemget")
return
QUEST = Quest(640,qn,"The Zero Hour")
CREATED = State('Start', QUEST)
STARTED = State('Started', QUEST)
COMPLETED = State('Completed', QUEST)
QUEST.setInitialState(CREATED)
QUEST.addStartNpc(Kahman)
QUEST.addTalkId(Kahman)
for i in MONSTERS :
QUEST.addKillId(i)
You can post now and register later.
If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.
Dear players,
19.04 at 06:00 server time, the Airin server will be updated to Chronicle 2.
- The x2 updater will be disabled on April 18, 2025, at 23:59 and will become available again during the update.
- Server rates will be increased to x2.25;
- The siege of Innadril will take place on April 27 at 16:00 server time;
- Bonus Start will begin after the restart! Characters created after April 16, 00:00 will receive rewards.
You can download the full client for Airin C2 from the following link. Do not run the updater until tomorrow's update.
Be careful who you're buying interfaces from. Always do your research especially if someone randomly DMs you trying to sell shared stuff. You'll thank me later.
Question
aris96
i am trying to make after this quest completed player get exp/sp as a reward too but always throws me an error.
in which part of the quest i must put st.addExpAndSp(0,0) or should i put something else?
quest:
Edited by aris9611 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.