Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions items/misc.lua
Original file line number Diff line number Diff line change
Expand Up @@ -835,7 +835,9 @@ local oversat = {
return Cryptid.misprintize_val(val, {
min = 2 * (G.GAME.modifiers.cry_misprint_min or 1),
max = 2 * (G.GAME.modifiers.cry_misprint_max or 1),
}, Cryptid.is_card_big(card))
},
Cryptid.is_card_big(card),
card.config.center.key)
end)
end
end
Expand Down Expand Up @@ -962,7 +964,7 @@ local glitched = {
min = 0.1 * (G.GAME.modifiers.cry_misprint_min or 1),
max = 10 * (G.GAME.modifiers.cry_misprint_max or 1),
type = "X",
}, Cryptid.is_card_big(card))
}, Cryptid.is_card_big(card), nil, card)
end)
end
end
Expand Down
25 changes: 13 additions & 12 deletions lib/misprintize.lua
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,12 @@ Cryptid.misprintize_value_cap = {
repetitions = 40,
}

function Cryptid.calculate_misprint(initial, min, max, grow_type, pow_level)
function Cryptid.calculate_misprint(initial, min, max, grow_type, pow_level, name)
local big_initial = (type(initial) ~= "table" and to_big(initial)) or initial
local big_min = (type(min) ~= "table" and to_big(min)) or min
local big_max = (type(max) ~= "table" and to_big(max)) or max

local grow = Cryptid.log_random(pseudoseed("cry_misprint" .. G.GAME.round_resets.ante), big_min, big_max)
local grow = Cryptid.log_random(pseudoseed('cry_misprint_' .. name), big_min, big_max)

local calc = big_initial
if not grow_type then
Expand Down Expand Up @@ -145,7 +145,7 @@ function Cryptid.misprintize_tbl(name, ref_tbl, ref_value, clear, override, stac

tbl[k] = Cryptid.sanity_check(
clear and Cryptid.base_values[name][k .. ref_value]
or cry_format(Cryptid.calculate_misprint(initial, min, max, grow_type, pow_level), "%.2g"),
or cry_format(Cryptid.calculate_misprint(initial, min, max, grow_type, pow_level, name), "%.2g"),
big
)
end
Expand Down Expand Up @@ -198,7 +198,7 @@ function Cryptid.misprintize_tbl(name, ref_tbl, ref_value, clear, override, stac
tbl[k][_k] = Cryptid.sanity_check(
clear and Cryptid.base_values[name][_k .. k]
or cry_format(
Cryptid.calculate_misprint(initial, min, max, grow_type, pow_level),
Cryptid.calculate_misprint(initial, min, max, grow_type, pow_level, name),
"%.2g"
),
big
Expand All @@ -210,7 +210,7 @@ function Cryptid.misprintize_tbl(name, ref_tbl, ref_value, clear, override, stac
ref_tbl[ref_value] = tbl
end
end
function Cryptid.misprintize_val(val, override, big, grow_type, pow_level)
function Cryptid.misprintize_val(val, override, big, grow_type, pow_level, name)
if is_number(val) then
val = Cryptid.sanity_check(
cry_format(
Expand All @@ -219,7 +219,8 @@ function Cryptid.misprintize_val(val, override, big, grow_type, pow_level)
override and override.min or G.GAME.modifiers.cry_misprint_min,
override and override.max or G.GAME.modifiers.cry_misprint_max,
grow_type,
pow_level
pow_level,
name
),
"%.2g"
),
Expand Down Expand Up @@ -315,7 +316,7 @@ function Cryptid.misprintize(card, override, force_reset, stack, grow_type, pow_
--card.cost = cry_format(card.cost / Cryptid.log_random(pseudoseed('cry_misprint'..G.GAME.round_resets.ante),override and override.min or G.GAME.modifiers.cry_misprint_min,override and override.max or G.GAME.modifiers.cry_misprint_max),"%.2f")
card.misprint_cost_fac = 1
/ Cryptid.log_random(
pseudoseed("cry_misprint" .. G.GAME.round_resets.ante),
pseudoseed('cry_misprint_' .. card.config.center.key),
override and override.min or G.GAME.modifiers.cry_misprint_min,
override and override.max or G.GAME.modifiers.cry_misprint_max
)
Expand Down Expand Up @@ -436,7 +437,7 @@ function Cryptid.manipulate(card, args)
--card.cost = cry_format(card.cost / Cryptid.log_random(pseudoseed('cry_misprint'..G.GAME.round_resets.ante),override and override.min or G.GAME.modifiers.cry_misprint_min,override and override.max or G.GAME.modifiers.cry_misprint_max),"%.2f")
card.misprint_cost_fac = 1
/ Cryptid.log_random(
pseudoseed("cry_misprint" .. G.GAME.round_resets.ante),
pseudoseed('cry_misprint_' .. card.config.center.key),
override and override.min or G.GAME.modifiers.cry_misprint_min,
override and override.max or G.GAME.modifiers.cry_misprint_max
)
Expand Down Expand Up @@ -510,17 +511,17 @@ function Cryptid.manipulate_table(card, ref_table, ref_value, args, tblkey)
end
end
if args.big ~= nil then
ref_table[ref_value][i] = Cryptid.manipulate_value(num, args, args.big, i)
ref_table[ref_value][i] = Cryptid.manipulate_value(num, args, args.big, i, card)
else
ref_table[ref_value][i] = Cryptid.manipulate_value(num, args, Cryptid.is_card_big(card), i)
ref_table[ref_value][i] = Cryptid.manipulate_value(num, args, Cryptid.is_card_big(card), i, card)
end
elseif i ~= "immutable" and type(v) == "table" and Cryptid.misprintize_value_blacklist[i] ~= false then
Cryptid.manipulate_table(card, ref_table[ref_value], i, args)
end
end
end

function Cryptid.manipulate_value(num, args, is_big, name)
function Cryptid.manipulate_value(num, args, is_big, name, card)
if args.func then
num = args.func(num, args, is_big, name)
else
Expand All @@ -529,7 +530,7 @@ function Cryptid.manipulate_value(num, args, is_big, name)
local big_min = to_big(args.min)
local big_max = to_big(args.max)
local new_value = Cryptid.log_random(
pseudoseed(args.seed or ("cry_misprint" .. G.GAME.round_resets.ante)),
pseudoseed(args.seed or ('cry_misprint_' .. card.config.center.key)),
big_min,
big_max
)
Expand Down