diff options
Diffstat (limited to 'npc/001-16/obelisk.c')
-rw-r--r-- | npc/001-16/obelisk.c | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/npc/001-16/obelisk.c b/npc/001-16/obelisk.c new file mode 100644 index 000000000..afcdef451 --- /dev/null +++ b/npc/001-16/obelisk.c @@ -0,0 +1,92 @@ +// TMW2 scripts. +// Author: +// Jesusalva +// Description: +// Moubootaur Legends :: Final Showdown - Post Mortem Realm + +001-16 mapflag zone FinalMMO + +// This Obelisk will warp you back to the Showdown. Are you sure? 89 48 +001-16,89,48,0 script Obelisk#MLDL1 NPC_FINAL_POINT,{ + mesn; + mesc l("Lost soul who wanders the mazes of life and death, the path lies herein ahead, but only those of stout heart may return."); + mesc l("This is the challenge which Mr. Saves has determined upon all those whom die outside the Mana Source's Jurisdiction."); + .@ans = ASK_NO; + if ($@ML_SHOWDOWN) { + next; + mesc l("Do you wish to return to the Moubootaur Showdown as an undead?"), 1; + next; + .@ans = askyesno(); + } + closeclientdialog; + if (.@ans == ASK_YES) + "#Moubootaur"::DeathHandler(true); + close; + +OnInit: + .distance=2; + end; +} + +// This Obelisk will warp you to a random town. Are you sure? 215 162 +001-16,215,162,0 script Obelisk#MLDL2 NPC_FINAL_POINT,{ + mesc l("This Obelisk will warp you to a random town. Are you sure?"), 1; + .@ans = askyesno(); + closeclientdialog; + if (.@ans == ASK_YES) { + .@dest = any(TP_FROST, TP_HALIN, TP_LOF, TP_FORT, TP_LILIT, TP_CANDOR, TP_ARTIS); // TP_BOSSR? TP_NIVAL? + .@i = array_find($@LOCMASTER_TP, .@dest); + warp $@LOCMASTER_MAP$[.@i], $@LOCMASTER_X[.@i], $@LOCMASTER_Y[.@i]; + EnterTown($@LOCMASTER_LOC$[.@i], true); + "#Moubootaur"::ReviveHandler(true); + } + close; + +OnInit: + .distance=2; + end; +} + +// This Obelist will warp you to the Optional Dungeon. Are you sure? 286 287 +// if you can't, then the Obelisk does not react +001-16,286,287,0 script Obelisk#MLDL3 NPC_FINAL_POINT,{ + if (!MK_WINNER) { + npctalk3 l("The Obelisk doesn't react. You likely haven't fulfilled the requisites to use it."); + end; + } + mesc l("This Obelisk will warp you to the Optional Dungeon. Are you sure?"), 1; + .@ans = askyesno(); + closeclientdialog; + if (.@ans == ASK_YES) { + .@dest = TP_HEART; + .@i = array_find($@LOCMASTER_TP, .@dest); + warp $@LOCMASTER_MAP$[.@i], $@LOCMASTER_X[.@i], $@LOCMASTER_Y[.@i]; + EnterTown($@LOCMASTER_LOC$[.@i], true); + "#Moubootaur"::ReviveHandler(true); + } + close; + +OnInit: + .distance=2; + end; +} + +// This Obelisk will return you to your savepoint and heal you fully. Are you sure? +// 108 216 +001-16,108,216,0 script Obelisk#MLDL4 NPC_FINAL_POINT,{ + mesc l("This Obelisk will return you to your savepoint and heal you fully. Are you sure?"), 1; + .@ans = askyesno(); + closeclientdialog; + if (.@ans == ASK_YES) { + teleporthome(); + "#Moubootaur"::ReviveHandler(false); + percentheal 100, 100; + SC_Bonus(180, SC_KAIZEL, 1); // Revives with 1% HP if you die + } + end; + +OnInit: + .distance=2; + end; +} + |