// Evol script
// Author:
// Jesusalva
// Description:
// 099-1 and 099-3 KESHLAM ADVENTURER GUILD MAIN CHAMBERS
// Controls gates and introduction
/////////////////////////////////////////////////////////////////////////////////
099-1,35,28,0|script|Note#DD5Core|400
{
// Default distance is 4 tiles - all we need
callfunc "PCtoNPCRange";
if(@npc_check) end;
mes ".:: Keshlam's Adventurer Guild ::.";
mes "";
mes "Welcome to the Adventurers Guild!";
mes "Sorry I could not wait for you. It's your fault for being late.";
next;
mes "So, it has been a long time since you were here.";
mes "I hope you still remember the directions?";
mes "Hahaha! There is a lot of fake rooms in this building.";
next;
mes "You should have known me for long enough to know I do not take chances.";
mes "I've put the docks where I'm waiting for you in an overlapping dimension.";
mes "This should be enough to stop any Sparron who makes back to here.";
next;
mes "My dimension, my rules.";
mes "I've set a rule that anything dying here should not respawn.";
mes "I'm not sure if it'll work, but I did enough tests on that.";
next;
mes "In case you forgot, this is an, *ahem*, \"deleted\" dimension.";
mes "You'll see notes from the adventurers who used to inhabit here.";
mes "Maybe you even find something which used to belong to them?";
next;
mes "I'm sure they tried to write down possible ways to stop me.";
mes "I do not like them, so if you find anything which belong to them...";
mes "...Well, you're free to take it.";
next;
mes "I've stationed a guard here and there, to stop intruders.";
mes "Use invisibility magic if you need to go past them.";
mes "I'll talk to you later. Do not leave me waiting!";
next;
mes "Signed,";
mes "Xakelbael the Dark";
close;
}
099-3,69,38,0|script|Ritual Book#099-31|400
{
// Default distance is 4 tiles - all we need
callfunc "PCtoNPCRange";
if(@npc_check) end;
mes ".:: Ritual Book ::.";
mes "";
mes "In this maze, sixteen numeric passwords lie.";
mes "All sixteen passwords must be chanted in their sequence.";
mes "";
mes "Chanting can be done on the book at right.";
mes "##9Only one player may chant all passwords.";
mes "##9No reward is provided.";
mes "##9If you get a number wrong, you'll be penalized!";
close;
}
099-3,75,38,0|script|Ritual Book#099-32|400
{
// Default distance is 4 tiles - all we need
callfunc "PCtoNPCRange";
if(@npc_check) end;
if ($@DD5_OPENSESAME) goto L_Complete;
mes ".:: Ritual Book ::.";
mes "Perform the ritual?";
next;
menu
"Yes", L_RB_0,
"No", L_Close;
L_RB_0:
mes "Say the password - ##B NULL##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[0]) goto L_Failure;
goto L_RB_1;
L_RB_1:
mes "Say the password - ##B EIN##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[1]) goto L_Failure;
goto L_RB_2;
L_RB_2:
mes "Say the password - ##B ZWEI##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[2]) goto L_Failure;
goto L_RB_3;
L_RB_3:
mes "Say the password - ##B DREI##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[3]) goto L_Failure;
goto L_RB_4;
L_RB_4:
mes "Say the password - ##B VIER##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[4]) goto L_Failure;
goto L_RB_5;
L_RB_5:
mes "Say the password - ##B FUNF##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[5]) goto L_Failure;
goto L_RB_6;
L_RB_6:
mes "Say the password - ##B SECHS##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[6]) goto L_Failure;
goto L_RB_7;
L_RB_7:
mes "Say the password - ##B SIEBEN##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[7]) goto L_Failure;
goto L_RB_8;
L_RB_8:
mes "Say the password - ##B ACHT##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[8]) goto L_Failure;
goto L_RB_9;
L_RB_9:
mes "Say the password - ##B NEUN##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[9]) goto L_Failure;
goto L_RB_10;
L_RB_10:
mes "Say the password - ##B ZEHN##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[10]) goto L_Failure;
goto L_RB_11;
L_RB_11:
mes "Say the password - ##B ELF##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[11]) goto L_Failure;
goto L_RB_12;
L_RB_12:
mes "Say the password - ##B ZWOLF##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[12]) goto L_Failure;
goto L_RB_13;
L_RB_13:
mes "Say the password - ##B DREIZEHN##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[13]) goto L_Failure;
goto L_RB_14;
L_RB_14:
mes "Say the password - ##B VIERZEHN##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[14]) goto L_Failure;
goto L_RB_15;
L_RB_15:
mes "Say the password - ##B FUNFZEHN##b";
input @pass;
if (@pass != $@DD5_PASSWORDS[15]) goto L_Failure;
goto L_Success;
L_Failure:
mes "##1THAT WAS WRONG!";
mes "##1THE RITUAL BACKFIRES!";
set Hp, 1;
warp "099-1", 0, 0;
close;
L_Success:
set $@DD5_OPENSESAME, 1;
mes ".:: Ritual Book ::.";
mes "The portal magic is now active.";
close;
L_Complete:
mes ".:: Ritual Book ::.";
mes "The ritual was already performed.";
close;
L_Close:
close;
}
099-3,72,75,0|script|#WarpToFinalShowdown|424,0,0
{
// Default distance is 4 tiles - all we need
callfunc "PCtoNPCRange";
if(@npc_check) end;
if ($@DD5_TSWITCH != 18)
goto L_NotSwitch;
if (!$@DD5_OPENSESAME)
goto L_NotSesame;
mes "Walk here to go to the ##BFinal Showdown##b.";
mes "";
mes "##1##BWARNING:##b##0 Come prepared!";
close;
L_NotSwitch:
mes "All 18 switches must be flipped in order to this warp to work!";
close;
L_NotSesame:
mes "The ritual need to be performed to use this warp!";
close;
L_Busy:
mes "This warp cannot be used while players are on the other side!";
close;
OnTouch:
if ($DOOMSDAY_VANILLA)
goto L_Menu;
if ($@DD5_TSWITCH != 18)
goto L_NotSwitch;
if (!$@DD5_OPENSESAME)
goto L_NotSesame;
goto L_Menu;
L_Menu:
if ($@DD5_STATUS > 1)
goto L_Busy;
mes "##BGo to the final showdown?##b";
mes "You cannot return from there!";
mes "";
mes "##1Warning: Warp will be unavailable during fights!";
if (GM < GM_SYSOP)
close;
menu
"Yes", L_Yes,
"No", L_No;
L_No:
close;
L_Yes:
warp "099-5", 50, 66;
if (!$@DD5_STATUS)
donpcevent "#TMWFinalExam::OnWarn0";
close;
}