?login_element?

Subversion Repositories NedoOS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. ;*D- ;???
  2. ;уровень 0-DEMO
  3. LEVDAT  EQU     #79C0 ;адр. нач данных уровня
  4.         ORG     LEVDAT
  5. ;******************************************************
  6. ;********* ГЛОБАЛЬНЫЕ ПАРАМЕТРЫ УРОВНЯ ****************
  7.  
  8. isRUNL  RET ;#C9 - обычный уровень, иначе кодовый блок
  9.  
  10. ;--------характеристики сторон-------(0)-обнулять вначале
  11.  
  12. ;параметры играющего
  13. hTOWER  DEFB 1 ;мак.число типов вооруж (1-4)
  14. hARC    DEFB 0 ;0-2 (0)
  15. hHORSE  DEFB 0 ;0-3 (0)
  16. hSHILD  DEFB 0 ;0-2 (0)
  17. hBLADE  DEFB 0 ;0-2 (0)
  18. hmaxC   DEFB 1 ;1-3 чиcло возможн иccл закл свящ
  19. hmaxW   DEFB 1 ;1-3 число  --"-- закл волш
  20.  
  21. ;дополнительные параметры играющего
  22. hmaxB1  DEFB 0 ;макс число стандарт зданий (0 или 1-2)
  23. hmaxB2  DEFB 0 ;maкc число доп зданий (0, 1-4)
  24. hWALL   DEFB 0 ;0/17 - можно/нельзя строить стены
  25.  
  26. ;параметры компьютера
  27. kTOWER  DEFB 1 ;1-4
  28. kARC    DEFB 0 ;0-2  ~\;
  29. kHORSE  DEFB 2 ;0-3    |
  30. kSHILD  DEFB 0 ;0-2    |
  31. kBLADE  DEFB 2 ;0-2  _/
  32. kmaxC   DEFB 1 ;1,3 чиcло иccл закл (0-нет свящ)
  33. kmaxW   DEFB 1 ;1..3 чиcло иccл закл (0-нет волш)
  34.  
  35. ;----------- параметры стратегии врага ----------------
  36. ;/wSTRATEG
  37. levMAX  DEFB 8   ;макс число народу в группе (для уровня) = 1..10
  38. levDEL  DEFB 1  ;средн задержка межд сборами (для уровня) = 1..X
  39. lev1ST  DEFB 2   ;нач задержка первого сбора = 1..
  40.  ;Тип уровня 0 ;обычный
  41.  ;Тип уровня 1 ;атакованый охранник становится атакующим
  42.  ;Тип уровня 2 ;см. тип 1 + охранники иногда идут в атаку
  43. levTYP  DEFB 0   ;тип уровня (0-обычный)
  44. ;-------- цветовые настройки -------
  45. COLOR   DEFB #20 ;цвет поля
  46.  
  47. ;-------- общие параметры уровня -----
  48. MASTER  DEFB 01 ; кто играет 0/1 - люди?кунги
  49. LEVEL   DEFB 0  ; номер уровня
  50. MONEY   DEFB 0,0,0,0,0,0 ;деньги
  51. WOOD    DEFB 0,0,0,0,0,0 ;леc
  52. TASK_M  ;задание: 3 строки по 20+1 символов = 63
  53.         incbin "task/w000.tsk"
  54. LEVRES  DEFB 0,0,0,43,0,0,127 ;текущее время прохождения
  55.  
  56. ;------- используемые файлы -------
  57.  
  58. fsLAND  DEFB 1; 1-4
  59. fsMUS   DEFB 7; 0-7
  60.  
  61.  
  62. ;****************** Инициализируемые переменные ****************
  63. ;--------------- (входят в описание каждого уровня) ------------
  64. ;/выбраные герои
  65. SEL_T DEFB 0 ;0-none;1-один;2-6-group;7-кунг,8-здание
  66. SEL_N DEFB 0,0,0,0,0,0 ;номера 6 выбр гер/зд
  67.  
  68. sel_en DEFB #FF ;выбранный враг-цель
  69. sel_ti DEFB 0 ;время отображения цели
  70.  
  71. ;/outLED
  72. LED DEFB 4,3,4,3,4,3
  73.  
  74. ;/putTX
  75. _msg    DEFB #FF
  76. pTX_AD  DEFW 0;WNAMES
  77. TX_AD   DEFW 0;WNAMES
  78. pTXdel  DEFB 0 ;t задержки на выв экcтр cообщ
  79.  
  80. ;/M_PLAT
  81. isPLAT  DEFB 0; 0/1-есть/нет площадки
  82. szPLAT  DEFB 0; размер площадки под стр-во (1..3, 0-нет)
  83. bcPLAT  DEFW 0; размеры
  84. adPLAT  DEFW 0; позиция in ATR
  85. waPLAT  DEFB 0; если стена - 1
  86.  
  87. ;/PAUSE
  88. onPAUS  DEFB 1 ;0-включить паузу
  89.  
  90. ;/SOUNDn
  91. NOTA    DEFW se ;текущ нота
  92. se      DEFW #FFFF ;конст
  93. levSND  DEFB 0 ;0-макс громкость
  94. sIY56   DEFW 0 ;координаты снарядов
  95. priv_S  DEFB 0 ;текущ приоритет (0-нет мелодии)
  96. NOTA2   DEFW se ;нота новой мелодии
  97. priv_2  DEFB 0  ;нов приор
  98.  
  99. ;/STRATEG - variables
  100. pntX    DEFB 32  ;-коорд т.сбора
  101. pntY    DEFB 31  ;-/
  102. pntNUM  DEFB 0   ;-число оставшихся до конца сбора воинов (0-конец сбора, 255-нов сбор)
  103. pntDEL  DEFB 22  ;-время до нач.след сбора/задержка на пр-во воина
  104. pntTAR  DEFB #FF ;-объект атаки (0-101 - воины, #80.. -здания, #FF-нет)
  105. pntUNI  DEFB 0   ;-отряд разнородный/однородный (0/member typ)
  106. pntEN   DEFB 0,0,0,0,0,0
  107.                  ;-разреш пр-во вида (3..8) (0-нет)
  108. pntMAN  DEFB 0   ;тип пораждаемого воина
  109.  
  110. ;/isEND
  111. END_1   DEFB 0  ;0/1/2-none/нет врагов/нет людей
  112. END_2   DEFB 0  ;не0-князь вошёл в пещеру
  113. TheEND  DEFB 0  ;0/1/2-none/победа людей/победа врагов (устанавл в _cLOOP)
  114. ;-----------(резерв)-------------
  115. dummy   DEFS 6,0 ;+0=isTST7[**]
  116. ;-----------процедуры------------
  117. pcLOOP  JR _cLOOP
  118. pcINI   ;стартовая процедура
  119.         RET
  120. ;_cLOOP  ;процедура окончания под землёй
  121. ;        LD A,(END_2)
  122. ;        OR A
  123. ;        JR NZ,_cLO1
  124. ;        LD A,(END_1)
  125. ;        CP 1
  126. ;        RET Z
  127. ;_cLO1   LD (TheEND),A
  128. ;        RET
  129. _cLOOP   ;стандартная проц окончания
  130.          LD A,(END_1)
  131.          LD (END_2),A
  132.          RET
  133.  
  134. ;------ обнуление основных структур данных ---
  135.  
  136.         DEFS #7AA0-$,#27
  137. BULL    DEFS 24*12      ;from #7AA0
  138. MINE    DEFS 8*8        ;from #7BC0
  139. HBUILD  DEFS 32*8       ;from #7C00
  140. KBUILD  DEFS 32*8       ;from #7D00
  141. BUF512  EQU #7E00; буфер512     ;from #7E00
  142. MAP     EQU #8000; DEFS #1000   ;from #8000
  143. MAP2    EQU #9000; DEFS #1000   ;from #9000
  144. DSCR    EQU #A000; DEFS #1800   ;from #A000
  145. HUMAN   EQU #B800; DEFS 48*16   ;from #B800
  146. KUNGE   EQU #BB00; DEFS 48*16   ;from #BB00
  147. SLAVE   EQU #BE00; DEFS 6*16    ;from #BE00
  148. XY      EQU #BE60; DEFS 102*4   ;from #BE60
  149. ;NEXT   EQU #BFF8; nop
  150.  
  151. ;для мар2:
  152. ;0-своб.поле, 1-граница, 2 -непрох
  153. ;#38-#3F        шахты
  154. ;#40-#5F        здания людей
  155. ;#60-#7F        здания кунгов
  156. ;#80-#AF        люди
  157. ;#B0-#DF        кунги
  158. ;#E0-#FF        пленники
  159.  
  160.  
  161. ;------------------------------------------------------------
  162. ;--------- Золото шахт ----- (4096+512 переносится на BUF512)
  163.  
  164. datMIN  DEFW 100,100,100,100,100,100,100,100 ;золото для шахт/100
  165.         ;0-чей (255-конец), 1-тип, 2/3-XY,4-none
  166.  
  167. ;------ Описание героев и карты ---
  168.  
  169. datHER
  170.         incbin "map/w0_s1.her"
  171.         incbin "map/w0_s1.map"
  172.  
  173. ;-------Картинка-----
  174. datSCR
  175.        DEFS 6912,#5C
  176. ;*B ..\BARKOV\WARRIOR.SCR
  177.  
  178. ;----------------------------------
  179.