Prev: A3E6 Up: Map Next: A49C
A448: After a goblin is attacked: a dead goblin comes back
Killing a goblin does not get rid of it. "the ... falls down a hole and vanishes.", it is alive again, back in its slot in CHARACTERS and in its own place, named as it was, from GOBLIN_HOMES; and if that is where the player is, "another goblin enters.".
GOBLIN_RETURNS A448 LD IX,(TARGET_RECORD) Not dead: nothing
A44C BIT 3,(IX+$07)
A450 RET Z
A451 RES 3,(IX+$07) Alive again
A455 LD DE,$0006 Its entry in GOBLIN_HOMES
A458 LD IY,GOBLIN_HOMES
A45C LD A,(TARGET)
GOBLIN_RETURNS_0 A45F CP (IY+$00)
A462 JR Z,GOBLIN_RETURNS_1
A464 ADD IY,DE
A466 JR GOBLIN_RETURNS_0
GOBLIN_RETURNS_1 A468 PUSH IY Back in its slot
A46A POP HL
A46B INC HL
A46C LD E,(HL)
A46D INC HL
A46E LD D,(HL)
A46F LD (DE),A
A470 INC HL Back in its place, and its name as it was
A471 LD A,(HL)
A472 LD (IX+$10),A
A475 INC HL
A476 LD A,(HL)
A477 LD (IX+$0A),A
A47A INC HL
A47B LD A,(HL)
A47C LD (IX+$0B),A
A47F LD HL,MSG_FALL_DOWN_A_HOLE "the ... falls down a hole and vanishes."
A482 CALL RUN_MESSAGE_HL
A485 LD A,(PLAYER_WHERE) Where the player is: "another goblin enters."
A488 CP B
A489 RET NZ
A48A LD DE,$005E
A48D CALL PRINT_WORD_DE
A490 LD DE,$02E2
A493 CALL PRINT_WORD_DE
A496 LD HL,MSG_ENTER_B
A499 JP RUN_MESSAGE_HL
Prev: A3E6 Up: Map Next: A49C