// TMW2 Scripts
// Author:
// Jesusalva
// Description:
// Controls Forgotten Chamber
/////////////////////////////
018-6-2,90,31,0 script #FromSouthHall NPC_SUMMONING_CIRC,0,0,{
dispbottom l("It looks dangerous.");
end;
OnTouch:
.@q=getq(LoFQuest_Barbara);
.@q2=getq2(LoFQuest_Barbara);
.@q3=getq3(LoFQuest_Barbara);
if (.@q == 2) {
// 1/64 - West Puzzle
if ((.@q3 & 64)) {
warp BarbaraInstCheck(0), 68, 90;
setq3 LoFQuest_Barbara, .@q3|1;
.@q3=getq3(LoFQuest_Barbara);
setq3 LoFQuest_Barbara, .@q3-64;
.@q3=getq3(LoFQuest_Barbara);
disablenpc instance_npcname(.name$, .@q2);
// Puzzle complete, enable next NPC
if (.@q3 == 3)
enablenpc instance_npcname("#ToSouthHall", .@q2);
end;
}
// 2/128 - East Puzzle
else if ((.@q3 & 128)) {
warp BarbaraInstCheck(0), 112, 90;
setq3 LoFQuest_Barbara, .@q3|2;
.@q3=getq3(LoFQuest_Barbara);
setq3 LoFQuest_Barbara, .@q3-128;
.@q3=getq3(LoFQuest_Barbara);
disablenpc instance_npcname(.name$, .@q2);
// Puzzle complete, enable next NPC
if (.@q3 == 3)
enablenpc instance_npcname("#ToSouthHall", .@q2);
end;
}
// Wut
else {
Exception("ERROR, YOU SHOULD NOT BEEN SEEING THIS. 018-6-2.FSH", RB_DEFAULT|RB_ISFATAL);
}
// Active the quest
if (.@q3 == 3)
enablenpc instance_npcname("#ToSouthHall", .@q2);
} else {
Exception("ERROR, YOU SHOULD NOT BEEN SEEING THIS. 018-6-2.FSH.MQ");
}
end;
OnInit:
disablenpc .name$;
end;
OnInstanceInit:
disablenpc instance_npcname(.name$);
end;
}
/////////////////////////////
018-6-2,70,152,0 script #FromWestHall NPC_SUMMONING_CIRC,0,0,{
dispbottom l("Should I walk on it?");
end;
OnTouch:
.@q=getq(LoFQuest_Barbara);
.@q2=getq2(LoFQuest_Barbara);
.@q3=getq3(LoFQuest_Barbara);
if (.@q != 2)
Exception("ERROR, INVALID WARP", RB_DEFAULT|RB_ISFATAL);
// East hall not yet enabled, we must repeat
if (!(.@q3 & 128)) {
// Mark the west hall as complete (again)
addtimer(100, "#01862_InstCtrl::OnLevel4");
setq3 LoFQuest_Barbara, .@q3|64;
disablenpc instance_npcname(.name$, .@q2);
warp BarbaraInstCheck(2), 90, 32;
} else {
// Quest is over!
setq3 LoFQuest_Barbara, 7;
disablenpc instance_npcname(.name$, .@q2);
enablenpc instance_npcname("#ToForgottenShrine", .@q2);
warp BarbaraInstCheck(0), 90, 112;
}
end;
OnInit:
disablenpc .name$;
end;
OnInstanceInit:
disablenpc instance_npcname(.name$);
end;
}
/////////////////////////////
018-6-2,103,156,0 script #FromEastHall NPC_SUMMONING_CIRC,0,0,{
dispbottom l("Should I walk on it?");
end;
OnTouch:
.@q=getq(LoFQuest_Barbara);
.@q2=getq2(LoFQuest_Barbara);
.@q3=getq3(LoFQuest_Barbara);
if (.@q != 2)
Exception("ERROR, INVALID WARP", RB_DEFAULT|RB_ISFATAL);
// West hall not yet enabled, we must repeat
if (!(.@q3 & 64)) {
// Mark the east hall as complete (again)
addtimer(100, "#01862_InstCtrl::OnLevel4");
setq3 LoFQuest_Barbara, .@q3|128;
disablenpc instance_npcname(.name$, .@q2);
warp BarbaraInstCheck(2), 90, 32;
} else {
// Quest is over!
setq3 LoFQuest_Barbara, 7;
disablenpc instance_npcname(.name$, .@q2);
enablenpc instance_npcname("#ToForgottenShrine", .@q2);
warp BarbaraInstCheck(0), 90, 112;
}
end;
OnInit:
disablenpc .name$;
end;
OnInstanceInit:
disablenpc instance_npcname(.name$);
end;
}