Prev: EB1D Up: Map Next: EBBB
EB27: Animates and moves the Angels of Death.
Used by the routine at Update_Room00.
Input
Output
Angel bitmaps are $93 ~ $98
Handler_Angels EB27 LD A,(Flag_BaddyInit)
EB2A OR A
EB2B JR NZ,Handler_Angels_0
EB2D LD A,$01
EB2F LD (Flag_BaddyInit),A
EB32 INC A
EB33 LD (Angel2_Pos),A
EB36 LD ($EB22),A
EB39 LD ($EB25),A
EB3C LD HL,$3278
EB3F LD (Angel1_Pos),HL
EB42 LD (BitmapX),HL
EB45 LD A,(Angel_Bmp)
EB48 CALL Bitmap16Draw
EB4B LD HL,$6438
EB4E LD ($EB20),HL
EB51 LD (BitmapX),HL
EB54 CALL Bitmap16Draw
EB57 LD HL,$50B8
EB5A LD (Angel3_Pos),HL
EB5D LD (BitmapX),HL
EB60 CALL Bitmap16Draw
EB63 RET
Handler_Angels_0 EB64 LD A,(Angel_Bmp)
EB67 INC A
EB68 CP $99
EB6A JR NZ,Handler_Angels_1
EB6C LD A,$93
Handler_Angels_1 EB6E LD D,A
EB6F LD IX,Angel1_Pos
EB73 LD B,$03
Handler_Angels_2 EB75 LD L,(IX+$00)
EB78 LD H,(IX+$01)
EB7B LD C,(IX+$02)
EB7E INC IX
EB80 INC IX
EB82 INC IX
EB84 LD (BitmapX),HL
EB87 LD A,H
EB88 ADD A,C
EB89 LD H,A
EB8A CP $AA
EB8C JR NZ,Handler_Angels_4
Handler_Angels_3 EB8E LD A,C
EB8F NEG
EB91 LD C,A
EB92 JR Handler_Angels_5
Handler_Angels_4 EB94 CP $30
EB96 JR Z,Handler_Angels_3
Handler_Angels_5 EB98 LD (IX-$01),C
EB9B LD (IX-$02),H
EB9E LD A,(Angel_Bmp)
EBA1 CALL Bitmap16Draw
EBA4 LD (BitmapX),HL
EBA7 LD A,D
EBA8 CALL Bitmap16Draw
EBAB PUSH BC
EBAC PUSH DE
EBAD LD B,$04
EBAF CALL Wally_HitTest
EBB2 POP DE
EBB3 POP BC
EBB4 DJNZ Handler_Angels_2
EBB6 LD A,D
EBB7 LD (Angel_Bmp),A
EBBA RET
Prev: EB1D Up: Map Next: EBBB