Prev: 9ED1 Up: Map Next: 9F38
9F1E: Update Character State And Location
Used by the routine at CharacterAction_Gardener.
Input
A New state value
B Character attribute value
DE Location offset
HL Pointer to character state
IY Pointer to character timetable data
UpdateCharacterStateAndLocation 9F1E LD (HL),A Write A to *HL (update character state).
9F1F LD IX,($A017) IX=*CurrentCharacterData (load current character data pointer).
9F23 LD (IX+$0F),B Write B to *IX+0F (update character attribute).
9F26 LD (IX+$01),$FF Write FF to *IX+01 (mark as moved).
Update character's location in timetable.
9F2A LD L,(IY+$06) L=*IY+06 (load low byte of location).
9F2D LD H,(IY+$07) H=*IY+07 (load high byte of location).
9F30 ADD HL,DE HL+=DE (add location offset).
9F31 LD (IY+$06),L Write L to *IY+06 (store updated low byte).
9F34 LD (IY+$07),H Write H to *IY+07 (store updated high byte).
9F37 RET Return.
Prev: 9ED1 Up: Map Next: 9F38