All pastes #486250 Raw Edit

Someone

public text v1 · immutable
·published 2007-05-13 20:27 UTC
rendered paste body
menu * {
  .cross the street:{
    /new
  }
}
alias new {
  window -pdk0 +fxnbt @Cross
  clear @cross
  /drawdot @cross 03 1000 1 1
  /drawline @cross 15 120 1 132 850 132
  /drawline @cross 15 120 1 347 850 347
  /drawline @cross 8 10 1 132 850 132
  /drawline @cross 8 10 1 347 850 347
  /drawdot @cross 12 20 380 500
  set %.x 380
  set %.y 500
}
menu @cross {
  mouse: echo mouse moved to $mouse.x $mouse.y
  sclick {
    if (%gameover) { 
      /new
    }
  }
}
on *:keydown:@cross:37,38,39,40:{ 
  if (%gameover) { window -c @cross
    //echo -a The game was over nub
    halt
  }
  if ($keyval == 37) {
    $iif(%col,drawreplace -r @cross $color(12) %col %.x %.y, drawreplace @cross 12 03 %.x %.y)
    Set %.x $calc(%x - 15) 
    set %col $getdot(@cross,%.x,%.y)
    drawdot @cross 12 20 %.x %.y
  }
  if ($keyval == 38) {
    $iif(%col,drawreplace -r @cross $color(12) %col, drawreplace @cross 12 03)
    set %.y $calc(%.y - 15)
    set %col $getdot(@cross,%.x,%.y)
    drawdot @cross 12 20 %.x %.y
  }
  if ($keyval == 39) { 
    $iif(%col,drawreplace -r @cross $color(12) %col, drawreplace @cross 12 03)
    set %.x $calc(%x + 15)
    set %col $getdot(@cross,%.x,%.y)
    drawdot @cross 12 20 %.x %.y
  }
  if ($keyval == 40) {
    $iif(%col,drawreplace -r @cross $color(12) %col, drawreplace @cross 12 03)
    set %.y $calc(%.y + 15) 
    set %col $getdot(@cross,%.x,%.y)
    drawdot @cross 12 20 %.x %.y
  }
  if (%col == 225) {  
    /drawtext @cross 4 370 250 20 20 Game over, Click to play again!
    set %gameover yes
    unset %col
  }
}
on *:close:@cross:{
  unset %col
  unset %gameover
}