summaryrefslogtreecommitdiff
path: root/npc/018-4-2/susanne.txt
blob: 77adcfa09ede1545815710165f500289926e98fb (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
160
161
162
163
164
165
166
167
168
169
170
171
// TMW2/LoF scripts.
// Authors:
//    TMW-LoF Team
//    Jesusalva
// Description:
//    Slay the Fafi Dragon quest. Due the OP monster, you better find yourself a good team!

018-4-2,31,26,0	script	Susanne	NPC_FAIRY_A,{
    .@q=getq(LoFQuest_Fairy);

    if(BaseLevel < 50) goto L_Noob;
    if(.@q == 1) goto L_Coward;
    if(.@q == 2) goto L_Complete;
    if(.@q >= 3) goto L_Thanks;

    mesn;
    mesq l("Do you like fairies? Well, you should love them! We play with humans all the time, it is usually pretty fun...");
    next;
    mesc l("(The girl now looks away sadly, thinking about what to say next.)");
    next;
    mesn;
    mesq l("But dragons came and started roaming this island. My friends are now either dead or missing. You look big and strong, do you want to avenge me?");
    goto L_Menu;

L_Menu:
    menu
        l("Sure, I'd love to help! What can I do?"), L_Yes,
        l("Nah, I've got more serious matters to attend to..."), L_No;

L_Yes:
    mesn;
    mesq l("Thank you so much! That might not bring my friends back, but will make this island much safer!");
    next;
    mesn;
    mesq l("The Fafi Dragon are really really bad guys. I don't know how they came here, as they're not from the Lands Of Fire, nor from Mana World.");
    next;
    mesn;
    mesq l("But this is not important. They are dangerous. They must be stop at any cost!");
    next;
    mesn;
    mesq l("So if you can help, go kill at least one on this island. They take a long time to respawn.");
    next;
    mesn;
    mesq l("Thank you...");
    setq LoFQuest_Fairy, 1;
    if (!mobcount(Susanne::OnKillFafi))
        goto L_Spawn;
    close;

OnKillFafi:
    message strcharinfo(0), "You killed the Fafi Dragon.";
    .@q=getq(LoFQuest_Fairy);
    if (.@q == 1) {
        setq LoFQuest_Fairy, 2;
        mapannounce "018-4-2", "" +strcharinfo(0)+ " has killed the Fafi Dragon!", 0;
        mapannounce "018-4-1", "" +strcharinfo(0)+ " has killed the Fafi Dragon!", 0;
        mapannounce "018-4", "" +strcharinfo(0)+ " has killed the Fafi Dragon!", 0;
        mapannounce "017-1", "" +strcharinfo(0)+ " has killed the Fafi Dragon!", 0;
        message strcharinfo(0), "Cheers are being heard throughout the land!";
    }
    end;

L_Complete:
    mesn;
    mesq l("Many thanks for killing it. Maybe more humans come here now, and play with me.");
    next;
    inventoryplace FafiMask, 1;
    getitem FafiMask, 1;
    getexp 75000, 200;
    setq LoFQuest_Fairy, 3;
    mesn;
    mesq l("By the way, I found this Mask after you killed the Fafi Dragon, Maybe you can use it some day.");
    next;
    mesn;
    mesq l("And some times, more Fafi dragons come... Don't neglect your aid.");
    close;

L_Thanks:
    mesn;
    mesq l("Sometimes humans come here and play with me. Many thanks for the help!");
    if (!mobcount("Susanne::OnKillFafi") && .respawnTime <= gettimetick(2)) {
        next;
        mesn;
        mesq l("Actually, about Fafi dragons...");
        next;
        goto L_Check;
    }
    close;

L_No:
    mesn;
    mesq l("Ok...please come back when you aren't busy...");
    next;
    mesc l("The girl turns around and you hear her sniffing, she is probably crying...");
    close;

L_Noob:
    mesn;
    mesq l("Hey, have you come to play with me? I love playing with humans! Usually so few show in, it must be the dragons...");
    //mesq l("I need some help with something, but I don't think you're strong enough. Come back later please when you're stronger.");
    close;

L_Coward:
    if (!mobcount("Susanne::OnKillFafi"))
        goto L_Check;
    mesn;
    mesq l("What are you doing talking to me? Go fight, you coward!");
    close;

L_Check:
    if (.respawnTime > gettimetick(2) && (!mobcount("Susanne::OnKillFafi"))){
        mesn;
        mesq l("Just wait. Fafi dragons are slow to show up...");
    } else {
        mesn;
        mesq l("The Fafi knows you are here to kill him. They are smart. But I can make a trap.");
        next;
        mesn;
        mesq l("Bring me this and I'll spawn it for you:");
        // .@q valid values are 1 (Starter) and 3 (Veteran)
        mesc l("@@/@@ @@", countitem(ShadowHerb), .@q*5, getitemlink(ShadowHerb));
        mesc l("@@/@@ @@", countitem(Moss), .@q*4, getitemlink(Moss));
        mesc l("@@/@@ @@", countitem(Root), .@q*3, getitemlink(Root));
        next;
        mesn;
        mesq l("I'll be attracted by the Shadow Herb. The moss will hide the roots, which will entrap it for a while.");
        mesq l("So, do you have the items?");
        if (askyesno() != ASK_YES) {
            close;
        }
        mes "";
        if (countitem(ShadowHerb) < .@q*5 ||
            countitem(Moss)       < .@q*4 ||
            countitem(Root)       < .@q*3) goto L_Fail;
        if (.respawnTime > gettimetick(2)) {
            mesn;
            mesq l("Too slow.");
            close;
        }
        delitem ShadowHerb, .@q*5;
        delitem Moss,       .@q*4;
        delitem Root,       .@q*3;
        goto L_Spawn;
    }
    close;

L_Spawn:
    if (.respawnTime > gettimetick(2)){
        mesn;
        mesq l("Just wait. Fafi dragons are slow to show up...");
    } else {
        mesn;
        mesc l("Screams");
        mesq l("I hear a Fafi Dragon on THIS very island!!");
        .respawnTime=gettimetick(2)+(60*90);
        monster "018-4", any(59,78,95,118,134), any(54,64,79), strmobinfo(1, FafiDragon), FafiDragon, 1, "#Susanne::OnKillFafi";
    }
    close;

L_Fail:
    mesn;
    mesq l("You're lucky that this is the Land Of Fire and I'm on a good mood, otherwise, I would have killed you for lying to me.");
    close;

OnInit:
    .respawnTime=0;
    .sex=G_FEMALE;
    .distance=5;
    end;

}