diff options
Diffstat (limited to 'npc/custom/etc/lottery.txt')
-rw-r--r-- | npc/custom/etc/lottery.txt | 452 |
1 files changed, 0 insertions, 452 deletions
diff --git a/npc/custom/etc/lottery.txt b/npc/custom/etc/lottery.txt deleted file mode 100644 index 13d60ec2f..000000000 --- a/npc/custom/etc/lottery.txt +++ /dev/null @@ -1,452 +0,0 @@ -//===== Hercules Script ====================================== -//= Lottery -//===== By: ================================================== -//= acky -//===== Current Version: ===================================== -//= 1.2.1a -//===== Description: ========================================= -//= Daily lottery draw -//===== Additional Comments: ================================= -//= Numbers drawn daily (Time is configured line 29) -//= *Added GM-Riggability -//= *Ability to renew ticket -//= *Improved interface -//= *Fixed minor bug where first load didn't work. -//= 1.2.1a fix due to new script engine -//============================================================ - -- script lotterygenerator FAKE_NPC,{ -OnInit: - set $L_TicketPrice,4750; // TICKET COST - set $L_Prize_Money,5000000; // JACKPOT AMOUNT - set $L_Prize_Money_Small,1000000; // SECONDARY PRIZE - if ($LID == 0) goto L_GenID; - end; - - //Modify for own time -OnClock2045: - // CHECKS IF LOTTERY IS RIGGED - if ($L_Rigged == 1) goto L_Rigged_Draw; - // GENERATES RANDOM NUMBERS 1-40 -Pick1: - set $LW1,rand (1,40); - -Pick2: - set $LW2,rand (1,40); - if ($LW2 == $LW1) goto Pick2; - -Pick3: - set $LW3,rand (1,40); - if ($LW3 == $LW2) goto Pick3; - if ($LW3 == $LW1) goto Pick3; - -Pick4: - set $LW4,rand (1,40); - if ($LW4 == $LW2) goto Pick4; - if ($LW4 == $LW1) goto Pick4; - if ($LW4 == $LW3) goto Pick4; - -Pick5: - set $LW5,rand (1,40); - if ($LW5 == $LW1) goto Pick5; - if ($LW5 == $LW2) goto Pick5; - if ($LW5 == $LW3) goto Pick5; - if ($LW5 == $LW4) goto Pick5; - -Pick6: - set $LW6,rand (1,40); - if ($LW6 == $LW1) goto Pick6; - if ($LW6 == $LW2) goto Pick6; - if ($LW6 == $LW3) goto Pick6; - if ($LW6 == $LW4) goto Pick6; - if ($LW6 == $LW5) goto Pick6; - - // BROADCASTS DRAW -L_Broadcast: - announce "Lottery: Welcome to tonight's lotto draw!",8; - announce "The numbers are as follows: [" + $LW1 + "] [" + $LW2 + "] [" + $LW3 + "] [" + $LW4 + "] [" + $LW5 + "] [" + $LW6 + "]",8; - announce "Congratulations to the winners of tonight!",8; - - // GENERATES DRAW ID CODE -L_GenID: - set $LID2,$LID; - // SETS TOMORROW'S ID NUMBER - set $LID,rand (100000,999999); - end; - - // SETS DRAW TO RIGGED NUMBERS -L_Rigged_Draw: - set $LW1,$LR1; - set $LW2,$LR2; - set $LW3,$LR3; - set $LW4,$LR4; - set $LW5,$LR5; - set $LW6,$LR6; - set $L_Rigged,0; - goto L_Broadcast; -} - -prontera,141,182,5 script Lottery 1_F_ORIENT_02,{ -L_Begin: - mes "[Lottery]"; - mes "Winning Lotto Numbers ("+$LID2+"):"; - mes "^0000FF[" + $LW1 + "] [" + $LW2 + "] [" + $LW3 + "] [" + $LW4 + "] [" + $LW5 + "] [" + $LW6 + "]^000000"; - if ($LID > 99999) mes "Your Ticket ("+#LID+"):"; - if ($LID > 99999) mes "^FF0000[" + #LW1 + "] [" + #LW2 + "] [" + #LW3 + "] [" + #LW4 + "] [" + #LW5 + "] [" + #LW6 + "]^000000"; - mes "Next Draw-ID: ^FF0000" + $LID + "^000000."; - next; - if (getgmlevel() > 90) goto L_GM; - menu "Claim Prize",L_Claim,"Buy New Ticket",L_Buy,"Cancel",L_Cancel; - -// PURCHASE TICKET -L_Buy: - if (#LID == $LID && #L1 != 0) goto L_DoubleTicket; - mes "[Lottery]"; - mes "Tickets cost ^0000FF" + $L_TicketPrice + "z^000000."; - mes "The Jackpot is ^FF0000" + $L_Prize_Money + "z^000000."; - next; - menu "Buy Ticket",-,"Cancel",L_Cancel; - if (Zeny < $L_TicketPrice) goto L_NoZeny; - Zeny -= $L_TicketPrice; - mes "[Lottery]"; - mes "Would you like your numbers hand picked or computer generated?"; - next; - menu "Computer Generated",L_ComputerGen,"Hand Picked",L_HandPick,"Renew Ticket",L_Renew; - -// RENEW LAST TICKET -L_Renew: - if ($LID < 99999) goto L_Invalid; - set #LID,$LID; - goto L_Confirm2; - -L_ComputerGen: -// SELECTS RANDOM NUMBERS - set @L1,0; - set @L2,0; - set @L3,0; - set @L4,0; - set @L5,0; - set @L6,0; -Pick1: - set @L1,rand (1,40); -Pick2: - set @L2,rand (1,40); - if (@L2 == @L1) goto Pick2; -Pick3: - set @L3,rand (1,40); - if (@L3 == @L2) goto Pick3; - if (@L3 == @L1) goto Pick3; -Pick4: - set @L4,rand (1,40); - if (@L4 == @L2) goto Pick4; - if (@L4 == @L1) goto Pick4; - if (@L4 == @L3) goto Pick4; -Pick5: - set @L5,rand (1,40); - if (@L5 == @L1) goto Pick5; - if (@L5 == @L2) goto Pick5; - if (@L5 == @L3) goto Pick5; - if (@L5 == @L4) goto Pick5; -Pick6: - set @L6,rand (1,40); - if (@L6 == @L1) goto Pick6; - if (@L6 == @L2) goto Pick6; - if (@L6 == @L3) goto Pick6; - if (@L6 == @L4) goto Pick6; - if (@L6 == @L5) goto Pick6; - mes "[Lottery]"; - mes "The computer has selected the following numbers:"; - mes "^0000FF" + @L1 + " " + @L2 + " " + @L3 + " " + @L4 + " " + @L5 + " " + @L6 + "^000000"; - next; - menu "Confirm",L_Confirm,"Re-Generate",L_ComputerGen; - -// HAND PICK LOTTERY NUMBERS -L_HandPick: - mes "[Lottery]"; - mes "Please pick your numbers (1-40):"; - set @L1,0; - set @L2,0; - set @L3,0; - set @L4,0; - set @L5,0; - set @L6,0; -Input1: - input @L1; - if (@L1 < 1 || @L1 > 40) goto Input1; - mes @L1; -Input2: - input @L2; - if (@L2 < 1 || @L2 > 40) goto Input2; - if (@L2 == @L1) goto Input2; - mes @L2; -Input3: - input @L3; - if (@L3 < 1 || @L3 > 40) goto Input3; - if (@L3 == @L1) goto Input3; - if (@L3 == @L2) goto Input3; - mes @L3; -Input4: - input @L4; - if (@L4 < 1 || @L4 > 40) goto Input4; - if (@L4 == @L1) goto Input4; - if (@L4 == @L2) goto Input4; - if (@L4 == @L3) goto Input4; - mes @L4; -Input5: - input @L5; - if (@L5 < 1 || @L5 > 40) goto Input5; - if (@L5 == @L1) goto Input5; - if (@L5 == @L2) goto Input5; - if (@L5 == @L3) goto Input5; - if (@L5 == @L4) goto Input5; - mes @L5; -Input6: - input @L6; - if (@L6 < 1 || @L6 > 40) goto Input6; - if (@L6 == @L1) goto Input6; - if (@L6 == @L2) goto Input6; - if (@L6 == @L3) goto Input6; - if (@L6 == @L4) goto Input6; - if (@L6 == @L5) goto Input6; - mes @L6; - next; - mes "[Lottery]"; - mes "Your numbers are:"; - mes "^0000FF" + @L1 + " " + @L2 + " " + @L3 + " " + @L4 + " " + @L5 + " " + @L6 + "^000000"; - next; - menu "Confirm",L_Confirm,"Re-Pick",L_HandPick; - -L_Confirm: - set #LW1,@L1; - set #LW2,@L2; - set #LW3,@L3; - set #LW4,@L4; - set #LW5,@L5; - set #LW6,@L6; - set #LID,$LID; -L_Confirm2: - mes "[Lottery]"; - mes "The live broadcasted draw is at 9pm."; - mes "You can claim your ticket between then and the next draw."; - next; - mes "[Lottery]"; - mes "Good luck!"; - close; - -L_Claim: - // CHECKS TICKET VALIDILITY - if (#LID != $LID2) goto L_Invalid; - // CHECKS HOW MANY NUMBERS MATCHED - set @LPrize,0; - if (#LW1 == $LW1) set @LPrize,@LPrize+1; - if (#LW1 == $LW2) set @LPrize,@LPrize+1; - if (#LW1 == $LW3) set @LPrize,@LPrize+1; - if (#LW1 == $LW4) set @LPrize,@LPrize+1; - if (#LW1 == $LW5) set @LPrize,@LPrize+1; - if (#LW1 == $LW6) set @LPrize,@LPrize+1; - if (#LW2 == $LW1) set @LPrize,@LPrize+1; - if (#LW2 == $LW2) set @LPrize,@LPrize+1; - if (#LW2 == $LW3) set @LPrize,@LPrize+1; - if (#LW2 == $LW4) set @LPrize,@LPrize+1; - if (#LW2 == $LW5) set @LPrize,@LPrize+1; - if (#LW2 == $LW6) set @LPrize,@LPrize+1; - if (#LW3 == $LW1) set @LPrize,@LPrize+1; - if (#LW3 == $LW2) set @LPrize,@LPrize+1; - if (#LW3 == $LW3) set @LPrize,@LPrize+1; - if (#LW3 == $LW4) set @LPrize,@LPrize+1; - if (#LW3 == $LW5) set @LPrize,@LPrize+1; - if (#LW3 == $LW6) set @LPrize,@LPrize+1; - if (#LW4 == $LW1) set @LPrize,@LPrize+1; - if (#LW4 == $LW2) set @LPrize,@LPrize+1; - if (#LW4 == $LW3) set @LPrize,@LPrize+1; - if (#LW4 == $LW4) set @LPrize,@LPrize+1; - if (#LW4 == $LW5) set @LPrize,@LPrize+1; - if (#LW4 == $LW6) set @LPrize,@LPrize+1; - if (#LW5 == $LW1) set @LPrize,@LPrize+1; - if (#LW5 == $LW2) set @LPrize,@LPrize+1; - if (#LW5 == $LW3) set @LPrize,@LPrize+1; - if (#LW5 == $LW4) set @LPrize,@LPrize+1; - if (#LW5 == $LW5) set @LPrize,@LPrize+1; - if (#LW5 == $LW6) set @LPrize,@LPrize+1; - if (#LW6 == $LW1) set @LPrize,@LPrize+1; - if (#LW6 == $LW2) set @LPrize,@LPrize+1; - if (#LW6 == $LW3) set @LPrize,@LPrize+1; - if (#LW6 == $LW4) set @LPrize,@LPrize+1; - if (#LW6 == $LW5) set @LPrize,@LPrize+1; - if (#LW6 == $LW6) set @LPrize,@LPrize+1; - - if (@LPrize == 6) goto LWinBig; - if (@LPrize > 3 && @LPrize < 6) goto LWinSmall; - -// NO WINNER - mes "[Lottery]"; - mes "Bad luck, it appears you do not hold a winning ticket."; - next; - mes "[Lottery]"; - mes "Better luck next time!."; - close; - -// MATCHED ALL SIX -LWinBig: - mes "[Lottery]"; - mes "You have matched all six numbers!"; - mes "Jackpot!"; - mes "You've won ^0000FF" + $L_Prize_Money + "z^000000."; - Zeny += $L_Prize_Money; - announce "Lottery: " + strcharinfo(0) + " has won the JACKPOT of " + $L_Prize_Money + "z!",8; - set #LID,0; - close; - -// MATCHED AT LEAST 4 -LWinSmall: - mes "[Lottery]"; - mes "You have matched at least 4 numbers!"; - mes "You've won ^0000FF" + $L_Prize_Money_Small + "z^000000."; - Zeny += $L_Prize_Money_Small; - announce "Lottery: " + strcharinfo(0) + " has won a prize of " + $L_Prize_Money_Small + "z!",8; - set #LID,0; - close; - -// NO ZENY -L_NoZeny: - mes "[Lottery]"; - mes "You can't afford a lottery ticket."; - close; - -// INVALID TICKET -L_Invalid: - mes "[Lottery]"; - mes "I'm sorry but it appears that you have an invalid ticket."; - close; - -// DOUBLE TICKET -L_DoubleTicket: - mes "[Lottery]"; - mes "It appears that you already have a ticket for today."; - mes "You may only purchase one ticket per draw."; - close; - -L_Cancel: - mes "[Lottery]"; - mes "Come back soon!"; - close; - -// GM MENU (Lets you manually do draws) -L_GM: - menu "Claim Prize",L_Claim,"Buy New Ticket",L_Buy,"[GM]Do Draw Now",-,"[GM]Rig the Lottery",L_GM_Rig,"Cancel",L_Cancel; - - // CHECKS IF LOTTERY IS RIGGED - if ($L_Rigged == 1) goto L_Rigged_Draw; - // GENERATES RANDOM NUMBERS 1-40 -GMPick1: - set $LW1,rand (1,40); - -GMPick2: - set $LW2,rand (1,40); - if ($LW2 == $LW1) goto GMPick2; - -GMPick3: - set $LW3,rand (1,40); - if ($LW3 == $LW2) goto GMPick3; - if ($LW3 == $LW1) goto GMPick3; - -GMPick4: - set $LW4,rand (1,40); - if ($LW4 == $LW2) goto GMPick4; - if ($LW4 == $LW1) goto GMPick4; - if ($LW4 == $LW3) goto GMPick4; - -GMPick5: - set $LW5,rand (1,40); - if ($LW5 == $LW1) goto GMPick5; - if ($LW5 == $LW2) goto GMPick5; - if ($LW5 == $LW3) goto GMPick5; - if ($LW5 == $LW4) goto GMPick5; - -GMPick6: - set $LW6,rand (1,40); - if ($LW6 == $LW1) goto GMPick6; - if ($LW6 == $LW2) goto GMPick6; - if ($LW6 == $LW3) goto GMPick6; - if ($LW6 == $LW4) goto GMPick6; - if ($LW6 == $LW5) goto GMPick6; - -// BROADCASTS DRAW -L_Broadcast: - announce "Lottery: Welcome to the special GM's lotto draw!",8; - announce "The numbers are as follows: [" + $LW1 + "] [" + $LW2 + "] [" + $LW3 + "] [" + $LW4 + "] [" + $LW5 + "] [" + $LW6 + "]",8; - announce "Congratulations to the winners!",8; - -// GENERATES DRAW ID CODE -L_GenID: - set $LID2,$LID; - // SETS TOMORROW'S ID NUMBER - set $LID,rand (100000,999999); - close; - -// SETS DRAW TO RIGGED NUMBERS -L_Rigged_Draw: - set $LW1,$LR1; - set $LW2,$LR2; - set $LW3,$LR3; - set $LW4,$LR4; - set $LW5,$LR5; - set $LW6,$LR6; - set $L_Rigged,0; - goto L_Broadcast; - -// ALLOWS GM TO DO A RIGGED DRAW -L_GM_Rig: - mes "[Lottery]"; - mes "Please pick your numbers (1-40):"; - set $LR1,0; - set $LR2,0; - set $LR3,0; - set $LR4,0; - set $LR5,0; - set $LR6,0; -GMInput1: - input $LR1; - if ($LR1 < 1 || $LR1 > 40) goto GMInput1; - mes $LR1; -GMInput2: - input $LR2; - if ($LR2 < 1 || $LR2 > 40) goto GMInput2; - if ($LR2 == $LR1) goto GMInput2; - mes $LR2; -GMInput3: - input $LR3; - if ($LR3 < 1 || $LR3 > 40) goto GMInput3; - if ($LR3 == $LR1) goto GMInput3; - if ($LR3 == $LR2) goto GMInput3; - mes $LR3; -GMInput4: - input $LR4; - if ($LR4 < 1 || $LR4 > 40) goto GMInput4; - if ($LR4 == $LR1) goto GMInput4; - if ($LR4 == $LR2) goto GMInput4; - if ($LR4 == $LR3) goto GMInput4; - mes $LR4; -GMInput5: - input $LR5; - if ($LR5 < 1 || $LR5 > 40) goto GMInput5; - if ($LR5 == $LR1) goto GMInput5; - if ($LR5 == $LR2) goto GMInput5; - if ($LR5 == $LR3) goto GMInput5; - if ($LR5 == $LR4) goto GMInput5; - mes $LR5; -GMInput6: - input $LR6; - if ($LR6 < 1 || $LR6 > 40) goto GMInput6; - if ($LR6 == $LR1) goto GMInput6; - if ($LR6 == $LR2) goto GMInput6; - if ($LR6 == $LR3) goto GMInput6; - if ($LR6 == $LR4) goto GMInput6; - if ($LR6 == $LR5) goto GMInput6; - mes $LR6; - next; - mes "[Lottery]"; - mes "Lottery rigged for next draw."; - set $L_Rigged,1; - close; -} |