diff options
| author | engineer124 <47598039+engineer124@users.noreply.github.com> | 2022-11-26 18:11:06 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-11-26 18:11:06 -0500 |
| commit | c7a61aa670cb4843bffde11bc8dfa0f0301ee35b (patch) | |
| tree | b7bf6d22bed8595cfc46f73079c7dd0b3c02556d /src/code/z_bgcheck.c | |
| parent | 92f081d7f35c91794e5696b6bb1f86541b8b40ea (diff) | |
Document Surface Material (#1447)
* material
* cleanup
* iron boots
* climb
* more docs
* rename
* small fix
* comments
* adjust bug comment
* simplify comment
Diffstat (limited to 'src/code/z_bgcheck.c')
| -rw-r--r-- | src/code/z_bgcheck.c | 42 |
1 files changed, 21 insertions, 21 deletions
diff --git a/src/code/z_bgcheck.c b/src/code/z_bgcheck.c index e6592e7df..089747457 100644 --- a/src/code/z_bgcheck.c +++ b/src/code/z_bgcheck.c @@ -68,21 +68,21 @@ s32 D_80119D90[WALL_TYPE_MAX] = { WALL_FLAG_6, // WALL_TYPE_7 }; -u16 D_80119E10[SURFACE_SFX_TYPE_MAX] = { - NA_SE_PL_WALK_GROUND - SFX_FLAG, // SURFACE_SFX_TYPE_0 - NA_SE_PL_WALK_SAND - SFX_FLAG, // SURFACE_SFX_TYPE_1 - NA_SE_PL_WALK_CONCRETE - SFX_FLAG, // SURFACE_SFX_TYPE_2 - NA_SE_PL_WALK_DIRT - SFX_FLAG, // SURFACE_SFX_TYPE_3 - NA_SE_PL_WALK_WATER0 - SFX_FLAG, // SURFACE_SFX_TYPE_4 - NA_SE_PL_WALK_WATER1 - SFX_FLAG, // SURFACE_SFX_TYPE_5 - NA_SE_PL_WALK_WATER2 - SFX_FLAG, // SURFACE_SFX_TYPE_6 - NA_SE_PL_WALK_MAGMA - SFX_FLAG, // SURFACE_SFX_TYPE_7 - NA_SE_PL_WALK_GRASS - SFX_FLAG, // SURFACE_SFX_TYPE_8 - NA_SE_PL_WALK_GLASS - SFX_FLAG, // SURFACE_SFX_TYPE_9 - NA_SE_PL_WALK_LADDER - SFX_FLAG, // SURFACE_SFX_TYPE_10 - NA_SE_PL_WALK_GROUND - SFX_FLAG, // SURFACE_SFX_TYPE_11 - NA_SE_PL_WALK_ICE - SFX_FLAG, // SURFACE_SFX_TYPE_12 - NA_SE_PL_WALK_IRON - SFX_FLAG, // SURFACE_SFX_TYPE_13 +u16 sSurfaceMaterialToSfxOffset[SURFACE_MATERIAL_MAX] = { + SURFACE_SFX_OFFSET_DIRT, // SURFACE_MATERIAL_DIRT + SURFACE_SFX_OFFSET_SAND, // SURFACE_MATERIAL_SAND + SURFACE_SFX_OFFSET_STONE, // SURFACE_MATERIAL_STONE + SURFACE_SFX_OFFSET_JABU, // SURFACE_MATERIAL_JABU + SURFACE_SFX_OFFSET_WATER_SHALLOW, // SURFACE_MATERIAL_WATER_SHALLOW + SURFACE_SFX_OFFSET_WATER_DEEP, // SURFACE_MATERIAL_WATER_DEEP + SURFACE_SFX_OFFSET_TALL_GRASS, // SURFACE_MATERIAL_TALL_GRASS + SURFACE_SFX_OFFSET_LAVA, // SURFACE_MATERIAL_LAVA + SURFACE_SFX_OFFSET_GRASS, // SURFACE_MATERIAL_GRASS + SURFACE_SFX_OFFSET_BRIDGE, // SURFACE_MATERIAL_BRIDGE + SURFACE_SFX_OFFSET_WOOD, // SURFACE_MATERIAL_WOOD + SURFACE_SFX_OFFSET_DIRT, // SURFACE_MATERIAL_DIRT_SOFT + SURFACE_SFX_OFFSET_ICE, // SURFACE_MATERIAL_ICE + SURFACE_SFX_OFFSET_CARPET, // SURFACE_MATERIAL_CARPET }; /** @@ -4111,17 +4111,17 @@ u32 SurfaceType_IsHorseBlocked(CollisionContext* colCtx, CollisionPoly* poly, s3 return SurfaceType_GetData(colCtx, poly, bgId, 0) >> 31 & 1; } -u32 SurfaceType_GetSfxType(CollisionContext* colCtx, CollisionPoly* poly, s32 bgId) { +u32 SurfaceType_GetMaterial(CollisionContext* colCtx, CollisionPoly* poly, s32 bgId) { return SurfaceType_GetData(colCtx, poly, bgId, 1) & 0xF; } -u16 SurfaceType_GetSfxId(CollisionContext* colCtx, CollisionPoly* poly, s32 bgId) { - s32 sfxType = SurfaceType_GetSfxType(colCtx, poly, bgId); +u16 SurfaceType_GetSfxOffset(CollisionContext* colCtx, CollisionPoly* poly, s32 bgId) { + s32 surfaceMaterial = SurfaceType_GetMaterial(colCtx, poly, bgId); - if (sfxType < 0 || sfxType >= ARRAY_COUNT(D_80119E10)) { - return NA_SE_PL_WALK_GROUND - SFX_FLAG; + if ((surfaceMaterial < 0) || (surfaceMaterial >= ARRAY_COUNT(sSurfaceMaterialToSfxOffset))) { + return SURFACE_SFX_OFFSET_DIRT; } - return D_80119E10[sfxType]; + return sSurfaceMaterialToSfxOffset[surfaceMaterial]; } u32 SurfaceType_GetFloorEffect(CollisionContext* colCtx, CollisionPoly* poly, s32 bgId) { |
