summaryrefslogtreecommitdiff
path: root/npc/017-4/refine.txt
blob: 4c3e472d7cad865f46fb6af4c9cff2551e18758b (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
// TMW2/LoF scripts.
// Authors:
//    TMW-LoF Team
//    Jesusalva
// Description:
//    Refine and Repair broken equipment.
017-4,38,35,0	script	Fortiun	NPC_FORTIUN,{
    showavatar NPC_FORTIUN;
    @menu=0;
    do
    {
        refineMaster();
    } while (1);

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

017-4,23,23,0	script	Fusus	NPC_FUSUS,{
    showavatar NPC_FUSUS;
    select
        l("Repair items"),
        l("Compact forge stones");
    mes "";
    if (@menu == 2)
        goto L_Fusus;
    @menu=0;
    do
    {
        repairMaster();
    } while (getbrokencount() >= 0);

L_Fusus:
    inventoryplace Iten, 1;
    mesn;
    mesq l("I can fuse an @@ and 20 @@, besides @@ GP, into 3~5 @@.", getitemlink(CopperIngot), getitemlink(SilkCocoon), 500, getitemlink(Wurtizite));
    mesc l("5 @@ can be fused in a @@", getitemlink(Wurtizite), getitemlink(Graphene));
    mesc l("5 @@ can be fused in a @@", getitemlink(Graphene), getitemlink(Arcanum));
    select
        rif(Zeny >= 500, l("I want the Wurtizite")),
        rif(countitem(Wurtizite) >= 5, l("I want Graphene")),
        rif(countitem(Graphene) >= 5, l("I want Arcanum")),
        l("Do nothing");
    mes "";
    switch (@menu) {
    case 4:
        close;
    case 1:
        if (!transcheck(CopperIngot, 1, SilkCocoon, 20))
            close;
        Zeny -= 500;
        getitem Wurtizite, any(3,3,4,4,4,5); // 3: ~33%. 4: =50%. 5: ~17%. AVG: 3.8
        break;
    case 2:
        delitem Wurtizite, 5;
        getitem Graphene, 1;
        break;
    case 3:
        delitem Graphene, 5;
        getitem Arcanum, 1;
        break;
    }
    mesc l("Done!"), 2;
    next;
    goto L_Fusus;

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