This commit is contained in:
4
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31541-01.htm
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31541-01.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Altar of Daimon the White-Eyed:<br>
|
||||
A sinister energy encircles the altar.<br>
|
||||
<a action="bypass -h Quest 604_DaimontheWhiteEyedPart2 31541-02.htm">Place the Bead of Summoning on the altar.</a>
|
||||
</body></html>
|
||||
3
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31541-02.htm
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31541-02.htm
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Altar of Daimon the White-Eyed:<br>
|
||||
Evil forces are gathering... Oh, the horror!
|
||||
</body></html>
|
||||
3
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31541-03.htm
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31541-03.htm
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Altar of Daimon the White-Eyed:<br>
|
||||
Daimon the White-Eyed has already been summoned!
|
||||
</body></html>
|
||||
3
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31541-04.htm
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31541-04.htm
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Altar of Daimon the White-Eyed:<br>
|
||||
A summoning orb is needed.
|
||||
</body></html>
|
||||
3
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31541-05.htm
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31541-05.htm
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Altar of Daimon the White-Eyed:<br>
|
||||
Daimon's moans can be faintly heard...
|
||||
</body></html>
|
||||
3
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-00a.htm
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-00a.htm
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Eye of Argos:<br>
|
||||
Where's the unfinished orb I gave you? It's not ready yet!
|
||||
</body></html>
|
||||
4
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-00b.htm
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-00b.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Eye of Argos:<br>
|
||||
Have you been neglecting your training? I'm reluctant to assign this critical mission to you!<br>
|
||||
(This quest may only be undertaken by characters of level 73 or above.)
|
||||
</body></html>
|
||||
5
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-01.htm
vendored
Normal file
5
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-01.htm
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<html><body>Eye of Argos:<br>
|
||||
The bead containing my voice is now completed.<br>
|
||||
Are you ready to confront Daimon the White-Eyed, dear warrior? Will you risk your life for the cause?<br>
|
||||
<a action="bypass -h Quest 604_DaimontheWhiteEyedPart2 31683-02.htm">"I'm ready." </a>
|
||||
</body></html>
|
||||
5
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-02.htm
vendored
Normal file
5
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-02.htm
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<html><body>Eye of Argos:<br>
|
||||
Go to the stronghold of Daimon the White-Eyed, find the altar used to make sacrifices and place the summoning orb upon it.<br>
|
||||
One more thing!<br>
|
||||
Occasionally, Daimon hides the altar. If this happens, wait until the altar reappears before taking action. Apply all your courage and faith to destroying Daimon!
|
||||
</body></html>
|
||||
4
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-02a.htm
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-02a.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Eye of Argos:<br>
|
||||
Place the summoning orb onto the altar in the stronghold of Daimon the White-Eyed.<br>
|
||||
Daimon will be drawn out by its power. Destroy him and return to me.
|
||||
</body></html>
|
||||
4
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-03.htm
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-03.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Eye of Argos:<br>
|
||||
Dear soldier, I felt a weakening in his force around here! Did you kill Daimon the White-Eyed?<br>
|
||||
<a action="bypass -h Quest 604_DaimontheWhiteEyedPart2 31683-04.htm">"I killed the beast."</a>
|
||||
</body></html>
|
||||
5
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-04.htm
vendored
Normal file
5
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-04.htm
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<html><body>Eye of Argos:<br>
|
||||
You've vanquished the dreaded Daimon, but he's not gone forever.<br>
|
||||
Someday, he shall rise and threaten the peace of the world again.<br>
|
||||
I pray when he does that we have many heroes like you.
|
||||
</body></html>
|
||||
4
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-05.htm
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-05.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Eye of Argos:<br>
|
||||
Where is the proof that you killed Daimon?<br>
|
||||
Do you think I'll fall for your lie? You, fake heroes!
|
||||
</body></html>
|
||||
4
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-06.htm
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/31683-06.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Eye of Argos:<br>
|
||||
Does Daimon the White-Eyed live?<br>
|
||||
I understand your hesitance, but by overcoming your fear,
|
||||
the path to true heroism will open up to you!</body></html>
|
||||
165
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/__init__.py
vendored
Normal file
165
trunk/dist/game/data/scripts/quests/604_DaimontheWhiteEyedPart2/__init__.py
vendored
Normal file
@@ -0,0 +1,165 @@
|
||||
#Made by Kerb
|
||||
import sys
|
||||
|
||||
from java.lang import System
|
||||
from com.l2jserver import Config
|
||||
from com.l2jserver.gameserver.model.quest import QuestState
|
||||
from com.l2jserver.gameserver.model.quest import State
|
||||
from com.l2jserver.gameserver.model.quest import Quest as JQuest
|
||||
from com.l2jserver.gameserver.network.serverpackets import NpcSay
|
||||
from com.l2jserver.util import Rnd
|
||||
|
||||
qn = "604_DaimontheWhiteEyedPart2"
|
||||
#Npcs
|
||||
EYE = 31683
|
||||
ALTAR = 31541
|
||||
#RaidBoss
|
||||
DAIMON = 25290
|
||||
#Items
|
||||
U_SUMMON,S_SUMMON,ESSENCE = range(7192,7195)
|
||||
#Rewards dye +2int-2men/+2int-2wit/+2men-2int/+2men-2wit/+2wit-2int/+2wit-2men
|
||||
REWARDS = range(4595,4601)
|
||||
|
||||
|
||||
def AutoChat(npc,text) :
|
||||
chars = npc.getKnownList().getKnownPlayers().values().toArray()
|
||||
if chars != None:
|
||||
for pc in chars :
|
||||
sm = NpcSay(npc.getObjectId(), 0, npc.getId(), text)
|
||||
pc.sendPacket(sm)
|
||||
|
||||
class Quest (JQuest) :
|
||||
def __init__(self,id,name,descr):
|
||||
JQuest.__init__(self,id,name,descr)
|
||||
self.questItemIds = range(7193,7195)
|
||||
test = self.loadGlobalQuestVar("604_respawn")
|
||||
if test.isdigit() :
|
||||
remain = long(test) - System.currentTimeMillis()
|
||||
if remain <= 0 :
|
||||
self.addSpawn(31541,186304,-43744,-3193,57000, False, 0, True)
|
||||
else :
|
||||
self.startQuestTimer("spawn_npc", remain, None, None)
|
||||
else :
|
||||
self.addSpawn(31541,186304,-43744,-3193,57000, False, 0, True)
|
||||
|
||||
|
||||
def onAdvEvent (self, event, npc, player) :
|
||||
if event == "Daimon the White-Eyed has despawned" :
|
||||
npc.reduceCurrentHp(9999999,npc,None)
|
||||
AutoChat(npc,"Darkness could not have ray?")
|
||||
self.addSpawn(31541,186304,-43744,-3193,57000, False, 0, True)
|
||||
return
|
||||
elif event == "spawn_npc" :
|
||||
self.addSpawn(31541,186304,-43744,-3193,57000, False, 0, True)
|
||||
return
|
||||
st = self.getQuestState(player, False)
|
||||
if not st: return
|
||||
cond = st.getInt("cond")
|
||||
htmltext = event
|
||||
if event == "31683-02.htm" :
|
||||
if st.getPlayer().getLevel() < 73 :
|
||||
htmltext = "31683-00b.htm"
|
||||
st.exitQuest(1)
|
||||
else:
|
||||
st.set("cond","1")
|
||||
st.setState(State.STARTED)
|
||||
st.takeItems(U_SUMMON,1)
|
||||
st.giveItems(S_SUMMON,1)
|
||||
st.playSound("ItemSound.quest_accept")
|
||||
elif event == "31541-02.htm" :
|
||||
if st.getQuestItemsCount(S_SUMMON) == 0 :
|
||||
htmltext = "31541-04.htm"
|
||||
else:
|
||||
spawnId = st.addSpawn(DAIMON,186320,-43904,-3175)
|
||||
npc.deleteMe()
|
||||
st.takeItems(S_SUMMON,1)
|
||||
st.set("cond","2")
|
||||
self.startQuestTimer("Daimon the White-Eyed has despawned",1200000,spawnId,None)
|
||||
AutoChat(spawnId,"Who called me?")
|
||||
elif event == "31683-04.htm" :
|
||||
if st.getQuestItemsCount(ESSENCE) >= 1 :
|
||||
st.takeItems(ESSENCE,1)
|
||||
st.giveItems(REWARDS[self.getRandom(len(REWARDS))],5)
|
||||
st.playSound("ItemSound.quest_finish")
|
||||
st.exitQuest(1)
|
||||
htmltext = "31683-04.htm"
|
||||
else:
|
||||
htmltext = "31683-05.htm"
|
||||
st.exitQuest(1)
|
||||
return htmltext
|
||||
|
||||
def onTalk (self,npc,player):
|
||||
htmltext = Quest.getNoQuestMsg(player)
|
||||
st = self.getQuestState(player, True)
|
||||
if st :
|
||||
npcId = npc.getId()
|
||||
id = st.getState()
|
||||
cond = st.getInt("cond")
|
||||
if cond == 0 :
|
||||
if npcId == EYE :
|
||||
if st.getQuestItemsCount(U_SUMMON) >= 1 :
|
||||
htmltext = "31683-01.htm"
|
||||
else:
|
||||
htmltext = "31683-00a.htm"
|
||||
elif cond == 1 :
|
||||
if npcId == EYE :
|
||||
htmltext = "31683-02a.htm"
|
||||
if npcId == ALTAR :
|
||||
htmltext = "31541-01.htm"
|
||||
elif cond == 2 :
|
||||
if npcId == ALTAR :
|
||||
htmltext = "31541-01.htm"
|
||||
elif cond == 3 :
|
||||
if npcId == EYE :
|
||||
if st.getQuestItemsCount(ESSENCE) >= 1 :
|
||||
htmltext = "31683-03.htm"
|
||||
else :
|
||||
htmltext = "31683-06.htm"
|
||||
if npcId == ALTAR :
|
||||
htmltext = "31541-05.htm"
|
||||
return htmltext
|
||||
|
||||
def onKill(self,npc,player,isPet):
|
||||
npcId = npc.getId()
|
||||
if npcId == DAIMON :
|
||||
respawnMinDelay = 43200000 * int(Config.RAID_MIN_RESPAWN_MULTIPLIER)
|
||||
respawnMaxDelay = 129600000 * int(Config.RAID_MAX_RESPAWN_MULTIPLIER)
|
||||
respawn_delay = Rnd.get(respawnMinDelay,respawnMaxDelay)
|
||||
self.saveGlobalQuestVar("604_respawn", str(System.currentTimeMillis()+respawn_delay))
|
||||
self.startQuestTimer("spawn_npc", respawn_delay, None, None)
|
||||
self.cancelQuestTimer("Daimon the White-Eyed has despawned",npc,None)
|
||||
party = player.getParty()
|
||||
if party :
|
||||
PartyQuestMembers = []
|
||||
for player1 in party.getMembers().toArray() :
|
||||
st1 = player1.getQuestState(qn)
|
||||
if st1 :
|
||||
if st1.getState() == State.STARTED and (st1.getInt("cond") == 1 or st1.getInt("cond") == 2) :
|
||||
PartyQuestMembers.append(st1)
|
||||
if len(PartyQuestMembers) == 0 : return
|
||||
st = PartyQuestMembers[Rnd.get(len(PartyQuestMembers))]
|
||||
if st.getQuestItemsCount(S_SUMMON) > 0 :
|
||||
st.takeItems(S_SUMMON,1)
|
||||
st.giveItems(ESSENCE,1)
|
||||
st.set("cond","3")
|
||||
st.playSound("ItemSound.quest_middle")
|
||||
else :
|
||||
st = self.getQuestState(player, False)
|
||||
if not st : return
|
||||
if st.getState() == State.STARTED and (st.getInt("cond") == 1 or st.getInt("cond") == 2) :
|
||||
if st.getQuestItemsCount(S_SUMMON) > 0 :
|
||||
st.takeItems(S_SUMMON,1)
|
||||
st.giveItems(ESSENCE,1)
|
||||
st.set("cond","3")
|
||||
st.playSound("ItemSound.quest_middle")
|
||||
return
|
||||
|
||||
|
||||
QUEST = Quest(604,qn,"Daimon the White-Eyed - Part 2")
|
||||
|
||||
QUEST.addStartNpc(EYE)
|
||||
|
||||
QUEST.addTalkId(EYE)
|
||||
QUEST.addTalkId(ALTAR)
|
||||
|
||||
QUEST.addKillId(DAIMON)
|
||||
Reference in New Issue
Block a user