Cruma Tower Teleporter changes.

Contributed by Stayway.
This commit is contained in:
MobiusDev
2015-04-20 19:23:15 +00:00
parent f6f66fdbfa
commit c896c6cd51
6 changed files with 45 additions and 27 deletions

View File

@@ -1,6 +1,6 @@
<html><body>Gatekeeper Ponti:<br>
If you choose to return to the surface, no one will say you are a coward. If you want to go back to the surface, I will send you back through the gate.<br>
I will be here waiting whenever you need my powers.<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_goto 22">Return to the ground</Button>
<html><body>Ivory Tower Wizard Janssen:<br>
Hehe... You look so scared! Don't worry, there aren't any thieves or bandits here... the monsters have chased them all off, haha!.<br>
Just kidding. Well, not about the monsters. Oh! You want to get out of here? Can't say I blame you.<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_goto 22">"Let me go back to the surface."</Button>
<Button ALIGN=LEFT ICON="QUEST" action="bypass -h npc_%objectId%_Quest">Quest</Button>
</body></html>

View File

@@ -1,5 +1,7 @@
<html><body>Gatekeeper Capella:<br>
Greetings. I admire you for surviving this far. If you continue on, you must be even more careful because there are monsters out there that are more terrible than what you could imagine. If you are not sure that you are ready, go prepare yourself thoroughly and then return.<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_goto 24">Return to the first floor.</Button>
<html><body>Ivory Tower Wizard Belkadhi:<br>
In the past, the Ivory Tower dispatched many female wizards here. I think that many people here failed to take them seriously, and... well, let's just say that relationship degenerated. Some of the ancient ruins were destroyed in the ensuing battles, and now only male wizards are allowed to be sent here.<br>
I can tell you, things are unstable here right now. If you want to proceed, you'd be well advised to make your preparations first.<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_goto 24">"I'd like to go the 3rd basement floor."</Button>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_goto 22">"Let me go back to the surface."</Button>
<Button ALIGN=LEFT ICON="QUEST" action="bypass -h npc_%objectId%_Quest">Quest</Button>
</body></html>

View File

@@ -1,5 +1,6 @@
<html><body>Gatekeeper Penelope:<br>
Hey, there! Are you one of those who seeks the secrets of the giants of ere? Well wise up and get out of here! If you think you must get to the second floor of this tower -- which is teeming with monsters -- I can send you through the gate, but surely you have something better to do than risk your life in a horrible place like this...<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_goto 23">Teleport to the 2nd floor.</Button>
<html><body>Ivory Tower Wizard Rombel:<br>
Cough, cough. Ugh, this place taking its toll on me, mentally and physically. Why did I ever let them send me here? If you know what's good for you, you'll turn right around and go back to the village. Cough... cough...<br>
Let me tell you this one more time. The 3rd basement floor is the safest here. As you go up, it will get more dangerous.<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_goto 23">"Yes, please send me to the 2nd basement floor."</Button>
<Button ALIGN=LEFT ICON="QUEST" action="bypass -h npc_%objectId%_Quest">Quest</Button>
</body></html>

View File

@@ -1,4 +1,4 @@
<html><body>Gatekeeper Mozella:<br>
<html><body>Gatekeeper Carsus:<br>
Ah! You are too strong for the Gate of Time and Space to open. You seem to have exceeded the limits of the tower's magnetic field.<br>
(Characters who are level 56 and above cannot enter the Cruma Tower.)
</body></html>

View File

@@ -1,6 +1,8 @@
<html><body>Gatekeeper Mozella:<br>
My name is Mozella. I am one of the researchers dispatched from Oren's Ivory Tower to search for the secrets lost in the Tower of the Giants. We recently discovered what we think is a device used by the Giants in a bygone age to travel through space and time, and we are trying to unlock its secrets. Fortunately, this place was untouched by the outside world during the long years, so the mysteries of the Giants have remained undisturbed until our arrival. Unfortunately, however, the Tower is also inhabited by a number of frightful monsters.<br>
If you wish to brave the dangers to explore these mysterious ruins, however, I will open the door of space and time and admit you to the Tower's interior.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest CrumaTower">Teleport into the Tower.</Button>
<html><body>Ivory Tower Wizard Carsus:<br>
My name is Carsus, and I am an investigator dispatched from Ivory Tower. We've finished our work at the upper layer of the tower, and are ready to move onto the lower layer.<br>
We're <font color="LEVEL">installing an elevator to the 3rd basement floor</font>. Up to this point, we've used magic, but it's an unpredictable system at best, so an elevator seemed much safer.<br>
On the 1st basement floor, you will see a raid boss that controls the entire Cruma Tower. You can go there trough <font color="LEVEL">Ivory Tower Wizard Ian</font> who you can find in a remote area of the 2nd basement floor.<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h Quest CrumaTower chat1">"I'd like to go the 2nd basement floor."</Button>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h Quest CrumaTower chat2">"I'd like to go the 3rd basement floor."</Button>
<Button ALIGN=LEFT ICON="QUEST" action="bypass -h npc_%objectId%_Quest">Quest</Button>
</body></html>

View File

@@ -26,35 +26,48 @@ import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
/**
* Cruma Tower teleport AI.
* @author Plim
* @author Stayway
*/
public final class CrumaTower extends AbstractNpcAI
{
// NPC
private static final int MOZELLA = 30483;
private static final int CARSUS = 30483;
// Locations
private static final Location TELEPORT_LOC1 = new Location(17776, 113968, -11671);
private static final Location TELEPORT_LOC2 = new Location(17680, 113968, -11671);
private static final Location TELEPORT_LOC1 = new Location(17664, 108288, -9056);
private static final Location TELEPORT_LOC2 = new Location(17729, 114808, -11696);
// Misc
private static final int MAX_LEVEL = 55;
private CrumaTower()
{
super(CrumaTower.class.getSimpleName(), "ai/npc/Teleports");
addFirstTalkId(MOZELLA);
addStartNpc(MOZELLA);
addTalkId(MOZELLA);
addFirstTalkId(CARSUS);
addStartNpc(CARSUS);
addTalkId(CARSUS);
}
@Override
public String onTalk(L2Npc npc, L2PcInstance talker)
public final String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
if (talker.getLevel() <= MAX_LEVEL)
if (event.equals("chat1"))
{
talker.teleToLocation(getRandomBoolean() ? TELEPORT_LOC1 : TELEPORT_LOC2);
return null;
if (player.getLevel() <= MAX_LEVEL)
{
player.teleToLocation(TELEPORT_LOC1, true);
return null;
}
return "30483-1.html";
}
return "30483-1.html";
else if (event.equals("chat2"))
{
if (player.getLevel() <= MAX_LEVEL)
{
player.teleToLocation(TELEPORT_LOC2, true);
return null;
}
return "30483-1.html";
}
return event;
}
public static void main(String[] args)