Add new joker
|
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 54 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 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: 79 KiB After Width: | Height: | Size: 79 KiB |
|
Before Width: | Height: | Size: 88 KiB After Width: | Height: | Size: 70 KiB |
|
Before Width: | Height: | Size: 1 KiB After Width: | Height: | Size: 1 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 41 KiB |
BIN
assets/sounds/nilly.ogg
Normal file
|
|
@ -229,6 +229,14 @@ return {
|
|||
name = "Ms. Joker",
|
||||
text = {"{C:chips}+#1#{} Chips"},
|
||||
},
|
||||
j_Roland_nilly = {
|
||||
name = "Nilly",
|
||||
text = {
|
||||
"Toggleable {X:mult,C:white}X0{} Mult",
|
||||
"{C:inactive}(Currently {C:attention}#1#{C:inactive})",
|
||||
"{C:inactive,s:0.75,E:1}Wait... what?",
|
||||
},
|
||||
},
|
||||
j_Roland_oops = {
|
||||
name = "Oops! All 7s",
|
||||
text = {
|
||||
|
|
@ -389,6 +397,8 @@ return {
|
|||
},
|
||||
v_dictionary = {
|
||||
b_Roland_bye = "Bye!",
|
||||
b_Roland_disabled = "Disabled",
|
||||
b_Roland_enabled = "Enabled",
|
||||
b_Roland_comma = ", ",
|
||||
b_Roland_debuffed = "DEBUFFED",
|
||||
b_Roland_entering_shop = "Entering shop!",
|
||||
|
|
@ -404,6 +414,7 @@ return {
|
|||
b_Roland_no_wild_debuff = "No wild card debuffs",
|
||||
b_Roland_na = "N/A",
|
||||
b_Roland_of = " of ",
|
||||
b_Roland_toggle = "TOGGLE",
|
||||
},
|
||||
labels = {
|
||||
Roland_frozen = "Frozen",
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
"author": [
|
||||
"Emik"
|
||||
],
|
||||
"version": "2.2.6",
|
||||
"version": "2.2.7",
|
||||
"badge_colour": "8BE9FD",
|
||||
"main_file": "src/main.lua",
|
||||
"badge_text_colour": "44475A",
|
||||
|
|
@ -17,6 +17,6 @@
|
|||
"dependencies": [
|
||||
"Steamodded (>=1.*)",
|
||||
"Lovely (>=0.6)",
|
||||
"Bakery (>=1.3.2~*)"
|
||||
"Bakery (>=0.1.26~*)"
|
||||
]
|
||||
}
|
||||
|
|
@ -19,6 +19,12 @@ local joker = (function()
|
|||
tbl.artist = tbl.artist and "Roland_" .. tbl.artist or nil
|
||||
tbl.soul_pos = tbl.soul_pos and inc() or nil
|
||||
tbl.sinis = tbl.sinis and inc() or nil
|
||||
|
||||
if ((tbl.config or {}).extra or {}).flipped ~= nil then
|
||||
tbl.config.extra.front_pos = tbl.pos
|
||||
tbl.config.extra.back_pos = inc()
|
||||
end
|
||||
|
||||
local joker = SMODS.Joker(tbl)
|
||||
|
||||
q(function()
|
||||
|
|
@ -89,6 +95,11 @@ SMODS.Atlas {
|
|||
py = 95,
|
||||
}
|
||||
|
||||
SMODS.Sound {
|
||||
key = "nilly",
|
||||
path = "nilly.ogg",
|
||||
}
|
||||
|
||||
joker {
|
||||
key = "escapey",
|
||||
pronouns = "they_them",
|
||||
|
|
@ -123,6 +134,9 @@ joker {
|
|||
},
|
||||
}
|
||||
end,
|
||||
calculate = function(self, card, context)
|
||||
return context.forcetrigger and self.proc(card) or nil
|
||||
end,
|
||||
Bakery_can_use = function(self, card)
|
||||
return not card.debuff and u() and (self.exchangable() or self.fusable(card))
|
||||
end,
|
||||
|
|
@ -134,9 +148,6 @@ joker {
|
|||
"b_Roland_fuse" or "b_Roland_escape"),
|
||||
}
|
||||
end,
|
||||
calculate = function(self, card, context)
|
||||
return context.forcetrigger and self.proc(card) or nil
|
||||
end,
|
||||
Bakery_use_joker = function(self, card)
|
||||
if card.debuff then
|
||||
return
|
||||
|
|
@ -392,7 +403,7 @@ joker {
|
|||
return
|
||||
end
|
||||
|
||||
for _ = 1, extra.times do
|
||||
f(extra.times):each(function()
|
||||
G.playing_card = (G.playing_card or 0) + 1
|
||||
G.deck.config.card_limit = G.deck.config.card_limit + 1
|
||||
local chosen = pseudorandom_element(scored_cards, pseudoseed "Roland_trimino")
|
||||
|
|
@ -402,7 +413,7 @@ joker {
|
|||
copy:start_materialize()
|
||||
table.insert(copied, copy)
|
||||
table.insert(G.playing_cards, copy)
|
||||
end
|
||||
end)
|
||||
|
||||
SMODS.calculate_effect({{message = localize "k_copied_ex", message_card = card}}, card)
|
||||
playing_card_joker_effects(copied)
|
||||
|
|
@ -806,6 +817,50 @@ joker {
|
|||
end,
|
||||
}
|
||||
|
||||
joker {
|
||||
key = "nilly",
|
||||
pronouns = "any_all",
|
||||
config = {extra = {flipped = false}},
|
||||
cost = 0,
|
||||
rarity = 3,
|
||||
eternal_compat = true,
|
||||
blueprint_compat = true,
|
||||
perishable_compat = true,
|
||||
loc_vars = function(_, _, card)
|
||||
return {
|
||||
vars = {localize {
|
||||
type = "variable",
|
||||
key = card.ability.extra.flipped and "b_Roland_enabled" or "b_Roland_disabled",
|
||||
}},
|
||||
}
|
||||
end,
|
||||
inject = function(...)
|
||||
SMODS.Joker.inject(...)
|
||||
Bakery_API.double_sided_jokers.j_Roland_nilly = true
|
||||
end,
|
||||
calculate = function(_, card, context)
|
||||
if (not context.joker_main or not card.ability.extra.flipped) and not context.forcetrigger then
|
||||
return
|
||||
end
|
||||
|
||||
mult = mod_mult(0)
|
||||
update_hand_text({delay = 0}, {chips = hand_chips, mult = mult})
|
||||
return {sound = "Roland_nilly", message = "0X " .. localize "k_mult", colour = G.C.MULT, card = card}
|
||||
end,
|
||||
Bakery_can_use = function(_, card)
|
||||
return not card.debuff
|
||||
end,
|
||||
Bakery_use_button_text = function(_, card)
|
||||
return localize {
|
||||
type = "variable",
|
||||
key = card.debuff and "b_Roland_debuffed" or "b_Roland_toggle",
|
||||
}
|
||||
end,
|
||||
Bakery_use_joker = function(_, card)
|
||||
local _ = card.debuff or Bakery_API.flip_double_sided(card)
|
||||
end,
|
||||
}
|
||||
|
||||
joker {
|
||||
key = "arctic",
|
||||
pronouns = "it_its",
|
||||
|
|
|
|||
|
|
@ -107,7 +107,7 @@ spectral {
|
|||
f(cards):take(card.ability.extra.amount):each(function(v)
|
||||
local seal
|
||||
|
||||
for _ = 1, 31 do
|
||||
for _ = 1, 64 do
|
||||
seal = SMODS.poll_seal {guaranteed = true}
|
||||
|
||||
if seal ~= "Roland_glass" then
|
||||
|
|
@ -177,12 +177,12 @@ local void = spectral {
|
|||
f(cards):each(destroy)
|
||||
f(G.jokers.cards):each(calculate_joker)
|
||||
|
||||
for _ = 1, card.ability.extra.amount do
|
||||
f(card.ability.extra.amount):each(function()
|
||||
local cryptid = create_card(nil, G.consumeables, nil, nil, nil, nil, "c_cryptid", "void")
|
||||
cryptid:set_edition({negative = true}, true)
|
||||
cryptid:add_to_deck()
|
||||
G.consumeables:emplace(cryptid)
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
||||
play_sound("Roland_void", 1, 0.7)
|
||||
|
|
|
|||