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