#! /bin/sh
# unscramble - Choisit un mot, le mlange, et demande  l'utilisateur de
#  le deviner.

wordlib="/usr/lib/games/doc/longs-mots.txt"
randomquote="randomquote"               # Script #76

scrambleword()
{
  # Choisit un mot au hasard dans la liste, et le mlange.
  # Le mot choisi est $match; le mot mlang est $scrambled

  match="$($randomquote $wordlib)"

  echo "J'ai choisi un mot!"

  len=$(echo $match | wc -c | sed 's/[^[:digit:]]//g')
  scrambled=""; lastval=1

  for (( val=1; $val < $len ; ))
  do
    if [ $(perl -e "print int rand(2)") -eq 1 ] ; then
      scrambled=$scrambled$(echo $match | cut -c$val)
    else
      scrambled=$(echo $match | cut -c$val)$scrambled
    fi
    val=$(( $val + 1 ))
  done 
}

if [ ! -r $wordlib ] ; then 
  echo "$0: Je ne trouve pas la liste de mots $wordlib" >&2 
  echo "(version en ligne: http://www.intuitive.com/wicked/examples/long-words.txt" >&2 
  echo "  sauvegardez le fichier sous le nom $wordlib et vous pourrez jouer!)" >&2 
  exit 1
fi

newgame=""; guesses=0; correct=0; total=0

until [ "$guess" = "quitter" ] ; do

  scrambleword

  echo ""
  echo "Vous devez remettre en ordre: $scrambled"

  guess="??" ; guesses=0
  total=$(( $total + 1 ))

  while [ "$guess" != "$match" -a "$guess" != "quitter" -a "$guess" != "suivant" ]
  do
    echo ""
    echo -n "Votre proposition (quitter|suivant) : "
    read guess

    if [ "$guess" = "$match" ] ; then
      guesses=$(( $guesses + 1 ))
      echo ""
      echo "*** Vous avez trouv en ${guesses} essais!  Bravo!! ***"
      echo ""
      correct=$(( $correct + 1 ))
    elif [ "$guess" = "quitter" -o "$guess" = "suivant" ] ; then 
      echo "Le mot mlang tait $match. Nombre de tentatives: $guesses"
    else
      echo "Non. Ce n'est pas le mot mlang. Essayez encore."
      guesses=$(( $guesses + 1 ))
    fi 
  done 
done

echo "Termin. Vous avez correctement devin $correct mots mlangs sur $total."

exit 0
