Mercurial > mm7
diff mm7_data.h @ 138:a8ec7e1e18b6
Sliding downhill & relative subs.
how it's done: each time you get a little bit pushed in the air along terrain normal,
and then falling to the gravity, gradually sliding downwards. nice trick
author | Nomad |
---|---|
date | Tue, 12 Feb 2013 00:22:30 +0200 |
parents | b5c3f448cd74 |
children | cca78efb377e |
line wrap: on
line diff
--- a/mm7_data.h Mon Feb 11 20:27:00 2013 +0200 +++ b/mm7_data.h Tue Feb 12 00:22:30 2013 +0200 @@ -1608,18 +1608,18 @@ extern int dword_76D53C_terrain_cell_world_pos_around_party_x; // weak extern int dword_76D540_terrain_cell_world_pos_around_party_x; // weak extern int dword_76D544_terrain_cell_world_pos_around_party_x; // weak -extern int dword_76D548_terrain_cell_world_pos_around_party_y; // weak -extern int dword_76D54C_terrain_cell_world_pos_around_party_y; // weak -extern int dword_76D550_terrain_cell_world_pos_around_party_y; // weak -extern int dword_76D554_terrain_cell_world_pos_around_party_y; // weak -extern int dword_76D558_terrain_cell_world_pos_around_party_z; // weak -extern int dword_76D55C_terrain_cell_world_pos_around_party_z; // weak -extern int dword_76D560_terrain_cell_world_pos_around_party_z; // weak -extern int dword_76D564_terrain_cell_world_pos_around_party_z; // weak -extern int dword_76D568_terrain_cell_world_pos_around_party_x; // weak -extern int dword_76D56C_terrain_cell_world_pos_around_party_x; // weak -extern int dword_76D570_terrain_cell_world_pos_around_party_x; // weak -extern int dword_76D574_terrain_cell_world_pos_around_party_x; // weak +//extern int dword_76D548_terrain_cell_world_pos_around_party_y; // weak +//extern int dword_76D54C_terrain_cell_world_pos_around_party_y; // weak +//extern int dword_76D550_terrain_cell_world_pos_around_party_y; // weak +//extern int dword_76D554_terrain_cell_world_pos_around_party_y; // weak +//extern int dword_76D558_terrain_cell_world_pos_around_party_z; // weak +//extern int dword_76D55C_terrain_cell_world_pos_around_party_z; // weak +//extern int dword_76D560_terrain_cell_world_pos_around_party_z; // weak +//extern int dword_76D564_terrain_cell_world_pos_around_party_z; // weak +//extern int dword_76D568_terrain_cell_world_pos_around_party_x; // weak +//extern int dword_76D56C_terrain_cell_world_pos_around_party_x; // weak +//extern int dword_76D570_terrain_cell_world_pos_around_party_x; // weak +//extern int dword_76D574_terrain_cell_world_pos_around_party_x; // weak extern char byte_76D5C0; extern struct unk_F7B60C stru_76D578; extern struct unk_F7B60C stru_76D590; @@ -2163,7 +2163,7 @@ int _46CEC3_get_floor_level(int x, int y, int z, unsigned int uSectorID, unsigned int *pFaceID); int __fastcall sub_46D49E_prolly_get_world_y_under_party(int a1, signed int a2, int a3, int a4, int *a5, int *a6, int a7); int __fastcall sub_46D8E3(int a1, signed int a2, int a3, int a4); -signed __int64 __fastcall _46DCC8_get_gravity_direction_outdoor(int a1, int a2, Vec3_int_ *a3); +void ODM_GetTerrainNormalAt(int pos_x, int pos_z, Vec3_int_ *out); unsigned int __fastcall sub_46DEF2(signed int a2, unsigned int uLayingItemID); int __fastcall _46DF1A_collide_against_actor(int, int); // weak void __cdecl _46E0B2_collide_against_decorations(); @@ -2225,7 +2225,7 @@ void __cdecl sub_481ED9_MessWithOutdoorCamera(); bool __fastcall sub_481EFA(RenderVertexSoft *a1, RenderVertexSoft *a2, RenderVertexSoft *a3, RenderVertexSoft *a4, int a5); signed int __fastcall sub_481FC9(RenderVertexSoft *_ECX, RenderVertexSoft *a2, RenderVertexSoft *a3, stru148 *a4); -bool __fastcall GetTerrainHeightsAroundParty(int a1, int a2); +bool IsTerrainSlopeTooHigh(int pos_x, int pos_y); int __fastcall GetTerrainHeightsAroundParty2(int a1, int a2, int *a3, int a4); struct stru148 *__fastcall sr_sub_4829B9(RenderVertexSoft *a1, RenderVertexSoft *a2, RenderVertexSoft *a3, stru148 *a4, int a5); signed int __cdecl const_1_0();