mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-09 16:14:13 +00:00
Tweaks luck-related values for slots and lotto tickets (#32707)
* Update lotto.dm * Update slot_machine.dm * Update lotto.dm * Update slot_machine.dm * Update slot_machine.dm * Update lotto.dm * Update slot_machine.dm * Update slot_machine.dm * Update lotto.dm
This commit is contained in:
@@ -109,7 +109,9 @@
|
||||
//Take luck into account.
|
||||
if(spinner)
|
||||
var/spinnerluck = spinner.luck()
|
||||
var/jostlepower = rand(25,3000)
|
||||
var/jostlepower = 25
|
||||
for(var/i in 1 to 3)
|
||||
jostlepower = max(jostlepower, rand(25, i * 1000))
|
||||
var/jostles = min(round(abs(spinnerluck), jostlepower) / jostlepower, 1000)
|
||||
while(jostles)
|
||||
if(jostle(spinnerluck > 0))
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
var/winnings = 0
|
||||
var/list/prizelist = list(100000,50000,10000,5000,1000,500,250,100,50,20,10,5,4,3,2,1)
|
||||
var/list/problist = list(0.0001, 0.0002, 0.001, 0.002, 0.01, 0.02, 0.04, 0.2, 1, 2.5, 5, 10, 12.5, 17, 20, 25)
|
||||
var/tuning_value = 1/5 //Used to adjust expected values.
|
||||
|
||||
/obj/item/toy/lotto_ticket/New()
|
||||
..()
|
||||
@@ -16,14 +17,13 @@
|
||||
pixel_x = rand(-9, 9) * PIXEL_MULTIPLIER
|
||||
|
||||
/obj/item/toy/lotto_ticket/proc/scratch(var/input_prize_multiplier, var/mob/user)
|
||||
var/tuning_value = 1/5 //Used to adjust expected values.
|
||||
var/profit = 0
|
||||
var/luck = user?.luck()
|
||||
for(var/prize = 1 to problist.len)
|
||||
var/thisprob = problist[prize]
|
||||
//Take luck into account.
|
||||
if(user ? user.lucky_prob(thisprob, luckfactor = 1/5000, maxskew = 25, ourluck = luck) : prob(thisprob))
|
||||
profit = prizelist[prize]*input_prize_multiplier*tuning_value
|
||||
if(user ? user.lucky_prob(thisprob, luckfactor = 1/12000, maxskew = 49.9, ourluck = luck) : prob(thisprob))
|
||||
profit = prizelist[prize] * prize_multiplier * tuning_value
|
||||
return profit
|
||||
|
||||
//Flash code taken from Blinder
|
||||
@@ -102,23 +102,15 @@
|
||||
icon_state = "lotto_3"
|
||||
prize_multiplier = 50 //EV 45.50, ER -4.50
|
||||
|
||||
|
||||
//Emag card
|
||||
/obj/item/toy/lotto_ticket/supermatter_surprise
|
||||
name = "Supermatter Surprise lottery ticket"
|
||||
desc = "An extremely expensive scratch-off lottery ticket. Guaranteed win of up to 5,000,000 credits! Experimental film material - use at your own risk!"
|
||||
icon_state = "lotto_4"
|
||||
prize_multiplier = 50
|
||||
tuning_value = 1
|
||||
var/flashed = FALSE
|
||||
|
||||
/obj/item/toy/lotto_ticket/supermatter_surprise/scratch()
|
||||
var/input_prize_multiplier = 50
|
||||
var/profit = 0
|
||||
while(!profit)
|
||||
for(var/prize = 1 to problist.len)
|
||||
if(prob(problist[prize]))
|
||||
profit = prizelist[prize]*input_prize_multiplier
|
||||
return profit
|
||||
|
||||
/obj/item/toy/lotto_ticket/supermatter_surprise/attackby(obj/item/weapon/S, mob/user)
|
||||
..()
|
||||
if(!flashed)
|
||||
|
||||
Reference in New Issue
Block a user