Skip to content

Instantly share code, notes, and snippets.

@flako-dd
Created February 16, 2024 17:57
Show Gist options
  • Save flako-dd/9d73d3e473962f1afd46642f02304c9f to your computer and use it in GitHub Desktop.
Save flako-dd/9d73d3e473962f1afd46642f02304c9f to your computer and use it in GitHub Desktop.
Bash implementation of Deus taking over the Eldridge
#!/usr/bin/env bash
# the text to be printed
text="You shall be as gods "
text_length=${#text}
# ANSI Colors
RED='\e[31m' BLA_BG='\e[40m' CLE='\e[0m'
# the main loop using tput to print bottom up
function printloop() {
# get number of cols
cols=$(tput cols)
# for all visible lines in the terminal
for ((row_pos=$(tput lines)-1; row_pos>=1; row_pos--)); do
# for each column, increment by text length
for ((col_pos=1; col_pos<=$cols; col_pos+=text_length)); do
# get into position
cursor_position="\e[${row_pos};${col_pos}H"
printf "${cursor_position}${BLA_BG}${RED}"
# make sure to not line wrap, since we are actually going up not down
split=$(($cols - $col_pos + 1))
printf "${text:0:$split}${CLE}"
# if we are in the area where there are less cols left than the text is long...
if [[ $split -lt $text_length ]]; then
# ... we take the remaining string that could not be printed...
cut_part="${text:${split}}"
# ... we save the part we DID print ...
trimmed_string="${text:0:$split}"
# ... and just flip it, this way we can easily handle the reverse line wrapping
text="${cut_part}${trimmed_string}"
fi
# print speed
sleep 0.04
done
done
# Move the cursor to the top-left corner after the loop
tput cup 0 0
}
# sci fi screen printing sound sample
read -d @ sound <<'DEUS'
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
DEUS
# play the sci fi screen printing sound in the bg, but reduce vol to half to not startle to many users.
# NOTE: this fails silently if `play` is not available
echo "$sound" | base64 --decode | play -v 0.5 -q -t opus - repeat 9981 2>/dev/null &
# Save the PID of play running in the BG
play_pid=$!
# Trap Function to clean up and terminate the background process
clean() {
kill -TERM $play_pid 2>/dev/null
wait $play_pid 2>/dev/null
}
trap clean EXIT
# reset on resize of window via SIGWINCH signal
resize_handler() {
row_pos=$(tput lines)-1
cols=$(tput cols)
}
trap 'resize_handler' SIGWINCH
# execute the main print loop
printloop
#EOF
@flako-dd
Copy link
Author

asciicast

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment