All pastes #909515 Raw Edit

Miscellany

public text v1 · immutable
·published 2008-02-19 05:59 UTC
rendered paste body
; click me
alias animate {
  window -pfd @a 1 1 200 200
  anim
}
alias anim {
  drawrect -f @a 1 1 0 0 200 200
  var %x $iif($1,$1,$r(1,100)),%y $iif($2,$2,$r(1,100)),%h ),%msg $iif($3,$3-,$token(Missed Me!-Can't Get Me!-Too Slow!-Try Again!,$r(1,4),45))
  while ($inrect($mouse.x,$mouse.y,$calc(%x - 5),$calc(%y - 5),110,40)) var %x = $r(1,100),%y = $r(1,100)
  if (!$v1) {
    drawrect -f @a 15 1 %x %y 100 30
    drawrect @a 14 2 %x %y 100 30
    drawtext @a 1 verdana 15 $calc(%x + 15) $calc(%y + 5) Click Me!
  }
  if ($mouse.key & 1) {
    if ($inrect($mouse.x,$mouse.y,$calc(%x - 5),$calc(%y - 5),110,40)) {
      noop $input(Screw you hippy $+ $chr(44) I'm going home,o,Fine $+ $chr(44) you win : $+ $chr(40))
      window -c @a
      .timeranim off
      return
    }
  }
  elseif ($mouse.key & 16) var %msg = Right clicking is for noobs
  else unset %msg

  if (%msg) drawtext @a 4 verdana 10 $calc($mouse.x + 10) $mouse.y %msg
  .timeranim -h 1 10 anim %x %y %msg
}
on *:close:@a: {
  .timeranim off
}


; spiinning thingy
alias animate {
  window -pfd @a 1 1 200 200
  anim
}
alias anim {
  drawrect -fen @a 1 1 10 10 180 180
  drawrect -en @a 0 1 10 10 180 180
  drawfill -n @a 14 0 1 1

  var %initial $calc($1 $iif($inellipse($mouse.x,$mouse.y,10,10,180,180),+,-) 1), %deg 0
  while (%deg <= 360) {
    var %ø %initial + %deg,%ø2 %ø + 5
    drawline -n @a 0 1 100 100 $calc(100 + 90 * $sin(%ø).deg) $calc(100 + 90 * $cos(%ø).deg)
    drawfill -n @a $iif(1 // %deg,3,4) 0 $calc(100 + 50 * $sin(%ø2).deg) $calc(100 + 50 * $cos(%ø2).deg)
    inc %deg 22.5
  }

  drawdot @a
  .timeranim -m 1 10 anim %initial
}
on *:CLOSE:@a: {
  .timeranim off
}


; bouncey ball thingys
alias animate {
  window -pfd @a 1 1 200 200
  anim
}
alias anim {
  if ($1X) var %x $1,%y $2,%v $3,%h $4,%g $5,%x2 $6,%y2 $7,%v2 $8,%h2 $9,%g2 $10,%x3 $11,%y3 $12,%v3 $13,%h3 $14,%g3 $15
  else var %x 100,%y 100,%v +,%h +,%g 1,%x2 50,%y2 50,%v2 -,%h2 -,%g2 3,%x3 150,%y3 150,%v3 -,%h3 +,%g3 2

  drawrect -f @a 1 1 0 0 200 200
  drawdot @a 4 15 %x %y
  drawdot @a 3 15 %x2 %y2
  drawdot @a 7 15 %x3 %y3

  %x = %x %h %g
  %y = %y %v $calc(1 / %g)
  if (%x !isnum 15-185) var %h $iif(%x < 15,+,-),%g $r(1,3) / $r(1,3)
  if (%y !isnum 15-185) var %v $iif(%y < 15,+,-),%g $r(1,3) / $r(1,3)

  %x2 = %x2 %h2 %g2
  %y2 = %y2 %v2 $calc(1 / %g2)
  if (%x2 !isnum 15-185) var %h2 $iif(%x2 < 15,+,-),%g2 $r(1,3) / $r(1,3)
  if (%y2 !isnum 15-185) var %v2 $iif(%y2 < 15,+,-),%g2 $r(1,3) / $r(1,3)

  %x3 = %x3 %h3 %g3
  %y3 = %y3 %v3 $calc(1 / %g3)
  if (%x3 !isnum 15-185) var %h3 $iif(%x3 < 15,+,-),%g3 $r(1,3) / $r(1,3)
  if (%y3 !isnum 15-185) var %v3 $iif(%y3 < 15,+,-),%g3 $r(1,3) / $r(1,3)

  .timeranim -m 1 10 anim %x %y %v %h %g %x2 %y2 %v2 %h2 %g2 %x3 %y3 %v3 %h3 %g3
}
on *:CLOSE:@a: {
  .timeranim off
}