Prev: E6DB Up: Map Next: E73B
E71D: Process Graphic Layout Data For Entity
Used by the routine at PopulateDisplayBuffer_VisibleEntities.
Load the graphic layout address from the entity at IX, set drawing coordinates relative to the camera, then jump to Process_GraphicLayoutData.
Input
IX Address of entity state data
Process_GraphicLayoutData_Entity E71D LD E,(IX+$0A) Fetch the current entity's graphic-layout address into DE.
E720 LD D,(IX+$0B)
E723 LD A,(IX+$05) Load A with the current entity's y-coordinate.
E726 SUB $14 A-=14.
E728 LD L,A Copy A into L.
E729 LD A,($72FB) Load A with the camera room-origin pointer (Pointer_CameraRoomOrigin).
E72C LD C,A Keep the camera origin X in C.
E72D LD A,(IX+$07) Load A with the current entity's x-coordinate.
E730 SUB C Subtract C from A.
E731 LD C,A Keep the delta in C.
E732 LD H,C Copy C into H.
E733 LD ($72F7),HL Store HL in the stored drawing coordinates (StoredDrawingCoordinates).
E736 PUSH DE Copy DE into IX (using the stack).
E737 POP IX
E739 JR Process_GraphicLayoutData Jump to Process_GraphicLayoutData to process graphic layout data.
View the equivalent code in;
Prev: E6DB Up: Map Next: E73B