diff --git a/.install/Freedoom.sh b/.install/Freedoom.sh index 73267d9..d005766 100644 --- a/.install/Freedoom.sh +++ b/.install/Freedoom.sh @@ -1,4 +1,4 @@ -tobyVersion="7-5" +tobyVersion="8-0" mkdir -p "${installPath}/doom" doomPath="$(find /usr/share -type d -name "doom" 2> /dev/null)" if [[ ${#doomPath} -lt 5 ]]; then @@ -44,9 +44,9 @@ unzip -n -d "${installPath}/doom" "${cache}/TobyAccessibilityMod_V${tobyVersion} unzip -n -d "${installPath}/doom" "${cache}/OpMDK_ForV${tobyVersion}.zip" cp -v "${cache}/keyshare-universal.pk3" "${installPath}/doom" rm -fv "${installPath}/doom/"*.{ahk,bat,exe,dll,ps1} -if [[ -e /usr/share/doom/blasphem.wad ]]; then - ln -s /usr/share/doom/blasphem.wad "${installPath}/doom/" -fi +#if [[ -e /usr/share/doom/blasphem.wad ]]; then + #ln -s /usr/share/doom/blasphem.wad "${installPath}/doom/" +#fi mkdir -p "${XDG_CONFIG_HOME:-$HOME/.config}/gzdoom" cp "${installPath}/doom/TobyConfig.ini" "${XDG_CONFIG_HOME:-$HOME/.config}/gzdoom/gzdoom.ini" cp "${installPath}/doom/zcajun/bots.cfg" "${XDG_CONFIG_HOME:-$HOME/.config}/gzdoom/" diff --git a/.launch/FreeDoom.game b/.launch/FreeDoom.game index f218bdf..7828d63 100755 --- a/.launch/FreeDoom.game +++ b/.launch/FreeDoom.game @@ -2,6 +2,7 @@ launch_game() { pushd "${doomPath}" + #echo "exec stdbuf -oL ${gzdoom} ${@} | speak" exec stdbuf -oL ${gzdoom} ${@} | speak popd } @@ -49,31 +50,39 @@ else fi # Version of the accessibility mod -export tobyVersion="7-5" +export tobyVersion="8-0" # Doom Addons -mapfile -t doomAddons < <(find "$gamePath/Addons/DOOM/" -type f -name "TobyV${tobyVersion%%-*}_*.pk3" - find "$gamePath/Addons/MENU/" -type f -name "TobyV${tobyVersion%%-*}_*.pk3" +mapfile -t doomAddons < <(find "$gamePath/Addons/DOOM/" -type f -name "Toby*.pk3" + find "$gamePath/Addons/MENU/" -type f -name "Toby*.pk3" ) # Heretic Addons mapfile -t hereticAddons < <(find "$gamePath/Addons/HERETIC/" -type f -name "TobyHeretic*.pk3" - find "$gamePath/Addons/MENU/" -type f -name "TobyV${tobyVersion%%-*}_*.pk3" + find "$gamePath/Addons/MENU/" -type f -name "Toby*.pk3" +) +# Hexen Addons +mapfile -t hexenAddons < <(find "$gamePath/Addons/HEXEN/" -type f -name "TobyHexen*.pk3" + find "$gamePath/Addons/MENU/" -type f -name "Toby*.pk3" ) doomGames=( # Toby demo map - "TobyAccMod_V${tobyVersion}.pk3 Toby-Demo-Level.wad ${doomAddons[*]}" "Freedoom Toby Demo Map" + "${gamePath}/TobyAccMod_V${tobyVersion}.pk3 ${gamePath}/Addons/MAPS/Toby-Demo-Level.wad ${doomAddons[*]}" "Freedoom Toby Demo Map" # Unmodified Doom with accessibility. - "TobyAccMod_V${tobyVersion}.pk3 ${doomAddons[*]}" "Freedoom" + "${gamePath}/TobyAccMod_V${tobyVersion}.pk3 ${doomAddons[*]}" "Freedoom" # Toby accessibility mods - "TobyAccMod_V${tobyVersion}.pk3 TobyDoomLevels.wad Toby-Doom-Level-Music-Renamer.pk3 ${doomAddons[*]}" "Freedoom Toby Delux Map Pack" + "${gamePath}/TobyAccMod_V${tobyVersion}.pk3 ${gamePath}/Addons/MAPS/TobyDoomLevels.wad ${doomAddons[*]}" "Freedoom Toby Delux Map Pack" # OperationMDK - "TobyAccMod_V${tobyVersion}.pk3 OpMDK.wad ${doomAddons[*]}" "Freedoom OperationMDK" + "${gamePath}/TobyAccMod_V${tobyVersion}.pk3 ${gamePath}/OpMDK.wad ${doomAddons[*]}" "Freedoom OperationMDK" # Unmodified Heretic with accessibility - "TobyAccMod_V${tobyVersion}.pk3 ${hereticAddons[*]}" "Classic Heretic" + "${gamePath}/TobyAccMod_V${tobyVersion}.pk3 ${hereticAddons[*]}" "Classic Heretic" # Heretic accessibility mods - "TobyAccMod_V${tobyVersion}.pk3 TobyHereticLevels.wad ${hereticAddons[*]}" "Toby Heretic" + "${gamePath}/TobyAccMod_V${tobyVersion}.pk3 ${gamePath}/Addons/MAPS/TobyHereticLevels.wad ${hereticAddons[*]}" "Toby Heretic" + # Unmodified Hexen with accessibility + "${gamePath}/TobyAccMod_V${tobyVersion}.pk3 ${hexenAddons[*]}" "Classic Hexen" + # Heretic accessibility mods + "${gamePath}/TobyAccMod_V${tobyVersion}.pk3 ${gamePath}/Addons/MAPS/TobyHexen.pk3 ${hexenAddons[*]}" "Toby Hexen" "custom_game" "Custom Game" ) @@ -90,6 +99,8 @@ export antiGrepStrings=( '-e' 'key card' '-e' '^New PDA Entry:' '-e' "^(As |Computer Voice:|Holy|I |I've|Monorail|Sector |Ugh|What|Where)" + '-e' 'Script warning, "' + '-e' 'Tried to define' ) export sedStrings=('-E' @@ -190,7 +201,7 @@ case ${buttonCode} in 1) # Death match setup # Ignore the choice of map made above - gameOption="${gamePath}/TobyAccMod_V${tobyVersion}.pk3 ${gamePath}/TobyDeathArena_V1-0.wad ""$gamePath/Addons/TobyV${tobVersion%%-*}_"* + gameOption="${gamePath}/TobyAccMod_V${tobyVersion}.pk3 ${gamePath}/Addons/MAPS/TobyDeathArena_V1-5.wad ""$gamePath/Addons/DOOM/TobyV*_"* ipAddress="$(dialog --backtitle "Deathmatch Options" \ --clear \ --no-tags \ @@ -217,7 +228,9 @@ case ${buttonCode} in "5" "Ocean Fortress (2-4 players)" "6" "Water Treatment Facility (2-4 players)" "7" "Phobos Base Site 4 (2-4 players)" - "8" "Hangar Bay 18 (2-4 players)") + "8" "Hangar Bay 18 (2-4 players)" + "9" "Garden of Demon (2-4 players)" + "10" "Outpost 69 (2-4 players)") # Array of how many players a given map supports in dialog rangebox syntax declare -a mapPlayers=( [1]="2 4" @@ -227,7 +240,9 @@ case ${buttonCode} in [5]="2 4" [6]="2 4" [7]="2 4" - [8]="2 4") + [8]="2 4" + [9]="2 4" + [10]="2 4") map="$(dialog --backtitle "Select Map" \ --clear \ --no-tags \ diff --git a/linux-game-manager.sh b/linux-game-manager.sh index 13a9268..dd10327 100755 --- a/linux-game-manager.sh +++ b/linux-game-manager.sh @@ -429,7 +429,7 @@ game_removal() { gameInstallPath="$(grep -F "installPath" "$gameFile" | grep -v 'pushd' | head -n1)" gameInstallPath="${gameInstallPath#*/}" gameInstallPath="${installPath}/${gameInstallPath%/*}" - if [[ -z "$gameInstallPath" ]]; then + if [[ -z "$gameInstallPath" ]] || [[ "${gameInstallPath}" == "$installPath" ]]; then # No install path found, just remove from list dialog --backtitle "Linux Game Manager" \ --yesno "This will remove the game from your game list, but will not remove any files. Do you want to continue?" -1 -1 || exit 0