# # 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)