All pastes #467233 Raw Edit

Miscellany

public text v1 · immutable
·published 2007-05-02 12:14 UTC
rendered paste body
; Uhh its 6am i havent slept 
; and i got bored
; anyway DDR BOT YEAH by ike_x


on 1:LOAD:{
  ddr.setmoves
  echo -a DDR script by ike_x loaded succesfully
}

on *:text:@ddr *:#:{
  if (%ddr.ingame != true) {
    if ($mid($$2,1,1) == @) {
      msg $chan Fake player $$2 created.
    }
    set %ddr.player1 $nick
    set %ddr.player2 $$2
    set %ddr.chan $chan
    set %ddr.ingame true
    set %ddr.progression 0
    msg $chan 7DDR bot by ikex12 
    ddr.game %ddr.player1 %ddr.player2 $chan
  } 
}

alias ddr.game {
  msg $$3 $$1 4vs $$2
  timerddr.timer 0 10 ddr.round $$1 $$2 $$3
}

alias -l ddr.setmoves {
  ; cbf remembering codes
  set %ddr.up $chr(94)
  set %ddr.down v
  set %ddr.left $chr(60)
  set %ddr.right $chr(62)
}

alias -l ddr.endgame {
  unset %ddr.player1
  unset %ddr.player2
  unset %ddr.chan
  unset %ddr.move
  unset %ddr.ingame
  unset %ddr.doneroundp1
  unset %ddr.doneroundp2
  unset %ddr.progression
}

; Random Gen pretty basic. -ikex.
alias -l ddr.randmove {
  var %ddr.randnum $rand(1,4)
  var %ddr.randmove 
  if (%ddr.randnum == 1) {
    %ddr.randmove = %ddr.up
  }
  if (%ddr.randnum == 2) {
    %ddr.randmove = %ddr.down
  }
  if (%ddr.randnum == 3) {
    %ddr.randmove = %ddr.left
  }
  if (%ddr.randnum == 4) {
    %ddr.randmove = %ddr.right
  }
  if (%ddr.randnum == 5) {
    %ddr.randmove = e
  }
  return %ddr.randmove
}

alias ddr.round {
  if (%ddr.doneroundp1 != true) {
    if ($mid($$2,1,1) != @) {
      msg $$3 WINNER!: $$2 beats $$1 and lasted %ddr.progression rounds.
      timerddr.timer off
      ddr.endgame 
      break
    }
    if (%ddr.doneroundp2 == true) {
      msg $$3 WINNER!: $$2 beats $$1 and lasted %ddr.progression rounds.
      timerddr.timer off
      ddr.endgame 
      break
    }
  }
  if (%ddr.doneroundp2 != true) { 
    if (%ddr.doneroundp1 == true) {
      if ($mid($$2,1,1) != @) {
        msg $$3 WINNER!: $$1 beats $$2 and lasted %ddr.progression rounds.
        timerddr.timer off
        ddr.endgame
      }
    }
  }
  var %ddr.inround.channel $3
  set %ddr.progression %ddr.progression + 1 
  set %ddr.move 
  var %z 0
  while (%z < %ddr.progression) {
    %ddr.move = %ddr.move $+ $ddr.randmove
    %z = %z + 1
  }
  msg %ddr.inround.channel %ddr.move
}

on *:text:*:%ddr.chan:{
  if (%ddr.ingame == true) {
    if ($nick == %ddr.player1) {
      if ($$1 != %ddr.move) {
        msg $chan %ddr.player2 beats %ddr.player1 and lasted %ddr.progression rounds.
        timerddr.timer off
        ddr.endgame
      } 
      if ($$1 == %ddr.move) {
        set %ddr.doneroundp1 true
      }
    }
    if ($nick == %ddr.player2) {
      if ($$1 != %ddr.move) {
        msg $chan WINNER!: %ddr.player1 beats %ddr.player2 and lasted %ddr.progression rounds.
        timerddr.timer off
        ddr.endgame
      }
      if ($$1 == %ddr.move) {
        set %ddr.doneroundp2 true 
      } 
    }
  }
}