diff --git a/L2J_Mobius_Underground/dist/game/data/scripts/ai/bosses/Beleth/Wormhole/33901-4.html b/L2J_Mobius_Underground/dist/game/data/scripts/ai/bosses/Beleth/Wormhole/33901-4.html
index eabf8638b6..14a65e9520 100644
--- a/L2J_Mobius_Underground/dist/game/data/scripts/ai/bosses/Beleth/Wormhole/33901-4.html
+++ b/L2J_Mobius_Underground/dist/game/data/scripts/ai/bosses/Beleth/Wormhole/33901-4.html
@@ -1,3 +1,3 @@
-
Wormhole:
-It seems like Beleth is occupied at the moment.
+Wormhole:
+Beleth is already engaged in combat with others.
\ No newline at end of file
diff --git a/L2J_Mobius_Underground/dist/game/data/scripts/ai/bosses/Beleth/Wormhole/33901-5.html b/L2J_Mobius_Underground/dist/game/data/scripts/ai/bosses/Beleth/Wormhole/33901-5.html
new file mode 100644
index 0000000000..a097fc0a39
--- /dev/null
+++ b/L2J_Mobius_Underground/dist/game/data/scripts/ai/bosses/Beleth/Wormhole/33901-5.html
@@ -0,0 +1,3 @@
+Wormhole:
+Beleth is not here.
+
\ No newline at end of file
diff --git a/L2J_Mobius_Underground/dist/game/data/scripts/ai/bosses/Beleth/Wormhole/Wormhole.java b/L2J_Mobius_Underground/dist/game/data/scripts/ai/bosses/Beleth/Wormhole/Wormhole.java
index 79cb497848..ea609d510f 100644
--- a/L2J_Mobius_Underground/dist/game/data/scripts/ai/bosses/Beleth/Wormhole/Wormhole.java
+++ b/L2J_Mobius_Underground/dist/game/data/scripts/ai/bosses/Beleth/Wormhole/Wormhole.java
@@ -51,58 +51,54 @@ public final class Wormhole extends AbstractNpcAI
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
- String htmltext = null;
- switch (event)
+ if (event.equals("teleport"))
{
- case "teleport":
+ final int status = GrandBossManager.getInstance().getBossStatus(BELETH);
+ if (status == 1)
{
- if (GrandBossManager.getInstance().getBossStatus(BELETH) > 0)
+ return "33901-4.html";
+ }
+ if (status == 2)
+ {
+ return "33901-5.html";
+ }
+
+ if (!player.isInParty())
+ {
+ final NpcHtmlMessage packet = new NpcHtmlMessage(npc.getObjectId());
+ packet.setHtml(getHtm(player.getHtmlPrefix(), "33901-2.html"));
+ packet.replace("%min%", Integer.toString(Config.BELETH_MIN_PLAYERS));
+ player.sendPacket(packet);
+ return null;
+ }
+
+ final L2Party party = player.getParty();
+ final boolean isInCC = party.isInCommandChannel();
+ final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers();
+ final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player);
+ if (!isPartyLeader)
+ {
+ return "33901-3.html";
+ }
+ else if ((members.size() < Config.BELETH_MIN_PLAYERS) || (members.size() > Config.BELETH_MAX_PLAYERS))
+ {
+ final NpcHtmlMessage packet = new NpcHtmlMessage(npc.getObjectId());
+ packet.setHtml(getHtm(player.getHtmlPrefix(), "33901-2.html"));
+ packet.replace("%min%", Integer.toString(Config.BELETH_MIN_PLAYERS));
+ player.sendPacket(packet);
+ }
+ else
+ {
+ for (L2PcInstance member : members)
{
- htmltext = "33901-4.html";
- break;
- }
-
- if (!player.isInParty())
- {
- final NpcHtmlMessage packet = new NpcHtmlMessage(npc.getObjectId());
- packet.setHtml(getHtm(player.getHtmlPrefix(), "33901-2.html"));
- packet.replace("%min%", Integer.toString(Config.BELETH_MIN_PLAYERS));
- player.sendPacket(packet);
- break;
- }
-
- final L2Party party = player.getParty();
- final boolean isInCC = party.isInCommandChannel();
- final List members = (isInCC) ? party.getCommandChannel().getMembers() : party.getMembers();
- final boolean isPartyLeader = (isInCC) ? party.getCommandChannel().isLeader(player) : party.isLeader(player);
- if (!isPartyLeader)
- {
- htmltext = "33901-3.html";
- break;
-
- }
- else if ((members.size() < Config.BELETH_MIN_PLAYERS) || (members.size() > Config.BELETH_MAX_PLAYERS))
- {
- final NpcHtmlMessage packet = new NpcHtmlMessage(npc.getObjectId());
- packet.setHtml(getHtm(player.getHtmlPrefix(), "33901-2.html"));
- packet.replace("%min%", Integer.toString(Config.BELETH_MIN_PLAYERS));
- player.sendPacket(packet);
- break;
- }
- else
- {
- for (L2PcInstance member : members)
+ if (member.isInsideRadius(npc, 1000, true, false))
{
- if (member.isInsideRadius(npc, 1000, true, false))
- {
- member.teleToLocation(BELETH_LOCATION, true);
- }
+ member.teleToLocation(BELETH_LOCATION, true);
}
}
- break;
}
}
- return htmltext;
+ return null;
}
@Override