Addition of Kastia Extreme and Exceptional instances.
This commit is contained in:
parent
e170896f0a
commit
cced73a532
@ -1,6 +1,8 @@
|
||||
<html><body>Karinia:<br>
|
||||
Welcome! My name is Karinia. I help adventures to travel to instance zones. Every adventurer of Lv. 100 and highter can enter the Kastia's Labyrinth. But there's one requirement. If you have defeated the last boss on any of three difficulty levels, you can't enter the Kastia's Labyrinth again until the next day. Remember it.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest KastiaLow enterInstance">Low Difficulty level (for characters of Lv. 100+)</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest KastiaMedium enterInstance">Mid difficulty level (for characters of Lv.105+)</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest KastiaHard enterInstance">High difficulty level (for characters of Lv.110+)</Button>
|
||||
Welcome! My name is Karinia. I help heroes access instance zones. Kastia's Labyrinth is open for any hero who has reached Lv. 100. There is one condition, though. If you have defeated the final boss on any of the five difficulty levels, you can't enter Kastia's Labyrinth again until the next day. Keep that in mind.<br><br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest KastiaLow enterInstance">Low Difficulty (Lv. 100+)</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest KastiaMedium enterInstance">Medium Difficulty (Lv. 105+)</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest KastiaHard enterInstance">High Difficulty (Lv. 110+)</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest KastiaExceptional enterInstance">Exceptional Difficulty (Lv. 115+)</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest KastiaExtreme enterInstance">Extreme Difficulty (Lv. 120+)</Button>
|
||||
</body></html>
|
88
L2J_Mobius_8.0_Homunculus/dist/game/data/instances/KastiaExceptional.xml
vendored
Normal file
88
L2J_Mobius_8.0_Homunculus/dist/game/data/instances/KastiaExceptional.xml
vendored
Normal file
@ -0,0 +1,88 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Kastia - Exceptional -->
|
||||
<instance id="305" maxWorlds="50" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/instance.xsd">
|
||||
<time duration="15" empty="0" />
|
||||
<locations>
|
||||
<enter type="FIXED">
|
||||
<location x="-111297" y="-14750" z="-11427" />
|
||||
</enter>
|
||||
<exit type="ORIGIN" />
|
||||
</locations>
|
||||
<conditions>
|
||||
<condition type="Level" showMessageAndHtml="true">
|
||||
<param name="html" value="condNoLevel.html" />
|
||||
<param name="min" value="115" />
|
||||
</condition>
|
||||
<condition type="Distance" />
|
||||
<condition type="Reenter" />
|
||||
</conditions>
|
||||
<reenter apply="ON_FINISH">
|
||||
<reset day="MONDAY" hour="6" minute="30" />
|
||||
<reset day="TUESDAY" hour="6" minute="30" />
|
||||
<reset day="WEDNESDAY" hour="6" minute="30" />
|
||||
<reset day="THURSDAY" hour="6" minute="30" />
|
||||
<reset day="FRIDAY" hour="6" minute="30" />
|
||||
<reset day="SATURDAY" hour="6" minute="30" />
|
||||
<reset day="SUNDAY" hour="6" minute="30" />
|
||||
</reenter>
|
||||
<spawnlist>
|
||||
<group name="wave_1" spawnByDefault="false">
|
||||
<npc id="24588" x="-111432" y="-14392" z="-11428" heading="16526" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111368" y="-14376" z="-11428" heading="2854" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111304" y="-14376" z="-11428" heading="162" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111240" y="-14376" z="-11428" heading="1006" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111176" y="-14360" z="-11428" heading="1578" /> <!-- Kastia's Keeper -->
|
||||
</group>
|
||||
<group name="wave_2" spawnByDefault="false">
|
||||
<npc id="24588" x="-111432" y="-14664" z="-11428" heading="47624" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111368" y="-14664" z="-11424" heading="33959" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111304" y="-14664" z="-11424" heading="33959" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111240" y="-14664" z="-11424" heading="33959" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111240" y="-14664" z="-11424" heading="33959" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111256" y="-14664" z="-11424" heading="33959" /> <!-- Kastia's Keeper -->
|
||||
</group>
|
||||
<group name="wave_3" spawnByDefault="false">
|
||||
<npc id="24588" x="-111256" y="-14936" z="-11428" heading="10847" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111160" y="-14952" z="-11428" heading="2661" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111080" y="-14968" z="-11428" heading="63227" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-110984" y="-14968" z="-11428" heading="34989" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-110856" y="-14936" z="-11428" heading="10250" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24589" x="-110728" y="-14952" z="-11428" heading="51468" /> <!-- Kastia's Overseer -->
|
||||
</group>
|
||||
<group name="wave_4" spawnByDefault="false">
|
||||
<npc id="24589" x="-111264" y="-15215" z="-11428" heading="40265" /> <!-- Kastia's Overseer -->
|
||||
<npc id="24588" x="-111384" y="-15192" z="-11428" heading="1272" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111480" y="-15192" z="-11428" heading="29763" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111560" y="-15192" z="-11428" heading="32212" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111656" y="-15192" z="-11428" heading="39292" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111752" y="-15192" z="-11428" heading="32881" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24590" x="-111864" y="-15192" z="-11428" heading="29025" /> <!-- Kastia's Warder -->
|
||||
</group>
|
||||
<group name="wave_5" spawnByDefault="false">
|
||||
<npc id="24589" x="-111288" y="-15432" z="-11421" heading="49913" /> <!-- Kastia's Overseer -->
|
||||
<npc id="24588" x="-111192" y="-15448" z="-11421" heading="63567" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111112" y="-15432" z="-11421" heading="1052" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111032" y="-15432" z="-11422" heading="65408" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-110952" y="-15432" z="-11423" heading="65176" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-110872" y="-15464" z="-11422" heading="61095" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24589" x="-110776" y="-15448" z="-11424" heading="14585" /> <!-- Kastia's Overseer -->
|
||||
</group>
|
||||
<group name="wave_6" spawnByDefault="false">
|
||||
<npc id="24589" x="-111272" y="-15720" z="-11404" heading="50504" /> <!-- Kastia's Overseer -->
|
||||
<npc id="24589" x="-111352" y="-15736" z="-11404" heading="34158" /> <!-- Kastia's Overseer -->
|
||||
<npc id="24588" x="-111544" y="-15688" z="-11408" heading="33765" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111624" y="-15720" z="-11413" heading="36991" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111688" y="-15736" z="-11413" heading="34980" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111784" y="-15736" z="-11414" heading="9605" /> <!-- Kastia's Keeper -->
|
||||
</group>
|
||||
<group name="wave_7" spawnByDefault="false">
|
||||
<npc id="24589" x="-111320" y="-15928" z="-11347" heading="49821" /> <!-- Kastia's Overseer -->
|
||||
<npc id="24589" x="-111416" y="-15944" z="-11404" heading="65370" /> <!-- Kastia's Overseer -->
|
||||
<npc id="24588" x="-111416" y="-15944" z="-11400" heading="35114" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111544" y="-15992" z="-11362" heading="43959" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111176" y="-15944" z="-11404" heading="59207" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24588" x="-111080" y="-15960" z="-11404" heading="63885" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24591" x="-110968" y="-15976" z="-11404" heading="52605" /> <!-- Vishes -->
|
||||
</group>
|
||||
</spawnlist>
|
||||
</instance>
|
88
L2J_Mobius_8.0_Homunculus/dist/game/data/instances/KastiaExtreme.xml
vendored
Normal file
88
L2J_Mobius_8.0_Homunculus/dist/game/data/instances/KastiaExtreme.xml
vendored
Normal file
@ -0,0 +1,88 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Kastia - Extreme -->
|
||||
<instance id="306" maxWorlds="50" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/instance.xsd">
|
||||
<time duration="15" empty="0" />
|
||||
<locations>
|
||||
<enter type="FIXED">
|
||||
<location x="-111297" y="-14750" z="-11427" />
|
||||
</enter>
|
||||
<exit type="ORIGIN" />
|
||||
</locations>
|
||||
<conditions>
|
||||
<condition type="Level" showMessageAndHtml="true">
|
||||
<param name="html" value="condNoLevel.html" />
|
||||
<param name="min" value="120" />
|
||||
</condition>
|
||||
<condition type="Distance" />
|
||||
<condition type="Reenter" />
|
||||
</conditions>
|
||||
<reenter apply="ON_FINISH">
|
||||
<reset day="MONDAY" hour="6" minute="30" />
|
||||
<reset day="TUESDAY" hour="6" minute="30" />
|
||||
<reset day="WEDNESDAY" hour="6" minute="30" />
|
||||
<reset day="THURSDAY" hour="6" minute="30" />
|
||||
<reset day="FRIDAY" hour="6" minute="30" />
|
||||
<reset day="SATURDAY" hour="6" minute="30" />
|
||||
<reset day="SUNDAY" hour="6" minute="30" />
|
||||
</reenter>
|
||||
<spawnlist>
|
||||
<group name="wave_1" spawnByDefault="false">
|
||||
<npc id="24592" x="-111432" y="-14392" z="-11428" heading="16526" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111368" y="-14376" z="-11428" heading="2854" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111304" y="-14376" z="-11428" heading="162" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111240" y="-14376" z="-11428" heading="1006" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111176" y="-14360" z="-11428" heading="1578" /> <!-- Kastia's Keeper -->
|
||||
</group>
|
||||
<group name="wave_2" spawnByDefault="false">
|
||||
<npc id="24592" x="-111432" y="-14664" z="-11428" heading="47624" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111368" y="-14664" z="-11424" heading="33959" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111304" y="-14664" z="-11424" heading="33959" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111240" y="-14664" z="-11424" heading="33959" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111240" y="-14664" z="-11424" heading="33959" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111256" y="-14664" z="-11424" heading="33959" /> <!-- Kastia's Keeper -->
|
||||
</group>
|
||||
<group name="wave_3" spawnByDefault="false">
|
||||
<npc id="24592" x="-111256" y="-14936" z="-11428" heading="10847" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111160" y="-14952" z="-11428" heading="2661" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111080" y="-14968" z="-11428" heading="63227" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-110984" y="-14968" z="-11428" heading="34989" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-110856" y="-14936" z="-11428" heading="10250" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24593" x="-110728" y="-14952" z="-11428" heading="51468" /> <!-- Kastia's Overseer -->
|
||||
</group>
|
||||
<group name="wave_4" spawnByDefault="false">
|
||||
<npc id="24593" x="-111264" y="-15215" z="-11428" heading="40265" /> <!-- Kastia's Overseer -->
|
||||
<npc id="24592" x="-111384" y="-15192" z="-11428" heading="1272" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111480" y="-15192" z="-11428" heading="29763" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111560" y="-15192" z="-11428" heading="32212" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111656" y="-15192" z="-11428" heading="39292" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111752" y="-15192" z="-11428" heading="32881" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24594" x="-111864" y="-15192" z="-11428" heading="29025" /> <!-- Kastia's Warder -->
|
||||
</group>
|
||||
<group name="wave_5" spawnByDefault="false">
|
||||
<npc id="24593" x="-111288" y="-15432" z="-11421" heading="49913" /> <!-- Kastia's Overseer -->
|
||||
<npc id="24592" x="-111192" y="-15448" z="-11421" heading="63567" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111112" y="-15432" z="-11421" heading="1052" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111032" y="-15432" z="-11422" heading="65408" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-110952" y="-15432" z="-11423" heading="65176" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-110872" y="-15464" z="-11422" heading="61095" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24593" x="-110776" y="-15448" z="-11424" heading="14585" /> <!-- Kastia's Overseer -->
|
||||
</group>
|
||||
<group name="wave_6" spawnByDefault="false">
|
||||
<npc id="24593" x="-111272" y="-15720" z="-11404" heading="50504" /> <!-- Kastia's Overseer -->
|
||||
<npc id="24593" x="-111352" y="-15736" z="-11404" heading="34158" /> <!-- Kastia's Overseer -->
|
||||
<npc id="24592" x="-111544" y="-15688" z="-11408" heading="33765" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111624" y="-15720" z="-11413" heading="36991" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111688" y="-15736" z="-11413" heading="34980" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111784" y="-15736" z="-11414" heading="9605" /> <!-- Kastia's Keeper -->
|
||||
</group>
|
||||
<group name="wave_7" spawnByDefault="false">
|
||||
<npc id="24593" x="-111320" y="-15928" z="-11347" heading="49821" /> <!-- Kastia's Overseer -->
|
||||
<npc id="24593" x="-111416" y="-15944" z="-11404" heading="65370" /> <!-- Kastia's Overseer -->
|
||||
<npc id="24592" x="-111416" y="-15944" z="-11400" heading="35114" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111544" y="-15992" z="-11362" heading="43959" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111176" y="-15944" z="-11404" heading="59207" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24592" x="-111080" y="-15960" z="-11404" heading="63885" /> <!-- Kastia's Keeper -->
|
||||
<npc id="24595" x="-110968" y="-15976" z="-11404" heading="52605" /> <!-- Tykan -->
|
||||
</group>
|
||||
</spawnlist>
|
||||
</instance>
|
181
L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/instances/KastiaExceptional/KastiaExceptional.java
vendored
Normal file
181
L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/instances/KastiaExceptional/KastiaExceptional.java
vendored
Normal file
@ -0,0 +1,181 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package instances.KastiaExceptional;
|
||||
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.holders.ItemHolder;
|
||||
import org.l2jmobius.gameserver.model.instancezone.Instance;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.ExShowScreenMessage;
|
||||
|
||||
import instances.AbstractInstance;
|
||||
|
||||
/**
|
||||
* @author Mobius
|
||||
*/
|
||||
public class KastiaExceptional extends AbstractInstance
|
||||
{
|
||||
// NPC
|
||||
private static final int KARINIA = 34541;
|
||||
// Monsters
|
||||
private static final int[] MONSTERS =
|
||||
{
|
||||
24588, // Kastia's Keeper
|
||||
24589, // Kastia's Overseer
|
||||
24590, // Kastia's Warder
|
||||
24591, // Vishes
|
||||
};
|
||||
// Item
|
||||
private static final ItemHolder KASTIAS_LV4_PACK = new ItemHolder(81465, 1);
|
||||
// Misc
|
||||
private static final int TEMPLATE_ID = 305;
|
||||
|
||||
public KastiaExceptional()
|
||||
{
|
||||
super(TEMPLATE_ID);
|
||||
addStartNpc(KARINIA);
|
||||
addTalkId(KARINIA);
|
||||
addKillId(MONSTERS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
|
||||
{
|
||||
switch (event)
|
||||
{
|
||||
case "enterInstance":
|
||||
{
|
||||
/*
|
||||
* Cannot enter if player finished another Kastia instance. if ((System.currentTimeMillis() > InstanceManager.getInstance().getInstanceTime(player, 299)) || (System.currentTimeMillis() > InstanceManager.getInstance().getInstanceTime(player, 298))) { player.sendPacket(new
|
||||
* SystemMessage(SystemMessageId.SINCE_C1_ENTERED_ANOTHER_INSTANCE_ZONE_THEREFORE_YOU_CANNOT_ENTER_THIS_DUNGEON).addString(player.getName())); return null; }
|
||||
*/
|
||||
enterInstance(player, npc, TEMPLATE_ID);
|
||||
if (player.getInstanceWorld() != null)
|
||||
{
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
case "check_status":
|
||||
{
|
||||
final Instance world = player.getInstanceWorld();
|
||||
if (!isInInstance(world))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
switch (world.getStatus())
|
||||
{
|
||||
case 0:
|
||||
{
|
||||
showOnScreenMsg(world, NpcStringId.STAGE_1, ExShowScreenMessage.TOP_CENTER, 10000, true);
|
||||
world.setStatus(1);
|
||||
world.spawnGroup("wave_1");
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
break;
|
||||
}
|
||||
case 1:
|
||||
{
|
||||
if (world.getAliveNpcs().isEmpty())
|
||||
{
|
||||
showOnScreenMsg(world, NpcStringId.STAGE_2, ExShowScreenMessage.TOP_CENTER, 10000, true);
|
||||
world.setStatus(2);
|
||||
world.spawnGroup("wave_2");
|
||||
}
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
if (world.getAliveNpcs().isEmpty())
|
||||
{
|
||||
showOnScreenMsg(world, NpcStringId.STAGE_3, ExShowScreenMessage.TOP_CENTER, 10000, true);
|
||||
world.setStatus(3);
|
||||
world.spawnGroup("wave_3");
|
||||
}
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
if (world.getAliveNpcs().isEmpty())
|
||||
{
|
||||
showOnScreenMsg(world, NpcStringId.STAGE_4, ExShowScreenMessage.TOP_CENTER, 10000, true);
|
||||
world.setStatus(4);
|
||||
world.spawnGroup("wave_4");
|
||||
}
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
break;
|
||||
}
|
||||
case 4:
|
||||
{
|
||||
if (world.getAliveNpcs().isEmpty())
|
||||
{
|
||||
showOnScreenMsg(world, NpcStringId.STAGE_5, ExShowScreenMessage.TOP_CENTER, 10000, true);
|
||||
world.setStatus(5);
|
||||
world.spawnGroup("wave_5");
|
||||
}
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
break;
|
||||
}
|
||||
case 5:
|
||||
{
|
||||
if (world.getAliveNpcs().isEmpty())
|
||||
{
|
||||
showOnScreenMsg(world, NpcStringId.STAGE_6, ExShowScreenMessage.TOP_CENTER, 10000, true);
|
||||
world.setStatus(6);
|
||||
world.spawnGroup("wave_6");
|
||||
}
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
break;
|
||||
}
|
||||
case 6:
|
||||
{
|
||||
if (world.getAliveNpcs().isEmpty())
|
||||
{
|
||||
showOnScreenMsg(world, NpcStringId.STAGE_7, ExShowScreenMessage.TOP_CENTER, 10000, true);
|
||||
world.setStatus(7);
|
||||
world.spawnGroup("wave_7");
|
||||
}
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
break;
|
||||
}
|
||||
case 7:
|
||||
{
|
||||
if (world.getAliveNpcs().isEmpty())
|
||||
{
|
||||
giveItems(player, KASTIAS_LV4_PACK);
|
||||
world.finishInstance();
|
||||
}
|
||||
else
|
||||
{
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
return super.onAdvEvent(event, npc, player);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new KastiaExceptional();
|
||||
}
|
||||
}
|
@ -0,0 +1,4 @@
|
||||
<html><body>Karinia:<br>
|
||||
You are too weak. I won't let you enter.<br>
|
||||
(Only players of at least level 115 may participate.)
|
||||
</body></html>
|
@ -0,0 +1,4 @@
|
||||
<html><body>Karinia:<br>
|
||||
You are powerful. I won't let you enter.<br>
|
||||
(Only players under level 120 may participate.)
|
||||
</body></html>
|
181
L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/instances/KastiaExtreme/KastiaExtreme.java
vendored
Normal file
181
L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/instances/KastiaExtreme/KastiaExtreme.java
vendored
Normal file
@ -0,0 +1,181 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package instances.KastiaExtreme;
|
||||
|
||||
import org.l2jmobius.gameserver.model.actor.Npc;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.holders.ItemHolder;
|
||||
import org.l2jmobius.gameserver.model.instancezone.Instance;
|
||||
import org.l2jmobius.gameserver.network.NpcStringId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.ExShowScreenMessage;
|
||||
|
||||
import instances.AbstractInstance;
|
||||
|
||||
/**
|
||||
* @author Mobius
|
||||
*/
|
||||
public class KastiaExtreme extends AbstractInstance
|
||||
{
|
||||
// NPC
|
||||
private static final int KARINIA = 34541;
|
||||
// Monsters
|
||||
private static final int[] MONSTERS =
|
||||
{
|
||||
24592, // Kastia's Keeper
|
||||
24593, // Kastia's Overseer
|
||||
24594, // Kastia's Warder
|
||||
24595, // Tykan
|
||||
};
|
||||
// Item
|
||||
private static final ItemHolder KASTIAS_LV5_PACK = new ItemHolder(81466, 1);
|
||||
// Misc
|
||||
private static final int TEMPLATE_ID = 306;
|
||||
|
||||
public KastiaExtreme()
|
||||
{
|
||||
super(TEMPLATE_ID);
|
||||
addStartNpc(KARINIA);
|
||||
addTalkId(KARINIA);
|
||||
addKillId(MONSTERS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
|
||||
{
|
||||
switch (event)
|
||||
{
|
||||
case "enterInstance":
|
||||
{
|
||||
/*
|
||||
* Cannot enter if player finished another Kastia instance. if ((System.currentTimeMillis() > InstanceManager.getInstance().getInstanceTime(player, 299)) || (System.currentTimeMillis() > InstanceManager.getInstance().getInstanceTime(player, 298))) { player.sendPacket(new
|
||||
* SystemMessage(SystemMessageId.SINCE_C1_ENTERED_ANOTHER_INSTANCE_ZONE_THEREFORE_YOU_CANNOT_ENTER_THIS_DUNGEON).addString(player.getName())); return null; }
|
||||
*/
|
||||
enterInstance(player, npc, TEMPLATE_ID);
|
||||
if (player.getInstanceWorld() != null)
|
||||
{
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
case "check_status":
|
||||
{
|
||||
final Instance world = player.getInstanceWorld();
|
||||
if (!isInInstance(world))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
switch (world.getStatus())
|
||||
{
|
||||
case 0:
|
||||
{
|
||||
showOnScreenMsg(world, NpcStringId.STAGE_1, ExShowScreenMessage.TOP_CENTER, 10000, true);
|
||||
world.setStatus(1);
|
||||
world.spawnGroup("wave_1");
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
break;
|
||||
}
|
||||
case 1:
|
||||
{
|
||||
if (world.getAliveNpcs().isEmpty())
|
||||
{
|
||||
showOnScreenMsg(world, NpcStringId.STAGE_2, ExShowScreenMessage.TOP_CENTER, 10000, true);
|
||||
world.setStatus(2);
|
||||
world.spawnGroup("wave_2");
|
||||
}
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
if (world.getAliveNpcs().isEmpty())
|
||||
{
|
||||
showOnScreenMsg(world, NpcStringId.STAGE_3, ExShowScreenMessage.TOP_CENTER, 10000, true);
|
||||
world.setStatus(3);
|
||||
world.spawnGroup("wave_3");
|
||||
}
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
if (world.getAliveNpcs().isEmpty())
|
||||
{
|
||||
showOnScreenMsg(world, NpcStringId.STAGE_4, ExShowScreenMessage.TOP_CENTER, 10000, true);
|
||||
world.setStatus(4);
|
||||
world.spawnGroup("wave_4");
|
||||
}
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
break;
|
||||
}
|
||||
case 4:
|
||||
{
|
||||
if (world.getAliveNpcs().isEmpty())
|
||||
{
|
||||
showOnScreenMsg(world, NpcStringId.STAGE_5, ExShowScreenMessage.TOP_CENTER, 10000, true);
|
||||
world.setStatus(5);
|
||||
world.spawnGroup("wave_5");
|
||||
}
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
break;
|
||||
}
|
||||
case 5:
|
||||
{
|
||||
if (world.getAliveNpcs().isEmpty())
|
||||
{
|
||||
showOnScreenMsg(world, NpcStringId.STAGE_6, ExShowScreenMessage.TOP_CENTER, 10000, true);
|
||||
world.setStatus(6);
|
||||
world.spawnGroup("wave_6");
|
||||
}
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
break;
|
||||
}
|
||||
case 6:
|
||||
{
|
||||
if (world.getAliveNpcs().isEmpty())
|
||||
{
|
||||
showOnScreenMsg(world, NpcStringId.STAGE_7, ExShowScreenMessage.TOP_CENTER, 10000, true);
|
||||
world.setStatus(7);
|
||||
world.spawnGroup("wave_7");
|
||||
}
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
break;
|
||||
}
|
||||
case 7:
|
||||
{
|
||||
if (world.getAliveNpcs().isEmpty())
|
||||
{
|
||||
giveItems(player, KASTIAS_LV5_PACK);
|
||||
world.finishInstance();
|
||||
}
|
||||
else
|
||||
{
|
||||
startQuestTimer("check_status", 10000, null, player);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
return super.onAdvEvent(event, npc, player);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
new KastiaExtreme();
|
||||
}
|
||||
}
|
4
L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/instances/KastiaExtreme/condNoLevel.html
vendored
Normal file
4
L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/instances/KastiaExtreme/condNoLevel.html
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Karinia:<br>
|
||||
You are too weak. I won't let you enter.<br>
|
||||
(Only players of at least level 120 may participate.)
|
||||
</body></html>
|
4
L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/instances/KastiaExtreme/condOverLevel.html
vendored
Normal file
4
L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/instances/KastiaExtreme/condOverLevel.html
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Karinia:<br>
|
||||
You are powerful. I won't let you enter.<br>
|
||||
(Only players under level 120 may participate.)
|
||||
</body></html>
|
Loading…
Reference in New Issue
Block a user