home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 097.lha / Ic.Source / invadercraft2.h < prev    next >
Text File  |  1986-11-20  |  5KB  |  157 lines

  1.  
  2. /*
  3.  
  4. InvaderCraft von J.Hertel
  5. (C) CW-Publikationen
  6.  
  7.   "invadercraft2.h"
  8.  
  9.  
  10. Header-File fuer Aztec C Version 3.20a.
  11.  
  12. Dieses File muss in das include-Directory der Compiler-Diskette kopiert
  13. werden !
  14.  
  15. */
  16.  
  17. /* Invader */
  18. #define INT 3L          /*    Tiefe (3 = 8 Farben)   */
  19. #define INEX 32L        /*    x-Abstand der Invaders im IFF-Bild */
  20. #define INEY 16L        /*    y-Abstand */
  21. #define INA 30L         /*    Invaderanzahl (Anzahl an verschiedenen
  22.                               Invadertypen + 1 (fuer eigenen Panzer) */
  23. #define PHASEN 6L       /*    6 Bewegungsphasen pro Invader */
  24. #define OFF1 4L         /*    x-Offset */
  25. #define OFF2 1L         /*    y-Offset */
  26. #define KO1 24L         /*    x-Abstand von Invader zu Invader (waehrend
  27.                               des Spiels */
  28.                         /*    y-Abstand in action.c als Variable festgelegt
  29.                               (je nach Bildschirm-Y-Aufloesung) */
  30. #define KO3 24L         /*    x-Groesse der Invader */
  31. #define KO4 14L         /*    y-Groesse             */
  32. #define KO5  10         /*    maximale Invaderanzahl in einer Reihe */
  33. #define KO6 6           /*    maximale Invaderanzahl uebereinander */
  34. #define INBEWSOUNDZAEMAX 2*PHASEN  /* Sound */
  35.  
  36. #define INX INEX*INA    /* Bitmap-Groesse */
  37. #define INY INEY
  38.  
  39. #define STRAFE EIZAEMAXNORM[version]*20   /* Explosion des eigenen Panzer
  40.                                              verlangsamen */
  41.  
  42. #define EIBEWSOUNDZAEMAX 2
  43.  
  44. /* Mutterschiff */
  45. #define MUTANZ 3L              /* Anzahl an verschiedenen Mutterschiffen */
  46. #define MUTT 3L                /* Tiefe */
  47. #define MUTEXPPHASEN 4L        /* Anzahl an Explosionsphasen */
  48. #define MUTPHASEN 2L           /* Anzahl an Bewegungsphasen */
  49. #define MUTHEIGHT 16L          /* x-Abstand (analog INEX) */
  50. #define MUTWIDTH 32L
  51. #define MUTOFF1 1L             /* Offset (analog OFF1) */
  52. #define MUTOFF2 3L
  53. #define MUTKO3 30L             /* Groesse (analog KO3) */
  54. #define MUTKO4 10L
  55. #define MUTWK 200              /* Wahrscheinlichkeit fuer Erscheinen eines
  56.                                   Mutterschiffs */
  57. #define MUTY VY+5L             /* y-Koordinate */
  58. #define MUTPUNKTE 100          /* Mindestpunktzahl */
  59. #define MUTPUNKTERND 200       /* 0...MUTPUNKTERND Punkte werden zufaellig
  60.                                   vergeben */
  61. #define MUTBEWSOUNDZAEMAX 3
  62.  
  63. /* Schuss */
  64. #define SCHPHASEN 3L           /* versch. Bewegungsphasen */
  65. #define SCHHEIGHT 16L          /* wie oben */
  66. #define SCHWIDTH 16L
  67. #define SCHT 2L                /* 4 Farben reichen fuer Schuss */
  68. #define SOFF1 7L               /* wie oben */
  69. #define SOFF2 0L
  70. #define SKO3  3L               /* wie oben */
  71. #define SKO4  14L
  72. #define SHS 1L                 /* sensitiver Punkt (Hot Spot) etwa SKO3/2 */
  73.                                /* relative HotSpot-y-Koordinate = 0 */
  74. #define SAX 9L                 /* Schuss-Koordinaten relativ zum Panzer */
  75. #define SAY 8L                 /* Um Versatz zwischen Panzer-Kanone und
  76.                                   Schuss zu minimieren! */
  77. /* Missile */
  78. #define MISHEIGHT 16L
  79. #define MISWIDTH 16L
  80. #define MISPHASEN 3L
  81. #define MIST 2L
  82. #define MISANZMAX 10
  83. #define MOFF1 6L
  84. #define MOFF2 2L
  85. #define MKO3  3L
  86. #define MKO4  14L
  87.  
  88. #define MHS 1L
  89. #define MHSDX 1L            /* Zwei HotSpot-x-Koordinaten: MHS+MHSDX
  90.                                                            MHS-MHSDX */
  91. #define MAX 12L
  92. #define MAY 11L
  93. #define MHSANZ 3            /* Drei HotSpot-y-Koordinaten */
  94.                             /* HotSpot-y-Koordinaten in action.c definiert */
  95.  
  96. /* Explosion eins Invaders */
  97. #define EXPPHASEN 6L     /* Explosionsphasen */
  98. #define EXPWIDTH  INEX   /* sonstige Daten wie Invader !!*/
  99. #define EXPHEIGHT INEY
  100. #define EXPT      INT
  101.  
  102. /* Bunker */
  103. #define BT 3L       /* unbedingt 3, da Bunker nur aus Farbe Nr.7 besteht */
  104. #define BWIDTH 32L         /* wie oben */
  105. #define BHEIGHT 32L
  106. #define BOFF1 3L
  107. #define BOFF2 4L
  108. #define BKO3 27L
  109. #define BKO4 24L
  110. #define BANZ 4             /* wieviele Bunker */
  111. #define BKO1 80L           /* Abstand zweier Bunker */
  112. #define BX VX+(XA-(BANZ-1)*BKO1-BKO3)/2
  113.  
  114. /* Bunker durch Schuss getroffen */
  115. #define BSSWIDTH 16L                /* Abmessung des Schadens */
  116. #define BSSHEIGHT 10L
  117. #define BSHS 7L                     /* x-Koordinate des Treffer-Zentrums */
  118.  
  119. /* Bunker durch Missile getroffen */
  120. #define BSIWIDTH 16L
  121. #define BSIHEIGHT 10L
  122. #define BIHS 7L
  123.  
  124. /* Explosion bei Zusammenstoss von Missile und Schuss */
  125. /* keine verschiedenen Phasen */
  126. #define MTWIDTH 16L
  127. #define MTHEIGHT 11L
  128. #define MTT 2L
  129. #define MTOFF1 0L
  130. #define MTOFF2 0L
  131. #define MTKO3 11L
  132. #define MTKO4 11L
  133. #define MTHSX 5L      /* relative x-Koordinate auf Zentrum der Explosion */
  134. #define MTHSY 5L      /* rel. y-Koord. */
  135.  
  136. /* Vermindern der Schussrate bei andauerndem Druck auf Feuerknopf */
  137. #define DAUERFEUERBREMSE 100/SCHZAEMAX[version]
  138.  
  139. /* Resultat von inbew() bzw. leer() oder restbew()*/
  140. #define ABGESCHOSSEN 1
  141. #define LETZTERPANZER 2
  142. #define UEBERROLLT 3
  143. #define KEINE_IN_MEHR 4
  144. #define QUIT 5
  145. #define DEMO 6
  146. #define QUITDEMO 7
  147.  
  148. #define PAUSE 300          /* Laenge der Pause zwischen den einzelnen
  149.                               Leveln */
  150.  
  151. #define ANZFREIPANZER 7    /* Anzahl an moeglichen Freipanzern */
  152.  
  153. #define MAXLEVEL 16        /* Anzahl an moeglichen Leveln ( = verschiedene
  154.                               Aufstellungen der Invaders) */
  155. #define DEMOTIME 8000      /* Laenge des Demo-Modus */
  156.  
  157.