Prev: FBF2 Up: Map Next: FC39
FC1A: Scene: Display Carpet
Used by the routines at RunHandlers and SelectionScreen.
Return if this scene doesn't contain the carpet.
Scene_DisplayCarpet FC1A LD A,($D3FE) Return if *Scene_Carpet is 00.
FC1D AND A
FC1E RET Z
FC1F LD BC,$1506 BC=1506 (screen co-ordinates).
The carpet, or whatever it is, has two different positions.
FC22 CP $01 Jump to DrawCarpet if *Scene_Carpet is 01.
FC24 JR Z,DrawCarpet
FC26 LD C,$16 Update the X position to 16.
Draw the carpet to the buffer.
DrawCarpet FC28 LD A,$7F A=sprite ID 7F.
ID Sprite
7F sprite-127-left
FC2A PUSH BC Stash co-ordinates on the stack.
FC2B CALL PrintSprite Call PrintSprite.
FC2E POP BC Restore co-ordinates from the stack.
FC2F LD A,C Add 04 to the X position to draw the next section of the carpet.
FC30 ADD A,$04
FC32 LD C,A
FC33 LD A,$7F A=sprite ID 7F.
ID Sprite
7F sprite-127-right
FC35 CALL PrintSprite_Mirrored Call PrintSprite_Mirrored.
FC38 RET Return.
Prev: FBF2 Up: Map Next: FC39