summaryrefslogtreecommitdiff
path: root/npc/017-10/airship.txt
blob: f4ef4fd1c37c232541f09ce12e47d29eb4c2a6f5 (plain) (blame)
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
// TMW-2 Script.
// Author:
//    Jesusalva
// Notes:
//    Fortress Island South (Lv 70~150 Area)

017-10,63,22,0	script	#ToFortress	NPC_NO_SPRITE,1,0,{
    end;
OnTouch:
    .@q=getq(General_Narrator);
    if (.@q < 20)
        end;

	mesc l(".:: Fortress Island ::."), 1;
	mes "";
    if ($GAME_STORYLINE < 3) {
        mesc l("Travel to this area is impossible, due to the hordes of Monster Armies."), 1;
        mes "";
        mesc l("If only we defeated their generals and put the army in disarray... It would be possible to visit there.");
        close;
    }
    if (BaseLevel < 70) {
        mesc l("This area is only for level 70 upwards."), 1;
        close;
    }
	mesc l("Do you want to go to Fortress Island, where the Monster King lives?!"), 1;
    removespecialeffect(FX_CIRCLE, SELF, getcharid(3)); // FIXME :(
	next;
    mesc l("WARNING: HIGH LEVEL AREA. COME PREPARED."), 1;
    mesc l("Note: This travel takes a whole minute to complete!!");
    mesc l("Note 2: If you leave this plataform, it'll reset!");
    mesc l("Note 3: All maps in Fortress Island have penalty, even towns!");
    next;
    mesc l("BEGIN WARP PROCEDURES?"), 1;
    if (askyesno() == ASK_YES) {
        specialeffect FX_CIRCLE, SELF, getcharid(3);
        addtimer2 70000, "#ToFortress::OnWarper";
        addtimer2 60000, "#ToFortress::OnNotif";
    }
    close;

OnNotif:
    specialeffect FX_MAGIC, SELF, getcharid(3);
    dispbottom l("WARPING IN 10 SECONDS");
    end;

OnWarper:
    removespecialeffect(FX_CIRCLE, SELF, getcharid(3));
    if (ispcdead()) end;
    if (getmap() != "017-10")
        end;
    if (!FORT_1ST_VISIT)
        FORT_1ST_VISIT = gettimetick(2);
    warp "025-2", 97, 119;
    specialeffect FX_SUCCESS, SELF, getcharid(3);
    dispbottom l("You have arrived at Fortress Island.");
    end;
}

017-10,63,28,0	script	#ToFortressAbort	NPC_NO_SPRITE,5,0,{
    end;
OnTouch:
    removespecialeffect(FX_CIRCLE, SELF, getcharid(3));
    atcommand("@refresh"); // FIXME :(
    deltimer "#ToFortress::OnWarper";
    deltimer "#ToFortress::OnNotif";
    end;
}