From ad24529beb3b325bcd257688ad39440a6df5ccbf Mon Sep 17 00:00:00 2001 From: Emik Date: Mon, 27 Jul 2026 19:58:41 +0200 Subject: [PATCH] Add bulk use for Afterimage --- manifest.json | 2 +- src/back.lua | 4 ++-- src/blind.lua | 8 ++++---- src/spectral.lua | 11 +++++++---- 4 files changed, 14 insertions(+), 11 deletions(-) diff --git a/manifest.json b/manifest.json index 2e91884..92b5254 100644 --- a/manifest.json +++ b/manifest.json @@ -3,7 +3,7 @@ "id": "Roland", "name": "Roland", "prefix": "Roland", - "version": "2.9.81", + "version": "2.9.82", "badge_colour": "8BE9FD", "display_name": "Roland", "main_file": "src/main.lua", diff --git a/src/back.lua b/src/back.lua index e225bfb..6ef0fec 100644 --- a/src/back.lua +++ b/src/back.lua @@ -80,10 +80,10 @@ back { pronouns = "any_all", config = {extra = {alt_times = 9, times = 3}}, attributes = {"passive", "boss_blind"}, - loc_vars = function(self, _, _) + loc_vars = function(self) return {vars = {self.config.extra.alt_times}} end, - apply = function(_, _) + apply = function() G.GAME.modifiers.Roland_blossom_deck = true end, calculate = function(self, b, context) diff --git a/src/blind.lua b/src/blind.lua index 49b7dd3..a9e71db 100644 --- a/src/blind.lua +++ b/src/blind.lua @@ -257,7 +257,7 @@ blind { boss = {min = 6}, boss_colour = HEX "bdaeccff", pronouns = "they_them", - collection_loc_vars = function(_) + collection_loc_vars = function() return { vars = {localize { type = "variable", @@ -265,7 +265,7 @@ blind { }}, } end, - loc_vars = function(_) + loc_vars = function() local _, name = common_rank() return {vars = {localize(name or "Ace", "ranks")}} end, @@ -319,7 +319,7 @@ blind { dollars = 5, defeat = disable_improbable, disable = disable_improbable, - set_blind = function(_) + set_blind = function() G.GAME.modifiers.Roland_improbable = true end, } @@ -380,7 +380,7 @@ function SMODS.current_mod:calculate(context) :map(f.index_into(G.P_CENTERS)) :where("config.extra.hand_type", context.scoring_name) :pun "SMODS.Voucher" - :each(function(v, _) + :each(function(v) SMODS.smart_level_up_hand(nil, v.config.extra.hand_type, false, v.config.extra.amount) end) diff --git a/src/spectral.lua b/src/spectral.lua index 8bc458d..acedea3 100644 --- a/src/spectral.lua +++ b/src/spectral.lua @@ -40,14 +40,17 @@ spectral { can_use = function() return next(G.hand.cards) and u() end, - use = function(_, card, _) + use = function(self, card) + self:bulk_use(card, card.area, nil, 1) + end, + bulk_use = function(_, card, _, _, number) local cards = f(G.hand.cards):table() pseudoshuffle(cards, pseudoseed "RolandDual") - f(cards):take(card.ability.extra.amount):each(function(v) + f(cards):take(card.ability.extra.amount * number):each(function(v) local seal - for _ = 1, 64 do + for _ = 1, 38 do seal = SMODS.poll_seal {guaranteed = true} if seal ~= "Roland_glass" then @@ -135,7 +138,7 @@ spectral { local count = #Bakery_API.get_highlighted() return u() and count > 0 and count <= card.ability.extra.amount end, - use = function(_, _, _) + use = function() f(Bakery_API.get_highlighted()):each(function(v) v:set_seal "Roland_glass" end)