; 4-square Game alias num { tokenize 32 $1- return $0 } on *:TEXT:!4square:#:{ set %4sq.players $nick if (%4sq.game == on) { msg $chan There is already a 4-square game in place, please wait until the next round, or until this game has stopped to create/join a new game } else { set %4sq.game on | msg $chan $nick has started and joined a 4-square game, the next three players to type !join get to play this round! } set %4sq.starter $nick set %4sq.ball $nick set %4sq.nplayers 1 set %4sq.king $nick } on *:TEXT:!join:#:{ if ($nick isin %4sq.players) { msg $chan You have already joined a game, please invite more players to join } elseif ($num(%4sq.players) == 4) { msg $chan There are already 4 players in this game, please wait until the round is finished } else { set %4sq.players %4sq.players $nick set %4sq.nplayers $calc(%4sq.nplayers + 1) if (%4sq.nplayers == 2) { set %4sq.3 $nick } elseif (%4sq.nplayers == 3) { set %4sq.2 $nick } elseif (%4sq.nplayers == 4) { set %4sq.1 $nick } msg $chan $nick has joined the game! } } on *:TEXT:!hit*:#:{ timer* off set %4sq.hit $rand(1,2) if (%4sq.game == off) { msg $chan There is no game in place, please type !4square to begin a game | unset %4sq.hit } elseif (%4sq.ball != $nick) { msg $chan $nick $+ , you do not have the ball. } elseif ($2 !isin %4sq.players) { msg $chan $2 is not apart of this game | unset %4sq.hit } elseif ($2 == $nick) { msg $chan You cannot hit the ball into your own square | unset %4sq.hit } elseif (%4sq.hit == 1) { set %4sq.time $rand(14,15) msg $chan $nick hits it at $2 $+ 's square. $2 has %4sq.time seconds to hit the ball. set %4sq.ball $2 dec -z %4sq.time timer 1 %4sq.time $iif(%4sq.time == $null, msg $chan halting, msg $chan %4sq.ball has failed to hit the ball and moves back to the first square) } elseif (%4sq.hit == 2) { set %4sq.time $rand(14,15) msg $chan $nick slams it at $2 $+ 's square. $2 has %4sq.time seconds to hit the ball. set %4sq.ball $2 dec -z %4sq.time timer 1 %4sq.time $iif(%4sq.time == $null, msg $chan halting, msg $chan %4sq.ball has failed to hit the ball and moves back to the first square) } } on *:TEXT:!ball:#:{ if ($nick == LordMan11) { set %4sq.ball LordMan11 | describe $chan gives LordMan11 the ball so he can test some more } else { msg $chan You do not have permission to use this command } } ; End 4-square Game