Listing 1. yahtzee.sh #!/bin/sh function rollDie() { sides=${1:-6} dieroll=$(( ( $RANDOM % $sides ) + 1 )) } rollDie ; dice[1]=$dieroll rollDie ; dice[2]=$dieroll rollDie ; dice[3]=$dieroll rollDie ; dice[4]=$dieroll rollDie ; dice[5]=$dieroll echo -n "You rolled [${dice[1]}], [${dice[2]}], [${dice[3]}], " echo "[${dice[4]}] and [${dice[5]}]" echo -n "Reroll which dice? " read answer for reroll in $answer do if [ $reroll -lt 1 -o $reroll -gt 5 ] ; then echo "Invalid entry: $reroll. Please enter 1-5" else rollDie dice[$reroll]=$dieroll fi done echo -n "Your new roll: [${dice[1]}], [${dice[2]}], [${dice[3]}], " echo "[${dice[4]}] and [${dice[5]}]" exit 0