Advertisement
NeonJ

Cirom's Custom Slots - FINAL

Jul 2nd, 2012
218
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 6.20 KB | None | 0 0
  1. prizeamount = 5
  2. prizeA = 1
  3. prizeBBB = 10
  4. prizeBB = 2
  5. prizeC = 22
  6. prizeD = 64
  7. prizeE = 192
  8. detectside = "back"
  9. monside = "left"
  10. dispenserside = "top"
  11. stopperside = "right"
  12. showloser = true
  13. starrystuff = 0
  14.  
  15. mon = peripheral.wrap(monside)
  16. redstone.setOutput(stopperside,true)
  17. shell.run("clear",1)
  18. mon.clear()
  19. mon.setCursorPos(1,1)
  20. mon.write("* * * *")
  21. mon.setCursorPos(1,2)
  22. mon.write("INSERT ")
  23. mon.setCursorPos(1,3)
  24. mon.write("       ")
  25. mon.setCursorPos(1,4)
  26. mon.write("   COIN")
  27. mon.setCursorPos(1,5)
  28. mon.write("* * * *")
  29. print("Hold Control + T to terminate slots.")
  30.  
  31. function winner()
  32.     sleep(2)
  33.     cpayout = 0
  34.     if result4 == "X" then
  35.         prizeamount = prizeA
  36.         mon.setCursorPos(1,1)
  37.         mon.write("* XXX *")
  38.         mon.setCursorPos(1,5)
  39.         mon.write("* WIN *")
  40.     elseif result4 == "O" and result5 == "O" and result6 == "O" then
  41.         prizeamount = prizeBBB
  42.         mon.setCursorPos(1,1)
  43.         mon.write("* OOO *")
  44.         mon.setCursorPos(1,5)
  45.         mon.write("* WIN *")
  46.     elseif result4 == "O" and result5 == "O" then
  47.         prizeamount = prizeBB
  48.         mon.setCursorPos(1,1)
  49.         mon.write("* OO? *")
  50.         mon.setCursorPos(1,5)
  51.         mon.write("* WIN *")
  52.     elseif result4 == "$" then
  53.         prizeamount = prizeC
  54.         mon.setCursorPos(1,1)
  55.         mon.write("* $$$ *")
  56.         mon.setCursorPos(1,5)
  57.         mon.write("* WIN *")
  58.     elseif result4 == "7" then
  59.         prizeamount = prizeD
  60.         mon.setCursorPos(1,1)
  61.         mon.write("* 777 *")
  62.         mon.setCursorPos(1,5)
  63.         mon.write("* WIN *")
  64.     else
  65.         prizeamount = prizeE
  66.         mon.setCursorPos(1,1)
  67.         mon.write("JACKPOT")
  68.         mon.setCursorPos(1,5)
  69.         mon.write("* WIN *")
  70.         end
  71.     while cpayout < prizeamount do         
  72.         redstone.setOutput(dispenserside,true)
  73.         sleep(0.2)
  74.         redstone.setOutput(dispenserside,false)
  75.         sleep(0.2)
  76.         cpayout = cpayout +1
  77.     end
  78.     sleep(2)
  79. end
  80.  
  81. function slots()
  82.  
  83. rollsdone = 0
  84.     while rollsdone < 30 do        
  85.         result1 = math.random(1,100)
  86.         result1 = result1 - ".0"
  87.         result2 = math.random(1,100)
  88.         result2 = result2 - ".0"
  89.         result3 = math.random(1,100)
  90.         result3 = result3 - ".0"
  91.         result4 = math.random(1,100)
  92.         result4 = result4 - ".0"
  93.         result5 = math.random(1,100)
  94.         result5 = result5 - ".0"
  95.         result6 = math.random(1,100)
  96.         result6 = result6 - ".0"
  97.         result7 = math.random(1,100)
  98.         result7 = result7 - ".0"
  99.         result8 = math.random(1,100)
  100.         result8 = result8 - ".0"
  101.         result9 = math.random(1,100)
  102.         result9 = result9 - ".0"
  103.        
  104.         if result1 < 31 then result1 = "X"
  105.         elseif result1 < 56 then result1 = "O"
  106.         elseif result1 < 76 then result1 = "$"
  107.         elseif result1 < 91 then result1 = "7"
  108.         else result1 = "J" end
  109.         if result2 < 31 then result2 = "X"
  110.         elseif result2 < 56 then result2 = "O"
  111.         elseif result2 < 76 then result2 = "$"
  112.         elseif result2 < 91 then result2 = "7"
  113.         else result2 = "J" end
  114.         if result3 < 31 then result3 = "X"
  115.         elseif result3 < 56 then result3 = "O"
  116.         elseif result3 < 76 then result3 = "$"
  117.         elseif result3 < 91 then result3 = "7"
  118.         else result3 = "J" end
  119.         if result4 < 31 then result4 = "X"
  120.         elseif result4 < 56 then result4 = "O"
  121.         elseif result4 < 76 then result4 = "$"
  122.         elseif result4 < 91 then result4 = "7"
  123.         else result4 = "J" end
  124.         if result5 < 31 then result5 = "X"
  125.         elseif result5 < 56 then result5 = "O"
  126.         elseif result5 < 76 then result5 = "$"
  127.         elseif result5 < 91 then result5 = "7"
  128.         else result5 = "J" end
  129.         if result6 < 31 then result6 = "X"
  130.         elseif result6 < 56 then result6 = "O"
  131.         elseif result6 < 76 then result6 = "$"
  132.         elseif result6 < 91 then result6 = "7"
  133.         else result6 = "J" end
  134.         if result7 < 31 then result7 = "X"
  135.         elseif result7 < 56 then result7 = "O"
  136.         elseif result7 < 76 then result7 = "$"
  137.         elseif result7 < 91 then result7 = "7"
  138.         else result7 = "J" end
  139.         if result8 < 31 then result8 = "X"
  140.         elseif result8 < 56 then result8 = "O"
  141.         elseif result8 < 76 then result8 = "$"
  142.         elseif result8 < 91 then result8 = "7"
  143.         else result8 = "J" end
  144.         if result9 < 31 then result9 = "X"
  145.         elseif result9 < 56 then result9 = "O"
  146.         elseif result9 < 76 then result9 = "$"
  147.         elseif result9 < 91 then result9 = "7"
  148.         else result9 = "J" end
  149.        
  150.         term.setCursorPos(25,5)
  151.         mon.clear()
  152.         mon.setCursorPos(1,1)
  153.         mon.write("*******")
  154.         mon.setCursorPos(2,2)
  155.         mon.write(result1.."|"..result2.."|"..result3)
  156.         mon.setCursorPos(1,3)
  157.         mon.write(">"..result4.."|"..result5.."|"..result6.."<")
  158.         mon.setCursorPos(2,4)
  159.         mon.write(result7.."|"..result8.."|"..result9)
  160.         mon.setCursorPos(1,5)
  161.         mon.write("*******")
  162.         term.setCursorPos(1,3)
  163.         print("Debug Info:")
  164.         print("Results:   "..result1.."|"..result2.."|"..result3)
  165.         print("           "..result4.."|"..result5.."|"..result6)
  166.         print("           "..result7.."|"..result8.."|"..result9)
  167.         rollsdone = rollsdone + 1
  168.         sleep(rollsdone / 100)
  169.     end
  170.  
  171.     if result4 == result5 and result5 == result6 then
  172.         print("Detected win in middle row!")
  173.         winner()
  174.         os.reboot()
  175.     elseif result4 == "O" and result5 == "O" then
  176.         print("Detected win - cherry win!")
  177.         winner()
  178.         os.reboot()
  179.     else
  180.         print("There was No Match")
  181.         sleep(1)
  182.         mon.setCursorPos(1,1)
  183.         mon.write("* TRY *")
  184.         mon.setCursorPos(1,5)
  185.         mon.write(" AGAIN ")
  186.         sleep(2)
  187.         os.reboot()
  188.     end
  189.  
  190. end
  191.  
  192. local rRunning = true
  193.  
  194. while rRunning do
  195.   sleep(0.5)
  196.   local rEvent, param = os.pullEvent()
  197.   if rEvent == "redstone" then
  198.     if redstone.getInput(detectside) then
  199.       if redstone.getInput(detectside) == true then
  200.       redstone.setOutput(stopperside,false)
  201.       slots()
  202.       else
  203.         shell.run("clear",1)
  204.       end
  205.     end
  206.   end
  207. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement