@@ -211,19 +211,19 @@ local googol_play = {
211211 atlas = " atlasepic" ,
212212 soul_pos = { x = 10 , y = 0 , extra = { x = 4 , y = 0 } },
213213 loc_vars = function (self , info_queue , card )
214+ local num , denom = SMODS .get_probability_vars (card , 1 , card and card .ability .extra .odds or self .config .extra .odds )
214215 return {
215216 vars = {
216- cry_prob ( card . ability . cry_prob , card . ability . extra . odds , card . ability . cry_rigged ) ,
217- card . ability . extra . odds ,
217+ num ,
218+ denom ,
218219 number_format (card .ability .extra .Xmult ),
219220 },
220221 }
221222 end ,
222223 calculate = function (self , card , context )
223224 if
224225 context .joker_main
225- and pseudorandom (" cry_googol_play" )
226- < cry_prob (card .ability .cry_prob , card .ability .extra .odds , card .ability .cry_rigged ) / card .ability .extra .odds
226+ and SMODS .pseudorandom_element (card , " cry_googol_play" , 1 , card and card .ability .extra .odds or self .config .extra .odds )
227227 then
228228 return {
229229 message = localize ({
@@ -877,10 +877,11 @@ local boredom = {
877877 cost = 14 ,
878878 blueprint_compat = true ,
879879 loc_vars = function (self , info_queue , card )
880+ local num , denom = SMODS .get_probability_vars (card , 1 , card and card .ability .extra .odds or self .config .extra .odds )
880881 return {
881882 vars = {
882- cry_prob ( card . ability . cry_prob , card . ability . extra . odds , card . ability . cry_rigged ) ,
883- card . ability . extra . odds ,
883+ num ,
884+ denom
884885 },
885886 }
886887 end ,
@@ -892,9 +893,7 @@ local boredom = {
892893 and not (context .other_card .ability and context .other_card .ability .name == " cry-Boredom" )
893894 then
894895 if
895- pseudorandom (" cry_boredom_joker" )
896- < cry_prob (card .ability .cry_prob , card .ability .extra .odds , card .ability .cry_rigged )
897- / card .ability .extra .odds
896+ SMODS .pseudorandom_element (card , " cry_boredom_joker" , 1 , card and card .ability .extra .odds or self .config .extra .odds )
898897 then
899898 return {
900899 message = localize (" k_again_ex" ),
@@ -908,8 +907,7 @@ local boredom = {
908907 if
909908 context .repetition
910909 and context .cardarea == G .play
911- and pseudorandom (" cry_boredom_card" )
912- < cry_prob (card .ability .cry_prob , card .ability .extra .odds , card .ability .cry_rigged ) / card .ability .extra .odds
910+ and SMODS .pseudorandom_element (card , " cry_boredom_card" , 1 , card and card .ability .extra .odds or self .config .extra .odds )
913911 then
914912 return {
915913 message = localize (" k_again_ex" ),
@@ -1470,10 +1468,10 @@ local bonusjoker = {
14701468 enhancement_gate = " m_bonus" ,
14711469 loc_vars = function (self , info_queue , card )
14721470 info_queue [# info_queue + 1 ] = G .P_CENTERS .m_bonus
1471+ local num , denom = SMODS .get_probability_vars (card , 1 , card and card .ability .extra .odds or self .config .extra .odds )
14731472 return {
14741473 vars = {
1475- cry_prob (card .ability .cry_prob , card .ability .extra .odds , card .ability .cry_rigged ),
1476- card .ability .extra .odds ,
1474+ num , denom ,
14771475 number_format (card .ability .extra .add ),
14781476 },
14791477 }
@@ -1483,8 +1481,7 @@ local bonusjoker = {
14831481 if context .individual and context .cardarea == G .play then
14841482 if SMODS .has_enhancement (context .other_card , " m_bonus" ) then
14851483 if
1486- pseudorandom (" bonusjoker" )
1487- < cry_prob (card .ability .cry_prob , card .ability .extra .odds , card .ability .cry_rigged ) / card .ability .extra .odds
1484+ SMODS .pseudorandom_probability (card , " bonusjoker" , 1 , card and card .ability .extra .odds or self .config .extra .odds )
14881485 and card .ability .immutable .check < 2
14891486 and not context .retrigger_joker
14901487 then
@@ -1579,10 +1576,11 @@ local multjoker = {
15791576 loc_vars = function (self , info_queue , card )
15801577 info_queue [# info_queue + 1 ] = G .P_CENTERS .m_mult
15811578 info_queue [# info_queue + 1 ] = G .P_CENTERS .c_cryptid
1579+ local num , denom = SMODS .get_probability_vars (card , 1 , card and card .ability .extra .odds or self .config .extra .odds )
15821580 return {
15831581 vars = {
1584- cry_prob ( card . ability . cry_prob , card . ability . extra . odds , card . ability . cry_rigged ) ,
1585- card . ability . extra . odds ,
1582+ num ,
1583+ denom
15861584 },
15871585 }
15881586 end ,
@@ -1594,9 +1592,7 @@ local multjoker = {
15941592 and # G .consumeables .cards + G .GAME .consumeable_buffer < G .consumeables .config .card_limit
15951593 then
15961594 if
1597- pseudorandom (" multjoker" )
1598- < cry_prob (card .ability .cry_prob , card .ability .extra .odds , card .ability .cry_rigged )
1599- / card .ability .extra .odds
1595+ SMODS .pseudorandom_probability (card , " multjoker" , 1 , card and card .ability .extra .odds or self .config .extra .odds )
16001596 then
16011597 G .GAME .consumeable_buffer = G .GAME .consumeable_buffer + 1
16021598 G .E_MANAGER :add_event (Event ({
0 commit comments