• ; I think there's something wrong with this still, but I don't care enough to find out.
  • ; Found the bug!  v1 was being used twice.
  • ; Added grenades to the mix.
  • ; Our own fragger!
  •  
  •  
  • [JAMES] -- I haven't got around to explaining this section yet, but all of the links still work OK.
  •  
  • mine_layer:  -- explain
  • scan relative 5
  • if value #scan <> 0 then if value #scan <> 5 then goto outofit
  • lay mines on
  • move backward
  • lay mines off
  • scan relative 5
  • if value #scan <> 0 then if value #scan <> 5 then goto outofit
  • math v1 = #x_pos - #enemy_x - #enemy_x * #x_pos / #enemy_x + #enemy_x * #enemy_x / #y_pos + #y_pos - #enemy_y - #enemy_y * #y_pos / #enemy_y + #enemy_y * #enemy_y
  • if value #enemy_d >= #cur_life then if value ~v1 < 3 then if value #enemy_x <> 0 then if value ~v9 = ~v9 then goto 2
  • math vg = #cur_fuel - 3 - #burn
  • move backward
  • if shield is up then lower shield
  • cmath v1 = ((#cur_head-2) * (#cur_head-3) * (#cur_head-4) * (#y_pos-#enemy_y)/-6) + ((#cur_head-1) * (#cur_head-3) * (#cur_head-4) * (#enemy_x-#x_pos)/2) + ((#cur_head-1) * (#cur_head-2) * (#cur_head-4) * (#enemy_y-#y_pos)/-2) + ((#cur_head-1) * (#cur_head-2) * (#cur_head-3) * (#x_pos-#enemy_x)/6)
  • cmath v2 = ((#cur_head-2) * (#cur_head-3) * (#cur_head-4) * (#x_pos-#enemy_x)/-6) + ((#cur_head-1) * (#cur_head-3) * (#cur_head-4) * (#y_pos-#enemy_y)/2) + ((#cur_head-1) * (#cur_head-2) * (#cur_head-4) * (#x_pos-#enemy_x)/-2) + ((#cur_head-1) * (#cur_head-2) * (#cur_head-3) * (#y_pos-#enemy_y)/6)
  • if value ~v2 >= -1 then if value ~v2 <= 1 then if value ~v1 <= 3  then if value ~v1 >= 1 then launch missile
  • gosub bright_ #cur_head
  • goto mine_loop_ ~vj
  •  
  • [JAMES] -- I haven't got around to explaining this section yet, but all of the links still work OK.
  •  
  • mine_loop_ 1:
  • cmath v3 = ((#cur_head-2) * (#cur_head-3) * (#cur_head-4) * (#y_pos-#enemy_y)/-6) + ((#cur_head-1) * (#cur_head-3) * (#cur_head-4) * (#enemy_x-#x_pos)/2) + ((#cur_head-1) * (#cur_head-2) * (#cur_head-4) * (#enemy_y-#y_pos)/-2) + ((#cur_head-1) * (#cur_head-2) * (#cur_head-3) * (#x_pos-#enemy_x)/6)
  • cmath v2 = ((#cur_head-2) * (#cur_head-3) * (#cur_head-4) * (#x_pos-#enemy_x)/-6) + ((#cur_head-1) * (#cur_head-3) * (#cur_head-4) * (#y_pos-#enemy_y)/2) + ((#cur_head-1) * (#cur_head-2) * (#cur_head-4) * (#x_pos-#enemy_x)/-2) + ((#cur_head-1) * (#cur_head-2) * (#cur_head-3) * (#y_pos-#enemy_y)/6)
  • if missile is ready then if value ~v2 >= -1 then if value ~v2 <= 1 then if value ~v3 <= 3  then if value ~v3 >= 1 then launch missile
  • if grenade is ready then if value ~v2 >= -1 then if value ~v2 <= 1 then if value ~v3 <= 3  then if value ~v3 >= 1 then launch missile
  • if value ~v2 >= -1 then if value ~v2 <= 1 then if value ~v3 <= 1  then if value ~v3 >= -1 then goto 2
  • if value ~v2 >= -1 then if value ~v2 <= 1 then if value ~v3 <= 3  then if value ~v3 >= 1 then if value #cur_ammo >= 5 then if value #cur_fuel >= 200 then goto mine_loop_ 1
  • if grenade is ready then lower shield
  • if value #x_pos = #enemy_x then if value #enemy_y ~vk ~vl then goto same_x_ #cur_head
  • if grenade is ready then if value #scan <> 0 then if value #scan <> 5 then if value ~vg < #cur_fuel then if value #enemy_y <> #y_pos then goto mine_loop_ 1
  • if value #y_pos = #enemy_y then goto same_y_ #cur_head
  • goto outofit
  •  
  •  
  • [JAMES] -- I haven't got around to explaining this section yet, but all of the links still work OK.
  •  
  • mine_loop_ 2:
  • cmath v3 = ((#cur_head-2) * (#cur_head-3) * (#cur_head-4) * (#y_pos-#enemy_y)/-6) + ((#cur_head-1) * (#cur_head-3) * (#cur_head-4) * (#enemy_x-#x_pos)/2) + ((#cur_head-1) * (#cur_head-2) * (#cur_head-4) * (#enemy_y-#y_pos)/-2) + ((#cur_head-1) * (#cur_head-2) * (#cur_head-3) * (#x_pos-#enemy_x)/6)
  • cmath v2 = ((#cur_head-2) * (#cur_head-3) * (#cur_head-4) * (#x_pos-#enemy_x)/-6) + ((#cur_head-1) * (#cur_head-3) * (#cur_head-4) * (#y_pos-#enemy_y)/2) + ((#cur_head-1) * (#cur_head-2) * (#cur_head-4) * (#x_pos-#enemy_x)/-2) + ((#cur_head-1) * (#cur_head-2) * (#cur_head-3) * (#y_pos-#enemy_y)/6)
  • if value ~v2 >= -1 then if value ~v2 <= 1 then if value ~v3 <= 3  then if value ~v3 >= 1 then launch missile
  • if missile is ready then if value ~v2 >= -1 then if value ~v2 <= 1 then if value ~v3 <= 3  then if value ~v3 >= 1 then launch missile
  • if grenade is ready then if value ~v2 >= -1 then if value ~v2 <= 1 then if value ~v3 <= 3  then if value ~v3 >= 1 then launch missile
  • if value ~v2 >= -1 then if value ~v2 <= 1 then if value ~v3 <= 1  then if value ~v3 >= -1 then goto 2
  • if value ~v2 >= -1 then if value ~v2 <= 1 then if value ~v3 <= 3  then if value ~v3 >= 1 then if value #cur_ammo >= 5 then if value #cur_fuel >= 200 then goto mine_loop_ 2
  • if grenade is ready then lower shield
  • if value #y_pos = #enemy_y then if value #enemy_x ~vk ~vl then goto same_y_ #cur_head
  • if grenade is ready then if value #scan <> 0 then if value #scan <> 5 then if value ~vg < #cur_fuel then if value #enemy_x <> #x_pos then goto mine_loop_ 2
  • if value #x_pos = #enemy_x then goto same_x_ #cur_head
  • goto outofit