diff --git a/functions/pokefamily.lua b/functions/pokefamily.lua index 30d6dabe..2184007f 100644 --- a/functions/pokefamily.lua +++ b/functions/pokefamily.lua @@ -170,6 +170,7 @@ local default_family_list = { { "zorua", "zoroark" }, { "deino", "zweilous", "hydreigon" }, { "litleo", "pyroar" }, + {"binacle", "barbaracle"}, { "bunnelby", "diggersby"}, { { key = "pumpkaboo", form = 0 }, { key = "pumpkaboo", form = 1 }, { key = "pumpkaboo", form = 2 }, { key = "pumpkaboo", form = 3 }, { key = "gourgeist", form = 0 }, { key = "gourgeist", form = 1 }, { key = "gourgeist", form = 2 }, { key = "gourgeist", form = 3 }, diff --git a/localization/en-us.lua b/localization/en-us.lua index 1e8adad2..db75998b 100644 --- a/localization/en-us.lua +++ b/localization/en-us.lua @@ -5135,6 +5135,27 @@ return { "also contains a {C:attention}King{} or {C:attention}Queen{}" } }, + j_poke_binacle = { + name = "Binacle", + text = { + "Retrigger {C:attention}first #2# #1#s{} scored", + "{C:attention}#4#{} additional time", + "{br:3}ERROR - CONTACT STEAK", + "Retrigger {C:attention}first #3# #1#s{} held in hand", + "{C:attention}#4#{} additional time", + "{C:inactive,s:0.8}(Evolves after {C:attention,s:0.8}#5#{C:inactive,s:0.8} rounds)" + } + }, + j_poke_barbaracle = { + name = "Barbaracle", + text = { + "Retrigger {C:attention}first #2# #1#s{} scored", + "{C:attention}#4#{} additional time", + "{br:3}ERROR - CONTACT STEAK", + "Retrigger {C:attention}first #3# #1#s{} held in hand", + "{C:attention}#4#{} additional time", + } + }, j_poke_sylveon = { name = 'Sylveon', text = { diff --git a/lovely/poke_utils.toml b/lovely/poke_utils.toml index 333a5b58..ec040d28 100644 --- a/lovely/poke_utils.toml +++ b/lovely/poke_utils.toml @@ -275,4 +275,4 @@ target = "functions/button_callbacks.lua" pattern = "if area == G.consumeables then" position = "at" payload = "if area == G.consumeables or area == G.jokers then" -match_indent = true +match_indent = true \ No newline at end of file diff --git a/pokemon/pokejokers_23.lua b/pokemon/pokejokers_23.lua index b6ca6d63..11be815e 100644 --- a/pokemon/pokejokers_23.lua +++ b/pokemon/pokejokers_23.lua @@ -115,9 +115,147 @@ local pyroar={ -- Slurpuff 685 -- Inkay 686 -- Malamar 687 + -- Binacle 688 +local binacle={ + name = "binacle", + gen = 6, + pos = {x = 24, y = 45}, + config = {extra = {value = 7, retriggers = 1, retrigger_hand = 2, retrigger_held = 2, retriggered_hand = 0, retriggered_held = 0, retriggered_held_end = 0, rounds = 4}}, + loc_vars = function(self, info_queue, card) + type_tooltip(self, info_queue, card) + local abbr = card.ability.extra + return {vars = {abbr.value, abbr.retrigger_hand, abbr.retrigger_held, abbr.retriggers, abbr.rounds}} + end, + rarity = 1, + cost = 5, + stage = "Basic", + ptype = "Earth", + atlas = "AtlasJokersBasicNatdex", + blueprint_compat = true, + calculate = function(self, card, context) + + if context.setting_blind then + card.ability.extra.retriggered_held_end = 0 + end + if context.before then + card.ability.extra.retriggered_hand = 0 + card.ability.extra.retriggered_held = 0 + end + + if context.repetition and context.cardarea == G.play and context.other_card:get_id() == card.ability.extra.value and card.ability.extra.retriggered_hand < card.ability.extra.retrigger_hand then + if not context.blueprint then + card.ability.extra.retriggered_hand = card.ability.extra.retriggered_hand + 1 + end + return { + message = localize('k_again_ex'), + repetitions = card.ability.extra.retriggers, + card = card + } + end + + if context.repetition and context.cardarea == G.hand and context.other_card:get_id() == card.ability.extra.value then + if context.end_of_round then + if card.ability.extra.retriggered_held_end < card.ability.extra.retrigger_held then + if not context.blueprint then + card.ability.extra.retriggered_held_end = card.ability.extra.retriggered_held_end + 1 + end + return { + message = localize('k_again_ex'), + repetitions = card.ability.extra.retriggers, + card = card + } + end + + elseif card.ability.extra.retriggered_held < card.ability.extra.retrigger_held then + if not context.blueprint then + card.ability.extra.retriggered_held = card.ability.extra.retriggered_held + 1 + end + return { + message = localize('k_again_ex'), + repetitions = card.ability.extra.retriggers, + card = card + } + end + end + + return level_evo(self, card, context, "j_poke_barbaracle") + end, +} + -- Barbaracle 689 +local barbaracle={ + name = "barbaracle", + gen = 6, + pos = {x = 26, y = 45}, + config = {extra = {value = 7, retriggers = 1, retrigger_hand = 7, retrigger_held = 7, retriggered_hand = 0, retriggered_held = 0, retriggered_held_end = 0}}, + loc_vars = function(self, info_queue, card) + type_tooltip(self, info_queue, card) + local abbr = card.ability.extra + return {vars = {abbr.value, abbr.retrigger_hand, abbr.retrigger_held, abbr.retriggers}} + end, + rarity = "poke_safari", + cost = 6, + stage = "One", + ptype = "Earth", + atlas = "AtlasJokersBasicNatdex", + blueprint_compat = true, + calculate = function(self, card, context) + + if context.setting_blind then + card.ability.extra.retriggered_held_end = 0 + end + if context.before then + card.ability.extra.retriggered_hand = 0 + card.ability.extra.retriggered_held = 0 + end + + if context.repetition and context.cardarea == G.play and card.ability.extra.retriggered_hand < card.ability.extra.retrigger_hand then + if (context.other_card:get_id() == card.ability.extra.value) then + if not context.blueprint then + card.ability.extra.retriggered_hand = card.ability.extra.retriggered_hand + 1 + end + return { + message = localize('k_again_ex'), + repetitions = card.ability.extra.retriggers, + card = card + } + end + end + + if context.repetition and context.cardarea == G.hand and context.other_card:get_id() == card.ability.extra.value then + if context.end_of_round then + if card.ability.extra.retriggered_held_end < card.ability.extra.retrigger_held then + if not context.blueprint then + card.ability.extra.retriggered_held_end = card.ability.extra.retriggered_held_end + 1 + end + return { + message = localize('k_again_ex'), + repetitions = card.ability.extra.retriggers, + card = card + } + end + + elseif card.ability.extra.retriggered_held < card.ability.extra.retrigger_held then + if not context.blueprint then + card.ability.extra.retriggered_held = card.ability.extra.retriggered_held + 1 + end + return { + message = localize('k_again_ex'), + repetitions = card.ability.extra.retriggers, + card = card + } + end + end + + end, + --megas = {"mega_barbaracle"} +} + -- Skrelp 690 return {name = "Pokemon Jokers 661-690", - list = {litleo, pyroar}, + list = { + litleo, pyroar, + binacle, barbaracle, + }, }