Add new joker
|
Before Width: | Height: | Size: 55 KiB After Width: | Height: | Size: 55 KiB |
|
Before Width: | Height: | Size: 5.7 KiB After Width: | Height: | Size: 5.7 KiB |
|
Before Width: | Height: | Size: 82 KiB After Width: | Height: | Size: 82 KiB |
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 242 KiB After Width: | Height: | Size: 242 KiB |
|
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 71 KiB |
|
Before Width: | Height: | Size: 1 KiB After Width: | Height: | Size: 1 KiB |
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 4.3 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 79 KiB After Width: | Height: | Size: 79 KiB |
|
|
@ -339,6 +339,14 @@ return {
|
|||
"{C:attention}#2#",
|
||||
},
|
||||
},
|
||||
j_Roland_verdant = {
|
||||
name = "Verdant Leaf",
|
||||
text = {
|
||||
"{X:mult,C:white}X#1#{} Mult",
|
||||
"{C:red}Debuffs {}the {C:attention}first",
|
||||
"{C:attention}#2# {}scored cards",
|
||||
},
|
||||
},
|
||||
j_Roland_yard = {
|
||||
name = "Yard Sale",
|
||||
text = {
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
"id": "Roland",
|
||||
"name": "Roland",
|
||||
"prefix": "Roland",
|
||||
"version": "2.8.34",
|
||||
"version": "2.8.35",
|
||||
"badge_colour": "8BE9FD",
|
||||
"display_name": "Roland",
|
||||
"main_file": "src/main.lua",
|
||||
|
|
|
|||
|
|
@ -684,7 +684,7 @@ joker {
|
|||
rarity = 3,
|
||||
eternal_compat = true,
|
||||
blueprint_compat = true,
|
||||
perishable_compat = false,
|
||||
perishable_compat = true,
|
||||
loc_vars = function(_, _, card)
|
||||
return {vars = {card.ability.extra.xmult}}
|
||||
end,
|
||||
|
|
@ -731,7 +731,7 @@ joker {
|
|||
rarity = 3,
|
||||
eternal_compat = true,
|
||||
blueprint_compat = true,
|
||||
perishable_compat = false,
|
||||
perishable_compat = true,
|
||||
loc_vars = function(_, _, card)
|
||||
return {vars = {card.ability.extra.xmult}}
|
||||
end,
|
||||
|
|
@ -749,7 +749,7 @@ joker {
|
|||
right.config.center.key == "j_Roland_crimson"
|
||||
|
||||
if debuffed_by_crimson and v.ability.Roland_crimson == nil then
|
||||
v.ability.Roland_crimson = v.debuff and true or false
|
||||
v.ability.Roland_crimson = not not v.debuff
|
||||
v:set_debuff(true)
|
||||
elseif not debuffed_by_crimson and v.ability.Roland_crimson ~= nil then
|
||||
v:set_debuff(v.ability.Roland_crimson)
|
||||
|
|
@ -766,6 +766,56 @@ function Card:stop_drag(...)
|
|||
return orig_stop_drag(self, ...)
|
||||
end
|
||||
|
||||
joker {
|
||||
key = "verdant",
|
||||
pronouns = "she_her",
|
||||
config = {extra = {debuffs = 2, xmult = 3}},
|
||||
pixel_size = {w = 68, h = 68},
|
||||
attributes = {"xmult"},
|
||||
cost = 6,
|
||||
rarity = 3,
|
||||
eternal_compat = true,
|
||||
blueprint_compat = true,
|
||||
perishable_compat = true,
|
||||
loc_vars = function(_, _, card)
|
||||
local extra = card.ability.extra
|
||||
return {vars = {extra.xmult, extra.debuffs}}
|
||||
end,
|
||||
calculate = function(self, card, context)
|
||||
local extra = card.ability.extra
|
||||
self:verdant(context.scoring_hand, extra.debuffs)
|
||||
return (context.joker_main or context.forcetrigger) and {card = card, xmult = extra.xmult} or nil
|
||||
end,
|
||||
update = function()
|
||||
local _ = G.STATE == G.STATES.SELECTING_HAND and G.hand and G.hand:parse_highlighted()
|
||||
end,
|
||||
verdant = function(_, cards, amount)
|
||||
return cards and next(cards) and f(G.playing_cards):each(function(v)
|
||||
table.sort(cards, function(a, b)
|
||||
return a.rank < b.rank
|
||||
end)
|
||||
|
||||
local should_be_verdant = f(amount):map(f.index_into(cards)):any(f.eq(v))
|
||||
local has_verdant = v.ability.Roland_verdant ~= nil
|
||||
|
||||
if should_be_verdant and not has_verdant then
|
||||
v.ability.Roland_verdant = not not v.debuff
|
||||
v:set_debuff(true)
|
||||
elseif not should_be_verdant and has_verdant then
|
||||
v:set_debuff(v.ability.Roland_verdant)
|
||||
v.ability.Roland_verdant = nil
|
||||
end
|
||||
end) or nil
|
||||
end,
|
||||
}
|
||||
|
||||
local orig_unhighlight_all = CardArea.unhighlight_all
|
||||
|
||||
function CardArea:unhighlight_all(...)
|
||||
G.P_CENTERS.j_Roland_verdant:verdant(self.cards)
|
||||
return orig_unhighlight_all(self, ...)
|
||||
end
|
||||
|
||||
joker {
|
||||
key = "martingale",
|
||||
pronouns = "he_him",
|
||||
|
|
|
|||