Improved starting Ertheia quests.

This commit is contained in:
MobiusDev
2015-12-16 12:27:16 +00:00
parent e8256a4151
commit 99c139efab
10 changed files with 123 additions and 49 deletions

View File

@@ -1,5 +0,0 @@
<html><head><body>Maestro Dolkin:<br>
You're better than I thought!<br>
Shall we step outside?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_goto 3400201">"Let's go then."</Button>
</body></html>

View File

@@ -36,11 +36,9 @@ public class KaraphonHabitat extends AbstractInstance
// Npcs // Npcs
private static final int DOLKIN = 33954; private static final int DOLKIN = 33954;
private static final int DOLKIN_INSTANCE = 34002; private static final int DOLKIN_INSTANCE = 34002;
// Locations // Locations
private static final Location START_LOC = new Location(-82250, 246406, -14152); private static final Location START_LOC = new Location(-82250, 246406, -14152);
private static final Location EXIT_LOC = new Location(-88240, 237450, -2880); private static final Location EXIT_LOC = new Location(-88240, 237450, -2880);
// Instance // Instance
private static final int TEMPLATE_ID = 253; private static final int TEMPLATE_ID = 253;
@@ -48,6 +46,14 @@ public class KaraphonHabitat extends AbstractInstance
{ {
} }
public KaraphonHabitat()
{
super(KaraphonHabitat.class.getSimpleName());
addFirstTalkId(DOLKIN_INSTANCE);
addStartNpc(DOLKIN, DOLKIN_INSTANCE);
addTalkId(DOLKIN, DOLKIN_INSTANCE);
}
@Override @Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{ {
@@ -64,6 +70,10 @@ public class KaraphonHabitat extends AbstractInstance
else if (event.equals("exit_instance")) else if (event.equals("exit_instance"))
{ {
final InstanceWorld world = InstanceManager.getInstance().getPlayerWorld(player); final InstanceWorld world = InstanceManager.getInstance().getPlayerWorld(player);
if (!(world instanceof KHWorld))
{
return null;
}
world.removeAllowed(player.getObjectId()); world.removeAllowed(player.getObjectId());
teleportPlayer(player, EXIT_LOC, 0); teleportPlayer(player, EXIT_LOC, 0);
} }
@@ -71,11 +81,10 @@ public class KaraphonHabitat extends AbstractInstance
return super.onAdvEvent(event, npc, player); return super.onAdvEvent(event, npc, player);
} }
public KaraphonHabitat() @Override
public String onFirstTalk(L2Npc npc, L2PcInstance player)
{ {
super(KaraphonHabitat.class.getSimpleName()); return "34002.html";
addStartNpc(DOLKIN);
addTalkId(DOLKIN, DOLKIN_INSTANCE);
} }
@Override @Override

View File

@@ -116,7 +116,7 @@ public class Q10735_ASpecialPower extends Quest
@Override @Override
public String onTalk(L2Npc npc, L2PcInstance player) public String onTalk(L2Npc npc, L2PcInstance player)
{ {
QuestState qs = getQuestState(player, true); final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player); String htmltext = getNoQuestMsg(player);
if (qs.isCompleted()) if (qs.isCompleted())

View File

@@ -221,8 +221,10 @@ public class Q10736_ASpecialPower extends Quest
break; break;
} }
} }
break;
} }
} }
return htmltext; return htmltext;
} }

View File

@@ -117,6 +117,7 @@ public class Q10742_AFurryFriend extends Quest
player.sendPacket(new ExSendUIEvent(player, false, false, 0, 0, NpcStringId.REMAINING_TIME)); player.sendPacket(new ExSendUIEvent(player, false, false, 0, 0, NpcStringId.REMAINING_TIME));
startQuestTimer("unspawn_ricky", 2000, npc, player); startQuestTimer("unspawn_ricky", 2000, npc, player);
cancelQuestTimer("check_ricky_distance", npc, player); cancelQuestTimer("check_ricky_distance", npc, player);
cancelQuestTimer("unspawn_ricky_failed", npc, player);
break; break;
} }

View File

@@ -510,14 +510,17 @@
</collision> </collision>
</npc> </npc>
<npc id="19546" level="4" type="L2Monster" name="Dummy" title="Training"> <npc id="19546" level="4" type="L2Monster" name="Dummy" title="Training">
<!-- AUTO GENERATED NPC TODO: FIX IT --> <race>ETC</race>
<race>HUMAN</race>
<sex>FEMALE</sex> <sex>FEMALE</sex>
<stats str="40" int="21" dex="30" wit="20" con="43" men="20"> <stats str="78" int="42" dex="41" wit="78" con="75" men="20">
<vitals hp="108" hpRegen="7.5" mp="1345.8" mpRegen="2.7" /> <vitals hp="108" hpRegen="7.5" mp="1345.8" mpRegen="2.7" />
<defence physical="55.51894" magical="36.965135694682" />
<attribute>
<defence fire="20" water="20" wind="31" earth="20" holy="20" dark="20" />
</attribute>
<speed> <speed>
<walk ground="50" /> <walk ground="0" />
<run ground="120" /> <run ground="0" />
</speed> </speed>
</stats> </stats>
<status attackable="false" /> <status attackable="false" />

View File

@@ -1961,7 +1961,6 @@
</collision> </collision>
</npc> </npc>
<npc id="23450" level="7" type="L2Monster" name="Ratel"> <npc id="23450" level="7" type="L2Monster" name="Ratel">
<!-- AUTO GENERATED NPC TODO: FIX IT -->
<parameters> <parameters>
<param name="MoveAroundSocial" value="0" /> <param name="MoveAroundSocial" value="0" />
<param name="MoveAroundSocial1" value="0" /> <param name="MoveAroundSocial1" value="0" />
@@ -2188,25 +2187,47 @@
<height normal="10.5" /> <height normal="10.5" />
</collision> </collision>
</npc> </npc>
<npc id="23454" level="13" type="L2Npc" name="Robust Kiku"> <npc id="23454" level="13" type="L2Monster" name="Robust Kiku">
<!-- AUTO GENERATED NPC TODO: FIX IT --> <race>ANIMAL</race>
<race>HUMAN</race> <sex>MALE</sex>
<sex>FEMALE</sex> <acquire exp="530" sp="0" />
<stats str="40" int="21" dex="30" wit="20" con="43" men="20"> <stats>
<vitals hp="340" hpRegen="7.5" mp="1345.8" mpRegen="2.7" /> <vitals hp="316" hpRegen="2.5" mp="124.48" mpRegen="1.2" />
<attack physical="22.99606" magical="15.70333" random="30" critical="4" accuracy="4.75" attackSpeed="253" type="SWORD" range="40" distance="80" width="120" />
<defence physical="66.32989" magical="44.163184477748" />
<attribute>
<defence fire="20" water="20" wind="20" earth="20" holy="20" dark="20" />
</attribute>
<speed> <speed>
<walk ground="50" /> <walk ground="23" />
<run ground="120" /> <run ground="110" />
</speed> </speed>
<hitTime>370</hitTime>
</stats> </stats>
<status attackable="false" /> <status undying="false" canBeSown="true" />
<skillList>
<skill id="4416" level="4" /> <!-- Animals -->
<skill id="4410" level="14" /> <!-- Strong P. Atk. -->
<skill id="4412" level="13" /> <!-- Slightly Strong P. Def. -->
<skill id="4413" level="13" /> <!-- Slightly Strong M. Def. -->
</skillList>
<dropLists>
<death>
<item id="29" min="1" max="1" chance="4.985" /> <!-- Leather Pants -->
<item id="57" min="5" max="11" chance="70" /> <!-- Adena -->
<item id="36551" min="1" max="1" chance="0.3" /> <!-- Armor Fragment (Low-grade) -->
<item id="39629" min="1" max="1" chance="0.01" /> <!-- Fortune Bag - Stage 1 --> <!-- Lucky Drop -->
</death>
<corpse>
<item id="36516" min="1" max="1" chance="14.8" /> <!-- Worn Leather -->
</corpse>
</dropLists>
<collision> <collision>
<radius normal="4" /> <radius normal="4" />
<height normal="10.5" /> <height normal="10.5" />
</collision> </collision>
</npc> </npc>
<npc id="23455" level="15" type="L2Monster" name="Growler"> <npc id="23455" level="15" type="L2Monster" name="Growler">
<!-- AUTO GENERATED NPC TODO: FIX IT -->
<parameters> <parameters>
<param name="MoveAroundSocial" value="0" /> <param name="MoveAroundSocial" value="0" />
<param name="MoveAroundSocial1" value="0" /> <param name="MoveAroundSocial1" value="0" />

View File

@@ -592,34 +592,78 @@
</collision> </collision>
</npc> </npc>
<npc id="27526" level="5" type="L2Monster" name="Floato" title="Quest Monster"> <npc id="27526" level="5" type="L2Monster" name="Floato" title="Quest Monster">
<!-- AUTO GENERATED NPC TODO: FIX IT --> <parameters>
<race>HUMAN</race> <param name="MoveAroundSocial" value="0" />
<sex>FEMALE</sex> <param name="MoveAroundSocial1" value="0" />
<stats str="40" int="21" dex="30" wit="20" con="43" men="20"> <param name="MoveAroundSocial2" value="0" />
<vitals hp="127" hpRegen="5" mp="467" mpRegen="4" /> </parameters>
<race>ANIMAL</race>
<sex>MALE</sex>
<acquire exp="88" sp="0" />
<stats str="78" int="42" dex="41" wit="78" con="75" men="20">
<vitals hp="76" hpRegen="2" mp="47.28" mpRegen="0.9" />
<attack physical="9.32203" magical="6.36574" random="30" critical="4" accuracy="4.75" attackSpeed="253" type="SWORD" range="40" distance="80" width="120" />
<defence physical="46.15385" magical="30.7297498930634" />
<attribute>
<defence fire="20" water="20" wind="20" earth="20" holy="20" dark="20" />
</attribute>
<speed> <speed>
<walk ground="50" /> <walk ground="23" />
<run ground="120" /> <run ground="110" />
</speed> </speed>
<hitTime>370</hitTime>
</stats> </stats>
<status attackable="false" /> <status undying="false" canBeSown="true" />
<skillList>
<skill id="4408" level="1" /> <!-- HP Increase (1x) -->
<skill id="4409" level="1" /> <!-- MP Increase (1x) -->
<skill id="4410" level="11" /> <!-- Average P. Atk. -->
<skill id="4411" level="11" /> <!-- Average M. Atk. -->
<skill id="4412" level="11" /> <!-- Average P. Def. -->
<skill id="4413" level="11" /> <!-- Average M. Def. -->
<skill id="4414" level="2" /> <!-- Standard Type -->
<skill id="4416" level="4" /> <!-- Animals -->
</skillList>
<exCrtEffect>false</exCrtEffect>
<collision> <collision>
<radius normal="10" /> <radius normal="10" />
<height normal="14" /> <height normal="14" />
</collision> </collision>
</npc> </npc>
<npc id="27527" level="5" type="L2Monster" name="Ratel" title="Quest Monster"> <npc id="27527" level="5" type="L2Monster" name="Ratel" title="Quest Monster">
<!-- AUTO GENERATED NPC TODO: FIX IT --> <parameters>
<race>HUMAN</race> <param name="MoveAroundSocial" value="0" />
<sex>FEMALE</sex> <param name="MoveAroundSocial1" value="0" />
<stats str="40" int="21" dex="30" wit="20" con="43" men="20"> <param name="MoveAroundSocial2" value="0" />
<vitals hp="1270" hpRegen="5" mp="467" mpRegen="4" /> </parameters>
<race>ANIMAL</race>
<sex>MALE</sex>
<acquire exp="252" sp="0" />
<stats str="78" int="42" dex="41" wit="78" con="75" men="20">
<vitals hp="171" hpRegen="2" mp="84.88" mpRegen="0.9" />
<attack physical="14.80956" magical="10.11301" random="30" critical="4" accuracy="4.75" attackSpeed="253" type="SWORD" range="40" distance="80" width="120" />
<defence physical="55.51894" magical="36.965135694682" />
<attribute>
<defence fire="20" water="20" wind="31" earth="20" holy="20" dark="20" />
</attribute>
<speed> <speed>
<walk ground="50" /> <walk ground="60" />
<run ground="120" /> <run ground="80" />
</speed> </speed>
<hitTime>340</hitTime>
</stats> </stats>
<status attackable="false" /> <status undying="false" canBeSown="true" />
<skillList>
<skill id="4408" level="1" /> <!-- HP Increase (1x) -->
<skill id="4409" level="1" /> <!-- MP Increase (1x) -->
<skill id="4410" level="11" /> <!-- Average P. Atk. -->
<skill id="4411" level="11" /> <!-- Average M. Atk. -->
<skill id="4412" level="11" /> <!-- Average P. Def. -->
<skill id="4413" level="11" /> <!-- Average M. Def. -->
<skill id="4414" level="2" /> <!-- Standard Type -->
<skill id="4416" level="4" /> <!-- Animals -->
</skillList>
<exCrtEffect>false</exCrtEffect>
<collision> <collision>
<radius normal="10" /> <radius normal="10" />
<height normal="15" /> <height normal="15" />

View File

@@ -34,11 +34,10 @@
<height normal="22.4" /> <height normal="22.4" />
</collision> </collision>
</npc> </npc>
<npc id="34002" level="99" type="L2Teleporter" name="Dolkin" title="Maestro"> <npc id="34002" level="99" type="L2Npc" name="Dolkin" title="Maestro">
<!-- AUTO GENERATED NPC TODO: FIX IT --> <race>DWARF</race>
<race>HUMAN</race> <sex>MALE</sex>
<sex>FEMALE</sex> <stats>
<stats str="40" int="21" dex="30" wit="20" con="43" men="20">
<vitals hp="14612" hpRegen="7.5" mp="1345.8" mpRegen="2.7" /> <vitals hp="14612" hpRegen="7.5" mp="1345.8" mpRegen="2.7" />
<speed> <speed>
<walk ground="50" /> <walk ground="50" />