• ; Not sure if this even works.
  • ; It is supposed to frag an enemy when it is tracing a wall.
  • ; Saw it work! Once anyway.
  • ; Fixed it!  Seems my own missiles return #inbound variables.
  •  
  • longfrag:  -- explain
  • if value #x_pos = #enemy_x then goto same_x_ #cur_head  -- explain
  • if value #y_pos = #enemy_y then goto same_y_ #cur_head  -- explain
  • math vq = 2 * #enemy_x - #x_pos / #x_pos / #y_pos + #y_pos / #enemy_y - 2 * #x_pos * #x_pos / #enemy_x / #enemy_x - 2 * #enemy_y / #y_pos + 1 * #enemy_x / #x_pos - 2 * #y_pos / #enemy_y + 4 * #y_pos / #enemy_y - 2 * #x_pos + #enemy_x * #enemy_x / #x_pos + #x_pos * #x_pos - 1 * #enemy_y / #y_pos + 2 * #enemy_y - #y_pos * #y_pos / #enemy_x - #enemy_x * #enemy_x + 1
  • if missile not ready then goto err_ #cur_head  -- explain
  • math v2 = #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  -- explain
  • if value ~v2 < 3 then if value #enemy_x <> 0 then if value ~v9 = ~v9 then goto 2  -- explain
  • math v2 = #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  -- explain
  • if value ~v2 < 3 then if value #enemy_x <> 0 then if value ~v9 = ~v9 then goto 2  -- explain
  • math v3 = ~vx - #enemy_x - #enemy_x * ~vx / #enemy_x + #enemy_x * #enemy_x / ~vy + ~vy - #enemy_y - #enemy_y * ~vy / #enemy_y + #enemy_y * #enemy_y
  • if value ~v3 < 3 then if value #enemy_x <> 0 then if value ~vq < 2 then launch missile
  • if value #x_pos = #enemy_x then goto same_x_ #cur_head  -- explain
  • if value #y_pos = #enemy_y then goto same_y_ #cur_head  -- explain
  • goto err_ #cur_head