Map_0x370
get_block_4DFE10
Definition: gmp_block_info* Map_0x370::get_block_4DFE10(s32 x, s32 y, s32 z)
Get the block at (x,y,z).
FindHighestBlockForCoord_4E4C30
Definition: gmp_block_info* Map_0x370::FindHighestBlockForCoord_4E4C30(s32 x, s32 y, s32* found_z)
Get the highest non-air block at (x,y). It also computes the z coordinate of that block.
FindGroundZForCoord_4E5B60
Definition: Fix16 Map_0x370::FindGroundZForCoord_4E5B60(Fix16 x_pos, Fix16 y_pos)
Get the z float coordinate of the highest solid point (i.e. on a non-air block) at float coordinates (x_pos, y_pos). It takes into account the level change at gradient slopes.
UpdateZFromSlopeAtCoord_4E5BF0
Definition: u8 Map_0x370::UpdateZFromSlopeAtCoord_4E5BF0(Fix16 x_pos, Fix16 y_pos, Fix16& z_pos)
Update the given z_pos float coordinate taking into account the gradient slope at the point (x_pos, y_pos). It also returns the gradient slope direction, if there is any.
GetEffectiveBlock_4DFE60
Definition: gmp_block_info* Map_0x370::GetEffectiveBlock_4DFE60(s32 x, s32 y, s32 z)
Very similar to get_block_4DFE10, but in this case it returns the collision-effective block at (x,y,z).
For coordinates of slopes that have no collision (such as partial blocks), this function will return a empty block.
For coordinates of tridiagonal slopes (such as car-shop roof corners), this function will return a solid flat block.
For flat blocks, gradient slopes, and diagonal walls, the function behaviour is the same of get_block_4DFE10, returning the block at its coordinates.