// TMW2 scripts.
// Author:
// Jesusalva
// Description:
// 023-3-2 Isbamuth's Study Room Configuration File
023-3-2 mapflag zone MMO
023-3-2,39,59,0 script #Exit02332 NPC_HIDDEN,1,0,{
end;
OnTouch:
.@q=getq(General_Narrator);
.@q2=getq2(General_Narrator);
// Cheater Detected
if (.@q < 15) {
warp "Save", 0, 0;
percentheal -100, -100;
end;
}
if (.@q == 15) {
dispbottom lg("I'm not a coward! I must press forward!");
end;
}
/*
Access to the dungeon is now prohibted.
.@mapn$="023-3-1";
warp .@mapn$, 45, 28;
*/
.@mapn$="024-16";
warp .@mapn$, 30, 26;
end;
}
// The Master Room... We use field 3, too, but bitwise position 2 is reserved.
023-3-2,38,30,0 script Cauldron#MKHB NPC_NO_SPRITE,{
.@q=getq3(FrostiaQuest_Homunculus);
if (.@q < 4095) {
mesn;
mesc l("It's steaming. Who knows what insanity Isbamuth is brewing inside?!");
next;
mesc l("Keep exploring the Study Room and certify it is safe first. Also, make sure to learn what this was used for.");
close;
}
mesc l("You have collect enough evidence, it's time to leave and report.");
setq1 FrostiaQuest_Homunculus, 4;
setq1 General_Narrator, 16;
close;
OnInit:
.distance=2;
end;
}
023-3-2,40,25,0 script Notebook#MKHB NPC_NO_SPRITE,{
.@q=getq3(FrostiaQuest_Homunculus);
if (.@q < 4094) {
mesn;
mesc l("Uhm, of course a book like this has to be a trap, right?");
next;
mesc l("Keep exploring the Study Room and certify it is safe first.");
close;
}
// Implict fallthrough
L_BookRead:
mesn;
mesc l("Insert here lore information");
if (!(.@q & .hcID))
setq3 FrostiaQuest_Homunculus, .@q|.hcID;
close;
OnBookRead:
.@q=getq(General_Narrator);
if (.@q < 16) end;
.@q=.hcID;
goto L_BookRead;
OnInit:
.hcID=1;
.distance=2;
bindatcmd "homunculus", "Notebook#MKHB::OnBookRead", 0, 100, 0;
end;
}
023-3-2,36,31,0 script Machinery#MKHB NPC_NO_SPRITE,{
.@q=getq3(FrostiaQuest_Homunculus);
mesn;
mesc l("You have no idea what this piece of equipment is used for.");
next;
mesn;
mesc l("It have the same shape as those used to polish weapons, but there are blood stains everywhere.");
if (!(.@q & .hcID))
setq3 FrostiaQuest_Homunculus, .@q|.hcID;
close;
OnInit:
.hcID=4;
.distance=2;
end;
}
023-3-2,40,20,0 script Staircase#MKHB NPC_NO_SPRITE,{
.@q=getq3(FrostiaQuest_Homunculus);
mesn;
mesc l("The stairs have magic cast on them, I cannot climb.");
next;
mesn;
mesc l("I have no idea what's above. Behind the stair, is the painting of a table.");
next;
mesn;
mesc l("Seems to be related to alchemy.");
if (!(.@q & .hcID))
setq3 FrostiaQuest_Homunculus, .@q|.hcID;
close;
OnInit:
.hcID=8;
.distance=2;
end;
}
023-3-2,41,30,0 script Potions#MKHB NPC_NO_SPRITE,{
.@q=getq3(FrostiaQuest_Homunculus);
mesn;
mesc l("Several flasks are aligned there. They seemed to be dyes, but a close inspection reveals they're not.");
next;
mesn;
mesc l("They must be reagents used in alchemy.");
if (!(.@q & .hcID))
setq3 FrostiaQuest_Homunculus, .@q|.hcID;
close;
OnInit:
.hcID=16;
.distance=2;
end;
}
023-3-2,36,25,0 script Bookcase#MKHB1 NPC_NO_SPRITE,{
.@q=getq3(FrostiaQuest_Homunculus);
mesn;
mesc l("Several books about alchemy. Seems to be pretty advanced.");
if (!(.@q & .hcID))
setq3 FrostiaQuest_Homunculus, .@q|.hcID;
close;
OnInit:
.hcID=32;
.distance=2;
end;
}
023-3-2,44,25,0 script Bookcase#MKHB2 NPC_NO_SPRITE,{
.@q=getq3(FrostiaQuest_Homunculus);
mesn;
mesc l("Several books about hiding magic. Might be why the houses looked abandoned and empty but the chimney was going.");
if (!(.@q & .hcID))
setq3 FrostiaQuest_Homunculus, .@q|.hcID;
close;
OnInit:
.hcID=64;
.distance=2;
end;
}
023-3-2,46,28,0 script Bookcase#MKHB3 NPC_NO_SPRITE,{
.@q=getq3(FrostiaQuest_Homunculus);
mesn;
mesc l("Several books about artifical lifeforms and the man who played God.");
if (!(.@q & .hcID))
setq3 FrostiaQuest_Homunculus, .@q|.hcID;
close;
OnInit:
.hcID=128;
.distance=2;
end;
}
023-3-2,49,31,0 duplicate(Bookcase#MKHB3) Bookcase#MKHB4 NPC_NO_SPRITE
023-3-2,32,28,0 script Bookcase#MKHB5 NPC_NO_SPRITE,{
.@q=getq3(FrostiaQuest_Homunculus);
mesn;
mesc l("Seems to be accounting reports and stuff. You take a few pages.");
if (!(.@q & .hcID))
setq3 FrostiaQuest_Homunculus, .@q|.hcID;
close;
OnInit:
.hcID=256;
.distance=2;
end;
}
023-3-2,30,31,0 duplicate(Bookcase#MKHB1) Bookcase#MKHB6 NPC_NO_SPRITE
023-3-2,35,35,0 duplicate(Bookcase#MKHB1) Bookcase#MKHB7 NPC_NO_SPRITE
023-3-2,43,35,0 duplicate(Bookcase#MKHB2) Bookcase#MKHB8 NPC_NO_SPRITE
023-3-2,33,22,0 duplicate(Potions#MKHB) Potions#MKHB1 NPC_NO_SPRITE
023-3-2,30,24,0 duplicate(Potions#MKHB) Potions#MKHB2 NPC_NO_SPRITE
023-3-2,27,26,0 duplicate(Potions#MKHB) Potions#MKHB3 NPC_NO_SPRITE
023-3-2,46,22,0 duplicate(Potions#MKHB) Potions#MKHB4 NPC_NO_SPRITE
023-3-2,49,24,0 duplicate(Potions#MKHB) Potions#MKHB5 NPC_NO_SPRITE
023-3-2,52,26,0 duplicate(Potions#MKHB) Potions#MKHB6 NPC_NO_SPRITE
023-3-2,37,20,0 script Wardrobe#MKHB NPC_NO_SPRITE,{
.@q=getq3(FrostiaQuest_Homunculus);
mesn;
mesc l("Inside it, seems to be several magic reagents, powders, and other stuff.");
if (!(.@q & .hcID))
setq3 FrostiaQuest_Homunculus, .@q|.hcID;
close;
OnInit:
.hcID=512;
.distance=2;
end;
}
023-3-2,43,20,0 duplicate(Wardrobe#MKHB) Wardrobe#MKHB1 NPC_NO_SPRITE
023-3-2,31,21,0 duplicate(Wardrobe#MKHB) Wardrobe#MKHB2 NPC_NO_SPRITE
023-3-2,28,23,0 duplicate(Wardrobe#MKHB) Wardrobe#MKHB3 NPC_NO_SPRITE
023-3-2,25,25,0 duplicate(Wardrobe#MKHB) Wardrobe#MKHB4 NPC_NO_SPRITE
023-3-2,48,21,0 duplicate(Wardrobe#MKHB) Wardrobe#MKHB5 NPC_NO_SPRITE
023-3-2,51,23,0 duplicate(Wardrobe#MKHB) Wardrobe#MKHB6 NPC_NO_SPRITE
023-3-2,54,25,0 duplicate(Wardrobe#MKHB) Wardrobe#MKHB7 NPC_NO_SPRITE
023-3-2,51,37,0 script Barrels#MKHB NPC_NO_SPRITE,{
.@q=getq3(FrostiaQuest_Homunculus);
mesn;
mesc l("These barrels are sealed and heavy. It's impossible to know what's inside. There's a marking on them, you copy them somewhere.");
if (!(.@q & .hcID))
setq3 FrostiaQuest_Homunculus, .@q|.hcID;
close;
OnInit:
.hcID=1024;
.distance=2;
end;
}
023-3-2,45,41,0 duplicate(Barrels#MKHB) Barrels#MKHB1 NPC_NO_SPRITE
023-3-2,30,40,0 duplicate(Barrels#MKHB) Barrels#MKHB2 NPC_NO_SPRITE
023-3-2,25,34,0 duplicate(Barrels#MKHB) Barrels#MKHB3 NPC_NO_SPRITE
023-3-2,38,26,0 script Alchemy Set#MKHB NPC_NO_SPRITE,{
.@q=getq3(FrostiaQuest_Homunculus);
mesn;
mesc l("Hey look, an alchemy set. Not your area of expertise, but you take a few samples.");
if (!(.@q & .hcID))
setq3 FrostiaQuest_Homunculus, .@q|.hcID;
close;
OnInit:
.hcID=2048;
.distance=2;
end;
}