Dot Field

By BlueThen on Mar 27, 2008

Sort of like my last collision script, except not really collisions!

My main intentions were to give the "illusion" of 3d, like in my Star script. Personally, it doesn't work out for me, but you might like it... I hope. :)

Thankfully, this script wasn't as stressful as the last, since I actually got know what to do this time. :D (Practice makes perfect!)

Hey guys, hope you don't mind me advertising, but I'm sort of desperate. There's more irc scripts like this at bluethen.com, I hope you come by. :)

Image

;Dot Field 1.0
;Made by BlueThen on March 27, 2008.
;To install, paste this code into your remotes, then
;type /dots, or right click the channel or status and click "Dot Field"
;BlueThen.com for more. :D
menu channel,status {
  Dot Field: Dots
}
alias Dots {
  window -poCzdk0 +tnbL @Dot -1 -1 400 400
  window -poChzdk0 +tnbL @Dot.Buf -1 -1 800 800
  set %Dot.clo n
  Dot.spawn
}
alias -l Dot.spawn {
  set %Dot.tot 30
  %Dot.x = 1
  while (%Dot.x < %Dot.tot) {
    if ($hget(%Dot.x $+ x ) == $null) {
      hmake %Dot.x $+ x 100
    }
    hadd %Dot.x $+ x x $rand(100,700)
    hadd %Dot.x $+ x y $rand(100,700)
    hadd %Dot.x $+ x xd $rand(1,2)
    hadd %Dot.x $+ x yd $rand(1,2)
    inc %Dot.x 1
  }
  Dot.frame
}
alias -l Dot.frame {
  if (%Dot.clo != y) {
    %Dot.x = 1
    while (%Dot.x < %Dot.tot) {
      if (($hget(%Dot.x $+ x , x) > 750) && ($hget(%Dot.x $+ x ,xd) == 2)) {
        hadd %Dot.x $+ x xd 1
      }
      if (($hget(%Dot.x $+ x , x) < 100) && ($hget(%Dot.x $+ x ,xd) == 1)) {
        hadd %Dot.x $+ x xd 2
      }
      if ($hget(%Dot.x $+ x , y) > 750) {
        hadd %Dot.x $+ x yd 1
      }
      if ($hget(%Dot.x $+ x , y) < 100) {
        hadd %Dot.x $+ x yd 2
      }
      if ($hget(%Dot.x $+ x , xd) == 1) {
        hdec %Dot.x $+ x x $calc( %Dot.x *0.7)
      }
      else {
        hinc %Dot.x $+ x x $calc( %Dot.x *0.7)
      }
      if ($hget(%Dot.x $+ x , yd) == 1) {
        hdec %Dot.x $+ x y $calc( %Dot.x *0.7)
      }
      else {
        hinc %Dot.x $+ x y $calc( %Dot.x *0.7)
      }
      inc %Dot.x
    }
    Dot.draw
    .timer -ho 1 0 Dot.frame
  }
}
alias Dot.draw {
  if (%Dot.clo != y) {
    %Dot.x = 1
    clear @Dot.buf
    drawtext @Dot.buf 2 Tahoma 40 53 47 Made By BlueThen
    drawtext @Dot.buf 12 Tahoma 40 50 50 Made By BlueThen
    drawtext @Dot.buf 2 Tahoma 40 53 147 BlueThen.com 
    drawtext @Dot.buf 12 Tahoma 40 50 150 BlueThen.com 
    while (%Dot.x < %Dot.tot) {
      set %Dot.col $calc( %Dot.x *8.5)
      drawdot -r @Dot.buf $rgb(%Dot.col,%Dot.col,%Dot.col) %Dot.x $hget(%Dot.x $+ x ,x) $hget(%Dot.x $+ x ,y)
      inc %Dot.x
    }
    drawcopy -m @Dot.buf 0 0 800 800 @Dot 0 0 400 400
  }
}
on *:close:@Dot: {
  set %Dot.clo y
  window -c @Dot.buf
}

Comments

Sign in to comment.
Mitchell   -  Apr 28, 2008

What other shapes can you make besides squares and circles? A pretty nice script tho, so I will give it 7/10

 Respond  
EL   -  Mar 28, 2008

LOLOLOLOLOLOLOLOL...*refrains

 Respond  
BlueThen   -  Mar 28, 2008

Haha, would you prefer squares instead? I can arrange that. o.o

 Respond  
napa182   -  Mar 28, 2008

rofl

 Respond  
EL   -  Mar 28, 2008

Lol. You and your DOTS man.Good work again tho i like it,be really neat if they changed size at the same time to.

( (^^^((00^33^AM))^((@napa182))^^^) ) : i tell ya he sure loves playing with balls

Heh thought that was funny we was talkinin about your codes lol.

 Respond  
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.