mirror of
https://github.com/izzy2lost/2ship2harkinian-Android.git
synced 2026-06-19 01:20:08 -07:00
z_kaleido_map.c OK and Documented (Pause Menu Map Page) + related icon_item statics (dungeon/field/jpn) (#1094)
* import pause menu map page * better owl-warp docs * fix func name * missed some owlwarps * fix merge from master * fix scene region code * PR Suggestions * add comment * add description of gWorldMapImageTex, thanks @EllipticEllipsis * clearup docs * missed a comma * bad formatter, drop comment * more cleanup
This commit is contained in:
+2
-2
@@ -3572,7 +3572,7 @@ _DW({ \
|
||||
|
||||
#define gDPLoadTextureBlock(pkt, timg, fmt, siz, width, height, \
|
||||
pal, cms, cmt, masks, maskt, shifts, shiftt) \
|
||||
{ \
|
||||
_DW({ \
|
||||
gDPSetTextureImage(pkt, fmt, siz##_LOAD_BLOCK, 1, timg); \
|
||||
gDPSetTile(pkt, fmt, siz##_LOAD_BLOCK, 0, 0, G_TX_LOADTILE, \
|
||||
0 , cmt, maskt, shiftt, cms, masks, shifts); \
|
||||
@@ -3588,7 +3588,7 @@ _DW({ \
|
||||
gDPSetTileSize(pkt, G_TX_RENDERTILE, 0, 0, \
|
||||
((width)-1) << G_TEXTURE_IMAGE_FRAC, \
|
||||
((height)-1) << G_TEXTURE_IMAGE_FRAC); \
|
||||
}
|
||||
})
|
||||
|
||||
#define gDPLoadTextureBlockYuv(pkt, timg, fmt, siz, width, height, \
|
||||
pal, cms, cmt, masks, maskt, shifts, shiftt) \
|
||||
|
||||
+10
-10
@@ -1672,8 +1672,8 @@ void func_80106644(PlayState* play, s16 arg1, s16 arg2, s16 arg3);
|
||||
// void func_80108558(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7);
|
||||
// void func_80108A10(void);
|
||||
// void func_80108A64(void);
|
||||
// void func_80108AF8(void);
|
||||
// void func_801090B0(void);
|
||||
void func_80108AF8(PlayState* play);
|
||||
s32 func_801090B0(s32 arg0);
|
||||
s32 func_80109124(s16 arg0);
|
||||
// void func_801091F0(void);
|
||||
// void func_80109428(void);
|
||||
@@ -1805,15 +1805,15 @@ Vec3f* OLib_Vec3fDiffDegF(Vec3f* dest, Vec3f* a, Vec3f* b);
|
||||
Vec3s* OLib_Vec3fDiffBinAng(Vec3s* dest, Vec3f* a, Vec3f* b);
|
||||
void OLib_DbCameraVec3fDiff(PosRot* a, Vec3f* b, Vec3f* dest, s16 mode);
|
||||
void OLib_DbCameraVec3fSum(PosRot* a, Vec3f* b, Vec3f* dest, s16 mode);
|
||||
// void func_8010CB80(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE2 param_5, UNK_TYPE2 param_6, UNK_TYPE2 param_7, UNK_TYPE2 param_8, UNK_TYPE2 param_9, UNK_TYPE2 param_10);
|
||||
Gfx* func_8010CD98(Gfx* displayListHead, void* texture, s16 textureWidth, s16 textureHeight, s16 rectLeft, s16 rectTop, s16 rectWidth, s16 rectHeight, u16 dsdx, u16 dtdy);
|
||||
Gfx* func_8010CB80(Gfx* gfx, TexturePtr texture, s16 textureWidth, s16 textureHeight, s16 rectLeft, s16 rectTop, s16 rectWidth, s16 rectHeight, u16 dsdx, u16 dtdy);
|
||||
Gfx* func_8010CD98(Gfx* gfx, TexturePtr texture, s16 textureWidth, s16 textureHeight, s16 rectLeft, s16 rectTop, s16 rectWidth, s16 rectHeight, u16 dsdx, u16 dtdy);
|
||||
// void func_8010CFBC(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE2 param_5, UNK_TYPE2 param_6, UNK_TYPE2 param_7, UNK_TYPE2 param_8, UNK_TYPE2 param_9, UNK_TYPE2 param_10, UNK_TYPE2 param_11, UNK_TYPE2 param_12, UNK_TYPE2 param_13, UNK_TYPE2 param_14);
|
||||
// void func_8010D2D4(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE2 param_5, UNK_TYPE2 param_6, UNK_TYPE2 param_7, UNK_TYPE2 param_8, UNK_TYPE2 param_9, UNK_TYPE2 param_10, UNK_TYPE2 param_11);
|
||||
// void func_8010D480(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE2 param_5, UNK_TYPE2 param_6, UNK_TYPE2 param_7, UNK_TYPE2 param_8, UNK_TYPE2 param_9, UNK_TYPE2 param_10, UNK_TYPE2 param_11, UNK_TYPE2 param_12, UNK_TYPE2 param_13, UNK_TYPE2 param_14, UNK_TYPE4 param_15, UNK_TYPE4 param_16);
|
||||
Gfx* func_8010D7D0(Gfx* displayListHead, void* texture, s16 textureWidth, s16 textureHeight, s16 rectLeft, s16 rectTop, s16 rectWidth, s16 rectHeight, u16 dsdx, u16 dtdy);
|
||||
Gfx* func_8010D7D0(Gfx* gfx, TexturePtr texture, s16 textureWidth, s16 textureHeight, s16 rectLeft, s16 rectTop, s16 rectWidth, s16 rectHeight, u16 dsdx, u16 dtdy);
|
||||
// void func_8010D9F4(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE2 param_5, UNK_TYPE2 param_6, UNK_TYPE2 param_7, UNK_TYPE2 param_8, UNK_TYPE2 param_9, UNK_TYPE4 param_10, UNK_TYPE4 param_11, UNK_TYPE4 param_12, UNK_TYPE2 param_13, UNK_TYPE2 param_14);
|
||||
Gfx* func_8010DC58(Gfx* displayListHead, void* texture, s16 textureWidth, s16 textureHeight, u16 i);
|
||||
// void func_8010DE38(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE2 param_5, UNK_TYPE2 param_6);
|
||||
Gfx* func_8010DC58(Gfx* gfx, TexturePtr texture, s16 textureWidth, s16 textureHeight, u16 i);
|
||||
Gfx* func_8010DE38(Gfx* gfx, TexturePtr texture, s32 fmt, s16 textureWidth, s16 textureHeight, u16 point);
|
||||
// void func_8010E028(void);
|
||||
void Interface_StartTimer(s16 timerId, s16 seconds);
|
||||
void Interface_StartPostmanTimer(s16 seconds, s16 bunnyHoodState);
|
||||
@@ -2056,7 +2056,7 @@ void Inventory_ChangeEquipment(s16 value);
|
||||
u8 Inventory_DeleteEquipment(PlayState* play, s16 equipment);
|
||||
void Inventory_ChangeUpgrade(s16 upgrade, u32 value);
|
||||
s32 Inventory_IsMapVisible(s16 sceneId);
|
||||
void Inventory_SetMapVisibility(s16 tingleIndex);
|
||||
void Inventory_SetWorldMapCloudVisibility(s16 tingleIndex);
|
||||
void Inventory_SaveDekuPlaygroundHighScore(s16 timerId);
|
||||
void Inventory_IncrementSkullTokenCount(s16 sceneIndex);
|
||||
s16 Inventory_GetSkullTokenCount(s16 sceneIndex);
|
||||
@@ -2098,7 +2098,7 @@ void Scene_HeaderCmdActorCutsceneList(PlayState* play, SceneCmd* cmd);
|
||||
void Scene_HeaderCmdMiniMap(PlayState* play, SceneCmd* cmd);
|
||||
void Scene_HeaderCmd1D(PlayState* play, SceneCmd* cmd);
|
||||
void Scene_HeaderCmdMiniMapCompassInfo(PlayState* play, SceneCmd* cmd);
|
||||
void Scene_HeaderCmdSetAreaVisitedFlag(PlayState* play, SceneCmd* cmd);
|
||||
void Scene_HeaderCmdSetRegionVisitedFlag(PlayState* play, SceneCmd* cmd);
|
||||
void Scene_HeaderCmdAnimatedMaterials(PlayState* play, SceneCmd* cmd);
|
||||
void Scene_SetExitFade(PlayState* play);
|
||||
s32 Scene_ProcessHeader(PlayState* play, SceneCmd* header);
|
||||
@@ -2360,7 +2360,7 @@ void Message_FindMessageNES(PlayState* play, u16 textId);
|
||||
// void Message_LoadLocalizedRupeesNES(void);
|
||||
// void Message_LoadRupeesNES(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE2 param_5);
|
||||
// void Message_LoadTimeNES(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5);
|
||||
// void Message_LoadAreaTextNES(void);
|
||||
// void Message_LoadOwlWarpTextNES(void);
|
||||
// void func_80159438(void);
|
||||
void func_8015966C(PlayState* play, UNK_PTR puParm2, UNK_TYPE arg3);
|
||||
// void func_8015A144(void);
|
||||
|
||||
+8
-2
@@ -47,8 +47,9 @@
|
||||
#define R_RUN_SPEED_LIMIT REG(45)
|
||||
#define R_UPDATE_RATE SREG(30)
|
||||
#define R_PAUSE_MENU_MODE SREG(94)
|
||||
#define R_C_UP_ICON_X YREG(88)
|
||||
#define R_C_UP_ICON_Y YREG(89)
|
||||
#define R_PAUSE_WORLD_MAP_YAW YREG(24)
|
||||
#define R_PAUSE_WORLD_MAP_Y_OFFSET YREG(25)
|
||||
#define R_PAUSE_WORLD_MAP_DEPTH YREG(26)
|
||||
#define R_MAGIC_FILL_COLOR(i) ZREG(0 + i)
|
||||
#define R_C_BTN_COLOR(i) ZREG(39 + i)
|
||||
#define R_B_BTN_COLOR(i) ZREG(43 + i)
|
||||
@@ -71,8 +72,13 @@
|
||||
#define R_A_ICON_X XREG(20)
|
||||
#define R_A_BTN_COLOR(i) XREG(22 + i)
|
||||
#define R_MAGIC_CONSUME_TIMER_GIANTS_MASK XREG(41)
|
||||
#define R_PAUSE_DBG_MAP_CLOUD_ON XREG(50)
|
||||
#define R_PAUSE_DBG_MAP_CLOUD_X XREG(52)
|
||||
#define R_PAUSE_DBG_MAP_CLOUD_Y XREG(53)
|
||||
#define R_MOON_CRASH_TIMER_Y XREG(80)
|
||||
#define R_MOON_CRASH_TIMER_X XREG(81)
|
||||
#define R_PAUSE_OWLWARP_ALPHA XREG(87)
|
||||
#define R_REVERSE_FLOOR_INDEX XREG(94)
|
||||
#define R_MINIMAP_DISABLED XREG(95)
|
||||
#define R_B_LABEL_DD WREG(0)
|
||||
#define R_OW_MINIMAP_X WREG(29)
|
||||
|
||||
+3
-3
@@ -439,7 +439,7 @@ typedef struct {
|
||||
/* 0x238 */ s16 cursorPoint[5];
|
||||
/* 0x242 */ s16 cursorXIndex[5];
|
||||
/* 0x24C */ s16 cursorYIndex[5];
|
||||
/* 0x256 */ s16 unk_256;
|
||||
/* 0x256 */ s16 unk_256; // Uses DungeonItem enum
|
||||
/* 0x258 */ s16 cursorSpecialPos;
|
||||
/* 0x25A */ s16 pageSwitchTimer;
|
||||
/* 0x25C */ u16 unk_25C;
|
||||
@@ -472,8 +472,8 @@ typedef struct {
|
||||
/* 0x2BA */ s16 equipAnimScale; // scale of item icon while moving being equipped to c-button
|
||||
/* 0x2BC */ s16 equipAnimShrinkRate; // rate the scale is shrinking for the item icon while moving being equipped to c-button
|
||||
/* 0x2BE */ s16 unk_2BE[5];
|
||||
/* 0x2C8 */ u16 unk_2C8;
|
||||
/* 0x2CA */ s16 unk_2CA;
|
||||
/* 0x2C8 */ u16 unk_2C8; // Uses PauseMenuPage enum for Owl Warp. Never set.
|
||||
/* 0x2CA */ s16 unk_2CA; // Uses OwlStatueId enum for Owl Warp. Never set.
|
||||
} PauseContext; // size = 0x2D0
|
||||
|
||||
typedef struct {
|
||||
|
||||
+14
-1
@@ -65,6 +65,19 @@ typedef enum {
|
||||
/* 0x1C */ QUEST_HEART_PIECE_COUNT = 0x1C
|
||||
} QuestItem;
|
||||
|
||||
typedef enum {
|
||||
/* -1 */ DUNGEON_NONE = -1,
|
||||
/* 0 */ DUNGEON_BOSS_KEY,
|
||||
/* 1 */ DUNGEON_COMPASS,
|
||||
/* 2 */ DUNGEON_MAP,
|
||||
/* 3 */ DUNGEON_STRAY_FAIRIES,
|
||||
/* 4 */ DUNGEON_FLOOR_INDEX_4, // Top Floor
|
||||
/* 5 */ DUNGEON_FLOOR_INDEX_3,
|
||||
/* 6 */ DUNGEON_FLOOR_INDEX_2,
|
||||
/* 7 */ DUNGEON_FLOOR_INDEX_1,
|
||||
/* 8 */ DUNGEON_FLOOR_INDEX_0 // Bottom Floor
|
||||
} DungeonItem;
|
||||
|
||||
typedef enum {
|
||||
/* 0x00 */ SLOT_OCARINA,
|
||||
/* 0x01 */ SLOT_BOW,
|
||||
@@ -550,6 +563,6 @@ typedef enum {
|
||||
/* 0x74 */ GID_PICTO_BOX,
|
||||
/* 0x75 */ GID_MASK_FIERCE_DEITY,
|
||||
/* 0x76 */ GID_MAX
|
||||
} GetItemDrawID;
|
||||
} GetItemDrawId;
|
||||
|
||||
#endif
|
||||
|
||||
+2
-2
@@ -272,8 +272,8 @@ typedef struct Save {
|
||||
/* 0x0EF0 */ u32 lotteryCodeGuess; // Lottery code chosen by player (only uses lower three hex digits)
|
||||
/* 0x0EF4 */ u32 shootingGalleryHighScores; // High scores for both shooting galleries. Town uses lower 16 bits, Swamp uses higher 16 bits.
|
||||
/* 0x0EF8 */ u8 weekEventReg[100]; // "week_event_reg"
|
||||
/* 0x0F5C */ u32 mapsVisited; // "area_arrival"
|
||||
/* 0x0F60 */ u32 mapsVisible; // "cloud_clear"
|
||||
/* 0x0F5C */ u32 regionsVisited; // "area_arrival"
|
||||
/* 0x0F60 */ u32 worldMapCloudVisibility; // "cloud_clear"
|
||||
/* 0x0F64 */ u8 unk_F64; // "oca_rec_flag" has scarecrows song
|
||||
/* 0x0F65 */ u8 unk_F65; // "oca_rec_flag8" scarecrows song set?
|
||||
/* 0x0F66 */ u8 scarecrowSpawnSong[128];
|
||||
|
||||
+54
-11
@@ -174,9 +174,9 @@ typedef struct {
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ u8 code;
|
||||
/* 0x1 */ u8 cameraMovement;
|
||||
/* 0x4 */ u32 area;
|
||||
} SCmdMiscSettings; // size = 0x8
|
||||
/* 0x1 */ u8 sceneCsCount;
|
||||
/* 0x4 */ void* segment;
|
||||
} SCmdCutsceneList; // size = 0x8
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ u8 code;
|
||||
@@ -186,9 +186,8 @@ typedef struct {
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ u8 code;
|
||||
/* 0x1 */ u8 data1;
|
||||
/* 0x4 */ u32 data2;
|
||||
} SCmdWorldMapVisited; // size = 0x8
|
||||
/* 0x1 */ UNK_TYPE1 pad[7];
|
||||
} SCmdRegionVisited; // size = 0x8
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ u8 code;
|
||||
@@ -523,9 +522,9 @@ typedef union {
|
||||
/* Command: 0x14 */ SCmdEndMarker endMarker;
|
||||
/* Command: 0x15 */ SCmdSoundSettings soundSettings;
|
||||
/* Command: 0x16 */ SCmdEchoSettings echoSettings;
|
||||
/* Command: 0x17 */ SCmdMiscSettings miscSettings;
|
||||
/* Command: 0x17 */ SCmdCutsceneList cutsceneList;
|
||||
/* Command: 0x18 */ SCmdAltHeaders altHeaders;
|
||||
/* Command: 0x19 */ SCmdWorldMapVisited worldMapVisited;
|
||||
/* Command: 0x19 */ SCmdRegionVisited regionVisited;
|
||||
/* Command: 0x1A */ SCmdTextureAnimations textureAnimations;
|
||||
/* Command: 0x1B */ SCmdCutsceneActorList cutsceneActorList;
|
||||
/* Command: 0x1C */ SCmdMinimapSettings minimapSettings;
|
||||
@@ -533,6 +532,49 @@ typedef union {
|
||||
/* Command: 0x1E */ SCmdMinimapChests minimapChests;
|
||||
} SceneCmd; // size = 0x8
|
||||
|
||||
// Sets cursor point options on the world map
|
||||
typedef enum {
|
||||
/* 0x0 */ REGION_GREAT_BAY,
|
||||
/* 0x1 */ REGION_ZORA_HALL,
|
||||
/* 0x2 */ REGION_ROMANI_RANCH,
|
||||
/* 0x3 */ REGION_DEKU_PALACE,
|
||||
/* 0x4 */ REGION_WOODFALL,
|
||||
/* 0x5 */ REGION_CLOCK_TOWN,
|
||||
/* 0x6 */ REGION_SNOWHEAD,
|
||||
/* 0x7 */ REGION_IKANA_GRAVEYARD,
|
||||
/* 0x8 */ REGION_IKANA_CANYON,
|
||||
/* 0x9 */ REGION_GORON_VILLAGE,
|
||||
/* 0xA */ REGION_STONE_TOWER,
|
||||
/* 0xB */ REGION_MAX
|
||||
} RegionId;
|
||||
|
||||
// Sets warp points for owl statues
|
||||
typedef enum {
|
||||
/* 0x0 */ OWL_WARP_GREAT_BAY_COAST,
|
||||
/* 0x1 */ OWL_WARP_ZORA_CAPE,
|
||||
/* 0x2 */ OWL_WARP_SNOWHEAD,
|
||||
/* 0x3 */ OWL_WARP_MOUNTAIN_VILLAGE,
|
||||
/* 0x4 */ OWL_WARP_CLOCK_TOWN,
|
||||
/* 0x5 */ OWL_WARP_MILK_ROAD,
|
||||
/* 0x6 */ OWL_WARP_WOODFALL,
|
||||
/* 0x7 */ OWL_WARP_SOUTHERN_SWAMP,
|
||||
/* 0x8 */ OWL_WARP_IKANA_CANYON,
|
||||
/* 0x9 */ OWL_WARP_STONE_TOWER,
|
||||
/* 0xA */ OWL_WARP_ENTRANCE, // Special index for warping to the entrance of a scene
|
||||
/* 0xB */ OWL_WARP_MAX
|
||||
} OwlWarpId;
|
||||
|
||||
// Sets cloud visibility on the world map
|
||||
typedef enum {
|
||||
/* 0 */ TINGLE_MAP_CLOCK_TOWN,
|
||||
/* 1 */ TINGLE_MAP_WOODFALL,
|
||||
/* 2 */ TINGLE_MAP_SNOWHEAD,
|
||||
/* 3 */ TINGLE_MAP_ROMANI_RANCH,
|
||||
/* 4 */ TINGLE_MAP_GREAT_BAY,
|
||||
/* 5 */ TINGLE_MAP_STONE_TOWER,
|
||||
/* 6 */ TINGLE_MAP_MAX
|
||||
} TingleMapId;
|
||||
|
||||
typedef enum {
|
||||
/* 0x00 */ SCENE_20SICHITAI2, // Southern Swamp (Clear)
|
||||
/* 0x01 */ SCENE_UNSET_1,
|
||||
@@ -810,7 +852,7 @@ typedef enum {
|
||||
/* 0x16 */ SCENE_CMD_ID_ECHO_SETTINGS,
|
||||
/* 0x17 */ SCENE_CMD_ID_CUTSCENE_LIST,
|
||||
/* 0x18 */ SCENE_CMD_ID_ALTERNATE_HEADER_LIST,
|
||||
/* 0x19 */ SCENE_CMD_ID_MISC_SETTINGS,
|
||||
/* 0x19 */ SCENE_CMD_ID_SET_REGION_VISITED,
|
||||
/* 0x1A */ SCENE_CMD_ID_ANIMATED_MATERIAL_LIST,
|
||||
/* 0x1B */ SCENE_CMD_ID_ACTOR_CUTSCENE_LIST,
|
||||
/* 0x1C */ SCENE_CMD_ID_MINIMAP_INFO,
|
||||
@@ -899,8 +941,9 @@ typedef enum {
|
||||
#define SCENE_CMD_ALTERNATE_HEADER_LIST(alternateHeaderList) \
|
||||
{ SCENE_CMD_ID_ALTERNATE_HEADER_LIST, 0, CMD_PTR(alternateHeaderList) }
|
||||
|
||||
#define SCENE_CMD_MISC_SETTINGS() \
|
||||
{ SCENE_CMD_ID_MISC_SETTINGS, 0, CMD_W(0) }
|
||||
#define SCENE_CMD_MISC_SETTINGS SCENE_CMD_SET_REGION_VISITED // TODO: ZAPD Capatability
|
||||
#define SCENE_CMD_SET_REGION_VISITED() \
|
||||
{ SCENE_CMD_ID_SET_REGION_VISITED, 0, CMD_W(0) }
|
||||
|
||||
#define SCENE_CMD_ANIMATED_MATERIAL_LIST(matAnimList) \
|
||||
{ SCENE_CMD_ID_ANIMATED_MATERIAL_LIST, 0, CMD_PTR(matAnimList) }
|
||||
|
||||
Reference in New Issue
Block a user