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 = {
|
||||||
|
tag_Roland_freeze = {
|
||||||
|
name = "Freeze Tag",
|
||||||
|
text = {"Apply {C:dark_edition}Frozen", "to the next {C:attention}#1#", "scored cards"},
|
||||||
|
},
|
||||||
tag_Roland_invisible = {
|
tag_Roland_invisible = {
|
||||||
name = "Invisible Tag",
|
name = "Invisible Tag",
|
||||||
text = {"{C:attention}Duplicate {}a random Joker", "{C:inactive}(Must have room)"},
|
text = {"{C:attention}Duplicate {}a random Joker", "{C:inactive}(Must have room)"},
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
"author": [
|
"author": [
|
||||||
"Emik"
|
"Emik"
|
||||||
],
|
],
|
||||||
"version": "2.6.7",
|
"version": "2.6.8",
|
||||||
"badge_colour": "8BE9FD",
|
"badge_colour": "8BE9FD",
|
||||||
"main_file": "src/main.lua",
|
"main_file": "src/main.lua",
|
||||||
"badge_text_colour": "44475A",
|
"badge_text_colour": "44475A",
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@ end
|
||||||
local back = (function()
|
local back = (function()
|
||||||
local x = 0
|
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)
|
return function(tbl)
|
||||||
local key = tbl.key
|
local key = tbl.key
|
||||||
local apply = tbl.apply
|
local apply = tbl.apply
|
||||||
|
|
@ -48,6 +48,7 @@ local back = (function()
|
||||||
key = key,
|
key = key,
|
||||||
pos = tbl.pos,
|
pos = tbl.pos,
|
||||||
atlas = "sleeve",
|
atlas = "sleeve",
|
||||||
|
artist = tbl.artist,
|
||||||
config = tbl.config and f(tbl.config):table() or nil,
|
config = tbl.config and f(tbl.config):table() or nil,
|
||||||
loc_vars = function(self, ...)
|
loc_vars = function(self, ...)
|
||||||
local ret = tbl.loc_vars and tbl.loc_vars(self, ...) or {}
|
local ret = tbl.loc_vars and tbl.loc_vars(self, ...) or {}
|
||||||
|
|
@ -91,7 +92,7 @@ back {
|
||||||
key = "blossom",
|
key = "blossom",
|
||||||
pronouns = "any_all",
|
pronouns = "any_all",
|
||||||
artist = "Roland_bakersdozenbagels",
|
artist = "Roland_bakersdozenbagels",
|
||||||
config = {extra = {alt_times = 8, times = 2}},
|
config = {extra = {alt_times = 4, times = 2}},
|
||||||
attributes = {"boss_blind"},
|
attributes = {"boss_blind"},
|
||||||
loc_vars = function(self, _, _)
|
loc_vars = function(self, _, _)
|
||||||
return {vars = {self.config.extra.times, self.config.extra.alt_times}}
|
return {vars = {self.config.extra.times, self.config.extra.alt_times}}
|
||||||
|
|
|
||||||
77
src/tag.lua
|
|
@ -5,11 +5,86 @@ SMODS.Atlas {
|
||||||
path = "tag.png",
|
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 {
|
SMODS.Tag {
|
||||||
key = "invisible",
|
key = "invisible",
|
||||||
atlas = "tag",
|
atlas = "tag",
|
||||||
min_ante = 2,
|
min_ante = 2,
|
||||||
pos = {x = 0, y = 0},
|
pos = {x = 1, y = 0},
|
||||||
apply = function(_, tag)
|
apply = function(_, tag)
|
||||||
local modifiers = G.GAME.modifiers
|
local modifiers = G.GAME.modifiers
|
||||||
|
|
||||||
|
|
|
||||||