Defender 1.11

By BlueThen on Jun 02, 2008

Defender is a overview Third Person Shooter where you have to avoid the zombies (the green dots), and kill them all. It may get a bit laggy, but oh well, this is liek my first game.

Controls:
Up: W or the up arrow
Down: S or the down arrow
Left: A or the left arrow
Right: D or the right arrow
Quality: Q
Shoot: Left mouse click.
Radar On/Off: R
Pause: P
Options: Esc (Escape)
New Game: N

Latest Updates (oldest to newest):
Added a Frag Counter.
You now can't go off screen.
Changed the background a bit.
The blood is a lot more realistic now.
The zombies now "splat"
Inter-racial zombies!
Added a radar.
MAJOR fix in lag. Now it doesn't lag as much further into the game.
FPS Syncronization.
Radar can now be removed/readded with "R"
Timer added.
Gun is now automatic, you can now just hold down left mouse button to shoot.
Added a Pause option, "P".
Added options
Added a Pause Option to the Option Dialog and Game (N)

Image

;mIRC Defender 1.11
;Made by BlueThen on June 1, 2008. 
;Last updated on June 4, 2008. 
;To install, paste this snippet into your remotes (alt + r) 
;then type /defender or right click the channel or status and click Defender. 
;Move using the arrow keys or WASD, then shoot the green zombies (dots) using your mouse. 
;Try to keep the zombies from touching you. Press "Q" to change the quality. 
menu channel,status { 
  Defender: { defender } 
} 
alias defender { 
  window -paoCzdk0 +tnbL @Defender -1 -1 400 400 | window -paohCzdk0 +tnbL @Def.ol -1 -1 800 800 
  window -paohCzdk0 +tnbL @Def.map -1 -1 800 800 | def.init 
} 
alias -l def.init { 
  set %def.pause n | set %def.blood y | set %def.espee 15 | hadd -m DefCo T1 8355711 | hadd -m DefCo T2 13816530
  hadd -m DefCo B 100 | hadd -m DefCo M 8323072 | hadd -m DefCo Z 25600
  set %def.time 0 | set %def.died n | set %def.radar y | set %def.c n | set %def.e 0 | set %def.fps 0 
  .timerdef -ho 0 100 inc %def.time | set %def.fcounter 0 | set %def.ftick $ticks 
  hadd -m Def Sx 400 | hadd -m Def Sy 400 | hadd -m Def Mx 400 | hadd -m Def My 400 | hadd -m Def Mh 100 
  %def.y = 0 | %def.x = 0 | set %def.q H | set %def.bul 0 | set %def.k 0 
  while (%def.x < 20) {    
    drawrect -fr @def.map $iif($calc((%def.x + %def.y) / 2) == $int($calc((%def.x + %def.y) / 2)), $hget(defco,T1) , $hget(Defco,T2)) 1 $calc(%def.x * 40) $calc(%def.y * 40) 40 40 
    inc %def.x 
    if ((%def.x >= 20) && (%def.y < 20)) { %def.x = 0 | inc %def.y } 
  } 
  set %def.me 1 | set %def.me2 1 | set %def.tem 0 | set %def.tem2 0 
  drawrot -c @def.map 70 | set %def.chan 100 
  drawcopy @def.map 0 0 800 800 @def.map -200 -200 1200 1200 | def.frame 
} 
alias -l def.frame { 
  if (%def.c != y) { 
    inc %def.fcounter | drawcopy @def.map 0 0 800 800 @def.ol 0 0 800 800 | set %def.ltime $calc($ticks - %def.oticks) 
    if ($calc($ticks - %def.ftick) >= 1000) { set %def.fps %def.fcounter | set %def.fcounter 0 | set %def.ftick $ticks }      
    if (%def.vy) hinc Def My $calc(%def.vy /100 * %def.ltime) 
    if (%def.vx) hinc Def Mx $calc(%def.vx /100 * %def.ltime) 
    if ($r(1, %def.chan) == 1) def.spawn | set %def.xy %def.e 
    if ((%def.chan > 2) && ($r(1,50) == 1)) dec %def.chan 
    set %def.oticks $ticks | %def.z = %def.bul 
    while (%def.z > $calc(%def.me2 + 1)) { 
      if ($hget(bulletos, %def.z) != 0) { 
        drawline @def.ol 8 4 $hget(bulletx,%def.z) $hget(bullety,%def.z) $calc($hget(bulletx,%def.z) + ((60/100 * %def.ltime) * $cos($hget(bulleta, %def.z)).deg)) $calc($hget(bullety,%def.z) + ((60/100 * %def.ltime) * $sin($calc($hget(bulleta, %def.z) + 180)).deg)) 
        hadd -m bulletx %def.z $calc($hget(bulletx,%def.z) + ((60 /100 * %def.ltime) * $cos($hget(bulleta, %def.z)).deg)) 
        hadd -m bullety %def.z $calc($hget(bullety,%def.z) + ((60 /100 * %def.ltime) * $sin($calc($hget(bulleta, %def.z) + 180)).deg)) 
        if (($hget(bulletx, %def.z) > 800) || ($hget(bullety, %def.z) > 800)) hadd -m BulletOS %def.z 0 
      } 
      else set %def.tem2 %def.z | dec %def.z 
    } 
    set %def.me2 $calc(%def.tem2 + 1) 
    while (%def.xy > $calc(%def.me - 1)) { 
      if ($hget(def.stat,%def.xy) != 0) { 
        drawdot -r @def.ol $hget(def.c, %def.xy) 20 $hget(def.ex, %def.xy) $hget(def.ey, %def.xy) 
        hadd def.ex %def.xy $calc($hget(def.ex, %def.xy) +((%def.espee /100 * %def.ltime) * $cos($calc(180 + $def.ga($hget(def,mx),$hget(def,my),$hget(def.ex, %def.xy),$hget(def.ey, %def.xy)))).deg)) 
        hadd def.ey %def.xy $calc($hget(def.ey, %def.xy) +((%def.espee /100 * %def.ltime) * $sin($def.ga($hget(def,mx),$hget(def,my),$hget(def.ex, %def.xy),$hget(def.ey, %def.xy))).deg)) | %def.i = %def.bul 
        while (%def.i > $calc(%def.me2 - 1)) { 
          if ($hget(bulletos, %def.z) != 0) { 
            if ($def.dist($hget(bulletx, %def.i),$hget(bullety, %def.i), $hget(def.ex, %def.xy), $hget(def.ey, %def.xy)) < 20) { 
              hadd -m def.eh %def.xy $calc($hget(def.eh, %def.xy) - 20) 
              if (%def.blood == y) {
                %def.p = 5 
                while (%def.p) { 
                  %def.tempc = $rgb($r($iif($calc($gettok($rgb($hget(defco,B)),1,44) - 25) > 0, $v1, $v2),$iif($calc($gettok($rgb($hget(defco,B)),1,44) + 25) < 255, $v1, $v2)),$r($iif($calc($gettok($rgb($hget(defco,B)),2,44) - 25) > 0, $v1, $v2),$iif($calc($gettok($rgb($hget(defco,B)),2,44) + 25) < 255, $v1, $v2)),$r($iif($calc($gettok($rgb($hget(defco,B)),3,44) - 25) > 0, $v1, $v2),$iif($calc($gettok($rgb($hget(defco,B)),3,44) + 25) < 255, $v1, $v2)))
                  drawline -r @def.map %def.tempc $r(3,10) $calc($hget(def.ex, %def.xy) $iif($r(1,2) == 1, -, +) $r(1,10)) $calc($hget(def.ey, %def.xy) $iif($r(1,2) == 1, -, +) $r(1,10)) $calc($hget(def.ex, %def.xy) + ($r(30,70) * $cos($calc($hget(bulleta, %def.i) $iif($r(1,2) == 1, -, +) $r(1,20))).deg)) $calc($hget(def.ey, %def.xy) + ($r(30,70) * $sin($calc(($hget(bulleta, %def.i) $iif($r(1,2) == 1, -, +) $r(1,20)) + 180)).deg)) 
                  if ($r(1,2) == 1) drawdot -r @def.map %def.tempc $r(3,9) $calc($hget(def.ex, %def.xy) $iif($r(1,2) == 1, -, +) $r(1,20)) $calc($hget(def.ey, %def.xy) $iif($r(1,2) == 1, -, +) $r(1,20)) 
                  dec %def.p 
                } 
              }
              if (($hget(def.eh, %def.xy) < 0) && ($hget(def.stat, %def.xy) != 0)) { hadd -m def.stat %def.xy 0 
                inc %def.k 
                if (%def.blood == y) {
                  %def.abc = 20 
                  while (%def.abc) { 
                    %def.tempc = $rgb($r($iif($calc($gettok($rgb($hget(defco,B)),1,44) - 25) > 0, $v1, $v2),$iif($calc($gettok($rgb($hget(defco,B)),1,44) + 25) < 255, $v1, $v2)),$r($iif($calc($gettok($rgb($hget(defco,B)),2,44) - 25) > 0, $v1, $v2),$iif($calc($gettok($rgb($hget(defco,B)),2,44) + 25) < 255, $v1, $v2)),$r($iif($calc($gettok($rgb($hget(defco,B)),3,44) - 25) > 0, $v1, $v2),$iif($calc($gettok($rgb($hget(defco,B)),3,44) + 25) < 255, $v1, $v2)))
                    drawline -r @def.map %def.tempc 5 $calc($hget(def.ex, %def.xy) $iif($r(1,2) == 1, -, +) $r(1,10)) $calc($hget(def.ey, %def.xy) $iif($r(1,2) == 1, -, +) $r(1,10)) $calc($hget(def.ex, %def.xy) $iif($r(1,2) == 1, -, +) $r(10,50)) $calc($hget(def.ey, %def.xy) $iif($r(1,2) == 1, -, +) $r(10,50)) 
                    if ($r(1,2) == 1) drawdot -r @def.map %def.tempc $r(3,6) $calc($hget(def.ex, %def.xy) $iif($r(1,2) == 1, -, +) $r(1,60)) $calc($hget(def.ey, %def.xy) $iif($r(1,2) == 1, -, +) $r(1,60)) 
                    dec %def.abc 
                  } 
                }
              }  
            } 
          } 
          dec %def.i 
        } 
        if ($def.dist($hget(def.ex, %def.xy),$hget(def.ey, %def.xy),$hget(def,mx),$hget(def,my)) < 36) { 
          hadd def mh $calc($hget(def,mh) -1) 
        } 
      } 
      else { 
        set %def.tem %def.xy 
      } 
      dec %def.xy  
    } 
    set %def.me $calc(%def.xy + 1) 
    hadd Def Sx $calc($hget(def,sx) + (($hget(def,mx) - $hget(def,sx))/20)) 
    hadd Def Sy $calc($hget(def,sy) + (($hget(def,my) - $hget(def,sy))/20)) 
    if ($hget(def,sx) < 300) hadd def sx 300 | if ($hget(def,sy) < 300) hadd def sy 300 
    if ($hget(def,sx) > 500) hadd def sx 500 | if ($hget(def,sy) > 450) hadd def sy 450 
    if ($hget(def,mx) > 780) hadd -m def mx 780 
    if ($hget(def,mx) < 20) hadd -m def mx 20 
    if ($hget(def,my) > 720) hadd -m def my 720 
    if ($hget(def,my) < 20) hadd -m def my 20 
    drawdot -r @def.ol $hget(defco,m) 20 $hget(def,mx) $hget(def,my) 
    if (%def.mx) { 
      set %def.mox $calc($hget(def,sx) - ((200 - $mouse.x) * 1.3333)) 
      set %def.moy $calc($hget(def,sy) - ((200 - $mouse.y) * 1.3333)) 
    } 
    if (%def.radar == y) drawcopy $iif(%def.q == h, -m, $null) @def.ol -1 -1 720 720 @def.ol $calc($hget(def,sx) +150) $calc($hget(def,sy) -250) 100 100 
    drawtext @def.ol 2 Tahoma 30 $calc($hget(def,sx) -250) $calc($hget(def,sy) +200) Frags: %def.k 
    drawtext @def.ol 12 Tahoma 20 $calc($hget(def,sx) -250) $calc($hget(def,sy) -270) Made by BlueThen 
    drawtext @def.ol 12 Tahoma 20 $calc($hget(def,sx) -250) $calc($hget(def,sy) -250) BlueThen.com 
    drawtext @def.ol 4 Tahoma 20 $calc($hget(def,sx) -50) $calc($hget(def,sy) -270) FPS: %def.fps 
    if ($hget(def,mh) < 0) { drawtext @def.ol 4 Tahoma 30 $calc($hget(def,sx) -208) $calc($hget(def,sy)) Press N to start a new game. | drawtext @def.ol 4 Tahoma 50 $calc($hget(def,sx) -142.25) $calc($hget(def,sy) -100) Gameover | .timerdef off | hadd -m def mh 0 | set %def.died y } 
    drawtext @def.ol 4 Tahoma 30 $calc($hget(def,sx) +100) $calc($hget(def,sy) +200) Health: $hget(def,mh) 
    drawtext @def.ol 1 Tahoma 20 $calc($hget(def,sx) -250) $calc($hget(def,sy) +170) Time: $calc(%def.time * 0.1) 
    drawcopy $iif(%def.q == h, -m, $null) @def.ol $calc($hget(def,sx) -300) $calc($hget(def,sy) -300) 600 600 @defender 0 0 400 400 
    if (%def.died != y) && (%def.pause != y) .timerframe -ho 1 0 def.frame   
  } 
  else unset %def.c 
} 
menu @defender { 
  sclick: { def.shoot | .timerdefshoot -h 0 200 def.shoot } 
  uclick: { .timerdefshoot off }
  mouse: { set %def.mx y } 
  leave: { unset %def.mx } 
} 
alias -l def.shoot { 
  inc %def.bul | hadd -m Bulletx %def.bul $hget(def,mx) | hadd -m Bullety %def.bul $hgeT(def,my) 
  hadd -m Bulleta %def.bul $def.ga($hget(def,mx),$hget(def,my),%def.mox,%def.moy) | hadd -m BulletOS %def.bul 1 
} 
alias -l def.spawn { 
  inc %def.e | %def.r = $r(1,4) | if (%def.r == 1) { hadd -m Def.ex %def.e 0 | hadd -m Def.ey %def.e $r(1,800) } 
  elseif (%def.r == 2) { hadd -m Def.ex %def.e $r(1,800) | hadd -m Def.ey %def.e 0 } 
  elseif (%def.r == 3) { hadd -m Def.ex %def.e $r(1,800) | hadd -m Def.ey %def.e 800 } 
  elseif (%def.r == 4) { hadd -m Def.ex %def.e 800 | hadd -m Def.ey %def.e $r(1,800) } 
  hadd -m def.c %def.e $rgb($r($iif($calc($gettok($rgb($hget(defco,Z)),1,44) - 50) > 0, $v1, $v2),$iif($calc($gettok($rgb($hget(defco,Z)),1,44) + 50) < 255, $v1, $v2)),$r($iif($calc($gettok($rgb($hget(defco,Z)),2,44) - 50) > 0, $v1, $v2),$iif($calc($gettok($rgb($hget(defco,Z)),2,44) + 50) < 255, $v1, $v2)),$r($iif($calc($gettok($rgb($hget(defco,Z)),3,44) - 50) > 0, $v1, $v2),$iif($calc($gettok($rgb($hget(defco,Z)),3,44) + 50) < 255, $v1, $v2)))
  hadd -m def.stat %def.e 1 | hadd -m Def.eh %def.e 100  
} 
on *:close:@defender: { 
  window -c @def.ol | window -c @def.map | set %def.c y | .timerdef off 
  unset %def.blood %def.tempc %def.tempb %def.tempr %def.tempq %def.radar %def.pause %def.espee %def.died %def.y %def.time %def.x %def.me %def.tem %def.tem2 %def.me2 %def.vy %def.vx %def.k %def.fps %def.p %def.abc %def.fcounter %def.chan %def.ftick %def.oticks %def.ltime %def.e %def.xy %def.r %def.mox %def.moy %def.lmx %def.lmy %def.bul %def.z %def.i %def.q %def.mx 
  if ($dialog(def.opt)) dialog -x def.opt | if ($dialog(def.ng)) dialog -x def.ng | if ($window(@def.col)) window -c @def.col
} 
on *:KEYDOWN:@defender:*: { 
  if ($keyval == 27) { dialog -m def.opt def.opt | dialog -s def.opt 0 0 316 253 }
  if (($keyval == 38) || ($keyval == 87)) set %def.vy -25 
  if (($keyval == 37) || ($keyval == 65)) set %def.vx -25 
  if (($keyval == 39) || ($keyval == 68)) set %def.vx 25 
  if (($keyval == 40) || ($keyval == 83)) set %def.vy 25 
  if ($keyval == 81) set %def.q $iif(%def.q == L, H, $v2) 
  if ($keyval == 82) set %def.radar $iif(%def.radar == Y, N, $v2) 
  if ($keyval == 80) def.pause
  if ($keyval == 78) { dialog -m def.ng def.ng | dialog -s def.ng 0 0 201 80 | if (%def.pause != y) def.pause }
} 
dialog def.ng {
  title "Defender: New Game"
  size -1 -1 201 80
  option pixels notheme
  text "Are you sure you want to start a new game?", 1, 10 8 180 32, center
  button "Yes", 2, 125 48 65 25, ok
  button "No", 3, 10 48 65 25, cancel default
}
on *:dialog:def.ng:sclick:2: { if ($dialog(def.opt)) dialog -x def.opt | if (%def.pause == y) def.pause | def.init }
alias -l def.pause {
  if (%def.died != y) { 
    set %def.espee 0 | set %def.pause $iif(%def.pause == Y, N, $v2) 
    if (%def.pause == y) { 
      .timerframe off | .timerdef off | unset %def.vy %def.vx 
      drawtext @defender 4 Tahoma 50 120 100 Paused 
    } 
    else {  def.frame | .timerdef -ho 0 100 inc %def.time | set %def.espee 15 }
  } 
}
on *:KEYUP:@defender:*: { 
  if (($keyval == 38) || ($keyval == 87)) unset %def.vy 
  if (($keyval == 37) || ($keyval == 65)) unset %def.vx 
  if (($keyval == 39) || ($keyval == 68)) unset %def.vx 
  if (($keyval == 40) || ($keyval == 83)) unset %def.vy 
} 
alias -l def.dist return $sqrt($calc(($3 - $1)^2 + ($4 - $2)^2)) 
alias -l def.ga { 
  %p1.x = $1 | %p1.y = $2 | %p2.x = $3 | %p2.y = $4 | %p3.x = %p2.x | %p3.y = %p1.y | %opposite = $sqrt($calc((%p2.x - %p3.x)^2 + (%p2.y - %p3.y)^2)) 
  %hypotenuse = $sqrt($calc((%p2.x - %p1.x)^2 + (%p2.y - %p1.y)^2)) | %angle = $asin($calc( %opposite / %hypotenuse )).deg 
  if (%p1.y < %p2.y) %angle = $calc(360 - %angle) | if ((%p1.x > %p2.x) && (%p1.y > %p2.y)) %angle = $calc(180 - %angle) 
  elseif ((%p1.x > %p2.x) && (%p1.y < %p2.y)) %angle = $calc(180 +(360 - %angle)) | return %angle 
}
dialog def.opt {
  title "Defender Options"
  size -1 -1 316 253
  option pixels notheme
  text "Colors", 1, 17 9 43 17
  list 2, 14 31 90 100, size
  scroll "", 3, 118 31 100 16, horizontal top range 1 255
  scroll "", 4, 118 74 100 16, horizontal top range 1 255
  scroll "", 5, 118 113 100 16, horizontal top range 1 255
  icon 6, 232 31 70 100
  text "Red", 7, 118 9 100 17
  text "Green", 8, 118 56 100 17
  text "Blue", 9, 118 95 100 17
  text "Quality:", 10, 16 142 75 17
  check "High", 11, 16 166 75 17
  check "Low", 12, 16 196 75 17
  text "Radar:", 13, 121 142 75 17
  check "On", 14, 121 166 75 17
  check "Off", 15, 121 196 75 17
  text "Blood:", 16, 226 143 75 17
  check "On", 17, 226 166 75 17
  check "Off", 18, 226 196 75 17
  button "Save", 19, 236 225 65 25, ok
  button "Cancel", 20, 14 225 65 25, cancel
  button "New Game", 21, 121 225 65 25
}
on *:dialog:def.opt:sclick:21: { dialog -m def.ng def.ng | dialog -s def.ng 0 0 201 80 }
on *:dialog:def.opt:sclick:19: {
  hadd -m defco t1 $hget(tdefco,t1) | hadd -m defco t2 $hget(tdefco,t2)
  hadd -m defco b $hget(tdefco,b) | hadd -m defco m $hget(tdefco,m)
  hadd -m defco z $hget(tdefco,z) | set %def.q %def.tempq | set %def.blood %def.tempb
  set %def.radar %def.tempr | set %def.x 0 | set %def.y 0
  while (%def.x < 20) {    
    drawrect -fr @def.map $iif($calc((%def.x + %def.y) / 2) == $int($calc((%def.x + %def.y) / 2)), $hget(defco,t1) , $hget(defco,t2)) 1 $calc(%def.x * 40) $calc(%def.y * 40) 40 40 

    inc %def.x | if ((%def.x >= 20) && (%def.y < 20)) { %def.x = 0 | inc %def.y } 
  } 
  drawrot -c @def.map 70 | drawcopy @def.map 0 0 800 800 @def.map -200 -200 1200 1200
}
on *:dialog:def.opt:close:0: { window -c @def.col | if (%def.pause == y) def.pause }
on *:dialog:def.opt:init:0: {
  hadd -m tdefco t1 $hget(defco,t1) | hadd -m tdefco t2 $hget(defco,t2)
  hadd -m tdefco b $hget(defco,b) | hadd -m tdefco m $hget(defco,m)
  hadd -m tdefco z $hget(defco,z) | if (%def.pause != y) def.pause
  did -a def.opt 2 Tile 1 | did -a def.opt 2 Tile 2 | did -a def.opt 2 Blood | did -a def.opt 2 Main
  did -a def.opt 2 Zombies | window -paohCzdk0 +tndL @Def.col -1 -1 70 100
  drawfill -r @def.col 0 0 1 1 | drawsave @def.col deftemp.bmp
  did -g def.opt 6 deftemp.bmp | did -ra def.opt 7 Red: $gettok($rgb($hget(defco,t1)),1,44)
  did -ra def.opt 8 Green: $gettok($rgb($hget(defco,t1)),2,44) | did -ra def.opt 9 Blue: $gettok($rgb($hget(defco,t1)),3,44)
  did -c def.opt 3 $gettok($rgb($hget(tdefco,t1)),1,44) |  did -c def.opt 4 $gettok($rgb($hget(tdefco,t1)),2,44)
  did -c def.opt 2 1 | did -c def.opt 5 $gettok($rgb($hget(tdefco,t1)),3,44)
  drawfill -r @def.col $rgb($did(3).sel,$did(4).sel,$did(5).sel) $rgb($did(3).sel,$did(4).sel,$did(5).sel) 1 1
  drawsave @def.col deftemp.bmp | did -g def.opt 6 deftemp.bmp
  if (%def.q == H) did -c def.opt 11 | else did -c def.opt 12
  if (%def.radar == y) did -c def.opt 14 | else did -c def.opt 15
  set %def.tempq %def.q | set %def.tempr %def.radar
  set %def.tempb %def.blood | if (%def.blood == y) did -c def.opt 17 | else did -c def.opt 18
}
on *:dialog:def.opt:sclick:11,12: {
  if ($did == 11) { if ($did(11).state == 0) did -c def.opt 12 | else did -u def.opt 12 | set %def.tempq H }
  else { if ($did(12).state == 0) did -c def.opt 11 | else did -u def.opt 11 | set %def.tempq L }
}
on *:dialog:def.opt:sclick:14,15: {
  if ($did == 15) { if ($did(15).state == 0) did -c def.opt 14 | else did -u def.opt 14 | set %def.tempr N }
  else { if ($did(14).state == 0) did -c def.opt 15 | else did -u def.opt 15 | set %def.tempr Y }
}
on *:dialog:def.opt:sclick:17,18: {
  if ($did == 17) { if ($did(17).state == 0) did -c def.opt 18 | else did -u def.opt 18 | set %def.tempb Y }
  else {
  if ($did(18).state == 0) did -c def.opt 17 | else did -u def.opt 17 | set %def.tempb N }
}
on *:dialog:def.opt:sclick:2: {
  if ($did(2).sel == 1) {
    did -ra def.opt 7 Red: $gettok($rgb($hget(tdefco,t1)),1,44) | did -ra def.opt 8 Green: $gettok($rgb($hget(tdefco,t1)),2,44)
    did -ra def.opt 9 Blue: $gettok($rgb($hget(tdefco,t1)),3,44) | did -c def.opt 3 $gettok($rgb($hget(tdefco,t1)),1,44)
    did -c def.opt 4 $gettok($rgb($hget(tdefco,t1)),2,44) | did -c def.opt 5 $gettok($rgb($hget(tdefco,t1)),3,44)
  }
  if ($did(2).sel == 2) {
    did -ra def.opt 7 Red: $gettok($rgb($hget(tdefco,t2)),1,44) | did -ra def.opt 8 Green: $gettok($rgb($hget(tdefco,t2)),2,44)

    did -ra def.opt 9 Blue: $gettok($rgb($hget(tdefco,t2)),3,44) | did -c def.opt 3 $gettok($rgb($hget(tdefco,t2)),1,44)

    did -c def.opt 4 $gettok($rgb($hget(tdefco,t2)),2,44) | did -c def.opt 5 $gettok($rgb($hget(tdefco,t2)),3,44)

  }
  if ($did(2).sel == 3) {
    did -ra def.opt 7 Red: $gettok($rgb($hget(tdefco,b)),1,44) | did -ra def.opt 8 Green: $gettok($rgb($hget(tdefco,b)),2,44)
    did -ra def.opt 9 Blue: $gettok($rgb($hget(tdefco,b)),3,44) | did -c def.opt 3 $gettok($rgb($hget(tdefco,b)),1,44)
    did -c def.opt 4 $gettok($rgb($hget(tdefco,b)),2,44) | did -c def.opt 5 $gettok($rgb($hget(tdefco,b)),3,44)
  }
  if ($did(2).sel == 4) {
    did -ra def.opt 7 Red: $gettok($rgb($hget(tdefco,m)),1,44) | did -ra def.opt 8 Green: $gettok($rgb($hget(tdefco,m)),2,44)
    did -ra def.opt 9 Blue: $gettok($rgb($hget(tdefco,m)),3,44) | did -c def.opt 3 $gettok($rgb($hget(tdefco,m)),1,44)
    did -c def.opt 4 $gettok($rgb($hget(tdefco,m)),2,44) | did -c def.opt 5 $gettok($rgb($hget(tdefco,m)),3,44)
  }
  if ($did(2).sel == 5) {
    did -ra def.opt 7 Red: $gettok($rgb($hget(tdefco,z)),1,44) | did -ra def.opt 8 Green: $gettok($rgb($hget(tdefco,z)),2,44)
    did -ra def.opt 9 Blue: $gettok($rgb($hget(tdefco,z)),3,44) | did -c def.opt 3 $gettok($rgb($hget(tdefco,z)),1,44)
    did -c def.opt 4 $gettok($rgb($hget(tdefco,z)),2,44) | did -c def.opt 5 $gettok($rgb($hget(tdefco,z)),3,44)
  }
  drawfill -r @def.col $rgb($did(3).sel,$did(4).sel,$did(5).sel) $rgb($did(3).sel,$did(4).sel,$did(5).sel) 1 1
  drawsave @def.col deftemp.bmp | did -g def.opt 6 deftemp.bmp
}
on *:dialog:def.opt:scroll:*: {
  if ($did == 3) did -ra def.opt 7 Red: $did(3).sel
  elseif ($did == 4) did -ra def.opt 8 Green: $did(4).sel
  elseif ($did == 5) did -ra def.opt 9 Blue: $did(5).sel
  if ($did(2).sel == 1) hadd -m tdefco t1 $rgb($did(3).sel,$did(4).sel,$did(5).sel)
  if ($did(2).sel == 2) hadd -m tdefco t2 $rgb($did(3).sel,$did(4).sel,$did(5).sel)
  if ($did(2).sel == 3) hadd -m tdefco b $rgb($did(3).sel,$did(4).sel,$did(5).sel)
  if ($did(2).sel == 4) hadd -m tdefco m $rgb($did(3).sel,$did(4).sel,$did(5).sel)
  if ($did(2).sel == 5) hadd -m tdefco z $rgb($did(3).sel,$did(4).sel,$did(5).sel)
  drawfill -r @def.col $rgb($did(3).sel,$did(4).sel,$did(5).sel) $rgb($did(3).sel,$did(4).sel,$did(5).sel) 1 1
  drawsave @def.col deftemp.bmp | did -g def.opt 6 deftemp.bmp
}

Comments

Sign in to comment.
inti-garcia   -  Nov 29, 2008

Dude you are a genious, i love your scripts!!

 Respond  
NightBlade   -  Oct 12, 2008

I dont see much , the bottom is cut off, on all of your things for me.still, 8/10

 Respond  
RagBot   -  Jun 13, 2008

Brilliant game Blue Then. I like how i can personalize it so i can have it the way i want it to be. Also playing the game is fun and addicting. 10/10

 Respond  
Jamiie   -  Jun 07, 2008

All I can say is WOW, I like it alot. 10/10 from me.

 Respond  
BlueThen   -  Jun 04, 2008

Updated. Centered the \"GameOver\" and \"Pause\" text. I also added a New Game option to the Options Dialog and the game (N).

 Respond  
Jonesy44   -  Jun 04, 2008

Fuck me!

Just played the updated version. WOW.

 Respond  
Jonesy44   -  Jun 04, 2008

LOVE IT BT !

10/10. i felt priveledged to be one of the first to try these ! keep it up, loving it ;D

10/10

 Respond  
BlueThen   -  Jun 04, 2008

:D

Updated, the screenshot pretty much explains the update itself.

 Respond  
EL   -  Jun 04, 2008

BT your the only reason i havent deleted my hawkee account.Need some good codes to keep me goin thanks:P

 Respond  
BlueThen   -  Jun 03, 2008

Updated... twice!
FPS Syncronization.
Radar can now be removed/readded with \"R\"
Timer added.
Gun is now automatic, you can now just hold down left mouse button to shoot.
Added a Pause option, \"P\".

 Respond  
EL   -  Jun 02, 2008

Some thing to save high scores and maybe a blood removal alias or something becomes a paint to see with all that blood.`-.-´

 Respond  
xplo   -  Jun 02, 2008

you should open a server to play multiplayer, LAWL

 Respond  
guest598594   -  Jun 02, 2008

I\'m using 6.32, here\'s a screen:

Image

A couple suggestions:

1) I would add a \"new game\" button
2) If you notice, the health is -1, perhaps inc the score only if it\'s > 0

 Respond  
Eugenio   -  Jun 02, 2008

Works for me and Im even using VISTA rofl which failz.
/me rates 9
lmfao @ the bl00d

 Respond  
BlueThen   -  Jun 02, 2008

Thanks, I don\'t know why, but a lot of people have been getting that problem, mountaindew. :/ It works perfectly fine for me, it stops where it needs to stop at the bottom, and I tested it on several different versions of mirc.

 Respond  
Phoenix847   -  Jun 02, 2008

Amazing, I love it.

Unfortunately, with a computer like this:
(17:40:19) <@PhoenixBot> (CPU1) Intel Pentium III processor @ 935MHz (Asus CUW-AM/MEW-AM mainboard) , 57.9MB free (HDDs) 37.2GB, 14.4GB free
(17:40:19) <@PhoenixBot> (VGA1) Intel(R) 82810E Graphics Controller (Microsoft Corporation) (32MB), 1024x768x24, 60Hz (OS) Microsoft Windows XP Home Edition (SP2), 1h 24m 9s uptime, 2d 7h 35m 25s uptime record
LOL^

The game fails for me. Still, 10/10. Amazing work.

 Respond  
guest598594   -  Jun 02, 2008

Wow, this is very cool. One problem though, if you go all the way down, the words are only half visible.

EDIT: Also, the blood is really amazing, how it splatters different patterns and stuff.

9/10 from me :)

 Respond  
^Neptune   -  Jun 02, 2008

This is just brilliant. I\'m giving 9/10 because I really hate the radar, lol. You barely notice/use it.

 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.