Rewrite the rps module. It is buggy.

This commit is contained in:
Storm Dragon 2016-09-03 02:24:14 -04:00
parent ed0fbcb89b
commit 0178eb057f

View File

@ -1,32 +1,35 @@
#!/bin/bash [ -f functions.sh ] && source functions.sh
# 0 - rock cpu="$(shuf -n 1 -e PAPER ROCK SCISSORS)"
# 1 - paper player="$3"
# 2 - scissor
m_choice=$(($RANDOM%3)) case "${player^^}" in
o_choice=$(echo $3 | sed -r "s/^[rR].*/0/" | sed -r "s/^[pP].*/1/" | sed -r "s/^[sS].*/2/") R|RO|ROC|ROCK)
player="ROCK"
#convert my random to either r/p/s
case "$m_choice" in
0)
mr_choice="rock"
;; ;;
1) P|PA|PAP|PAPE|PAPER)
mr_choice="paper" player="PAPER"
;; ;;
2) S|SC|SCI|SCIS|SCISS|SCISSO|SCISSOR|SCISSORS)
mr_choice="scissor" player="SCISSORS"
;; ;;
*)
player="INVALID"
esac esac
if [ "$m_choice" == "$o_choice" ] if [ "$player" = "INVALID" ]; then
then msg "$2" "$1: Please select PAPER, ROCK, or SCISSORS."
outcome="tie" elif [ "$cpu" = "$player" ]; then
elif [ "$((($m_choice+1)%3))" == "$o_choice" ] msg "$2" "$1: You and I both selected $player, so we tied."
then elif [ "$cpu" = "PAPER" && "$player" != "SCISSORS" ]; then
outcome="lose" msg "$2" "$1: my $CPU beats your $player!"
elif [ "$cpu" = "ROCK" && "$player" != "PAPER" ]; then
msg "$2" "$1: my $CPU beats your $player!"
elif [ "$cpu" = "SCISSORS" && "$player" != "ROCK" ]; then
msg "$2" "$1: my $CPU beats your $player!"
elif [ "$player" = "PAPER" && "$cpu" != "SCISSORS" ]; then
msg "$2" "$1: your $player beats my $cpu!"
elif [ "$player" = "ROCK" && "$cpu" != "PAPER" ]; then
msg "$2" "$1: your $player beats my $cpu!"
else else
outcome="win" msg "$2" "$1: your $player beats my $cpu!"
fi fi
echo "PRIVMSG $2 :$1: $3 VS $mr_choice | I $outcome!"