diff --git a/.scripts/TobyCustom/.dependencies b/.scripts/TobyCustom/.dependencies new file mode 100644 index 0000000..f6f7564 --- /dev/null +++ b/.scripts/TobyCustom/.dependencies @@ -0,0 +1,23 @@ +check_dependencies() { + if [[ $# -lt 2 ]]; then + dialog --backtitle "Linux Game Manager" \ + --msgbox "Invalid call to check_dependencies(). Please check your code." -1 -1 --stdout + exit 1 + fi + local packagePath="$1" # Path where the launcher will attempt the package, e.g. ${gamePath/Addons/PACKAGENAME/something.pk3 + local packageURL="$2" # URL where the package can be downloaded. + shift 2 + if [[ -e "${packagePath}" ]]; then + return + fi + local message=( + "You are missing the \"${packagePath##/*}\" Package." $'\n' + "You can get it from \"${packageURL}\"" $'\n') + echo "${packageURL}" | DISPLAY="${DISPLAY:-:0}" xclip -selection clipboard && message+=("The URL has been copied to the clipboard." $'\n') + for i in "${@}" ; do + message+=("$i" $'\n') + done + dialog --backtitle "Linux Game Manager" \ + --msgbox "${message[*]}" -1 -1 --stdout + exit 1 +} diff --git a/.scripts/TobyCustom/ArmyOfDarknessDoom.sh b/.scripts/TobyCustom/ArmyOfDarknessDoom.sh index 4a4123d..ab35d6a 100755 --- a/.scripts/TobyCustom/ArmyOfDarknessDoom.sh +++ b/.scripts/TobyCustom/ArmyOfDarknessDoom.sh @@ -1,7 +1,8 @@ #!/usr/bin/env bash -# requires aoddoom1.wad -# https://www.moddb.com/mods/army-of-darkness-total-conversion/addons/army-of-darkness-doom-wad +# check for required wad. +source ${0%/*}/TobyCustom/.dependencies +check_dependencies "aoddoom1.wad" "https://www.moddb.com/mods/army-of-darkness-total-conversion/addons/army-of-darkness-doom-wad" "Place \"aoddoom1.wad\" in \"${gamePath}\"." gamePath=~/.local/games/doom