diff --git a/engine/map_setup.asm b/engine/map_setup.asm index 8b1e3a7fe..0e391b31c 100644 --- a/engine/map_setup.asm +++ b/engine/map_setup.asm @@ -313,7 +313,7 @@ SuspendMapAnims: ; 154d3 LoadObjectsRunCallback_02: ; 154d7 ld a, $2 call RunMapCallback - callba Function2454f + callba LoadObjectMasks callba Function8177 ret ; 154ea (5:54ea) diff --git a/home/map.asm b/home/map.asm index 07f6b468b..c1a26b772 100644 --- a/home/map.asm +++ b/home/map.asm @@ -1170,33 +1170,33 @@ CoordinatesEventText:: ; 2702 ; 2707 -Function2707:: ; 2707 +CheckObjectMask:: ; 2707 ld a, [hMapObjectIndexBuffer1] ld e, a ld d, $0 - ld hl, wd81e + ld hl, wObjectMasks add hl, de ld a, [hl] ret ; 2712 -Function2712:: ; 2712 +MaskObject:: ; 2712 ld a, [hMapObjectIndexBuffer1] ld e, a ld d, $0 - ld hl, wd81e + ld hl, wObjectMasks add hl, de - ld [hl], $ff + ld [hl], -1 ; ,masked ret ; 271e -Function271e:: ; 271e +UnmaskObject:: ; 271e ld a, [hMapObjectIndexBuffer1] ld e, a ld d, $0 - ld hl, wd81e + ld hl, wObjectMasks add hl, de - ld [hl], $0 + ld [hl], 0 ; unmasked ret ; 272a diff --git a/home/map_objects.asm b/home/map_objects.asm index 07a361340..0bfb4e98f 100644 --- a/home/map_objects.asm +++ b/home/map_objects.asm @@ -251,7 +251,7 @@ Function18de:: ; 18de ret ; 18f5 -Function18f5:: ; 18f5 +CheckObjectTime:: ; 18f5 ld hl, MAPOBJECT_HOUR add hl, bc ld a, [hl] @@ -336,7 +336,7 @@ Function194d:: ; 194d _CopyObjectStruct:: ; 1956 ld [hMapObjectIndexBuffer1], a - call Function271e + call UnmaskObject ld a, [hMapObjectIndexBuffer1] call GetMapObject callba CopyObjectStruct @@ -378,7 +378,7 @@ Function1985:: ; 1985 DeleteObjectStruct:: ; 199f call Function1967 - call Function2712 + call MaskObject ret ; 19a6 diff --git a/main.asm b/main.asm index f45b61f9b..98ee00c28 100644 --- a/main.asm +++ b/main.asm @@ -3315,9 +3315,9 @@ RefreshPlayerCoords: ; 80b8 CopyObjectStruct:: ; 80e7 - call Function2707 + call CheckObjectMask and a - ret nz + ret nz ; masked ld hl, ObjectStructs + OBJECT_STRUCT_LENGTH * 1 ld a, 1 ld de, OBJECT_STRUCT_LENGTH @@ -22936,22 +22936,22 @@ MenuDataHeader_0x24547: ; 0x24547 db 1 ; default option ; 0x2454f -Function2454f: ; 2454f - ld hl, wd81e +LoadObjectMasks: ; 2454f + ld hl, wObjectMasks xor a ld bc, NUM_OBJECTS call ByteFill nop ld bc, MapObjects - ld de, wd81e + ld de, wObjectMasks xor a .loop push af push bc push de - call Function245a7 + call GetObjectTimeMask jr c, .next - call Function2457d + call CheckObjectFlag .next pop de ld [de], a @@ -22967,12 +22967,12 @@ Function2454f: ; 2454f jr nz, .loop ret -Function2457d: ; 2457d (9:457d) +CheckObjectFlag: ; 2457d (9:457d) ld hl, MAPOBJECT_SPRITE add hl, bc ld a, [hl] and a - jr z, .minus_one + jr z, .masked ld hl, MAPOBJECT_EVENT_FLAG add hl, bc ld a, [hli] @@ -22983,24 +22983,25 @@ Function2457d: ; 2457d (9:457d) jr nz, .check ld a, e cp -1 - jr z, .zero - jr .minus_one + jr z, .unmasked + jr .masked .check ld b, CHECK_FLAG call EventFlagAction ld a, c and a - jr nz, .minus_one -.zero + jr nz, .masked +.unmasked xor a ret -.minus_one + +.masked ld a, -1 scf ret -Function245a7: ; 245a7 (9:45a7) - call Function18f5 +GetObjectTimeMask: ; 245a7 (9:45a7) + call CheckObjectTime ld a, -1 ret c xor a diff --git a/wram.asm b/wram.asm index 74eb9999d..f8a3c515b 100644 --- a/wram.asm +++ b/wram.asm @@ -2122,7 +2122,7 @@ wd6de:: MapObjects:: ; d71e ds OBJECT_LENGTH * NUM_OBJECTS -wd81e:: ds NUM_OBJECTS +wObjectMasks:: ds NUM_OBJECTS ; d81e VariableSprites:: ; d82e ds $10