import sys
from com.l2jfree.gameserver.model.actor.instance import L2PcInstance
from java.util import Iterator
from com.l2jfree.gameserver.datatables import SkillTable
from com.l2jfree import L2DatabaseFactory
from com.l2jfree.gameserver.model.quest import State
from com.l2jfree.gameserver.model.quest import QuestState
from com.l2jfree.gameserver.model.quest.jython import QuestJython as JQuest
qn = "9977_NPCBuffer"
NPC=[7106]
ADENA_ID=57
QuestId = 9977
QuestName = "NPCBuffer"
QuestDesc = "custom"
InitialHtml = "1.htm"
print "importing custom: 9977: NPCBuffer"
class Quest (JQuest) :
def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)
def onEvent(self,event,st):
htmltext = event
count=st.getQuestItemsCount(ADENA_ID)
if count < 15000 or st.getPlayer().getLevel() < 2 :
htmltext = "<html><head><body>No Tienes Adena.<br></body></html>"
else:
st.takeItems(ADENA_ID,0)
st.getPlayer().setTarget(st.getPlayer())
if event == "1":
st.takeItems(ADENA_ID,1000)
st.getPlayer().useMagic(SkillTable.getInstance().getInfo(9951,5),False,False)
st.getPlayer().restoreHPMP()
return "1.htm"
st.setState(COMPLETED)
#Wind Walk
if event == "2":
st.takeItems(ADENA_ID,10000)
SkillTable.getInstance().getInfo(1204,2).getEffects(st.getPlayer(),st.getPlayer())
st.getPlayer().restoreHPMP()
return "2.htm"
st.setState(COMPLETED)
#Arcane Protection
if event == "3":
st.takeItems(ADENA_ID,10000)
SkillTable.getInstance().getInfo(1354,1).getEffects(st.getPlayer(),st.getPlayer())
st.getPlayer().restoreHPMP()
return "2.htm"
st.setState(COMPLETED)
#Shield
if event == "4":
st.takeItems(ADENA_ID,10000)
SkillTable.getInstance().getInfo(1040,3).getEffects(st.getPlayer(),st.getPlayer())
st.getPlayer().restoreHPMP()
return "2.htm"
st.setState(COMPLETED)
#Might
if event == "5":
st.takeItems(ADENA_ID,10000)
SkillTable.getInstance().getInfo(1068,3).getEffects(st.getPlayer(),st.getPlayer())
st.getPlayer().restoreHPMP()
return "2.htm"
st.setState(COMPLETED)
#Mental Shield
if event == "6":
st.takeItems(ADENA_ID,10000)
SkillTable.getInstance().getInfo(1035,4).getEffects(st.getPlayer(),st.getPlayer())
st.getPlayer().restoreHPMP()
return "2.htm"
st.setState(COMPLETED)
if htmltext != event:
st.setState(COMPLETED)
st.exitQuest(1)
return htmltext
def onTalk (self,npc,player):
st = player.getQuestState(qn)
htmltext = "<html><head><body>No Tengo Nada que decirte.</body></html>"
st.setState(State.STARTED)
return InitialHtml
QUEST = Quest(QuestId,str(QuestId) + "_" + QuestName,QuestDesc)
for npcId in NPC:
QUEST.addStartNpc(npcId)
QUEST.addTalkId(npcId)
Paste this inside your init_py.