Routines |
Prev: 47008 | Up: Map | Next: 47165 |
Used by the routine at Animation_OpponentThrowing.
|
||||
Animation_ThrowingDart | 47073 | LD E,4 | E=4. | |
47075 | CALL 43125 | Call 43125. | ||
47078 | AND A | Call Animation_BarMaid if A is zero. | ||
47079 | CALL Z,Animation_BarMaid | |||
First show the playing "lining up" the shot...
|
||||
47082 | LD B,3 | Set a counter in B for the number of times to loop the animation. | ||
Aiming_Loop | 47084 | PUSH BC | Stash the animation loop counter on the stack. | |
Frame 1.
|
||||
47085 | LD DE,50756 | DE=Graphics_Throwing_01. | ||
47088 | CALL Print_ThrowingDart_Frame | Call Print_ThrowingDart_Frame. | ||
Frame 2.
|
||||
47091 | LD DE,50828 | DE=Graphics_Throwing_02. | ||
47094 | CALL Print_ThrowingDart_Frame | Call Print_ThrowingDart_Frame. | ||
Frame 3.
|
||||
47097 | LD DE,50900 | DE=Graphics_Throwing_03. | ||
47100 | CALL Print_ThrowingDart_Frame | Call Print_ThrowingDart_Frame. | ||
Frame 2.
|
||||
47103 | LD DE,50828 | DE=Graphics_Throwing_02. | ||
47106 | CALL Print_ThrowingDart_Frame | Call Print_ThrowingDart_Frame. | ||
47109 | POP BC | Restore the animation loop counter from the stack. | ||
47110 | DJNZ Aiming_Loop | Decrease the animation loop counter by one and loop back to Aiming_Loop until the counter is zero. | ||
Show the last frame (frame 1 again).
|
||||
47112 | LD DE,50756 | DE=Graphics_Throwing_01. | ||
47115 | CALL Print_ThrowingDart_Frame | Call Print_ThrowingDart_Frame. | ||
47118 | LD B,18 | B=18. | ||
47120 | LD HL,16626 | HL=16626 (screen buffer location). | ||
Animation_ThrowingDart_0 | 47123 | PUSH BC | Stash BC and HL on the stack. | |
47124 | PUSH HL | |||
47125 | CALL Animation_Dart | Call Animation_Dart. | ||
47128 | POP HL | Restore HL and BC from the stack. | ||
47129 | POP BC | |||
47130 | DEC L | Decrease L by one. | ||
47131 | DJNZ Animation_ThrowingDart_0 | Decrease counter by one and loop back to Animation_ThrowingDart_0 until counter is zero. | ||
47133 | INC L | Increment L by one. | ||
47134 | LD B,3 | B=3. | ||
47136 | LD DE,50972 | DE=Graphics_Dart. | ||
Animation_ThrowingDart_1 | 47139 | LD A,(DE) | A=*DE. | |
47140 | OR (HL) | Set the bits from *HL. | ||
47141 | LD (HL),A | Write A to *HL. | ||
47142 | INC DE | Increment DE by one. | ||
47143 | INC L | Increment L by one. | ||
47144 | LD A,(DE) | A=*DE. | ||
47145 | OR (HL) | Set the bits from *HL. | ||
47146 | LD (HL),A | Write A to *HL. | ||
47147 | INC DE | Increment DE by one. | ||
47148 | INC H | Increment H by one. | ||
47149 | LD A,(DE) | A=*DE. | ||
47150 | OR (HL) | Set the bits from *HL. | ||
47151 | LD (HL),A | Write A to *HL. | ||
47152 | INC DE | Increment DE by one. | ||
47153 | DEC L | Decrease L by one. | ||
47154 | LD A,(DE) | A=*DE. | ||
47155 | OR (HL) | Set the bits from *HL. | ||
47156 | LD (HL),A | Write A to *HL. | ||
47157 | INC H | Increment H by one. | ||
47158 | INC DE | Increment DE by one. | ||
47159 | DJNZ Animation_ThrowingDart_1 | Decrease counter by one and loop back to Animation_ThrowingDart_1 until counter is zero. | ||
47161 | CALL Sounds_OpponentDart | Call Sounds_OpponentDart. | ||
47164 | RET | Return. |
Prev: 47008 | Up: Map | Next: 47165 |