Prev: A2A7 Up: Map Next: A2EC
A2C0: Handler for the ring: WEAR
Putting the golden ring on makes the wearer invisible (bit 7 of their flags cleared) - but also divides their strength by 4. The ring itself becomes invisible and held by the wearer, and timer 6 is started with a random count of 2 to 10 (9BF4), after which the ring comes off by itself (A9D4).
A2C0 CALL $9C99 Dry run? Then stop: it would work
A2C3 LD IY,($B5FC) IY = the wearer's record
A2C7 LD IX,$C209 IX = the ring's record
A2CB RES 7,(IY+$07) The wearer becomes invisible...
A2CF SRL (IY+$05) ...and a quarter as strong
A2D3 SRL (IY+$05)
A2D7 RES 7,(IX+$07) The ring vanishes from view...
A2DB LD A,($B5DB) ...into the wearer's hand
A2DE LD (IX+$01),A
A2E1 LD A,$08 Pick a random number from 0 to 8...
A2E3 CALL $9BF4
A2E6 ADD A,$02 ...plus 2...
A2E8 LD ($C99E),A ...and start timer 6 with it
A2EB RET
Prev: A2A7 Up: Map Next: A2EC