#!/bin/bash

### Fichier principal 
# menu 
# quit
# commande de lancement avec affichage top kikoo

######### TODO EXISTENTIEL ######### 
# Que faire du trap ctrl + c ? 
    # proposer la fonction quit ? 
    # tout del sans confirmation ?
    # insulter l'utilisateur ? 

printf "\e[8;45;67;t" # recadre la fenetre , surtout en longueur pour prévoir large, non obligatoire, ne fonctionne pas sur un tty (innutile en théorie) 

pos=$(echo "$PWD/$(dirname $0)" | sed s#'/\.'##g) # on stock la position dès le debut
# le sed remplace le /. si le fichier est executer depuis le dossier courant pour eviter certain bug dans la carte 
cd $pos # et on y va histoire de... 


# pseudo pseudo-equivalent au header en C
source $pos/joueur.sh # relatif au joueurs
source $pos/datagame.sh # relatif au donnée du jeu 
source $pos/game.sh # relatif au jeu lui même 
source $pos/gameplay.sh # relatif au deroulement du jeu
source $pos/initgame.sh # relatif a la génération du jeu

# Display le menu 
function menu {
clear
echo $@
while true ;do
	echo " ===== Menu de Simpson's RPG Game ===== "
	echo ""
	echo " Selectionner une valeur : "
	echo " N : Nouvel partie"
	echo " R : Reprendre la partie sauvegarder" #TODO
	echo " D : Sauvegarder et quitter" #TODO
	echo " Q : Quitter" 
	echo " S : Voir votre Statut" 
	echo " G : Continuer la partie"

	read -n 1 choice 

	case "$choice" in
	    [nN] ) newgame ;;
	    [rR] ) recupgame ;;
	    [dD] ) savegame ;;
	    [qQ] ) quit ;;
	    [sS] ) statut ;; 
	    [gG] ) game ;;
	    * ) clear; echo " Mauvaise saisie , recommencez" ;;
	esac
done # aucun break car on veut pas sortir du menu 
}

#quitter le jeu sans sauvegarder # tout detruire 
function quit {
clear
echo $@
    while true ;do 
	echo " Tout arrêter, sans sauvegarder ?"
	echo " ===== Choisissez une option ===== "
	echo " N : Non"
	echo " Y : Oui"     
	read -n 1 choice 

	case "$choice" in
	       [nN] ) menu ;;
	       [yY] ) del;clear;exit;;
	       * ) clear; echo " Mauvaise saisie , recommencez" ;;
	esac
    done
}




trap 'clear; echo "Pas bien de quitter comme ca ! "; exit ' SIGINT SIGTERM


clear
echo " ############################################## "
echo " ############# Simpson's RPG Game ############# "
echo " ############################################## "
echo ""
echo " note : les touches ne respect pas la casse "
echo " Ctrl + C ne marche pas => y'a un menu pour ca"
echo ""
echo " ############################################## " 
echo ""

### c'est juste pour faire genre on est d'accord ...
echo -n " Chargement et Verification "
    for j in $(seq 1 15); do
	echo -n ".";sleep 0.03
    done
echo ""
echo ""
echo " ############################################## " 
echo ""

echo -n " Apuyer sur n'importe quel touche "

    for i in $(seq 1 5); do
	echo -n ".";sleep 0.075
    done
echo ""
echo ""
echo " ############################################## " 

read -n 1

if [[ -e $pos/joueur ]]; then
    loadplayer ## on est pas censer quitter sans del ou sav , de cette facon le ctrl + c permet de reprendre sa partie en cour ... 
    menu " Partie charger automatiquement. Attention la prochaine fois que vous quittez n'importe comment"
fi
menu
