1
0

New default art for candidates

This commit is contained in:
Ninjananas
2024-10-13 20:27:50 +02:00
parent 1352a5205b
commit e27b7941bb
3 changed files with 2724 additions and 414 deletions

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 751 KiB

After

Width:  |  Height:  |  Size: 902 KiB

View File

@@ -7,7 +7,7 @@ OUTPUT_DIR = "._layouts"
TOTAL_HEIGHT = 30
TOTAL_WIDTH = 22
BLEED_MARGIN = 1
SAFE_MARGIN = 2
SAFE_MARGIN = 2 * BLEED_MARGIN
MAX_SAFE_X = TOTAL_WIDTH - SAFE_MARGIN
MAX_SAFE_Y = TOTAL_HEIGHT - SAFE_MARGIN
SAFE_WIDTH = TOTAL_WIDTH - 2 * SAFE_MARGIN
@@ -26,6 +26,11 @@ RET_ICON_X = ICON_X + ((ICON_SIZE - RET_ICON_SIZE) / 2.)
RET_ICON_Y = ICON_Y + ICON_SIZE - 0.1
# Paparazzo icon
PAPARAZZO_SIZE = 2
PAPARAZZO_X = SAFE_MARGIN
PAPARAZZO_Y = MAX_SAFE_Y - PAPARAZZO_SIZE
# Banner info
BANNER_WIDTH = 2
BANNER_HEIGHT = 6
@@ -77,6 +82,12 @@ background:
width: {TOTAL_WIDTH}c
height: {TOTAL_HEIGHT}c
art:
x: 0
y: 0
width: {TOTAL_WIDTH}c
height: {TOTAL_HEIGHT}c
icon:
x: {ICON_X}c
y: {ICON_Y}c
@@ -165,6 +176,12 @@ effect_text:
valign: middle
markup: true
paparazzo:
x: {PAPARAZZO_X}c
y: {PAPARAZZO_Y}c
width: {PAPARAZZO_SIZE}c
height: {PAPARAZZO_SIZE}c
border:
x: 0
y: 0

View File

@@ -34,6 +34,18 @@ def rank_to_banner_svg(rank)
end
end
def get_art(data, idx)
art = data['art'][idx]
unless art.nil?
return "#{art}.svg"
end
icon = data['icone'][idx]
icon_alt = data['icone_alt'][idx]
icon_alt = icon_alt.nil? ? '' : "_#{icon_alt}"
puts "default_art_#{icon}#{icon_alt}.svg"
return "default_art_#{icon}#{icon_alt}.svg"
end
def embed_custom(embed, id)
embed.svg width: '0.8c', height: '0.8c', dx: '0c', dy: '-0.7c', key: ":#{id}:", file: "._graphics/#{id}.svg"
end
@@ -62,6 +74,9 @@ Squib::Deck.new(
rect layout: 'safe', dash: '0.5mm 0.5mm', stroke_color: 'green'
end
art_file = (0..data['icone'].length).map { |idx| get_art(data, idx) }
svg file: art_file, layout: 'art'
icon_file = data['icone'].map { |icon| icon_to_svg(icon) }
svg file: icon_file, layout: 'icon'
@@ -71,6 +86,9 @@ Squib::Deck.new(
text str: data['nom'], layout: banner_file.map { |banner| banner.nil? ? 'name' : 'name_with_banner'}
paparazzo_file = data['type'].map { |type| type=='action' ? 'paparazzo.svg' : nil }
svg file: paparazzo_file, layout: 'paparazzo'
alt_icon_file = data['icone_alt'].map { |icon| icon_to_svg(icon) }
svg file: alt_icon_file, layout: 'alt_icon'