diff --git a/lovely.toml b/lovely.toml index 5a36942..df085a8 100644 --- a/lovely.toml +++ b/lovely.toml @@ -154,7 +154,6 @@ target = "card.lua" pattern = "math\\.floor\\(\\(G\\.GAME\\.dollars \\+ \\(G\\.GAME\\.dollar_buffer or 0\\)\\)/self\\.ability\\.extra\\.dollars\\)" position = "at" payload = "SMODS.Mods.Roland.bootstraps_mult(self)" -match_indent = true [[patches]] [patches.regex] @@ -177,3 +176,27 @@ pattern = "value = value + card.ability[property]" position = "at" payload = "value = value + (card.ability[property] or 0)" match_indent = true + +# [[patches]] +# [patches.pattern] +# target = '=[SMODS DebugPlus "debugplus/console.lua"]' +# pattern = "if toCheck == '/' or toCheck == 'kp/' then" +# position = "at" +# payload = "if toCheck == '/' or toCheck == 'kp/' or toCheck == 'f' then" +# match_indent = true + +# [[patches]] +# [patches.pattern] +# target = '=[SMODS DebugPlus "debugplus/console.lua"]' +# pattern = 'local cmdName = string.lower(string.gsub(inputText, "^(%S+).*", "%1"))' +# position = "at" +# payload = 'local cmdName = "eval"' +# match_indent = true + +# [[patches]] +# [patches.pattern] +# target = '=[SMODS DebugPlus "debugplus/console.lua"]' +# pattern = 'local rawArgs = string.gsub(inputText, "^%S+%s*(.*)", "%1")' +# position = "at" +# payload = 'local cmdName = inputText' +# match_indent = true diff --git a/manifest.json b/manifest.json index 705e193..6687bb6 100644 --- a/manifest.json +++ b/manifest.json @@ -3,7 +3,7 @@ "id": "Roland", "name": "Roland", "prefix": "Roland", - "version": "2.9.58", + "version": "2.9.59", "badge_colour": "8BE9FD", "display_name": "Roland", "main_file": "src/main.lua", diff --git a/src/lib/shared.lua b/src/lib/shared.lua index 678e444..7f02eca 100644 --- a/src/lib/shared.lua +++ b/src/lib/shared.lua @@ -13,6 +13,14 @@ local function add(v) return xop end + if G.P_BLINDS[v] then + G.from_boss_tag = true + G.GAME.perscribed_bosses = G.GAME.perscribed_bosses or {} + G.GAME.perscribed_bosses[G.GAME.round_resets.ante] = v + G.FUNCS.reroll_boss() + return G.P_BLINDS[v] + end + if not G.P_TAGS[v] then return SMODS.add_card {no_edition = true, key = v} end @@ -43,7 +51,9 @@ local function find(it) end local match = simplify(it) - local pool = f(G.P_CENTER_POOLS):any(f.chain(f.arg(2), simplify, f.eq(match))) + + local pool = match == "Blind" and G.P_BLINDS or + f(G.P_CENTER_POOLS):any(f.chain(f.arg(2), simplify, f.eq(match))) if type(pool) == "table" and next(pool) then return pseudorandom_element(pool, pseudoseed "Roland_c").key @@ -56,9 +66,9 @@ local function find(it) return f(G.localization.descriptions) :flatmap(flatten) :where(type, "table") - :where(f.chain(f.arg(2), f.index_into(G.P_CENTERS), "config")) :where(function(v, k) - return match == simplify(k) or match == simplify(v.name) + return ((G.P_CENTERS[k] or {}).config or G.P_BLINDS[k]) and + match == simplify(k) or match == simplify(v.name) end) :keys() :any()