Skip to content

Commit 4a7c213

Browse files
authored
Add files via upload
1 parent e6d84b9 commit 4a7c213

File tree

9 files changed

+432
-6
lines changed

9 files changed

+432
-6
lines changed

BonusBlinds/BonusBlinds.lua

Lines changed: 231 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
--- PREFIX: bb
55
--- MOD_AUTHOR: [mathguy]
66
--- MOD_DESCRIPTION: Bonus Blinds
7-
--- VERSION: 1.4.0
7+
--- VERSION: 1.4.1
88
----------------------------------------------
99
------------MOD CODE -------------------------
1010

@@ -562,7 +562,7 @@ SMODS.Bonus {
562562
end
563563
}
564564

565-
--- Uncommon (10)
565+
--- Uncommon (11)
566566

567567
SMODS.Bonus {
568568
key = 'redo',
@@ -988,7 +988,32 @@ SMODS.Bonus {
988988
end
989989
}
990990

991-
--- Rare (4)
991+
SMODS.Bonus {
992+
key = 'eternal',
993+
loc_txt = {
994+
name = "Eternal Blind",
995+
text = {
996+
"Play {C:red}#1#{} with",
997+
"{C:blue}X3 Blind Size{}"
998+
}
999+
},
1000+
atlas = "another",
1001+
pos = {x = 6, y = 2},
1002+
cost = 3,
1003+
rarity = 'Uncommon',
1004+
set_ability = function(self, card, initial, delay_sprites)
1005+
card.ability.the_blind = 'bl_bb_infinity'
1006+
end,
1007+
loc_vars = function(self, info_queue, card)
1008+
info_queue[#info_queue+1] = {key = 'blind_infinity', set = 'Other'}
1009+
return {vars = {localize{type ='name_text', key = card.ability.the_blind, set = 'Blind'}}}
1010+
end,
1011+
use2 =function(self, card, area, copier)
1012+
bonus_selection(card.ability.the_blind, {blind_mult = 3})
1013+
end
1014+
}
1015+
1016+
--- Rare (5)
9921017

9931018
SMODS.Bonus {
9941019
key = 'luck',
@@ -1104,6 +1129,63 @@ SMODS.Bonus {
11041129
end
11051130
}
11061131

1132+
SMODS.Bonus {
1133+
key = 'celestial',
1134+
loc_txt = {
1135+
name = "Celestial Blind",
1136+
text = {
1137+
"Play {C:attention}#1#{} to upgrade",
1138+
"your {C:attention}most played hand{} by",
1139+
"{C:attention}#3#{} levels",
1140+
"{s:0.8,C:inactive}(Most Played Hand: {s:0.8,C:attention}#2#{s:0.8,C:inactive})"
1141+
}
1142+
},
1143+
atlas = "another",
1144+
pos = {x = 7, y = 2},
1145+
rarity = 'Rare',
1146+
cost = 5,
1147+
set_ability = function(self, card, initial, delay_sprites)
1148+
card.ability.the_blind = 'bl_arm'
1149+
card.ability.reward = {planet_levels = {hand = ((G and G.GAME and G.GAME.current_round and G.GAME.current_round.most_played_poker_hand) or localize('ph_most_played')), amount = 4}}
1150+
end,
1151+
loc_vars = function(self, info_queue, card)
1152+
info_queue[#info_queue+1] = {key = 'blind_arm', set = 'Other'}
1153+
return {vars = {localize{type ='name_text', key = card.ability.the_blind, set = 'Blind'}, localize(G.GAME.current_round.most_played_poker_hand, 'poker_hands'), 4}}
1154+
end,
1155+
use2 = function(self, card, area, copier)
1156+
bonus_selection(card.ability.the_blind, card.ability.reward)
1157+
end
1158+
}
1159+
1160+
SMODS.Bonus {
1161+
key = 'autumn',
1162+
loc_txt = {
1163+
name = "Autumn Blind",
1164+
text = {
1165+
"Defeat {C:green}#1#{} to get",
1166+
"an {C:attention}#2#{} and {C:attention}#3#{}",
1167+
}
1168+
},
1169+
atlas = "another",
1170+
pos = {x = 8, y = 2},
1171+
rarity = 'Rare',
1172+
cost = 5,
1173+
set_ability = function(self, card, initial, delay_sprites)
1174+
card.ability.the_blind = 'bl_final_leaf'
1175+
card.ability.reward = {tags = {'tag_bb_poly_negative', 'tag_rare'}}
1176+
end,
1177+
loc_vars = function(self, info_queue, card)
1178+
info_queue[#info_queue+1] = {key = 'blind_verdant', set = 'Other'}
1179+
info_queue[#info_queue+1] = {key = 'tag_poly_negative', set = 'Other'}
1180+
info_queue[#info_queue+1] = {key = 'antichrome_3', set = 'Other'}
1181+
info_queue[#info_queue+1] = {key = 'tag_rare', set = 'Tag'}
1182+
return {vars = {localize{type ='name_text', key = card.ability.the_blind, set = 'Blind'}, localize{type ='name_text', key = card.ability.reward.tags[1], set = 'Tag'}, localize{type ='name_text', key = card.ability.reward.tags[2], set = 'Tag'}}}
1183+
end,
1184+
use2 = function(self, card, area, copier)
1185+
bonus_selection(card.ability.the_blind, card.ability.reward)
1186+
end
1187+
}
1188+
11071189
--- Legendary (3)
11081190

11091191
SMODS.Bonus {
@@ -1332,6 +1414,47 @@ SMODS.Tag {
13321414
end
13331415
}
13341416

1417+
SMODS.Tag {
1418+
key = 'poly_negative',
1419+
atlas = 'bonus_tags',
1420+
loc_txt = {
1421+
name = "Antichrome Tag",
1422+
text = {
1423+
"Next base edition shop",
1424+
"Joker is free and",
1425+
"becomes {C:dark_edition}Antichrome"
1426+
}
1427+
},
1428+
name = "Antichrome Tag",
1429+
pos = {x = 3, y = 0},
1430+
apply = function(tag, context)
1431+
local _applied = nil
1432+
if not context.card.edition and not context.card.temp_edition and context.card.ability.set == 'Joker' then
1433+
local lock = tag.ID
1434+
G.CONTROLLER.locks[lock] = true
1435+
context.card.temp_edition = true
1436+
tag:yep('+', G.C.DARK_EDITION,function()
1437+
context.card.temp_edition = nil
1438+
context.card:set_edition({bb_antichrome = true}, true)
1439+
context.card.ability.couponed = true
1440+
context.card:set_cost()
1441+
G.CONTROLLER.locks[lock] = nil
1442+
return true
1443+
end)
1444+
_applied = true
1445+
end
1446+
return _applied
1447+
end,
1448+
in_pool = function(self)
1449+
return false
1450+
end,
1451+
loc_vars = function(self, info_queue, tag)
1452+
info_queue[#info_queue+1] = {key = 'antichrome_3', set = 'Other'}
1453+
return {}
1454+
end,
1455+
config = {type = 'store_joker_modify'}
1456+
}
1457+
13351458
SMODS.Voucher {
13361459
key = 'bonus1',
13371460
loc_txt = {
@@ -1531,6 +1654,42 @@ SMODS.Back {
15311654
end
15321655
}
15331656

1657+
SMODS.Shader {
1658+
key = 'antichrome',
1659+
path = 'antichrome.fs'
1660+
}
1661+
1662+
SMODS.Edition {
1663+
key = 'antichrome',
1664+
shader = 'antichrome',
1665+
loc_txt = {
1666+
name = "Antichrome",
1667+
label = "Antichrome",
1668+
text = {
1669+
"{C:attention}+2{} Joker Slots",
1670+
"for {C:attention}3{} rounds",
1671+
"{X:mult,C:white} X2 {} Mult"
1672+
}
1673+
},
1674+
extra_cost = 8,
1675+
config = {
1676+
x_mult = 2,
1677+
card_limit = 2,
1678+
antichrome_rounds = 3,
1679+
}
1680+
}
1681+
1682+
function Card:calculate_antichrome()
1683+
if self.edition and self.edition.bb_antichrome and self.edition.antichrome_rounds > 0 then
1684+
self.edition.antichrome_rounds = self.edition.antichrome_rounds - 1
1685+
if (self.edition.antichrome_rounds == 0) and self.added_to_deck then
1686+
G.jokers.config.card_limit = G.jokers.config.card_limit - 2
1687+
self.edition.card_limit = 0
1688+
end
1689+
card_eval_status_text(self, 'extra', nil, nil, nil, {message = localize{type='variable',key='a_remaining',vars={self.edition.antichrome_rounds}},colour = G.C.FILTER, delay = 0.45})
1690+
end
1691+
end
1692+
15341693
----- Blinds ---
15351694

15361695
SMODS.Atlas({ key = "blinds", atlas_table = "ANIMATION_ATLAS", path = "blinds.png", px = 34, py = 34, frames = 21 })
@@ -1638,6 +1797,29 @@ SMODS.Blind {
16381797
end,
16391798
}
16401799

1800+
SMODS.Blind {
1801+
loc_txt = {
1802+
name = 'The Infinity',
1803+
text = { '+1 hand when', 'hand played' }
1804+
},
1805+
key = 'infinity',
1806+
name = 'The Infinity',
1807+
config = {},
1808+
boss = {min = 1, max = 10, bonus = true},
1809+
boss_colour = HEX("C7D14D"),
1810+
atlas = "blinds",
1811+
pos = { x = 0, y = 2},
1812+
vars = {},
1813+
dollars = 5,
1814+
mult = 2,
1815+
in_pool = function(self)
1816+
return false
1817+
end,
1818+
press_play = function(self)
1819+
ease_hands_played(1)
1820+
end
1821+
}
1822+
16411823
SMODS.Atlas({ key = "cool_shop", atlas_table = "ANIMATION_ATLAS", path = "cool_shop.png", px = 113, py = 57, frames = 4 })
16421824

16431825
----------------
@@ -1978,6 +2160,21 @@ function bonus_reward(bonusData)
19782160
if bonusData.dollars then
19792161
ease_dollars(bonusData.dollars)
19802162
end
2163+
if bonusData.planet_levels then
2164+
update_hand_text({delay = 0}, {
2165+
mult = G.GAME.hands[bonusData.planet_levels.hand].mult,
2166+
chips = G.GAME.hands[bonusData.planet_levels.hand].chips,
2167+
level = G.GAME.hands[bonusData.planet_levels.hand].level,
2168+
handname = bonusData.planet_levels.hand
2169+
})
2170+
level_up_hand(nil, bonusData.planet_levels.hand, nil, bonusData.planet_levels.amount)
2171+
update_hand_text({delay = 0}, {
2172+
mult = 0,
2173+
chips = 0,
2174+
level = '',
2175+
handname = '',
2176+
})
2177+
end
19812178
end
19822179

19832180
function bonus_end_of_round(bonusData)
@@ -2074,7 +2271,7 @@ function SMODS.current_mod.process_loc_text()
20742271
G.localization.descriptions.Other["blind_ox"].text = localize{type = 'raw_descriptions', key = 'bl_ox', set = 'Blind', vars = {localize('ph_most_played')}}
20752272
G.localization.descriptions.Other["blind_window"] = {}
20762273
G.localization.descriptions.Other["blind_window"].name = localize{type ='name_text', key = 'bl_window', set = 'Blind'}
2077-
G.localization.descriptions.Other["blind_window"].text = localize{type = 'raw_descriptions', key = 'bl_window', set = 'Blind', vars = {localize('ph_most_played')}}
2274+
G.localization.descriptions.Other["blind_window"].text = localize{type = 'raw_descriptions', key = 'bl_window', set = 'Blind', vars = {}}
20782275
G.localization.descriptions.Other["t_nope"] = {}
20792276
G.localization.descriptions.Other["t_nope"].name = "Zero Tag"
20802277
G.localization.descriptions.Other["t_nope"].text = { "Convert the next", "selected {C:attention}Tag{} into", "a {C:attention}Null Tag{}" }
@@ -2083,7 +2280,35 @@ function SMODS.current_mod.process_loc_text()
20832280
G.localization.descriptions.Other["t_null"].text = { "{C:inactive}Does nothing?" }
20842281
G.localization.descriptions.Other["blind_tooth"] = {}
20852282
G.localization.descriptions.Other["blind_tooth"].name = localize{type ='name_text', key = 'bl_tooth', set = 'Blind'}
2086-
G.localization.descriptions.Other["blind_tooth"].text = localize{type = 'raw_descriptions', key = 'bl_tooth', set = 'Blind', vars = {localize('ph_most_played')}}
2283+
G.localization.descriptions.Other["blind_tooth"].text = localize{type = 'raw_descriptions', key = 'bl_tooth', set = 'Blind', vars = {}}
2284+
G.localization.descriptions.Other["blind_infinity"] = {}
2285+
G.localization.descriptions.Other["blind_infinity"].text = { '+1 hand when', 'hand played' }
2286+
G.localization.descriptions.Other["blind_infinity"].name = "The Infinity"
2287+
G.localization.descriptions.Other["blind_arm"] = {}
2288+
G.localization.descriptions.Other["blind_arm"].name = localize{type ='name_text', key = 'bl_arm', set = 'Blind'}
2289+
G.localization.descriptions.Other["blind_arm"].text = localize{type = 'raw_descriptions', key = 'bl_arm', set = 'Blind', vars = {}}
2290+
G.localization.descriptions.Other["antichrome_3"] = {}
2291+
G.localization.descriptions.Other["antichrome_3"].text = { "{C:attention}+2{} Joker Slots", "for {C:attention}3{} rounds", "{X:mult,C:white} X2 {} Mult" }
2292+
G.localization.descriptions.Other["antichrome_3"].name = "Antichrome"
2293+
G.localization.descriptions.Other["antichrome_2"] = {}
2294+
G.localization.descriptions.Other["antichrome_2"].text = { "{C:attention}+2{} Joker Slots", "for {C:attention}2{} rounds", "{X:mult,C:white} X2 {} Mult" }
2295+
G.localization.descriptions.Other["antichrome_2"].name = "Antichrome"
2296+
G.localization.descriptions.Other["antichrome_1"] = {}
2297+
G.localization.descriptions.Other["antichrome_1"].text = { "{C:attention}+2{} Joker Slots", "for {C:attention}1{} round", "{X:mult,C:white} X2 {} Mult" }
2298+
G.localization.descriptions.Other["antichrome_1"].name = "Antichrome"
2299+
G.localization.descriptions.Other["antichrome_0"] = {}
2300+
G.localization.descriptions.Other["antichrome_0"].text = { "{X:mult,C:white} X2 {} Mult" }
2301+
G.localization.descriptions.Other["antichrome_0"].name = "Antichrome"
2302+
G.localization.descriptions.Other["blind_verdant"] = {}
2303+
G.localization.descriptions.Other["blind_verdant"].name = localize{type ='name_text', key = 'bl_final_leaf', set = 'Blind'}
2304+
G.localization.descriptions.Other["blind_verdant"].text = localize{type = 'raw_descriptions', key = 'bl_final_leaf', set = 'Blind', vars = {}}
2305+
G.localization.descriptions.Other["tag_poly_negative"] = {}
2306+
G.localization.descriptions.Other["tag_poly_negative"].name = "Antichrome Tag"
2307+
G.localization.descriptions.Other["tag_poly_negative"].text = { "Next base edition shop", "Joker is free and", "becomes {C:dark_edition}Antichrome" }
2308+
G.localization.misc.labels["loc_antichrome_3"] = "Antichrome"
2309+
G.localization.misc.labels["loc_antichrome_2"] = "Antichrome"
2310+
G.localization.misc.labels["loc_antichrome_1"] = "Antichrome"
2311+
G.localization.misc.labels["loc_antichrome_0"] = "Antichrome"
20872312
-- G.localization.descriptions.Other["ed_negative_consumable"] = {}
20882313
-- G.localization.descriptions.Other["ed_negative_consumable"].name = localize{type ='name_text', key = 'e_negative_consumable', set = 'Edition'}
20892314
-- G.localization.descriptions.Other["ed_negative_consumable"].text = localize{type = 'raw_descriptions', key = 'e_negative_consumable', set = 'Edition', vars = {1}}
@@ -2446,4 +2671,4 @@ G.FUNCS.super_can_reroll = function(e)
24462671
end
24472672

24482673
----------------------------------------------
2449-
------------MOD CODE END----------------------
2674+
------------MOD CODE END----------------------

BonusBlinds/assets/1x/blinds.png

2.92 KB
Loading

BonusBlinds/assets/1x/bonus.png

4.69 KB
Loading

BonusBlinds/assets/1x/tags.png

741 Bytes
Loading

BonusBlinds/assets/2x/blinds.png

7.21 KB
Loading

BonusBlinds/assets/2x/bonus.png

7.93 KB
Loading

BonusBlinds/assets/2x/tags.png

1.18 KB
Loading

0 commit comments

Comments
 (0)