summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2022-05-11 16:28:53 -0300
committerJesusaves <cpntb1@ymail.com>2022-05-11 16:28:53 -0300
commite968d4cbdf069e2a4cbdd83474a7831af41b4642 (patch)
treeafc7a66d64428ad225f71db323d94e36c6550acf
parent7e5509eea33d61191921919c640a2e4061345a45 (diff)
downloadserverdata-e968d4cbdf069e2a4cbdd83474a7831af41b4642.tar.gz
serverdata-e968d4cbdf069e2a4cbdd83474a7831af41b4642.tar.bz2
serverdata-e968d4cbdf069e2a4cbdd83474a7831af41b4642.tar.xz
serverdata-e968d4cbdf069e2a4cbdd83474a7831af41b4642.zip
Elli's arc
-rw-r--r--npc/032-1/episode.txt17
-rw-r--r--npc/032-5/episode.txt99
2 files changed, 114 insertions, 2 deletions
diff --git a/npc/032-1/episode.txt b/npc/032-1/episode.txt
index 997529e54..c5b2eaeed 100644
--- a/npc/032-1/episode.txt
+++ b/npc/032-1/episode.txt
@@ -54,6 +54,23 @@
npctalk3 l("Hi.");
end;
+OnFin:
+ npctalk3 l("I am Elli. One of the Originals.");
+ sleep2(3000);
+ npctalk3 l("The supreme guardian of the \"Talpan\" creatures, such as you.");
+ sleep2(4000);
+ npctalk3 l("From the time you come from, the Moubootaur has escaped its chains");
+ sleep2(4000);
+ npctalk3 l("The Mana Source, supreme guardian of the world itself, has already took providences.");
+ sleep2(4000);
+ npctalk3 l("The Moubootaur is evil. Defeat him and protect the world. Now...");
+ sleep2(4000);
+ npctalk3 l("Return to your time!");
+ sleep2(1000);
+ warp "017-3", 75, 68;
+ // Nothing else needs to be done, quest was closed earlier
+ end;
+
OnInit:
.distance=5;
end;
diff --git a/npc/032-5/episode.txt b/npc/032-5/episode.txt
index 89ec02a67..13298fdd9 100644
--- a/npc/032-5/episode.txt
+++ b/npc/032-5/episode.txt
@@ -25,7 +25,7 @@ OnInit:
OnTouch:
if (mobcount("032-5", "all")) end;
if (getq(LoFQuest_EPISODE) != 15) end;
- if (getq2(LoFQuest_EPISODE) != 2); end;
+ //if (getq2(LoFQuest_EPISODE) != 2); end;
if (.ctrl) end;
.ctrl=true;
@@ -92,24 +92,119 @@ OnTimer30000:
areamonster("032-5", 21, 35, 58, 77, strmobinfo(1, RedFollower), RedFollower, 12, "#EpShow::OnMini");
areamonster("032-5", 21, 35, 58, 77, strmobinfo(1, RedFollowerF), RedFollowerF, 12, "#EpShow::OnMini");
stopnpctimer;
- .ctrl = false;
+ //.ctrl = false;
end;
OnMini:
if (.razor)
unittalk(.razor, "My fallen comrade, you'll be avenged!");
+ sleep(100);
+ if (!mobcount("032-5", "all")) goto OnNext;
end;
OnRazor:
if (.platy)
unittalk(.platy, "Razor, no!");
.razor = 0;
+ sleep(100);
+ if (!mobcount("032-5", "all")) goto OnNext;
end;
OnPlaty:
if (.razor)
unittalk(.razor, "My queen!");
.platy = 0;
+ sleep(100);
+ if (!mobcount("032-5", "all")) goto OnNext;
+ end;
+
+OnWin:
+ @elli=true;
+ getexp 30000, 0;
+ if (getq(LoFQuest_EPISODE) == 15) {
+ setq LoFQuest_EPISODE, 16, 0, 0;
+ getexp 370000, 0;
+ }
+ end;
+
+OnSS:
+ sshake();
+ closeclientdialog;
+ end;
+
+OnSSX:
+ sshake(8);
+ sleep2(350);
+ sshake(12);
+ closeclientdialog;
+ end;
+
+OnNext:
+ maptimer("032-5", 10, "#EpShow::OnWin");
+ // TODO: Bring the boss!
+ .platy=monster("032-5", 39, 55, "Soul Eater", PanthomLord, 1);
+ immortal(.platy);
+ setunitdata(.platy, UDT_MODE, MD_BOSS|MD_PLANT|MD_NOKNOCKBACK);
+ unittalk(.platy, "...");
+ sleep(5000);
+ unittalk(.platy, "How...");
+ maptimer("032-5", 4900, "#EpShow::OnSS");
+ sleep(5000);
+ unittalk(.platy, "HOW!!!");
+ maptimer("032-5", 4900, "#EpShow::OnSS");
+ sleep(5000);
+ unittalk(.platy, "UNFORGIVABLE!!! You have ruined my disguise!");
+ sleep(5000);
+ unittalk(.platy, "But you underestimate me...");
+ freeloop(true);
+ for (.@i=0;.@i < 25;.@i++) {
+ .@tmp = areamonster("032-5", 21, 35, 58, 77, strmobinfo(1, JackO), JackO, 1);
+ immortal(.@tmp);
+ setunitdata(.@tmp, UDT_MODE, MD_NOKNOCKBACK);
+ sleep(50);
+ }
+ freeloop(false);
+ unittalk(.platy, "...Of course every one who has fallen here serves me... And all those before!");
+ sleep(2500);
+ unittalk(.platy, "...And with those from past and future... I'll be invencible! And reign forever!");
+ sleep(2500);
+ // TODO: Bring elli!
+ enablenpc("Elli#Ep");
+ .razor = getnpcid("Elli#Ep");
+ sleep(500);
+ unittalk(.razor, "That shall not be.");
+ sleep(5000);
+ unittalk(.razor, "I am Elli, one of the Originals.");
+ sleep(5000);
+ unittalk(.razor, "And I am here to pummel you algebraically with a(n) ginormous, frankenstein, gassy, green carnival hammer.");
+ sleep(5000);
+ unittalk(.razor, "Your reign of terror is over, Soul Eater. I'll destroy you and your followers...");
+ sleep(5000);
+ unittalk(.razor, "...Past or future. Therefore:");
+ maptimer("032-5", 4900, "#EpShow::OnSSX");
+ sleep(5000);
+ unittalk(.razor, "COME LEGENDARY HOCUS, AND ANNIHILATE EVERYTHING!");
+ sleep(500);
+ disablenpc("Elli#Ep");
+ maptimer("032-5", 100, "#EpShow::OnFin");
+ sleep(200);
+ killmonsterall("032-5");
+ .ctrl = false;
+ end;
+
+OnFin:
+ if (!@elli) end;
+ warp "032-1", 59, 130;
+ sendmapmask 129;
+ addtimer(100, "Elli::OnFin");
+ @elli=false;
+ end;
+}
+
+032-5,39,52,0 script Elli#Ep NPC_ELLI,{
+ end;
+OnInit:
+ disablenpc(.name$);
end;
}