home *** CD-ROM | disk | FTP | other *** search
/ 300 Favorite Games / 300GAMES.iso / 316 / corner2.atr < prev    next >
Text File  |  1992-02-15  |  4KB  |  241 lines

  1. ; Corner.ATR           Ed T. Toton III  2/15/92
  2.  
  3. #spd 8
  4. #def goto_corner
  5. #def move
  6. #def x
  7. #def y
  8. #def move_time
  9. #def shoot
  10. #def fire
  11. #def accuracy
  12.  
  13. set goto_corner 100
  14. set     move    500
  15. set     move_time       0
  16. set     shoot   1000
  17. set     accuracy        0
  18. set     fire    2000
  19. gsb     goto_corner
  20.  
  21.  
  22. ;MAIN
  23. :1
  24.         ;If it's been a while, pick a new corner.
  25.         add     move_time       move_time       1
  26.         cmp     move_time       10
  27.         jgr     move    1
  28.  
  29.         ;Ok, let's go for it!
  30.         gsb     shoot
  31. jmp 1
  32.  
  33.  
  34.  
  35. ;Move
  36. :500
  37.         set     move_time       0
  38.         gsb     goto_corner
  39. RET
  40.  
  41.  
  42. ;Fire
  43. :2000
  44.         ipo     8       accuracy
  45.         opo     15      accuracy
  46.         opo     14      accuracy
  47.         ipo     2       ax
  48.         cmp     ax      200
  49.         jgr     2001
  50.         ipo     7       ax
  51.         cmp     ax      5000
  52.         jls     2000
  53. :2001
  54. RET
  55.  
  56.  
  57. ;Shoot
  58. :1000
  59.         cmp     y       1
  60.         jeq     1001
  61.         jmp     1002
  62.         ret
  63.  
  64. :1001
  65.         cmp     x       1
  66.         jeq     1011
  67.         jmp     1021
  68.         ret
  69.  
  70. :1002
  71.         cmp     x       1
  72.         jeq     1031
  73.         jmp     1041
  74.  
  75. ret
  76.  
  77.  
  78. :1011
  79.         set     ax      0
  80.         int     8
  81.         ipo     3       ax
  82.         cmp     ax      0
  83.         jne     1011
  84.  
  85.         do      18
  86. :1012
  87.         opo     14      5
  88.         ipo     7       ax
  89.         cmp     ax      5000
  90.         jls     fire    1
  91.         loop    1012
  92. ret
  93.  
  94. :1021
  95.         set     ax      0
  96.         int     8
  97.         ipo     3       ax
  98.         cmp     ax      0
  99.         jne     1021
  100.  
  101.         do      18
  102. :1022
  103.         opo     14      -5
  104.         ipo     7       ax
  105.         cmp     ax      5000
  106.         jls     fire    1
  107.         loop    1022
  108. ret
  109.  
  110. :1031
  111.         set     ax      180
  112.         int     8
  113.         ipo     3       ax
  114.         cmp     ax      180
  115.         jne     1031
  116.  
  117.         do      18
  118. :1032
  119.         opo     14      -5
  120.         ipo     7       ax
  121.         cmp     ax      5000
  122.         jls     fire    1
  123.         loop    1032
  124. ret
  125.  
  126. :1041
  127.         set     ax      180
  128.         int     8
  129.         ipo     3       ax
  130.         cmp     ax      180
  131.         jne     1041
  132.  
  133.         do      18
  134. :1042
  135.         opo     14      5
  136.         ipo     7       ax
  137.         cmp     ax      5000
  138.         jls     fire    1
  139.         loop    1042
  140. ret
  141.  
  142.  
  143. RET
  144.  
  145.  
  146.  
  147. ;Goto_corner
  148. :100
  149.         ;Choose up or down
  150.         cmp     10030   5000
  151.         jls     101
  152.         set     y       1
  153.         gsb     111
  154.         jmp     103
  155. :101
  156.         set     y       2
  157.         gsb     121
  158. :103
  159.         ;Choose left or right.
  160.         cmp     10030   5000
  161.         jls     102
  162.         set     x       1
  163.         jmp     131
  164.         jmp     104
  165. :102
  166.         set     x       2
  167.         jmp     141
  168. :104
  169. RET
  170.  
  171. ; Go Down
  172. :111
  173.         
  174.         set     ax      180
  175.         int     8
  176.         ipo     3       ax
  177.         cmp     ax      180
  178.         jne     111
  179.  
  180.         opo     11      100
  181.         del     9
  182. :112
  183.         ipo     1       ax
  184.         cmp     ax      0
  185.         jgr     112
  186. RET
  187.  
  188. ; Go Up
  189. :121
  190.         
  191.         set     ax      0
  192.         int     8
  193.         ipo     3       ax
  194.         cmp     ax      0
  195.         jne     121
  196.  
  197.         opo     11      100
  198.         del     9
  199. :122
  200.         ipo     1       ax
  201.         cmp     ax      0
  202.         jgr     122
  203.  
  204. RET
  205.  
  206. ; Go Left
  207. :131
  208.         
  209.         set     ax      270
  210.         int     8
  211.         ipo     3       ax
  212.         cmp     ax      270
  213.         jne     131
  214.  
  215.         opo     11      100
  216.         del     9
  217. :132
  218.         ipo     1       ax
  219.         cmp     ax      0
  220.         jgr     132
  221.  
  222. RET
  223.  
  224. ; Go Right
  225. :141
  226.         
  227.         set     ax      90
  228.         int     8
  229.         ipo     3       ax
  230.         cmp     ax      90
  231.         jne     141
  232.  
  233.         opo     11      100
  234.         del     9
  235. :142
  236.         ipo     1       ax
  237.         cmp     ax      0
  238.         jgr     142
  239.  
  240. RET
  241.