Fix Frozen on Driver's License

This commit is contained in:
Emik 2026-06-04 23:33:18 +02:00
parent e8fcd6931a
commit ed250737ab
Signed by: emik
GPG key ID: 6B0CD72A5E503BDF
3 changed files with 40 additions and 4 deletions

View file

@ -86,6 +86,44 @@ payload = """if next(SMODS.find_card "j_Roland_misfortune") then
end""" end"""
match_indent = true match_indent = true
[[patches]]
[patches.pattern]
target = "card.lua"
pattern = """if self.ability.name == 'Throwback' then
self.ability.x_mult = 1 + G.GAME.skips*self.ability.extra
end
if self.ability.name == "Driver's License" then"""
position = "at"
payload = """if self.ability.name == 'Throwback' then
self.ability.x_mult = 1 + G.GAME.skips*self.ability.extra
end
if self.ability.name == "Driver's License" and not (self.edition and self.edition.Roland_frozen) then"""
match_indent = true
[[patches]]
[patches.pattern]
target = "card.lua"
pattern = """if self.ability.name == "Steel Joker" then"""
position = "at"
payload = """if self.ability.name == "Steel Joker" and not (self.edition and self.edition.Roland_frozen) then"""
match_indent = true
[[patches]]
[patches.pattern]
target = "card.lua"
pattern = """if self.ability.name == "Cloud 9" then"""
position = "at"
payload = """if self.ability.name == "Cloud 9" and not (self.edition and self.edition.Roland_frozen) then"""
match_indent = true
[[patches]]
[patches.pattern]
target = "card.lua"
pattern = """if self.ability.name == "Stone Joker" then"""
position = "at"
payload = """if self.ability.name == "Stone Joker" and not (self.edition and self.edition.Roland_frozen) then"""
match_indent = true
[[patches]] [[patches]]
[patches.regex] [patches.regex]
target = "card.lua" target = "card.lua"

View file

@ -3,7 +3,7 @@
"id": "Roland", "id": "Roland",
"name": "Roland", "name": "Roland",
"prefix": "Roland", "prefix": "Roland",
"version": "2.8.6", "version": "2.8.7",
"badge_colour": "8BE9FD", "badge_colour": "8BE9FD",
"display_name": "Roland", "display_name": "Roland",
"main_file": "src/main.lua", "main_file": "src/main.lua",

View file

@ -46,9 +46,7 @@ local function freeze(card)
---@param x T ---@param x T
---@return T ---@return T
local function copy(x) local function copy(x)
return type(x) == "table" and f(x):map(copy):where(function(v, k) return type(x) == "table" and f(x):map(copy):table() or x
return k ~= "nine_tally" or v ~= 0
end):table() or x
end end
if frozen_blocklist[(card.ability or {}).name] then if frozen_blocklist[(card.ability or {}).name] then