Hi, i have this code
import math
import sys
from com.l2jserver.gameserver import Announcements
from com.l2jserver.util import Rnd
from java.lang import System
from com.l2jserver.gameserver.model.actor.appearance import PcAppearance
from com.l2jserver.gameserver import GameTimeController
from com.l2jserver.gameserver.model.quest import State
from com.l2jserver.gameserver.model.quest import QuestState
from com.l2jserver.gameserver.model.quest.jython import QuestJython as JQuest
from com.l2jserver.gameserver.model.actor.instance import L2PcInstance
from com.l2jserver.gameserver.model.actor.instance import L2NpcInstance
qn = "2002_CustomBoss"
QuestDesc = "custom"
Raids = [ 25524 ]
#time between events in milliseconds
eventInterval = 86400000
FirstStart = 30000
class Quest (JQuest):
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
self.RaidBosses ={
0: {'name':"Custom Raid Boss" , 'id':25524},
}
self.RbCoords ={
0: {'name':"in Raid Zone" , 'X':144644 , 'Y':-5644 , 'Z':-4723},
}
self.startQuestTimer("EventTrigger", FirstStart, None, None)
self.RbSpawn = []
self.rewards ={
0: {'prize':40022 , 'number':1},
}
self.Event = []
def onAdvEvent (self,event,npc,player):
if event == "EventTrigger" :
self.Event = 1
#the spawn coords and which raidboss are both random and
#independant from each other
ra = int(Rnd.get(1))
rb = int(Rnd.get(1))
raidboss = self.RaidBosses[ra]['name']
location = self.RbCoords[rb]['name']
Announcements.getInstance().announceToAll(raidboss + " spawned ")
self.RbSpawn = self.addSpawn(self.RaidBosses[ra]['id'],self.RbCoords[rb]['X'],self.RbCoords[rb]['Y'],self.RbCoords[rb]['Z'],0,False,0)
self.startQuestTimer("RbDespawn", 86400000, npc, player)
if event == "RbDespawn":
self.RbSpawn.deleteMe()
Announcements.getInstance().announceToAll("Custom Raid Boss is still alive")
self.startQuestTimer("EventTrigger", eventInterval, npc, player)
def onKill (self,npc,player,isPet):
npcId = npc.getNpcId()
if npcId in Raids:
Announcements.getInstance().announceToAll("Custom Raid Boss has been killed")
self.cancelQuestTimer("RbDespawn", None, None)
self.startQuestTimer("EventTrigger", eventInterval, npc, player)
# Quest class and state definition
QUEST = Quest(-1,qn,QuestDesc)
for i in Raids:
QUEST.addKillId(i)
print "Custom Raid Boss Loaded"
And my question is, how do i make this script that, onKill of the raid boss, all those who have hitted the raid get a reward?
Perhaps hitted and in range, etc. In the code it says "{'prize':40022 , 'number':1}, " but still not working, that ID of a custom quest item frome me, and i need to all who participate in killing the raid to obtain it.
Any help? I know it should not be so difficult, but what i tryed didnt work, so i ask for help now.
Thank you.