diff options
-rw-r--r-- | npc/functions/clear_vars.txt | 1 | ||||
-rw-r--r-- | npc/functions/slot_machine.txt | 69 |
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; } |