Example #1
0
 def onAdvEvent (self,event,npc,pc) :
   if event == "Close_Door1" :
      DoorTable.getInstance().getDoor(19160001).closeMe()
   elif event == "Close_Door2" :
      DoorTable.getInstance().getDoor(19160010).closeMe()
      DoorTable.getInstance().getDoor(19160011).closeMe()
   return
Example #2
0
 def onAdvEvent(self, event, npc, pc):
     if event == "Close_Door1":
         DoorTable.getInstance().getDoor(19160001).closeMe()
     elif event == "Close_Door2":
         DoorTable.getInstance().getDoor(19160010).closeMe()
         DoorTable.getInstance().getDoor(19160011).closeMe()
     return
 def onTalk(self, npc, player):
     npcId = npc.getNpcId()
     htmltext = ""
     if npcId == 13001:  #heart of warding
         if self.antharasAI:
             status = GrandBossManager.getInstance().getBossStatus(29019)
             statusW = GrandBossManager.getInstance().getBossStatus(29066)
             statusN = GrandBossManager.getInstance().getBossStatus(29067)
             statusS = GrandBossManager.getInstance().getBossStatus(29068)
             if status == 2 or statusW == 2 or statusN == 2 or statusS == 2:
                 htmltext = "13001-02.htm"
             elif status == 3 or statusW == 3 or statusN == 3 or statusS == 3:
                 htmltext = "13001-01.htm"
             elif status == 0 or status == 1:  #If entrance to see Antharas is unlocked (he is Dormant or Waiting)
                 st = player.getQuestState(qn)
                 if st.getQuestItemsCount(3865) > 0:
                     st.takeItems(3865, 1)
                     zone = GrandBossManager.getInstance().getZone(
                         179700, 113800, -7709)
                     if zone:
                         zone.allowPlayerEntry(player, 30)
                     x = 179700 + Rnd.get(700)
                     y = 113800 + Rnd.get(2100)
                     player.teleToLocation(x, y, -7709)
                     if status == 0:
                         self.antharasAI.setAntharasSpawnTask()
                     return
                 else:
                     htmltext = "13001-03.htm"
     elif npcId == 31859:  #antharas teleport cube
         x = 79800 + Rnd.get(600)
         y = 151200 + Rnd.get(1100)
         player.teleToLocation(x, y, -3534)
         return
     elif npcId == 31385:  #heart of volcano
         htmltext = "31385-01.htm"
         if self.valakasAI:
             status = GrandBossManager.getInstance().getBossStatus(29028)
             if status == 0 or status == 1:  #If entrance to see Valakas is unlocked (he is Dormant or Waiting)
                 st = player.getQuestState(qn)
                 if self.count >= 200:
                     htmltext = "31385-03.htm"
                 elif st.getInt("allowEnter") == 1:
                     st.unset("allowEnter")
                     zone = GrandBossManager.getInstance().getZone(
                         212852, -114842, -1632)
                     if zone:
                         zone.allowPlayerEntry(player, 30)
                     x = 204328 + Rnd.get(600)
                     y = -111874 + Rnd.get(600)
                     player.teleToLocation(x, y, 70)
                     self.count = self.count + 1
                     if status == 0:
                         valakas = GrandBossManager.getInstance().getBoss(
                             29028)
                         self.valakasAI.startQuestTimer(
                             "1001", Config.Valakas_Wait_Time, valakas,
                             None)
                         GrandBossManager.getInstance().setBossStatus(
                             29028, 1)
                     return
                 else:  #player cheated, wasn't ported via npc Klein
                     htmltext = "31385-04.htm"
             elif status == 2:
                 htmltext = "31385-02.htm"
             else:
                 htmltext = "31385-01.htm"
         else:
             htmltext = "31385-01.htm"
     elif npcId == 31384:  #Gatekeeper of Fire Dragon
         DoorTable.getInstance().getDoor(24210004).openMe()
         return
     elif npcId == 31686:  #Gatekeeper of Fire Dragon
         DoorTable.getInstance().getDoor(24210006).openMe()
         return
     elif npcId == 31687:  #Gatekeeper of Fire Dragon
         DoorTable.getInstance().getDoor(24210005).openMe()
         return
     elif npcId == 31540:  #Watcher of Valakas Klein
         st = player.getQuestState(qn)
         if self.count < 50:
             htmltext = "31540-01.htm"
         elif self.count < 100:
             htmltext = "31540-02.htm"
         elif self.count < 150:
             htmltext = "31540-03.htm"
         elif self.count < 200:
             htmltext = "31540-04.htm"
         else:
             htmltext = "31540-05.htm"
     elif npcId == 31759:  #valakas teleport cube
         x = 150037 + Rnd.get(500)
         y = -57720 + Rnd.get(500)
         player.teleToLocation(x, y, -2976)
         return
     return htmltext
 def onKill(self, npc, player, isPet):
     id = npc.getNpcId()
     if id == Captain:
         HellboundManager.getInstance().changeLevel(9)
         DoorTable.getInstance().getDoor(20250001).openMe()
Example #5
0
 def onTalk(self, npc, player):
     st = player.getQuestState(qn)
     npcId = npc.getNpcId()
     htmltext = None
     if npcId == 32034:
         if st.getQuestItemsCount(8064) == 0 and st.getQuestItemsCount(
                 8065) == 0 and st.getQuestItemsCount(8067) == 0:
             return "<html><body>The Temple Gatekeeper:<br>You have nothing that would cover the holes.<br>(You must have a Visitor's Mark, a Faded Visitor's Mark, or a Pagan's Mark in order to open this door.)</body></html>"
         htmltext = "FadedMark.htm"
         DoorTable.getInstance().getDoor(19160001).openMe()
         self.startQuestTimer("Close_Door1", 10000, None, None)
     elif npcId == 32035:
         DoorTable.getInstance().getDoor(19160001).openMe()
         self.startQuestTimer("Close_Door1", 10000, None, None)
         htmltext = "FadedMark.htm"
     elif npcId == 32036:
         if not st.getQuestItemsCount(8067):
             htmltext = "<html><body>The Temple Gatekeeper:<br>Show your Mark or be gone from my sight!<br>Only those who possess the Pagan's Mark may pass through this gate!</body></html>"
         else:
             htmltext = "<html><body>The Temple Gatekeeper:<br>On seeing the Pagan's Mark, the statue's probing eyes go blank.<br>With the quiet whir of an engine, the gate swings open...</body></html>"
             self.startQuestTimer("Close_Door2", 10000, None, None)
             DoorTable.getInstance().getDoor(19160010).openMe()
             DoorTable.getInstance().getDoor(19160011).openMe()
     elif npcId == 32037:
         DoorTable.getInstance().getDoor(19160010).openMe()
         DoorTable.getInstance().getDoor(19160011).openMe()
         self.startQuestTimer("Close_Door2", 10000, None, None)
         htmltext = "FadedMark.htm"
     st.exitQuest(1)
     return htmltext
Example #6
0
	def beleth_unlock(self, arg):
		GrandBossManager.getInstance().setBossStatus(29118, 0)
		DoorTable.getInstance().getDoor(20240001).openMe()
Example #7
0
 def onAdvEvent(self, event, npc, player):
     if npc:
         npcId = npc.getNpcId()
         npcObjId = npc.getObjectId()
     if event == "keltasRespawn":
         if self.hellboundLevel >= 5: return
         self.keltasloc = []
         xx, yy, zz = KeltasSpawn
         newKeltas = self.addSpawn(Keltas, xx, yy, zz, 0, False, 0)
         self.keltasloc.append(newKeltas)
         self.keltasmin = []
         self.Keltas = 0
         for i in range(31):
             xx, yy, zz = KeltasMinionsSpawns[i]
             RndMobSpawn = KeltasMinions[Rnd.get(len(KeltasMinions))]
             newKeltasMinion = self.addSpawn(RndMobSpawn, xx, yy, zz, 0,
                                             False, 0)
             self.keltasmin.append(newKeltasMinion)
     if event == "LevelCheck":
         HellboundManager.getInstance().checkHellboundLevel()
         newLevel = HellboundManager.getInstance().getLevel()
         self.hellboundTrust = HellboundManager.getInstance().getTrust()
         if newLevel > self.hellboundLevel:
             self.hellboundLevel = newLevel
             print "---- Hellbound achieved Level " + str(
                 self.hellboundLevel)
             announce = "地獄邊界已經達到的階段: " + str(self.hellboundLevel)
             Announcements.getInstance().announceToAll(announce)
             if newLevel == 1:
                 for i in self.Warpgateloc:
                     i.deleteMe()
                 for i in self.Warpgate1loc:
                     i.deleteMe()
                 newWarpgate6 = self.addSpawn(32319, 112080, 219568, -3664,
                                              0, False, 0)
                 newWarpgate6 = self.addSpawn(32319, -16899, 209827, -3640,
                                              0, False, 0)
             if newLevel == 2:
                 newFalk = self.addSpawn(32297, -19904, 250016, -3240,
                                         12288, False, 0)  # 福爾克
             if newLevel == 3:
                 xx, yy, zz = KeltasSpawn
                 newKeltas = self.addSpawn(Keltas, xx, yy, zz, 0, False, 0)
                 self.keltasloc.append(newKeltas)
                 self.Keltas = 0
                 self.keltasmin = []
                 for i in range(31):
                     xx, yy, zz = KeltasMinionsSpawns[i]
                     RndMobSpawn = KeltasMinions[Rnd.get(
                         len(KeltasMinions))]
                     newKeltasMinion = self.addSpawn(
                         RndMobSpawn, xx, yy, zz, 0, False, 0)
                     self.keltasmin.append(newKeltasMinion)
             if newLevel == 4:
                 newDerek = self.addSpawn(ghostofderek, -28058, 256885,
                                          -1934, 0, False, 0)
             if newLevel == 5:
                 for i in self.buronloc:
                     i.deleteMe()
                 for i in self.kiefloc:
                     i.deleteMe()
                 for i in self.keltasloc:
                     i.deleteMe()
                 for i in self.keltasmin:
                     i.deleteMe()
                 newSolomon = self.addSpawn(Solomon, -28916, 249381, -3472,
                                            0, False, 0)
                 newTraitor = self.addSpawn(Traitor, -27352, 252387, -3520,
                                            5416, False, 0)
                 newKief = self.addSpawn(Kief, -28357, 248993, -3472, 16384,
                                         False, 0)
                 newBuron = self.addSpawn(Buron, -28567, 248994, -3472,
                                          16384, False, 0)
             if newLevel == 6:
                 changeBoxesSpawnState(1)
             if newLevel == 7:
                 changeChimeraSpawnState(1)
                 LOC = LOCS[Rnd.get(len(LOCS))]
                 CeltrespTime = (18 +
                                 Rnd.get(36)) * 100  #between 30m and 1h
                 newCeltus = HellboundManager.getInstance().addSpawn(
                     celtus, LOC[0], LOC[1], LOC[2], 0, CeltrespTime)
             if newLevel == 8:
                 newCaptain = HellboundManager.getInstance().addSpawn(
                     Captain, 4766, 243995, -1928, 36561, 0)
         if self.hellboundLevel >= 5:
             DoorTable.getInstance().getDoor(19250001).openMe()
             DoorTable.getInstance().getDoor(19250002).openMe()
         if self.hellboundLevel < 7:
             DoorTable.getInstance().getDoor(20250002).closeMe()
         if self.hellboundLevel >= 7:
             DoorTable.getInstance().getDoor(20250002).openMe()
         if self.hellboundLevel < 9:
             DoorTable.getInstance().getDoor(20250001).closeMe()
         if self.hellboundLevel >= 9:
             DoorTable.getInstance().getDoor(20250001).openMe()
Example #8
0
 def onTalk (self,npc,player):
    npcId = npc.getNpcId()
    htmltext = ""
    if npcId == 13001 : #heart of warding
        if self.antharasAI :
            status = GrandBossManager.getInstance().getBossStatus(29019)
            statusW = GrandBossManager.getInstance().getBossStatus(29066)
            statusN = GrandBossManager.getInstance().getBossStatus(29067)
            statusS = GrandBossManager.getInstance().getBossStatus(29068)
            if status == 2 or statusW == 2 or statusN == 2 or statusS == 2:
                htmltext = "13001-02.htm"
            elif status == 3 or statusW == 3 or statusN == 3 or statusS == 3:
                htmltext = "13001-01.htm"
            elif status == 0 or status == 1 : #If entrance to see Antharas is unlocked (he is Dormant or Waiting)
                st = player.getQuestState(qn)
                if st.getQuestItemsCount(3865) > 0 :
                    st.takeItems(3865,1)
                    zone = GrandBossManager.getInstance().getZone(181323,114850,-7618) #Update by rocknow
                    if zone : 
                        zone.allowPlayerEntry(player,30)
                    x = 174170 + Rnd.get(260)      #Update by rocknow
                    y = 113983 + Rnd.get(1500)     #Update by rocknow
                    player.teleToLocation(x,y,-7709)
                    if status == 0 :
                        self.antharasAI.startQuestTimer("waiting",0, npc, None)        #Update by rocknow
                    return
                else :
                    htmltext = "13001-03.htm"
    elif npcId == 31859 : #antharas teleport cube
        x = 79800 + Rnd.get(600)
        y = 151200 + Rnd.get(1100)
        player.teleToLocation(x,y,-3534)
        return
    elif npcId == 31385 : #heart of volcano
        htmltext = "31385-01.htm"
        if self.valakasAI :
            status = GrandBossManager.getInstance().getBossStatus(29028)
            if status == 0 or status == 1 : #If entrance to see Valakas is unlocked (he is Dormant or Waiting)
                st = player.getQuestState(qn)
                if self.count >= 200 :
                   htmltext = "31385-03.htm"
                elif st.getInt("allowEnter") == 1:
                   st.unset("allowEnter")
                   zone = GrandBossManager.getInstance().getZone(212852,-114842,-1632)
                   if zone :
                      zone.allowPlayerEntry(player,30)
                   x = 204328 + Rnd.get(600)
                   y = -111874 + Rnd.get(600)
                   player.teleToLocation(x,y,70)
                   self.count = self.count+1
                   if status == 0 :
                      valakas = GrandBossManager.getInstance().getBoss(29028)
                      self.valakasAI.startQuestTimer("1001",Config.Valakas_Wait_Time, valakas, None)
                      GrandBossManager.getInstance().setBossStatus(29028,1)
                   return
                #Update by rocknow-Start
                elif st.getQuestItemsCount(7267) > 0 :
                   st.takeItems(7267,1)
                   zone = GrandBossManager.getInstance().getZone(212852,-114842,-1632)
                   if zone :
                      zone.allowPlayerEntry(player,30)
                   x = 204328 + Rnd.get(600)
                   y = -111874 + Rnd.get(600)
                   player.teleToLocation(x,y,70)
                   self.count = self.count+1
                   if status == 0 :
                      valakas = GrandBossManager.getInstance().getBoss(29028)
                      self.valakasAI.startQuestTimer("1001",Config.Valakas_Wait_Time, valakas, None)
                      GrandBossManager.getInstance().setBossStatus(29028,1)
                   return
                #Update by rocknow-End
                else: #player cheated, wasn't ported via npc Klein
                  htmltext = "31385-04.htm"   
            elif status == 2 :
                htmltext = "31385-02.htm"
            else :
                htmltext = "31385-01.htm"
        else :
            htmltext = "31385-01.htm"
    elif npcId == 31384 : #Gatekeeper of Fire Dragon
        DoorTable.getInstance().getDoor(24210004).openMe()
        return
    elif npcId == 31686 : #Gatekeeper of Fire Dragon
        DoorTable.getInstance().getDoor(24210006).openMe()
        return
    elif npcId == 31687 : #Gatekeeper of Fire Dragon
        DoorTable.getInstance().getDoor(24210005).openMe()
        return
    elif npcId == 31540 : #Watcher of Valakas Klein
        st = player.getQuestState(qn)
        if self.count < 50 :
           htmltext = "31540-01.htm"
        elif self.count < 100 :
           htmltext = "31540-02.htm"
        elif self.count < 150 :
           htmltext = "31540-03.htm"
        elif self.count < 200 :
           htmltext = "31540-04.htm"
        else:
           htmltext = "31540-05.htm"
    elif npcId == 31759 : #valakas teleport cube
        x = 150037 + Rnd.get(500)
        y = -57720 + Rnd.get(500)
        player.teleToLocation(x,y,-2976)
        return
    return htmltext
	def onAdvEvent (self, event, npc, player) :
		if npc:
			npcId = npc.getNpcId()
			npcObjId = npc.getObjectId()
		if event == "keltasRespawn":
			if self.hellboundLevel >= 5: return
			self.keltasloc = []
			xx, yy, zz = KeltasSpawn
			newKeltas = self.addSpawn(Keltas, xx, yy, zz, 0, False, 0)
			self.keltasloc.append(newKeltas)
			self.keltasmin = []
			self.Keltas = 0
			for i in range(31):
				xx, yy, zz = KeltasMinionsSpawns[i]
				RndMobSpawn = KeltasMinions[Rnd.get(len(KeltasMinions))]
				newKeltasMinion = self.addSpawn(RndMobSpawn, xx, yy, zz, 0, False, 0)
				self.keltasmin.append(newKeltasMinion)
		if event == "LevelCheck":
			HellboundManager.getInstance().checkHellboundLevel()
			newLevel = HellboundManager.getInstance().getLevel()
			self.hellboundTrust = HellboundManager.getInstance().getTrust()
			if newLevel > self.hellboundLevel:
				self.hellboundLevel = newLevel
				print "---- Hellbound achieved Level " + str(self.hellboundLevel)
				announce = "地獄邊界已經達到的等級: " + str(self.hellboundLevel)
				Announcements.getInstance().announceToAll(announce)
				if newLevel == 1:
					for i in self.Warpgateloc :
						i.deleteMe()
					for i in self.Warpgate1loc :
						i.deleteMe()
					newWarpgate6 = self.addSpawn(32319, 112080, 219568, -3664, 0, False, 0)
					newWarpgate6 = self.addSpawn(32319, -16899, 209827, -3640, 0, False, 0)
				if newLevel == 2:
					newFalk = self.addSpawn(32297, -19904, 250016, -3240, 12288, False, 0)  # 福爾克
				if newLevel == 3:
					xx, yy, zz = KeltasSpawn
					newKeltas = self.addSpawn(Keltas, xx, yy, zz, 0, False, 0)
					self.keltasloc.append(newKeltas)
					self.Keltas = 0
					self.keltasmin = []
					for i in range(31):
						xx, yy, zz = KeltasMinionsSpawns[i]
						RndMobSpawn = KeltasMinions[Rnd.get(len(KeltasMinions))]
						newKeltasMinion = self.addSpawn(RndMobSpawn, xx, yy, zz, 0, False, 0)
						self.keltasmin.append(newKeltasMinion)
				if newLevel == 4:
					newDerek = self.addSpawn(ghostofderek, -28058, 256885, -1934, 0, False, 0)
				if newLevel == 5:
					for i in self.buronloc :
						i.deleteMe()
					for i in self.kiefloc :
						i.deleteMe()
					for i in self.keltasloc :
						i.deleteMe()
					for i in self.keltasmin :
						i.deleteMe()
					newSolomon = self.addSpawn(Solomon, -28916, 249381, -3472, 0, False, 0)
					newTraitor = self.addSpawn(Traitor, -27352, 252387, -3520, 5416, False, 0)
					newKief = self.addSpawn(Kief, -28357, 248993, -3472, 16384, False, 0)
					newBuron = self.addSpawn(Buron, -28567, 248994, -3472, 16384, False, 0)
				if newLevel == 6:
					changeBoxesSpawnState(1)
				if newLevel == 7:
					changeChimeraSpawnState(1)
					LOC = LOCS[Rnd.get(len(LOCS))]
					CeltrespTime = (18 + Rnd.get(36)) * 100 #between 30m and 1h
					newCeltus = HellboundManager.getInstance().addSpawn(celtus, LOC[0], LOC[1], LOC[2], 0, CeltrespTime)
				if newLevel == 8:
					newCaptain = HellboundManager.getInstance().addSpawn(Captain, 4766, 243995, -1928, 36561, 0)
				if newLevel == 9:
					newWarpgate = self.addSpawn(32319, 112080, 219568, -3664, 0, False, 0)
					newWarpgate = self.addSpawn(32319, -16899, 209827, -3640, 0, False, 0)
			if self.hellboundLevel >= 5:
				DoorTable.getInstance().getDoor(19250001).openMe()
				DoorTable.getInstance().getDoor(19250002).openMe()
			if self.hellboundLevel < 7:
				DoorTable.getInstance().getDoor(20250002).closeMe()
			if self.hellboundLevel >= 7:
				DoorTable.getInstance().getDoor(20250002).openMe()
			if self.hellboundLevel < 9:
				DoorTable.getInstance().getDoor(20250001).closeMe()
			if self.hellboundLevel >= 9:
				DoorTable.getInstance().getDoor(20250001).openMe()
Example #10
0
 def onTalk (self,npc,player):
   st = player.getQuestState(qn)
   npcId = npc.getNpcId()
   htmltext = None
   if npcId == 32034 :
     if st.getQuestItemsCount(8064) == 0 and st.getQuestItemsCount(8065) == 0 and st.getQuestItemsCount(8067) == 0:
         return "<html><body>The Temple Gatekeeper:<br>You have nothing that would cover the holes.<br>(You must have a Visitor's Mark, a Faded Visitor's Mark, or a Pagan's Mark in order to open this door.)</body></html>"
     htmltext = "FadedMark.htm"
     DoorTable.getInstance().getDoor(19160001).openMe()
     self.startQuestTimer("Close_Door1",10000,None,None)
   elif npcId == 32035:
     DoorTable.getInstance().getDoor(19160001).openMe()
     self.startQuestTimer("Close_Door1",10000,None,None)
     htmltext = "FadedMark.htm"
   elif npcId == 32036:
     if not st.getQuestItemsCount(8067) :
       htmltext = "<html><body>The Temple Gatekeeper:<br>Show your Mark or be gone from my sight!<br>Only those who possess the Pagan's Mark may pass through this gate!</body></html>"
     else:
       htmltext = "<html><body>The Temple Gatekeeper:<br>On seeing the Pagan's Mark, the statue's probing eyes go blank.<br>With the quiet whir of an engine, the gate swings open...</body></html>"
       self.startQuestTimer("Close_Door2",10000,None,None)
       DoorTable.getInstance().getDoor(19160010).openMe()
       DoorTable.getInstance().getDoor(19160011).openMe()
   elif npcId == 32037:
     DoorTable.getInstance().getDoor(19160010).openMe()
     DoorTable.getInstance().getDoor(19160011).openMe()
     self.startQuestTimer("Close_Door2",10000,None,None)
     htmltext = "FadedMark.htm"
   st.exitQuest(1)
   return htmltext
Example #11
0
 def onTalk (self,npc,player):
   st = player.getQuestState(qn)
   npcId = npc.getNpcId()
   htmltext = None
   if npcId == 32034 :
     if st.getQuestItemsCount(8064) == 0 and st.getQuestItemsCount(8065) == 0 and st.getQuestItemsCount(8067) == 0:
         return "<html><body>神殿守門人:<br>沒有東西可出示給守門人看。<br>(只有手持見習生標章、變色的見習生標章或主教標章的人才可以打開這扇門。)</body></html>"
     if st.getQuestItemsCount(8064) :
        st.takeItems(8064,1) # TODO: this part must happen when u walk through doors >.<
        st.giveItems(8065,1)
     htmltext = "<html><body>神殿守門人:<br>將標章一插入插槽,隨著疑似機關啟動的聲音,門也同時開了起來。</body></html>"
     DoorTable.getInstance().getDoor(19160001).openMe()
     self.startQuestTimer("Close_Door1",10000,None,None)
   elif npcId == 32035:
     DoorTable.getInstance().getDoor(19160001).openMe()
     self.startQuestTimer("Close_Door1",10000,None,None)
     htmltext = "FadedMark.htm"
   elif npcId == 32036:
     if not st.getQuestItemsCount(8067) :
       htmltext = "<html><body>神殿守門人:<br>沒有東西可出示給守門人看。<br>(只有手持主教標章的人才可以打開這扇門。)</body></html>"
     else:
       htmltext = "<html><body>神殿守門人:<br>出示主教標章後,那東西表示確認過似的眼睛重新回到了原位。<br>傳來像是機關啟動的聲音之後,門就打開了。</body></html>"
       self.startQuestTimer("Close_Door2",10000,None,None)
       DoorTable.getInstance().getDoor(19160010).openMe()
       DoorTable.getInstance().getDoor(19160011).openMe()
   elif npcId == 32037:
     DoorTable.getInstance().getDoor(19160010).openMe()
     DoorTable.getInstance().getDoor(19160011).openMe()
     self.startQuestTimer("Close_Door2",10000,None,None)
     htmltext = "FadedMark.htm"
   st.exitQuest(1)
   return htmltext
Example #12
0
 def onKill(self, npc, player, isPet):
     id = npc.getNpcId()
     if id == Captain:
         HellboundManager.getInstance().changeLevel(9)
         DoorTable.getInstance().getDoor(20250001).openMe()