fix: use gpt-image-1-mini model for OG image generation

This commit is contained in:
Ajax Davis 2025-12-28 19:13:23 +10:00
parent 6c5e1a84c5
commit 16f8f79fbf
12 changed files with 1465 additions and 1 deletions

67
alien.sh Executable file
View file

@ -0,0 +1,67 @@
#!/bin/bash
printf "\n\033[1m WALKING DOWN\033[0m\n\n"
printf " Frame 1 Frame 2 Frame 3 Frame 4\n\n"
printf " \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m\n"
printf " \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m\n"
printf " \033[38;2;255;200;50m▄███▄\033[0m \033[38;2;255;200;50m▄███▄\033[0m \033[38;2;255;200;50m▄███▄\033[0m \033[38;2;255;200;50m▄███▄\033[0m\n"
printf " \033[38;2;255;200;50m███████\033[0m \033[38;2;255;200;50m███████\033[0m \033[38;2;255;200;50m███████\033[0m \033[38;2;255;200;50m███████\033[0m\n"
printf " \033[38;2;255;200;50m█\033[38;2;0;0;0m██\033[38;2;255;200;50m█\033[38;2;0;0;0m██\033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[38;2;0;0;0m██\033[38;2;255;200;50m█\033[38;2;0;0;0m██\033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[38;2;0;0;0m██\033[38;2;255;200;50m█\033[38;2;0;0;0m██\033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[38;2;0;0;0m██\033[38;2;255;200;50m█\033[38;2;0;0;0m██\033[38;2;255;200;50m█\033[0m\n"
printf " \033[38;2;255;200;50m█████\033[0m \033[38;2;255;200;50m█████\033[0m \033[38;2;255;200;50m█████\033[0m \033[38;2;255;200;50m█████\033[0m\n"
printf " \033[38;2;255;200;50m███\033[0m \033[38;2;255;200;50m███\033[0m \033[38;2;255;200;50m███\033[0m \033[38;2;255;200;50m███\033[0m\n"
printf " \033[38;2;139;90;43m▄█████▄\033[0m \033[38;2;139;90;43m▄█████▄\033[0m \033[38;2;139;90;43m▄█████▄\033[0m \033[38;2;139;90;43m▄█████▄\033[0m\n"
printf " \033[38;2;139;90;43m███\033[38;2;255;215;0m█\033[38;2;139;90;43m███\033[0m \033[38;2;139;90;43m███\033[38;2;255;215;0m█\033[38;2;139;90;43m███\033[0m \033[38;2;139;90;43m███\033[38;2;255;215;0m█\033[38;2;139;90;43m███\033[0m \033[38;2;139;90;43m███\033[38;2;255;215;0m█\033[38;2;139;90;43m███\033[0m\n"
printf " \033[38;2;139;90;43m███████\033[0m \033[38;2;139;90;43m███████\033[0m \033[38;2;139;90;43m███████\033[0m \033[38;2;139;90;43m███████\033[0m\n"
printf " \033[38;2;139;90;43m█████\033[0m \033[38;2;139;90;43m█████\033[0m \033[38;2;139;90;43m█████\033[0m \033[38;2;139;90;43m█████\033[0m\n"
printf " \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m\n"
printf " \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m█\033[0m \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m█\033[0m \033[38;2;101;67;33m██\033[0m\n"
printf "\n\033[1m WALKING UP\033[0m\n\n"
printf " Frame 1 Frame 2 Frame 3 Frame 4\n\n"
printf " \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m\n"
printf " \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m\n"
printf " \033[38;2;255;200;50m▄███▄\033[0m \033[38;2;255;200;50m▄███▄\033[0m \033[38;2;255;200;50m▄███▄\033[0m \033[38;2;255;200;50m▄███▄\033[0m\n"
printf " \033[38;2;255;200;50m███████\033[0m \033[38;2;255;200;50m███████\033[0m \033[38;2;255;200;50m███████\033[0m \033[38;2;255;200;50m███████\033[0m\n"
printf " \033[38;2;255;200;50m███████\033[0m \033[38;2;255;200;50m███████\033[0m \033[38;2;255;200;50m███████\033[0m \033[38;2;255;200;50m███████\033[0m\n"
printf " \033[38;2;255;200;50m█████\033[0m \033[38;2;255;200;50m█████\033[0m \033[38;2;255;200;50m█████\033[0m \033[38;2;255;200;50m█████\033[0m\n"
printf " \033[38;2;255;200;50m███\033[0m \033[38;2;255;200;50m███\033[0m \033[38;2;255;200;50m███\033[0m \033[38;2;255;200;50m███\033[0m\n"
printf " \033[38;2;139;90;43m▄█████▄\033[0m \033[38;2;139;90;43m▄█████▄\033[0m \033[38;2;139;90;43m▄█████▄\033[0m \033[38;2;139;90;43m▄█████▄\033[0m\n"
printf " \033[38;2;139;90;43m███████\033[0m \033[38;2;139;90;43m███████\033[0m \033[38;2;139;90;43m███████\033[0m \033[38;2;139;90;43m███████\033[0m\n"
printf " \033[38;2;139;90;43m███████\033[0m \033[38;2;139;90;43m███████\033[0m \033[38;2;139;90;43m███████\033[0m \033[38;2;139;90;43m███████\033[0m\n"
printf " \033[38;2;139;90;43m█████\033[0m \033[38;2;139;90;43m█████\033[0m \033[38;2;139;90;43m█████\033[0m \033[38;2;139;90;43m█████\033[0m\n"
printf " \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m\n"
printf " \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m█\033[0m \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m█\033[0m \033[38;2;101;67;33m██\033[0m\n"
printf "\n\033[1m WALKING LEFT\033[0m\n\n"
printf " Frame 1 Frame 2 Frame 3 Frame 4\n\n"
printf " \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m\n"
printf " \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m\n"
printf " \033[38;2;255;200;50m▄███\033[0m \033[38;2;255;200;50m▄███\033[0m \033[38;2;255;200;50m▄███\033[0m \033[38;2;255;200;50m▄███\033[0m\n"
printf " \033[38;2;255;200;50m█████\033[0m \033[38;2;255;200;50m█████\033[0m \033[38;2;255;200;50m█████\033[0m \033[38;2;255;200;50m█████\033[0m\n"
printf " \033[38;2;0;0;0m██\033[38;2;255;200;50m███\033[0m \033[38;2;0;0;0m██\033[38;2;255;200;50m███\033[0m \033[38;2;0;0;0m██\033[38;2;255;200;50m███\033[0m \033[38;2;0;0;0m██\033[38;2;255;200;50m███\033[0m\n"
printf " \033[38;2;255;200;50m████\033[0m \033[38;2;255;200;50m████\033[0m \033[38;2;255;200;50m████\033[0m \033[38;2;255;200;50m████\033[0m\n"
printf " \033[38;2;255;200;50m██\033[0m \033[38;2;255;200;50m██\033[0m \033[38;2;255;200;50m██\033[0m \033[38;2;255;200;50m██\033[0m\n"
printf " \033[38;2;139;90;43m████\033[0m \033[38;2;139;90;43m████\033[0m \033[38;2;139;90;43m████\033[0m \033[38;2;139;90;43m████\033[0m\n"
printf " \033[38;2;139;90;43m██\033[38;2;255;215;0m█\033[38;2;139;90;43m██\033[0m \033[38;2;139;90;43m██\033[38;2;255;215;0m█\033[38;2;139;90;43m██\033[0m \033[38;2;139;90;43m██\033[38;2;255;215;0m█\033[38;2;139;90;43m██\033[0m \033[38;2;139;90;43m██\033[38;2;255;215;0m█\033[38;2;139;90;43m██\033[0m\n"
printf " \033[38;2;139;90;43m████\033[0m \033[38;2;139;90;43m████\033[0m \033[38;2;139;90;43m████\033[0m \033[38;2;139;90;43m████\033[0m\n"
printf " \033[38;2;139;90;43m██\033[0m \033[38;2;139;90;43m██\033[0m \033[38;2;139;90;43m██\033[0m \033[38;2;139;90;43m██\033[0m\n"
printf " \033[38;2;255;200;50m██\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m██\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m\n"
printf " \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m█\033[0m \033[38;2;101;67;33m█\033[0m \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m█\033[0m \033[38;2;101;67;33m█\033[0m \033[38;2;101;67;33m██\033[0m\n"
printf "\n\033[1m WALKING RIGHT\033[0m\n\n"
printf " Frame 1 Frame 2 Frame 3 Frame 4\n\n"
printf " \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m\n"
printf " \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m \033[38;2;139;90;43m█\033[0m\n"
printf " \033[38;2;255;200;50m███▄\033[0m \033[38;2;255;200;50m███▄\033[0m \033[38;2;255;200;50m███▄\033[0m \033[38;2;255;200;50m███▄\033[0m\n"
printf " \033[38;2;255;200;50m█████\033[0m \033[38;2;255;200;50m█████\033[0m \033[38;2;255;200;50m█████\033[0m \033[38;2;255;200;50m█████\033[0m\n"
printf " \033[38;2;255;200;50m███\033[38;2;0;0;0m██\033[0m \033[38;2;255;200;50m███\033[38;2;0;0;0m██\033[0m \033[38;2;255;200;50m███\033[38;2;0;0;0m██\033[0m \033[38;2;255;200;50m███\033[38;2;0;0;0m██\033[0m\n"
printf " \033[38;2;255;200;50m████\033[0m \033[38;2;255;200;50m████\033[0m \033[38;2;255;200;50m████\033[0m \033[38;2;255;200;50m████\033[0m\n"
printf " \033[38;2;255;200;50m██\033[0m \033[38;2;255;200;50m██\033[0m \033[38;2;255;200;50m██\033[0m \033[38;2;255;200;50m██\033[0m\n"
printf " \033[38;2;139;90;43m████\033[0m \033[38;2;139;90;43m████\033[0m \033[38;2;139;90;43m████\033[0m \033[38;2;139;90;43m████\033[0m\n"
printf " \033[38;2;139;90;43m██\033[38;2;255;215;0m█\033[38;2;139;90;43m██\033[0m \033[38;2;139;90;43m██\033[38;2;255;215;0m█\033[38;2;139;90;43m██\033[0m \033[38;2;139;90;43m██\033[38;2;255;215;0m█\033[38;2;139;90;43m██\033[0m \033[38;2;139;90;43m██\033[38;2;255;215;0m█\033[38;2;139;90;43m██\033[0m\n"
printf " \033[38;2;139;90;43m████\033[0m \033[38;2;139;90;43m████\033[0m \033[38;2;139;90;43m████\033[0m \033[38;2;139;90;43m████\033[0m\n"
printf " \033[38;2;139;90;43m██\033[0m \033[38;2;139;90;43m██\033[0m \033[38;2;139;90;43m██\033[0m \033[38;2;139;90;43m██\033[0m\n"
printf " \033[38;2;255;200;50m██\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m██\033[0m \033[38;2;255;200;50m█\033[0m \033[38;2;255;200;50m█\033[0m\n"
printf " \033[38;2;101;67;33m█\033[0m \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m█\033[0m \033[38;2;101;67;33m█\033[0m \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m██\033[0m \033[38;2;101;67;33m█\033[0m\n"
printf "\n"

View file

@ -25,7 +25,7 @@ export async function generateOGImage(prompt: string): Promise<Buffer> {
try {
const client = getOpenAIClient();
const response = await client.images.generate({
model: 'gpt-image-1',
model: 'gpt-image-1-mini',
prompt,
n: 1,
size: '1536x1024', // Closest aspect ratio to 1200x630, will serve as-is

144
beast.sh Executable file
View file

@ -0,0 +1,144 @@
#!/bin/bash
# Humanoid Beast Sprite Sheet with Bounding Boxes
# Colors (background mode for solid pixels)
F="\033[48;2;139;90;43m" # Fur (brown)
D="\033[48;2;101;67;33m" # Dark fur
L="\033[48;2;178;134;87m" # Light fur/highlight
E="\033[48;2;255;200;0m" # Eyes (glowing yellow)
e="\033[48;2;180;140;0m" # Eyes dark
M="\033[48;2;60;40;30m" # Muzzle/nose dark
T="\033[48;2;200;200;200m" # Teeth/claws
C="\033[48;2;40;40;40m" # Claws dark
X="\033[0m" # Reset
P=" " # Pixel (two spaces)
# Box drawing
BOX_COLOR="\033[38;2;100;100;100m"
RESET="\033[0m"
clear
echo ""
echo -e "\033[1m HUMANOID BEAST - SPRITE SHEET\033[0m"
echo -e " Each sprite: 16x20 pixels (32x20 characters)"
echo ""
# Function to draw horizontal box line
hline() {
echo -ne "${BOX_COLOR}"
echo -n " ┌"
for i in {1..32}; do echo -n "─"; done
echo -n "┐ ┌"
for i in {1..32}; do echo -n "─"; done
echo -n "┐ ┌"
for i in {1..32}; do echo -n "─"; done
echo -n "┐ ┌"
for i in {1..32}; do echo -n "─"; done
echo -e "${RESET}"
}
hline_bottom() {
echo -ne "${BOX_COLOR}"
echo -n " └"
for i in {1..32}; do echo -n "─"; done
echo -n "┘ └"
for i in {1..32}; do echo -n "─"; done
echo -n "┘ └"
for i in {1..32}; do echo -n "─"; done
echo -n "┘ └"
for i in {1..32}; do echo -n "─"; done
echo -e "${RESET}"
}
V="${BOX_COLOR}${RESET}"
echo -e "\033[1m WALKING DOWN\033[0m"
echo " Frame 1 Frame 2 Frame 3 Frame 4"
hline
# Row 1 - Ears
printf " ${V} ${D}${P}${P}${X} ${D}${P}${P}${X} ${V} ${V} ${D}${P}${P}${X} ${D}${P}${P}${X} ${V} ${V} ${D}${P}${P}${X} ${D}${P}${P}${X} ${V} ${V} ${D}${P}${P}${X} ${D}${P}${P}${X} ${V}\n"
# Row 2 - Ears connect to head
printf " ${V} ${D}${P}${F}${P}${P}${X} ${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${X} ${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${X} ${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${X} ${F}${P}${D}${P}${X} ${V}\n"
# Row 3 - Top of head
printf " ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V}\n"
# Row 4 - Brow
printf " ${V} ${F}${P}${L}${P}${F}${P}${P}${P}${P}${P}${P}${L}${P}${F}${P}${X} ${V} ${V} ${F}${P}${L}${P}${F}${P}${P}${P}${P}${P}${P}${L}${P}${F}${P}${X} ${V} ${V} ${F}${P}${L}${P}${F}${P}${P}${P}${P}${P}${P}${L}${P}${F}${P}${X} ${V} ${V} ${F}${P}${L}${P}${F}${P}${P}${P}${P}${P}${P}${L}${P}${F}${P}${X} ${V}\n"
# Row 5 - Eyes
printf " ${V} ${F}${P}${E}${P}${P}${F}${P}${P}${P}${P}${E}${P}${P}${F}${P}${X} ${V} ${V} ${F}${P}${E}${P}${P}${F}${P}${P}${P}${P}${E}${P}${P}${F}${P}${X} ${V} ${V} ${F}${P}${E}${P}${P}${F}${P}${P}${P}${P}${E}${P}${P}${F}${P}${X} ${V} ${V} ${F}${P}${E}${P}${P}${F}${P}${P}${P}${P}${E}${P}${P}${F}${P}${X} ${V}\n"
# Row 6 - Under eyes
printf " ${V} ${F}${P}${e}${P}${F}${P}${P}${P}${P}${P}${P}${e}${P}${F}${P}${X} ${V} ${V} ${F}${P}${e}${P}${F}${P}${P}${P}${P}${P}${P}${e}${P}${F}${P}${X} ${V} ${V} ${F}${P}${e}${P}${F}${P}${P}${P}${P}${P}${P}${e}${P}${F}${P}${X} ${V} ${V} ${F}${P}${e}${P}${F}${P}${P}${P}${P}${P}${P}${e}${P}${F}${P}${X} ${V}\n"
# Row 7 - Muzzle top
printf " ${V} ${F}${P}${P}${D}${P}${M}${P}${P}${D}${P}${F}${P}${P}${X} ${V} ${V} ${F}${P}${P}${D}${P}${M}${P}${P}${D}${P}${F}${P}${P}${X} ${V} ${V} ${F}${P}${P}${D}${P}${M}${P}${P}${D}${P}${F}${P}${P}${X} ${V} ${V} ${F}${P}${P}${D}${P}${M}${P}${P}${D}${P}${F}${P}${P}${X} ${V}\n"
# Row 8 - Mouth with fangs
printf " ${V} ${F}${P}${T}${P}${M}${P}${P}${P}${P}${T}${P}${F}${P}${X} ${V} ${V} ${F}${P}${T}${P}${M}${P}${P}${P}${P}${T}${P}${F}${P}${X} ${V} ${V} ${F}${P}${T}${P}${M}${P}${P}${P}${P}${T}${P}${F}${P}${X} ${V} ${V} ${F}${P}${T}${P}${M}${P}${P}${P}${P}${T}${P}${F}${P}${X} ${V}\n"
# Row 9 - Chin
printf " ${V} ${D}${P}${F}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V}\n"
# Row 10 - Neck
printf " ${V} ${D}${P}${F}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${F}${P}${D}${P}${X} ${V}\n"
# Row 11 - Shoulders
printf " ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V}\n"
# Row 12 - Upper torso
printf " ${V} ${C}${P}${F}${P}${P}${P}${D}${P}${F}${P}${P}${P}${P}${D}${P}${F}${P}${P}${P}${C}${P}${X} ${V} ${V} ${C}${P}${F}${P}${P}${P}${D}${P}${F}${P}${P}${P}${P}${D}${P}${F}${P}${P}${P}${C}${P}${X} ${V} ${V} ${C}${P}${F}${P}${P}${P}${D}${P}${F}${P}${P}${P}${P}${D}${P}${F}${P}${P}${P}${C}${P}${X} ${V} ${V} ${C}${P}${F}${P}${P}${P}${D}${P}${F}${P}${P}${P}${P}${D}${P}${F}${P}${P}${P}${C}${P}${X} ${V}\n"
# Row 13 - Mid torso with claws
printf " ${V} ${T}${P}${D}${P}${F}${P}${P}${D}${P}${F}${P}${P}${D}${P}${F}${P}${P}${D}${P}${T}${P}${X} ${V} ${V} ${T}${P}${D}${P}${F}${P}${P}${D}${P}${F}${P}${P}${D}${P}${F}${P}${P}${D}${P}${T}${P}${X} ${V} ${V} ${T}${P}${D}${P}${F}${P}${P}${D}${P}${F}${P}${P}${D}${P}${F}${P}${P}${D}${P}${T}${P}${X} ${V} ${V} ${T}${P}${D}${P}${F}${P}${P}${D}${P}${F}${P}${P}${D}${P}${F}${P}${P}${D}${P}${T}${P}${X} ${V}\n"
# Row 14 - Lower torso
printf " ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V}\n"
# Row 15 - Hips
printf " ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${F}${P}${D}${P}${X} ${V}\n"
# Row 16 - Upper legs - animated
printf " ${V} ${F}${P}${P}${P}${X} ${F}${P}${P}${P}${X} ${V} ${V} ${F}${P}${P}${P}${F}${P}${P}${P}${X} ${V} ${V} ${F}${P}${P}${P}${X} ${F}${P}${P}${P}${X} ${V} ${V} ${F}${P}${P}${P}${F}${P}${P}${P}${X} ${V}\n"
# Row 17 - Mid legs
printf " ${V} ${D}${P}${F}${P}${X} ${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${X} ${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${F}${P}${D}${P}${X} ${V}\n"
# Row 18 - Lower legs
printf " ${V} ${D}${P}${F}${P}${X} ${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${X} ${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${X} ${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${X} ${F}${P}${D}${P}${X} ${V}\n"
# Row 19 - Feet with claws
printf " ${V} ${C}${P}${D}${P}${F}${P}${X} ${F}${P}${D}${P}${C}${P}${X} ${V} ${V} ${C}${P}${D}${P}${F}${P}${X} ${F}${P}${D}${P}${C}${P}${X} ${V} ${V} ${C}${P}${D}${P}${F}${P}${X} ${F}${P}${D}${P}${C}${P}${X} ${V} ${V} ${C}${P}${D}${P}${F}${P}${X} ${F}${P}${D}${P}${C}${P}${X} ${V}\n"
# Row 20 - Claws
printf " ${V} ${T}${P}${C}${P}${X} ${C}${P}${T}${P}${X} ${V} ${V} ${T}${P}${C}${P}${X} ${C}${P}${T}${P}${X} ${V} ${V} ${T}${P}${C}${P}${X} ${C}${P}${T}${P}${X} ${V} ${V} ${T}${P}${C}${P}${X} ${C}${P}${T}${P}${X} ${V}\n"
hline_bottom
echo ""
echo -e "\033[1m WALKING LEFT (SIDE VIEW)\033[0m"
echo " Frame 1 Frame 2 Frame 3 Frame 4"
hline
# Row 1 - Ear
printf " ${V} ${D}${P}${P}${X} ${V} ${V} ${D}${P}${P}${X} ${V} ${V} ${D}${P}${P}${X} ${V} ${V} ${D}${P}${P}${X} ${V}\n"
# Row 2 - Ear to head
printf " ${V} ${D}${P}${F}${P}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${X} ${V}\n"
# Row 3 - Head top
printf " ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${D}${P}${X} ${V}\n"
# Row 4 - Brow
printf " ${V} ${F}${P}${L}${P}${F}${P}${P}${P}${P}${F}${P}${X} ${V} ${V} ${F}${P}${L}${P}${F}${P}${P}${P}${P}${F}${P}${X} ${V} ${V} ${F}${P}${L}${P}${F}${P}${P}${P}${P}${F}${P}${X} ${V} ${V} ${F}${P}${L}${P}${F}${P}${P}${P}${P}${F}${P}${X} ${V}\n"
# Row 5 - Eye (side)
printf " ${V} ${E}${P}${P}${F}${P}${P}${P}${P}${P}${F}${P}${X} ${V} ${V} ${E}${P}${P}${F}${P}${P}${P}${P}${P}${F}${P}${X} ${V} ${V} ${E}${P}${P}${F}${P}${P}${P}${P}${P}${F}${P}${X} ${V} ${V} ${E}${P}${P}${F}${P}${P}${P}${P}${P}${F}${P}${X} ${V}\n"
# Row 6 - Muzzle
printf " ${V} ${D}${P}${M}${P}${P}${F}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${M}${P}${P}${F}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${M}${P}${P}${F}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${M}${P}${P}${F}${P}${P}${P}${P}${D}${P}${X} ${V}\n"
# Row 7 - Mouth
printf " ${V} ${T}${P}${M}${P}${P}${F}${P}${P}${D}${P}${X} ${V} ${V} ${T}${P}${M}${P}${P}${F}${P}${P}${D}${P}${X} ${V} ${V} ${T}${P}${M}${P}${P}${F}${P}${P}${D}${P}${X} ${V} ${V} ${T}${P}${M}${P}${P}${F}${P}${P}${D}${P}${X} ${V}\n"
# Row 8 - Chin/neck
printf " ${V} ${D}${P}${F}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${D}${P}${X} ${V}\n"
# Row 9 - Shoulders
printf " ${V} ${C}${P}${D}${P}${F}${P}${P}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${C}${P}${D}${P}${F}${P}${P}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${C}${P}${D}${P}${F}${P}${P}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${C}${P}${D}${P}${F}${P}${P}${P}${P}${P}${P}${D}${P}${X} ${V}\n"
# Row 10 - Arm/torso
printf " ${V} ${T}${P}${F}${P}${P}${D}${P}${F}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${T}${P}${F}${P}${P}${D}${P}${F}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${T}${P}${F}${P}${P}${D}${P}${F}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${T}${P}${F}${P}${P}${D}${P}${F}${P}${P}${P}${P}${D}${P}${X} ${V}\n"
# Row 11 - Mid torso
printf " ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${D}${P}${X} ${V}\n"
# Row 12 - Lower torso
printf " ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${P}${P}${D}${P}${X} ${V}\n"
# Row 13 - Hips
printf " ${V} ${D}${P}${F}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${P}${P}${P}${D}${P}${X} ${V}\n"
# Row 14-20 - Legs animated
printf " ${V} ${F}${P}${P}${P}${P}${X} ${V} ${V} ${F}${P}${P}${X} ${F}${P}${P}${X} ${V} ${V} ${F}${P}${P}${P}${P}${X} ${V} ${V} ${F}${P}${P}${X} ${F}${P}${P}${X} ${V}\n"
printf " ${V} ${D}${P}${F}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${X} ${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${X} ${F}${P}${D}${P}${X} ${V}\n"
printf " ${V} ${D}${P}${F}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${X} ${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${F}${P}${D}${P}${X} ${V} ${V} ${D}${P}${F}${P}${X} ${F}${P}${D}${P}${X} ${V}\n"
printf " ${V} ${C}${P}${D}${P}${F}${P}${F}${P}${D}${P}${C}${P}${X} ${V} ${V} ${C}${P}${D}${P}${F}${P}${X} ${F}${P}${D}${P}${C}${P}${X} ${V} ${V} ${C}${P}${D}${P}${F}${P}${F}${P}${D}${P}${C}${P}${X} ${V} ${V} ${C}${P}${D}${P}${F}${P}${X} ${F}${P}${D}${P}${C}${P}${X} ${V}\n"
printf " ${V} ${T}${P}${C}${P}${X} ${C}${P}${T}${P}${X} ${V} ${V} ${T}${P}${C}${P}${X} ${C}${P}${T}${P}${X} ${V} ${V} ${T}${P}${C}${P}${X} ${C}${P}${T}${P}${X} ${V} ${V} ${T}${P}${C}${P}${X} ${C}${P}${T}${P}${X} ${V}\n"
printf " ${V} ${V} ${V} ${V} ${V} ${V} ${V} ${V}\n"
hline_bottom
echo ""
echo -e " \033[1mDimensions:\033[0m"
echo " • Sprite size: 16 pixels wide × 20 pixels tall"
echo " • Character size: 32 chars wide × 20 rows (each pixel = 2 chars)"
echo " • Color palette: Brown fur, yellow eyes, white fangs/claws"
echo ""

100
hotel.sh Executable file
View file

@ -0,0 +1,100 @@
#!/bin/bash
# Hotel - Exterior View (Front Facade)
# Using ANSI 24-bit color codes
clear
echo ""
echo " ╔══════════════════════════════════════════════════════════════════════╗"
echo " ║ GRAND HOTEL - EXTERIOR VIEW ║"
echo " ╚══════════════════════════════════════════════════════════════════════╝"
echo ""
# Colors
SKY="\033[48;2;135;180;220m"
WALL="\033[48;2;180;160;140m"
WIN="\033[48;2;100;140;180m"
WIN_LIT="\033[48;2;255;230;150m"
WIN_FRAME="\033[48;2;80;70;60m"
ROOF="\033[48;2;100;80;70m"
ROOF_H="\033[48;2;120;100;90m"
GROUND="\033[48;2;80;80;80m"
GRASS="\033[48;2;60;120;50m"
DOOR="\033[48;2;120;60;40m"
DOOR_H="\033[48;2;160;100;60m"
GLASS="\033[48;2;180;200;210m"
AWN="\033[48;2;160;40;40m"
AWN_S="\033[48;2;120;30;30m"
SIGN="\033[48;2;40;40;50m"
SIGN_LIT="\033[48;2;255;200;100m"
TRIM="\033[48;2;200;190;170m"
PLANT="\033[48;2;40;100;40m"
LAMP="\033[48;2;60;60;60m"
LAMP_ON="\033[48;2;255;240;200m"
X="\033[0m"
P=" "
# SKY
echo -e "${SKY}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${X}"
echo -e "${SKY}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${X}"
# ROOF
echo -e "${SKY}${P}${P}${P}${P}${P}${P}${ROOF}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${SKY}${P}${P}${P}${P}${P}${X}"
echo -e "${SKY}${P}${P}${P}${P}${P}${ROOF}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${SKY}${P}${P}${P}${P}${X}"
echo -e "${SKY}${P}${P}${P}${P}${ROOF_H}${ROOF}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${ROOF}${SKY}${P}${P}${P}${X}"
# ROOF EDGE / TRIM
echo -e "${SKY}${P}${P}${P}${TRIM}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${TRIM}${SKY}${P}${P}${X}"
# FLOOR 5
echo -e "${SKY}${P}${P}${P}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${SKY}${P}${P}${X}"
echo -e "${SKY}${P}${P}${P}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${SKY}${P}${P}${X}"
echo -e "${SKY}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${SKY}${P}${P}${X}"
# FLOOR 4
echo -e "${SKY}${P}${P}${P}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${SKY}${P}${P}${X}"
echo -e "${SKY}${P}${P}${P}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${SKY}${P}${P}${X}"
echo -e "${SKY}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${SKY}${P}${P}${X}"
# FLOOR 3
echo -e "${SKY}${P}${P}${P}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${SKY}${P}${P}${X}"
echo -e "${SKY}${P}${P}${P}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${SKY}${P}${P}${X}"
echo -e "${SKY}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${SKY}${P}${P}${X}"
# FLOOR 2
echo -e "${SKY}${P}${P}${P}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${SKY}${P}${P}${X}"
echo -e "${SKY}${P}${P}${P}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${WIN_FRAME}${WIN_LIT}${P}${WIN_FRAME}${WALL}${SKY}${P}${P}${X}"
echo -e "${SKY}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${SKY}${P}${P}${X}"
# HOTEL SIGN
echo -e "${SKY}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${SIGN}${P}${SIGN_LIT}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${SIGN_LIT}${P}${SIGN}${P}${P}${P}${P}${P}${WALL}${SKY}${P}${P}${X}"
# FLOOR 1 - ENTRANCE
echo -e "${SKY}${P}${P}${P}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${P}${P}${GLASS}${GLASS}${GLASS}${GLASS}${GLASS}${GLASS}${GLASS}${GLASS}${GLASS}${GLASS}${P}${P}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${SKY}${P}${P}${X}"
echo -e "${SKY}${P}${P}${P}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${P}${P}${P}${GLASS}${GLASS}${DOOR}${DOOR}${DOOR}${DOOR}${DOOR}${DOOR}${GLASS}${GLASS}${P}${P}${WALL}${P}${WIN_FRAME}${WIN}${P}${WIN_FRAME}${WALL}${SKY}${P}${P}${X}"
echo -e "${SKY}${P}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${P}${P}${P}${GLASS}${GLASS}${DOOR}${DOOR_H}${DOOR}${DOOR}${DOOR_H}${DOOR}${GLASS}${GLASS}${P}${P}${WALL}${P}${P}${P}${P}${P}${WALL}${SKY}${P}${P}${X}"
# AWNING
echo -e "${SKY}${P}${P}${P}${WALL}${P}${P}${P}${P}${AWN}${AWN}${AWN}${AWN}${AWN}${AWN}${AWN}${AWN}${AWN}${AWN}${AWN}${AWN}${AWN}${AWN}${AWN}${AWN}${AWN}${AWN}${P}${P}${P}${P}${WALL}${SKY}${P}${P}${X}"
echo -e "${SKY}${P}${P}${P}${WALL}${P}${P}${P}${AWN_S}${AWN}${AWN_S}${AWN}${AWN_S}${AWN}${AWN_S}${AWN}${AWN_S}${AWN}${AWN_S}${AWN}${AWN_S}${AWN}${AWN_S}${AWN}${AWN_S}${AWN}${AWN_S}${P}${P}${P}${WALL}${SKY}${P}${P}${X}"
# ENTRANCE GROUND LEVEL
echo -e "${SKY}${P}${P}${LAMP}${WALL}${P}${PLANT}${P}${P}${P}${P}${P}${P}${GLASS}${GLASS}${DOOR}${DOOR_H}${DOOR}${DOOR}${DOOR_H}${DOOR}${GLASS}${GLASS}${P}${P}${P}${P}${P}${P}${PLANT}${P}${WALL}${LAMP}${SKY}${P}${X}"
echo -e "${SKY}${P}${P}${LAMP_ON}${WALL}${P}${PLANT}${P}${P}${P}${P}${P}${P}${GLASS}${GLASS}${GLASS}${GLASS}${GLASS}${GLASS}${GLASS}${GLASS}${GLASS}${GLASS}${P}${P}${P}${P}${P}${P}${PLANT}${P}${WALL}${LAMP_ON}${SKY}${P}${X}"
# GROUND / SIDEWALK
echo -e "${GRASS}${P}${P}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GROUND}${GRASS}${P}${X}"
echo -e "${GRASS}${P}${P}${P}${GROUND}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${GROUND}${P}${GRASS}${P}${X}"
echo -e "${GRASS}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${X}"
echo ""
echo " ┌──────────────────────────────────────────────────────────────────────┐"
echo " │ LEGEND │"
echo " ├──────────────────────────────────────────────────────────────────────┤"
echo -e "${WALL} ${X} Wall ${WIN} ${X} Window (dark) ${WIN_LIT} ${X} Window (lit) │"
echo -e "${ROOF} ${X} Roof ${DOOR} ${X} Door ${GLASS} ${X} Glass │"
echo -e "${AWN} ${X} Awning ${PLANT} ${X} Plants ${LAMP_ON} ${X} Lamp │"
echo -e "${GROUND} ${X} Ground ${GRASS} ${X} Grass ${SIGN_LIT} ${X} Sign lights │"
echo " └──────────────────────────────────────────────────────────────────────┘"
echo ""
echo " 5-story hotel with central glass entrance, red awning, and lit windows"
echo ""

182
knight.sh Executable file
View file

@ -0,0 +1,182 @@
#!/bin/bash
# Knight in Armor v2 - Improved Detail
# Better proportions, sharper edges, ground shadow
clear
c() { echo -en "\033[38;2;$1;$2;$3m\033[48;2;$4;$5;$6m"; }
X="\033[0m"
echo ""
echo " ╔═══════════════════════════════════════════════════════════════════════════════════╗"
echo " ║ KNIGHT IN ARMOR v2 - IMPROVED DETAIL (Facing Down) ║"
echo " ╚═══════════════════════════════════════════════════════════════════════════════════╝"
echo ""
# ═══════════════════════════════════════════════════════════════════════════════
# REFINED COLOR PALETTE
# ═══════════════════════════════════════════════════════════════════════════════
# Metal (more contrast)
M1="220 225 235" # Brightest highlight
M2="170 175 185" # Light
M3="120 125 135" # Mid
M4="75 80 90" # Dark
M5="40 42 50" # Darkest
# Gold (richer)
G1="255 200 60" # Bright gold
G2="180 140 40" # Dark gold
# Cape (deeper blue)
C1="100 120 200" # Light
C2="60 80 160" # Mid
C3="35 50 120" # Dark
# Plume (vibrant red)
P1="240 50 50" # Bright
P2="180 30 30" # Dark
# Shield (bold red with gold cross)
SH="180 40 40" # Shield red
SHD="130 25 25" # Shield dark
# Sword
SW="240 245 255" # Blade bright
SWD="180 185 195" # Blade shadow
# Shadow on ground
SD="0 0 0"
# Terrains
GR="40 95 40" # Grass
ST="85 85 90" # Stone
SA="170 150 110" # Sand
WA="45 90 130" # Water
echo " ┌────────────────┐┌────────────────┐┌────────────────┐┌────────────────┐"
echo " │ GRASS ││ STONE ││ SAND ││ WATER │"
echo " └────────────────┘└────────────────┘└────────────────┘└────────────────┘"
# Unified knight drawing - 12 cells wide, tighter layout
# Each column: terrain bg, knight on top
# Row 1: Plume top
echo -en " "
echo -en "$(c $P1 $GR) ⢀⣴⣷⣦⡀ $(c $P1 $ST) ⢀⣴⣷⣦⡀ $(c $P1 $SA) ⢀⣴⣷⣦⡀ $(c $P1 $WA) ⢀⣴⣷⣦⡀ "
echo -e "${X}"
# Row 2: Plume body
echo -en " "
echo -en "$(c $P1 $GR) $(c $P2 $GR)$(c $P1 $GR)⣿⣿⣿⣿$(c $P2 $GR)$(c $P1 $GR) $(c $P1 $ST) $(c $P2 $ST)$(c $P1 $ST)⣿⣿⣿⣿$(c $P2 $ST)$(c $P1 $ST) $(c $P1 $SA) $(c $P2 $SA)$(c $P1 $SA)⣿⣿⣿⣿$(c $P2 $SA)$(c $P1 $SA) $(c $P1 $WA) $(c $P2 $WA)$(c $P1 $WA)⣿⣿⣿⣿$(c $P2 $WA)$(c $P1 $WA) "
echo -e "${X}"
# Row 3: Helmet crown with plume base
echo -en " "
echo -en "$(c $M4 $GR)$(c $M3 $GR)$(c $P2 $GR)⣿⣿⣿⣿$(c $M3 $GR)$(c $M4 $GR)$(c $M4 $ST)$(c $M3 $ST)$(c $P2 $ST)⣿⣿⣿⣿$(c $M3 $ST)$(c $M4 $ST)$(c $M4 $SA)$(c $M3 $SA)$(c $P2 $SA)⣿⣿⣿⣿$(c $M3 $SA)$(c $M4 $SA)$(c $M4 $WA)$(c $M3 $WA)$(c $P2 $WA)⣿⣿⣿⣿$(c $M3 $WA)$(c $M4 $WA)"
echo -e "${X}"
# Row 4: Helmet dome - bright center
echo -en " "
echo -en "$(c $M5 $GR)$(c $M4 $GR)$(c $M3 $GR)$(c $M2 $GR)$(c $M1 $GR)⣿⣿$(c $M2 $GR)$(c $M3 $GR)$(c $M4 $GR)$(c $M5 $GR)$(c $M5 $ST)$(c $M4 $ST)$(c $M3 $ST)$(c $M2 $ST)$(c $M1 $ST)⣿⣿$(c $M2 $ST)$(c $M3 $ST)$(c $M4 $ST)$(c $M5 $ST)$(c $M5 $SA)$(c $M4 $SA)$(c $M3 $SA)$(c $M2 $SA)$(c $M1 $SA)⣿⣿$(c $M2 $SA)$(c $M3 $SA)$(c $M4 $SA)$(c $M5 $SA)$(c $M5 $WA)$(c $M4 $WA)$(c $M3 $WA)$(c $M2 $WA)$(c $M1 $WA)⣿⣿$(c $M2 $WA)$(c $M3 $WA)$(c $M4 $WA)$(c $M5 $WA)"
echo -e "${X}"
# Row 5: Helmet back plate
echo -en " "
echo -en "$(c $M5 $GR)$(c $M4 $GR)$(c $M3 $GR)$(c $M2 $GR)$(c $M1 $GR)⣿⣿$(c $M2 $GR)$(c $M3 $GR)$(c $M4 $GR)$(c $M5 $GR)$(c $M5 $ST)$(c $M4 $ST)$(c $M3 $ST)$(c $M2 $ST)$(c $M1 $ST)⣿⣿$(c $M2 $ST)$(c $M3 $ST)$(c $M4 $ST)$(c $M5 $ST)$(c $M5 $SA)$(c $M4 $SA)$(c $M3 $SA)$(c $M2 $SA)$(c $M1 $SA)⣿⣿$(c $M2 $SA)$(c $M3 $SA)$(c $M4 $SA)$(c $M5 $SA)$(c $M5 $WA)$(c $M4 $WA)$(c $M3 $WA)$(c $M2 $WA)$(c $M1 $WA)⣿⣿$(c $M2 $WA)$(c $M3 $WA)$(c $M4 $WA)$(c $M5 $WA)"
echo -e "${X}"
# Row 6: Gorget with gold trim
echo -en " "
echo -en "$(c $M5 $GR)$(c $M4 $GR)$(c $G1 $GR)$(c $M2 $GR)⣿⣿⣿⣿$(c $G1 $GR)$(c $M4 $GR)$(c $M5 $GR)$(c $M5 $ST)$(c $M4 $ST)$(c $G1 $ST)$(c $M2 $ST)⣿⣿⣿⣿$(c $G1 $ST)$(c $M4 $ST)$(c $M5 $ST)$(c $M5 $SA)$(c $M4 $SA)$(c $G1 $SA)$(c $M2 $SA)⣿⣿⣿⣿$(c $G1 $SA)$(c $M4 $SA)$(c $M5 $SA)$(c $M5 $WA)$(c $M4 $WA)$(c $G1 $WA)$(c $M2 $WA)⣿⣿⣿⣿$(c $G1 $WA)$(c $M4 $WA)$(c $M5 $WA)"
echo -e "${X}"
# Row 7: Shoulders - wide pauldrons
echo -en " "
echo -en "$(c $C3 $GR)$(c $M4 $GR)$(c $M3 $GR)$(c $M2 $GR)$(c $M1 $GR)$(c $C2 $GR)⣿⣿$(c $M1 $GR)$(c $M2 $GR)$(c $M3 $GR)$(c $M4 $GR)$(c $C3 $GR)$(c $C3 $ST)$(c $M4 $ST)$(c $M3 $ST)$(c $M2 $ST)$(c $M1 $ST)$(c $C2 $ST)⣿⣿$(c $M1 $ST)$(c $M2 $ST)$(c $M3 $ST)$(c $M4 $ST)$(c $C3 $ST)$(c $C3 $SA)$(c $M4 $SA)$(c $M3 $SA)$(c $M2 $SA)$(c $M1 $SA)$(c $C2 $SA)⣿⣿$(c $M1 $SA)$(c $M2 $SA)$(c $M3 $SA)$(c $M4 $SA)$(c $C3 $SA)$(c $C3 $WA)$(c $M4 $WA)$(c $M3 $WA)$(c $M2 $WA)$(c $M1 $WA)$(c $C2 $WA)⣿⣿$(c $M1 $WA)$(c $M2 $WA)$(c $M3 $WA)$(c $M4 $WA)$(c $C3 $WA)"
echo -e "${X}"
# Row 8: Pauldrons with spikes + cape
echo -en " "
echo -en "$(c $C1 $GR)$(c $M3 $GR)$(c $G1 $GR)$(c $M2 $GR)$(c $M3 $GR)$(c $C1 $GR)⣿⣿$(c $M3 $GR)$(c $M2 $GR)$(c $G1 $GR)$(c $M3 $GR)$(c $C1 $GR)$(c $C1 $ST)$(c $M3 $ST)$(c $G1 $ST)$(c $M2 $ST)$(c $M3 $ST)$(c $C1 $ST)⣿⣿$(c $M3 $ST)$(c $M2 $ST)$(c $G1 $ST)$(c $M3 $ST)$(c $C1 $ST)$(c $C1 $SA)$(c $M3 $SA)$(c $G1 $SA)$(c $M2 $SA)$(c $M3 $SA)$(c $C1 $SA)⣿⣿$(c $M3 $SA)$(c $M2 $SA)$(c $G1 $SA)$(c $M3 $SA)$(c $C1 $SA)$(c $C1 $WA)$(c $M3 $WA)$(c $G1 $WA)$(c $M2 $WA)$(c $M3 $WA)$(c $C1 $WA)⣿⣿$(c $M3 $WA)$(c $M2 $WA)$(c $G1 $WA)$(c $M3 $WA)$(c $C1 $WA)"
echo -e "${X}"
# Row 9: Upper torso + cape + arms start
echo -en " "
echo -en "$(c $C1 $GR)$(c $C2 $GR)$(c $M4 $GR)$(c $M3 $GR)$(c $C2 $GR)$(c $C1 $GR)⣿⣿$(c $C2 $GR)$(c $M3 $GR)$(c $M4 $GR)$(c $C2 $GR)$(c $C1 $GR)$(c $C1 $ST)$(c $C2 $ST)$(c $M4 $ST)$(c $M3 $ST)$(c $C2 $ST)$(c $C1 $ST)⣿⣿$(c $C2 $ST)$(c $M3 $ST)$(c $M4 $ST)$(c $C2 $ST)$(c $C1 $ST)$(c $C1 $SA)$(c $C2 $SA)$(c $M4 $SA)$(c $M3 $SA)$(c $C2 $SA)$(c $C1 $SA)⣿⣿$(c $C2 $SA)$(c $M3 $SA)$(c $M4 $SA)$(c $C2 $SA)$(c $C1 $SA)$(c $C1 $WA)$(c $C2 $WA)$(c $M4 $WA)$(c $M3 $WA)$(c $C2 $WA)$(c $C1 $WA)⣿⣿$(c $C2 $WA)$(c $M3 $WA)$(c $M4 $WA)$(c $C2 $WA)$(c $C1 $WA)"
echo -e "${X}"
# Row 10: Shield (left) + torso + sword hilt (right)
echo -en " "
echo -en "$(c $C2 $GR)$(c $SH $GR)$(c $G1 $GR)$(c $SH $GR)$(c $C2 $GR)$(c $C1 $GR)⣿⣿$(c $C2 $GR)$(c $M3 $GR)$(c $G2 $GR)$(c $SW $GR)$(c $C2 $GR)$(c $C2 $ST)$(c $SH $ST)$(c $G1 $ST)$(c $SH $ST)$(c $C2 $ST)$(c $C1 $ST)⣿⣿$(c $C2 $ST)$(c $M3 $ST)$(c $G2 $ST)$(c $SW $ST)$(c $C2 $ST)$(c $C2 $SA)$(c $SH $SA)$(c $G1 $SA)$(c $SH $SA)$(c $C2 $SA)$(c $C1 $SA)⣿⣿$(c $C2 $SA)$(c $M3 $SA)$(c $G2 $SA)$(c $SW $SA)$(c $C2 $SA)$(c $C2 $WA)$(c $SH $WA)$(c $G1 $WA)$(c $SH $WA)$(c $C2 $WA)$(c $C1 $WA)⣿⣿$(c $C2 $WA)$(c $M3 $WA)$(c $G2 $WA)$(c $SW $WA)$(c $C2 $WA)"
echo -e "${X}"
# Row 11: Shield with cross + mid torso + sword blade
echo -en " "
echo -en "$(c $C3 $GR)$(c $SH $GR)$(c $G1 $GR)$(c $G1 $GR)$(c $C2 $GR)$(c $C1 $GR)⣿⣿$(c $C2 $GR)$(c $M4 $GR)$(c $SW $GR)$(c $SW $GR)$(c $C3 $GR)$(c $C3 $ST)$(c $SH $ST)$(c $G1 $ST)$(c $G1 $ST)$(c $C2 $ST)$(c $C1 $ST)⣿⣿$(c $C2 $ST)$(c $M4 $ST)$(c $SW $ST)$(c $SW $ST)$(c $C3 $ST)$(c $C3 $SA)$(c $SH $SA)$(c $G1 $SA)$(c $G1 $SA)$(c $C2 $SA)$(c $C1 $SA)⣿⣿$(c $C2 $SA)$(c $M4 $SA)$(c $SW $SA)$(c $SW $SA)$(c $C3 $SA)$(c $C3 $WA)$(c $SH $WA)$(c $G1 $WA)$(c $G1 $WA)$(c $C2 $WA)$(c $C1 $WA)⣿⣿$(c $C2 $WA)$(c $M4 $WA)$(c $SW $WA)$(c $SW $WA)$(c $C3 $WA)"
echo -e "${X}"
# Row 12: Lower shield + fauld (waist) + sword
echo -en " "
echo -en "$(c $C3 $GR)$(c $SHD $GR)$(c $SH $GR)$(c $SHD $GR)$(c $C2 $GR)$(c $G1 $GR)⣤⣤$(c $C2 $GR)$(c $M4 $GR)$(c $SW $GR)$(c $SWD $GR)$(c $C3 $GR)$(c $C3 $ST)$(c $SHD $ST)$(c $SH $ST)$(c $SHD $ST)$(c $C2 $ST)$(c $G1 $ST)⣤⣤$(c $C2 $ST)$(c $M4 $ST)$(c $SW $ST)$(c $SWD $ST)$(c $C3 $ST)$(c $C3 $SA)$(c $SHD $SA)$(c $SH $SA)$(c $SHD $SA)$(c $C2 $SA)$(c $G1 $SA)⣤⣤$(c $C2 $SA)$(c $M4 $SA)$(c $SW $SA)$(c $SWD $SA)$(c $C3 $SA)$(c $C3 $WA)$(c $SHD $WA)$(c $SH $WA)$(c $SHD $WA)$(c $C2 $WA)$(c $G1 $WA)⣤⣤$(c $C2 $WA)$(c $M4 $WA)$(c $SW $WA)$(c $SWD $WA)$(c $C3 $WA)"
echo -e "${X}"
# Row 13: Tassets + cape behind
echo -en " "
echo -en "$(c $C3 $GR)$(c $C2 $GR)$(c $M3 $GR)$(c $M2 $GR)$(c $M3 $GR)⣿⣿$(c $M2 $GR)$(c $M3 $GR)$(c $C2 $GR)$(c $C3 $GR)$(c $C3 $ST)$(c $C2 $ST)$(c $M3 $ST)$(c $M2 $ST)$(c $M3 $ST)⣿⣿$(c $M2 $ST)$(c $M3 $ST)$(c $C2 $ST)$(c $C3 $ST)$(c $C3 $SA)$(c $C2 $SA)$(c $M3 $SA)$(c $M2 $SA)$(c $M3 $SA)⣿⣿$(c $M2 $SA)$(c $M3 $SA)$(c $C2 $SA)$(c $C3 $SA)$(c $C3 $WA)$(c $C2 $WA)$(c $M3 $WA)$(c $M2 $WA)$(c $M3 $WA)⣿⣿$(c $M2 $WA)$(c $M3 $WA)$(c $C2 $WA)$(c $C3 $WA)"
echo -e "${X}"
# Row 14: Upper legs (cuisses) - WIDER
echo -en " "
echo -en "$(c $M5 $GR) $(c $M4 $GR)$(c $M3 $GR)$(c $M2 $GR)$(c $M3 $GR)$(c $M5 $GR) $(c $M4 $GR)$(c $M3 $GR)$(c $M2 $GR)$(c $M3 $GR)$(c $M5 $GR) $(c $M5 $ST) $(c $M4 $ST)$(c $M3 $ST)$(c $M2 $ST)$(c $M3 $ST)$(c $M5 $ST) $(c $M4 $ST)$(c $M3 $ST)$(c $M2 $ST)$(c $M3 $ST)$(c $M5 $ST) $(c $M5 $SA) $(c $M4 $SA)$(c $M3 $SA)$(c $M2 $SA)$(c $M3 $SA)$(c $M5 $SA) $(c $M4 $SA)$(c $M3 $SA)$(c $M2 $SA)$(c $M3 $SA)$(c $M5 $SA) $(c $M5 $WA) $(c $M4 $WA)$(c $M3 $WA)$(c $M2 $WA)$(c $M3 $WA)$(c $M5 $WA) $(c $M4 $WA)$(c $M3 $WA)$(c $M2 $WA)$(c $M3 $WA)$(c $M5 $WA) "
echo -e "${X}"
# Row 15: Knee guards (poleyns) with gold
echo -en " "
echo -en "$(c $M5 $GR) $(c $M4 $GR)$(c $G1 $GR)$(c $M2 $GR)$(c $M4 $GR)$(c $M5 $GR) $(c $M4 $GR)$(c $M2 $GR)$(c $G1 $GR)$(c $M4 $GR)$(c $M5 $GR) $(c $M5 $ST) $(c $M4 $ST)$(c $G1 $ST)$(c $M2 $ST)$(c $M4 $ST)$(c $M5 $ST) $(c $M4 $ST)$(c $M2 $ST)$(c $G1 $ST)$(c $M4 $ST)$(c $M5 $ST) $(c $M5 $SA) $(c $M4 $SA)$(c $G1 $SA)$(c $M2 $SA)$(c $M4 $SA)$(c $M5 $SA) $(c $M4 $SA)$(c $M2 $SA)$(c $G1 $SA)$(c $M4 $SA)$(c $M5 $SA) $(c $M5 $WA) $(c $M4 $WA)$(c $G1 $WA)$(c $M2 $WA)$(c $M4 $WA)$(c $M5 $WA) $(c $M4 $WA)$(c $M2 $WA)$(c $G1 $WA)$(c $M4 $WA)$(c $M5 $WA) "
echo -e "${X}"
# Row 16: Greaves (shin) - WIDER
echo -en " "
echo -en "$(c $M5 $GR) $(c $M4 $GR)$(c $M3 $GR)$(c $M2 $GR)$(c $M4 $GR)$(c $M5 $GR) $(c $M4 $GR)$(c $M2 $GR)$(c $M3 $GR)$(c $M4 $GR)$(c $M5 $GR) $(c $M5 $ST) $(c $M4 $ST)$(c $M3 $ST)$(c $M2 $ST)$(c $M4 $ST)$(c $M5 $ST) $(c $M4 $ST)$(c $M2 $ST)$(c $M3 $ST)$(c $M4 $ST)$(c $M5 $ST) $(c $M5 $SA) $(c $M4 $SA)$(c $M3 $SA)$(c $M2 $SA)$(c $M4 $SA)$(c $M5 $SA) $(c $M4 $SA)$(c $M2 $SA)$(c $M3 $SA)$(c $M4 $SA)$(c $M5 $SA) $(c $M5 $WA) $(c $M4 $WA)$(c $M3 $WA)$(c $M2 $WA)$(c $M4 $WA)$(c $M5 $WA) $(c $M4 $WA)$(c $M2 $WA)$(c $M3 $WA)$(c $M4 $WA)$(c $M5 $WA) "
echo -e "${X}"
# Row 17: Lower greaves
echo -en " "
echo -en "$(c $M5 $GR) $(c $M5 $GR)$(c $M4 $GR)$(c $M3 $GR)$(c $M4 $GR)$(c $M5 $GR)$(c $M5 $GR) $(c $M5 $GR)$(c $M4 $GR)$(c $M3 $GR)$(c $M4 $GR)$(c $M5 $GR)$(c $M5 $ST) $(c $M5 $ST)$(c $M4 $ST)$(c $M3 $ST)$(c $M4 $ST)$(c $M5 $ST)$(c $M5 $ST) $(c $M5 $ST)$(c $M4 $ST)$(c $M3 $ST)$(c $M4 $ST)$(c $M5 $ST)$(c $M5 $SA) $(c $M5 $SA)$(c $M4 $SA)$(c $M3 $SA)$(c $M4 $SA)$(c $M5 $SA)$(c $M5 $SA) $(c $M5 $SA)$(c $M4 $SA)$(c $M3 $SA)$(c $M4 $SA)$(c $M5 $SA)$(c $M5 $WA) $(c $M5 $WA)$(c $M4 $WA)$(c $M3 $WA)$(c $M4 $WA)$(c $M5 $WA)$(c $M5 $WA) $(c $M5 $WA)$(c $M4 $WA)$(c $M3 $WA)$(c $M4 $WA)$(c $M5 $WA)"
echo -e "${X}"
# Row 18: Sabatons (feet)
echo -en " "
echo -en "$(c $M5 $GR)$(c $M4 $GR)$(c $M3 $GR)$(c $M2 $GR)$(c $M3 $GR)$(c $M4 $GR)$(c $M5 $GR)$(c $M4 $GR)$(c $M3 $GR)$(c $M2 $GR)$(c $M3 $GR)$(c $M4 $GR)$(c $M5 $GR)$(c $M5 $ST)$(c $M4 $ST)$(c $M3 $ST)$(c $M2 $ST)$(c $M3 $ST)$(c $M4 $ST)$(c $M5 $ST)$(c $M4 $ST)$(c $M3 $ST)$(c $M2 $ST)$(c $M3 $ST)$(c $M4 $ST)$(c $M5 $ST)$(c $M5 $SA)$(c $M4 $SA)$(c $M3 $SA)$(c $M2 $SA)$(c $M3 $SA)$(c $M4 $SA)$(c $M5 $SA)$(c $M4 $SA)$(c $M3 $SA)$(c $M2 $SA)$(c $M3 $SA)$(c $M4 $SA)$(c $M5 $SA)$(c $M5 $WA)$(c $M4 $WA)$(c $M3 $WA)$(c $M2 $WA)$(c $M3 $WA)$(c $M4 $WA)$(c $M5 $WA)$(c $M4 $WA)$(c $M3 $WA)$(c $M2 $WA)$(c $M3 $WA)$(c $M4 $WA)$(c $M5 $WA)"
echo -e "${X}"
# Row 19: Ground shadow
echo -en " "
echo -en "$(c $SD $GR) ⠈⠉⠛⠛⠛⠛⠛⠛⠉⠁ $(c $SD $ST) ⠈⠉⠛⠛⠛⠛⠛⠛⠉⠁ $(c $SD $SA) ⠈⠉⠛⠛⠛⠛⠛⠛⠉⠁ $(c $SD $WA) ⠈⠉⠛⠛⠛⠛⠛⠛⠉⠁ "
echo -e "${X}"
# Row 20: Terrain texture 1
echo -en " "
echo -en "$(c 60 130 60 $GR)⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿$(c 105 105 110 $ST)⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿$(c 190 170 130 $SA)⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿$(c 70 120 160 $WA)⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿"
echo -e "${X}"
# Row 21: Terrain texture 2
echo -en " "
echo -en "$(c 35 75 35 $GR)⢻⣛⣛⣻⢻⣛⣛⣻⢻⣛⣛⣻$(c 65 65 70 $ST)⣿⣤⣤⣿⣿⣤⣤⣿⣿⣤⣤⣿$(c 150 130 90 $SA)⣀⣠⣄⣀⣀⣠⣄⣀⣀⣠⣄⣀$(c 90 140 180 $WA)⢀⣠⣤⣀⢀⣠⣤⣀⢀⣠⣤⣀"
echo -e "${X}"
echo ""
echo " ┌─────────────────────────────────────────────────────────────────────────────────────┐"
echo " │ IMPROVEMENTS IN V2 │"
echo " ├─────────────────────────────────────────────────────────────────────────────────────┤"
echo " │ • Wider legs for better proportions │"
echo " │ • Larger feet (sabatons) for stability │"
echo " │ • Higher contrast metal shading (5 levels) │"
echo " │ • Cleaner gold trim on gorget and knees │"
echo " │ • Shield with visible gold cross pattern │"
echo " │ • Ground shadow for depth │"
echo " │ • Tighter tile spacing │"
echo " │ • Richer terrain textures │"
echo " └─────────────────────────────────────────────────────────────────────────────────────┘"
echo ""

156
reptile1_halfblock.sh Executable file
View file

@ -0,0 +1,156 @@
#!/bin/bash
# Reptile Lord - Method 1: Half-Block Characters (▀ ▄)
# Each cell = 2 vertical pixels using foreground + background color
# ▀ = top pixel (foreground), bottom pixel (background)
# ▄ = bottom pixel (foreground), top pixel (background)
# Full block = both same color, space = both background
clear
echo ""
echo " ╔═══════════════════════════════════════════════════════════════════════════╗"
echo " ║ REPTILE LORD - HALF-BLOCK METHOD (2 vertical pixels/cell) ║"
echo " ╚═══════════════════════════════════════════════════════════════════════════╝"
echo ""
# Color function: fg;bg
# Usage: $(c 0 100 0 50 50 50) = green foreground, dark gray background
c() {
echo -en "\033[38;2;$1;$2;$3m\033[48;2;$4;$5;$6m"
}
X="\033[0m"
# Colors (R G B)
# BG = transparent/background (dark purple for visibility)
BG="40 30 50"
# Scales
S1="0 120 80" # Dark green scales
S2="0 160 100" # Mid green scales
S3="0 200 120" # Light green scales/highlight
# Underbelly
U1="180 160 100" # Tan underbelly
U2="200 180 120" # Light tan
# Eyes
EY="255 200 0" # Yellow eyes
EP="0 0 0" # Pupil
# Claws/horns
CL="60 50 40" # Dark brown claws
CH="80 70 60" # Horn highlight
# Mouth
MO="150 50 50" # Red mouth interior
echo " ┌─────────────────────┐ ┌─────────────────────┐ ┌─────────────────────┐"
echo " │ FACING DOWN │ │ FACING LEFT │ │ FACING RIGHT │"
echo " └─────────────────────┘ └─────────────────────┘ └─────────────────────┘"
echo ""
# Each sprite is 10 cells wide x 12 cells tall = 10x24 "pixels"
# Row pairs (each row represents 2 pixel rows via half-blocks)
# --- FACING DOWN ---
# Using ▀ (upper half) and ▄ (lower half) and █ (full) and space (empty)
# Row 1-2: Top of head with small horns
echo -en " "
echo -en "$(c $BG $BG) $(c $CL $BG)$(c $S1 $BG)▄▄▄▄$(c $CL $BG)$(c $BG $BG) "
echo -en " "
echo -en "$(c $BG $BG) $(c $BG $BG) $(c $CL $BG)$(c $S1 $BG)▄▄▄▄$(c $BG $BG) "
echo -en " "
echo -en "$(c $BG $BG) $(c $S1 $BG)▄▄▄▄$(c $CL $BG)$(c $BG $BG) $(c $BG $BG) "
echo -e "${X}"
# Row 3-4: Upper head with eyes
echo -en " "
echo -en "$(c $S2 $S1)$(c $S1 $S1)$(c $EY $S1)$(c $S2 $S1)▄▄$(c $EY $S1)$(c $S1 $S1)$(c $S2 $S1)"
echo -en " "
echo -en "$(c $BG $BG) $(c $S2 $S1)$(c $S1 $S1)$(c $EY $S1)$(c $S2 $S1)▄▄$(c $S1 $S1)$(c $S2 $S1)$(c $BG $BG) "
echo -en " "
echo -en "$(c $BG $BG) $(c $S2 $S1)$(c $S1 $S1)$(c $S2 $S1)▄▄$(c $EY $S1)$(c $S1 $S1)$(c $S2 $S1)$(c $BG $BG) "
echo -e "${X}"
# Row 5-6: Snout/muzzle
echo -en " "
echo -en "$(c $S1 $S2)$(c $S2 $S2)$(c $S3 $S2)$(c $U1 $S2)▄▄$(c $S3 $S2)$(c $S2 $S2)$(c $S1 $S2)"
echo -en " "
echo -en "$(c $BG $BG) $(c $S1 $S2)$(c $S2 $S2)██$(c $U1 $S2)$(c $S2 $S2)██$(c $S1 $S2)$(c $BG $BG) "
echo -en " "
echo -en "$(c $BG $BG) $(c $S1 $S2)$(c $S2 $S2)██$(c $U1 $S2)$(c $S2 $S2)██$(c $S1 $S2)$(c $BG $BG) "
echo -e "${X}"
# Row 7-8: Neck/shoulders
echo -en " "
echo -en "$(c $S1 $BG)$(c $S2 $S1)$(c $U1 $S2)$(c $U2 $U1)▀▀$(c $U1 $S2)$(c $S2 $S1)$(c $S1 $BG)"
echo -en " "
echo -en "$(c $BG $BG) $(c $S1 $BG)$(c $S2 $S1)$(c $U1 $U1)██$(c $S2 $S1)▄▄$(c $BG $BG) $(c $BG $BG) "
echo -en " "
echo -en "$(c $BG $BG) $(c $BG $BG) $(c $S2 $S1)▄▄$(c $U1 $U1)██$(c $S2 $S1)$(c $S1 $BG)$(c $BG $BG) "
echo -e "${X}"
# Row 9-10: Upper torso with arms
echo -en " "
echo -en "$(c $CL $BG)$(c $S1 $S2)$(c $S2 $S2)$(c $U1 $U1)██$(c $S2 $S2)$(c $S1 $S2)$(c $CL $BG)"
echo -en " "
echo -en "$(c $CL $BG)$(c $S1 $BG)$(c $S2 $S1)$(c $U1 $U1)██$(c $S2 $S1)$(c $S1 $S2)$(c $S2 $BG)$(c $BG $BG) "
echo -en " "
echo -en "$(c $BG $BG) $(c $S2 $BG)$(c $S1 $S2)$(c $S2 $S1)$(c $U1 $U1)██$(c $S2 $S1)$(c $S1 $BG)$(c $CL $BG)"
echo -e "${X}"
# Row 11-12: Lower torso
echo -en " "
echo -en "$(c $CL $CL)$(c $S1 $S1)$(c $S2 $S2)$(c $U1 $U1)██$(c $S2 $S2)$(c $S1 $S1)$(c $CL $CL)"
echo -en " "
echo -en "$(c $CL $CL)$(c $S1 $S1)$(c $S2 $S2)$(c $U1 $U1)██$(c $S2 $S2)$(c $S1 $S1)$(c $S1 $BG)$(c $BG $BG) "
echo -en " "
echo -en "$(c $BG $BG) $(c $S1 $BG)$(c $S1 $S1)$(c $S2 $S2)$(c $U1 $U1)██$(c $S2 $S2)$(c $S1 $S1)$(c $CL $CL)"
echo -e "${X}"
# Row 13-14: Hips
echo -en " "
echo -en "$(c $BG $CL)$(c $S1 $S1)$(c $S2 $S2)$(c $U1 $U1)██$(c $S2 $S2)$(c $S1 $S1)$(c $BG $CL)"
echo -en " "
echo -en "$(c $BG $CL)$(c $S1 $S1)$(c $S2 $S2)$(c $U1 $U1)██$(c $S2 $S2)$(c $S1 $S1)$(c $BG $BG) $(c $BG $BG) "
echo -en " "
echo -en "$(c $BG $BG) $(c $BG $BG) $(c $S1 $S1)$(c $S2 $S2)$(c $U1 $U1)██$(c $S2 $S2)$(c $S1 $S1)$(c $BG $CL)"
echo -e "${X}"
# Row 15-16: Upper legs
echo -en " "
echo -en "$(c $BG $BG) $(c $S1 $S1)$(c $S2 $BG)$(c $BG $BG) $(c $BG $BG) $(c $S2 $BG)$(c $S1 $S1)$(c $BG $BG) "
echo -en " "
echo -en "$(c $BG $BG) $(c $S1 $S1)$(c $S1 $S1)$(c $BG $BG) $(c $BG $BG) $(c $S1 $S1)$(c $S1 $S1)$(c $S1 $BG)$(c $BG $BG) "
echo -en " "
echo -en "$(c $BG $BG) $(c $S1 $BG)$(c $S1 $S1)$(c $S1 $S1)$(c $BG $BG) $(c $BG $BG) $(c $S1 $S1)$(c $S1 $S1)$(c $BG $BG) "
echo -e "${X}"
# Row 17-18: Lower legs
echo -en " "
echo -en "$(c $BG $BG) $(c $S1 $S1)$(c $S1 $S1)$(c $BG $BG) $(c $BG $BG) $(c $S1 $S1)$(c $S1 $S1)$(c $BG $BG) "
echo -en " "
echo -en "$(c $BG $BG) $(c $S1 $S1)$(c $S1 $S1)$(c $BG $BG) $(c $BG $BG) $(c $S1 $S1)$(c $S1 $BG)$(c $S1 $S1)$(c $BG $BG) "
echo -en " "
echo -en "$(c $BG $BG) $(c $S1 $S1)$(c $S1 $BG)$(c $S1 $S1)$(c $BG $BG) $(c $BG $BG) $(c $S1 $S1)$(c $S1 $S1)$(c $BG $BG) "
echo -e "${X}"
# Row 19-20: Feet with claws
echo -en " "
echo -en "$(c $CL $BG)$(c $S1 $S1)$(c $CL $S1)$(c $BG $BG) $(c $BG $BG) $(c $CL $S1)$(c $S1 $S1)$(c $CL $BG)"
echo -en " "
echo -en "$(c $CL $BG)$(c $S1 $S1)$(c $CL $S1)$(c $BG $BG) $(c $BG $BG) $(c $S1 $BG)$(c $CL $S1)$(c $S1 $S1)$(c $CL $BG)"
echo -en " "
echo -en "$(c $CL $BG)$(c $S1 $S1)$(c $CL $S1)$(c $S1 $BG)$(c $BG $BG) $(c $BG $BG) $(c $CL $S1)$(c $S1 $S1)$(c $CL $BG)"
echo -e "${X}"
# Row 21-22: Claws
echo -en " "
echo -en "$(c $BG $CL)$(c $CL $CL)$(c $BG $CL)$(c $BG $BG) $(c $BG $BG) $(c $BG $CL)$(c $CL $CL)$(c $BG $CL)"
echo -en " "
echo -en "$(c $BG $CL)$(c $CL $CL)$(c $BG $CL)$(c $BG $BG) $(c $BG $BG) $(c $BG $BG) $(c $BG $CL)$(c $CL $CL)$(c $BG $CL)"
echo -en " "
echo -en "$(c $BG $CL)$(c $CL $CL)$(c $BG $CL)$(c $BG $BG) $(c $BG $BG) $(c $BG $BG) $(c $BG $CL)$(c $CL $CL)$(c $BG $CL)"
echo -e "${X}"
echo ""
echo " Resolution: 10×24 pixels per sprite (10 cells × 12 rows, 2 vertical pixels/cell)"
echo " Characters: ▀ (upper half), ▄ (lower half), █ (full block), space (empty)"
echo " Colors: Foreground = top pixel, Background = bottom pixel"
echo ""

180
reptile2_quadrant.sh Executable file
View file

@ -0,0 +1,180 @@
#!/bin/bash
# Reptile Lord - Method 2: Quadrant Block Characters
# Each cell = 2×2 subpixels (4 pixels per cell)
#
# Quadrant characters (2-color only: fg + bg):
# ▖ = bottom-left ▗ = bottom-right
# ▘ = top-left ▝ = top-right
# ▌ = left half ▐ = right half
# ▀ = top half ▄ = bottom half
# ▙ = all except top-right ▟ = all except top-left
# ▛ = all except bottom-right ▜ = all except bottom-left
# █ = full block (space) = empty
#
# Limitation: Only 2 colors per cell (foreground + background)
clear
echo ""
echo " ╔═══════════════════════════════════════════════════════════════════════════╗"
echo " ║ REPTILE LORD - QUADRANT BLOCKS (2×2 subpixels/cell) ║"
echo " ╚═══════════════════════════════════════════════════════════════════════════╝"
echo ""
# Color helper
c() {
echo -en "\033[38;2;$1;$2;$3m\033[48;2;$4;$5;$6m"
}
X="\033[0m"
# Palette
BG="30 25 40" # Background
S1="0 100 70" # Dark scales
S2="0 140 90" # Mid scales
S3="0 180 110" # Light scales
U1="170 150 90" # Underbelly dark
U2="190 170 110" # Underbelly light
EY="255 200 0" # Eye
CL="50 40 35" # Claw
HR="70 60 50" # Horn
echo " ┌───────────────────────────────────────────────────────────────────────────┐"
echo " │ FACING FORWARD (Idle) ATTACK FRAME WALKING FRAME │"
echo " └───────────────────────────────────────────────────────────────────────────┘"
echo ""
# Sprite: 8 cells wide × 10 cells tall = 16×20 subpixels
# Building row by row (each cell is 2×2)
# --- ROW 1: Horns and top of head ---
echo -en " "
# IDLE
echo -en "$(c $BG $BG) $(c $HR $BG)$(c $S1 $BG)▄▄$(c $HR $BG)$(c $BG $BG) "
echo -en " "
# ATTACK - horns more prominent
echo -en "$(c $HR $BG)$(c $HR $BG)$(c $S1 $BG)▄▄$(c $HR $BG)$(c $HR $BG)$(c $BG $BG) "
echo -en " "
# WALK
echo -en "$(c $BG $BG) $(c $HR $BG)$(c $S1 $BG)▄▄$(c $HR $BG)$(c $BG $BG) "
echo -e "${X}"
# --- ROW 2: Upper head with eyes ---
echo -en " "
# IDLE
echo -en "$(c $S2 $S1)$(c $S1 $S1)$(c $EY $S1)$(c $S1 $S1)$(c $EY $S1)$(c $S1 $S1)$(c $S2 $S1)$(c $BG $BG) "
echo -en " "
# ATTACK - angry eyes
echo -en "$(c $S2 $S1)$(c $S1 $S1)$(c $EY $S1)$(c $S1 $S1)$(c $EY $S1)$(c $S1 $S1)$(c $S2 $S1)$(c $BG $BG) "
echo -en " "
# WALK
echo -en "$(c $S2 $S1)$(c $S1 $S1)$(c $EY $S1)$(c $S1 $S1)$(c $EY $S1)$(c $S1 $S1)$(c $S2 $S1)$(c $BG $BG) "
echo -e "${X}"
# --- ROW 3: Snout/muzzle ---
echo -en " "
# IDLE
echo -en "$(c $S1 $S2)$(c $S2 $S2)$(c $U1 $S2)▄▄$(c $S2 $S2)$(c $S1 $S2)$(c $BG $BG) "
echo -en " "
# ATTACK - open mouth
echo -en "$(c $S1 $S2)$(c $S2 $S2)$(c $U1 $S2)▀▀$(c $S2 $S2)$(c $S1 $S2)$(c $BG $BG) "
echo -en " "
# WALK
echo -en "$(c $S1 $S2)$(c $S2 $S2)$(c $U1 $S2)▄▄$(c $S2 $S2)$(c $S1 $S2)$(c $BG $BG) "
echo -e "${X}"
# --- ROW 4: Neck ---
echo -en " "
# IDLE
echo -en "$(c $BG $BG) $(c $S1 $S2)$(c $U1 $U1)██$(c $S1 $S2)$(c $BG $BG) "
echo -en " "
# ATTACK
echo -en "$(c $BG $BG) $(c $S1 $S2)$(c $U1 $U1)██$(c $S1 $S2)$(c $BG $BG) "
echo -en " "
# WALK
echo -en "$(c $BG $BG) $(c $S1 $S2)$(c $U1 $U1)██$(c $S1 $S2)$(c $BG $BG) "
echo -e "${X}"
# --- ROW 5: Shoulders/arms ---
echo -en " "
# IDLE - arms down
echo -en "$(c $CL $BG)$(c $S1 $S1)$(c $S2 $S2)$(c $U1 $U1)$(c $S2 $S2)$(c $S1 $S1)$(c $CL $BG)$(c $BG $BG) "
echo -en " "
# ATTACK - arms raised
echo -en "$(c $CL $S1)$(c $S1 $BG)$(c $S2 $S2)$(c $U1 $U1)$(c $S2 $S2)$(c $S1 $BG)$(c $CL $S1)$(c $BG $BG) "
echo -en " "
# WALK - one arm forward
echo -en "$(c $S1 $BG)$(c $S1 $S1)$(c $S2 $S2)$(c $U1 $U1)$(c $S2 $S2)$(c $S1 $S1)$(c $CL $BG)$(c $BG $BG) "
echo -e "${X}"
# --- ROW 6: Torso ---
echo -en " "
# IDLE
echo -en "$(c $CL $CL)$(c $S1 $S1)$(c $S2 $S2)$(c $U1 $U1)$(c $S2 $S2)$(c $S1 $S1)$(c $CL $CL)$(c $BG $BG) "
echo -en " "
# ATTACK
echo -en "$(c $CL $CL)$(c $S1 $S1)$(c $S2 $S2)$(c $U1 $U1)$(c $S2 $S2)$(c $S1 $S1)$(c $CL $CL)$(c $BG $BG) "
echo -en " "
# WALK
echo -en "$(c $CL $BG)$(c $S1 $S1)$(c $S2 $S2)$(c $U1 $U1)$(c $S2 $S2)$(c $S1 $S1)$(c $CL $CL)$(c $BG $BG) "
echo -e "${X}"
# --- ROW 7: Lower torso/hips ---
echo -en " "
# IDLE
echo -en "$(c $BG $CL)$(c $S1 $S1)$(c $S2 $S2)$(c $U1 $U1)$(c $S2 $S2)$(c $S1 $S1)$(c $BG $CL)$(c $BG $BG) "
echo -en " "
# ATTACK
echo -en "$(c $BG $CL)$(c $S1 $S1)$(c $S2 $S2)$(c $U1 $U1)$(c $S2 $S2)$(c $S1 $S1)$(c $BG $CL)$(c $BG $BG) "
echo -en " "
# WALK
echo -en "$(c $BG $BG) $(c $S1 $S1)$(c $S2 $S2)$(c $U1 $U1)$(c $S2 $S2)$(c $S1 $S1)$(c $BG $CL)$(c $BG $BG) "
echo -e "${X}"
# --- ROW 8: Upper legs ---
echo -en " "
# IDLE
echo -en "$(c $BG $BG) $(c $S1 $S1)$(c $S1 $BG)$(c $BG $BG) $(c $S1 $BG)$(c $S1 $S1)$(c $BG $BG) "
echo -en " "
# ATTACK - wide stance
echo -en "$(c $S1 $BG)$(c $S1 $S1)$(c $BG $BG) $(c $S1 $S1)$(c $S1 $BG)$(c $BG $BG) "
echo -en " "
# WALK - mid stride
echo -en "$(c $BG $BG) $(c $S1 $S1)$(c $S1 $BG)$(c $BG $BG) $(c $S1 $BG)$(c $S1 $S1)$(c $BG $BG) "
echo -e "${X}"
# --- ROW 9: Lower legs ---
echo -en " "
# IDLE
echo -en "$(c $BG $BG) $(c $S1 $S1)$(c $S1 $S1)$(c $BG $BG) $(c $S1 $S1)$(c $S1 $S1)$(c $BG $BG) "
echo -en " "
# ATTACK
echo -en "$(c $S1 $S1)$(c $S1 $S1)$(c $BG $BG) $(c $S1 $S1)$(c $S1 $S1)$(c $BG $BG) "
echo -en " "
# WALK
echo -en "$(c $BG $BG) $(c $S1 $S1)$(c $S1 $BG)$(c $BG $BG) $(c $BG $BG) $(c $S1 $BG)$(c $S1 $S1)$(c $BG $BG) "
echo -e "${X}"
# --- ROW 10: Feet with claws ---
echo -en " "
# IDLE
echo -en "$(c $CL $BG)$(c $S1 $S1)$(c $CL $BG)$(c $BG $BG) $(c $CL $BG)$(c $S1 $S1)$(c $CL $BG)$(c $BG $BG) "
echo -en " "
# ATTACK
echo -en "$(c $CL $S1)$(c $S1 $S1)$(c $CL $BG)$(c $BG $BG) $(c $CL $BG)$(c $S1 $S1)$(c $CL $S1)$(c $BG $BG) "
echo -en " "
# WALK
echo -en "$(c $CL $BG)$(c $S1 $S1)$(c $CL $BG)$(c $BG $BG) $(c $BG $BG) $(c $CL $BG)$(c $S1 $S1)$(c $CL $BG)"
echo -e "${X}"
echo ""
echo " ┌───────────────────────────────────────────────────────────────────────────┐"
echo " │ QUADRANT BLOCK REFERENCE │"
echo " ├───────────────────────────────────────────────────────────────────────────┤"
echo " │ ▘ top-left ▝ top-right ▖ bottom-left ▗ bottom-right │"
echo " │ ▌ left-half ▐ right-half ▀ top-half ▄ bottom-half │"
echo " │ ▛ no-BR ▜ no-BL ▙ no-TR ▟ no-TL │"
echo " │ █ full (space) empty │"
echo " └───────────────────────────────────────────────────────────────────────────┘"
echo ""
echo " Resolution: 16×20 subpixels per sprite (8 cells × 10 rows, 2×2 per cell)"
echo " Limitation: Only 2 colors per cell (foreground + background)"
echo ""

280
reptile3_braille.sh Executable file
View file

@ -0,0 +1,280 @@
#!/bin/bash
# Reptile Lord - Method 3: Braille Characters (Highest Resolution)
# Each cell = 2×4 dots (8 subpixels per cell!)
#
# Braille dot numbering:
# 1 4
# 2 5
# 3 6
# 7 8
#
# Character = U+2800 + sum of dot values
# dot1=1, dot2=2, dot3=4, dot4=8, dot5=16, dot6=32, dot7=64, dot8=128
#
# Limitation: Single color per character (foreground only, no per-dot colors)
# Best for: Silhouettes, outlines, high-detail monochrome sprites
clear
echo ""
echo " ╔═══════════════════════════════════════════════════════════════════════════╗"
echo " ║ REPTILE LORD - BRAILLE METHOD (2×4 dots/cell = 8 subpixels) ║"
echo " ╚═══════════════════════════════════════════════════════════════════════════╝"
echo ""
# Color function (foreground only for braille)
fg() {
echo -en "\033[38;2;$1;$2;$3m"
}
X="\033[0m"
# Common braille characters reference:
# ⣿ = full (255) = empty (0)
# ⡇ = left col (71) ⢸ = right col (184)
# ⠉ = top row (9) ⣀ = bottom row (192)
# ⠛ = top 2 rows (27) ⣤ = bottom 2 rows (228)
# ⡿ = all but top-right (127) ⣾ = all but top-left (254)
# ⣷ = all but bottom-right (247) ⣯ = all but bottom-left (239)
echo " ┌─────────────────────────────────────────────────────────────────────────┐"
echo " │ MONOCHROME SILHOUETTES - Maximum Detail │"
echo " └─────────────────────────────────────────────────────────────────────────┘"
echo ""
# Green reptile lord
G="0 200 100"
echo -en " "
echo -en "$(fg $G)"
# IDLE POSE - 10 cells wide x 8 cells tall = 20×32 "dots"
echo " IDLE ATTACK WALK LEFT WALK RIGHT"
echo ""
# Row 1: Horns
echo -en " $(fg $G)"
echo -en " ⢀⣴⣾⣷⣦⡀ "
echo -en " "
echo -en "⢀⣴⣾⣿⣷⣦⡀ "
echo -en " "
echo -en " ⢀⣴⣾⣷⣦⡀ "
echo -en " "
echo -en " ⢀⣴⣾⣷⣦⡀ "
echo -e "${X}"
# Row 2: Upper head
echo -en " $(fg $G)"
echo -en " ⣼⣿⡟⠛⢻⣿⣧ "
echo -en " "
echo -en "⣼⣿⡟⠿⠿⢻⣿⣧ "
echo -en " "
echo -en " ⣼⣿⡟⠛⢻⣿⣧ "
echo -en " "
echo -en " ⣼⣿⡟⠛⢻⣿⣧ "
echo -e "${X}"
# Row 3: Eyes and snout
echo -en " $(fg $G)"
echo -en " ⣿⣿⣿⣶⣶⣿⣿⣿ "
echo -en " "
echo -en "⣿⣿⣿⣭⣭⣿⣿⣿ "
echo -en " "
echo -en " ⣿⣿⣿⣶⣶⣿⣿⣿ "
echo -en " "
echo -en " ⣿⣿⣿⣶⣶⣿⣿⣿ "
echo -e "${X}"
# Row 4: Lower head/jaw
echo -en " $(fg $G)"
echo -en " ⠹⣿⣿⣿⣿⠏ "
echo -en " "
echo -en " ⠹⣿⣿⣿⣿⣿⠏ "
echo -en " "
echo -en " ⠹⣿⣿⣿⣿⠏ "
echo -en " "
echo -en " ⠹⣿⣿⣿⣿⠏ "
echo -e "${X}"
# Row 5: Neck/shoulders
echo -en " $(fg $G)"
echo -en " ⣿⣿⣿⣿⣿ "
echo -en " "
echo -en " ⢸⣿⣿⣿⣿⡇ "
echo -en " "
echo -en " ⣿⣿⣿⣿⣿ "
echo -en " "
echo -en " ⣿⣿⣿⣿⣿ "
echo -e "${X}"
# Row 6: Arms/torso
echo -en " $(fg $G)"
echo -en " ⣼⣿⣿⣿⣿⣿⣿⣧ "
echo -en " "
echo -en "⣿⡿⣿⣿⣿⣿⣿⢿⣿"
echo -en " "
echo -en "⣀⣿⣿⣿⣿⣿⣿⣿ "
echo -en " "
echo -en " ⣿⣿⣿⣿⣿⣿⣿⣀"
echo -e "${X}"
# Row 7: Lower torso
echo -en " $(fg $G)"
echo -en " ⠸⣿⣿⣿⣿⣿⣿⠇ "
echo -en " "
echo -en "⠈⠃⣿⣿⣿⣿⣿⠘⠁"
echo -en " "
echo -en " ⣿⣿⣿⣿⣿⣿⣿ "
echo -en " "
echo -en " ⣿⣿⣿⣿⣿⣿⣿ "
echo -e "${X}"
# Row 8: Hips
echo -en " $(fg $G)"
echo -en " ⢸⣿⣿⣿⣿⡇ "
echo -en " "
echo -en " ⣿⣿⣿⣿⣿⣿ "
echo -en " "
echo -en " ⠸⣿⣿⣿⣿⠇ "
echo -en " "
echo -en " ⠸⣿⣿⣿⣿⠇ "
echo -e "${X}"
# Row 9: Upper legs
echo -en " $(fg $G)"
echo -en " ⢸⣿⠁⠈⣿⡇ "
echo -en " "
echo -en " ⣾⣿ ⣿⣷ "
echo -en " "
echo -en " ⣿⣿ ⣿⣷ "
echo -en " "
echo -en " ⣾⣿ ⣿⣿ "
echo -e "${X}"
# Row 10: Lower legs
echo -en " $(fg $G)"
echo -en " ⢸⣿ ⣿⡇ "
echo -en " "
echo -en "⣸⣿⠇ ⠸⣿⣇"
echo -en " "
echo -en " ⣿⡇ ⣿⡇ "
echo -en " "
echo -en " ⢸⣿ ⢸⣿ "
echo -e "${X}"
# Row 11: Feet
echo -en " $(fg $G)"
echo -en " ⣿⣿⡄⢠⣿⣿ "
echo -en " "
echo -en "⣿⣿⠃ ⠘⣿⣿"
echo -en " "
echo -en " ⣼⣿⡄ ⢠⣿⣧ "
echo -en " "
echo -en " ⣼⣿⡄ ⢠⣿⣧ "
echo -e "${X}"
# Row 12: Claws
echo -en " $(fg $G)"
echo -en " ⠛⠛ ⠛⠛ "
echo -en " "
echo -en "⠛⠛ ⠛⠛"
echo -en " "
echo -en " ⠛⠃ ⠘⠛ "
echo -en " "
echo -en " ⠛⠃ ⠘⠛ "
echo -e "${X}"
echo ""
echo ""
# Multi-colored version using background + foreground trick
echo " ┌─────────────────────────────────────────────────────────────────────────┐"
echo " │ COLORED VERSION - Using colored backgrounds behind braille │"
echo " └─────────────────────────────────────────────────────────────────────────┘"
echo ""
# For colored braille, we use:
# - Background color for the "off" dots
# - Foreground color for the "on" dots
# This gives us 2-color braille
cf() {
echo -en "\033[38;2;$1;$2;$3m\033[48;2;$4;$5;$6m"
}
# Colors
SCALE="0 180 100" # Green scales (foreground/dots)
BG="20 15 30" # Dark purple background
EYE="255 220 0" # Yellow eyes
BELLY="200 180 120" # Tan underbelly
echo -en " "
echo -en "$(cf $SCALE $BG)"
echo -en " ⢀⣴⣾⣷⣦⡀ "
echo -e "${X}"
echo -en " "
echo -en "$(cf $SCALE $BG)"
echo -en " ⣼⣿"
echo -en "$(cf $EYE $BG)⠿⠿"
echo -en "$(cf $SCALE $BG)⣿⣧ "
echo -e "${X}"
echo -en " "
echo -en "$(cf $SCALE $BG)"
echo -en " ⣿⣿"
echo -en "$(cf $BELLY $BG)⣶⣶"
echo -en "$(cf $SCALE $BG)⣿⣿ "
echo -e "${X}"
echo -en " "
echo -en "$(cf $SCALE $BG)"
echo -en " ⠹⣿⣿⣿⣿⠏ "
echo -e "${X}"
echo -en " "
echo -en "$(cf $SCALE $BG)"
echo -en " ⣿"
echo -en "$(cf $BELLY $BG)⣿⣿"
echo -en "$(cf $SCALE $BG)"
echo -e "${X}"
echo -en " "
echo -en "$(cf $SCALE $BG)"
echo -en " ⣼⣿"
echo -en "$(cf $BELLY $BG)⣿⣿"
echo -en "$(cf $SCALE $BG)⣿⣧ "
echo -e "${X}"
echo -en " "
echo -en "$(cf $SCALE $BG)"
echo -en " ⠸⣿"
echo -en "$(cf $BELLY $BG)⣿⣿"
echo -en "$(cf $SCALE $BG)⣿⠇ "
echo -e "${X}"
echo -en " "
echo -en "$(cf $SCALE $BG)"
echo -en " ⢸⣿ ⣿⡇ "
echo -e "${X}"
echo -en " "
echo -en "$(cf $SCALE $BG)"
echo -en " ⣿⣿ ⣿⣿ "
echo -e "${X}"
echo -en " "
echo -en "$(cf $SCALE $BG)"
echo -en " ⠛⠛ ⠛⠛ "
echo -e "${X}"
echo ""
echo " ┌─────────────────────────────────────────────────────────────────────────┐"
echo " │ BRAILLE DOT PATTERN │"
echo " ├─────────────────────────────────────────────────────────────────────────┤"
echo " │ 1 4 Values: 1=1, 2=2, 3=4, 4=8, 5=16, 6=32, 7=64, 8=128 │"
echo " │ 2 5 Character = U+2800 + sum(dot values) │"
echo " │ 3 6 Example: ⣿ = all dots = 1+2+4+8+16+32+64+128 = 255 = U+28FF │"
echo " │ 7 8 │"
echo " └─────────────────────────────────────────────────────────────────────────┘"
echo ""
echo " Resolution: 20×32 dots per sprite (10 cells × 8 rows, 2×4 dots per cell)"
echo " Best for: High-detail silhouettes, outlines, retro terminal aesthetics"
echo ""

69
robot.sh Executable file
View file

@ -0,0 +1,69 @@
#!/bin/bash
printf "\n\033[1m WALKING DOWN\033[0m\n\n"
printf " Frame 1 Frame 2 Frame 3 Frame 4\n\n"
printf " \033[38;2;70;70;80m▄███▄\033[0m \033[38;2;70;70;80m▄███▄\033[0m \033[38;2;70;70;80m▄███▄\033[0m \033[38;2;70;70;80m▄███▄\033[0m\n"
printf " \033[38;2;70;70;80m███████\033[0m \033[38;2;70;70;80m███████\033[0m \033[38;2;70;70;80m███████\033[0m \033[38;2;70;70;80m███████\033[0m\n"
printf " \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m\n"
printf " \033[38;2;70;70;80m███████\033[0m \033[38;2;70;70;80m███████\033[0m \033[38;2;70;70;80m███████\033[0m \033[38;2;70;70;80m███████\033[0m\n"
printf " \033[38;2;50;50;60m█████\033[0m \033[38;2;50;50;60m█████\033[0m \033[38;2;50;50;60m█████\033[0m \033[38;2;50;50;60m█████\033[0m\n"
printf " \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m\n"
printf " \033[38;2;70;70;80m▄██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██▄\033[0m \033[38;2;70;70;80m▄██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██▄\033[0m \033[38;2;70;70;80m▄██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██▄\033[0m \033[38;2;70;70;80m▄██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██▄\033[0m\n"
printf " \033[38;2;70;70;80m███\033[38;2;255;50;50m███\033[38;2;70;70;80m███\033[0m \033[38;2;70;70;80m███\033[38;2;255;50;50m███\033[38;2;70;70;80m███\033[0m \033[38;2;70;70;80m███\033[38;2;255;50;50m███\033[38;2;70;70;80m███\033[0m \033[38;2;70;70;80m███\033[38;2;255;50;50m███\033[38;2;70;70;80m███\033[0m\n"
printf " \033[38;2;70;70;80m██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██\033[0m\n"
printf " \033[38;2;50;50;60m█\033[38;2;255;50;50m███\033[38;2;50;50;60m█\033[0m \033[38;2;50;50;60m█\033[38;2;255;50;50m███\033[38;2;50;50;60m█\033[0m \033[38;2;50;50;60m█\033[38;2;255;50;50m███\033[38;2;50;50;60m█\033[0m \033[38;2;50;50;60m█\033[38;2;255;50;50m███\033[38;2;50;50;60m█\033[0m\n"
printf " \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[38;2;70;70;80m██\033[0m\n"
printf " \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m\n"
printf " \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m█\033[0m\n"
printf " \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m██\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m██\033[0m\n"
printf "\n\033[1m WALKING UP\033[0m\n\n"
printf " Frame 1 Frame 2 Frame 3 Frame 4\n\n"
printf " \033[38;2;70;70;80m▄███▄\033[0m \033[38;2;70;70;80m▄███▄\033[0m \033[38;2;70;70;80m▄███▄\033[0m \033[38;2;70;70;80m▄███▄\033[0m\n"
printf " \033[38;2;70;70;80m███████\033[0m \033[38;2;70;70;80m███████\033[0m \033[38;2;70;70;80m███████\033[0m \033[38;2;70;70;80m███████\033[0m\n"
printf " \033[38;2;70;70;80m███████\033[0m \033[38;2;70;70;80m███████\033[0m \033[38;2;70;70;80m███████\033[0m \033[38;2;70;70;80m███████\033[0m\n"
printf " \033[38;2;70;70;80m███████\033[0m \033[38;2;70;70;80m███████\033[0m \033[38;2;70;70;80m███████\033[0m \033[38;2;70;70;80m███████\033[0m\n"
printf " \033[38;2;50;50;60m█████\033[0m \033[38;2;50;50;60m█████\033[0m \033[38;2;50;50;60m█████\033[0m \033[38;2;50;50;60m█████\033[0m\n"
printf " \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m\n"
printf " \033[38;2;70;70;80m▄██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██▄\033[0m \033[38;2;70;70;80m▄██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██▄\033[0m \033[38;2;70;70;80m▄██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██▄\033[0m \033[38;2;70;70;80m▄██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██▄\033[0m\n"
printf " \033[38;2;70;70;80m█████████\033[0m \033[38;2;70;70;80m█████████\033[0m \033[38;2;70;70;80m█████████\033[0m \033[38;2;70;70;80m█████████\033[0m\n"
printf " \033[38;2;70;70;80m██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m██\033[0m\n"
printf " \033[38;2;50;50;60m█\033[38;2;255;50;50m███\033[38;2;50;50;60m█\033[0m \033[38;2;50;50;60m█\033[38;2;255;50;50m███\033[38;2;50;50;60m█\033[0m \033[38;2;50;50;60m█\033[38;2;255;50;50m███\033[38;2;50;50;60m█\033[0m \033[38;2;50;50;60m█\033[38;2;255;50;50m███\033[38;2;50;50;60m█\033[0m\n"
printf " \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[38;2;70;70;80m██\033[0m\n"
printf " \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m\n"
printf " \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m█\033[0m\n"
printf " \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m██\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m██\033[0m\n"
printf "\n\033[1m WALKING LEFT\033[0m\n\n"
printf " Frame 1 Frame 2 Frame 3 Frame 4\n\n"
printf " \033[38;2;70;70;80m▄██▄\033[0m \033[38;2;70;70;80m▄██▄\033[0m \033[38;2;70;70;80m▄██▄\033[0m \033[38;2;70;70;80m▄██▄\033[0m\n"
printf " \033[38;2;70;70;80m█████\033[0m \033[38;2;70;70;80m█████\033[0m \033[38;2;70;70;80m█████\033[0m \033[38;2;70;70;80m█████\033[0m\n"
printf " \033[38;2;255;50;50m██\033[38;2;70;70;80m███\033[0m \033[38;2;255;50;50m██\033[38;2;70;70;80m███\033[0m \033[38;2;255;50;50m██\033[38;2;70;70;80m███\033[0m \033[38;2;255;50;50m██\033[38;2;70;70;80m███\033[0m\n"
printf " \033[38;2;70;70;80m█████\033[0m \033[38;2;70;70;80m█████\033[0m \033[38;2;70;70;80m█████\033[0m \033[38;2;70;70;80m█████\033[0m\n"
printf " \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m\n"
printf " \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m\n"
printf " \033[38;2;70;70;80m▄██\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m▄██\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m▄██\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m▄██\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m\n"
printf " \033[38;2;70;70;80m███\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m███\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m███\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m███\033[38;2;255;50;50m██\033[38;2;70;70;80m█\033[0m\n"
printf " \033[38;2;50;50;60m█\033[38;2;255;50;50m██\033[38;2;50;50;60m█\033[0m \033[38;2;50;50;60m█\033[38;2;255;50;50m██\033[38;2;50;50;60m█\033[0m \033[38;2;50;50;60m█\033[38;2;255;50;50m██\033[38;2;50;50;60m█\033[0m \033[38;2;50;50;60m█\033[38;2;255;50;50m██\033[38;2;50;50;60m█\033[0m\n"
printf " \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[0m\n"
printf " \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m\n"
printf " \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m██\033[0m\n"
printf " \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m██\033[0m \033[38;2;50;50;60m██\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m██\033[0m \033[38;2;50;50;60m██\033[0m \033[38;2;50;50;60m███\033[0m\n"
printf "\n\033[1m WALKING RIGHT\033[0m\n\n"
printf " Frame 1 Frame 2 Frame 3 Frame 4\n\n"
printf " \033[38;2;70;70;80m▄██▄\033[0m \033[38;2;70;70;80m▄██▄\033[0m \033[38;2;70;70;80m▄██▄\033[0m \033[38;2;70;70;80m▄██▄\033[0m\n"
printf " \033[38;2;70;70;80m█████\033[0m \033[38;2;70;70;80m█████\033[0m \033[38;2;70;70;80m█████\033[0m \033[38;2;70;70;80m█████\033[0m\n"
printf " \033[38;2;70;70;80m███\033[38;2;255;50;50m██\033[0m \033[38;2;70;70;80m███\033[38;2;255;50;50m██\033[0m \033[38;2;70;70;80m███\033[38;2;255;50;50m██\033[0m \033[38;2;70;70;80m███\033[38;2;255;50;50m██\033[0m\n"
printf " \033[38;2;70;70;80m█████\033[0m \033[38;2;70;70;80m█████\033[0m \033[38;2;70;70;80m█████\033[0m \033[38;2;70;70;80m█████\033[0m\n"
printf " \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m\n"
printf " \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m\n"
printf " \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m██▄\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m██▄\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m██▄\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m██▄\033[0m\n"
printf " \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m███\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m███\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m███\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m██\033[38;2;70;70;80m███\033[0m\n"
printf " \033[38;2;50;50;60m█\033[38;2;255;50;50m██\033[38;2;50;50;60m█\033[0m \033[38;2;50;50;60m█\033[38;2;255;50;50m██\033[38;2;50;50;60m█\033[0m \033[38;2;50;50;60m█\033[38;2;255;50;50m██\033[38;2;50;50;60m█\033[0m \033[38;2;50;50;60m█\033[38;2;255;50;50m██\033[38;2;50;50;60m█\033[0m\n"
printf " \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[0m\n"
printf " \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[38;2;70;70;80m█\033[0m\n"
printf " \033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m█\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m██\033[0m \033[38;2;70;70;80m█\033[0m\n"
printf " \033[38;2;50;50;60m██\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m██\033[0m \033[38;2;50;50;60m██\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m███\033[0m \033[38;2;50;50;60m██\033[0m\n"
printf "\n"

104
robot2.sh Executable file
View file

@ -0,0 +1,104 @@
#!/bin/bash
# Dark Android Sprite Sheet - Full tile pixels with shading
# Colors: Body=70,70,80 Shadow=45,45,55 Highlight=95,95,105 Red=255,50,50 DarkRed=180,30,30
echo ""
echo -e "\033[1m WALKING DOWN\033[0m"
echo ""
echo " Frame 1 Frame 2 Frame 3 Frame 4"
echo ""
printf " \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;95;95;105m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;95;95;105m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;95;95;105m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;95;95;105m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;180;30;30m \033[48;2;70;70;80m \033[48;2;180;30;30m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;180;30;30m \033[48;2;70;70;80m \033[48;2;180;30;30m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;180;30;30m \033[48;2;70;70;80m \033[48;2;180;30;30m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;180;30;30m \033[48;2;70;70;80m \033[48;2;180;30;30m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m\n"
echo ""
echo -e "\033[1m WALKING UP\033[0m"
echo ""
echo " Frame 1 Frame 2 Frame 3 Frame 4"
echo ""
printf " \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m\n"
echo ""
echo -e "\033[1m WALKING LEFT\033[0m"
echo ""
echo " Frame 1 Frame 2 Frame 3 Frame 4"
echo ""
printf " \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;95;95;105m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;95;95;105m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;95;95;105m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;95;95;105m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;180;30;30m \033[48;2;70;70;80m \033[0m \033[48;2;180;30;30m \033[48;2;70;70;80m \033[0m \033[48;2;180;30;30m \033[48;2;70;70;80m \033[0m \033[48;2;180;30;30m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m\n"
echo ""
echo -e "\033[1m WALKING RIGHT\033[0m"
echo ""
echo " Frame 1 Frame 2 Frame 3 Frame 4"
echo ""
printf " \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;95;95;105m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;95;95;105m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;95;95;105m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;95;95;105m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;180;30;30m \033[0m \033[48;2;70;70;80m \033[48;2;180;30;30m \033[0m \033[48;2;70;70;80m \033[48;2;180;30;30m \033[0m \033[48;2;70;70;80m \033[48;2;180;30;30m \033[0m\n"
printf " \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[48;2;255;50;50m \033[48;2;45;45;55m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;45;45;55m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[48;2;255;50;50m \033[0m \033[48;2;255;50;50m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m \033[48;2;70;70;80m \033[0m\n"
printf " \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m \033[48;2;45;45;55m \033[0m\n"
echo ""

121
robot3.sh Executable file
View file

@ -0,0 +1,121 @@
#!/bin/bash
# Dark Android Sprite - Polished version with better proportions
# Colors (background mode for solid pixels)
B="\033[48;2;70;70;80m" # Body
D="\033[48;2;45;45;55m" # Dark/Shadow
H="\033[48;2;95;95;105m" # Highlight
R="\033[48;2;255;50;50m" # Red glow
r="\033[48;2;180;30;30m" # Dark red
X="\033[0m" # Reset
P=" " # Pixel (two spaces)
clear
echo ""
echo -e "\033[1m WALKING DOWN\033[0m"
echo ""
echo " Frame 1 Frame 2 Frame 3 Frame 4"
echo ""
# HEAD - all frames same
printf " ${D}${P}${B}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${D}${P}${X}\n"
printf " ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X}\n"
printf " ${B}${P}${H}${P}${B}${P}${P}${P}${H}${P}${B}${P}${X} ${B}${P}${H}${P}${B}${P}${P}${P}${H}${P}${B}${P}${X} ${B}${P}${H}${P}${B}${P}${P}${P}${H}${P}${B}${P}${X} ${B}${P}${H}${P}${B}${P}${P}${P}${H}${P}${B}${P}${X}\n"
printf " ${B}${P}${R}${P}${P}${B}${P}${P}${P}${R}${P}${P}${B}${P}${X} ${B}${P}${R}${P}${P}${B}${P}${P}${P}${R}${P}${P}${B}${P}${X} ${B}${P}${R}${P}${P}${B}${P}${P}${P}${R}${P}${P}${B}${P}${X} ${B}${P}${R}${P}${P}${B}${P}${P}${P}${R}${P}${P}${B}${P}${X}\n"
printf " ${B}${P}${r}${P}${P}${B}${P}${P}${P}${r}${P}${P}${B}${P}${X} ${B}${P}${r}${P}${P}${B}${P}${P}${P}${r}${P}${P}${B}${P}${X} ${B}${P}${r}${P}${P}${B}${P}${P}${P}${r}${P}${P}${B}${P}${X} ${B}${P}${r}${P}${P}${B}${P}${P}${P}${r}${P}${P}${B}${P}${X}\n"
printf " ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X}\n"
printf " ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X}\n"
# NECK with red accent
printf " ${R}${P}${D}${P}${P}${P}${R}${P}${X} ${R}${P}${D}${P}${P}${P}${R}${P}${X} ${R}${P}${D}${P}${P}${P}${R}${P}${X} ${R}${P}${D}${P}${P}${P}${R}${P}${X}\n"
# TORSO
printf " ${B}${P}${P}${R}${P}${B}${P}${P}${P}${P}${R}${P}${B}${P}${P}${X} ${B}${P}${P}${R}${P}${B}${P}${P}${P}${P}${R}${P}${B}${P}${P}${X} ${B}${P}${P}${R}${P}${B}${P}${P}${P}${P}${R}${P}${B}${P}${P}${X} ${B}${P}${P}${R}${P}${B}${P}${P}${P}${P}${R}${P}${B}${P}${P}${X}\n"
printf " ${B}${P}${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${B}${P}${X} ${B}${P}${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${B}${P}${X} ${B}${P}${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${B}${P}${X} ${B}${P}${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${B}${P}${X}\n"
printf " ${B}${P}${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${B}${P}${X} ${B}${P}${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${B}${P}${X} ${B}${P}${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${B}${P}${X} ${B}${P}${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${B}${P}${X}\n"
printf " ${B}${P}${R}${P}${B}${P}${P}${R}${P}${B}${P}${X} ${B}${P}${R}${P}${B}${P}${P}${R}${P}${B}${P}${X} ${B}${P}${R}${P}${B}${P}${P}${R}${P}${B}${P}${X} ${B}${P}${R}${P}${B}${P}${P}${R}${P}${B}${P}${X}\n"
printf " ${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${X} ${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${X} ${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${X} ${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${X}\n"
printf " ${B}${P}${D}${P}${P}${P}${B}${P}${X} ${B}${P}${D}${P}${P}${P}${B}${P}${X} ${B}${P}${D}${P}${P}${P}${B}${P}${X} ${B}${P}${D}${P}${P}${P}${B}${P}${X}\n"
# LEGS - Frame 1: standing, Frame 2: step left, Frame 3: standing, Frame 4: step right
printf " ${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${X}${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${B}${P}${P}${X}\n"
printf " ${B}${P}${R}${P}${X} ${R}${P}${B}${P}${X} ${B}${P}${R}${P}${R}${P}${B}${P}${X} ${B}${P}${R}${P}${X} ${R}${P}${B}${P}${X} ${B}${P}${R}${P}${R}${P}${B}${P}${X}\n"
printf " ${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${X} ${B}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${X} ${B}${P}${X}\n"
printf " ${D}${P}${P}${P}${X} ${D}${P}${P}${P}${X} ${D}${P}${P}${X} ${D}${P}${P}${X} ${D}${P}${P}${P}${X} ${D}${P}${P}${P}${X} ${D}${P}${P}${X} ${D}${P}${P}${X}\n"
echo ""
echo -e "\033[1m WALKING UP\033[0m"
echo ""
echo " Frame 1 Frame 2 Frame 3 Frame 4"
echo ""
# Back view - no face details visible
printf " ${D}${P}${B}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${D}${P}${X}\n"
printf " ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X}\n"
printf " ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X}\n"
printf " ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X}\n"
printf " ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X}\n"
printf " ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X}\n"
printf " ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${P}${P}${D}${P}${X}\n"
printf " ${R}${P}${D}${P}${P}${P}${R}${P}${X} ${R}${P}${D}${P}${P}${P}${R}${P}${X} ${R}${P}${D}${P}${P}${P}${R}${P}${X} ${R}${P}${D}${P}${P}${P}${R}${P}${X}\n"
printf " ${B}${P}${P}${R}${P}${B}${P}${P}${P}${P}${R}${P}${B}${P}${P}${X} ${B}${P}${P}${R}${P}${B}${P}${P}${P}${P}${R}${P}${B}${P}${P}${X} ${B}${P}${P}${R}${P}${B}${P}${P}${P}${P}${R}${P}${B}${P}${P}${X} ${B}${P}${P}${R}${P}${B}${P}${P}${P}${P}${R}${P}${B}${P}${P}${X}\n"
printf " ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X}\n"
printf " ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${P}${B}${P}${X}\n"
printf " ${B}${P}${R}${P}${B}${P}${P}${R}${P}${B}${P}${X} ${B}${P}${R}${P}${B}${P}${P}${R}${P}${B}${P}${X} ${B}${P}${R}${P}${B}${P}${P}${R}${P}${B}${P}${X} ${B}${P}${R}${P}${B}${P}${P}${R}${P}${B}${P}${X}\n"
printf " ${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${X} ${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${X} ${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${X} ${D}${P}${R}${P}${B}${P}${P}${R}${P}${D}${P}${X}\n"
printf " ${B}${P}${D}${P}${P}${P}${B}${P}${X} ${B}${P}${D}${P}${P}${P}${B}${P}${X} ${B}${P}${D}${P}${P}${P}${B}${P}${X} ${B}${P}${D}${P}${P}${P}${B}${P}${X}\n"
printf " ${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${X}${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${B}${P}${P}${X}\n"
printf " ${B}${P}${R}${P}${X} ${R}${P}${B}${P}${X} ${B}${P}${R}${P}${R}${P}${B}${P}${X} ${B}${P}${R}${P}${X} ${R}${P}${B}${P}${X} ${B}${P}${R}${P}${R}${P}${B}${P}${X}\n"
printf " ${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${X} ${B}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${X} ${B}${P}${X}\n"
printf " ${D}${P}${P}${P}${X} ${D}${P}${P}${P}${X} ${D}${P}${P}${X} ${D}${P}${P}${X} ${D}${P}${P}${P}${X} ${D}${P}${P}${P}${X} ${D}${P}${P}${X} ${D}${P}${P}${X}\n"
echo ""
echo -e "\033[1m WALKING LEFT\033[0m"
echo ""
echo " Frame 1 Frame 2 Frame 3 Frame 4"
echo ""
# Side profile facing left - eye on left side
printf " ${D}${P}${B}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${D}${P}${X}\n"
printf " ${D}${P}${B}${P}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${P}${D}${P}${X}\n"
printf " ${B}${P}${H}${P}${B}${P}${P}${P}${P}${X} ${B}${P}${H}${P}${B}${P}${P}${P}${P}${X} ${B}${P}${H}${P}${B}${P}${P}${P}${P}${X} ${B}${P}${H}${P}${B}${P}${P}${P}${P}${X}\n"
printf " ${R}${P}${P}${B}${P}${P}${P}${P}${X} ${R}${P}${P}${B}${P}${P}${P}${P}${X} ${R}${P}${P}${B}${P}${P}${P}${P}${X} ${R}${P}${P}${B}${P}${P}${P}${P}${X}\n"
printf " ${r}${P}${P}${B}${P}${P}${P}${P}${X} ${r}${P}${P}${B}${P}${P}${P}${P}${X} ${r}${P}${P}${B}${P}${P}${P}${P}${X} ${r}${P}${P}${B}${P}${P}${P}${P}${X}\n"
printf " ${B}${P}${P}${P}${P}${P}${P}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${X}\n"
printf " ${D}${P}${B}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${D}${P}${X} ${D}${P}${B}${P}${P}${P}${D}${P}${X}\n"
printf " ${R}${P}${D}${P}${P}${R}${P}${X} ${R}${P}${D}${P}${P}${R}${P}${X} ${R}${P}${D}${P}${P}${R}${P}${X} ${R}${P}${D}${P}${P}${R}${P}${X}\n"
printf " ${B}${P}${P}${R}${P}${B}${P}${P}${P}${P}${X} ${B}${P}${P}${R}${P}${B}${P}${P}${P}${P}${X} ${B}${P}${P}${R}${P}${B}${P}${P}${P}${P}${X} ${B}${P}${P}${R}${P}${B}${P}${P}${P}${P}${X}\n"
printf " ${B}${P}${D}${P}${R}${P}${B}${P}${P}${P}${X} ${B}${P}${D}${P}${R}${P}${B}${P}${P}${P}${X} ${B}${P}${D}${P}${R}${P}${B}${P}${P}${P}${X} ${B}${P}${D}${P}${R}${P}${B}${P}${P}${P}${X}\n"
printf " ${B}${P}${R}${P}${B}${P}${P}${P}${X} ${B}${P}${R}${P}${B}${P}${P}${P}${X} ${B}${P}${R}${P}${B}${P}${P}${P}${X} ${B}${P}${R}${P}${B}${P}${P}${P}${X}\n"
printf " ${D}${P}${R}${P}${D}${P}${P}${P}${X} ${D}${P}${R}${P}${D}${P}${P}${P}${X} ${D}${P}${R}${P}${D}${P}${P}${P}${X} ${D}${P}${R}${P}${D}${P}${P}${P}${X}\n"
printf " ${B}${P}${D}${P}${P}${X} ${B}${P}${D}${P}${P}${X} ${B}${P}${D}${P}${P}${X} ${B}${P}${D}${P}${P}${X}\n"
# Legs animated - walking left
printf " ${B}${P}${P}${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${X}\n"
printf " ${B}${P}${R}${P}${R}${P}${B}${P}${X} ${B}${P}${R}${P}${X} ${R}${P}${B}${P}${X} ${B}${P}${R}${P}${R}${P}${B}${P}${X} ${B}${P}${R}${P}${X} ${R}${P}${B}${P}${X}\n"
printf " ${B}${P}${X} ${B}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${X} ${B}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${X}\n"
printf " ${D}${P}${P}${X} ${D}${P}${P}${X} ${D}${P}${P}${P}${X} ${D}${P}${P}${P}${X} ${D}${P}${P}${X} ${D}${P}${P}${X} ${D}${P}${P}${P}${X} ${D}${P}${P}${P}${X}\n"
echo ""
echo -e "\033[1m WALKING RIGHT\033[0m"
echo ""
echo " Frame 1 Frame 2 Frame 3 Frame 4"
echo ""
# Side profile facing right - eye on right side
printf " ${D}${P}${P}${B}${P}${D}${P}${X} ${D}${P}${P}${B}${P}${D}${P}${X} ${D}${P}${P}${B}${P}${D}${P}${X} ${D}${P}${P}${B}${P}${D}${P}${X}\n"
printf " ${D}${P}${P}${P}${P}${B}${P}${D}${P}${X} ${D}${P}${P}${P}${P}${B}${P}${D}${P}${X} ${D}${P}${P}${P}${P}${B}${P}${D}${P}${X} ${D}${P}${P}${P}${P}${B}${P}${D}${P}${X}\n"
printf " ${B}${P}${P}${P}${P}${H}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${H}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${H}${P}${B}${P}${X} ${B}${P}${P}${P}${P}${H}${P}${B}${P}${X}\n"
printf " ${B}${P}${P}${P}${P}${P}${R}${P}${X} ${B}${P}${P}${P}${P}${P}${R}${P}${X} ${B}${P}${P}${P}${P}${P}${R}${P}${X} ${B}${P}${P}${P}${P}${P}${R}${P}${X}\n"
printf " ${B}${P}${P}${P}${P}${P}${r}${P}${X} ${B}${P}${P}${P}${P}${P}${r}${P}${X} ${B}${P}${P}${P}${P}${P}${r}${P}${X} ${B}${P}${P}${P}${P}${P}${r}${P}${X}\n"
printf " ${B}${P}${P}${P}${P}${P}${P}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${X} ${B}${P}${P}${P}${P}${P}${P}${P}${X}\n"
printf " ${D}${P}${P}${P}${B}${P}${D}${P}${X} ${D}${P}${P}${P}${B}${P}${D}${P}${X} ${D}${P}${P}${P}${B}${P}${D}${P}${X} ${D}${P}${P}${P}${B}${P}${D}${P}${X}\n"
printf " ${R}${P}${P}${D}${P}${R}${P}${X} ${R}${P}${P}${D}${P}${R}${P}${X} ${R}${P}${P}${D}${P}${R}${P}${X} ${R}${P}${P}${D}${P}${R}${P}${X}\n"
printf " ${B}${P}${P}${P}${P}${R}${P}${B}${P}${P}${X} ${B}${P}${P}${P}${P}${R}${P}${B}${P}${P}${X} ${B}${P}${P}${P}${P}${R}${P}${B}${P}${P}${X} ${B}${P}${P}${P}${P}${R}${P}${B}${P}${P}${X}\n"
printf " ${B}${P}${P}${P}${R}${P}${D}${P}${B}${P}${X} ${B}${P}${P}${P}${R}${P}${D}${P}${B}${P}${X} ${B}${P}${P}${P}${R}${P}${D}${P}${B}${P}${X} ${B}${P}${P}${P}${R}${P}${D}${P}${B}${P}${X}\n"
printf " ${B}${P}${P}${P}${R}${P}${B}${P}${X} ${B}${P}${P}${P}${R}${P}${B}${P}${X} ${B}${P}${P}${P}${R}${P}${B}${P}${X} ${B}${P}${P}${P}${R}${P}${B}${P}${X}\n"
printf " ${D}${P}${P}${P}${R}${P}${D}${P}${X} ${D}${P}${P}${P}${R}${P}${D}${P}${X} ${D}${P}${P}${P}${R}${P}${D}${P}${X} ${D}${P}${P}${P}${R}${P}${D}${P}${X}\n"
printf " ${B}${P}${D}${P}${B}${P}${X} ${B}${P}${D}${P}${B}${P}${X} ${B}${P}${D}${P}${B}${P}${X} ${B}${P}${D}${P}${B}${P}${X}\n"
# Legs animated - walking right
printf " ${B}${P}${P}${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${X}\n"
printf " ${B}${P}${R}${P}${R}${P}${B}${P}${X} ${B}${P}${R}${P}${X} ${R}${P}${B}${P}${X} ${B}${P}${R}${P}${R}${P}${B}${P}${X} ${B}${P}${R}${P}${X} ${R}${P}${B}${P}${X}\n"
printf " ${B}${P}${X} ${B}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${X} ${B}${P}${X} ${B}${P}${X} ${B}${P}${P}${X} ${B}${P}${P}${X}\n"
printf " ${D}${P}${P}${X} ${D}${P}${P}${X} ${D}${P}${P}${P}${X} ${D}${P}${P}${P}${X} ${D}${P}${P}${X} ${D}${P}${P}${X} ${D}${P}${P}${P}${X} ${D}${P}${P}${P}${X}\n"
echo ""

61
sprite.sh Executable file
View file

@ -0,0 +1,61 @@
#!/bin/bash
printf "\n\033[1m WALKING DOWN\033[0m\n\n"
printf " Frame 1 Frame 2 Frame 3 Frame 4\n\n"
printf " \033[38;2;255;105;180m▄███▄\033[0m \033[38;2;255;105;180m▄███▄\033[0m \033[38;2;255;105;180m▄███▄\033[0m \033[38;2;255;105;180m▄███▄\033[0m\n"
printf " \033[38;2;255;105;180m███████\033[0m \033[38;2;255;105;180m███████\033[0m \033[38;2;255;105;180m███████\033[0m \033[38;2;255;105;180m███████\033[0m\n"
printf " \033[38;2;255;105;180m█\033[38;2;255;206;180m█████\033[38;2;255;105;180m█\033[0m \033[38;2;255;105;180m█\033[38;2;255;206;180m█████\033[38;2;255;105;180m█\033[0m \033[38;2;255;105;180m█\033[38;2;255;206;180m█████\033[38;2;255;105;180m█\033[0m \033[38;2;255;105;180m█\033[38;2;255;206;180m█████\033[38;2;255;105;180m█\033[0m\n"
printf " \033[38;2;255;105;180m█\033[38;2;255;206;180m█\033[38;2;60;60;60m▀\033[38;2;255;206;180m█\033[38;2;60;60;60m▀\033[38;2;255;206;180m█\033[38;2;255;105;180m█\033[0m \033[38;2;255;105;180m█\033[38;2;255;206;180m█\033[38;2;60;60;60m▀\033[38;2;255;206;180m█\033[38;2;60;60;60m▀\033[38;2;255;206;180m█\033[38;2;255;105;180m█\033[0m \033[38;2;255;105;180m█\033[38;2;255;206;180m█\033[38;2;60;60;60m▀\033[38;2;255;206;180m█\033[38;2;60;60;60m▀\033[38;2;255;206;180m█\033[38;2;255;105;180m█\033[0m \033[38;2;255;105;180m█\033[38;2;255;206;180m█\033[38;2;60;60;60m▀\033[38;2;255;206;180m█\033[38;2;60;60;60m▀\033[38;2;255;206;180m█\033[38;2;255;105;180m█\033[0m\n"
printf " \033[38;2;255;206;180m█\033[38;2;200;80;80m▄\033[38;2;255;206;180m█\033[38;2;200;80;80m▄\033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[38;2;200;80;80m▄\033[38;2;255;206;180m█\033[38;2;200;80;80m▄\033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[38;2;200;80;80m▄\033[38;2;255;206;180m█\033[38;2;200;80;80m▄\033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[38;2;200;80;80m▄\033[38;2;255;206;180m█\033[38;2;200;80;80m▄\033[38;2;255;206;180m█\033[0m\n"
printf " \033[38;2;255;206;180m▀\033[38;2;0;206;209m███\033[38;2;255;206;180m▀\033[0m \033[38;2;255;206;180m▀\033[38;2;0;206;209m███\033[38;2;255;206;180m▀\033[0m \033[38;2;255;206;180m▀\033[38;2;0;206;209m███\033[38;2;255;206;180m▀\033[0m \033[38;2;255;206;180m▀\033[38;2;0;206;209m███\033[38;2;255;206;180m▀\033[0m\n"
printf " \033[38;2;0;206;209m███████\033[0m \033[38;2;0;206;209m███████\033[0m \033[38;2;0;206;209m███████\033[0m \033[38;2;0;206;209m███████\033[0m\n"
printf " \033[38;2;255;215;0m▀▀▀▀▀▀▀\033[0m \033[38;2;255;215;0m▀▀▀▀▀▀▀\033[0m \033[38;2;255;215;0m▀▀▀▀▀▀▀\033[0m \033[38;2;255;215;0m▀▀▀▀▀▀▀\033[0m\n"
printf " \033[38;2;199;21;133m▄█████▄\033[0m \033[38;2;199;21;133m▄█████▄\033[0m \033[38;2;199;21;133m▄█████▄\033[0m \033[38;2;199;21;133m▄█████▄\033[0m\n"
printf " \033[38;2;199;21;133m▀███▀\033[0m \033[38;2;199;21;133m▀███▀\033[0m \033[38;2;199;21;133m▀███▀\033[0m \033[38;2;199;21;133m▀███▀\033[0m\n"
printf " \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m\n"
printf " \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m██\033[0m\n"
printf "\n\033[1m WALKING UP\033[0m\n\n"
printf " Frame 1 Frame 2 Frame 3 Frame 4\n\n"
printf " \033[38;2;255;105;180m▄███▄\033[0m \033[38;2;255;105;180m▄███▄\033[0m \033[38;2;255;105;180m▄███▄\033[0m \033[38;2;255;105;180m▄███▄\033[0m\n"
printf " \033[38;2;255;105;180m███████\033[0m \033[38;2;255;105;180m███████\033[0m \033[38;2;255;105;180m███████\033[0m \033[38;2;255;105;180m███████\033[0m\n"
printf " \033[38;2;255;105;180m███████\033[0m \033[38;2;255;105;180m███████\033[0m \033[38;2;255;105;180m███████\033[0m \033[38;2;255;105;180m███████\033[0m\n"
printf " \033[38;2;255;105;180m███████\033[0m \033[38;2;255;105;180m███████\033[0m \033[38;2;255;105;180m███████\033[0m \033[38;2;255;105;180m███████\033[0m\n"
printf " \033[38;2;255;105;180m█████\033[0m \033[38;2;255;105;180m█████\033[0m \033[38;2;255;105;180m█████\033[0m \033[38;2;255;105;180m█████\033[0m\n"
printf " \033[38;2;255;206;180m▀\033[38;2;0;206;209m███\033[38;2;255;206;180m▀\033[0m \033[38;2;255;206;180m▀\033[38;2;0;206;209m███\033[38;2;255;206;180m▀\033[0m \033[38;2;255;206;180m▀\033[38;2;0;206;209m███\033[38;2;255;206;180m▀\033[0m \033[38;2;255;206;180m▀\033[38;2;0;206;209m███\033[38;2;255;206;180m▀\033[0m\n"
printf " \033[38;2;0;206;209m███████\033[0m \033[38;2;0;206;209m███████\033[0m \033[38;2;0;206;209m███████\033[0m \033[38;2;0;206;209m███████\033[0m\n"
printf " \033[38;2;255;215;0m▀▀▀▀▀▀▀\033[0m \033[38;2;255;215;0m▀▀▀▀▀▀▀\033[0m \033[38;2;255;215;0m▀▀▀▀▀▀▀\033[0m \033[38;2;255;215;0m▀▀▀▀▀▀▀\033[0m\n"
printf " \033[38;2;199;21;133m▄█████▄\033[0m \033[38;2;199;21;133m▄█████▄\033[0m \033[38;2;199;21;133m▄█████▄\033[0m \033[38;2;199;21;133m▄█████▄\033[0m\n"
printf " \033[38;2;199;21;133m▀███▀\033[0m \033[38;2;199;21;133m▀███▀\033[0m \033[38;2;199;21;133m▀███▀\033[0m \033[38;2;199;21;133m▀███▀\033[0m\n"
printf " \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m\n"
printf " \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m██\033[0m\n"
printf "\n\033[1m WALKING LEFT\033[0m\n\n"
printf " Frame 1 Frame 2 Frame 3 Frame 4\n\n"
printf " \033[38;2;255;105;180m████▄\033[0m \033[38;2;255;105;180m████▄\033[0m \033[38;2;255;105;180m████▄\033[0m \033[38;2;255;105;180m████▄\033[0m\n"
printf " \033[38;2;255;105;180m██████▄\033[0m \033[38;2;255;105;180m██████▄\033[0m \033[38;2;255;105;180m██████▄\033[0m \033[38;2;255;105;180m██████▄\033[0m\n"
printf " \033[38;2;255;206;180m████\033[38;2;255;105;180m██▀\033[0m \033[38;2;255;206;180m████\033[38;2;255;105;180m██▀\033[0m \033[38;2;255;206;180m████\033[38;2;255;105;180m██▀\033[0m \033[38;2;255;206;180m████\033[38;2;255;105;180m██▀\033[0m\n"
printf " \033[38;2;60;60;60m▀\033[38;2;255;206;180m██\033[38;2;200;80;80m▄\033[38;2;255;105;180m█\033[0m \033[38;2;60;60;60m▀\033[38;2;255;206;180m██\033[38;2;200;80;80m▄\033[38;2;255;105;180m█\033[0m \033[38;2;60;60;60m▀\033[38;2;255;206;180m██\033[38;2;200;80;80m▄\033[38;2;255;105;180m█\033[0m \033[38;2;60;60;60m▀\033[38;2;255;206;180m██\033[38;2;200;80;80m▄\033[38;2;255;105;180m█\033[0m\n"
printf " \033[38;2;0;206;209m████\033[0m \033[38;2;0;206;209m████\033[0m \033[38;2;0;206;209m████\033[0m \033[38;2;0;206;209m████\033[0m\n"
printf " \033[38;2;0;206;209m█████\033[0m \033[38;2;0;206;209m█████\033[0m \033[38;2;0;206;209m█████\033[0m \033[38;2;0;206;209m█████\033[0m\n"
printf " \033[38;2;255;215;0m▀▀▀▀▀\033[0m \033[38;2;255;215;0m▀▀▀▀▀\033[0m \033[38;2;255;215;0m▀▀▀▀▀\033[0m \033[38;2;255;215;0m▀▀▀▀▀\033[0m\n"
printf " \033[38;2;199;21;133m▄████\033[0m \033[38;2;199;21;133m▄████\033[0m \033[38;2;199;21;133m▄████\033[0m \033[38;2;199;21;133m▄████\033[0m\n"
printf " \033[38;2;199;21;133m▀██▀\033[0m \033[38;2;199;21;133m▀██▀\033[0m \033[38;2;199;21;133m▀██▀\033[0m \033[38;2;199;21;133m▀██▀\033[0m\n"
printf " \033[38;2;255;206;180m██\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m██\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m\n"
printf " \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m██\033[0m\n"
printf "\n\033[1m WALKING RIGHT\033[0m\n\n"
printf " Frame 1 Frame 2 Frame 3 Frame 4\n\n"
printf " \033[38;2;255;105;180m▄████\033[0m \033[38;2;255;105;180m▄████\033[0m \033[38;2;255;105;180m▄████\033[0m \033[38;2;255;105;180m▄████\033[0m\n"
printf " \033[38;2;255;105;180m▄██████\033[0m \033[38;2;255;105;180m▄██████\033[0m \033[38;2;255;105;180m▄██████\033[0m \033[38;2;255;105;180m▄██████\033[0m\n"
printf " \033[38;2;255;105;180m▀██\033[38;2;255;206;180m████\033[0m \033[38;2;255;105;180m▀██\033[38;2;255;206;180m████\033[0m \033[38;2;255;105;180m▀██\033[38;2;255;206;180m████\033[0m \033[38;2;255;105;180m▀██\033[38;2;255;206;180m████\033[0m\n"
printf " \033[38;2;255;105;180m█\033[38;2;200;80;80m▄\033[38;2;255;206;180m██\033[38;2;60;60;60m▀\033[0m \033[38;2;255;105;180m█\033[38;2;200;80;80m▄\033[38;2;255;206;180m██\033[38;2;60;60;60m▀\033[0m \033[38;2;255;105;180m█\033[38;2;200;80;80m▄\033[38;2;255;206;180m██\033[38;2;60;60;60m▀\033[0m \033[38;2;255;105;180m█\033[38;2;200;80;80m▄\033[38;2;255;206;180m██\033[38;2;60;60;60m▀\033[0m\n"
printf " \033[38;2;0;206;209m████\033[0m \033[38;2;0;206;209m████\033[0m \033[38;2;0;206;209m████\033[0m \033[38;2;0;206;209m████\033[0m\n"
printf " \033[38;2;0;206;209m█████\033[0m \033[38;2;0;206;209m█████\033[0m \033[38;2;0;206;209m█████\033[0m \033[38;2;0;206;209m█████\033[0m\n"
printf " \033[38;2;255;215;0m▀▀▀▀▀\033[0m \033[38;2;255;215;0m▀▀▀▀▀\033[0m \033[38;2;255;215;0m▀▀▀▀▀\033[0m \033[38;2;255;215;0m▀▀▀▀▀\033[0m\n"
printf " \033[38;2;199;21;133m████▄\033[0m \033[38;2;199;21;133m████▄\033[0m \033[38;2;199;21;133m████▄\033[0m \033[38;2;199;21;133m████▄\033[0m\n"
printf " \033[38;2;199;21;133m▀██▀\033[0m \033[38;2;199;21;133m▀██▀\033[0m \033[38;2;199;21;133m▀██▀\033[0m \033[38;2;199;21;133m▀██▀\033[0m\n"
printf " \033[38;2;255;206;180m██\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m██\033[0m \033[38;2;255;206;180m█\033[0m \033[38;2;255;206;180m█\033[0m\n"
printf " \033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m█\033[0m \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m██\033[0m \033[38;2;255;50;50m█\033[0m\n"
printf "\n"