Add new blind: The Nimble
BIN
assets/1x/blind.png
Normal file
|
After Width: | Height: | Size: 4.2 KiB |
|
Before Width: | Height: | Size: 5.8 KiB After Width: | Height: | Size: 5.8 KiB |
|
Before Width: | Height: | Size: 67 KiB After Width: | Height: | Size: 67 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 8.8 KiB |
|
Before Width: | Height: | Size: 181 KiB |
|
Before Width: | Height: | Size: 13 KiB |
BIN
assets/2x/blind.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
assets/2x/escapey.png
Normal file
|
After Width: | Height: | Size: 3.3 KiB |
BIN
assets/2x/icon.png
Normal file
|
After Width: | Height: | Size: 79 KiB |
BIN
assets/2x/void.png
Normal file
|
After Width: | Height: | Size: 13 KiB |
1
assets/upscale.bat
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
for /F %%x in ('dir /B/D 1x') do magick 1x\%%x -scale 200%% 2x\%%x
|
||||||
6
assets/upscale.sh
Executable file
|
|
@ -0,0 +1,6 @@
|
||||||
|
#!/bin/sh
|
||||||
|
for file in 1x/*.png; do
|
||||||
|
filename=$(basename "$file")
|
||||||
|
output_file="2x/${filename}"
|
||||||
|
magick "$file" -filter point -resize 200% "$output_file"
|
||||||
|
done
|
||||||
|
|
@ -1,5 +1,14 @@
|
||||||
return {
|
return {
|
||||||
descriptions = {
|
descriptions = {
|
||||||
|
Blind = {
|
||||||
|
bl_Roland_nimble = {
|
||||||
|
name = "The Nimble",
|
||||||
|
text = {
|
||||||
|
"The first {C:attention}5 cards",
|
||||||
|
"drawn are {C:attention}played",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
Joker = {
|
Joker = {
|
||||||
j_Roland_escapey = {
|
j_Roland_escapey = {
|
||||||
name = "Escapey",
|
name = "Escapey",
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
"name": "Roland",
|
"name": "Roland",
|
||||||
"prefix": "Roland",
|
"prefix": "Roland",
|
||||||
"author": ["Emik"],
|
"author": ["Emik"],
|
||||||
"version": "1.0.2",
|
"version": "1.1.0",
|
||||||
"badge_colour": "8BE9FD",
|
"badge_colour": "8BE9FD",
|
||||||
"main_file": "src/main.lua",
|
"main_file": "src/main.lua",
|
||||||
"badge_text_colour": "44475A",
|
"badge_text_colour": "44475A",
|
||||||
|
|
|
||||||
40
src/blind.lua
Normal file
|
|
@ -0,0 +1,40 @@
|
||||||
|
SMODS.Atlas {
|
||||||
|
px = 34,
|
||||||
|
py = 34,
|
||||||
|
frames = 21,
|
||||||
|
key = "blind",
|
||||||
|
path = "blind.png",
|
||||||
|
atlas_table = "ANIMATION_ATLAS",
|
||||||
|
}
|
||||||
|
|
||||||
|
SMODS.Blind {
|
||||||
|
key = "nimble",
|
||||||
|
boss = {min = 1, max = 10, no_orb = true, hardcore = true},
|
||||||
|
boss_colour = HEX("8be9fd"),
|
||||||
|
atlas = "blind",
|
||||||
|
pos = {x = 0, y = 0},
|
||||||
|
mult = 2,
|
||||||
|
dollars = 5,
|
||||||
|
disable = function(self)
|
||||||
|
self.disabled = true
|
||||||
|
end,
|
||||||
|
drawn_to_hand = function(self)
|
||||||
|
local function force_hand()
|
||||||
|
for i, v in ipairs(G.hand.cards) do
|
||||||
|
if i > 5 then
|
||||||
|
break
|
||||||
|
end
|
||||||
|
|
||||||
|
G.hand:add_to_highlighted(v, true)
|
||||||
|
end
|
||||||
|
|
||||||
|
G.FUNCS.play_cards_from_highlighted(nil)
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
|
||||||
|
if not self.disabled then
|
||||||
|
self.disabled = true
|
||||||
|
G.E_MANAGER:add_event(Event({func = force_hand}))
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
|
@ -54,8 +54,8 @@ SMODS.Joker {
|
||||||
local loc_self = G.localization.descriptions.Joker.j_Roland_escapey
|
local loc_self = G.localization.descriptions.Joker.j_Roland_escapey
|
||||||
local quotes = loc_self.quotes
|
local quotes = loc_self.quotes
|
||||||
local merge = G.jokers and F.count(F.filter(G.jokers.cards, is_mergeable_with(card))) > 1 and loc_self.merge or {}
|
local merge = G.jokers and F.count(F.filter(G.jokers.cards, is_mergeable_with(card))) > 1 and loc_self.merge or {}
|
||||||
local normal = (merge[1] or (Jen or Jane or {}).sinister) and {} or pseudorandom_element(quotes.normal, pseudoseed("EscapeyQuotes"))
|
local normal = (merge[1] or (Jen or Jane or {}).sinister) and {} or pseudorandom_element(quotes.normal, pseudoseed("EscapeyQuotes")) or {}
|
||||||
local scared = (merge[1] or not (Jen or Jane or {}).sinister) and {} or pseudorandom_element(quotes.scared, pseudoseed("EscapeyQuotes"))
|
local scared = (merge[1] or not (Jen or Jane or {}).sinister) and {} or pseudorandom_element(quotes.scared, pseudoseed("EscapeyQuotes")) or {}
|
||||||
|
|
||||||
return {vars = {
|
return {vars = {
|
||||||
card.ability.extra.level_up_by,
|
card.ability.extra.level_up_by,
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
assert(SMODS.load_file("src/LuaFunctional/functional.lua"))()
|
assert(SMODS.load_file("src/LuaFunctional/functional.lua"))()
|
||||||
assert(SMODS.load_file("src/challenge.lua"))()
|
assert(SMODS.load_file("src/challenge.lua"))()
|
||||||
assert(SMODS.load_file("src/spectral.lua"))()
|
assert(SMODS.load_file("src/spectral.lua"))()
|
||||||
|
assert(SMODS.load_file("src/blind.lua"))()
|
||||||
assert(SMODS.load_file("src/joker.lua"))()
|
assert(SMODS.load_file("src/joker.lua"))()
|
||||||
|
|
||||||
SMODS.Atlas {
|
SMODS.Atlas {
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
SMODS.Sound({key = 'void', path = 'void.ogg'})
|
SMODS.Sound({key = "void", path = "void.ogg"})
|
||||||
|
|
||||||
local function can_use()
|
local function can_use()
|
||||||
return not ((G.play and #G.play.cards > 0 or
|
return not ((G.play and #G.play.cards > 0 or
|
||||||
|
|
@ -39,13 +39,7 @@ SMODS.Consumable {
|
||||||
v:start_dissolve()
|
v:start_dissolve()
|
||||||
end
|
end
|
||||||
|
|
||||||
play_sound("Roland_void", 1, 0.7)
|
local function void()
|
||||||
|
|
||||||
G.E_MANAGER:add_event(Event({
|
|
||||||
delay = 0.27,
|
|
||||||
timer = 'REAL',
|
|
||||||
trigger = 'after',
|
|
||||||
func = function()
|
|
||||||
local cards = F.filter(G.playing_cards, destructible)
|
local cards = F.filter(G.playing_cards, destructible)
|
||||||
|
|
||||||
local function calculate_joker(v)
|
local function calculate_joker(v)
|
||||||
|
|
@ -56,6 +50,14 @@ SMODS.Consumable {
|
||||||
F.foreach(G.jokers.cards, calculate_joker)
|
F.foreach(G.jokers.cards, calculate_joker)
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
|
play_sound("Roland_void", 1, 0.7)
|
||||||
|
|
||||||
|
G.E_MANAGER:add_event(Event({
|
||||||
|
delay = 0.27,
|
||||||
|
timer = "REAL",
|
||||||
|
trigger = "after",
|
||||||
|
func = void
|
||||||
}))
|
}))
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||