Merged changes to master pending updated release.

This commit is contained in:
Storm Dragon 2020-10-09 20:58:40 -04:00
parent e0b86e0e3c
commit fd33349864

View File

@ -6,7 +6,7 @@ export DIALOGOPTS='--no-lines --visit-items'
# Automatic update function
update() {
local filePath="$(command -v ${0})"
if file "${filePath}" | grep 'Bourne-Again shell script, ASCII text' ; then
if file "${filePath}" | grep -q 'Bourne-Again shell script, ASCII text' ; then
return
fi
if [[ "$(wget --quiet -O - https://stormgames.wolfe.casa/downloads/audiogame-manager | sha256sum | cut -d ' ' -f1)" == "$(sha256sum "${filePath}" | cut -d ' ' -f1)" ]]; then
@ -37,16 +37,21 @@ checklist() {
else
errorList+=("Critical: Wine is not installed. You will not be able to play any games.")
fi
if command -v winetricks &> /dev/null ; then
echo "Winetricks is installed."
else
errorList+=("Critical: Winetricks is not installed. This means wine cannot be configured, dependancies cannot be installed, and only self-voicing games have any chance of working.")
fi
if command -v wget &> /dev/null ; then
echo "Wget is installed."
else
errorList+=("Critical: Wget is not installed. You will not be able to install any games.")
fi
for i in cabextract unzip xz ; do
for i in 7z cabextract unzip xz ; do
if command -v $i &> /dev/null ; then
echo "${i^} is installed."
else
errorList+=("Critical: ${i^} is not installed. You will not be able to install most games.")
errorList+=("Critical: ${i^} is not installed. You will not be able to install some games or their components.")
fi
done
if command -v ocrdesktop &> /dev/null ; then
@ -69,6 +74,11 @@ checklist() {
else
errorList+=("Warning: Wine mono not found, some games may not work.")
fi
if command -v xdotool &> /dev/null ; then
echo "Xdotool is installed."
else
errorList+=("Warning: Xdotool is not installed. Some installlers may not work or may need manual intervention.")
fi
# Show the results
if [[ ${#errorList[@]} -eq 0 ]]; then
echo "No problems found, you are good to go."
@ -115,6 +125,11 @@ install_wine_bottle() {
# Arguments to the function are dependancies to be installed.
(wine msiexec /i z:/usr/share/wine/mono/$(ls -1 /usr/share/wine/mono/) /silent
wine msiexec /i z:$(ls -1 /usr/share/wine/gecko/*x86.msi) /silent
# If the game requires speechsdk, get the espeak voices.
if [[ "$*" =~ speechsdk ]]; then
download "http://sourceforge.net/projects/espeak/files/espeak/espeak-1.48/setup_espeak-1.48.04.exe"
wine "${cache}/setup_espeak-1.48.04.exe" /silent
fi
winetricks -q $@ ${winVer:-winxp} ${winetricksSettings}) | dialog --progressbox "Installing wine bottle, please wait..." -1 -1
}
@ -225,6 +240,15 @@ game_launcher() {
# kill any previous existing wineservers for this prefix in case they didn't shut down properly.
WINEPREFIX="${HOME}/.local/wine/${game%|*}" wineserver -k
# launch the game
if command -v qjoypad &> /dev/null ; then
mkdir -p ~/.qjoypad3
touch "${HOME}/.qjoypad3/${game%|*}.lyt"
if pgrep qjoypad &> /dev/null ; then
qjoypad -T "${game%|*}" 2> /dev/null
else
qjoypad -T "${game%|*}" 2> /dev/null &
fi
fi
WINEPREFIX="${HOME}/.local/wine/${game%|*}" wine start /d "${winePath}" "$wineExec"
fi
exit 0
@ -298,14 +322,22 @@ unset manualInstall
# Use menu friendly names.
gameList=(
"Adrian's Doom"
"Adventurers At C"
"AudioDisc"
"Battle Zone"
"Bloodshed"
"Crazy Party"
"Easter Quest"
#"Entombed"
"Finger Panic"
"Fuck That Bird"
"Kitchensinc Games"
"Light Cars"
"Lockpick"
"Oh Shit!"
"Manamon"
"Manamon 2"
"Pontes Kickups!"
"Run For Your Life"
"Shades of Doom"
"Super Egg Hunt"
"Super Liam"
@ -314,8 +346,6 @@ gameList=(
"Technoshock"
"Top Speed 3"
"Q9"
"RS Games"
"Undead Assault"
)
# With no arguments, open the game launcher.
@ -367,6 +397,20 @@ case "${game}" in
install_wine_bottle speechsdk
download "http://www.samtupy.com/games/bloodshed.exe"
cp "${cache}/bloodshed.exe" "$WINEPREFIX/drive_c/Program Files/"
add_launcher "c:\Program Files\bloodshed.exe"
;;
"Adventurers At C")
install_wine_bottle speechsdk
download "http://www.vgstorm.com/aac/aac.zip" "https://www.agarchive.net/games/vg/adventure%20at%20c%20stages.7z"
unzip -d "$WINEPREFIX/drive_c/Program Files/aac" "${cache}/aac.zip"
7z e -o"$WINEPREFIX/drive_c/Program Files/aac/stages" "${cache}/adventure at c stages.7z"
add_launcher "c:\Program Files\aac\aac.exe"
;;
"AudioDisc")
install_wine_bottle
download "https://agarchive.net/games/other/audiodisc.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files" "${cache}/audiodisc.zip"
add_launcher "c:\Program Files\audiodisc\disco.exe"
;;
"Crazy Party")
export winVer="win7"
@ -382,6 +426,30 @@ case "${game}" in
wine "${cache}/easter quest setup.exe" /silent
add_launcher "c:\Program Files\MTGames\Easter Quest\easter.exe"
;;
"Entombed")
install_wine_bottle msvcrt40 speechsdk xna31
download "http://www.blind-games.com/EntombedSetup.exe" "http://www.blind-games.com/EntombedUpdate.exe"
wine "${cache}/EntombedSetup.exe" /silent
wine "${cache}/EntombedUpdate.exe" /silent
#add_launcher "c:\Program Files\MTGames\Easter Quest\easter.exe"
;;
"Finger Panic")
install_wine_bottle dx8vb vb6run
download "http://www.agarchive.net/games/bsc/FingerPanicSetup.exe"
if command -v xdotool &> /dev/null ; then
wine "${cache}/FingerPanicSetup.exe" /silent | xdotool sleep 10 key alt+y --clearmodifiers
else
wine "${cache}/FingerPanicSetup.exe" /silent
fi
add_launcher "c:\Program Files\Finger Panic 1.0\FingerPanic.exe"
;;
"Fuck That Bird")
export winVer="win7"
install_wine_bottle
download "http://oriolgomez.com/games/bird_en.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/fuck that bird" "${cache}/bird_en.zip"
add_launcher "c:\Program Files\fuck that bird/game.exe"
;;
"Kitchensinc Games")
install_wine_bottle vb6run speechsdk dx8vb
download "https://stormgames.wolfe.casa/downloads/kitchen.tar.xz"
@ -408,12 +476,34 @@ case "${game}" in
wine "${cache}/lockpicksetup.exe" /silent
add_launcher "c:\Program Files\lWorks\Lockpick\lockpick.exe"
;;
"Oh Shit!")
"Manamon")
export winVer="win7"
install_wine_bottle msvcrt40 speechsdk
download "http://samtupy.com/stevend/oh_shit.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files" "${cache}/oh_shit.zip"
add_launcher "c:\Program Files\oh_shit\OhShit.exe"
install_wine_bottle speechsdk
download "https://www.vgstorm.com/manamon/manamon_installer.exe"
wine "${cache}/manamon_installer.exe" /silent
add_launcher "c:\Program Files\VGStorm.com\Manamon\rpg.exe"
;;
"Manamon 2")
export winVer="win7"
install_wine_bottle speechsdk
download "http://www.vgstorm.com/manamon2/manamon2_installer.exe"
wine "${cache}/manamon2_installer.exe" /silent
add_launcher "c:\Program Files\VGStorm.com\Manamon 2\rpg.exe"
;;
"Pontes Kickups!")
export winVer="win7"
install_wine_bottle speechsdk
download "http://www.pontes.ro/ro/divertisment/games/PontesKickUpsInstaller.exe"
wine "${cache}/PontesKickUpsInstaller.exe" /silent /q
rm -fv "${WINEPREFIX}/drive_c/Program Files/Pontes Games/Pontes Kick-ups/nvdaControllerClient32.dll"
add_launcher "c:\Program Files\Pontes Games\Pontes Kick-ups\PontesKickUps.exe"
;;
"Run For Your Life")
export winVer="win7"
install_wine_bottle
download "http://oriolgomez.com/games/rfyl_en.zip"
unzip -d "$WINEPREFIX/drive_c/Program Files/run for your life" "${cache}/rfyl_en.zip"
add_launcher "c:\Program Files\run for your life/game.exe"
;;
"Shades of Doom")
install_wine_bottle vcrun6
@ -474,14 +564,6 @@ case "${game}" in
wine "${cache}/q9_english_installer.exe" /silent
add_launcher "c:\Program Files\Q9 Action Game\q9.exe"
;;
"RS Games")
# Does not speak with sapi.
export winetricksSettings="vd=1024x768"
install_wine_bottle speechsdk vcrun6
download "http://rsgames.org/rsdownloads/rsgclient/rsgames-client-setup-2.01.exe"
wine "${cache}/rsgames-client-setup-2.01.exe" /silent
add_launcher "c:\Program Files\RS Games Client\rsg.exe"
;;
"Make a One Time Donation")
xdg-open "https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=stormdragon2976@gmail.com&lc=US&item_name=Donation+to+Storm+Games&no_note=0&cn=&currency_code=USD&bn=PP-DonationsBF:btn_donateCC_LG.gif:NonHosted"
;;