Как написать игру для ZX Spectrum на ассемблере


         

Фазы движения человечка - часть 3


LD A,(23560) ;системная переменная LAST_K, в которой ; хранится код последней нажатой клавиши CP " " JR NZ,CYCLE ;повтор RET ; Задержка (PAUSE 12) PAUSE LD BC,12 JP 7997 ; Рисование пейзажа FON LD DE,PEJZ LD BC,19 CALL 8252 EXX PUSH HL LD A,6 LD (23695),A LD BC,#7078 ;B = 112, C = 120 CALL 8933 LD DE,#101 ;D = 1, E = 1 LD BC,10 CALL 9402 LD BC,#757D ;B = 117, C = 125 CALL 8933 LD E,#FF01 ;D = -1, E = 1 LD BC,#F0F ;B = 15, C = 15 CALL 9402 POP HL EXX RET

Эффект движения здесь создается с помощью простого цикла, начинающегося с метки CYCLE, в теле которого по очереди выводятся то первый спрайт, изображающий стоящего человечка, то второй, показывающий человечка в прыжке. Скорость смены фаз движения регулируется подпрограммой PAUSE.




Содержание  Назад  Вперед