All pastes #1538575 Raw Edit

Guitar Hero

public text v1 · immutable
#1538575 ·published 2009-08-22 05:39 UTC
rendered paste body
alias gh1 { return $+($chr(2),$chr(3),$g1,$1-,$chr(3),$chr(15)) }
alias gh2 { return $+($chr(2),$chr(3),$g2,$1-,$chr(3),$chr(15)) }
alias gh3 { return $+($chr(2),$chr(3),$g3,$1-,$chr(3),$chr(15)) }
alias gh4 { return $+($chr(2),$chr(3),$g4,$1-,$chr(3),$chr(15)) }
alias gh5 { return $+($chr(2),$chr(3),$g5,$1-,$chr(3),$chr(15)) }

alias g1 { return 8,8 } 
alias g2 { return 4,4 } 
alias g3 { return 13,13 } 
alias g4 { return 2,2 } 
alias g5 { return 9,9 } 

on *:TEXT:!guitarhero*:#: {
  if ($address($nick,4) == *!*@*.hsd1.ma.comcast.net) || ($readini(Access.ini,$address($nick,4),Access) > 4999) || ($nick isop $chan) {
    if ($2 == on) {
      /writeini song.ini $chan Status Clear
      /msg $chan - Guitar Hero's Script is now online for $chan ! -
    }
    if ($2 == off) {
      /writeini song.ini $chan Status Off
      /msg $chan - Guitar Hero's Script is now offline for $chan ! -
      /remini turns.ini $chan
      /remini score.ini $chan
      /unset %ready [ $+ [ $chan ] ]
      /unset %correctcords [ $+ [ $chan ] ]
    }
  }
}

on *:TEXT:!stopsong*:#: {
  if ($readini(song.ini,$chan,Status) = Clear) || ($readini(Song.ini,$chan,Status) = Off) { /notice $nick Try Starting a Song First Genius... | halt }
  if ($address($nick,4) == *!*@*.hsd1.ma.comcast.net) || ($readini(Access.ini,$address($nick,4),Access)) > 4999) || ($nick isop $chan) {
    /writeini song.ini $chan Status Clear
    /msg $chan - Song stopped by $nick -
    /remini turns.ini $chan
    /remini score.ini $chan
    /unset %ready [ $+ [ $chan ] ]
    /unset %correctcords [ $+ [ $chan ] ]
  }
}
on *:TEXT:!record*:#: {
  /set %rec.msg [ $+ [ %dd ] ] $iif($left($1,1) == @,.msg $chan,.notice $nick)
  if (!$2) { %rec.msg 4The Record for2 $nick 14is4 $calc($readini(Wins.ini,$nick,wins)+0) Wins, and $calc($readini(Losses.ini,$nick,Losses)+0) Losses. }
  else { %rec.msg - The record for $2 is $calc($readini(Wins.ini,$2,wins)+0) wins and $calc($readini(Losses.ini,$2,Losses)+0) losses. }
}

on *:TEXT:!song*:#: {
  if ($readini(song.ini,$chan,Status) = Clear) {
    /msg $chan - $nick wants to play guitar hero ! Who wants to rock ? Say !song if your up to the challenge ! -
    /writeini song.ini $chan Status One
    /writeini song.ini $chan Player1 $nick
  HALT }
  if ($readini(Song.ini,$chan,Status) = One) {
    if ($nick == $readini(song.ini,$chan,player1)) { /notice $nick - You're already in it. - | halt }
    /set %ready [ $+ [ $chan ] ] current
    /msg $chan - Guitar Hero's Script is now 9online1. -
    /msg $chan - The rules are simple: Here are the cords: 8,8 4,4 13,13 2,2 9,9 -
    /msg $chan - Each time that cord apears, put a 1. For everytime a cord doesnt apear, put a - for its space. -
    /msg $chan - Example: For 8,8  13,13   - You will say: 1-1-- -
    /writeini song.ini $chan Status Full
    /writeini song.ini $chan Player2 $nick
    /msg $chan - When both players are ready, say !ready. -
    /writeini score.ini $chan $nick 0
    /writeini turns.ini $chan number 1
  HALT }
  if ($readini(Song.ini,$chan,Status) = Off) {
    /msg $chan - Sorry, the Guitar Hero's Script is currently offline for this channel. -
  }
  if ($readini(Song.ini,$chan,Status) = Full) {
    /notice $nick - Theres already a game going at the moment ! Please wait your turn. -
  }
}

on *:TEXT:!ready:#: {
  if ($readini(Song.ini,$chan,Status) = Full) && ($nick == $readini(song.ini,$chan,Player1)) && (%ready [ $+ [ $chan ] ] == current) {
    /msg $chan - $readini(song.ini,$chan,Player1) is ready ! How about you $readini(song.ini,$chan,Player2) ?
    /set %ready [ $+ [ $chan ] ] One
  }
  elseif ($readini(Song.ini,$chan,Status) = Full) && ($nick == $readini(song.ini,$chan,Player2)) && (%ready [ $+ [ $chan ] ] == current) {
    /msg $chan - $readini(song.ini,$chan,Player2) is ready ! How about you $readini(song.ini,$chan,Player1) ?
    /set %ready [ $+ [ $chan ] ] One
  }
  elseif ($readini(Song.ini,$chan,Status) = Full) && ($nick == $readini(song.ini,$chan,Player1)) && (%ready [ $+ [ $chan ] ] == One) {
    /msg $chan - Both players are ready ! Be READY ! -
    /msg $chan - 1 -
    /msg $chan - 2 -
    /msg $chan - 3 -
    /msg $chan - GO ! -
    /set %ready [ $+ [ $chan ] ] Full
    /writeini turns.ini $chan Number 1
    var %rand1 = $rand(1,2)
    var %rand2 = $rand(1,2)
    var %rand3 = $rand(1,2)
    var %rand4 = $rand(1,2)
    var %rand5 = $rand(1,2)
    /set %correctcords [ $+ [ $chan ] ] $iif(%rand1 == 1,1,-) $+ $iif(%rand2 == 1,1,-) $+ $iif(%rand3 == 1,1,-) $+ $iif(%rand4 == 1,1,-) $+ $iif(%rand5 == 1,1,-)
    /msg $chan - $iif(%rand1 == 1,$gh1(),) $iif(%rand2 == 1,$gh2(),) $iif(%rand3 == 1,$gh3(),) $iif(%rand4 == 1,$gh4(),) $iif(%rand5 == 1,$gh5(),) -
  }
  elseif ($readini(Song.ini,$chan,Status) = Full) && ($nick == $readini(song.ini,$chan,Player2)) && (%ready [ $+ [ $chan ] ] == One) {
    /msg $chan - Both players are ready ! Be READY ! -
    /msg $chan - 1 -
    /msg $chan - 2 -
    /msg $chan - 3 -
    /msg $chan - GO ! -
    /set %ready [ $+ [ $chan ] ] Full
    var %rand1 = $rand(1,2)
    var %rand2 = $rand(1,2)
    var %rand3 = $rand(1,2)
    var %rand4 = $rand(1,2)
    var %rand5 = $rand(1,2)
    /set %correctcords [ $+ [ $chan ] ] $iif(%rand1 == 1,1,-) $+ $iif(%rand2 == 1,1,-) $+ $iif(%rand3 == 1,1,-) $+ $iif(%rand4 == 1,1,-) $+ $iif(%rand5 == 1,1,-)
    /msg $chan $$iif(%rand1 == 1,$gh1(),) $iif(%rand2 == 1,$gh2(),) $iif(%rand3 == 1,$gh3(),) $iif(%rand4 == 1,$gh4(),) $iif(%rand5 == 1,$gh5(),)
  }
}

on *:TEXT:*:#: {
  if ($readini(song.ini,$chan,Status) == Full) {
    if (%ready [ $+ [ $chan ] ] == Full) && ($readini(Song.ini,$chan,Status) = Full) {
      if ($1- == %correctcords [ $+ [ $chan ] ]) {
        if ($nick == $readini(song.ini,$chan,Player1)) || ($nick == $readini(song.ini,$chan,Player2)) {
          if ($readini(turns.ini,$chan,Number) < 10) {
            var %rand1 = $rand(1,2)
            var %rand2 = $rand(1,2)
            var %rand3 = $rand(1,2)
            var %rand4 = $rand(1,2)
            var %rand5 = $rand(1,2)
            /set %correctcords [ $+ [ $chan ] ] $iif(%rand1 == 1,1,-) $+ $iif(%rand2 == 1,1,-) $+ $iif(%rand3 == 1,1,-) $+ $iif(%rand4 == 1,1,-) $+ $iif(%rand5 == 1,1,-)
            /msg $chan $iif(%rand1 == 1,$gh1(),) $iif(%rand2 == 1,$gh2(),) $iif(%rand3 == 1,$gh3(),) $iif(%rand4 == 1,$gh4(),) $iif(%rand5 == 1,$gh5(),)
            /writeini score.ini $chan $nick $calc($readini(Score.ini,$chan,$nick) + 1)
            /writeini turns.ini $chan number $calc($readini(turns.ini,$chan,Number) + 1)
          }
          elseif ($readini(turns.ini,$chan,Number) = 10) {
            if ($readini(score.ini,$chan,$readini(song.ini,$chan,Player1)) > $readini(score.ini,$chan,$readini(song.ini,$chan,Player2))) {
              /set %wins $readini(wins.ini,$readini(song.ini,$chan,player1),Wins)
              /msg $chan - $readini(song.ini,$chan,Player1) dominated $readini(song.ini,$chan,Player2) -
              /writeini wins.ini $readini(song.ini,$chan,Player1) Wins $calc(%wins + 1)
              /writeini losses.ini $readini(song.ini,$chan,Player2) Losses $calc($readini(losses.ini,$readini(song.ini,$chan,Player2),Losses) + 1)
              /msg $chan - $readini(song.ini,$chan,Player1) now has $readini(wins.ini, $+ $readini(song.ini,$chan,Player1) $+ ,wins) wins ! -
              /writeini song.ini $chan Status Clear
              /remini song.ini $chan Player1
              /remini song.ini $chan Player2
              /remini score.ini $chan
              /remini turns.ini $chan
              /unset %wins
            }
            elseif ($readini(score.ini,$chan,$readini(song.ini,$chan,Player1)) == $null) {
              /set %wins $readini(wins.ini,$readini(song.ini,$chan,player2),Wins)
              /msg $chan - $readini(song.ini,$chan,Player2) dominated $readini(song.ini,$chan,Player1) -
              /writeini wins.ini $readini(song.ini,$chan,Player2) Wins $calc(%wins + 1)
              /writeini losses.ini $readini(song.ini,$chan,Player1) Losses $calc($readini(losses.ini,$readini(song.ini,$chan,Player1),Losses) + 1)
              /msg $chan - $readini(song.ini,$chan,Player2) now has $readini(wins.ini, $+ $readini(song.ini,$chan,Player2) $+ ,wins) wins ! -
              /writeini song.ini $chan Status Clear
              /remini song.ini $chan Player1
              /remini song.ini $chan Player2
              /remini score.ini $chan
              /remini turns.ini $chan
              /unset %wins
            }
            elseif ($readini(score.ini,$chan,$readini(song.ini,$chan,Player2)) == $null) {
              /set %wins $readini(wins.ini,$readini(song.ini,$chan,player1),Wins)
              /msg $chan - $readini(song.ini,$chan,Player1) dominated $readini(song.ini,$chan,Player2) -
              /writeini wins.ini $readini(song.ini,$chan,Player1) Wins $calc(%wins + 1)
              /writeini losses.ini $readini(song.ini,$chan,Player2) Losses $calc($readini(losses.ini,$readini(song.ini,$chan,Player2),Losses) + 1)
              /msg $chan - $readini(song.ini,$chan,Player1) now has $readini(wins.ini, $+ $readini(song.ini,$chan,Player1) $+ ,wins) wins ! -
              /writeini song.ini $chan Status Clear
              /remini song.ini $chan Player1
              /remini song.ini $chan Player2
              /remini score.ini $chan
              /remini turns.ini $chan
              /unset %wins
            }
            elseif ($readini(score.ini,$chan,$readini(song.ini,$chan,Player2)) > $readini(score.ini,$chan,$readini(song.ini,$chan,Player1))) {
              /set %wins $readini(wins.ini,$readini(song.ini,$chan,player2),Wins)
              /msg $chan - $readini(song.ini,$chan,Player2) dominated $readini(song.ini,$chan,Player1) -
              /writeini wins.ini $readini(song.ini,$chan,Player2) Wins $calc(%wins + 1)
              /writeini losses.ini $readini(song.ini,$chan,Player1) Losses $calc($readini(losses.ini,$readini(song.ini,$chan,Player1),Losses) + 1)
              /msg $chan - $readini(song.ini,$chan,Player2) now has $readini(wins.ini, $+ $readini(song.ini,$chan,player2) $+ ,wins) wins ! -
              /writeini song.ini $chan Status Clear
              /remini song.ini $chan Player1
              /remini song.ini $chan Player2
              /remini score.ini $chan
              /remini turns.ini $chan
              /unset %wins
            }
            elseif ($readini(score.ini,$chan,$readini(song.ini,$chan,Player2)) == $readini(score.ini,$chan,$readini(song.ini,$chan,Player1))) {
              /set %wins1 $readini(wins.ini,$readini(song.ini,$chan,player1),Wins)
              /set %wins2 $readini(wins.ini,$readini(song.ini,$chan,player2),Wins)
              /msg $chan - Both of you rocked a lot, it was a tie. -
              /writeini wins.ini $readini(song.ini,$chan,Player1) Wins $calc(%wins1 + 1)
              /writeini wins.ini $readini(song.ini,$chan,Player2) Wins $calc(%wins2 + 1)
              /msg $chan - $readini(song.ini,$chan,Player2) now has $readini(wins.ini,$+ $readini(Song.ini,$chan,Player2) $+ ,wins) wins ! -
              /msg $chan - $readini(song.ini,$chan,Player1) now has $readini(wins.ini,$+ $readini(Song.ini,$chan,Player1) $+ ,wins) wins ! -
              /writeini song.ini $chan Status Clear
              /remini song.ini $chan Player1
              /remini song.ini $chan Player2
              /remini score.ini $chan
              /remini turns.ini $chan
              /unset %wins1
              /unset %wins2
            }
          }
        }
      }
    }
  }
}
on *:PART:#: {
  if ($readini(song.ini,$chan,Status) = Clear) || ($readini(Song.ini,$chan,Status) = Off) { halt }
  if ($readini(Song.ini,$chan,Status) = Full) {
    if ($nick == $readini(song.ini,$chan,Player1) || ($nick == $readini(song.ini,$chan,Player2) || ($nick == $me) {
      /writeini song.ini $chan Status Clear
      /msg $chan - Song stopped by $nick -
      /remini turns.ini $chan
      /remini score.ini $chan
      /unset %ready [ $+ [ $chan ] ]
      /unset %correctcords [ $+ [ $chan ] ]
    }
  }
}