diff --git a/assets/1x/charm.png b/assets/1x/charm.png index dd85c36..18fbc6e 100644 Binary files a/assets/1x/charm.png and b/assets/1x/charm.png differ diff --git a/assets/2x/back.png b/assets/2x/back.png index 81f19cb..bd18098 100644 Binary files a/assets/2x/back.png and b/assets/2x/back.png differ diff --git a/assets/2x/blind.png b/assets/2x/blind.png index 7b1ed3b..be06cd0 100644 Binary files a/assets/2x/blind.png and b/assets/2x/blind.png differ diff --git a/assets/2x/charm.png b/assets/2x/charm.png index 6c02919..acaad3a 100644 Binary files a/assets/2x/charm.png and b/assets/2x/charm.png differ diff --git a/assets/2x/icon.png b/assets/2x/icon.png index 12bb68b..0afc438 100644 Binary files a/assets/2x/icon.png and b/assets/2x/icon.png differ diff --git a/assets/2x/joker.png b/assets/2x/joker.png index 8ec82a3..840e539 100644 Binary files a/assets/2x/joker.png and b/assets/2x/joker.png differ diff --git a/assets/2x/seal.png b/assets/2x/seal.png index 75c39ee..6bdf2a4 100644 Binary files a/assets/2x/seal.png and b/assets/2x/seal.png differ diff --git a/assets/2x/spectral.png b/assets/2x/spectral.png index 3c9c80e..de66ba9 100644 Binary files a/assets/2x/spectral.png and b/assets/2x/spectral.png differ diff --git a/localization/en-us.lua b/localization/en-us.lua index b1e5d9e..067a155 100644 --- a/localization/en-us.lua +++ b/localization/en-us.lua @@ -26,10 +26,18 @@ return { }, }, BakeryCharm = { + BakeryCharm_Roland_cocacola = { + name = "coca cola phone", + text = {"Cards cannot", "be {C:attention}debuffed"}, + }, + BakeryCharm_Roland_hand = { + name = "hand phone", + text = {"{C:attention}Charms {}can", "be {C:attention}debuffed"}, + }, BakeryCharm_Roland_fat = { name = "fat i phone", text = { - "{C:attention}+#1# Booster Pack {}slots", + -- "{C:attention}+#1# Booster Pack {}slots", "All {C:attention}Booster Packs {}are {C:attention}Mega", "{C:inactive}(Whenever applicable)", }, diff --git a/src/charm.lua b/src/charm.lua index 55be624..fe5b3a3 100644 --- a/src/charm.lua +++ b/src/charm.lua @@ -34,58 +34,39 @@ local charm = (function() end)() charm { - key = "fat", + key = "hand", + pronouns = "he_him", +} + +charm { + key = "cocacola", pronouns = "he_they", - config = {extra = {mod = 1}}, - loc_vars = function(_, _, card) - return {vars = {card.ability.extra.mod}} - end, - equip = function(_, card) - SMODS.change_booster_limit(card.ability.extra.mod) - end, - unequip = function(card) - SMODS.change_booster_limit(-card.ability.extra.mod) - end, } -charm { - key = "flexible", - pronouns = "any_all", -} - -charm { - key = "wii", - pronouns = "they_them", - calculate = function(_, card, context) - if not context.skip_blind then - return - end - - local message = localize {type = "variable", key = "b_Roland_entering_shop"} - SMODS.calculate_effect({card = card, message = message, sound = "whoosh1"}, card) - - q(function() - G.blind_prompt_box = G.blind_prompt_box and G.blind_prompt_box:remove() - G.blind_select = G.blind_select and G.blind_select:remove() - G.round_eval = G.round_eval and G.round_eval:remove() - G.GAME.current_round.jokers_purchased = 0 - G.STATE = G.STATES.SHOP - G.GAME.shop_free = nil - G.GAME.shop_d6ed = nil - G.STATE_COMPLETE = false - play_sound("whoosh1", 1.33333, 0.8) - play_sound("whoosh1", 0.66666, 0.8) - end) - end, -} - -local orig_showman = SMODS.showman +local orig_debuff_card = SMODS.debuff_card ---@diagnostic disable-next-line: duplicate-set-field -function SMODS.showman(...) - return G.GAME.Bakery_charm == "BakeryCharm_Roland_flexible" or orig_showman(...) +function SMODS.debuff_card(...) + if G.GAME.Bakery_charm ~= "BakeryCharm_Roland_cocacola" then + return orig_debuff_card(...) + end end +charm { + key = "fat", + pronouns = "he_they", + -- config = {extra = {mod = 1}}, + -- loc_vars = function(_, _, card) + -- return {vars = {card.ability.extra.mod}} + -- end, + -- equip = function(_, card) + -- SMODS.change_booster_limit(card.ability.extra.mod) + -- end, + -- unequip = function(card) + -- SMODS.change_booster_limit(-card.ability.extra.mod) + -- end, +} + local orig_init = Card.init ---@diagnostic disable-next-line: duplicate-set-field @@ -115,3 +96,41 @@ function Card:init(X, Y, W, H, card, center, params, ...) self.Roland_no_mega = true return orig_init(self, X, Y, W, H, card, center, params, ...) end + +charm { + key = "flexible", + pronouns = "any_all", +} + +local orig_showman = SMODS.showman + +---@diagnostic disable-next-line: duplicate-set-field +function SMODS.showman(...) + return G.GAME.Bakery_charm == "BakeryCharm_Roland_flexible" or orig_showman(...) +end + +charm { + key = "wii", + pronouns = "they_them", + calculate = function(_, card, context) + if not context.skip_blind then + return + end + + local message = localize {type = "variable", key = "b_Roland_entering_shop"} + SMODS.calculate_effect({card = card, message = message, sound = "whoosh1"}, card) + + q(function() + G.blind_prompt_box = G.blind_prompt_box and G.blind_prompt_box:remove() + G.blind_select = G.blind_select and G.blind_select:remove() + G.round_eval = G.round_eval and G.round_eval:remove() + G.GAME.current_round.jokers_purchased = 0 + G.STATE = G.STATES.SHOP + G.GAME.shop_free = nil + G.GAME.shop_d6ed = nil + G.STATE_COMPLETE = false + play_sound("whoosh1", 1.33333, 0.8) + play_sound("whoosh1", 0.66666, 0.8) + end) + end, +}