; in practice, there is at most 15 walls seen at the same time ; there is room for 32 walls out of safety listex: ; List of the walls found db 0,0,0,0,0,0,0,0,0,0 db 0,0,0,0,0,0,0,0,0,0 db 0,0,0,0,0,0,0 listez: db 0,0,0,0,0,0,0,0,0,0 db 0,0,0,0,0,0,0,0,0,0 db 0,0,0,0,0,0,0 ; list of sprites found on the current ray listex_sprite: db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 listez_sprite: db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 listesprite_ident: db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; list of sprites found by the last ray listex_sprite2: db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 listez_sprite2: db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 listesprite_ident2: db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 fin_listes_sprite ;---=Trigs=--- sinus ; 0 -> 120 db 0,1,2,3,3,4,5,6,7,8,9,9,10,11,11,12,12,13,13,14,14,15,15,15,15,16,16,16,16,16 cosinus db 16,16,16,16,16,15,15,15,15,14,14,13,13,12,12,11,11,10,9,9,8,7,7,6,5,4,3,3,2,1,0 db -1,-2,-3,-3,-4,-5,-6,-7,-7,-8,-9,-9,-10,-11,-11,-12,-12,-13,-13,-14,-14,-15,-15,-15,-15,-16,-16,-16,-16 db -16,-16,-16,-16,-16,-15,-15,-15,-15,-14,-14,-13,-13,-12,-12,-11,-11,-10,-9,-9,-8,-7,-7,-6,-5,-4,-3,-3,-2,-1,0 db 1,2,3,3,4,5,6,7,8,9,9,10,11,11,12,12,13,13,14,14,15,15,15,15,16,16,16,16,16 db 16,16 cosinus_ns ; 0 -> 120 db 16,16,16,16,16,15,15,15,15,14,14,13,13,12,12,11,11,10,9,9,8,7,7,6,5,4,3,3,2,1,0 sinus_ns: db 1,2,3,3,4,5,6,7,8,9,9,10,11,11,12,12,13,13,14,14,15,15,15,15,16,16,16,16,16 db 16,16,16,16,16,15,15,15,15,14,14,13,13,12,12,11,11,10,9,9,8,7,7,6,5,4,3,3,2,1,0 db 1,2,3,3,4,5,6,7,8,9,9,10,11,11,12,12,13,13,14,14,15,15,15,15,16,16,16,16,16 db 16,16,16,16,16,15,15,15,15,14,14,13,13,12,12,11,11,10,9,9,8,7,7,6,5,4,3,3,2,1,0 db 0,1 dxrayon_l ;accroissement de x pour les rayons en fct de l'angle db 10,10,10,10,10,9,9,9,9,8,8,8,8,7,7,7,6,6,5,5,4,4,3,3,2,2,1,1,1,0 db 0,1,1,1,2,2,3,3,4,4,5,5,6,6,7,7,7,8,8,8,8,9,9,9,9,10,10,10,10,10 db 10,10,10,10,10,9,9,9,9,8,8,8,8,7,7,7,6,6,5,5,4,4,3,3,2,2,1,1,1,0 db 0,1,1,1,2,2,3,3,4,4,5,5,6,6,7,7,7,8,8,8,8,9,9,9,9,10,10,10,10,10 db 10,10,10,10,10,9,9,9,9,8,8,8,8,7,7,7,6,6,5,5,4,4,3,3,2,2,1,1,1,0 dzrayon_l: db 0,0 ;idem pour z ;on lit cette fois a l'envers dxrayon_l LUT_dezoom_sprites ; taille : 24 (0 -> 23) db 15,14,14,13,13,12,12,11,11,10,10,9,9,8,8,7,7,6,6,5,5,4,4,3,3 DifficultyScale ; in order : easy, normal, hard db 70,140,210 EnemyDistanceAimTable db 35,30,25,20,15,10 ; for each type : type, life, ai state, time before re-attacking, initial sprite , ? , ? ; 8 bytes EnemyType db 0,16,0,0 ; normal dw enemy_walk1_sprite_set db 0,0 walls_height ;160 values db -63,-63,-63,-63,-63,-63,-53,-41,-32,-19,-15,-7,-5,-2,0,2,4 db 5,6,8,9,10,11,12,12,13,14,14,15,15,16,16,17 db 17,18,18,19,19,19,20,20,20,20,21,21,21,21,22,22 db 22,22,22,23,23,23,23,23,23,23,24,24,24,24,24,24 db 24,24,25,25,25,25,25,25,25,25,25,25,26,26,26,26 db 26,26,26,26,26,26,26,26,26,26,26,27,27,27,27,27 db 27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,28 db 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28 db 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28 db 29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29 db 29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29 db 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30 db 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30 masks: db %10000000 db %01000000 db %00100000 db %00010000 db %00001000 db %00000100 db %00000010 db %00000001