summaryrefslogtreecommitdiff
path: root/npc/017-3/loratay.txt
blob: fbbbdc4ab966dec896b7f0fc82982dcc5199c2e9 (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
// TMW2/LoF scripts.
// Authors:
//    TMW-LoF Team
//    Jesusalva
// Description:
//    TODO - Makes the Golden Warlord Plate into the Savior Plate.
//    Not part from the EPISODE quest.
//    Requires Titanium, Iridium, and Silk
//    Requires some money and level too (Savior Plate is level 109 item iirc?)

017-3,85,85,0	script	Lora Tay	NPC_GLASS_OLD_LADY,{
    showavatar NPC_GLASS_OLD_LADY;
    inspectorQuest();
    // bugfix, please move to select()
    if ($EVENT$ == "Valentine" && getq(SQuest_Valentine) != gettime(GETTIME_YEAR)) goto L_Valentine;
    if (BaseLevel >= 52 || REBIRTH) goto L_Menu;

    mesn;
    mesq l("Don't interrupt me, I'm busy!");
    next;
    mesn;
    mesq l("In a few weeks, I will finish the @@ plans, and there will be no doubts, that @@ is not the best weaver in the world!", getitemlink(SorcererRobe), .name$);
    close;

L_Valentine:
    mesn;
    mesq l("It's valentine day, and I got my hands on a @@ model!", getitemlink(ValentineDress, RedDye));
    next;
    // Standard date: 12~15 feb
    // Std price range: 288 ~ 383 points
    .@todayprice=(gettime(GETTIME_DAYOFMONTH)*24)+gettime(GETTIME_HOUR);
    mesn;
    mesq l("You currently have @@ event points, but for ONLY @@ points I can make a dress for you!", #VALENTINE_POINTS, .@todayprice);
    mesc l("The price raises hourly, don't leave to make it on the last day!");
    if (#VALENTINE_POINTS < .@todayprice)
        close;
    next;
    mesn;
    mesq l("Do you want to trade your points? The demand keep raising, and so does the price!");
    //mesc l("Note: The points will NOT be consumed on 2020."), 3;
    if (askyesno() == ASK_NO)
        close;

    setq SQuest_Valentine, gettime(GETTIME_YEAR);
    //if (gettime(GETTIME_YEAR) != 2020)
    //    #VALENTINE_POINTS-=.@todayprice;
    getitem2(ValentineDress, 1, 1, 0, 0, any(RedDye, RedDye, DarkRedDye, RedDye), 0,0,0); // 25% chance to get an ugly dress
    getexp BaseLevel*110, JobLevel*11;
    mesn;
    mesq l("There you go, your Valentine Dress!");
    mesq lg("Good luck with your boyfriend!", "Good luck with your girlfriend!");
    next;

    mesn strcharinfo(0);
	if (getpartnerid()) {
        mesc lg("I'm already married, though...");
    } else {
        mesc lg("Thanks... I guess...");
    }
    close;

L_Menu:
    mesc any(
            l("You see a middle-aged woman furiously sewing away at what appears to be a very expensive dress.  Her fingers are moving so nimbly that you find it near-impossible to follow the needle."),
            l("You notice a middle-aged woman carefully drawing lines on a large sheet of cotton."),
            l("You see a middle-aged woman cautiously but surprisingly swiftly cutting out shapes from a huge cotton sheet.  The scissors glide along the cloth as if it were butter, never leaving the premarked lines.")
        );
    next;
    mesc l("She suddenly stops and looks up.");
    next;
    mesn;
    mesq l("Now who are you, and what are you doing here?");
    mesc l("She squints, pushes her thick spectacles up the bridge of her nose and eyes you suspiciously.");
    next;
    select
        "",
        l("I'm here on behalf of Agostine."),
        l("Hello, my name is %s. Are you a tailor?", strcharinfo(0)),
        l("I would like to comission some Sorcerer Robes."),
        l("Sorry, I'm lost.");
    mes "";
    switch (@menu) {
    case 2:
        mesn;
        mesq l("Agostine? Never heard of. If you don't have anything better to do, then stop wasting my time!");
        close;
    case 3:
        mesc l("She raises an eyebrow and frowns.");
        mesn;
        mesq l("No, I am an accupuncturist, I just happen to practice on cloth! Hah! I would greatly appreciate it if you were to get out of here and leave me to my work! So get out of here with your silly questions!");
        close;
    case 4:
        goto L_Sorcerer;
    case 5:
        mesn;
        mesq l("Then stop barging in this inn's room like an imbecile! Ask the quartermaster Basil in the lower floor if you are looking for accomodations, but it figures your head is there just for show! Hah, I've seen hats smarter than you! Now out of my sight!");
        close;
    }
    // Shall not be reached unless switch or menu was compromised
    Exception("[Lorayay] Error! Invalid menu option: %d", RB_IRCBROADCAST|RB_ISFATAL);
    end;

L_Sorcerer:
    mesn;
    mesq l("Sure, I can make a %s for you. However, I am not just a tailor, I am a seamstress, and expect quality materials and a compensation worth my time.", getitemlink(SorcererRobe));
    next;
    mesn;
    mesq l("Now, if you really want it, bring me %d %s, a %s, %d %s, %d %s and %s GP, and I'll consider it.", 12, getitemlink(CottonCloth), getitemlink(WolvernPelt), 6, getitemlink(WhiteFur), 18, getitemlink(SilkCocoon), fnum(25000));
    if (countitem(CottonCloth) < 12 ||
        countitem(WolvernPelt) < 1  ||
        countitem(WhiteFur)    < 6  ||
        countitem(SilkCocoon)  < 18 ||
        Zeny < 25000) close;
    inventoryplace SorcererRobe, 1;
    next;
    select
        l("Yes, I have all that here."),
        l("Maybe another time.");
    mes "";
    if (@menu == 2) {
        mesn;
        mesq l("Then stop wasting my time, you good-for-nothing old geezer!");
        close;
    }
    Zeny -= 25000;
    delitem CottonCloth, 12;
    delitem WolvernPelt, 1;
    delitem WhiteFur, 6;
    delitem SilkCocoon, 18;
    getitem SorcererRobe, 1;
    mesn;
    mesq l("Here, you can have this one which I set aside because it had a fabrication error. Being made by me, even this imperfect piece is still better than you lame, arrogant adventurers deserve, but a fair price and a fair market are colloraries. I shall not be seen as a scammer. Now get out of here!");
    close;

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