summaryrefslogtreecommitdiff
path: root/npc/015-2/ben.txt
blob: d64a9619f8e814665e9db8ec103b8d5b4f0f9a1f (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
// TMW2 Scripts.
// Author:
//    Saulc
//    Jesusalva
// Description:
//    Ben Parkison invites players to the TMW2 Project
//    Part of the THIEF/MERCHANT branches

015-2,269,172,0	script	Ben Parkison	NPC_MOUBOO,{
    if (JobLevel > 20 && MERC_RANK == 0) goto L_Quest;

L_Intro:
    mesn;
    mesq l("Hey newbie... I am a dangerous bandit.");
    next;
    mesq l("Yes, I am a mouboo. Why? Can't a mouboo be a dangerous bandit?!");
    next;
    mesq l("Anyway, you can check our [@@https://gitlab.com/TMW2/Docs/wikis/home|Wiki@@] to find awesome stuff!");
    mesc l("(Even bandits doesn't breaks the rules. To see the rules, use ##B@rules##b.)");
    next;
    mesq l("You can even join the project there. Contributors are greatly appreciated! %%N");
    close;

L_Quest:
    if (THIEF_RANK == 0)
        goto L_Recruit;
    mesn;
    mesq l("Hello there, @@ the @@.", strcharinfo(0), thiefrank());
    if (THIEF_RANK == 5) goto L_Menu;
    mesq l("I see you have collected some experience. Let me try to rank you up!");
    next;
    if (THIEF_EXP > (THIEF_RANK*2)**5) {
        THIEF_EXP-=(THIEF_RANK*2)**5;
        THIEF_EXP=(THIEF_EXP/20); // Penalty for postponing rank up (you keep 5%)
        THIEF_RANK+=1;
        mesn;
        mesq l("Congrats! You rank up! You are now a(n) @@!", thiefrank());
        if (THIEF_RANK == 2) goto L_Rank2;
        if (THIEF_RANK == 3) goto L_Rank3;
    } else {
        mesn;
        mesq l("Well, you need more experience. Keep trying!");
        mesc l("You may obtain Thief Exp by using @@.", getitemlink(Lockpicks));
    }
    goto L_Menu;
    close;

L_Recruit:
    mesn;
    mesq l("You seem to be doing some money. Would you consider fighting for your own greed, or even be a Robin-Hood-of-sorts, stealing from the rich?");
    //mesc l("Notice: If you join the ##BBandits Guild##b now, you WON'T BE ABLE to be a merchant police later!"), 1;
    mesc l("Note: You won't be able to leave the class later."), 1;
    next;
    if (askyesno() == ASK_YES) {
        THIEF_EXP=0;
        THIEF_RANK=1;
        mes "";
        mesn;
        mesq l("Welcome to the ##BThieves Guild##b! Follow those with higher rank than you, and happy stealing!");
        mesc l("You've learned how to use @@. Simple locks can now be broken.", getitemlink(Lockpicks));
    } else {
        goto L_Intro;
    }
    close;

// Learn STEAL
L_Rank2:
    skill(TF_STEAL,1,0);
    next;
    mesn;
    mesq l("Now, you'll learn a thief trick! This one allows you to steal drops from monsters! Ka-pow! Amazing!");
    next;
    mesn;
    mesq l("You must be close to it, and stealing won't change drops! If you fail, just try again! Good luck!");
    close;

// Learn INCCARRY
L_Rank3:
    skill(ALL_INCCARRY,1,0);
    next;
    mesn;
    mesq l("Now, you'll learn a thief trick! What sort of thief loots so much that they get overweight penalty? That's not cool!");
    next;
    mesn;
    mesq l("You now gained two extra kilograms to your weight quota! Ka-pow, that's fantastic! Good luck!");
    close;

// Allow to level up thief skills
L_Menu:
    next;
    mesn;
    mesq l("Do you want me to teach you how to improve an existing skill with MAGIC? There are no better mages than Mouboos!");
    mesc l("You also need @@/@@ Mob Points to improve thief skills.", format_number(Mobpt), 1000);
    if (Mobpt < 1000)
        close;
    next;
    select
        rif(getskilllv(TF_STEAL), l("Improve Stealing to level ")+getskilllv(TF_STEAL)+1),
        rif(getskilllv(ALL_INCCARRY), l("Improve Max Weight to level ")+getskilllv(ALL_INCCARRY)+1),
        l("None at the moment.");
    mes "";
    // BlueCoral, {CrocClaw, OceanCrocClaw: Empty Box}, PlushroomBox
    switch (@menu) {
        case 1:
            if (!mlearn(TF_STEAL, 10, 1, BlueCoral, 6*getskilllv(TF_STEAL)))
                mesc l("You do not meet all requisites for this skill."), 1;
            else
                Mobpt-=1000;
            break;
        case 2:
            if (!mlearn(ALL_INCCARRY, 10, 1, BlueCoral, 9*getskilllv(ALL_INCCARRY)))
                mesc l("You do not meet all requisites for this skill."), 1;
            else
                Mobpt-=1000;
            break;
        case 3:
            close;
    }
    goto L_Menu;

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