Example #1
0
 def onAdvEvent (self,event,npc,player):
   if event == "prosnuca" :
     valik = self.addSpawn(VALAKAS,213004,-114890,-1635,30000,False,0)
     player.broadcastPacket(SocialAction(valik.getObjectId(),1))
     player.broadcastPacket(Earthquake(valik.getX(), valik.getY(), valik.getZ(),40,5))
     self.startQuestTimer("camera",2000, valik, player)
     self.startQuestTimer("camerg",22000, valik, player)
     DoorTable.getInstance().getDoor(24210004).closeMe()
     DoorTable.getInstance().getDoor(24210005).closeMe()
     DoorTable.getInstance().getDoor(24210006).closeMe()
     self.saveGlobalQuestVar("underattack", "1")
     self.startQuestTimer("vkrovatku",1800000,valik,None)
   elif event == "camera" :
     player.broadcastPacket(SpecialCamera(npc.getObjectId(),-1700,190,1,0,20000))
     self.startQuestTimer("camerb",2000, npc, player)
   elif event == "camerb" :
     player.broadcastPacket(SpecialCamera(npc.getObjectId(),-3500,22,-100,111,15000))
     self.startQuestTimer("camerc",4000, npc, player)
   elif event == "camerc" :
     player.broadcastPacket(SpecialCamera(npc.getObjectId(),-2700,190,15,1,20000))
     self.startQuestTimer("camerd",3000, npc, player)
   elif event == "camerd" :
     player.broadcastPacket(SpecialCamera(npc.getObjectId(),-1700,190,14,0,20000))
     self.startQuestTimer("camere",3000, npc, player)
   elif event == "camere" :
     player.broadcastPacket(SpecialCamera(npc.getObjectId(),-1700,190,15,0,20000))
     self.startQuestTimer("camerf",3000, npc, player)
   elif event == "camerf" :
     player.broadcastPacket(SpecialCamera(npc.getObjectId(),-1700,190,1,0,20000))
   elif event == "camerg" :
     player.broadcastPacket(SpecialCamera(npc.getObjectId(),-1700,190,1,0,25000))
     self.startQuestTimer("camerh",4000, npc, player)
   elif event == "camerh" :
     player.broadcastPacket(SpecialCamera(npc.getObjectId(),-1700,190,1,11,5000))
     npc.setTarget(npc)
     npc.doCast(SkillTable.getInstance().getInfo(4691,1))
   if event == "vkrovatku" :
     underatak = self.loadGlobalQuestVar("underattack")
     if underatak == "" :
       npc.deleteMe()
       self.deleteGlobalQuestVar("access")
       self.deleteGlobalQuestVar("underattack")
       self.cancelQuestTimer("vkrovatku",npc,None)
     else :
       self.deleteGlobalQuestVar("underattack")
       self.startQuestTimer("lastchek",60000, npc, player)
   if event == "lastchek" :
     underatak = self.loadGlobalQuestVar("underattack")
     if underatak == "" :
       npc.deleteMe()
       self.deleteGlobalQuestVar("access")
       self.deleteGlobalQuestVar("underattack")
       self.cancelQuestTimer("lastchek",npc,None)
     else :
       self.deleteGlobalQuestVar("underattack")
       self.startQuestTimer("vkrovatku",1800000,npc,None)
   elif event == "resp" :
     self.deleteGlobalQuestVar("ubit")
     self.cancelQuestTimer("resp",npc,None) 
   return
Example #2
0
 def onTalk (self,npc,player):
    npcId = npc.getNpcId()
    htmltext = ""
    if 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
    return htmltext
Example #3
0
 def onTalk(self, npc, player):
     npcId = npc.getNpcId()
     htmltext = ""
     if 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
     return htmltext
Example #4
0
 def onAdvEvent(self, event, npc, player):
     if event == "prosnuca":
         valik = self.addSpawn(VALAKAS, 213004, -114890, -1635, 30000,
                               False, 0)
         player.broadcastPacket(SocialAction(valik.getObjectId(), 1))
         player.broadcastPacket(
             Earthquake(valik.getX(), valik.getY(), valik.getZ(), 40, 5))
         self.startQuestTimer("camera", 2000, valik, player)
         self.startQuestTimer("camerg", 22000, valik, player)
         DoorTable.getInstance().getDoor(24210004).closeMe()
         DoorTable.getInstance().getDoor(24210005).closeMe()
         DoorTable.getInstance().getDoor(24210006).closeMe()
         self.saveGlobalQuestVar("underattack", "1")
         self.startQuestTimer("vkrovatku", 1800000, valik, None)
     elif event == "camera":
         player.broadcastPacket(
             SpecialCamera(npc.getObjectId(), -1700, 190, 1, 0, 20000))
         self.startQuestTimer("camerb", 2000, npc, player)
     elif event == "camerb":
         player.broadcastPacket(
             SpecialCamera(npc.getObjectId(), -3500, 22, -100, 111, 15000))
         self.startQuestTimer("camerc", 4000, npc, player)
     elif event == "camerc":
         player.broadcastPacket(
             SpecialCamera(npc.getObjectId(), -2700, 190, 15, 1, 20000))
         self.startQuestTimer("camerd", 3000, npc, player)
     elif event == "camerd":
         player.broadcastPacket(
             SpecialCamera(npc.getObjectId(), -1700, 190, 14, 0, 20000))
         self.startQuestTimer("camere", 3000, npc, player)
     elif event == "camere":
         player.broadcastPacket(
             SpecialCamera(npc.getObjectId(), -1700, 190, 15, 0, 20000))
         self.startQuestTimer("camerf", 3000, npc, player)
     elif event == "camerf":
         player.broadcastPacket(
             SpecialCamera(npc.getObjectId(), -1700, 190, 1, 0, 20000))
     elif event == "camerg":
         player.broadcastPacket(
             SpecialCamera(npc.getObjectId(), -1700, 190, 1, 0, 25000))
         self.startQuestTimer("camerh", 4000, npc, player)
     elif event == "camerh":
         player.broadcastPacket(
             SpecialCamera(npc.getObjectId(), -1700, 190, 1, 11, 5000))
         npc.setTarget(npc)
         npc.doCast(SkillTable.getInstance().getInfo(4691, 1))
     if event == "vkrovatku":
         underatak = self.loadGlobalQuestVar("underattack")
         if underatak == "":
             npc.deleteMe()
             self.deleteGlobalQuestVar("access")
             self.deleteGlobalQuestVar("underattack")
             self.cancelQuestTimer("vkrovatku", npc, None)
         else:
             self.deleteGlobalQuestVar("underattack")
             self.startQuestTimer("lastchek", 60000, npc, player)
     if event == "lastchek":
         underatak = self.loadGlobalQuestVar("underattack")
         if underatak == "":
             npc.deleteMe()
             self.deleteGlobalQuestVar("access")
             self.deleteGlobalQuestVar("underattack")
             self.cancelQuestTimer("lastchek", npc, None)
         else:
             self.deleteGlobalQuestVar("underattack")
             self.startQuestTimer("vkrovatku", 1800000, npc, None)
     elif event == "resp":
         self.deleteGlobalQuestVar("ubit")
         self.cancelQuestTimer("resp", npc, None)
     return
Example #5
0
 def onAdvEvent(self, event, npc, player):
     status = GrandBossManager.getInstance().getBossStatus(Benom)
     if event == "BenomTeleSpawn":
         self.Teleport = self.addSpawn(BenomTeleport, 11013, -49629, -547,
                                       13400, False, 0)
     elif event == "BenomRaidRoomSpawn":
         if self.BenomIsSpawned == 0 and status == 0:
             self.Benomm = self.addSpawn(Benom, 12047, -49211, -3009, 0,
                                         False, 0)
             self.BenomIsSpawned = 1
     elif event == "BenomRaidSiegeSpawn":
         if status == 0:
             if self.BenomIsSpawned == 0:
                 self.Benomm = self.addSpawn(Benom, 11025, -49152, -537, 0,
                                             False, 0)
                 self.BenomIsSpawned = 1
             elif self.BenomIsSpawned == 1:
                 self.Benomm.teleToLocation(11025, -49152, -537)
             self.startQuestTimer("BenomSpawnEffect", 100, npc, None)
             self.startQuestTimer("BenomBossDespawn", 5400000, npc, None)
             self.cancelQuestTimer("BenomSpawn", npc, None)
             self.Teleport.deleteMe()
     elif event == "BenomSpawnEffect":
         npc.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE)
         npc.broadcastPacket(
             SpecialCamera(npc.getObjectId(), 200, 0, 150, 0, 5000))
         npc.broadcastPacket(SocialAction(npc.getObjectId(), 3))
         self.startQuestTimer("BenomWalk", 5000, npc, None)
         self.BenomWalkRouteStep = 0
     elif event == "Attacking":
         NumPlayers = []
         for player in npc.getKnownList().getKnownPlayers().values():
             NumPlayers.append(player)
         if len(NumPlayers) > 0:
             target = NumPlayers[Rnd.get(len(NumPlayers))]
             npc.addDamageHate(target, 0, 999)
             npc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK,
                                      target)
             self.startQuestTimer("Attacking", 2000, npc, player)
         elif len(NumPlayers) == 0:
             self.startQuestTimer("BenomWalkFinish", 2000, npc, None)
     elif event == "BenomWalkFinish":
         if npc.getCastle().getSiege().getIsInProgress():
             self.cancelQuestTimer("Attacking", npc, player)
             X = benomWalkRoutes[self.BenomWalkRouteStep][0]
             Y = benomWalkRoutes[self.BenomWalkRouteStep][1]
             Z = benomWalkRoutes[self.BenomWalkRouteStep][2]
             npc.teleToLocation(X, Y, Z)
             npc.setWalking()
             self.BenomWalkRouteStep = 0
             self.startQuestTimer("BenomWalk", 2200, npc, None)
     elif event == "BenomWalk":
         if self.BenomWalkRouteStep == 33:
             self.BenomWalkRouteStep = 0
             self.startQuestTimer("BenomWalk", 100, npc, None)
         else:
             self.startQuestTimer("Talk", 100, npc, None)
             if self.BenomWalkRouteStep == 14:
                 self.startQuestTimer("DoorOpen", 15000, None, None)
                 self.startQuestTimer("DoorClose", 23000, None, None)
             if self.BenomWalkRouteStep == 32:
                 self.startQuestTimer("DoorOpen", 500, None, None)
                 self.startQuestTimer("DoorClose", 4000, None, None)
             Time = WalkTimes[self.BenomWalkRouteStep]
             npc.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE)
             X = benomWalkRoutes[self.BenomWalkRouteStep][0]
             Y = benomWalkRoutes[self.BenomWalkRouteStep][1]
             Z = benomWalkRoutes[self.BenomWalkRouteStep][2]
             npc.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO,
                                      L2CharPosition(X, Y, Z, 0))
             self.BenomWalkRouteStep = int(self.BenomWalkRouteStep) + 1
             self.startQuestTimer("BenomWalk", Time, npc, None)
     elif event == "DoorOpen":
         DoorTable.getInstance().getDoor(20160005).openMe()
     elif event == "DoorClose":
         DoorTable.getInstance().getDoor(20160005).closeMe()
     elif event == "Talk":
         if Rnd.get(100) < 40:
             npc.broadcastPacket(
                 CreatureSay(npc.getObjectId(), 0, "Benom",
                             BenomSpeak[Rnd.get(4)]))
     elif event == "BenomBossDespawn":
         GrandBossManager.getInstance().setBossStatus(Benom, LIVE)
         self.BenomIsSpawned = 0
         self.Benomm.deleteMe()
     return
Example #6
0
 def onAdvEvent(self, event, npc, player) :
   status = GrandBossManager.getInstance().getBossStatus(Benom)
   if event == "BenomTeleSpawn" :
     self.Teleport = self.addSpawn(BenomTeleport, 11013, -49629, -547, 13400, False, 0)
   elif event == "BenomRaidRoomSpawn" :
     if self.BenomIsSpawned == 0 and status == 0 :
       self.Benomm = self.addSpawn(Benom, 12047, -49211, -3009, 0, False, 0)
       self.BenomIsSpawned = 1
   elif event == "BenomRaidSiegeSpawn" :
     if status == 0 :
       if self.BenomIsSpawned == 0 :
         self.Benomm = self.addSpawn(Benom, 11025, -49152, -537, 0, False, 0)
         self.BenomIsSpawned = 1
       elif self.BenomIsSpawned == 1 :
         self.Benomm.teleToLocation(11025, -49152, -537)
       self.startQuestTimer("BenomSpawnEffect", 100, npc, None)
       self.startQuestTimer("BenomBossDespawn", 5400000, npc, None)
       self.cancelQuestTimer("BenomSpawn", npc, None)
       self.Teleport.deleteMe()
   elif event == "BenomSpawnEffect" :
     npc.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE)
     npc.broadcastPacket(SpecialCamera(npc.getObjectId(), 200, 0, 150, 0, 5000))
     npc.broadcastPacket(SocialAction(npc.getObjectId(), 3))
     self.startQuestTimer("BenomWalk", 5000, npc, None)
     self.BenomWalkRouteStep = 0
   elif event == "Attacking" :
     NumPlayers = []
     for player in npc.getKnownList().getKnownPlayers().values() :
       NumPlayers.append(player)
     if len(NumPlayers) > 0 :
       target = NumPlayers[Rnd.get(len(NumPlayers))]
       npc.addDamageHate(target, 0, 999)
       npc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, target)
       self.startQuestTimer("Attacking", 2000, npc, player)
     elif len(NumPlayers) == 0 :
         self.startQuestTimer("BenomWalkFinish", 2000, npc, None)
   elif event == "BenomWalkFinish" :
     if npc.getCastle().getSiege().getIsInProgress() :
       self.cancelQuestTimer("Attacking", npc, player)
       X = benomWalkRoutes[self.BenomWalkRouteStep][0]
       Y = benomWalkRoutes[self.BenomWalkRouteStep][1]
       Z = benomWalkRoutes[self.BenomWalkRouteStep][2]
       npc.teleToLocation(X, Y, Z)
       npc.setWalking()
       self.BenomWalkRouteStep = 0
       self.startQuestTimer("BenomWalk", 2200, npc, None)
   elif event == "BenomWalk" :
     if self.BenomWalkRouteStep == 33 :
       self.BenomWalkRouteStep = 0
       self.startQuestTimer("BenomWalk", 100, npc, None)
     else :
       self.startQuestTimer("Talk", 100, npc, None)
       if self.BenomWalkRouteStep == 14 :
         self.startQuestTimer("DoorOpen", 15000, None, None)
         self.startQuestTimer("DoorClose", 23000, None, None)
       if self.BenomWalkRouteStep == 32 :
         self.startQuestTimer("DoorOpen", 500, None, None)
         self.startQuestTimer("DoorClose", 4000, None, None)
       Time = WalkTimes[self.BenomWalkRouteStep]
       npc.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE)
       X = benomWalkRoutes[self.BenomWalkRouteStep][0]
       Y = benomWalkRoutes[self.BenomWalkRouteStep][1]
       Z = benomWalkRoutes[self.BenomWalkRouteStep][2]
       npc.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, L2CharPosition(X, Y, Z, 0))
       self.BenomWalkRouteStep = int(self.BenomWalkRouteStep) + 1
       self.startQuestTimer("BenomWalk", Time, npc, None)
   elif event == "DoorOpen" :
     DoorTable.getInstance().getDoor(20160005).openMe()
   elif event == "DoorClose" :
     DoorTable.getInstance().getDoor(20160005).closeMe()
   elif event == "Talk" :
     if Rnd.get(100) < 40 :
       npc.broadcastPacket(CreatureSay(npc.getObjectId(), 0, "Benom", BenomSpeak[Rnd.get(4)]))
   elif event == "BenomBossDespawn" :
     GrandBossManager.getInstance().setBossStatus(Benom,LIVE)
     self.BenomIsSpawned = 0
     self.Benomm.deleteMe()
   return