![]() |
Routines |
| Prev: 61857 | Up: Map | Next: 61919 |
|
Place the put-down entity to the carrier's right.
|
||||||||
| ScriptRoutine_PlacePutDownRight | 61879 | BIT 4,(IX+3) | Is bit 4 of flags byte 3 (IX+3) set? If not, jump to AdvanceScriptInstruction. | |||||
| 61883 | JP Z,AdvanceScriptInstruction | |||||||
| 61886 | LD A,(29421) | Load A with the saved held-entity width from CameraYCoordinate. | ||||||
| 61889 | LD D,A | Copy A into D as a saved coordinate / value. | ||||||
| 61890 | SRL A | Shift A right logical. | ||||||
| 61892 | LD E,A | Copy A into E as a saved coordinate / value. | ||||||
| 61893 | LD A,4 | Load A with 4. | ||||||
| 61895 | SUB E | Subtract E from A. | ||||||
| 61896 | ADD A,(IX+7) | Add the entity byte at offset 7 to A. | ||||||
|
This entry point is used by the routine at ScriptRoutine_PlacePutDownLeft.
Write the put-down entity's X, X-extent and room, then continue the script.
|
||||||||
| ScriptRoutine_PlacePutDownLeft_WritePutDown | 61899 | LD IY,(29356) | Load IY with the current-entity pointer (Pointer_CurrentEntity). | |||||
| 61903 | LD (IY+7),A | Set the referenced entity's x-coordinate. | ||||||
| 61906 | ADD A,D | Add D into A while building a 16-bit entity/screen address. | ||||||
| 61907 | LD (IY+8),A | Set the referenced entity's x-extent. | ||||||
| 61910 | LD A,(IX+4) | Load A with the current entity's room index. | ||||||
| 61913 | LD (IY+4),A | Set the referenced entity's room index. | ||||||
| 61916 | JP AdvanceScriptInstruction | Jump to AdvanceScriptInstruction to run the next script instruction. | ||||||
| Prev: 61857 | Up: Map | Next: 61919 |