No description
Hardcodiertes wl=5 ließ bei kleinen Terminals (~10 Zeilen) nur 1-2 Zeilen Unterwasserraum. Wie im Perl-Original: wl=rows//3. - add_environment: y=wl+i statt y=i+5 - Alle Spawn-y für Fische/Haie/Taucher usw.: wl+4 als Minimum - Delfine: start_ys relativ zu wl - Enten: y=wl statt y=5 - Castle nur bei rows>=20 (passt sonst nicht ins Terminal) |
||
|---|---|---|
| asciiquarium_ng.py | ||
| README.md | ||
asciiquarium-ng
Python-Port von asciiquarium mit echten RGB-Farben (Truecolor ANSI statt Curses), neuen Tieren und CLI-Parametern.
Installation
curl -fsSL https://git.motocamp.de/rene/asciiquarium/raw/branch/main/asciiquarium_ng.py \
-o /usr/local/bin/asciiquarium
chmod +x /usr/local/bin/asciiquarium
Voraussetzung: Python 3.7+, nur stdlib (keine externen Pakete). Läuft auf Linux, macOS, WSL2. Kein Perl, kein Curses, keine CPAN-Module.
Verwendung
asciiquarium # normal starten
asciiquarium --bloody # Haie fressen Fische (Splat-Animation)
asciiquarium --vegan # keine Räuber (kein Hai, kein Angelhaken, kein großer Fisch)
asciiquarium --no-shark # kein Hai
asciiquarium --no-ship # kein Schiff
asciiquarium --speed 2 # doppelte Geschwindigkeit
asciiquarium --any-key # beliebige Taste beendet (gut für Screensaver)
Tasten
| Taste | Funktion |
|---|---|
q / Q / Esc / Ctrl-C |
Beenden |
p |
Pause/Weiter |
r / R |
Neu aufbauen (nach manueller Terminalgrößenänderung) |
Tiere
- Fische (8 Typen, zufällige Farben)
- Wal mit Fontänen-Animation
- Hai
- Großer Fisch
- Seemonster
- Delfine (3er-Gruppe, Sprung-Animation)
- Schwan
- Enten (3er-Gruppe)
- Schiff
- Angelhaken
- Seepferdchen (neu)
- Tintenfisch (neu)
- Krabbe (neu) — kommt periodisch aus dem Schlosstor (Falltor öffnet/schließt sich)
Unterschiede zum Perl-Original
- Truecolor ANSI (
\033[38;2;R;G;Bm) statt Curses-Farbpaare → Farben immer korrekt, unabhängig vom Terminal-Profil - CLI-Parameter (
--bloody,--vegan,--speed, etc.) - Seepferdchen, Tintenfisch, Krabbe mit Falltor-Animation
- Eine einzige Python-Datei, keine Abhängigkeiten
Screensaver (zsh)
# in ~/.zshrc:
TMOUT=300
TRAPALRM() { asciiquarium --any-key }