summaryrefslogtreecommitdiff
path: root/npc/config/homunculus.txt
blob: 15b3fb6cddd98dc145dbd4543629cb37d5c78b12 (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
// TMW2 script
// Author: Jesusalva <admin@tmw2.org>
//
// Homunculus Evolution Configuration
// Defines what evolves to what and their tiers and all that...

function	script	HEC_GetTier	{
    switch (getarg(0, gethominfo(1))) {
    case 6001:
    case 6002:
    case 6003:
    case 6004:
    case 6005:
    case 6006:
    case 6007:
    case 6008:
        return 1;
    case 6020:
    case 6021:
    case 6022:
    case 6023:
        return 2;
    // Elli's case, or no homunculus found
    default:
        return -1;
    }
}


// Returns -1 if no evolution available, 0 if it is complex (wrong function), or ID
function	script	HEC_SimpleEvolve	{
    switch (getarg(0, gethominfo(1))) {
    case 6001:
    case 6005:
        return 6020;
    case 6004:
    case 6006:
        return 6021;
    case 6002:
    case 6003:
        return 6022;
    case 6007:
    case 6008:
        return 6023;
    // Tier 2 -> 3 are complex evolutions with two choices
    case 6020:
    case 6021:
    case 6022:
    case 6023:
        return 0;
    // No evolution available
    default:
        return -1;
    }
}

// Return the class name from DB
function	script	HEC_GetCName	{
    switch (getarg(0, gethominfo(1))) {
    case 6001:
        return l("Mage");
    case 6002:
        return l("Tanker");
    case 6003:
        return l("Agile");
    case 6004:
        return l("Strong");
    case 6005:
        return l("Lucky");
    case 6006:
        return l("Accurate");
    case 6007:
        return l("All Rounder");
    case 6008:
        return l("Superior Machine");
    case 6010:
        return l("Elanore");
    case 6020:
        return l("Ranger");
    case 6021:
        return l("Warrior");
    case 6022:
        return l("Stalwart");
    case 6023:
        return l("Paladin");
    // ???
    default:
        return l("ERROR");
    }
}