summaryrefslogtreecommitdiff
path: root/npc/functions/slot_machine.txt
blob: 4b7218130b6088104e9a4bd5cdd024619e063697 (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
// Slot Machine

function	script	SlotMachineSymbol	{
        switch (getarg(0)) {
        case 0:
            mesn "%%A";
            break;
        case 1:
            mesn "%%B";
            break;
        case 2:
            mesn "%%C";
            break;
        case 3:
            mesn "%%D";
            break;
        case 4:
            mesn "%%E";
            break;
        case 5:
            mesn "%%F";
            break;
        case 6:
            mesn "7";
            break;
        default:
            mesn "%%@";
            break;
        }
    }

function	script	SlotMachine	{
    mes "Pull the lever...";
    next;
    menu
        "Pull", L_Play,
        "Maybe later", L_close;

L_Play:
    if(countitem("CasinoCoins") < 1)
        goto L_NoCoin;
    delitem "CasinoCoins", 1;
    .@Temp1 = rand(7);
    .@Temp2 = rand(7);
    .@Temp3 = rand(7);
    //mes "Numbers: " + .@Temp1 + "/" + .@Temp2 + "/" + .@Temp3 + ".";
    symbol(.@Temp1);
    symbol(.@Temp2);
    symbol(.@Temp3);
    next;

    if (.@Temp1 != .@Temp2)
        goto L_Lost;
    if (.@Temp2 != .@Temp3)
        goto L_Lost;
    if (.@Temp1 != .@Temp3)
        goto L_Lost;
    if (CSN < 9 && rand(6) < CSN)
        goto L_Jackpot;
    mes "Congratulations! You won!";
    mes "You get 10 casino coins";
    getitem CasinoCoins, 10;
    if (CSN < 9)
        CSN+=1;
    goto L_close;

L_Jackpot:
    mes "Congratulations! You won!";
    mes "However, the slot machine";
    mes "do not give you the coins!";
    next;
    mes "[Staff]";
    mes "\"I apologize for this problem.";
    mes "I see you are a huge client of";
    mes "ours, so I'll give you a Monocle";
    mes "as a token of apology.\"";
    getitem Monocle, 1;
    CSN = 9;
    goto L_close;

L_Lost:
    mes "You lost!";
    goto L_close;

L_NoCoin:
    mes "Insert coin";
    goto L_close;

L_close:
    closeclientdialog;
    return;
}