summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--npc/functions/clear_vars.txt1
-rw-r--r--npc/functions/slot_machine.txt69
2 files changed, 61 insertions, 9 deletions
diff --git a/npc/functions/clear_vars.txt b/npc/functions/clear_vars.txt
index a93d59ad..82ac931f 100644
--- a/npc/functions/clear_vars.txt
+++ b/npc/functions/clear_vars.txt
@@ -2,6 +2,7 @@
function script ClearVariables {
if (@login_event != 1) goto L_Deprecated;
+ // Remove old variables to new quest system
if (QL_VALON) {
setq CandorQuest_Valon, QL_VALON;
QL_VALON=0;
diff --git a/npc/functions/slot_machine.txt b/npc/functions/slot_machine.txt
index 7b8cd23d..4b721813 100644
--- a/npc/functions/slot_machine.txt
+++ b/npc/functions/slot_machine.txt
@@ -1,3 +1,33 @@
+// 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...";
@@ -10,21 +40,42 @@ 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 + ".";
+ .@Temp1 = rand(7);
+ .@Temp2 = rand(7);
+ .@Temp3 = rand(7);
+ //mes "Numbers: " + .@Temp1 + "/" + .@Temp2 + "/" + .@Temp3 + ".";
+ symbol(.@Temp1);
+ symbol(.@Temp2);
+ symbol(.@Temp3);
next;
- if(@Temp1 != @Temp2)
+ if (.@Temp1 != .@Temp2)
goto L_Lost;
- if(@Temp2 != @Temp3)
+ if (.@Temp2 != .@Temp3)
goto L_Lost;
- if(@Temp1 != @Temp3)
+ 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;
+ 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:
@@ -36,6 +87,6 @@ L_NoCoin:
goto L_close;
L_close:
- close2;
+ closeclientdialog;
return;
}