#!/bin/bash set -e declare -a games GAME_INSTALLED=$(gamechest list | grep -i true | cut -d ":" -f 1 | cut -d " " -f 1) populate_games() { for game in "${GAME_INSTALLED}"; do games+=($game) done } choose_game() { local choice_array=() local shortcut_count=0 for game in "${games[@]}"; do shortcut_count=$(( $shortcut_count + 1 )) choice_array+=( "$game" "[$shortcut_count] $game" ) done local dialog_args=( --stdout --clear --backtitle "Games selection" --title "List of installed games" #--default-item "${games[-1]}" --menu "Choose one of the following game:" 0 0 0 "${choice_array[@]}" ) dialog "${dialog_args[@]}" } populate_profiles() { for profile in "dragoncat blackmoor calendros guest malice loudivine airi adetess"; do profiles+=($profile) done } choose_profile() { local choice_array=() local shortcut_count=0 for profile in "${profiles[@]}"; do shortcut_count=$(( $shortcut_count + 1 )) choice_array+=( "$profile" "[$shortcut_count] $profile" ) done local dialog_args=( --stdout --clear --backtitle "Profiles selection" --title "List of avalaible profiles" #--default-item "${profiles[-1]}" --menu "Choose one of the following profile:" 0 0 0 "${choice_array[@]}" ) dialog "${dialog_args[@]}" } main() { # Game populate_games if [ ${#games[*]} -eq 0 ]; then echo "No game installed, bye."; exit 0; fi if [ ${#games[*]} -eq 1 ]; then game=${games[0]} else game=$(choose_game) fi # Profile populate_profiles if [ ${#profiles[*]} -eq 0 ]; then echo "No profile available, bye."; exit 0; fi if [ ${#profiles[*]} -eq 1 ]; then profile=${profiles[0]} else profile=$(choose_profile) fi echo "Running $game with $profile profile" exec gamechest run --profile_id=$profile $game } main