diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/6C0690.h | 9 | ||||
| -rw-r--r-- | include/6E2300.h | 26 | ||||
| -rw-r--r-- | include/m_clip.h | 12 | ||||
| -rw-r--r-- | include/m_home.h | 4 | ||||
| -rw-r--r-- | include/m_melody.h | 15 | ||||
| -rw-r--r-- | include/m_room_type.h | 95 |
6 files changed, 124 insertions, 37 deletions
diff --git a/include/6C0690.h b/include/6C0690.h index ad2c312..e5c6aac 100644 --- a/include/6C0690.h +++ b/include/6C0690.h @@ -12,13 +12,6 @@ struct Game; // void func_8009CC00_jp(); // void func_8009CC94_jp(); void mMkRm_MarkRoom(struct Game* game); -void mMld_SetDefaultMelody(void); -// void func_8009CFD4_jp(); -// void func_8009D03C_jp(); -// void func_8009D0CC_jp(); -// void func_8009D100_jp(); -// void func_8009D128_jp(); -// void func_8009D160_jp(); -// void func_8009D1A8_jp(); + #endif diff --git a/include/6E2300.h b/include/6E2300.h deleted file mode 100644 index bd5902d..0000000 --- a/include/6E2300.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef C_6E2300_H -#define C_6E2300_H - -#include "ultra64.h" - -// void func_800BE660_jp(); -// void func_800BE69C_jp(); -// void func_800BE6D8_jp(); -// void func_800BE72C_jp(); -// void func_800BE844_jp(); -// void func_800BEA50_jp(); -// void func_800BEBEC_jp(); -// void func_800BEC3C_jp(); -// void func_800BEC80_jp(); -// void func_800BED5C_jp(); -// void func_800BEE50_jp(); -// void func_800BEEB4_jp(); -// void func_800BEEC4_jp(); -u16 mRmTp_Item1ItemNo2FtrItemNo_AtPlayerRoom(u16 item); -// void func_800BF10C_jp(); -// void func_800BF230_jp(); -// void func_800BF26C_jp(); -// void mRmTp_DrawFamicomInfo(); -// void mRmTp_MakeFamicom_Fdebug(); - -#endif diff --git a/include/m_clip.h b/include/m_clip.h index b1ba09d..56714f7 100644 --- a/include/m_clip.h +++ b/include/m_clip.h @@ -11,6 +11,7 @@ struct Clip_unk_040_unk_14_arg0; struct Clip_unk_07C_unk_0_arg0; struct FurnitureActor; struct Game_Play; +struct Game; struct ObjectExchangeBank; struct ObjectStatus; struct ShadowData; @@ -107,13 +108,20 @@ typedef struct Clip_unk_07C { /* 0x00 */ Clip_unk_07C_unk_0 unk_0; /* 0x04 */ Clip_unk_07C_unk_4 unk_4; } Clip_unk_07C; // size >= 0x8 +typedef s32 (*Clip_unk_080_unk_04)(struct Game* game, u16 ftr, s32* utX, s32* utZ, u16* rotation, + s32* squareOffs, s32* layer); typedef void (*Clip_unk_080_unk_24)(void); +typedef s32 (*Clip_unk_080_unk_28)(struct Game* game, u16 ftr, s32 res,s32 utX, s32 utZ, u16 rotation, + s32 squareOffs, s32 layer); typedef UNK_RET (*Clip_unk_080_unk_34)(struct FurnitureActor* furnitureActor, struct Actor* myHouseActor, struct Game_Play* game_play, f32 arg0, f32 arg1); typedef struct Clip_unk_080 { - /* 0x00 */ UNK_TYPE1 unk_00[0x24]; + /* 0x00 */ UNK_TYPE1 unk_00[0x4]; + /* 0x04 */ Clip_unk_080_unk_04 unk_04; + /* 0x08 */ UNK_TYPE1 unk_08[0x1C]; /* 0x24 */ Clip_unk_080_unk_24 unk_24; - /* 0x28 */ UNK_TYPE1 unk_28[0xC]; + /* 0x28 */ Clip_unk_080_unk_28 unk_28; + /* 0x2C */ UNK_TYPE1 unk_2C[0x8]; /* 0x34 */ Clip_unk_080_unk_34 unk_34; // open close proc } Clip_unk_080; // size >= 0x8 diff --git a/include/m_home.h b/include/m_home.h index 6b64bf0..4888504 100644 --- a/include/m_home.h +++ b/include/m_home.h @@ -66,7 +66,9 @@ typedef struct HomeBitfield { // Original name, taken from m_flashrom typedef struct mHm_hs_c { /* 0x000 */ PersonalID_c ownerID; - /* 0x010 */ UNK_TYPE1 unk_010[0x12]; + /* 0x010 */ UNK_TYPE1 unk_010[0x4]; + /* 0x014 */ u8 roomId; + /* 0x014 */ UNK_TYPE1 unk_015[0xD]; /* 0x022 */ HomeBitfield unk_022; /* 0x024 */ u8 unk_024; /* 0x025 */ UNK_TYPE1 unk_025[0x3]; diff --git a/include/m_melody.h b/include/m_melody.h new file mode 100644 index 0000000..dfb0e5b --- /dev/null +++ b/include/m_melody.h @@ -0,0 +1,15 @@ +#ifndef M_MELODY_H +#define M_MELODY_H + +#include "ultra64.h" + +void mMld_SetDefaultMelody(void); +void mMld_TransformMelodyData_u64_2_u8(u8* dst, u64 src); +// void func_8009D03C_jp(); +// void func_8009D0CC_jp(); +// void func_8009D100_jp(); +// void func_8009D128_jp(); +// void func_8009D160_jp(); +// void func_8009D1A8_jp(); + +#endif diff --git a/include/m_room_type.h b/include/m_room_type.h new file mode 100644 index 0000000..f5396a0 --- /dev/null +++ b/include/m_room_type.h @@ -0,0 +1,95 @@ +#ifndef M_ROOM_TYPE_H +#define M_ROOM_TYPE_H + +#include "ultra64.h" +#include "libu64/gfxprint.h" + +struct Game; + +#define mRmTp_FTR_UNIT_MAX 4 +#define FTR_NUM 947 + +typedef enum mRmTp_FurnitureSize { + /* 0 */ mRmTp_FTRSIZE_1x1, + /* 1 */ mRmTp_FTRSIZE_1x2, + /* 2 */ mRmTp_FTRSIZE_2x2, + /* 3 */ mRmTp_FTRSIZE_MAX +} mRmTp_FurnitureSize; + +typedef enum mRmTp_Direction { + /* 0 */ mRmTp_DIRECT_SOUTH, + /* 1 */ mRmTp_DIRECT_EAST, + /* 2 */ mRmTp_DIRECT_NORTH, + /* 3 */ mRmTp_DIRECT_WEST, + /* 4 */ mRmTp_DIRECT_MAX +} mRmTp_Direction; + +typedef enum mRmTp_SEType { + /* 0 */ mRmTp_FTR_SE_NONE, + /* 1 */ mRmTp_FTR_SE_SOFT_CHAIR, + /* 2 */ mRmTp_FTR_SE_HARD_CHAIR, + /* 3 */ mRmTp_FTR_SE_BUBU_CHAIR, + /* 4 */ mRmTp_FTR_SE_TOILET_CHAIR, + /* 5 */ mRmTp_FTR_SE_MAX +} mRmTp_SEType; + +typedef enum mRmTp_Action { + /* 0 */ mRmTp_CHAIR_ACTION_SIT, + /* 1 */ mRmTp_CHAIR_ACTION_STAND, + /* 2 */ mRmTp_CHAIR_ACTION_MAX +} mRmTp_Action; + +typedef enum mRmTp_BirthType { + /* 00 */ mRmTp_BIRTH_TYPE_GRP_A, + /* 01 */ mRmTp_BIRTH_TYPE_GRP_B, + /* 02 */ mRmTp_BIRTH_TYPE_GRP_C, + /* 03 */ mRmTp_BIRTH_TYPE_EVENT, + /* 04 */ mRmTp_BIRTH_TYPE_BIRTHDAY, + /* 05 */ mRmTp_BIRTH_TYPE_HALLOWEEN, + /* 06 */ mRmTp_BIRTH_TYPE_HANIWA, + /* 07 */ mRmTp_BIRTH_TYPE_LOTTERY, + /* 08 */ mRmTp_BIRTH_TYPE_FTR_CLOTH, + /* 09 */ mRmTp_BIRTH_TYPE_FTR_UMBRELLA, + /* 10 */ mRmTp_BIRTH_TYPE_FTR_INSECT, + /* 11 */ mRmTp_BIRTH_TYPE_FTR_FISH, + /* 12 */ mRmTp_BIRTH_TYPE_SINGLE_FOSSIL, + /* 13 */ mRmTp_BIRTH_TYPE_MULTI_FOSSIL, + /* 14 */ mRmTp_BIRTH_TYPE_XMAS, + /* 15 */ mRmTp_BIRTH_TYPE_SANTA, + /* 16 */ mRmTp_BIRTH_TYPE_UNOBTAINABLE, + /* 17 */ mRmTp_BIRTH_TYPE_SNOWMAN, +} mRmTp_BirthType; + +typedef struct mRmTp_FtrPlaceInfo { + /* 0x0 */ s32 exists; + /* 0x4 */ s32 utX; + /* 0x8 */ s32 utZ; +} mRmTp_FtrPlaceInfo; // size = 0xC + +typedef struct mRmTp_FtrPlaceData { + /* 0x0 */ u8 exist; + /* 0x2 */ s16 ofsX; + /* 0x4 */ s16 ofsZ; +} mRmTp_FtrPlaceData; // size = 0x8 + +void mRmTp_InitFtrPlaceInfo(mRmTp_FtrPlaceInfo* info); +s32 mRmTp_ItemNo2FtrSize(u16 name); +mRmTp_FtrPlaceData* mRmTp_GetFtrUnitPlaceData(s32 size, s32 dir); +s32 mRmTp_GetFurnitureData(u16 ftr, s32 ut_x, s32 ut_z, mRmTp_FtrPlaceInfo* info); +void mRmTp_AssignFtrFgIdx(u16* dst, u16* src, u16* arg2, u16* arg3); +void mRmTp_MakeFtrNoTable(u16* dst, u16* src); +void* mRmTp_MallocRam(struct Game* game, size_t size); +void mRmTp_FreeRam(struct Game* game, void* ptr); +s32 mRmTp_CharVacRight2Left(u8* str, s32 len); +s32 mRmTp_GetFtrActionSE(s32 ftr_idx, s32 mode); +s32 mRmTp_CheckShopFtr(u16 item); +u8* mRmTp_CheckFtrBirthInfoTop(); +s32 mRmTp_GetFloorIdx(void); +u16 mRmTp_Item1ItemNo2FtrItemNo_AtPlayerRoom(u16 item); +u16 mRmTp_FtrItemNo2Item1ItemNo(u16 item); +void mRmTp_MakeMelodyData(); +u8* mRmTp_GetMelodyData(); +void mRmTp_DrawFamicomInfo(gfxprint* gfxprint); +void mRmTp_MakeFamicom_Fdebug(); + +#endif |
