Skip to content

Commit f9c05dc

Browse files
committed
new joker & ceramic tweaks
1 parent 58a308f commit f9c05dc

File tree

6 files changed

+106
-14
lines changed

6 files changed

+106
-14
lines changed

assets/1x/jokers.png

1.63 KB
Loading

assets/2x/jokers.png

1.82 KB
Loading

items/jokers/misc_jokers.lua

Lines changed: 36 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1695,6 +1695,40 @@ local qu = {
16951695
end,
16961696
}
16971697

1698+
local memento_mori = {
1699+
order = 32,
1700+
object_type = "Joker",
1701+
key = "memento_mori",
1702+
rarity = 2,
1703+
cost = 5,
1704+
dependencies = {
1705+
items = {
1706+
"set_entr_misc_jokers",
1707+
}
1708+
},
1709+
blueprint_compat = true,
1710+
eternal_compat = true,
1711+
pos = { x = 8, y = 4 },
1712+
atlas = "jokers",
1713+
demicoloncompat = true,
1714+
calculate = function(self, card, context)
1715+
if context.setting_blind and not context.repetition and not context.blueprint then
1716+
local eval = function() return not card.ability.triggered and not G.RESET_JIGGLES end
1717+
juice_card_until(card, eval, true)
1718+
end
1719+
if context.destroy_card then
1720+
if not card.ability.triggered then
1721+
local dcard = G.play.cards[1]
1722+
if dcard and dcard == context.destroy_card then
1723+
card.ability.triggered = true
1724+
return {remove = not SMODS.is_eternal(dcard)}
1725+
end
1726+
end
1727+
end
1728+
if context.end_of_round and not context.individual then card.ability.triggered = false end
1729+
end,
1730+
}
1731+
16981732
return {
16991733
items = {
17001734
surreal,
@@ -1730,6 +1764,7 @@ return {
17301764
dog_chocolate,
17311765
nucleotide,
17321766
afterimage,
1733-
qu
1767+
qu,
1768+
memento_mori
17341769
}
17351770
}

items/misc/enhancements.lua

Lines changed: 56 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -190,22 +190,67 @@ local ceramic = {
190190
and context.cardarea == G.play
191191
and not context.repetition
192192
and not SMODS.is_eternal(card)
193-
and not (card.will_shatter or card.destroyed or card.shattered) then
194-
G.E_MANAGER:add_event(Event({
195-
trigger = "immediate",
196-
func = function()
197-
198-
if (#G.consumeables.cards + G.GAME.consumeable_buffer <= G.consumeables.config.card_limit) then
193+
and not (card.will_shatter or card.destroyed or card.shattered) and not card.activated then
194+
if (#G.consumeables.cards + G.GAME.consumeable_buffer <= G.consumeables.config.card_limit) then
195+
G.E_MANAGER:add_event(Event({
196+
trigger = "immediate",
197+
func = function()
199198
SMODS.add_card{
200199
area=G.consumeables,
201200
set = "Consumeables"
202201
}
202+
card:juice_up(0.9, 0.9)
203+
card:shatter()
204+
return true
205+
end,
206+
}))
207+
else
208+
G.E_MANAGER:add_event(Event({
209+
trigger = "immediate",
210+
func = function()
211+
card:juice_up(0.9, 0.9)
212+
card:shatter()
213+
return true
214+
end,
215+
}))
216+
end
217+
card.activated = true
218+
end
219+
if context.destroying_card and context.destroying_card == card and not card.activated then
220+
if (#G.consumeables.cards + G.GAME.consumeable_buffer <= G.consumeables.config.card_limit) then
221+
G.E_MANAGER:add_event(Event({
222+
trigger = "immediate",
223+
func = function()
224+
SMODS.add_card{
225+
area=G.consumeables,
226+
set = "Consumeables"
227+
}
228+
return true
203229
end
204-
card:juice_up(0.9, 0.9)
205-
card:shatter()
206-
return true
207-
end,
208-
}))
230+
}))
231+
end
232+
card.activated = true
233+
end
234+
if context.remove_playing_cards and not card.activated then
235+
local check
236+
for i, v in pairs(context.removed) do
237+
if v == card then check = true end
238+
end
239+
if check then
240+
if (#G.consumeables.cards + G.GAME.consumeable_buffer <= G.consumeables.config.card_limit) then
241+
G.E_MANAGER:add_event(Event({
242+
trigger = "immediate",
243+
func = function()
244+
SMODS.add_card{
245+
area=G.consumeables,
246+
set = "Consumeables"
247+
}
248+
return true
249+
end
250+
}))
251+
end
252+
card.activated = true
253+
end
209254
end
210255
end,
211256
entr_credits = {

lib/hooks.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1720,7 +1720,7 @@ function ease_ante(mod)
17201720
for i, v in pairs(G.GAME.runes or {}) do
17211721
local ret = G.P_RUNES[v.key]:calculate(v, {entr_ante_change = mod})
17221722
if ret and ret.ante_mod then
1723-
v:yep("+", G.C.DARK_EDITION, function()
1723+
v:yep("+", G.C.PURPLE, function()
17241724
return true
17251725
end)
17261726
mod = ret.ante_mod

localization/en-us.lua

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ local decs = {
3737
"Has its own {C:attention}Rank{}, and",
3838
"counts as every {C:attention}Suit{}",
3939
"When scored {C:red}destroy{} this card",
40-
"and create a {C:attention}random{} consumable"
40+
"When destroyed create a {C:attention}random{} consumable"
4141
}
4242
}
4343
},
@@ -784,6 +784,18 @@ local decs = {
784784
"is selected"
785785
}
786786
},
787+
j_entr_memento_mori= {
788+
name = {
789+
"A Knee Slapping Joke Joker Title",
790+
"Referring to how Entropy Joker",
791+
"Effects are always kinda like that",
792+
"(Memento Mori Entropic Edit)"
793+
},
794+
text = {
795+
"The {C:attention}First{} played card",
796+
"each round is {C:attention}destroyed{}"
797+
}
798+
},
787799
},
788800
Blind = {
789801
bl_entr_red = {

0 commit comments

Comments
 (0)