diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..cb1b7c5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,43 @@ +# Compiled Lua sources +luac.out + +# luarocks build files +*.src.rock +*.zip +*.tar.gz + +# Object files +*.o +*.os +*.ko +*.obj +*.elf + +# Precompiled Headers +*.gch +*.pch + +# Libraries +*.lib +*.a +*.la +*.lo +*.def +*.exp + +# Shared objects (inc. Windows DLLs) +*.dll +*.so +*.so.* +*.dylib + +# Executables +*.exe +*.out +*.app +*.i*86 +*.x86_64 +*.hex + +# Syncthing +.stfolder diff --git a/manifest.json b/manifest.json index 8c7da80..5d804c5 100644 --- a/manifest.json +++ b/manifest.json @@ -17,5 +17,5 @@ "conflicts": [ "Jen" ], - "version": "1.5.33" + "version": "1.5.34" } \ No newline at end of file diff --git a/src/joker.lua b/src/joker.lua index 4d63ca2..1603100 100644 --- a/src/joker.lua +++ b/src/joker.lua @@ -39,7 +39,6 @@ local food = { "j_cry_jawbreaker", "j_cry_mellowcreme", "j_cry_brittle", - "j_jane_peppino", } local granddad_palette = { @@ -50,14 +49,20 @@ local granddad_palette = { } local function food_jokers_count() - if not G.jokers then + if not G.jokers or not next(G.jokers.cards) then return 0 end local amount = 0 - for _, v in pairs(food) do - amount = amount + #SMODS.find_card(v) + if G.jokers.cards[1] and G.jokers.cards[1].has_attribute then + for _, v in pairs(G.jokers.cards) do + amount = amount + (v:has_attribute "food" and 1 or 0) + end + else + for _, v in pairs(food) do + amount = amount + #SMODS.find_card(v) + end end return amount @@ -378,13 +383,13 @@ SMODS.Joker { "{C:inactive,s:0.75,E:1}#11#{C:red,s:1.5,E:1}#12#", }, }, - config = {extra = {corrupted_steel = 6, is_corrupted = false, milestone = 3, progress = 0}}, + config = {extra = {corrupted_steel = Cryptid and 20 or 5, is_corrupted = false, milestone = 3, progress = 0}}, pos = {x = 0, y = 0}, sinis = {x = 2, y = 0}, soul_pos = {x = 1, y = 0}, blueprint_compat = true, - cost = Cryptid and 8 or 20, - rarity = Cryptid and 3 or 4, + cost = 8, + rarity = 3, loc_vars = function(_, info_queue, card) info_queue[#info_queue + 1] = G.P_CENTERS.m_steel local ability = card.ability.extra or {} @@ -402,7 +407,7 @@ SMODS.Joker { is_corrupted and "Purifies " or "", is_corrupted and "in " or "", is_corrupted and "" or "Destroying ", - effective .. (is_corrupted and " round" or " steel card") .. plural, + effective .. (is_corrupted and " ante" or " steel card") .. plural, is_corrupted and "" or "corrupts ", is_corrupted and "Destroying steel cards" or "this Joker", is_corrupted and "prolongs the " or "", @@ -427,7 +432,7 @@ SMODS.Joker { local extra = card.ability.extra or {} Jane.oxy(card, context.removed) - if context.end_of_round and + if context.ante_end and context.ante_change and extra.progress > 0 and not context.individual and not context.repetition and not @@ -607,18 +612,16 @@ SMODS.Joker { loc_txt = { name = "Peppino Spaghetti", text = { - operator_prefix .. operator .. "2^x{C:red} Mult{} for every", - "{C:attention}food or Peppino Joker", - "in your possession", - "{C:inactive}(Currently " .. operator_prefix .. operator .. "#1#{C:red} Mult{C:inactive})", + operator_prefix .. operator .. "2{C:mult} Mult{} per {C:attention}Food Joker", + "{C:inactive}(Currently " .. operator_prefix .. operator .. "#1#{C:mult} Mult{C:inactive})", }, }, pos = {x = 0, y = 0}, soul_pos = {x = 1, y = 0}, config = {extra = {base = 2}}, - rarity = Cryptid and exotic or 3, + rarity = 3, + cost = 8, blueprint_compat = true, - cost = Cryptid and 50 or 20, loc_vars = function(_, _, card) return {vars = {card.ability.extra.base ^ food_jokers_count()}} end, diff --git a/src/slugcat.lua b/src/slugcat.lua index a764ef3..c899ebf 100644 --- a/src/slugcat.lua +++ b/src/slugcat.lua @@ -703,9 +703,9 @@ SMODS.Joker { loc_txt = { name = "The Rot", text = { - "Clogs up your Joker slots", - "{C:attention}Duplicates itself{} at the", - "end of {C:attention}every ante", + not Cryptid and "{C:inactive,E:1}Does nothing" or nil, + Cryptid and "{C:attention}Duplicates itself{} at the" or nil, + Cryptid and "end of {C:attention}every ante" or nil, }, }, pos = {x = 0, y = 0}, @@ -721,7 +721,7 @@ SMODS.Joker { return not not next(SMODS.find_card("j_jane_rot")) end, - calculate = function(_, card, context) + calculate = Cryptid and function(_, card, context) local function has_room() return G.jokers.config.card_count < G.jokers.config.card_limit end @@ -743,5 +743,5 @@ SMODS.Joker { else card.cloned = false end - end, + end or nil, }