Skip to content
Snippets Groups Projects
Commit f43ccb90 authored by MELERIX's avatar MELERIX
Browse files

BETA: Mutated Kaneus & Gracia Quests from Jython to Java by nonom.

parent 90f8b903
No related branches found
No related tags found
No related merge requests found
Showing
with 13 additions and 1330 deletions
......@@ -662,19 +662,19 @@ quests/701_Proof_Of_Existence/__init__.py
quests/Q702_ATrapForRevenge/Q702_ATrapForRevenge.java
quests/998_FallenAngelSelect/__init__.py
quests/999_T1Tutorial/__init__.py
quests/10267_JourneyToGracia/__init__.py
quests/10268_ToTheSeedOfInfinity/__init__.py
quests/10269_ToTheSeedOfDestruction/__init__.py
quests/10273_GoodDayToFly/__init__.py
quests/10274_CollectingInTheAir/__init__.py
quests/10275_ContainingTheAttributePower/__init__.py
quests/10276_MutatedKaneusGludio/__init__.py
quests/10277_MutatedKaneusDion/__init__.py
quests/10278_MutatedKaneusHeine/__init__.py
quests/10279_MutatedKaneusOren/__init__.py
quests/10280_MutatedKaneusSchuttgart/__init__.py
quests/10281_MutatedKaneusRune/__init__.py
quests/10282_ToTheSeedOfAnnihilation/__init__.py
quests/Q10267_JourneyToGracia/Q10267_JourneyToGracia.java
quests/Q10268_ToTheSeedOfInfinity/Q10268_ToTheSeedOfInfinity.java
quests/Q10269_ToTheSeedOfDestruction/Q10269_ToTheSeedOfDestruction.java
quests/Q10273_GoodDayToFly/Q10273_GoodDayToFly.java
quests/Q10274_CollectingInTheAir/Q10274_CollectingInTheAir.java
quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java
quests/Q10276_MutatedKaneusGludio/Q10276_MutatedKaneusGludio.java
quests/Q10277_MutatedKaneusDion/Q10277_MutatedKaneusDion.java
quests/Q10278_MutatedKaneusHeine/Q10278_MutatedKaneusHeine.java
quests/Q10279_MutatedKaneusOren/Q10279_MutatedKaneusOren.java
quests/Q10280_MutatedKaneusSchuttgart/Q10280_MutatedKaneusSchuttgart.java
quests/Q10281_MutatedKaneusRune/Q10281_MutatedKaneusRune.java
quests/Q10282_ToTheSeedOfAnnihilation/Q10282_ToTheSeedOfAnnihilation.java
quests/Q10271_TheEnvelopingDarkness/Q10271_TheEnvelopingDarkness.java
quests/Q10272_LightFragment/Q10272_LightFragment.java
quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java
......
# Made by Kerberos v1.0 on 2009/05/2
# this script is part of the Official L2J Datapack Project.
# Visit http://www.l2jdp.com/forum for more details.
import sys
from com.l2jserver.gameserver.datatables import SkillTable
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
qn = "10267_JourneyToGracia"
#NPCs
Orven = 30857
Keucereus = 32548
Papiku = 32564
#items
Letter = 13810
class Quest (JQuest) :
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
self.questItemIds = [Letter]
def onAdvEvent (self,event,npc, player) :
htmltext = event
st = player.getQuestState(qn)
if not st : return
if event == "30857-06.htm" :
st.set("cond","1")
st.setState(State.STARTED)
st.playSound("ItemSound.quest_accept")
st.giveItems(Letter,1)
elif event == "32564-02.htm" :
st.set("cond","2")
st.playSound("ItemSound.quest_middle")
elif event == "32548-02.htm" :
st.giveItems(57,92500)
st.addExpAndSp(75480,7570)
st.unset("cond")
st.exitQuest(False)
st.playSound("ItemSound.quest_finish")
return htmltext
def onTalk (self,npc,player):
htmltext = Quest.getNoQuestMsg(player)
st = player.getQuestState(qn)
if not st : return htmltext
npcId = npc.getNpcId()
id = st.getState()
cond = st.getInt("cond")
if id == State.COMPLETED :
if npcId == Keucereus :
htmltext = "32548-03.htm"
elif npcId == Orven :
htmltext = "30857-0a.htm"
elif id == State.CREATED and npcId == Orven:
if player.getLevel() < 75 :
htmltext = "30857-00.htm"
else :
htmltext = "30857-01.htm"
elif id == State.STARTED and npcId == Orven:
htmltext = "30857-07.htm"
elif id == State.STARTED and npcId == Papiku:
if cond == 1 :
htmltext = "32564-01.htm"
else :
htmltext = "32564-03.htm"
elif id == State.STARTED and npcId == Keucereus and cond == 2:
htmltext = "32548-01.htm"
return htmltext
QUEST = Quest(10267,qn,"Journey to Gracia")
QUEST.addStartNpc(Orven)
QUEST.addTalkId(Orven)
QUEST.addTalkId(Keucereus)
QUEST.addTalkId(Papiku)
\ No newline at end of file
# Made by Kerberos v1.0 on 2009/05/1
# this script is part of the Official L2J Datapack Project.
# Visit http://www.l2jdp.com/forum for more details.
import sys
from com.l2jserver.gameserver.datatables import SkillTable
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
qn = "10268_ToTheSeedOfInfinity"
#NPCs
Keucereus = 32548
Tepios = 32603
#items
Introduction = 13811
class Quest (JQuest) :
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
self.questItemIds = [Introduction]
def onAdvEvent (self,event,npc, player) :
htmltext = event
st = player.getQuestState(qn)
if not st : return
if event == "32548-05.htm" :
st.set("cond","1")
st.setState(State.STARTED)
st.playSound("ItemSound.quest_accept")
st.giveItems(Introduction,1)
return htmltext
def onTalk (self,npc,player):
htmltext = Quest.getNoQuestMsg(player)
st = player.getQuestState(qn)
if not st : return htmltext
npcId = npc.getNpcId()
id = st.getState()
cond = st.getInt("cond")
if id == State.COMPLETED :
if npcId == Tepios :
htmltext = "32530-02.htm"
else:
htmltext = "32548-0a.htm"
elif id == State.CREATED and npcId == Keucereus:
if player.getLevel() < 75 :
htmltext = "32548-00.htm"
else :
htmltext = "32548-01.htm"
elif id == State.STARTED and npcId == Keucereus:
htmltext = "32548-06.htm"
elif id == State.STARTED and npcId == Tepios:
htmltext = "32530-01.htm"
st.giveItems(57,16671)
st.addExpAndSp(100640,10098)
st.unset("cond")
st.exitQuest(False)
st.playSound("ItemSound.quest_finish")
return htmltext
QUEST = Quest(10268,qn,"To the Seed of Infinity")
QUEST.addStartNpc(Keucereus)
QUEST.addTalkId(Keucereus)
QUEST.addTalkId(Tepios)
\ No newline at end of file
# Made by Kerberos v1.0 on 2009/05/1
# this script is part of the Official L2J Datapack Project.
# Visit http://www.l2jdp.com/forum for more details.
import sys
from com.l2jserver.gameserver.datatables import SkillTable
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
qn = "10269_ToTheSeedOfDestruction"
#NPCs
Keucereus = 32548
Allenos = 32526
#items
Introduction = 13812
class Quest (JQuest) :
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
self.questItemIds = [Introduction]
def onAdvEvent (self,event,npc, player) :
htmltext = event
st = player.getQuestState(qn)
if not st : return
if event == "32548-05.htm" :
st.set("cond","1")
st.setState(State.STARTED)
st.playSound("ItemSound.quest_accept")
st.giveItems(Introduction,1)
return htmltext
def onTalk (self,npc,player):
htmltext = Quest.getNoQuestMsg(player)
st = player.getQuestState(qn)
if not st : return htmltext
npcId = npc.getNpcId()
id = st.getState()
cond = st.getInt("cond")
if id == State.COMPLETED :
if npcId == Allenos :
htmltext = "32526-02.htm"
else:
htmltext = "32548-0a.htm"
elif id == State.CREATED and npcId == Keucereus:
if player.getLevel() < 75 :
htmltext = "32548-00.htm"
else :
htmltext = "32548-01.htm"
elif id == State.STARTED and npcId == Keucereus:
htmltext = "32548-06.htm"
elif id == State.STARTED and npcId == Allenos:
htmltext = "32526-01.htm"
st.giveItems(57,29174)
st.addExpAndSp(176121,7671)
st.unset("cond")
st.exitQuest(False)
st.playSound("ItemSound.quest_finish")
return htmltext
QUEST = Quest(10269,qn,"To the Seed of Destruction")
QUEST.addStartNpc(Keucereus)
QUEST.addTalkId(Keucereus)
QUEST.addTalkId(Allenos)
\ No newline at end of file
# Made by Kerberos v1.0 on 2009/04/25
# this script is part of the Official L2J Datapack Project.
# Visit http://www.l2jdp.com/forum for more details.
import sys
from com.l2jserver.gameserver.datatables import SkillTable
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
qn = "10273_GoodDayToFly"
#NPCs
Lekon = 32557
#items
Mark = 13856
class Quest (JQuest) :
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
self.questItemIds = [Mark]
def onAdvEvent (self,event,npc, player) :
htmltext = event
st = player.getQuestState(qn)
if not st : return
if event == "32557-06.htm" :
st.set("cond","1")
st.setState(State.STARTED)
st.playSound("ItemSound.quest_accept")
elif event == "32557-09.htm" :
st.set("transform","1")
SkillTable.getInstance().getInfo(5982,1).getEffects(player,player)
elif event == "32557-10.htm" :
st.set("transform","2")
SkillTable.getInstance().getInfo(5983,1).getEffects(player,player)
elif event == "32557-13.htm" :
if st.getInt("transform") == 1 :
SkillTable.getInstance().getInfo(5982,1).getEffects(player,player)
elif st.getInt("transform") == 2 :
SkillTable.getInstance().getInfo(5983,1).getEffects(player,player)
return htmltext
def onTalk (self,npc,player):
htmltext = Quest.getNoQuestMsg(player)
st = player.getQuestState(qn)
if not st : return htmltext
npcId = npc.getNpcId()
id = st.getState()
cond = st.getInt("cond")
transform = st.getInt("transform")
if id == State.COMPLETED :
htmltext = "32557-0a.htm"
elif id == State.CREATED :
if player.getLevel() < 75 :
htmltext = "32557-00.htm"
else :
htmltext = "32557-01.htm"
else :
if st.getQuestItemsCount(Mark) >= 5 :
htmltext = "32557-14.htm"
if transform == 1 :
st.giveItems(13553,1)
elif transform == 2 :
st.giveItems(13554,1)
st.giveItems(13857,1)
st.addExpAndSp(25160,2525)
st.unset("transform")
st.unset("cond")
st.exitQuest(False)
st.playSound("ItemSound.quest_finish")
elif not transform :
htmltext = "32557-07.htm"
else :
htmltext = "32557-11.htm"
return htmltext
def onKill(self,npc,player,isPet):
st = player.getQuestState(qn)
if not st : return
if st.getState() != State.STARTED : return
count=st.getQuestItemsCount(Mark)
if st.getInt("cond")==1 and count < 5 :
st.giveItems(Mark,1)
if count == 4 :
st.playSound("ItemSound.quest_middle")
st.set("cond","2")
else :
st.playSound("ItemSound.quest_itemget")
return
QUEST = Quest(10273,qn,"Good Day To Fly")
QUEST.addStartNpc(Lekon)
QUEST.addTalkId(Lekon)
QUEST.addKillId(22614)
QUEST.addKillId(22615)
\ No newline at end of file
# Made by Kerberos v1.0 on 2009/04/26
# this script is part of the Official L2J Datapack Project.
# Visit http://www.l2jdp.com/forum for more details.
import sys
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.util import Util
qn = "10274_CollectingInTheAir"
#NPCs
Lekon = 32557
#items
Scroll = 13844
red = 13858
blue = 13859
green = 13860
class Quest (JQuest) :
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
self.questItemIds = [Scroll,red,blue,green]
def onAdvEvent (self,event,npc, player) :
htmltext = event
st = player.getQuestState(qn)
if not st : return
if event == "32557-03.htm" :
st.set("cond","1")
st.giveItems(Scroll,8)
st.setState(State.STARTED)
st.playSound("ItemSound.quest_accept")
return htmltext
def onTalk (self,npc,player):
htmltext = Quest.getNoQuestMsg(player)
st = player.getQuestState(qn)
if not st : return htmltext
npcId = npc.getNpcId()
id = st.getState()
cond = st.getInt("cond")
transform = st.getInt("transform")
if id == State.COMPLETED :
htmltext = "32557-0a.htm"
elif id == State.CREATED :
qs = player.getQuestState("10273_GoodDayToFly")
if qs:
if qs.getState() == State.COMPLETED and player.getLevel() >= 75 :
htmltext = "32557-01.htm"
else:
htmltext = "32557-00.htm"
else :
htmltext = "32557-00.htm"
else :
if st.getQuestItemsCount(red) + st.getQuestItemsCount(blue) + st.getQuestItemsCount(green) >= 8 :
htmltext = "32557-05.htm"
st.giveItems(13728,1)
st.addExpAndSp(25160,2525)
st.unset("transform")
st.unset("cond")
st.exitQuest(False)
st.playSound("ItemSound.quest_finish")
else:
htmltext = "32557-04.htm"
return htmltext
def onSkillSee (self, npc, player, skill, targets, isPet):
st = player.getQuestState(qn)
if not st : return
if Util.contains(targets, npc) and st.getInt("cond") == 1 and skill.getId() == 2630:
st.playSound("ItemSound.quest_itemget")
npcId = npc.getNpcId()
if npcId in range(18684,18687):
st.giveItems(red,1)
elif npcId in range(18687,18690):
st.giveItems(blue,1)
elif npcId in range(18690,18693):
st.giveItems(green,1)
npc.doDie(player)
return
QUEST = Quest(10274,qn,"Collecting in the Air")
QUEST.addStartNpc(Lekon)
QUEST.addTalkId(Lekon)
QUEST.addSkillSeeId(18684)
QUEST.addSkillSeeId(18685)
QUEST.addSkillSeeId(18686)
QUEST.addSkillSeeId(18687)
QUEST.addSkillSeeId(18688)
QUEST.addSkillSeeId(18689)
QUEST.addSkillSeeId(18690)
QUEST.addSkillSeeId(18691)
QUEST.addSkillSeeId(18692)
\ No newline at end of file
# Made by Kerberos v1.0 on 2009/05/03
# this script is part of the Official L2J Datapack Project.
# Visit http://www.l2jdp.com/forum for more details.
import sys
from com.l2jserver.gameserver.datatables import SkillTable
from com.l2jserver.gameserver.model import Elementals
from com.l2jserver.gameserver.model.itemcontainer import Inventory
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
qn = "10275_ContainingTheAttributePower"
#NPCs
Holly = 30839
Weber = 31307
Yin = 32325
Yang = 32326
Water = 27380
Air = 27381
#items
YinSword = 13845
YangSword = 13881
SoulPieceWater = 13861
SoulPieceAir = 13862
class Quest (JQuest) :
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
self.questItemIds = [YinSword, YangSword, SoulPieceWater, SoulPieceAir]
def onAdvEvent (self,event,npc, player) :
htmltext = event
st = player.getQuestState(qn)
if not st : return
if event in ["30839-02.htm","31307-02.htm"] :
st.set("cond","1")
st.setState(State.STARTED)
st.playSound("ItemSound.quest_accept")
elif event == "30839-05.htm" :
st.set("cond","2")
st.playSound("ItemSound.quest_middle")
elif event == "31307-05.htm" :
st.set("cond","7")
st.playSound("ItemSound.quest_middle")
elif event == "32325-03.htm" :
st.set("cond","3")
st.giveItems(YinSword,1,Elementals.FIRE,10)
st.playSound("ItemSound.quest_middle")
elif event == "32326-03.htm" :
st.set("cond","8")
st.giveItems(YangSword,1,Elementals.EARTH,10)
st.playSound("ItemSound.quest_middle")
elif event == "32325-06.htm" :
if st.getQuestItemsCount(YinSword):
st.takeItems(YinSword,1)
htmltext = "32325-07.htm"
st.giveItems(YinSword,1,Elementals.FIRE,10)
elif event == "32326-06.htm" :
if st.getQuestItemsCount(YangSword):
st.takeItems(YangSword,1)
htmltext = "32326-07.htm"
st.giveItems(YangSword,1,Elementals.EARTH,10)
elif event == "32325-09.htm" :
st.set("cond","5")
SkillTable.getInstance().getInfo(2635,1).getEffects(player,player)
st.giveItems(YinSword,1,Elementals.FIRE,10)
st.playSound("ItemSound.quest_middle")
elif event == "32326-09.htm" :
st.set("cond","10")
SkillTable.getInstance().getInfo(2636,1).getEffects(player,player)
st.giveItems(YangSword,1,Elementals.EARTH,10)
st.playSound("ItemSound.quest_middle")
elif event.isdigit() :
st.giveItems(10520+int(event),2)
st.addExpAndSp(202160,20375)
st.unset("cond")
st.exitQuest(False)
st.playSound("ItemSound.quest_finish")
htmltext = str(npc.getNpcId())+"-1"+event+".htm"
return htmltext
def onTalk (self,npc,player):
htmltext = Quest.getNoQuestMsg(player)
st = player.getQuestState(qn)
if not st : return htmltext
npcId = npc.getNpcId()
id = st.getState()
cond = st.getInt("cond")
if id == State.COMPLETED :
if npcId == Holly :
htmltext = "30839-0a.htm"
elif npcId == Weber:
htmltext = "31307-0a.htm"
elif id == State.CREATED :
if player.getLevel() >= 76 :
if npcId == Holly :
htmltext = "30839-01.htm"
else:
htmltext = "31307-01.htm"
else:
if npcId == Holly :
htmltext = "30839-00.htm"
else:
htmltext = "31307-00.htm"
else :
if npcId == Holly :
if cond == 1:
htmltext = "30839-03.htm"
elif cond == 2:
htmltext = "30839-05.htm"
elif npcId == Weber:
if cond == 1:
htmltext = "31307-03.htm"
elif cond == 7:
htmltext = "31307-05.htm"
elif npcId == Yin:
if cond == 2:
htmltext = "32325-01.htm"
elif cond in [3,5]:
htmltext = "32325-04.htm"
elif cond == 4:
htmltext = "32325-08.htm"
st.takeItems(YinSword,1)
st.takeItems(SoulPieceWater,-1)
elif cond == 6:
htmltext = "32325-10.htm"
elif npcId == Yang:
if cond == 7:
htmltext = "32326-01.htm"
elif cond in [8,10]:
htmltext = "32326-04.htm"
elif cond == 9:
htmltext = "32326-08.htm"
st.takeItems(YangSword,1)
st.takeItems(SoulPieceAir,-1)
elif cond == 11:
htmltext = "32326-10.htm"
return htmltext
def onKill(self,npc,player,isPet):
st = player.getQuestState(qn)
if not st or isPet: return
if st.getState() != State.STARTED : return
npcId = npc.getNpcId()
if npcId == Air :
if st.getItemEquipped(Inventory.PAPERDOLL_RHAND) == YangSword and st.getInt("cond") in [8,10] and st.getQuestItemsCount(SoulPieceAir) < 6 and st.getRandom(100) < 30:
st.giveItems(SoulPieceAir,1)
if st.getQuestItemsCount(SoulPieceAir) >= 6 :
st.set("cond",str(st.getInt("cond")+1))
st.playSound("ItemSound.quest_middle")
else:
st.playSound("ItemSound.quest_itemget")
elif npcId == Water :
if st.getItemEquipped(Inventory.PAPERDOLL_RHAND) == YinSword and st.getInt("cond") in [3,5] and st.getQuestItemsCount(SoulPieceWater) < 6 and st.getRandom(100) < 30:
st.giveItems(SoulPieceWater,1)
if st.getQuestItemsCount(SoulPieceWater) >= 6 :
st.set("cond",str(st.getInt("cond")+1))
st.playSound("ItemSound.quest_middle")
else:
st.playSound("ItemSound.quest_itemget")
return
QUEST = Quest(10275,qn,"Containing the Attribute Power")
QUEST.addStartNpc(Holly)
QUEST.addStartNpc(Weber)
QUEST.addTalkId(Holly)
QUEST.addTalkId(Weber)
QUEST.addTalkId(Yin)
QUEST.addTalkId(Yang)
QUEST.addKillId(Air)
QUEST.addKillId(Water)
\ No newline at end of file
# 2010-06-29 by Gnacik
# Based on official server Franz and Rpg
import sys
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.util import Rnd
qn = "10276_MutatedKaneusGludio"
# NPCs
BATHIS = 30332
ROHMER = 30344
TOMLAN_KAMOS = 18554
OL_ARIOSH = 18555
# Items
TISSUE_TK = 13830
TISSUE_OA = 13831
class Quest (JQuest) :
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
self.questItemIds = [TISSUE_TK, TISSUE_OA]
def onAdvEvent(self, event, npc, player) :
htmltext = event
st = player.getQuestState(qn)
if not st : return
if event == "30332-03.htm" :
st.setState(State.STARTED)
st.set("cond","1")
st.playSound("ItemSound.quest_accept")
elif event == "30344-03.htm" :
st.unset("cond")
st.rewardItems(57,8500)
st.exitQuest(False)
st.playSound("ItemSound.quest_finish")
return htmltext
def onTalk (self, npc, player) :
htmltext = Quest.getNoQuestMsg(player)
st = player.getQuestState(qn)
if not st : return htmltext
npcId = npc.getNpcId()
cond = st.getInt("cond")
if npcId == BATHIS :
if st.getState() == State.COMPLETED :
htmltext = "30332-06.htm"
elif st.getState() == State.CREATED and player.getLevel() >= 18 :
htmltext = "30332-01.htm"
elif st.getState() == State.CREATED and player.getLevel() < 18 :
htmltext = "30332-00.htm"
elif st.getQuestItemsCount(TISSUE_TK) > 0 and st.getQuestItemsCount(TISSUE_OA) > 0 :
htmltext = "30332-05.htm"
elif cond == 1 :
htmltext = "30332-04.htm"
elif npcId == ROHMER :
if st.getState() == State.COMPLETED :
htmltext = Quest.getAlreadyCompletedMsg(player)
elif st.getQuestItemsCount(TISSUE_TK) > 0 and st.getQuestItemsCount(TISSUE_OA) > 0 :
htmltext = "30344-02.htm"
else :
htmltext = "30344-01.htm"
return htmltext
def onKill(self, npc, player, isPet) :
npcId = npc.getNpcId()
party = player.getParty()
if party :
PartyMembers = []
for member in party.getPartyMembers().toArray() :
st = member.getQuestState(qn)
if st and st.getState() == State.STARTED and st.getInt("cond") == 1 :
if npcId == TOMLAN_KAMOS and st.getQuestItemsCount(TISSUE_TK) == 0 :
PartyMembers.append(st)
elif npcId == TISSUE_OA and st.getQuestItemsCount(TISSUE_OA) == 0 :
PartyMembers.append(st)
if len(PartyMembers) == 0 : return
winnerst = PartyMembers[Rnd.get(len(PartyMembers))]
if npcId == TOMLAN_KAMOS and winnerst.getQuestItemsCount(TISSUE_TK) == 0 :
winnerst.giveItems(TISSUE_TK,1)
winnerst.playSound("ItemSound.quest_itemget")
elif npcId == OL_ARIOSH and winnerst.getQuestItemsCount(TISSUE_OA) == 0 :
winnerst.giveItems(TISSUE_OA,1)
winnerst.playSound("ItemSound.quest_itemget")
else :
st = player.getQuestState(qn)
if not st : return
if st.getState() != State.STARTED : return
if npcId == TOMLAN_KAMOS and st.getQuestItemsCount(TISSUE_TK) == 0 :
st.giveItems(TISSUE_TK,1)
st.playSound("ItemSound.quest_itemget")
elif npcId == OL_ARIOSH and st.getQuestItemsCount(TISSUE_OA) == 0 :
st.giveItems(TISSUE_OA,1)
st.playSound("ItemSound.quest_itemget")
return
QUEST = Quest(10276,qn,"Mutated Kaneus - Gludio")
QUEST.addStartNpc(BATHIS)
QUEST.addTalkId(BATHIS)
QUEST.addTalkId(ROHMER)
QUEST.addKillId(TOMLAN_KAMOS)
QUEST.addKillId(OL_ARIOSH)
# 2010-06-29 by Gnacik
# Based on official server Franz and Rpg
import sys
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.util import Rnd
qn = "10277_MutatedKaneusDion"
# NPCs
LUKAS = 30071
MIRIEN = 30461
CRIMSON_HATU = 18558
SEER_FLOUROS = 18559
# Items
TISSUE_CH = 13832
TISSUE_SF = 13833
class Quest (JQuest) :
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
self.questItemIds = [TISSUE_CH, TISSUE_SF]
def onAdvEvent(self, event, npc, player) :
htmltext = event
st = player.getQuestState(qn)
if not st : return
if event == "30071-03.htm" :
st.setState(State.STARTED)
st.set("cond","1")
st.playSound("ItemSound.quest_accept")
elif event == "30461-03.htm" :
st.unset("cond")
st.rewardItems(57,20000)
st.exitQuest(False)
st.playSound("ItemSound.quest_finish")
return htmltext
def onTalk (self, npc, player) :
htmltext = Quest.getNoQuestMsg(player)
st = player.getQuestState(qn)
if not st : return htmltext
npcId = npc.getNpcId()
cond = st.getInt("cond")
if npcId == LUKAS :
if st.getState() == State.COMPLETED :
htmltext = "30071-06.htm"
elif st.getState() == State.CREATED and player.getLevel() >= 28 :
htmltext = "30071-01.htm"
elif st.getState() == State.CREATED and player.getLevel() < 28 :
htmltext = "30071-00.htm"
elif st.getQuestItemsCount(TISSUE_CH) > 0 and st.getQuestItemsCount(TISSUE_SF) > 0 :
htmltext = "30071-05.htm"
elif cond == 1 :
htmltext = "30071-04.htm"
elif npcId == MIRIEN :
if st.getState() == State.COMPLETED :
htmltext = Quest.getAlreadyCompletedMsg(player)
elif st.getQuestItemsCount(TISSUE_CH) > 0 and st.getQuestItemsCount(TISSUE_SF) > 0 :
htmltext = "30461-02.htm"
else :
htmltext = "30461-01.htm"
return htmltext
def onKill(self, npc, player, isPet) :
npcId = npc.getNpcId()
party = player.getParty()
if party :
PartyMembers = []
for member in party.getPartyMembers().toArray() :
st = member.getQuestState(qn)
if st and st.getState() == State.STARTED and st.getInt("cond") == 1 :
if npcId == CRIMSON_HATU and st.getQuestItemsCount(TISSUE_CH) == 0 :
PartyMembers.append(st)
elif npcId == TISSUE_SF and st.getQuestItemsCount(TISSUE_SF) == 0 :
PartyMembers.append(st)
if len(PartyMembers) == 0 : return
winnerst = PartyMembers[Rnd.get(len(PartyMembers))]
if npcId == CRIMSON_HATU and winnerst.getQuestItemsCount(TISSUE_CH) == 0 :
winnerst.giveItems(TISSUE_CH,1)
winnerst.playSound("ItemSound.quest_itemget")
elif npcId == SEER_FLOUROS and winnerst.getQuestItemsCount(TISSUE_SF) == 0 :
winnerst.giveItems(TISSUE_SF,1)
winnerst.playSound("ItemSound.quest_itemget")
else :
st = player.getQuestState(qn)
if not st : return
if st.getState() != State.STARTED : return
if npcId == CRIMSON_HATU and st.getQuestItemsCount(TISSUE_CH) == 0 :
st.giveItems(TISSUE_CH,1)
st.playSound("ItemSound.quest_itemget")
elif npcId == SEER_FLOUROS and st.getQuestItemsCount(TISSUE_SF) == 0 :
st.giveItems(TISSUE_SF,1)
st.playSound("ItemSound.quest_itemget")
return
QUEST = Quest(10277,qn,"Mutated Kaneus - Dion")
QUEST.addStartNpc(LUKAS)
QUEST.addTalkId(LUKAS)
QUEST.addTalkId(MIRIEN)
QUEST.addKillId(CRIMSON_HATU)
QUEST.addKillId(SEER_FLOUROS)
# 2010-06-29 by Gnacik
# Based on official server Franz and Rpg
import sys
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.util import Rnd
qn = "10278_MutatedKaneusHeine"
# NPCs
GOSTA = 30916
MINEVIA = 30907
BLADE_OTIS = 18562
WEIRD_BUNEI = 18564
# Items
TISSUE_BO = 13834
TISSUE_WB = 13835
class Quest (JQuest) :
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
self.questItemIds = [TISSUE_BO, TISSUE_WB]
def onAdvEvent(self, event, npc, player) :
htmltext = event
st = player.getQuestState(qn)
if not st : return
if event == "30916-03.htm" :
st.setState(State.STARTED)
st.set("cond","1")
st.playSound("ItemSound.quest_accept")
elif event == "30907-03.htm" :
st.unset("cond")
st.rewardItems(57,50000)
st.exitQuest(False)
st.playSound("ItemSound.quest_finish")
return htmltext
def onTalk (self, npc, player) :
htmltext = Quest.getNoQuestMsg(player)
st = player.getQuestState(qn)
if not st : return htmltext
npcId = npc.getNpcId()
cond = st.getInt("cond")
if npcId == GOSTA :
if st.getState() == State.COMPLETED :
htmltext = "30916-06.htm"
elif st.getState() == State.CREATED and player.getLevel() >= 38 :
htmltext = "30916-01.htm"
elif st.getState() == State.CREATED and player.getLevel() < 38 :
htmltext = "30916-00.htm"
elif st.getQuestItemsCount(TISSUE_BO) > 0 and st.getQuestItemsCount(TISSUE_WB) > 0 :
htmltext = "30916-05.htm"
elif cond == 1 :
htmltext = "30916-04.htm"
elif npcId == MINEVIA :
if st.getState() == State.COMPLETED :
htmltext = Quest.getAlreadyCompletedMsg(player)
elif st.getQuestItemsCount(TISSUE_BO) > 0 and st.getQuestItemsCount(TISSUE_WB) > 0 :
htmltext = "30907-02.htm"
else :
htmltext = "30907-01.htm"
return htmltext
def onKill(self, npc, player, isPet) :
npcId = npc.getNpcId()
party = player.getParty()
if party :
PartyMembers = []
for member in party.getPartyMembers().toArray() :
st = member.getQuestState(qn)
if st and st.getState() == State.STARTED and st.getInt("cond") == 1 :
if npcId == BLADE_OTIS and st.getQuestItemsCount(TISSUE_BO) == 0 :
PartyMembers.append(st)
elif npcId == TISSUE_WB and st.getQuestItemsCount(TISSUE_WB) == 0 :
PartyMembers.append(st)
if len(PartyMembers) == 0 : return
winnerst = PartyMembers[Rnd.get(len(PartyMembers))]
if npcId == BLADE_OTIS and winnerst.getQuestItemsCount(TISSUE_BO) == 0 :
winnerst.giveItems(TISSUE_BO,1)
winnerst.playSound("ItemSound.quest_itemget")
elif npcId == WEIRD_BUNEI and winnerst.getQuestItemsCount(TISSUE_WB) == 0 :
winnerst.giveItems(TISSUE_WB,1)
winnerst.playSound("ItemSound.quest_itemget")
else :
st = player.getQuestState(qn)
if not st : return
if st.getState() != State.STARTED : return
if npcId == BLADE_OTIS and st.getQuestItemsCount(TISSUE_BO) == 0 :
st.giveItems(TISSUE_BO,1)
st.playSound("ItemSound.quest_itemget")
elif npcId == WEIRD_BUNEI and st.getQuestItemsCount(TISSUE_WB) == 0 :
st.giveItems(TISSUE_WB,1)
st.playSound("ItemSound.quest_itemget")
return
QUEST = Quest(10278,qn,"Mutated Kaneus - Heine")
QUEST.addStartNpc(GOSTA)
QUEST.addTalkId(GOSTA)
QUEST.addTalkId(MINEVIA)
QUEST.addKillId(BLADE_OTIS)
QUEST.addKillId(WEIRD_BUNEI)
# 2010-06-29 by Gnacik
# Based on official server Franz and Rpg
import sys
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.util import Rnd
qn = "10279_MutatedKaneusOren"
# NPCs
MOUEN = 30196
ROVIA = 30189
KAIM_ABIGORE = 18566
KNIGHT_MONTAGNAR = 18568
# Items
TISSUE_KA = 13836
TISSUE_KM = 13837
class Quest (JQuest) :
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
self.questItemIds = [TISSUE_KA, TISSUE_KM]
def onAdvEvent(self, event, npc, player) :
htmltext = event
st = player.getQuestState(qn)
if not st : return
if event == "30196-03.htm" :
st.setState(State.STARTED)
st.set("cond","1")
st.playSound("ItemSound.quest_accept")
elif event == "30189-03.htm" :
st.unset("cond")
st.rewardItems(57,100000)
st.exitQuest(False)
st.playSound("ItemSound.quest_finish")
return htmltext
def onTalk (self, npc, player) :
htmltext = Quest.getNoQuestMsg(player)
st = player.getQuestState(qn)
if not st : return htmltext
npcId = npc.getNpcId()
cond = st.getInt("cond")
if npcId == MOUEN :
if st.getState() == State.COMPLETED :
htmltext = "30196-06.htm"
elif st.getState() == State.CREATED and player.getLevel() >= 48 :
htmltext = "30196-01.htm"
elif st.getState() == State.CREATED and player.getLevel() < 48 :
htmltext = "30196-00.htm"
elif st.getQuestItemsCount(TISSUE_KA) > 0 and st.getQuestItemsCount(TISSUE_KM) > 0 :
htmltext = "30196-05.htm"
elif cond == 1 :
htmltext = "30196-04.htm"
elif npcId == ROVIA :
if st.getState() == State.COMPLETED :
htmltext = Quest.getAlreadyCompletedMsg(player)
elif st.getQuestItemsCount(TISSUE_KA) > 0 and st.getQuestItemsCount(TISSUE_KM) > 0 :
htmltext = "30189-02.htm"
else :
htmltext = "30189-01.htm"
return htmltext
def onKill(self, npc, player, isPet) :
npcId = npc.getNpcId()
party = player.getParty()
if party :
PartyMembers = []
for member in party.getPartyMembers().toArray() :
st = member.getQuestState(qn)
if st and st.getState() == State.STARTED and st.getInt("cond") == 1 :
if npcId == KAIM_ABIGORE and st.getQuestItemsCount(TISSUE_KA) == 0 :
PartyMembers.append(st)
elif npcId == TISSUE_KM and st.getQuestItemsCount(TISSUE_KM) == 0 :
PartyMembers.append(st)
if len(PartyMembers) == 0 : return
winnerst = PartyMembers[Rnd.get(len(PartyMembers))]
if npcId == KAIM_ABIGORE and winnerst.getQuestItemsCount(TISSUE_KA) == 0 :
winnerst.giveItems(TISSUE_KA,1)
winnerst.playSound("ItemSound.quest_itemget")
elif npcId == KNIGHT_MONTAGNAR and winnerst.getQuestItemsCount(TISSUE_KM) == 0 :
winnerst.giveItems(TISSUE_KM,1)
winnerst.playSound("ItemSound.quest_itemget")
else :
st = player.getQuestState(qn)
if not st : return
if st.getState() != State.STARTED : return
if npcId == KAIM_ABIGORE and st.getQuestItemsCount(TISSUE_KA) == 0 :
st.giveItems(TISSUE_KA,1)
st.playSound("ItemSound.quest_itemget")
elif npcId == KNIGHT_MONTAGNAR and st.getQuestItemsCount(TISSUE_KM) == 0 :
st.giveItems(TISSUE_KM,1)
st.playSound("ItemSound.quest_itemget")
return
QUEST = Quest(10279,qn,"Mutated Kaneus - Oren")
QUEST.addStartNpc(MOUEN)
QUEST.addTalkId(MOUEN)
QUEST.addTalkId(ROVIA)
QUEST.addKillId(KAIM_ABIGORE)
QUEST.addKillId(KNIGHT_MONTAGNAR)
# 2010-06-29 by Gnacik
# Based on official server Franz and Rpg
import sys
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.util import Rnd
qn = "10280_MutatedKaneusSchuttgart"
# NPCs
VISHOTSKY = 31981
ATRAXIA = 31972
VENOMOUS_STORACE = 18571
KEL_BILETTE = 18573
# Items
TISSUE_VS = 13838
TISSUE_KB = 13839
class Quest (JQuest) :
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
self.questItemIds = [TISSUE_VS, TISSUE_KB]
def onAdvEvent(self, event, npc, player) :
htmltext = event
st = player.getQuestState(qn)
if not st : return
if event == "31981-03.htm" :
st.setState(State.STARTED)
st.set("cond","1")
st.playSound("ItemSound.quest_accept")
elif event == "31972-03.htm" :
st.unset("cond")
st.rewardItems(57,210000)
st.exitQuest(False)
st.playSound("ItemSound.quest_finish")
return htmltext
def onTalk (self, npc, player) :
htmltext = Quest.getNoQuestMsg(player)
st = player.getQuestState(qn)
if not st : return htmltext
npcId = npc.getNpcId()
cond = st.getInt("cond")
if npcId == VISHOTSKY :
if st.getState() == State.COMPLETED :
htmltext = "31981-06.htm"
elif st.getState() == State.CREATED and player.getLevel() >= 58 :
htmltext = "31981-01.htm"
elif st.getState() == State.CREATED and player.getLevel() < 58 :
htmltext = "31981-00.htm"
elif st.getQuestItemsCount(TISSUE_VS) > 0 and st.getQuestItemsCount(TISSUE_KB) > 0 :
htmltext = "31981-05.htm"
elif cond == 1 :
htmltext = "31981-04.htm"
elif npcId == ATRAXIA :
if st.getState() == State.COMPLETED :
htmltext = Quest.getAlreadyCompletedMsg(player)
elif st.getQuestItemsCount(TISSUE_VS) > 0 and st.getQuestItemsCount(TISSUE_KB) > 0 :
htmltext = "31972-02.htm"
else :
htmltext = "31972-01.htm"
return htmltext
def onKill(self, npc, player, isPet) :
npcId = npc.getNpcId()
party = player.getParty()
if party :
PartyMembers = []
for member in party.getPartyMembers().toArray() :
st = member.getQuestState(qn)
if st and st.getState() == State.STARTED and st.getInt("cond") == 1 :
if npcId == VENOMOUS_STORACE and st.getQuestItemsCount(TISSUE_VS) == 0 :
PartyMembers.append(st)
elif npcId == TISSUE_KB and st.getQuestItemsCount(TISSUE_KB) == 0 :
PartyMembers.append(st)
if len(PartyMembers) == 0 : return
winnerst = PartyMembers[Rnd.get(len(PartyMembers))]
if npcId == VENOMOUS_STORACE and winnerst.getQuestItemsCount(TISSUE_VS) == 0 :
winnerst.giveItems(TISSUE_VS,1)
winnerst.playSound("ItemSound.quest_itemget")
elif npcId == KEL_BILETTE and winnerst.getQuestItemsCount(TISSUE_KB) == 0 :
winnerst.giveItems(TISSUE_KB,1)
winnerst.playSound("ItemSound.quest_itemget")
else :
st = player.getQuestState(qn)
if not st : return
if st.getState() != State.STARTED : return
if npcId == VENOMOUS_STORACE and st.getQuestItemsCount(TISSUE_VS) == 0 :
st.giveItems(TISSUE_VS,1)
st.playSound("ItemSound.quest_itemget")
elif npcId == KEL_BILETTE and st.getQuestItemsCount(TISSUE_KB) == 0 :
st.giveItems(TISSUE_KB,1)
st.playSound("ItemSound.quest_itemget")
return
QUEST = Quest(10280,qn,"Mutated Kaneus - Schuttgart")
QUEST.addStartNpc(VISHOTSKY)
QUEST.addTalkId(VISHOTSKY)
QUEST.addTalkId(ATRAXIA)
QUEST.addKillId(VENOMOUS_STORACE)
QUEST.addKillId(KEL_BILETTE)
# 2010-06-29 by Gnacik
# Based on official server Franz and Rpg
import sys
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.util import Rnd
qn = "10281_MutatedKaneusRune"
# NPCs
MATHIAS = 31340
KAYAN = 31335
WHITE_ALLOSCE = 18577
# Items
TISSUE_WA = 13840
class Quest (JQuest) :
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
self.questItemIds = [TISSUE_WA]
def onAdvEvent(self, event, npc, player) :
htmltext = event
st = player.getQuestState(qn)
if not st : return
if event == "31340-03.htm" :
st.setState(State.STARTED)
st.set("cond","1")
st.playSound("ItemSound.quest_accept")
elif event == "31335-03.htm" :
st.unset("cond")
st.rewardItems(57,360000)
st.exitQuest(False)
st.playSound("ItemSound.quest_finish")
return htmltext
def onTalk (self, npc, player) :
htmltext = Quest.getNoQuestMsg(player)
st = player.getQuestState(qn)
if not st : return htmltext
npcId = npc.getNpcId()
cond = st.getInt("cond")
if npcId == MATHIAS :
if st.getState() == State.COMPLETED :
htmltext = "31340-06.htm"
elif st.getState() == State.CREATED and player.getLevel() >= 68 :
htmltext = "31340-01.htm"
elif st.getState() == State.CREATED and player.getLevel() < 68 :
htmltext = "31340-00.htm"
elif st.getQuestItemsCount(TISSUE_WA) > 0 :
htmltext = "31340-05.htm"
elif cond == 1 :
htmltext = "31340-04.htm"
elif npcId == KAYAN :
if st.getState() == State.COMPLETED :
htmltext = Quest.getAlreadyCompletedMsg(player)
elif st.getQuestItemsCount(TISSUE_WA) > 0 :
htmltext = "31335-02.htm"
else :
htmltext = "31335-01.htm"
return htmltext
def onKill(self, npc, player, isPet) :
npcId = npc.getNpcId()
party = player.getParty()
if party :
PartyMembers = []
for member in party.getPartyMembers().toArray() :
st = member.getQuestState(qn)
if st and st.getState() == State.STARTED and st.getInt("cond") == 1 :
if npcId == WHITE_ALLOSCE and st.getQuestItemsCount(TISSUE_WA) == 0 :
PartyMembers.append(st)
if len(PartyMembers) == 0 : return
winnerst = PartyMembers[Rnd.get(len(PartyMembers))]
if npcId == WHITE_ALLOSCE and winnerst.getQuestItemsCount(TISSUE_WA) == 0 :
winnerst.giveItems(TISSUE_WA,1)
winnerst.playSound("ItemSound.quest_itemget")
else :
st = player.getQuestState(qn)
if not st : return
if st.getState() != State.STARTED : return
if npcId == WHITE_ALLOSCE and st.getQuestItemsCount(TISSUE_WA) == 0 :
st.giveItems(TISSUE_WA,1)
st.playSound("ItemSound.quest_itemget")
return
QUEST = Quest(10281,qn,"Mutated Kaneus - Rune")
QUEST.addStartNpc(MATHIAS)
QUEST.addTalkId(MATHIAS)
QUEST.addTalkId(KAYAN)
QUEST.addKillId(WHITE_ALLOSCE)
\ No newline at end of file
# 2010-08-13 by Gnacik
# Based on Freya PTS
import sys
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
qn = "10282_ToTheSeedOfAnnihilation"
# NPC
KBALDIR = 32733
KLEMIS = 32734
# ITEMS
SOA_ORDERS = 15512
class Quest (JQuest) :
def __init__(self,id,name,descr):
JQuest.__init__(self,id,name,descr)
def onAdvEvent (self,event,npc, player) :
htmltext = event
st = player.getQuestState(qn)
if not st : return
if event == "32733-07.htm" :
st.setState(State.STARTED)
st.set("cond","1")
st.giveItems(SOA_ORDERS,1)
st.playSound("ItemSound.quest_accept")
elif event == "32734-02.htm" :
st.unset("cond")
st.addExpAndSp(1148480,99110)
st.takeItems(SOA_ORDERS,-1)
st.exitQuest(False)
return htmltext
def onTalk (self,npc,player):
htmltext = Quest.getNoQuestMsg(player)
st = player.getQuestState(qn)
if not st : return htmltext
npcId = npc.getNpcId()
id = st.getState()
cond = st.getInt("cond")
if id == State.COMPLETED :
if npcId == KBALDIR :
htmltext = "32733-09.htm"
elif npcId == KLEMIS:
htmltext = "32734-03.htm"
elif id == State.CREATED :
if player.getLevel() >= 84 :
htmltext = "32733-01.htm"
else :
htmltext = "32733-00.htm"
else :
if cond == 1 :
if npcId == KBALDIR :
htmltext = "32733-08.htm"
elif npcId == KLEMIS :
htmltext = "32734-01.htm"
return htmltext
QUEST = Quest(10282,qn,"To the Seed of Annihilation")
QUEST.addStartNpc(KBALDIR)
QUEST.addTalkId(KBALDIR)
QUEST.addTalkId(KLEMIS)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment