#!/bin/bash main_menu() { clear echo "Pokemon-Sprite-Downloader" echo "==============================================" echo "Diese Datei lädt Sprites von Pokemon.com herunter und sortiert sie nach Generationen." echo "" echo "HINWEIS: Dieses Script benötigt curl, um die Bilder herunterzuladen." echo "Falls curl nicht installiert ist, bitte mit 'sudo apt-get install curl' installieren." echo "" # Erstelle Generationsordner falls diese nicht existieren mkdir -p gen1 mkdir -p gen2 mkdir -p gen3 mkdir -p gen4 mkdir -p gen5 mkdir -p gen6 mkdir -p gen7 mkdir -p gen8 mkdir -p gen9 echo "Generationsordner wurden erstellt/geprüft." echo "" # Prüfe, ob curl verfügbar ist if ! command -v curl &> /dev/null; then echo "FEHLER: curl wurde nicht gefunden!" echo "Bitte installiere curl mit 'sudo apt-get install curl' oder dem Paketmanager deiner Distribution." echo "" read -p "Drücke eine Taste zum Beenden..." exit 1 fi echo "Wähle die Generation zum Herunterladen:" echo "1 - Generation 1 (001-151)" echo "2 - Generation 2 (152-251)" echo "3 - Generation 3 (252-386)" echo "4 - Generation 4 (387-493)" echo "5 - Generation 5 (494-649)" echo "6 - Generation 6 (650-721)" echo "7 - Generation 7 (722-809)" echo "8 - Generation 8 (810-905)" echo "9 - Generation 9 (906-1025)" echo "10 - Alle Generationen" echo "11 - Beenden" echo "" read -p "Deine Auswahl (1-11): " gen # Beenden, wenn Option 11 gewählt wurde if [ "$gen" == "11" ]; then echo "Programm wird beendet..." exit 0 fi # Setze Start- und Endnummern basierend auf der Auswahl case $gen in 1) start=1 end=151 targetDir="gen1" ;; 2) start=152 end=251 targetDir="gen2" ;; 3) start=252 end=386 targetDir="gen3" ;; 4) start=387 end=493 targetDir="gen4" ;; 5) start=494 end=649 targetDir="gen5" ;; 6) start=650 end=721 targetDir="gen6" ;; 7) start=722 end=809 targetDir="gen7" ;; 8) start=810 end=905 targetDir="gen8" ;; 9) start=906 end=1025 targetDir="gen9" ;; 10) start=1 end=1025 targetDir="all" ;; *) echo "Ungültige Auswahl." read -p "Drücke eine Taste zum Fortfahren..." main_menu ;; esac echo "Starte Download..." echo "" # Download basierend auf dem gewählten Bereich if [ "$targetDir" == "all" ]; then # Alle Generationen for ((i=1; i<=151; i++)); do download_pokemon $i "gen1" done for ((i=152; i<=251; i++)); do download_pokemon $i "gen2" done for ((i=252; i<=386; i++)); do download_pokemon $i "gen3" done for ((i=387; i<=493; i++)); do download_pokemon $i "gen4" done for ((i=494; i<=649; i++)); do download_pokemon $i "gen5" done for ((i=650; i<=721; i++)); do download_pokemon $i "gen6" done for ((i=722; i<=809; i++)); do download_pokemon $i "gen7" done for ((i=810; i<=905; i++)); do download_pokemon $i "gen8" done for ((i=906; i<=1025; i++)); do download_pokemon $i "gen9" done else # Einzelne Generation for ((i=start; i<=end; i++)); do download_pokemon $i $targetDir done fi echo "" echo "Download abgeschlossen." echo "" echo "Was möchtest du als nächstes tun?" echo "1 - Weitere Pokemon herunterladen" echo "2 - Programm beenden" echo "" read -p "Deine Auswahl (1-2): " next_action if [ "$next_action" == "1" ]; then main_menu else echo "Programm wird beendet..." exit 0 fi } download_pokemon() { num=$1 genDir=$2 # Führende Nullen hinzufügen if [ $num -lt 10 ]; then padded=$(printf "%03d" $num) elif [ $num -lt 100 ]; then padded=$(printf "%03d" $num) else padded=$(printf "%d" $num) fi echo "Lade Pokemon #$padded herunter..." curl -s -o "$genDir/$padded.png" "https://www.pokemon.com/static-assets/content-assets/cms2/img/pokedex/full/$padded.png" sleep 1 } # Skript starten main_menu