Files
stormbot/triggers/bye/bye.sh
2025-11-04 18:41:09 -05:00

35 lines
986 B
Bash
Executable File

#!/usr/bin/env bash
[ -f functions.sh ] && source functions.sh
farewellsFile="triggers/bye/farewells.txt"
# All names to match are completely lowercase.
case "${1,,}" in
storm_dragon)
msg "${2%% :*}" "NOOOOOOOOOO!!! $1: come back!!!"
;;
*)
# Read farewells from file into array
if [[ -f "$farewellsFile" ]]; then
mapfile -t farewell < "$farewellsFile"
else
# Fallback if file doesn't exist
farewell=("Goodbye" "Farewell!")
fi
# Replace placeholders with actual values
selectedFarewell="${farewell[$((RANDOM % ${#farewell[@]}))]}"
selectedFarewell="${selectedFarewell//\{channel\}/${2%% :*}}"
# Check if farewell contains {name} placeholder
if [[ "$selectedFarewell" == *"{name}"* ]]; then
# Replace {name} with actual name, don't add prefix
selectedFarewell="${selectedFarewell//\{name\}/$1}"
msg "${2%% :*}" "$selectedFarewell"
else
# No {name} placeholder, use traditional "name: farewell" format
msg "${2%% :*}" "$1: $selectedFarewell"
fi
;;
esac