summaryrefslogtreecommitdiff
path: root/npc/020-4/henry.txt
blob: a88a12a827da65a3e6fe1f5ce6289e2039983c6a (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
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
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
// TMW2 Script.
// Author:
//    Jesusalva
// Description:
//    Questmaker Handbook 14.0

020-4,24,38,0	script	Henry	NPC_HENRY,{
    function newQuest;
    function checkQuest;

    // The EPISODE
    if (getq(LoFQuest_EPISODE) == 8 &&
        countitem(DeathPotion)) {
        mesc l("Should we give this shady looking 'fella a %s?", getitemlink(DeathPotion));
        select
            l("No, who knows what they might do with it!"),
            l("Sure, what could go wrong?");
        mes "";
        if (@menu != 2) {
            clear;
            mesc l("*whistles*");
        } else {
            mesn strcharinfo(0);
            mesq l("The Shadow Tortuga won the race against the Panthom Lord.");
            next;
            mesn;
            mesq l("Oooh, I see, I see! So you're working with ##Bthem##b... This is most appreciated.");
            next;
            mesn;
            mesq l("So, you have fulfilled this part of the misssion. Bring %d %s and a %s to Pachua in the Desert Canyon, and say the same thing to him so he knows you're with us.", 10, getitemlink(Honey), getitemlink(ElixirOfLife));
            next;
            mesn;
            mesq l("Once you done so, come back and report the new passcode... Then I'll disclose to you the real mission.");
            delitem DeathPotion, 1;
            getexp 35000, 0;
            setq LoFQuest_EPISODE, 9, 0;
            close;
        }
    }
    // Also part of The EPISODE
    if (getq(LoFQuest_EPISODE) == 10) {
        mesn strcharinfo(0);
        mesq l("The crow took off to his last flight.");
        next;
        mesn;
        mesq "...";
        next;
        if (BaseLevel < 55) {
            mesn;
            mesq l("Alright. Now to give your quest. But not now, you're still weak. Come back later, will you.");
            close; // Next quest is Level 70 so.
        } else {
            mesn;
            mesq l("West of here, north of here, is a cabin. Investigate. That's all.");
            next;
            mesn;
            mesq l("...Oh, right! We locked it. Uhm, we'll open it for you. Be careful.");
            setq LoFQuest_EPISODE, 11;
            close;
        }
    }
    // Also part of The EPISODE
    if (getq(LoFQuest_EPISODE) == 12) {
        if (BaseLevel < 57) {
            mesn;
            mesq l("Before you give me your report, acquire level %d.", 57);
            close; // Next quest is Level 70 so.
        } else {
            mesn;
            mesq l("Hm, thanks for your report. This is most useful. Here, drink this.");
            next;
            mesc l("You start feeling dizzy.");
            mesn;
            mesq l("%s? You don't look so well. You should see a doctor immediately!", strcharinfo(0));
            setq LoFQuest_EPISODE, 13, 0, 0;
            SC_Bonus(86400, SC_POISON, 1);
            close;
        }
    }

    // Level requeriment
    if (BaseLevel < 70) {
        npctalk3 l("*whistles*");
        close;
    }

    // Main Quest
    .@q=getq(NivalisQuest_Henry);
    switch (.@q) {
    case 0:
        newQuest(); break;
    case 1:
        checkQuest(); break;
    default:
        npctalk3 l("*whistles*");
    }
    close;

function newQuest {
    mesn;
    mesq l("Hey, psst! Come over here!");
    next;
    mesn;
    mesq l("I need a favor! For certain... reasons... I ran out of poison! And For certain... reasons... I am in dire need of them!");
    next;
    mesn;
    mesq l("So if you bring me %d %s, I'll pay you awesomely! Whaddaya say?!", 24, getitemlink(NymphPoison));
    next;
    select
        l("Sure, I'll be right back."),
        l("Erm, for certain... reasons... I cannot help you right now!");
    mes "";
    if (@menu == 2) {
        closeclientdialog;
        return;
    }
    mesn;
    mesq l("Thanks, I knew I could count on you!");
    setq NivalisQuest_Henry, 1;
    return;
}

function checkQuest {
    mesn;
    mesq l("Did you brought me the %d/%d %s?", countitem(NymphPoison), 24, getitemlink(NymphPoison));
    select
        l("Yes, here!"),
        l("Sorry, I'll be back.");
    mes "";
    if (@menu == 2) {
        closeclientdialog;
        return;
    }
    if (countitem(NymphPoison) < 24) {
        mesn;
        mesq l("Ooh, many thanks! Lemme just grab something for you...");
        next;
        mesc l("%s stabs you to the chest!", l("Henry")), 1;
        mesn;
        mesq l("Foolish kid, thinking they can fool me, Henry S., from all the people...!");
        die();
        return;
    }
    delitem NymphPoison, 24;
    Mobpt+=10000;
    getexp 100000, 0;
    setq NivalisQuest_Henry, 2;
    mesn;
    mesq l("Hehehe... Thanks. Here, take these %s Monster Points... This exchange has never happened.", fnum(10000));
    return;
}


OnInit:
    .sex = G_MALE;
    .distance = 5;
    end;
}