fairy_trees.py 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import sys
  2. from net.sf.l2j.gameserver.ai import CtrlIntention
  3. from net.sf.l2j.gameserver.datatables import SkillTable
  4. from net.sf.l2j.gameserver.model.quest import Quest as JQuest
  5. from net.sf.l2j.gameserver.serverpackets import NpcSay
  6. from net.sf.l2j.util import Rnd
  7. class trees(JQuest) :
  8. def __init__(self,id,name,descr):
  9. JQuest.__init__(self,id,name,descr)
  10. def onAdvEvent (self,event,npc,pc) :
  11. if npc:
  12. npc.deleteMe()
  13. return
  14. def onKill (self,npc,player,isPet):
  15. npcId = npc.getNpcId()
  16. if npcId in range(27185,27189) :
  17. for x in xrange(20):
  18. newNpc = self.addSpawn(27189,npc)
  19. killer = player
  20. if isPet :
  21. killer = player.getPet()
  22. newNpc.setRunning()
  23. newNpc.addDamageHate(killer,0,999)
  24. newNpc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, killer)
  25. self.startQuestTimer("despawn",300000, newNpc, None)
  26. if Rnd.get(2) :
  27. skill = SkillTable.getInstance().getInfo(4243,1)
  28. if skill != None :
  29. skill.getEffects(newNpc, killer)
  30. return
  31. QUEST = trees(-2,"fairy trees","ai")
  32. for i in range(27185,27189):
  33. QUEST.addKillId(i)
  34. QUEST.addSpawnId(27189)