Add new tag
|
Before Width: | Height: | Size: 644 B After Width: | Height: | Size: 3.3 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: 79 KiB After Width: | Height: | Size: 79 KiB |
|
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 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: 27 KiB After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 611 B After Width: | Height: | Size: 4.3 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
|
|
@ -388,6 +388,10 @@ return {
|
|||
},
|
||||
},
|
||||
Tag = {
|
||||
tag_Roland_freeze = {
|
||||
name = "Freeze Tag",
|
||||
text = {"Apply {C:dark_edition}Frozen", "to the next {C:attention}#1#", "scored cards"},
|
||||
},
|
||||
tag_Roland_invisible = {
|
||||
name = "Invisible Tag",
|
||||
text = {"{C:attention}Duplicate {}a random Joker", "{C:inactive}(Must have room)"},
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
"author": [
|
||||
"Emik"
|
||||
],
|
||||
"version": "2.6.7",
|
||||
"version": "2.6.8",
|
||||
"badge_colour": "8BE9FD",
|
||||
"main_file": "src/main.lua",
|
||||
"badge_text_colour": "44475A",
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ end
|
|||
local back = (function()
|
||||
local x = 0
|
||||
|
||||
---@param tbl SMODS.Back|{is_alt: function, alt_apply?: fun(self: SMODS.Back|table, back: Back|table), alt_calculate?: fun(self: SMODS.Back|table, back: Back|table, context: CalcContext|table): table?, boolean?}
|
||||
---@param tbl SMODS.Back|{artist?: string, is_alt: function, alt_apply?: fun(self: SMODS.Back|table, back: Back|table), alt_calculate?: fun(self: SMODS.Back|table, back: Back|table, context: CalcContext|table): table?, boolean?}
|
||||
return function(tbl)
|
||||
local key = tbl.key
|
||||
local apply = tbl.apply
|
||||
|
|
@ -48,6 +48,7 @@ local back = (function()
|
|||
key = key,
|
||||
pos = tbl.pos,
|
||||
atlas = "sleeve",
|
||||
artist = tbl.artist,
|
||||
config = tbl.config and f(tbl.config):table() or nil,
|
||||
loc_vars = function(self, ...)
|
||||
local ret = tbl.loc_vars and tbl.loc_vars(self, ...) or {}
|
||||
|
|
@ -91,7 +92,7 @@ back {
|
|||
key = "blossom",
|
||||
pronouns = "any_all",
|
||||
artist = "Roland_bakersdozenbagels",
|
||||
config = {extra = {alt_times = 8, times = 2}},
|
||||
config = {extra = {alt_times = 4, times = 2}},
|
||||
attributes = {"boss_blind"},
|
||||
loc_vars = function(self, _, _)
|
||||
return {vars = {self.config.extra.times, self.config.extra.alt_times}}
|
||||
|
|
|
|||
77
src/tag.lua
|
|
@ -5,11 +5,86 @@ SMODS.Atlas {
|
|||
path = "tag.png",
|
||||
}
|
||||
|
||||
local function apply_frozen(tag, context)
|
||||
return function()
|
||||
q {
|
||||
delay = 0.4,
|
||||
trigger = "after",
|
||||
func = function()
|
||||
play_sound "tarot1"
|
||||
tag:juice_up(0.3, 0.5)
|
||||
end,
|
||||
}
|
||||
|
||||
q {
|
||||
delay = 0.15,
|
||||
trigger = "after",
|
||||
func = function()
|
||||
context.card:flip()
|
||||
play_sound("card1", 0.85)
|
||||
context.card:juice_up(0.3, 0.3)
|
||||
end,
|
||||
}
|
||||
|
||||
delay(0.2)
|
||||
|
||||
q {
|
||||
delay = 0.1,
|
||||
trigger = "after",
|
||||
func = function()
|
||||
context.card:set_edition {Roland_frozen = true}
|
||||
end,
|
||||
}
|
||||
|
||||
q {
|
||||
delay = 0.15,
|
||||
trigger = "after",
|
||||
func = function()
|
||||
context.card:flip()
|
||||
play_sound("tarot2", 0.85, 0.6)
|
||||
context.card:juice_up(0.3, 0.3)
|
||||
end,
|
||||
}
|
||||
|
||||
delay(0.1)
|
||||
end
|
||||
end
|
||||
|
||||
SMODS.Tag {
|
||||
key = "freeze",
|
||||
atlas = "tag",
|
||||
min_ante = 1,
|
||||
pos = {x = 0, y = 0},
|
||||
config = {amount = 5},
|
||||
loc_vars = function(self, info_queue, tag)
|
||||
info_queue[#info_queue + 1] = G.P_CENTERS.e_Roland_frozen
|
||||
tag.ability = tag.ability or {}
|
||||
return {vars = {tag.ability.amount or self.config.amount}}
|
||||
end,
|
||||
apply = function(self, tag, context)
|
||||
tag.ability = tag.ability or {}
|
||||
|
||||
if not tag.triggered and context.type == "Bakery_play_hand_late" and tag.ability.amount == 0 then
|
||||
tag.triggered = true
|
||||
tag:yep("X", G.C.RED, f().tru)
|
||||
end
|
||||
|
||||
if tag.triggered or
|
||||
(tag.ability.amount or self.config.amount) <= 0 or
|
||||
context.type ~= "Bakery_score_card" then
|
||||
return
|
||||
end
|
||||
|
||||
tag.ability.amount = (tag.ability.amount or self.config.amount) - 1
|
||||
return {func = apply_frozen(tag, context)}
|
||||
end,
|
||||
}
|
||||
|
||||
SMODS.Tag {
|
||||
key = "invisible",
|
||||
atlas = "tag",
|
||||
min_ante = 2,
|
||||
pos = {x = 0, y = 0},
|
||||
pos = {x = 1, y = 0},
|
||||
apply = function(_, tag)
|
||||
local modifiers = G.GAME.modifiers
|
||||
|
||||
|
|
|
|||