From 79764732406d6484f67d3dec045483dcb5d08c28 Mon Sep 17 00:00:00 2001 From: historia <[not public]> Date: Fri, 18 Sep 2026 20:03:13 -0400 Subject: feat: better card ascii art --- data/cards.yaml | 936 +++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 885 insertions(+), 51 deletions(-) (limited to 'data/cards.yaml') diff --git a/data/cards.yaml b/data/cards.yaml index 2b4762a..543d8de 100644 --- a/data/cards.yaml +++ b/data/cards.yaml @@ -1,7 +1,9 @@ # Unicode casino card art, shared by every card game (blackjack, baccarat). -# Each card may define 5, 7, and 9 line art. -# Keys are rank plus suit: A/K/Q/J/10/2-9 followed by C/D/H/S. -# Missing art uses the generated Unicode card renderer. +# Each card defines 7 and 9 line art (5 line cards use the generated renderer: +# there is no room for a pip layout, so crowded ranks fall back to a single +# centered suit symbol). Keys are rank plus suit: A/K/Q/J/10/2-9 + C/D/H/S. +# Aces and the 10 at 7 lines are left to the generated renderer too, which +# shows the rank corners around one centered suit symbol. # Example override: # AH: # 5: ["┌───┐", "│ A │", "│ ♥ │", "│ A │", "└───┘"] @@ -10,51 +12,883 @@ cards: AD: {} AH: {} AS: {} - 2C: {} - 2D: {} - 2H: {} - 2S: {} - 3C: {} - 3D: {} - 3H: {} - 3S: {} - 4C: {} - 4D: {} - 4H: {} - 4S: {} - 5C: {} - 5D: {} - 5H: {} - 5S: {} - 6C: {} - 6D: {} - 6H: {} - 6S: {} - 7C: {} - 7D: {} - 7H: {} - 7S: {} - 8C: {} - 8D: {} - 8H: {} - 8S: {} - 9C: {} - 9D: {} - 9H: {} - 9S: {} - 10C: {} - 10D: {} - 10H: {} - 10S: {} - JC: {} - JD: {} - JH: {} - JS: {} - QC: {} - QD: {} - QH: {} - QS: {} - KC: {} - KD: {} - KH: {} - KS: {} + 2C: + 7: + - '┌─────┐' + - '│2 │' + - '│ ♣ │' + - '│ │' + - '│ ♣ │' + - '│ 2│' + - '└─────┘' + 9: + - '┌───────┐' + - '│2 │' + - '│ ♣ │' + - '│ │' + - '│ │' + - '│ │' + - '│ ♣ │' + - '│ 2│' + - '└───────┘' + 2D: + 7: + - '┌─────┐' + - '│2 │' + - '│ ♦ │' + - '│ │' + - '│ ♦ │' + - '│ 2│' + - '└─────┘' + 9: + - '┌───────┐' + - '│2 │' + - '│ ♦ │' + - '│ │' + - '│ │' + - '│ │' + - '│ ♦ │' + - '│ 2│' + - '└───────┘' + 2H: + 7: + - '┌─────┐' + - '│2 │' + - '│ ♥ │' + - '│ │' + - '│ ♥ │' + - '│ 2│' + - '└─────┘' + 9: + - '┌───────┐' + - '│2 │' + - '│ ♥ │' + - '│ │' + - '│ │' + - '│ │' + - '│ ♥ │' + - '│ 2│' + - '└───────┘' + 2S: + 7: + - '┌─────┐' + - '│2 │' + - '│ ♠ │' + - '│ │' + - '│ ♠ │' + - '│ 2│' + - '└─────┘' + 9: + - '┌───────┐' + - '│2 │' + - '│ ♠ │' + - '│ │' + - '│ │' + - '│ │' + - '│ ♠ │' + - '│ 2│' + - '└───────┘' + 3C: + 7: + - '┌─────┐' + - '│3 │' + - '│ ♣ │' + - '│ ♣ │' + - '│ ♣ │' + - '│ 3│' + - '└─────┘' + 9: + - '┌───────┐' + - '│3 │' + - '│ ♣ │' + - '│ │' + - '│ ♣ │' + - '│ │' + - '│ ♣ │' + - '│ 3│' + - '└───────┘' + 3D: + 7: + - '┌─────┐' + - '│3 │' + - '│ ♦ │' + - '│ ♦ │' + - '│ ♦ │' + - '│ 3│' + - '└─────┘' + 9: + - '┌───────┐' + - '│3 │' + - '│ ♦ │' + - '│ │' + - '│ ♦ │' + - '│ │' + - '│ ♦ │' + - '│ 3│' + - '└───────┘' + 3H: + 7: + - '┌─────┐' + - '│3 │' + - '│ ♥ │' + - '│ ♥ │' + - '│ ♥ │' + - '│ 3│' + - '└─────┘' + 9: + - '┌───────┐' + - '│3 │' + - '│ ♥ │' + - '│ │' + - '│ ♥ │' + - '│ │' + - '│ ♥ │' + - '│ 3│' + - '└───────┘' + 3S: + 7: + - '┌─────┐' + - '│3 │' + - '│ ♠ │' + - '│ ♠ │' + - '│ ♠ │' + - '│ 3│' + - '└─────┘' + 9: + - '┌───────┐' + - '│3 │' + - '│ ♠ │' + - '│ │' + - '│ ♠ │' + - '│ │' + - '│ ♠ │' + - '│ 3│' + - '└───────┘' + 4C: + 7: + - '┌─────┐' + - '│4 │' + - '│♣ ♣│' + - '│ │' + - '│♣ ♣│' + - '│ 4│' + - '└─────┘' + 9: + - '┌───────┐' + - '│4 │' + - '│ ♣ ♣ │' + - '│ │' + - '│ │' + - '│ │' + - '│ ♣ ♣ │' + - '│ 4│' + - '└───────┘' + 4D: + 7: + - '┌─────┐' + - '│4 │' + - '│♦ ♦│' + - '│ │' + - '│♦ ♦│' + - '│ 4│' + - '└─────┘' + 9: + - '┌───────┐' + - '│4 │' + - '│ ♦ ♦ │' + - '│ │' + - '│ │' + - '│ │' + - '│ ♦ ♦ │' + - '│ 4│' + - '└───────┘' + 4H: + 7: + - '┌─────┐' + - '│4 │' + - '│♥ ♥│' + - '│ │' + - '│♥ ♥│' + - '│ 4│' + - '└─────┘' + 9: + - '┌───────┐' + - '│4 │' + - '│ ♥ ♥ │' + - '│ │' + - '│ │' + - '│ │' + - '│ ♥ ♥ │' + - '│ 4│' + - '└───────┘' + 4S: + 7: + - '┌─────┐' + - '│4 │' + - '│♠ ♠│' + - '│ │' + - '│♠ ♠│' + - '│ 4│' + - '└─────┘' + 9: + - '┌───────┐' + - '│4 │' + - '│ ♠ ♠ │' + - '│ │' + - '│ │' + - '│ │' + - '│ ♠ ♠ │' + - '│ 4│' + - '└───────┘' + 5C: + 7: + - '┌─────┐' + - '│5 │' + - '│♣ ♣│' + - '│ ♣ │' + - '│♣ ♣│' + - '│ 5│' + - '└─────┘' + 9: + - '┌───────┐' + - '│5 │' + - '│ ♣ ♣ │' + - '│ │' + - '│ ♣ │' + - '│ │' + - '│ ♣ ♣ │' + - '│ 5│' + - '└───────┘' + 5D: + 7: + - '┌─────┐' + - '│5 │' + - '│♦ ♦│' + - '│ ♦ │' + - '│♦ ♦│' + - '│ 5│' + - '└─────┘' + 9: + - '┌───────┐' + - '│5 │' + - '│ ♦ ♦ │' + - '│ │' + - '│ ♦ │' + - '│ │' + - '│ ♦ ♦ │' + - '│ 5│' + - '└───────┘' + 5H: + 7: + - '┌─────┐' + - '│5 │' + - '│♥ ♥│' + - '│ ♥ │' + - '│♥ ♥│' + - '│ 5│' + - '└─────┘' + 9: + - '┌───────┐' + - '│5 │' + - '│ ♥ ♥ │' + - '│ │' + - '│ ♥ │' + - '│ │' + - '│ ♥ ♥ │' + - '│ 5│' + - '└───────┘' + 5S: + 7: + - '┌─────┐' + - '│5 │' + - '│♠ ♠│' + - '│ ♠ │' + - '│♠ ♠│' + - '│ 5│' + - '└─────┘' + 9: + - '┌───────┐' + - '│5 │' + - '│ ♠ ♠ │' + - '│ │' + - '│ ♠ │' + - '│ │' + - '│ ♠ ♠ │' + - '│ 5│' + - '└───────┘' + 6C: + 7: + - '┌─────┐' + - '│6 │' + - '│♣ ♣│' + - '│♣ ♣│' + - '│♣ ♣│' + - '│ 6│' + - '└─────┘' + 9: + - '┌───────┐' + - '│6 │' + - '│ ♣ ♣ │' + - '│ │' + - '│ ♣ ♣ │' + - '│ │' + - '│ ♣ ♣ │' + - '│ 6│' + - '└───────┘' + 6D: + 7: + - '┌─────┐' + - '│6 │' + - '│♦ ♦│' + - '│♦ ♦│' + - '│♦ ♦│' + - '│ 6│' + - '└─────┘' + 9: + - '┌───────┐' + - '│6 │' + - '│ ♦ ♦ │' + - '│ │' + - '│ ♦ ♦ │' + - '│ │' + - '│ ♦ ♦ │' + - '│ 6│' + - '└───────┘' + 6H: + 7: + - '┌─────┐' + - '│6 │' + - '│♥ ♥│' + - '│♥ ♥│' + - '│♥ ♥│' + - '│ 6│' + - '└─────┘' + 9: + - '┌───────┐' + - '│6 │' + - '│ ♥ ♥ │' + - '│ │' + - '│ ♥ ♥ │' + - '│ │' + - '│ ♥ ♥ │' + - '│ 6│' + - '└───────┘' + 6S: + 7: + - '┌─────┐' + - '│6 │' + - '│♠ ♠│' + - '│♠ ♠│' + - '│♠ ♠│' + - '│ 6│' + - '└─────┘' + 9: + - '┌───────┐' + - '│6 │' + - '│ ♠ ♠ │' + - '│ │' + - '│ ♠ ♠ │' + - '│ │' + - '│ ♠ ♠ │' + - '│ 6│' + - '└───────┘' + 7C: + 7: + - '┌─────┐' + - '│7 │' + - '│♣ ♣│' + - '│♣ ♣ ♣│' + - '│♣ ♣│' + - '│ 7│' + - '└─────┘' + 9: + - '┌───────┐' + - '│7 │' + - '│ ♣ ♣ │' + - '│ ♣ │' + - '│ ♣ ♣ │' + - '│ │' + - '│ ♣ ♣ │' + - '│ 7│' + - '└───────┘' + 7D: + 7: + - '┌─────┐' + - '│7 │' + - '│♦ ♦│' + - '│♦ ♦ ♦│' + - '│♦ ♦│' + - '│ 7│' + - '└─────┘' + 9: + - '┌───────┐' + - '│7 │' + - '│ ♦ ♦ │' + - '│ ♦ │' + - '│ ♦ ♦ │' + - '│ │' + - '│ ♦ ♦ │' + - '│ 7│' + - '└───────┘' + 7H: + 7: + - '┌─────┐' + - '│7 │' + - '│♥ ♥│' + - '│♥ ♥ ♥│' + - '│♥ ♥│' + - '│ 7│' + - '└─────┘' + 9: + - '┌───────┐' + - '│7 │' + - '│ ♥ ♥ │' + - '│ ♥ │' + - '│ ♥ ♥ │' + - '│ │' + - '│ ♥ ♥ │' + - '│ 7│' + - '└───────┘' + 7S: + 7: + - '┌─────┐' + - '│7 │' + - '│♠ ♠│' + - '│♠ ♠ ♠│' + - '│♠ ♠│' + - '│ 7│' + - '└─────┘' + 9: + - '┌───────┐' + - '│7 │' + - '│ ♠ ♠ │' + - '│ ♠ │' + - '│ ♠ ♠ │' + - '│ │' + - '│ ♠ ♠ │' + - '│ 7│' + - '└───────┘' + 8C: + 7: + - '┌─────┐' + - '│8 │' + - '│♣ ♣ ♣│' + - '│♣ ♣ ♣│' + - '│♣ ♣│' + - '│ 8│' + - '└─────┘' + 9: + - '┌───────┐' + - '│8 │' + - '│ ♣ ♣ │' + - '│ ♣ │' + - '│ ♣ ♣ │' + - '│ ♣ │' + - '│ ♣ ♣ │' + - '│ 8│' + - '└───────┘' + 8D: + 7: + - '┌─────┐' + - '│8 │' + - '│♦ ♦ ♦│' + - '│♦ ♦ ♦│' + - '│♦ ♦│' + - '│ 8│' + - '└─────┘' + 9: + - '┌───────┐' + - '│8 │' + - '│ ♦ ♦ │' + - '│ ♦ │' + - '│ ♦ ♦ │' + - '│ ♦ │' + - '│ ♦ ♦ │' + - '│ 8│' + - '└───────┘' + 8H: + 7: + - '┌─────┐' + - '│8 │' + - '│♥ ♥ ♥│' + - '│♥ ♥ ♥│' + - '│♥ ♥│' + - '│ 8│' + - '└─────┘' + 9: + - '┌───────┐' + - '│8 │' + - '│ ♥ ♥ │' + - '│ ♥ │' + - '│ ♥ ♥ │' + - '│ ♥ │' + - '│ ♥ ♥ │' + - '│ 8│' + - '└───────┘' + 8S: + 7: + - '┌─────┐' + - '│8 │' + - '│♠ ♠ ♠│' + - '│♠ ♠ ♠│' + - '│♠ ♠│' + - '│ 8│' + - '└─────┘' + 9: + - '┌───────┐' + - '│8 │' + - '│ ♠ ♠ │' + - '│ ♠ │' + - '│ ♠ ♠ │' + - '│ ♠ │' + - '│ ♠ ♠ │' + - '│ 8│' + - '└───────┘' + 9C: + 7: + - '┌─────┐' + - '│9 │' + - '│♣ ♣ ♣│' + - '│♣ ♣ ♣│' + - '│♣ ♣ ♣│' + - '│ 9│' + - '└─────┘' + 9: + - '┌───────┐' + - '│9 │' + - '│ ♣ ♣ │' + - '│ ♣ ♣ │' + - '│ ♣ │' + - '│ ♣ ♣ │' + - '│ ♣ ♣ │' + - '│ 9│' + - '└───────┘' + 9D: + 7: + - '┌─────┐' + - '│9 │' + - '│♦ ♦ ♦│' + - '│♦ ♦ ♦│' + - '│♦ ♦ ♦│' + - '│ 9│' + - '└─────┘' + 9: + - '┌───────┐' + - '│9 │' + - '│ ♦ ♦ │' + - '│ ♦ ♦ │' + - '│ ♦ │' + - '│ ♦ ♦ │' + - '│ ♦ ♦ │' + - '│ 9│' + - '└───────┘' + 9H: + 7: + - '┌─────┐' + - '│9 │' + - '│♥ ♥ ♥│' + - '│♥ ♥ ♥│' + - '│♥ ♥ ♥│' + - '│ 9│' + - '└─────┘' + 9: + - '┌───────┐' + - '│9 │' + - '│ ♥ ♥ │' + - '│ ♥ ♥ │' + - '│ ♥ │' + - '│ ♥ ♥ │' + - '│ ♥ ♥ │' + - '│ 9│' + - '└───────┘' + 9S: + 7: + - '┌─────┐' + - '│9 │' + - '│♠ ♠ ♠│' + - '│♠ ♠ ♠│' + - '│♠ ♠ ♠│' + - '│ 9│' + - '└─────┘' + 9: + - '┌───────┐' + - '│9 │' + - '│ ♠ ♠ │' + - '│ ♠ ♠ │' + - '│ ♠ │' + - '│ ♠ ♠ │' + - '│ ♠ ♠ │' + - '│ 9│' + - '└───────┘' + 10C: + 9: + - '┌───────┐' + - '│10 │' + - '│ ♣ ♣ │' + - '│ ♣ ♣ ♣ │' + - '│ ♣ │' + - '│ ♣ ♣ │' + - '│ ♣ ♣ │' + - '│ 10│' + - '└───────┘' + 10D: + 9: + - '┌───────┐' + - '│10 │' + - '│ ♦ ♦ │' + - '│ ♦ ♦ ♦ │' + - '│ ♦ │' + - '│ ♦ ♦ │' + - '│ ♦ ♦ │' + - '│ 10│' + - '└───────┘' + 10H: + 9: + - '┌───────┐' + - '│10 │' + - '│ ♥ ♥ │' + - '│ ♥ ♥ ♥ │' + - '│ ♥ │' + - '│ ♥ ♥ │' + - '│ ♥ ♥ │' + - '│ 10│' + - '└───────┘' + 10S: + 9: + - '┌───────┐' + - '│10 │' + - '│ ♠ ♠ │' + - '│ ♠ ♠ ♠ │' + - '│ ♠ │' + - '│ ♠ ♠ │' + - '│ ♠ ♠ │' + - '│ 10│' + - '└───────┘' + JC: + 7: + - '┌─────┐' + - '│J │' + - '│ \^/ │' + - '│(o o)│' + - '│ |~| │' + - '│ J│' + - '└─────┘' + 9: + - '┌───────┐' + - '│J │' + - '│ │' + - '│ \^/ │' + - '│ (o o) │' + - '│ [~] │' + - '│ │' + - '│ J│' + - '└───────┘' + JD: + 7: + - '┌─────┐' + - '│J │' + - '│ \^/ │' + - '│(o o)│' + - '│ |~| │' + - '│ J│' + - '└─────┘' + 9: + - '┌───────┐' + - '│J │' + - '│ │' + - '│ \^/ │' + - '│ (o o) │' + - '│ [~] │' + - '│ │' + - '│ J│' + - '└───────┘' + JH: + 7: + - '┌─────┐' + - '│J │' + - '│ \^/ │' + - '│(o o)│' + - '│ |~| │' + - '│ J│' + - '└─────┘' + 9: + - '┌───────┐' + - '│J │' + - '│ │' + - '│ \^/ │' + - '│ (o o) │' + - '│ [~] │' + - '│ │' + - '│ J│' + - '└───────┘' + JS: + 7: + - '┌─────┐' + - '│J │' + - '│ \^/ │' + - '│(o o)│' + - '│ |~| │' + - '│ J│' + - '└─────┘' + 9: + - '┌───────┐' + - '│J │' + - '│ │' + - '│ \^/ │' + - '│ (o o) │' + - '│ [~] │' + - '│ │' + - '│ J│' + - '└───────┘' + QC: + 7: + - '┌─────┐' + - '│Q │' + - '│ ^^^ │' + - '│(o o)│' + - '│ \ / │' + - '│ Q│' + - '└─────┘' + 9: + - '┌───────┐' + - '│Q │' + - '│ │' + - '│ \^^^/ │' + - '│ (o o) │' + - '│ \_/ │' + - '│ │' + - '│ Q│' + - '└───────┘' + QD: + 7: + - '┌─────┐' + - '│Q │' + - '│ ^^^ │' + - '│(o o)│' + - '│ \ / │' + - '│ Q│' + - '└─────┘' + 9: + - '┌───────┐' + - '│Q │' + - '│ │' + - '│ \^^^/ │' + - '│ (o o) │' + - '│ \_/ │' + - '│ │' + - '│ Q│' + - '└───────┘' + QH: + 7: + - '┌─────┐' + - '│Q │' + - '│ ^^^ │' + - '│(o o)│' + - '│ \ / │' + - '│ Q│' + - '└─────┘' + 9: + - '┌───────┐' + - '│Q │' + - '│ │' + - '│ \^^^/ │' + - '│ (o o) │' + - '│ \_/ │' + - '│ │' + - '│ Q│' + - '└───────┘' + QS: + 7: + - '┌─────┐' + - '│Q │' + - '│ ^^^ │' + - '│(o o)│' + - '│ \ / │' + - '│ Q│' + - '└─────┘' + 9: + - '┌───────┐' + - '│Q │' + - '│ │' + - '│ \^^^/ │' + - '│ (o o) │' + - '│ \_/ │' + - '│ │' + - '│ Q│' + - '└───────┘' + KC: + 7: + - '┌─────┐' + - '│K │' + - '│ ^^^ │' + - '│(o o)│' + - '│ /|\ │' + - '│ K│' + - '└─────┘' + 9: + - '┌───────┐' + - '│K │' + - '│ │' + - '│ ^^^^^ │' + - '│ (o o) │' + - '│ //|\\ │' + - '│ │' + - '│ K│' + - '└───────┘' + KD: + 7: + - '┌─────┐' + - '│K │' + - '│ ^^^ │' + - '│(o o)│' + - '│ /|\ │' + - '│ K│' + - '└─────┘' + 9: + - '┌───────┐' + - '│K │' + - '│ │' + - '│ ^^^^^ │' + - '│ (o o) │' + - '│ //|\\ │' + - '│ │' + - '│ K│' + - '└───────┘' + KH: + 7: + - '┌─────┐' + - '│K │' + - '│ ^^^ │' + - '│(o o)│' + - '│ /|\ │' + - '│ K│' + - '└─────┘' + 9: + - '┌───────┐' + - '│K │' + - '│ │' + - '│ ^^^^^ │' + - '│ (o o) │' + - '│ //|\\ │' + - '│ │' + - '│ K│' + - '└───────┘' + KS: + 7: + - '┌─────┐' + - '│K │' + - '│ ^^^ │' + - '│(o o)│' + - '│ /|\ │' + - '│ K│' + - '└─────┘' + 9: + - '┌───────┐' + - '│K │' + - '│ │' + - '│ ^^^^^ │' + - '│ (o o) │' + - '│ //|\\ │' + - '│ │' + - '│ K│' + - '└───────┘' -- cgit v1.2.3