I made this RPS script when i finally decided to make a game. i had never seen one so i figured RPS would be easy. well, here it is. i have not fully tested it, but it should work. if any bug occurs just type !End to unset the games variables.
on *:text:!RPS:#ethan: {
if ( %RPS == $null ) {
msg # 4 $+ $nick 14has started 9ROCK, PAPER, SCISSORS!
msg # 14 $+ Who would like to accept 4 $+ $nick $+ 's 14challenge? Just type 8!Accept
set %RPS 1 | set %challenger1 $nick | Halt }
if ( RPS != $null ) { msg # 14There is currently a game of RPS going on. }
}
on *:text:!Accept:#ethan: {
if ( %RPS == 1 ) { msg # 9 $+ $nick 14has accepted 4 $+ %challenger1 $+ 's 14challenge. | set %challenger2 $nick | set %RPS 2 | msg # 14To Chose Rock, Paper, or Scissors, Type 8/Notice $me <Rock, Paper, Scissors> }
if ( %RPS == $null ) { msg # 14You must first initiate the RPS game by saying 8 $+ !RPS }
}
on *:text:!End:#ethan: {
if ( $nick == %challenger1 || $nick == %challenger2 || $nick isop #Ethan ) {
msg # 4 $+ $nick 14has decided to call it quits. | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt
}
if (( $nick != %challenger1 ) && ( $nick != %challenger1 ) && ( $nick !isop #ethan )) {
msg # 14 $+ You must be participating to end the RPS duel.
}
}
on *:notice:*:?: {
if ( %RPS == 1 ) { notice $nick There has to be 2 contenders. }
if ( %RPS == 2 ) {
if ( $nick == %challenger1 ) {
if ( $1 == Rock ) { notice %challenger1 You've chosen Rock. | set %challenger1.choice 1 }
if ( $1 == Paper ) { notice %challenger1 You've chosen Paper. | set %challenger1.choice 2 }
if ( $1 == Scissors ) { notice %challenger1 You've chosen Scissors. | set %challenger1.choice 3 }
if (( $1 == $null ) || (( $1 != Rock ) && ( $1 != Paper ) && ( $1 != Scissors )) { notice %challenger1 You must choose Rock or Paper or Scissors }
}
if ( $nick == %challenger2 ) {
if ( $1 == Rock ) { notice %challenger2 You've chosen Rock. | set %challenger2.choice 1 }
if ( $1 == Paper ) { notice %challenger2 You've chosen Paper. | set %challenger2.choice 2 }
if ( $1 == Scissors ) { notice %challenger2 You've chosen Scissors. | set %challenger2.choice 3 }
if (( $1 == $null ) || (( $1 != Rock ) && ( $1 != Paper ) && ( $1 != Scissors )) { notice %challenger2 You must choose Rock or Paper or Scissors }
}
if (( $nick != %challenger1 ) || ( $nick != %challenger2 )) { notice $nick You'll have to wait until a free round if you want to play. }
}
if ( %RPS == $null ) { /notice $nick You must first initiate the game by saying !RPS and then follow the instructions. }
}
on *:Text:!Finished:#ethan: {
if ( %RPS == $null ) { msg # 14You must first initiate RPS by typing !RPS }
if ( %RPS == 1 ) { msg # 14You need 2 contenders before the game can start. }
if ( %RPS == 2 ) {
if ( $nick != %challenger1 && $nick != %challenger2 ) { msg # You must be a contender in order to finish the round. | Halt }
if ( %challenger1.choice == $null || %challenger2.choice == $null ) { msg # 14You must wait for 11both 14contenders to decide on their weapon. }
if ( %challenger1.choice != $null && %challenger2.choice != $null ) {
if ( %challenger1.choice == 1 && %challenger2.choice == 1 ) { msg # 4 $+ %challenger1 14chose: 8Rock. 9 $+ %challenger2 14chose: 8Rock. 4TIE GAME! NO WINNER! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 1 && %challenger2.choice == 2 ) { msg # 4 $+ %challenger1 14chose: 8Rock. 9 $+ %challenger2 14chose: 8Paper. 9 $+ %challenger2 14has beaten 4 $+ %challenger1 $+ 14!!! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 1 && %challenger2.choice == 3 ) { msg # 4 $+ %challenger1 14chose: 8Rock. 9 $+ %challenger2 14chose: 8Scissors. 4 $+ %challenger1 14has beaten 9 $+ %challenger2 $+ 14!!! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 2 && %challenger2.choice == 1 ) { msg # 4 $+ %challenger1 14chose: 8Paper. 9 $+ %challenger2 14chose: 8Rock. 4 $+ %challenger1 14has beaten 9 $+ %challenger2 $+ 14!!! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 2 && %challenger2.choice == 2 ) { msg # 4 $+ %challenger1 14chose: 8Paper. 9 $+ %challenger2 14chose: 8Paper. 4TIE GAME! NO WINNER! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 2 && %challenger2.choice == 3 ) { msg # 4 $+ %challenger1 14chose: 8Paper. 9 $+ %challenger2 14chose: 8Scissors. 9 $+ %challenger2 14has beaten 4 $+ %challenger1 $+ 14!!! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 3 && %challenger2.choice == 1 ) { msg # 4 $+ %challenger1 14chose: 8Scissors. 9 $+ %challenger2 14chose: 8Rock. 9 $+ %challenger2 14has beaten 4 $+ %challenger1 $+ 14!!! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 3 && %challenger2.choice == 2 ) { msg # 4 $+ %challenger1 14chose: 8Scissors. 9 $+ %challenger2 14chose: 8Paper. 4 $+ %challenger1 14has beaten 9 $+ %challenger2 $+ 14!!! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 3 && %challenger2.choice == 3 ) { msg # 4 $+ %challenger1 14chose: 8Scissors. 9 $+ %challenger2 14chose: 8Scissors. 4TIE GAME! NO WINNER! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
}
}
try this:
on *:text:!RPS:$chan: {
if ( %RPS == $null ) {
msg # 4 $+ $nick 14has started 9ROCK, PAPER, SCISSORS!
msg # 14 $+ Who would like to accept 4 $+ $nick $+ 's 14challenge? Just type 8!Accept
set %RPS 1 | set %challenger1 $nick | Halt }
if ( RPS != $null ) { msg # 14There is currently a game of RPS going on. }
}
on *:text:!Accept:$chan: {
if ( %RPS == 1 ) { msg # 9 $+ $nick 14has accepted 4 $+ %challenger1 $+ 's 14challenge. | set %challenger2 $nick | set %RPS 2 | msg # 14To Chose Rock, Paper, or Scissors, Type 8/Notice $me <Rock, Paper, Scissors> }
if ( %RPS == $null ) { msg # 14You must first initiate the RPS game by saying 8 $+ !RPS }
}
on *:text:!End:$chan: {
if ( $nick == %challenger1 || $nick == %challenger2 || $nick isop #Ethan ) {
msg # 4 $+ $nick 14has decided to call it quits. | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt
}
if (( $nick != %challenger1 ) && ( $nick != %challenger1 ) && ( $nick !isop #ethan )) {
msg # 14 $+ You must be participating to end the RPS duel.
}
}
on *:notice:*:?: {
if ( %RPS == 1 ) { notice $nick There has to be 2 contenders. }
if ( %RPS == 2 ) {
if ( $nick == %challenger1 ) {
if ( $1 == Rock ) { notice %challenger1 You've chosen Rock. | set %challenger1.choice 1 }
if ( $1 == Paper ) { notice %challenger1 You've chosen Paper. | set %challenger1.choice 2 }
if ( $1 == Scissors ) { notice %challenger1 You've chosen Scissors. | set %challenger1.choice 3 }
if (( $1 == $null ) || (( $1 != Rock ) && ( $1 != Paper ) && ( $1 != Scissors )) { notice %challenger1 You must choose Rock or Paper or Scissors }
}
if ( $nick == %challenger2 ) {
if ( $1 == Rock ) { notice %challenger2 You've chosen Rock. | set %challenger2.choice 1 }
if ( $1 == Paper ) { notice %challenger2 You've chosen Paper. | set %challenger2.choice 2 }
if ( $1 == Scissors ) { notice %challenger2 You've chosen Scissors. | set %challenger2.choice 3 }
if (( $1 == $null ) || (( $1 != Rock ) && ( $1 != Paper ) && ( $1 != Scissors )) { notice %challenger2 You must choose Rock or Paper or Scissors }
}
if (( $nick != %challenger1 ) || ( $nick != %challenger2 )) { notice $nick You'll have to wait until a free round if you want to play. }
}
if ( %RPS == $null ) { /notice $nick You must first initiate the game by saying !RPS and then follow the instructions. }
}
on *:Text:!Finished:#chan: {
if ( %RPS == $null ) { msg # 14You must first initiate RPS by typing !RPS }
if ( %RPS == 1 ) { msg # 14You need 2 contenders before the game can start. }
if ( %RPS == 2 ) {
if ( $nick != %challenger1 && $nick != %challenger2 ) { msg # You must be a contender in order to finish the round. | Halt }
if ( %challenger1.choice == $null || %challenger2.choice == $null ) { msg # 14You must wait for 11both 14contenders to decide on their weapon. }
if ( %challenger1.choice != $null && %challenger2.choice != $null ) {
if ( %challenger1.choice == 1 && %challenger2.choice == 1 ) { msg # 4 $+ %challenger1 14chose: 8Rock. 9 $+ %challenger2 14chose: 8Rock. 4TIE GAME! NO WINNER! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 1 && %challenger2.choice == 2 ) { msg # 4 $+ %challenger1 14chose: 8Rock. 9 $+ %challenger2 14chose: 8Paper. 9 $+ %challenger2 14has beaten 4 $+ %challenger1 $+ 14!!! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 1 && %challenger2.choice == 3 ) { msg # 4 $+ %challenger1 14chose: 8Rock. 9 $+ %challenger2 14chose: 8Scissors. 4 $+ %challenger1 14has beaten 9 $+ %challenger2 $+ 14!!! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 2 && %challenger2.choice == 1 ) { msg # 4 $+ %challenger1 14chose: 8Paper. 9 $+ %challenger2 14chose: 8Rock. 4 $+ %challenger1 14has beaten 9 $+ %challenger2 $+ 14!!! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 2 && %challenger2.choice == 2 ) { msg # 4 $+ %challenger1 14chose: 8Paper. 9 $+ %challenger2 14chose: 8Paper. 4TIE GAME! NO WINNER! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 2 && %challenger2.choice == 3 ) { msg # 4 $+ %challenger1 14chose: 8Paper. 9 $+ %challenger2 14chose: 8Scissors. 9 $+ %challenger2 14has beaten 4 $+ %challenger1 $+ 14!!! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 3 && %challenger2.choice == 1 ) { msg # 4 $+ %challenger1 14chose: 8Scissors. 9 $+ %challenger2 14chose: 8Rock. 9 $+ %challenger2 14has beaten 4 $+ %challenger1 $+ 14!!! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 3 && %challenger2.choice == 2 ) { msg # 4 $+ %challenger1 14chose: 8Scissors. 9 $+ %challenger2 14chose: 8Paper. 4 $+ %challenger1 14has beaten 9 $+ %challenger2 $+ 14!!! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
if ( %challenger1.choice == 3 && %challenger2.choice == 3 ) { msg # 4 $+ %challenger1 14chose: 8Scissors. 9 $+ %challenger2 14chose: 8Scissors. 4TIE GAME! NO WINNER! | unset %challenger1 | unset %challenger2 | unset %RPS | unset %challenger1.choice | unset %challenger2.choice | halt }
}
}