HandleOwlStatue: call GetRoomStatusAddressInHL ld a, [hl] and $20 ret nz ld a, [hl] or $20 ld [hl], a ld hl, $7B16 call OffsetPointerByRoomNumber ld a, [hl] ldh [$F1], a call ItemMessage call GiveItemFromChest ret GetRoomStatusAddressInHL: ld a, [$DBA5] ; isIndoor ld d, a ld hl, $D800 ldh a, [$F6] ; room nr ld e, a ldh a, [$F7] ; map nr cp $FF jr nz, .notColorDungeon ld d, $00 ld hl, $DDE0 jr .notIndoorB .notColorDungeon: cp $1A jr nc, .notIndoorB cp $06 jr c, .notIndoorB inc d .notIndoorB: add hl, de ret RenderOwlStatueItem: ldh a, [$F6] ; map room cp $B2 jr nz, .NotYipYip ; Add 2 to room to set room pointer to an empty room for trade items add a, 2 ldh [$F6], a call RenderItemForRoom ldh a, [$F6] ; map room ; ...and undo it sub a, 2 ldh [$F6], a ret .NotYipYip: call RenderItemForRoom ret