Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 83 additions & 1 deletion challenges/pokechallenges.lua
Original file line number Diff line number Diff line change
Expand Up @@ -508,8 +508,90 @@ local mystery_dungeon = {
text_colour = HEX("FFCB01"),
}

local unbearable = {
object_type = "Challenge",
key = "unbearable",
rules = {
custom = {
{id = 'no_shop_jokers'},
{id = 'debuff_played_cards'},
{id = 'unova_X_blind_size', value = 3},
},
modifiers = {
{id = 'joker_slots', value = 2},
{id = 'hands', value = 2},
{id = 'consumable_slots', value = 4},
{id = 'dollars', value = 10},
},
},
jokers = {
{id = "j_poke_teddiursa", eternal = true},
{id = "j_unova_cubchoo", eternal = true},
},
consumeables = {
{id = "c_poke_colorless_energy"},
{id = "c_poke_water_energy"},
},
vouchers = {
},
deck = {
cards = {
{s ='C',r='2',},{s ='C',r='3',},{s ='C',r='4',},{s ='C',r='5',},{s ='C',r='6',},{s ='C',r='7',},{s ='C',r='8',},
{s ='C',r='9',},{s ='C',r='T',},{s ='C',r='J',},{s ='C',r='Q',},{s ='C',r='K',},{s ='C',r='A',},
{s ='C',r='2',},{s ='C',r='3',},{s ='C',r='4',},{s ='C',r='5',},{s ='C',r='6',},{s ='C',r='7',},{s ='C',r='8',},
{s ='C',r='9',},{s ='C',r='T',},{s ='C',r='J',},{s ='C',r='Q',},{s ='C',r='K',},{s ='C',r='A',},
{s ='C',r='2',},{s ='C',r='3',},{s ='C',r='4',},{s ='C',r='5',},{s ='C',r='6',},{s ='C',r='7',},{s ='C',r='8',},
{s ='C',r='9',},{s ='C',r='T',},{s ='C',r='J',},{s ='C',r='Q',},{s ='C',r='K',},{s ='C',r='A',},
{s ='C',r='2',},{s ='C',r='3',},{s ='C',r='4',},{s ='C',r='5',},{s ='C',r='6',},{s ='C',r='7',},{s ='C',r='8',},
{s ='C',r='9',},{s ='C',r='T',},{s ='C',r='J',},{s ='C',r='Q',},{s ='C',r='K',},{s ='C',r='A',},
},
type = 'Challenge Deck'
},
restrictions = {
banned_cards = {
{id = 'c_judgement'},
{id = 'c_poke_pokeball'},
{id = 'c_poke_greatball'},
{id = 'c_poke_ultraball'},
{id = 'c_poke_masterball'},
{id = 'c_ankh'},
{id = 'c_wraith'},
{id = 'c_soul'},
{id = 'v_blank'},
{id = 'v_antimatter'},
{id = 'p_buffoon_normal_1', ids = {
'p_buffoon_normal_1','p_buffoon_normal_2','p_buffoon_jumbo_1','p_buffoon_mega_1',
}},
},
banned_tags = {
{id = 'tag_rare'},
{id = 'tag_uncommon'},
{id = 'tag_holo'},
{id = 'tag_polychrome'},
{id = 'tag_negative'},
{id = 'tag_foil'},
{id = 'tag_buffoon'},
{id = 'tag_top_up'},
{id = 'tag_poke_shiny_tag'},
{id = 'tag_poke_stage_one_tag'},
{id = 'tag_poke_safari_tag'}
},
banned_other = {
{id = 'bl_club', type = 'blind'},
{id = 'bl_final_heart', type = 'blind'},
{id = 'bl_final_leaf', type = 'blind'},
}
},
}

return {name = "Challenges",
list = {
unbearable,
}
}

return {name = "Challenges",
list = {nuzlocke, goodasgold, parenthood, littlecup, hammertime, lonesome, randomizer, delibird_delimma, safety_first, mystery_dungeon}
list = {nuzlocke, goodasgold, parenthood, littlecup, hammertime, lonesome, randomizer, delibird_delimma, safety_first, mystery_dungeon, unbearable}
}


18 changes: 18 additions & 0 deletions localization/en-us.lua
Original file line number Diff line number Diff line change
Expand Up @@ -5031,6 +5031,24 @@ return {
"{C:inactive}(Currently {C:mult}+#2#{C:inactive} Mult){}",
}
},
j_unova_cubchoo = {
name = "Cubchoo",
text = {
"This Joker gains {C:mult}+#2#{} Mult",
"per scoring {C:clubs}#4#{} in played hand",
"Lose {C:mult}#3#{} Mult if hand has no scoring {C:clubs}#5#{}",
"{C:inactive,s:0.8}(Evolves at {C:mult,s:0.8}+#1#{C:inactive,s:0.8} / #6# Mult)",
}
},
j_unova_beartic = {
name = "Beartic",
text = {
"This Joker gains {C:mult}+#2#{} Mult",
"per scoring {C:clubs}#4#{} in played hand",
"Lose {C:mult}#3#{} Mult if hand has no scoring {C:clubs}#5#{}",
"{C:inactive,s:0.8}(Currently {C:mult,s:0.8}+#1#{C:inactive,s:0.8} Mult)"
}
},
j_poke_golett = {
name = "Golett",
text = {
Expand Down
17 changes: 16 additions & 1 deletion lovely/gameplay_functions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -242,4 +242,19 @@ if G.GAME.modifiers.reset_no_interest then
G.GAME.modifiers.no_interest = nil
end
'''
match_indent = true
match_indent = true

# Blind Size Modifier
[[patches]]
[patches.pattern]
target = 'blind.lua'
pattern = '''
self.chips = get_blind_amount(G.GAME.round_resets.ante)*self.mult*G.GAME.starting_params.ante_scaling
'''
position = "after"
payload = '''
if G.GAME.modifiers.unova_X_blind_size then
self.chips = self.chips*G.GAME.modifiers.unova_X_blind_size
end
'''
match_indent = true
109 changes: 108 additions & 1 deletion pokemon/pokejokers_21.lua
Original file line number Diff line number Diff line change
Expand Up @@ -300,7 +300,114 @@ local chandelure={
-- Fraxure 611
-- Haxorus 612
-- Cubchoo 613
local cubchoo={
name = "cubchoo",
pos = {x = 24, y = 40},
config = {extra = {mult = 0, mult_mod = 1, mult_minus = 20, suit = "Clubs", clubs_scored = 0}, evo_rqmt = 40},
loc_vars = function(self, info_queue, center)
type_tooltip(self, info_queue, center)
return {vars = {center.ability.extra.mult, center.ability.extra.mult_mod, center.ability.extra.mult_minus, localize(center.ability.extra.suit, 'suits_singular'), localize(center.ability.extra.suit, 'suits_plural') , self.config.evo_rqmt}}
end,
rarity = 2,
cost = 6,
stage = "Basic",
ptype = "Water",
atlas = "AtlasJokersBasicNatdex",
perishable_compat = false,
blueprint_compat = true,
eternal_compat = true,
calculate = function(self, card, context)
if context.cardarea == G.jokers and context.scoring_hand then
if not context.blueprint then
if context.before then
local club_count = 0
for i=1, #context.scoring_hand do
if context.scoring_hand[i]:is_suit(card.ability.extra.suit) then club_count = club_count + 1 end
end
card.ability.extra.clubs_scored = club_count
if card.ability.extra.clubs_scored == 0 then
card.ability.extra.mult = math.max(card.ability.extra.mult - card.ability.extra.mult_minus, 0)
return {
message = localize{type='variable',key='a_mult_minus',vars={card.ability.extra.mult_minus}},
colour = G.C.RED, card = card
}
else
card.ability.extra.mult = card.ability.extra.mult + card.ability.extra.clubs_scored * card.ability.extra.mult_mod
return {
message = localize('k_upgrade_ex'),
colour = G.C.MULT
}
end
card.ability.extra.clubs_scored = 0
end
end
if context.joker_main and card.ability.extra.mult > 0 then
return {
message = localize{type = 'variable', key = 'a_mult', vars = {card.ability.extra.mult}},
colour = G.C.MULT,
mult_mod = card.ability.extra.mult
}
end
end
return scaling_evo(self, card, context, "j_unova_beartic", card.ability.extra.mult, self.config.evo_rqmt)
end,
}

-- Beartic 614
local beartic={
name = "beartic",
pos = {x = 26, y = 40},
config = {extra = {mult = 0, mult_mod = 3, mult_minus = 25, suit = "Clubs", clubs_scored = 0}},
loc_vars = function(self, info_queue, center)
type_tooltip(self, info_queue, center)
info_queue[#info_queue+1] = {set = 'Other', key = 'designed_by', vars = {"TunaBear"}}
return {vars = {center.ability.extra.mult, center.ability.extra.mult_mod, center.ability.extra.mult_minus, localize(center.ability.extra.suit, 'suits_singular'), localize(center.ability.extra.suit, 'suits_plural')}}
end,
designer = "TunaBear",
rarity = "poke_safari",
cost = 9,
stage = "One",
ptype = "Water",
atlas = "AtlasJokersBasicNatdex",
perishable_compat = false,
blueprint_compat = true,
eternal_compat = true,
calculate = function(self, card, context)
if context.cardarea == G.jokers and context.scoring_hand then
if not context.blueprint then
if context.before then
local club_count = 0
for i=1, #context.scoring_hand do
if context.scoring_hand[i]:is_suit(card.ability.extra.suit) then club_count = club_count + 1 end
end
card.ability.extra.clubs_scored = club_count
if card.ability.extra.clubs_scored == 0 then
card.ability.extra.mult = math.max(card.ability.extra.mult - card.ability.extra.mult_minus, 0)
return {
message = localize{type='variable',key='a_mult_minus',vars={card.ability.extra.mult_minus}},
colour = G.C.RED, card = card
}
else
card.ability.extra.mult = card.ability.extra.mult + card.ability.extra.clubs_scored * card.ability.extra.mult_mod
return {
message = localize('k_upgrade_ex'),
colour = G.C.MULT
}
end
card.ability.extra.clubs_scored = 0
end
end
if context.joker_main and card.ability.extra.mult > 0 then
return {
message = localize{type = 'variable', key = 'a_mult', vars = {card.ability.extra.mult}},
colour = G.C.MULT,
mult_mod = card.ability.extra.mult,
}
end
end
end,
}

-- Cryogonal 615
-- Shelmet 616
-- Accelgor 617
Expand Down Expand Up @@ -519,5 +626,5 @@ local bisharp={
-- Vullaby 629
-- Mandibuzz 630
return {name = "Pokemon Jokers 601-630",
list = {elgyem, beheeyem, litwick, lampent, chandelure, golett, golurk, pawniard, bisharp},
list = {elgyem, beheeyem, litwick, lampent, chandelure, cubchoo, beartic, golett, golurk, pawniard, bisharp},
}