"decompile" ovl_map_mark_data, make minor tweaks to z_map_mark.c (#704)

* "decompile" ovl_map_mark_data, make minor tweaks to z_map_mark.c

* implement some suggestions

* eliminate wrapping braces
This commit is contained in:
mzxrules
2021-03-29 13:24:08 -04:00
committed by GitHub
parent f4499a8de2
commit 86f16cf662
9 changed files with 2944 additions and 62 deletions
-1
View File
@@ -3541,7 +3541,6 @@ extern u8 gGfxSPTaskStack[0x400]; // 0x400 bytes
extern GfxPool gGfxPools[2]; // 0x24820 bytes
extern u8 gAudioHeap[0x38000]; // 0x38000 bytes
extern u8 gSystemHeap[];
extern MapMarksData* gMapMarkDataTable[];
//extern ? D_A4040004;
//extern ? D_A4040008;
//extern ? D_A404000C;
+1 -13
View File
@@ -19,6 +19,7 @@
#include "z64animation.h"
#include "z64dma.h"
#include "z64math.h"
#include "z64map_mark.h"
#include "z64transition.h"
#include "bgm.h"
#include "sfx.h"
@@ -1167,19 +1168,6 @@ typedef struct {
/* 0x6C */ s16* skullFloorIconY; // dungeon big skull icon Y pos
} MapData; // size = 0x70
typedef struct {
/* 0x00 */ s8 chestFlag; // chest icon is only displayed if this flag is not set for the current room
/* 0x01 */ u8 x, y; // coordinates to place the icon (top-left corner), relative to the minimap texture
} MapMarkPoint; // size = 0x3
typedef struct {
/* 0x00 */ s8 markType; // 0 for the chest icon, 1 for the boss skull icon, -1 for none
/* 0x01 */ u8 count; // number of icons to display
/* 0x02 */ MapMarkPoint points[12];
} MapMarkData; // size = 0x26
typedef MapMarkData MapMarksData[3]; // size = 0x72
typedef struct DebugDispObject {
/* 0x00 */ Vec3f pos;
/* 0x0C */ Vec3s rot;
+25
View File
@@ -0,0 +1,25 @@
#ifndef _Z64MAP_MARK_H_
#define _Z64MAP_MARK_H_
#include "ultra64.h"
#define MAP_MARK_ICON_NONE -1
#define MAP_MARK_ICON_CHEST 0
#define MAP_MARK_ICON_BOSS 1
typedef struct {
/* 0x00 */ s8 chestFlag; // chest icon is only displayed if this flag is not set for the current room
/* 0x01 */ u8 x, y; // coordinates to place the icon (top-left corner), relative to the minimap texture
} MapMarkPoint; // size = 0x3
typedef struct {
/* 0x00 */ s8 markType; // 0 for the chest icon, 1 for the boss skull icon, -1 for none
/* 0x01 */ u8 count; // number of icons to display
/* 0x02 */ MapMarkPoint points[12];
} MapMarkIconData; // size = 0x26
typedef MapMarkIconData MapMarkData[3]; // size = 0x72
extern MapMarkData* gMapMarkDataTable[];
#endif