event-object: simplify SetObjectSubpriorityByElevation

As is, the current function is hard to understand.

This change matches while also making the intention clear.

Signed-off-by:Arven
This commit is contained in:
AreaZeroArven 2023-01-06 11:01:35 -05:00 committed by GitHub
parent 6d6a876dbd
commit a0acf50d7d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -7756,12 +7756,10 @@ void ObjectEventUpdateElevation(struct ObjectEvent *objEvent)
void SetObjectSubpriorityByElevation(u8 elevation, struct Sprite *sprite, u8 subpriority)
{
s32 tmp = sprite->centerToCornerVecY;
u32 tmpa = *(u16 *)&sprite->y;
u32 tmpb = *(u16 *)&gSpriteCoordOffsetY;
s32 tmp2 = (tmpa - tmp) + tmpb;
u16 tmp3 = (16 - ((((u32)tmp2 + 8) & 0xFF) >> 4)) * 2;
sprite->subpriority = tmp3 + sElevationToSubpriority[elevation] + subpriority;
u16 y = (sprite->y - sprite->centerToCornerVecY + gSpriteCoordOffsetY + 8) & 0xFF;
y = (16 - (y >> 4)) << 1;
sprite->subpriority = sElevationToSubpriority[elevation] + y + subpriority;
}
static void ObjectEventUpdateSubpriority(struct ObjectEvent *objEvent, struct Sprite *sprite)