Reorder jokers
This commit is contained in:
parent
5da0350f0a
commit
e72d2777d9
2 changed files with 123 additions and 123 deletions
|
|
@ -8,7 +8,7 @@ for _, v in pairs({"7granddad", "betmma", "oxy", "peppino"}) do
|
||||||
end
|
end
|
||||||
|
|
||||||
for i = 1, 6 do
|
for i = 1, 6 do
|
||||||
SMODS.Sound({key = 'grand' .. i, path = 'grand_dad' .. i .. '.ogg'})
|
SMODS.Sound({key = "grand" .. i, path = "grand_dad" .. i .. ".ogg"})
|
||||||
end
|
end
|
||||||
|
|
||||||
local exotic = Cryptid and "cry_exotic" or 4
|
local exotic = Cryptid and "cry_exotic" or 4
|
||||||
|
|
|
||||||
244
src/slugcat.lua
244
src/slugcat.lua
|
|
@ -33,98 +33,6 @@ SMODS.Rarity {
|
||||||
badge_colour = G.C.JOKER_GREY,
|
badge_colour = G.C.JOKER_GREY,
|
||||||
}
|
}
|
||||||
|
|
||||||
local orig_open = Card.open
|
|
||||||
|
|
||||||
---@diagnostic disable-next-line: duplicate-set-field
|
|
||||||
function Card:open()
|
|
||||||
local orig = self.ability.extra or 1
|
|
||||||
local spearmasters = SMODS.find_card("j_jane_spearmaster")
|
|
||||||
|
|
||||||
if next(spearmasters) then
|
|
||||||
for _, v in pairs(spearmasters) do
|
|
||||||
orig = orig + v.ability.extra.extrachoices
|
|
||||||
end
|
|
||||||
|
|
||||||
self.config.choose = math.floor(orig)
|
|
||||||
self.ability.extra = math.floor(orig)
|
|
||||||
end
|
|
||||||
|
|
||||||
orig_open(self)
|
|
||||||
|
|
||||||
G.E_MANAGER:add_event(Event({
|
|
||||||
delay = 0.5,
|
|
||||||
timer = "REAL",
|
|
||||||
func = function()
|
|
||||||
if next(spearmasters) then
|
|
||||||
G.GAME.pack_choices = math.floor(self.ability.extra)
|
|
||||||
end
|
|
||||||
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
}))
|
|
||||||
end
|
|
||||||
|
|
||||||
SMODS.Joker {
|
|
||||||
key = "survivor",
|
|
||||||
atlas = "janesurvivor",
|
|
||||||
loc_txt = {
|
|
||||||
name = "The Survivor",
|
|
||||||
text = {
|
|
||||||
"All cards held in hand",
|
|
||||||
"{C:attention}contribute to scoring {}and",
|
|
||||||
"are all considered as",
|
|
||||||
"the {C:attention}first played card",
|
|
||||||
}
|
|
||||||
},
|
|
||||||
pos = {x = 0, y = 0},
|
|
||||||
soul_pos = {x = 1, y = 0},
|
|
||||||
cost = 20,
|
|
||||||
rarity = 4,
|
|
||||||
}
|
|
||||||
|
|
||||||
SMODS.Joker {
|
|
||||||
key = "gourmand",
|
|
||||||
atlas = "janegourmand",
|
|
||||||
loc_txt = {
|
|
||||||
name = "The Gourmand",
|
|
||||||
text = {
|
|
||||||
"Values on {C:attention}consumables",
|
|
||||||
"are {C:attention}multiplied{} by {C:attention}#1#",
|
|
||||||
"when they are created",
|
|
||||||
"{C:inactive}(If possible)",
|
|
||||||
}
|
|
||||||
},
|
|
||||||
loc_vars = function(_, _, center)
|
|
||||||
return {vars = {center.ability.modifier}}
|
|
||||||
end,
|
|
||||||
config = {modifier = 2},
|
|
||||||
pos = {x = 0, y = 0},
|
|
||||||
soul_pos = {x = 1, y = 0},
|
|
||||||
cost = 50,
|
|
||||||
rarity = 3,
|
|
||||||
}
|
|
||||||
|
|
||||||
SMODS.Joker {
|
|
||||||
key = "spearmaster",
|
|
||||||
atlas = "janespearmaster",
|
|
||||||
loc_txt = {
|
|
||||||
name = "The Spearmaster",
|
|
||||||
text = {
|
|
||||||
"You can choose {C:attention}any number of cards",
|
|
||||||
"after opening {C:attention}any Booster Pack",
|
|
||||||
"{C:attention}Booster Packs{} have {C:green}+#1#{} additional cards",
|
|
||||||
}
|
|
||||||
},
|
|
||||||
loc_vars = function(_, _, center)
|
|
||||||
return {vars = {center.ability.extra.extrachoices}}
|
|
||||||
end,
|
|
||||||
config = {extra = {extrachoices = 1}},
|
|
||||||
pos = {x = 0, y = 0},
|
|
||||||
soul_pos = {x = 1, y = 0},
|
|
||||||
cost = 12,
|
|
||||||
rarity = Cryptid and epic or 4,
|
|
||||||
}
|
|
||||||
|
|
||||||
SMODS.Joker {
|
SMODS.Joker {
|
||||||
key = "monk",
|
key = "monk",
|
||||||
atlas = "janemonk",
|
atlas = "janemonk",
|
||||||
|
|
@ -158,6 +66,24 @@ SMODS.Joker {
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SMODS.Joker {
|
||||||
|
key = "survivor",
|
||||||
|
atlas = "janesurvivor",
|
||||||
|
loc_txt = {
|
||||||
|
name = "The Survivor",
|
||||||
|
text = {
|
||||||
|
"All cards held in hand",
|
||||||
|
"{C:attention}contribute to scoring {}and",
|
||||||
|
"are all considered as",
|
||||||
|
"the {C:attention}first played card",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
pos = {x = 0, y = 0},
|
||||||
|
soul_pos = {x = 1, y = 0},
|
||||||
|
cost = 20,
|
||||||
|
rarity = 4,
|
||||||
|
}
|
||||||
|
|
||||||
local hunter = { 7, 5, 3, 2, 1 }
|
local hunter = { 7, 5, 3, 2, 1 }
|
||||||
|
|
||||||
SMODS.Joker {
|
SMODS.Joker {
|
||||||
|
|
@ -315,6 +241,28 @@ SMODS.Joker {
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SMODS.Joker {
|
||||||
|
key = "gourmand",
|
||||||
|
atlas = "janegourmand",
|
||||||
|
loc_txt = {
|
||||||
|
name = "The Gourmand",
|
||||||
|
text = {
|
||||||
|
"Values on {C:attention}consumables",
|
||||||
|
"are {C:attention}multiplied{} by {C:attention}#1#",
|
||||||
|
"when they are created",
|
||||||
|
"{C:inactive}(If possible)",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
loc_vars = function(_, _, center)
|
||||||
|
return {vars = {center.ability.modifier}}
|
||||||
|
end,
|
||||||
|
config = {modifier = 2},
|
||||||
|
pos = {x = 0, y = 0},
|
||||||
|
soul_pos = {x = 1, y = 0},
|
||||||
|
cost = 50,
|
||||||
|
rarity = 3,
|
||||||
|
}
|
||||||
|
|
||||||
local orig_set_ability = Card.set_ability
|
local orig_set_ability = Card.set_ability
|
||||||
|
|
||||||
---@diagnostic disable-next-line: duplicate-set-field
|
---@diagnostic disable-next-line: duplicate-set-field
|
||||||
|
|
@ -335,6 +283,88 @@ function Card:set_ability(center, initial, delay_sprites)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
SMODS.Joker {
|
||||||
|
key = "artificer",
|
||||||
|
atlas = "janeartificer",
|
||||||
|
loc_txt = {
|
||||||
|
name = "The Artificer",
|
||||||
|
text = {
|
||||||
|
"Grants the {C:green}ability{} to {C:red}destroy",
|
||||||
|
"selected {C:attention}playing cards",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
misc = {
|
||||||
|
text = {"Impervious", "Cannot be debuffed"},
|
||||||
|
col = G.C.JOKER_GREY,
|
||||||
|
tcol = G.C.FILTER
|
||||||
|
},
|
||||||
|
pos = {x = 0, y = 0},
|
||||||
|
soul_pos = {x = 1, y = 0},
|
||||||
|
cost = 50,
|
||||||
|
rarity = exotic,
|
||||||
|
Bakery_use_button_text = function(_, _) return "DESTROY" end,
|
||||||
|
Bakery_can_use = function(_, _)
|
||||||
|
return Jane.canuse() and next(G.hand.highlighted)
|
||||||
|
end,
|
||||||
|
Bakery_use_joker = function(_, _)
|
||||||
|
for _, v in pairs(G.hand.highlighted) do
|
||||||
|
v:start_dissolve()
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
|
||||||
|
SMODS.Joker {
|
||||||
|
key = "spearmaster",
|
||||||
|
atlas = "janespearmaster",
|
||||||
|
loc_txt = {
|
||||||
|
name = "The Spearmaster",
|
||||||
|
text = {
|
||||||
|
"You can choose {C:attention}any number of cards",
|
||||||
|
"after opening {C:attention}any Booster Pack",
|
||||||
|
"{C:attention}Booster Packs{} have {C:green}+#1#{} additional cards",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
loc_vars = function(_, _, center)
|
||||||
|
return {vars = {center.ability.extra.extrachoices}}
|
||||||
|
end,
|
||||||
|
config = {extra = {extrachoices = 1}},
|
||||||
|
pos = {x = 0, y = 0},
|
||||||
|
soul_pos = {x = 1, y = 0},
|
||||||
|
cost = 12,
|
||||||
|
rarity = Cryptid and epic or 4,
|
||||||
|
}
|
||||||
|
|
||||||
|
local orig_open = Card.open
|
||||||
|
|
||||||
|
---@diagnostic disable-next-line: duplicate-set-field
|
||||||
|
function Card:open()
|
||||||
|
local orig = self.ability.extra or 1
|
||||||
|
local spearmasters = SMODS.find_card("j_jane_spearmaster")
|
||||||
|
|
||||||
|
if next(spearmasters) then
|
||||||
|
for _, v in pairs(spearmasters) do
|
||||||
|
orig = orig + v.ability.extra.extrachoices
|
||||||
|
end
|
||||||
|
|
||||||
|
self.config.choose = math.floor(orig)
|
||||||
|
self.ability.extra = math.floor(orig)
|
||||||
|
end
|
||||||
|
|
||||||
|
orig_open(self)
|
||||||
|
|
||||||
|
G.E_MANAGER:add_event(Event({
|
||||||
|
delay = 0.5,
|
||||||
|
timer = "REAL",
|
||||||
|
func = function()
|
||||||
|
if next(spearmasters) then
|
||||||
|
G.GAME.pack_choices = math.floor(self.ability.extra)
|
||||||
|
end
|
||||||
|
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
}))
|
||||||
|
end
|
||||||
|
|
||||||
SMODS.Joker {
|
SMODS.Joker {
|
||||||
key = "rivulet",
|
key = "rivulet",
|
||||||
atlas = "janerivulet",
|
atlas = "janerivulet",
|
||||||
|
|
@ -534,36 +564,6 @@ SMODS.Joker {
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
|
|
||||||
SMODS.Joker {
|
|
||||||
key = "artificer",
|
|
||||||
atlas = "janeartificer",
|
|
||||||
loc_txt = {
|
|
||||||
name = "The Artificer",
|
|
||||||
text = {
|
|
||||||
"Grants the {C:green}ability{} to {C:red}destroy",
|
|
||||||
"selected {C:attention}playing cards",
|
|
||||||
}
|
|
||||||
},
|
|
||||||
misc = {
|
|
||||||
text = {"Impervious", "Cannot be debuffed"},
|
|
||||||
col = G.C.JOKER_GREY,
|
|
||||||
tcol = G.C.FILTER
|
|
||||||
},
|
|
||||||
pos = {x = 0, y = 0},
|
|
||||||
soul_pos = {x = 1, y = 0},
|
|
||||||
cost = 50,
|
|
||||||
rarity = exotic,
|
|
||||||
Bakery_use_button_text = function(_, _) return "DESTROY" end,
|
|
||||||
Bakery_can_use = function(_, _)
|
|
||||||
return Jane.canuse() and next(G.hand.highlighted)
|
|
||||||
end,
|
|
||||||
Bakery_use_joker = function(_, _)
|
|
||||||
for _, v in pairs(G.hand.highlighted) do
|
|
||||||
v:start_dissolve()
|
|
||||||
end
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
|
|
||||||
SMODS.Joker {
|
SMODS.Joker {
|
||||||
key = "rot",
|
key = "rot",
|
||||||
atlas = "janerot",
|
atlas = "janerot",
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue