1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
// TMW2 scripts.
// Author:
// Jesusalva
// Description:
// The Impregnable Fortress Control Files
// Quest: General_Fortress
// (MaxFloor+1, internal, internal)
// 0263Event(switchID)
function script 0263Event {
// Terminate the script if you already flipped it (also to stop trolls)
if (getq(General_Fortress) != 4) end;
if (getq2(General_Fortress) & getarg(0)) {
dispbottom l("I have already flipped this switch earlier.");
end;
}
// Flip it for good
setq2 General_Fortress, getq2(General_Fortress) | getarg(0);
// And if all switches are flipped...!
if (getq2(General_Fortress) == 15) {
setq General_Fortress, 5, 0, 0;
specialeffect(FX_CIRCLE, SELF, getcharid(3));
}
return;
}
// The main entrance
026-3,55,128,0 script Impregnable#B3F NPC_HIDDEN,0,0,{
end;
OnTouch:
dispbottom l("From this point forward, you'll no longer be able to return to the previous floor.");
if (getq(General_Fortress) > 5) goto L_Warp;
mesc l(".:: Impregnable Fortress, %sF ::.", "B3"), 3;
msObjective(getq(General_Fortress) == 5, l("* Flip all four switches"));
msObjective($MK_TEMPVAR < MKIF_LV_B3F, l("Minimum wins: %d/%d", $MK_TEMPVAR, MKIF_LV_B4F));
mes "";
mesc l("Hint: You cannot unflip a switch, but they unflip every 12 hours.");
end;
L_Warp:
// Not unlocked
if ($GAME_STORYLINE >= 3 && $MK_TEMPVAR < MKIF_LV_B4F) {
mesc l("The gate is sealed shut."), 1;
mesc l("The monster army is still strong on this floor!"), 1;
mesc l("Minimum wins: %d/%d", $MK_TEMPVAR, MKIF_LV_B4F), 1;
close;
}
//warp "026-4", X, Y;
dispbottom l("Coming Soon, in Moubootaur Legends!");
end;
// Reset the switches
OnClock0500:
OnClock1700:
setnpcdisplay "#026-3_129_38", NPC_SWITCH_OFFLINE;
setnpcdisplay "#026-3_59_86", NPC_SWITCH_OFFLINE;
setnpcdisplay "#026-3_94_80", NPC_SWITCH_OFFLINE;
setnpcdisplay "#026-3_53_59", NPC_SWITCH_OFFLINE;
end;
}
|