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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
|
// #alonsialonso
// Replacement of Easter 2010 spell
// Known as "World Shift Spell"
//
// Variables:
// @alonso -> Nods to DoomsdayAct5() that you'll pay in petals
-|script|alonsialonso|32767
{
if (call("magic_checks", 1)) end;
callfunc "magic_exp";
// Not during Act 5 of Doomsday
if ($DOOMSDAY != 3) end;
// Rule 1: Mushroom Spot
if (isin("057-1", 125, 62, 127, 64))
goto L_ShroomRule;
// Rule 2: Underworld Chapel
if (isin("070-1", 134, 30, 134, 30))
goto L_ChapelRule;
// Rule 3: Tulimshar MMVI
//if (isin("003-1", 42, 92, 46, 95))
// goto L_TulimRule;
// General rule: Simulate death
if (countitem("DarkPetal"))
goto L_EmulateDeath;
message strcharinfo(0), "You cannot shift worlds at this time.";
end;
//////////////////////////////////////////////////////
L_ShroomRule:
if (!$@halloween_time) end;
if (!$DOOMSDAY_TWARP) end;
if ($DOOMSDAY_TJANDE == 1) end;
mes ".:: Eternal Seals Gate ::.";
mes "";
mes "One of the many (?) passages leading to the Underworld.";
mes "During halloween, it is weakened enough to allow beings to cross.";
mes "Perhaps it could be widened?";
next;
menu
"Leave", L_Close,
"[Dark Magic] Check Status", L_ShroomCheck,
"[Dangerous] Try to cross", L_ShroomCross;
L_ShroomCheck:
if (getskilllv(SKILL_MAGIC_DARK) > 0)
mes "Status: "+if_then_else($DOOMSDAY_CNT2 < 150,
"##1Insufficient##0", "##2Sufficient##0")+
if_then_else(getskilllv(SKILL_MAGIC_DARK) > 1,
" ("+($DOOMSDAY_CNT2*100/150)+" %)", "");
else
mes "Status: ##8Unknown##0";
close;
L_ShroomCross:
if ($DOOMSDAY_CNT2 < 150)
goto L_FailCross;
if (Hp < 1)
close;
// Warp you to Underworld
warp "070-1", 30, 92;
message strcharinfo(0), "World Shift : Shifted to Underworld (Area 70)";
misceffect FX_PENTAGRAM_BUILDUP, strcharinfo(0);
close;
//////////////////////////////////////////////////////
L_ChapelRule:
if ($DOOMSDAY_TJANDE == 1) end;
if (!$@halloween_time) end;
mes ".:: Eternal Seals Gate ::.";
mes "";
mes "This chapel is clearly unlocked.";
mes "The lock seems to have been removed ##BOn purpose, from the outside.##b";
mes "This is probably where Tormenta lives.";
next;
mes "##9Warning: This is the Underworld and it may defy common logic.";
mes "Are you ready?##0";
mes "##1Cost: 1x [@@666|@@]";
next;
menu
"Cancel", L_Close,
"Open the gate!", L_GateCheck;
L_GateCheck:
if (!(countitem("BlackRose")))
close;
close2;
misceffect FX_PENTAGRAM_BUILDUP, strcharinfo(0);
addtimer 6000, "alonsialonso::OnChapelCross";
end;
OnChapelCross:
if (Hp < 1)
end;
if (!(countitem("BlackRose")))
end;
// Payment Execution
delitem "BlackRose", 1;
getitem "DarkPetal", 1;
// Warp you to Tulimshar MMVI
warp "003-1", 142, 22;
message strcharinfo(0), "World Shift : Shifted to Tulimshar (Area MMVI)";
misceffect FX_PENTAGRAM_BUILDUP, strcharinfo(0);
end;
//////////////////////////////////////////////////////
L_EmulateDeath:
set @alonso, 1;
callfunc "DoomsdayAct5";
end;
L_Close:
close;
L_FailCross:
warp "045-1", 105, 125;
close;
//////////////////////////////////////////////////////
OnInit:
set .invocation$, chr(MAGIC_SYMBOL) + "alonsialonso"; // used in npcs that refer to this spell
registercmd .invocation$, strnpcinfo(0);
end;
}
|