#
# Created by Evilbarbie on July 13th 06
#
print "importing Teleport by Race ...done"
import sys
from net.sf.l2j.gameserver.model.actor.instance import L2PcInstance
from net.sf.l2j.gameserver.model.quest import State
from net.sf.l2j.gameserver.model.quest import QuestState
from net.sf.l2j.gameserver.model.quest.jython import QuestJython as JQuest
TRISHA = 7059
CLARISSA = 7080
VALENTIA = 7177
ESMERALDA = 7233
BELLA = 7256
RICHLIN = 7320
ELISA = 7848
FLAUEN = 7899
TATIANA = 8275
ILYANA = 8320
MIRABEL = 7146
JASMINE = 7134
class Quest (JQuest) :
def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)
def onEvent (self,event,st):
htmltext = event
if event == "gate-01.htm":
return "gate-01.htm"
if event == "gate-02.htm":
return "gate-02.htm"
if event == "gate-03.htm":
return "gate-03.htm"
if event == "gate-04.htm":
return "gate-04.htm"
if event == "gate-05.htm":
return "gate-05.htm"
def onTalk (Self,npc,st):
npcId = npc.getNpcId()
Race = st.getPlayer().getRace()
# Each race has its own HTML
# Dion Castle Town
if npcId == TRISHA and Race in [Race.darkelf, Race.orc, Race.dwarf, Race.human, Race.elf]:
if race in [Race.darkelf]:
st.setState(STARTED)
return "gate-01.htm"
if Race in [Race.orc]:
st.setState(STARTED)
return "gate-02.htm"
if Race in [Race.dwarf]:
st.setState(STARTED)
return "gate-03.htm"
if Race in [Race.human]:
st.setState(STARTED)
return "gate-04.htm"
if Race in [Race.elf]:
st.setState(STARTED)
return "gate-05.htm"
# Giran Castle Town
if npcId == CLARISSA and Race in [Race.darkelf, Race.orc, Race.dwarf, Race.human, Race.elf]:
if race in [Race.darkelf]:
st.setState(STARTED)
return "gate-01.htm"
if Race in [Race.orc]:
st.setState(STARTED)
return "gate-02.htm"
if Race in [Race.dwarf]:
st.setState(STARTED)
return "gate-03.htm"
if Race in [Race.human]:
st.setState(STARTED)
return "gate-04.htm"
if Race in [Race.elf]:
st.setState(STARTED)
return "gate-05.htm"
# Town of Oren
if npcId == Valentia and Race in [Race.darkelf, Race.orc, Race.dwarf, Race.human, Race.elf]:
if race in [Race.darkelf]:
st.setState(STARTED)
return "gate-01.htm"
if Race in [Race.orc]:
st.setState(STARTED)
return "gate-02.htm"
if Race in [Race.dwarf]:
st.setState(STARTED)
return "gate-03.htm"
if Race in [Race.human]:
st.setState(STARTED)
return "gate-04.htm"
if Race in [Race.elf]:
st.setState(STARTED)
return "gate-05.htm"
# Gludio Castle Town
if npcId == BELLA and Race in [Race.darkelf, Race.orc, Race.dwarf, Race.human, Race.elf]:
if race in [Race.darkelf]:
st.setState(STARTED)
return "gate-01.htm"
if Race in [Race.orc]:
st.setState(STARTED)
return "gate-02.htm"
if Race in [Race.dwarf]:
st.setState(STARTED)
return "gate-03.htm"
if Race in [Race.human]:
st.setState(STARTED)
return "gate-04.htm"
if Race in [Race.elf]:
st.setState(STARTED)
return "gate-05.htm"
# Gludin Village
if npcId == RICHLIN and Race in [Race.darkelf, Race.orc, Race.dwarf, Race.human, Race.elf]:
if race in [Race.darkelf]:
st.setState(STARTED)
return "gate-01.htm"
if Race in [Race.orc]:
st.setState(STARTED)
return "gate-02.htm"
if Race in [Race.dwarf]:
st.setState(STARTED)
return "gate-03.htm"
if Race in [Race.human]:
st.setState(STARTED)
return "gate-04.htm"
if Race in [Race.elf]:
st.setState(STARTED)
return "gate-05.htm"
# Town of Aden
if npcId == ELISA and Race in [Race.darkelf, Race.orc, Race.dwarf, Race.human, Race.elf]:
if race in [Race.darkelf]:
st.setState(STARTED)
return "gate-01.htm"
if Race in [Race.orc]:
st.setState(STARTED)
return "gate-02.htm"
if Race in [Race.dwarf]:
st.setState(STARTED)
return "gate-03.htm"
if Race in [Race.human]:
st.setState(STARTED)
return "gate-04.htm"
if Race in [Race.elf]:
st.setState(STARTED)
return "gate-05.htm"
# Heine
if npcId == FLAUEN and Race in [Race.darkelf, Race.orc, Race.dwarf, Race.human, Race.elf]:
if race in [Race.darkelf]:
st.setState(STARTED)
return "gate-01.htm"
if Race in [Race.orc]:
st.setState(STARTED)
return "gate-02.htm"
if Race in [Race.dwarf]:
st.setState(STARTED)
return "gate-03.htm"
if Race in [Race.human]:
st.setState(STARTED)
return "gate-04.htm"
if Race in [Race.elf]:
st.setState(STARTED)
return "gate-05.htm"
# Goddard Castle Town
if npcId == TATIANA and Race in [Race.darkelf, Race.orc, Race.dwarf, Race.human, Race.elf]:
if race in [Race.darkelf]:
st.setState(STARTED)
return "gate-01.htm"
if Race in [Race.orc]:
st.setState(STARTED)
return "gate-02.htm"
if Race in [Race.dwarf]:
st.setState(STARTED)
return "gate-03.htm"
if Race in [Race.human]:
st.setState(STARTED)
return "gate-04.htm"
if Race in [Race.elf]:
st.setState(STARTED)
return "gate-05.htm"
# Rune Town
if npcId == ILYANA and Race in [Race.darkelf, Race.orc, Race.dwarf, Race.human, Race.elf]:
if race in [Race.darkelf]:
st.setState(STARTED)
return "gate-01.htm"
if Race in [Race.orc]:
st.setState(STARTED)
return "gate-02.htm"
if Race in [Race.dwarf]:
st.setState(STARTED)
return "gate-03.htm"
if Race in [Race.human]:
st.setState(STARTED)
return "gate-04.htm"
if Race in [Race.elf]:
st.setState(STARTED)
return "gate-05.htm"
# Hunters Village
if npcId == ESMERALDA and Race in [Race.darkelf, Race.orc, Race.dwarf, Race.human, Race.elf]:
if race in [Race.darkelf]:
st.setState(STARTED)
return "gate-01.htm"
if Race in [Race.orc]:
st.setState(STARTED)
return "gate-02.htm"
if Race in [Race.dwarf]:
st.setState(STARTED)
return "gate-03.htm"
if Race in [Race.human]:
st.setState(STARTED)
return "gate-04.htm"
if Race in [Race.elf]:
st.setState(STARTED)
return "gate-05.htm"
# Elven Village
if npcId == MIRABEL and Race in [Race.darkelf, Race.orc, Race.dwarf, Race.human, Race.elf]:
if race in [Race.darkelf]:
st.setState(STARTED)
return "gate-01.htm"
if Race in [Race.orc]:
st.setState(STARTED)
return "gate-02.htm"
if Race in [Race.dwarf]:
st.setState(STARTED)
return "gate-03.htm"
if Race in [Race.human]:
st.setState(STARTED)
return "gate-04.htm"
if Race in [Race.elf]:
st.setState(STARTED)
return "gate-05.htm"
# Dark Elven Village
if npcId == JASMINE and Race in [Race.darkelf, Race.orc, Race.dwarf, Race.human, Race.elf]:
if race in [Race.darkelf]:
st.setState(STARTED)
return "gate-01.htm"
if Race in [Race.orc]:
st.setState(STARTED)
return "gate-02.htm"
if Race in [Race.dwarf]:
st.setState(STARTED)
return "gate-03.htm"
if Race in [Race.human]:
st.setState(STARTED)
return "gate-04.htm"
if Race in [Race.elf]:
st.setState(STARTED)
return "gate-05.htm"
QUEST = Quest(gate,"gate_Teleport_by_race","Teleport_by_race")
CREATED = State('Start', QUEST)
STARTED = State('Started', QUEST)
COMPLETED = State('Completed', QUEST)
QUEST.setInitialState(CREATED)
QUEST.addStartNpc(TRISHA)
QUEST.addStartNpc(CLARISSA)
QUEST.addStartNpc(VALENTIA)
QUEST.addStartNpc(ESMERALDA)
QUEST.addStartNpc(BELLA)
QUEST.addStartNpc(RICHLIN)
QUEST.addStartNpc(ELISA)
QUEST.addStartNpc(FLAUEN)
QUEST.addStartNpc(ILYANA)
QUEST.addStartNpc(TATIANA)
QUEST.addStartNpc(JASMINE)
QUEST.addStartNpc(MIRABEL)
CREATED.addTalkId(TRISHA)
CREATED.addTalkId(CLARISSA)
CREATED.addTalkId(VALENTIA)
CREATED.addTalkId(ESMERALDA)
CREATED.addTalkId(BELLA)
CREATED.addTalkId(RICHLIN)
CREATED.addTalkId(ELISA)
CREATED.addTalkId(FLAUEN)
CREATED.addTalkId(ILYANA)
CREATED.addTalkId(TATIANA)
CREATED.addTalkId(JASMINE)
CREATED.addTalkId(MIRABEL)