Adjust non-cryptid Saint and Weeck
This commit is contained in:
parent
86b55b5542
commit
0e8c49917e
4 changed files with 45 additions and 28 deletions
|
|
@ -18,5 +18,5 @@
|
||||||
"conflicts": [
|
"conflicts": [
|
||||||
"Jen"
|
"Jen"
|
||||||
],
|
],
|
||||||
"version": "1.11.18"
|
"version": "1.11.19"
|
||||||
}
|
}
|
||||||
|
|
@ -527,8 +527,11 @@ local function apply_weeck()
|
||||||
|
|
||||||
for _, v in pairs(G.playing_cards) do
|
for _, v in pairs(G.playing_cards) do
|
||||||
if v.base.id == 2 then
|
if v.base.id == 2 then
|
||||||
v.ability.cry_absolute = true
|
if Jane.cry then
|
||||||
v.ability.eternal = true
|
v.ability.cry_absolute = true
|
||||||
|
v.ability.eternal = true
|
||||||
|
end
|
||||||
|
|
||||||
add[#add + 1] = v
|
add[#add + 1] = v
|
||||||
else
|
else
|
||||||
v:start_dissolve(nil, true)
|
v:start_dissolve(nil, true)
|
||||||
|
|
@ -539,7 +542,7 @@ local function apply_weeck()
|
||||||
local dupe = copy_card(v)
|
local dupe = copy_card(v)
|
||||||
dupe:start_materialize()
|
dupe:start_materialize()
|
||||||
dupe:add_to_deck()
|
dupe:add_to_deck()
|
||||||
G.hand:emplace(dupe)
|
G.deck:emplace(dupe)
|
||||||
G.playing_card = (G.playing_card and G.playing_card + 1) or 1
|
G.playing_card = (G.playing_card and G.playing_card + 1) or 1
|
||||||
table.insert(G.playing_cards, dupe)
|
table.insert(G.playing_cards, dupe)
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,9 @@ SMODS.Sound({key = "e_moire", path = "e_moire.ogg"})
|
||||||
SMODS.Sound({key = "e_polygloss", path = "e_polygloss.ogg"})
|
SMODS.Sound({key = "e_polygloss", path = "e_polygloss.ogg"})
|
||||||
|
|
||||||
local function get_weight(self)
|
local function get_weight(self)
|
||||||
return G.GAME.edition_rate * self.weight
|
return self.weight *
|
||||||
|
G.GAME.edition_rate *
|
||||||
|
(next(SMODS.find_card "j_jane_saint") and 10 or 1)
|
||||||
end
|
end
|
||||||
|
|
||||||
SMODS.Edition({
|
SMODS.Edition({
|
||||||
|
|
@ -160,8 +162,8 @@ local jumbo = SMODS.Edition({
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
sound = {sound = "jane_e_jumbo", per = 1, vol = 0.5},
|
sound = {sound = "jane_e_jumbo", per = 1, vol = 0.5},
|
||||||
weight = 5,
|
weight = 6,
|
||||||
extra_cost = 2,
|
extra_cost = 5,
|
||||||
in_shop = true,
|
in_shop = true,
|
||||||
shader = false,
|
shader = false,
|
||||||
apply_to_float = false,
|
apply_to_float = false,
|
||||||
|
|
|
||||||
|
|
@ -573,7 +573,7 @@ local orig_debuff = Card.set_debuff
|
||||||
|
|
||||||
function Card:set_debuff(should_debuff)
|
function Card:set_debuff(should_debuff)
|
||||||
if should_debuff and ((self.config or {}).center or {}).debuff_immune then
|
if should_debuff and ((self.config or {}).center or {}).debuff_immune then
|
||||||
Jane.card_status_text(self, "Immune", nil, 0.05 * self.T.h, G.C.RED, nil, 0.6, nil, nil, "bm", "cancel", 1, 0.9)
|
Jane.card_status_text(self, "Immune!", nil, 0.05 * self.T.h, G.C.RED, nil, 0.6, nil, nil, "bm", "cancel", 1, 0.9)
|
||||||
return false
|
return false
|
||||||
else
|
else
|
||||||
orig_debuff(self, should_debuff)
|
orig_debuff(self, should_debuff)
|
||||||
|
|
@ -589,26 +589,25 @@ SMODS.Joker {
|
||||||
"{C:attention}Use {}to toggle itself or",
|
"{C:attention}Use {}to toggle itself or",
|
||||||
"other Jokers to its",
|
"other Jokers to its",
|
||||||
"left's {C:legendary}Eternal{} sticker",
|
"left's {C:legendary}Eternal{} sticker",
|
||||||
"{C:attention}#4#{}#5#{C:spectral}#6#{}#7#",
|
"{C:attention}#4#{}#5#{C:spectral}#6#{C:planet}#7#{}#8#",
|
||||||
"{C:inactive,s:1.25}#8#{C:attention,s:1.25}#9#{C:inactive,s:1.25}#10#",
|
"{C:inactive,s:1.25}#9#{C:attention,s:1.25}#10#{C:inactive,s:1.25}#11#",
|
||||||
Jane.cry and "{C:inactive}(Gateway has no downside)" or nil,
|
Jane.cry and "{C:inactive}(Gateway has no downside)" or nil,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
config = {extra = {changes_editions = false, jokers = Jane.cry and 10 or 1, karma = 0, max_karma = Jane.cry and 10 or 3}},
|
config = {extra = {changes_editions = false, jokers = 1, karma = -10}},
|
||||||
pos = {x = 0, y = 0},
|
pos = {x = 0, y = 0},
|
||||||
soul_pos = {x = 1, y = 0},
|
soul_pos = {x = 1, y = 0},
|
||||||
cost = 20,
|
cost = 20,
|
||||||
rarity = 4,
|
rarity = 4,
|
||||||
|
debuff_immune = true,
|
||||||
eternal_compat = true,
|
eternal_compat = true,
|
||||||
blueprint_compat = false,
|
blueprint_compat = false,
|
||||||
perishable_compat = true,
|
perishable_compat = true,
|
||||||
loc_vars = function(_, info_queue, card)
|
loc_vars = function(self, info_queue, card)
|
||||||
info_queue[#info_queue + 1] = Jane.cry and G.P_CENTERS.c_cry_gateway or nil
|
info_queue[#info_queue + 1] = Jane.cry and G.P_CENTERS.c_cry_gateway or nil
|
||||||
|
|
||||||
local extra = card.ability.extra
|
local extra = card.ability.extra
|
||||||
local karma = extra.karma
|
local attuned = extra.karma >= 0
|
||||||
local max_karma = extra.max_karma
|
|
||||||
local attuned = karma >= max_karma
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
vars = {
|
vars = {
|
||||||
|
|
@ -618,11 +617,12 @@ SMODS.Joker {
|
||||||
attuned and "" or "Attune ",
|
attuned and "" or "Attune ",
|
||||||
attuned and "" or "at ",
|
attuned and "" or "at ",
|
||||||
attuned and (Jane.cry and "Gateways " or "Spectrals ") or
|
attuned and (Jane.cry and "Gateways " or "Spectrals ") or
|
||||||
max_karma .. (Jane.cry and " Gateways" or " Spectrals"),
|
(Jane.cry and -self.config.extra.karma .. " Gateways" or ""),
|
||||||
|
(attuned or Jane.cry) and "" or -self.config.extra.karma .. " Planets",
|
||||||
attuned and "add Joker slots" or "",
|
attuned and "add Joker slots" or "",
|
||||||
attuned and "[Currently " or "[",
|
attuned and "[Currently " or "[",
|
||||||
attuned and "+" .. karma or karma,
|
attuned and "+" .. extra.karma or extra.karma - self.config.extra.karma,
|
||||||
attuned and "]" or " / " .. max_karma .. "]",
|
attuned and "]" or " / " .. -self.config.extra.karma .. "]",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
end,
|
end,
|
||||||
|
|
@ -633,10 +633,9 @@ SMODS.Joker {
|
||||||
card.children.floating_sprite:set_sprite_pos({x = card.ability.extra.is_attuned and 2 or 1, y = 0})
|
card.children.floating_sprite:set_sprite_pos({x = card.ability.extra.is_attuned and 2 or 1, y = 0})
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
calculate = function(_, card, context)
|
calculate = function(self, card, context)
|
||||||
local extra = card.ability.extra
|
local extra = card.ability.extra
|
||||||
local max_karma = extra.max_karma
|
extra.is_attuned = extra.is_attuned and extra.karma >= 0
|
||||||
extra.is_attuned = extra.is_attuned and extra.karma >= max_karma
|
|
||||||
|
|
||||||
local function ascend()
|
local function ascend()
|
||||||
if extra.is_attuning then
|
if extra.is_attuning then
|
||||||
|
|
@ -670,9 +669,14 @@ SMODS.Joker {
|
||||||
play_sound("card1")
|
play_sound("card1")
|
||||||
extra.is_attuned = true
|
extra.is_attuned = true
|
||||||
end, 1)
|
end, 1)
|
||||||
|
|
||||||
|
Jane.q(function()
|
||||||
|
extra.karma = extra.karma + extra.jokers
|
||||||
|
G.jokers:change_size(extra.jokers)
|
||||||
|
end, 1)
|
||||||
end
|
end
|
||||||
|
|
||||||
if extra.karma >= max_karma then
|
if extra.karma >= 0 then
|
||||||
local karma = extra.is_attuning and 0 or (extra.is_attuned and 1 or extra.karma)
|
local karma = extra.is_attuning and 0 or (extra.is_attuned and 1 or extra.karma)
|
||||||
G.jokers:change_size(karma * extra.jokers)
|
G.jokers:change_size(karma * extra.jokers)
|
||||||
ascend()
|
ascend()
|
||||||
|
|
@ -687,7 +691,8 @@ SMODS.Joker {
|
||||||
|
|
||||||
local gc = context.consumeable:gc()
|
local gc = context.consumeable:gc()
|
||||||
|
|
||||||
if Jane.cry and gc.key ~= "c_cry_gateway" or not Jane.cry and gc.set ~= "Spectral" then
|
if Jane.cry and gc.key ~= "c_cry_gateway" or
|
||||||
|
not Jane.cry and gc.set ~= (extra.karma > 0 and "Spectral" or "Planet") then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
@ -703,16 +708,21 @@ SMODS.Joker {
|
||||||
{message = "+" .. quota .. " Karma", colour = G.C.PALE_GREEN}
|
{message = "+" .. quota .. " Karma", colour = G.C.PALE_GREEN}
|
||||||
)
|
)
|
||||||
|
|
||||||
local _ = extra.karma <= max_karma and card_eval_status_text(
|
local _ = extra.karma <= 0 and card_eval_status_text(
|
||||||
card,
|
card,
|
||||||
"extra",
|
"extra",
|
||||||
nil,
|
nil,
|
||||||
nil,
|
nil,
|
||||||
nil,
|
nil,
|
||||||
{message = extra.karma .. " / " .. max_karma, colour = G.C.GREEN}
|
{
|
||||||
|
message = (extra.karma - self.config.extra.karma) ..
|
||||||
|
" / " ..
|
||||||
|
-self.config.extra.karma,
|
||||||
|
colour = G.C.GREEN,
|
||||||
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
if extra.karma < max_karma then
|
if extra.karma < 0 then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
@ -722,13 +732,15 @@ SMODS.Joker {
|
||||||
add_to_deck = function(_, card)
|
add_to_deck = function(_, card)
|
||||||
local extra = card.ability.extra
|
local extra = card.ability.extra
|
||||||
|
|
||||||
local _ = (extra.is_attuning or extra.is_attuned) and
|
local _ = extra.karma > 0 and
|
||||||
|
(extra.is_attuning or extra.is_attuned) and
|
||||||
G.jokers:change_size(extra.karma * extra.jokers)
|
G.jokers:change_size(extra.karma * extra.jokers)
|
||||||
end,
|
end,
|
||||||
remove_from_deck = function(_, card)
|
remove_from_deck = function(_, card)
|
||||||
local extra = card.ability.extra
|
local extra = card.ability.extra
|
||||||
|
|
||||||
local _ = (extra.is_attuning or extra.is_attuned) and
|
local _ = extra.karma > 0 and
|
||||||
|
(extra.is_attuning or extra.is_attuned) and
|
||||||
G.jokers:change_size(-extra.karma * extra.jokers)
|
G.jokers:change_size(-extra.karma * extra.jokers)
|
||||||
end,
|
end,
|
||||||
Bakery_can_use = function(_, card)
|
Bakery_can_use = function(_, card)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue