mirror of
https://github.com/ACreTeam/ac-decomp
synced 2026-06-13 13:16:25 -04:00
Finish & link m_inventory_ovl
This commit is contained in:
@@ -38,6 +38,9 @@ typedef enum audio_sound_effects {
|
||||
NA_SE_25 = 0x25,
|
||||
NA_SE_26 = 0x26,
|
||||
|
||||
NA_SE_MENU_PAUSE = 0x30,
|
||||
NA_SE_31 = 0x31,
|
||||
|
||||
NA_SE_DRAWER_SHUT = 0x3A,
|
||||
|
||||
NA_SE_ITEM_GET = 0x40,
|
||||
@@ -78,6 +81,8 @@ typedef enum audio_sound_effects {
|
||||
NA_SE_ROD_STROKE = 0x109,
|
||||
NA_SE_ROD_BACK,
|
||||
|
||||
NA_SE_EAT = 0x113,
|
||||
|
||||
NA_SE_WEAR = 0x11C,
|
||||
|
||||
NA_SE_SCOOP1 = 0x11E,
|
||||
|
||||
+4
-1
@@ -4,6 +4,9 @@
|
||||
#include "types.h"
|
||||
|
||||
#define SQRT_OF_2_F 1.41421356237309504880f
|
||||
#define SQRT_OF_3_F 1.73205080756887729353f
|
||||
|
||||
#define SQRT_3_OVER_3_F (SQRT_OF_3_F / 3.0f)
|
||||
|
||||
#define M_PI 3.14159265358979323846f
|
||||
|
||||
@@ -15,4 +18,4 @@ f32 fatan2(f32, f32);
|
||||
f64 fsqrt(f32);
|
||||
|
||||
f32 facos(f32);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -9,6 +9,17 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
enum {
|
||||
mBGM_PAUSE_0,
|
||||
mBGM_PAUSE_1,
|
||||
mBGM_PAUSE_2,
|
||||
mBGM_PAUSE_NOTICE,
|
||||
mBGM_PAUSE_4,
|
||||
mBGM_PAUSE_STOP,
|
||||
|
||||
mBGM_PAUSE_NUM
|
||||
};
|
||||
|
||||
extern void mBGMPsComp_make_ps_fanfare(u8 bgm_num, u16 stop_type);
|
||||
extern void mBGMPsComp_make_ps_lost_fanfare(u8 bgm_num, u16 stop_type);
|
||||
extern void mBGMPsComp_make_ps_wipe(u16 stop_type);
|
||||
|
||||
@@ -11,9 +11,10 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#define mIV_PLAYER_JOINT_NUM 27
|
||||
#define mIV_PLAYER_JOINT_NUM (mPlayer_JOINT_NUM + 1)
|
||||
#define mIV_ITEM_JOINT_NUM 8
|
||||
#define mIV_PLAYER_EFFECT_NUM 20
|
||||
#define mIV_COLLECT_NUM 40
|
||||
|
||||
enum {
|
||||
mIV_ITEM_SCALE_TYPE_NONE,
|
||||
@@ -30,11 +31,26 @@ enum {
|
||||
mIV_PAGE_FISH_COLLECTION,
|
||||
mIV_PAGE_INVENTORY,
|
||||
mIV_PAGE_INSECT_COLLECTION,
|
||||
mIV_PAGE_ORIGINAL_DESIGNS,
|
||||
|
||||
mIV_PAGE_NUM
|
||||
};
|
||||
|
||||
enum {
|
||||
mIV_ANIM_WALK,
|
||||
mIV_ANIM_CATCH,
|
||||
mIV_ANIM_CHANGE,
|
||||
mIV_ANIM_EAT,
|
||||
|
||||
mIV_ANIM_NUM
|
||||
};
|
||||
|
||||
enum {
|
||||
mIV_STRING_LAND_NAME,
|
||||
mIV_STRING_PLAYER_NAME,
|
||||
|
||||
mIV_STRING_NUM
|
||||
};
|
||||
|
||||
typedef struct inventory_effect_s {
|
||||
int timer;
|
||||
xyz_t pos;
|
||||
@@ -46,8 +62,8 @@ typedef mActor_name_t (*mIV_SET_COLLECT_ITEMNO_PROC)(int, int);
|
||||
|
||||
/* sizeof (struct inventory_ovl_s) == 0x5EC */
|
||||
struct inventory_ovl_s {
|
||||
cKF_SkeletonInfo_R_c player_keyframe0;
|
||||
cKF_SkeletonInfo_R_c player_keyframe1;
|
||||
cKF_SkeletonInfo_R_c player_main_keyframe;
|
||||
cKF_SkeletonInfo_R_c player_com_keyframe;
|
||||
s_xyz player_work[mIV_PLAYER_JOINT_NUM];
|
||||
s_xyz player_morph[mIV_PLAYER_JOINT_NUM];
|
||||
|
||||
@@ -60,8 +76,8 @@ struct inventory_ovl_s {
|
||||
|
||||
u8 _374[0x3BC - 0x374];
|
||||
|
||||
u16 selected_item_bitfield;
|
||||
u16 selected_mail_bitfield;
|
||||
u16 selectable_item_bitfield;
|
||||
u16 selectable_mail_bitfield;
|
||||
|
||||
u32 disp_money;
|
||||
int disp_money_change_frames;
|
||||
@@ -74,6 +90,7 @@ struct inventory_ovl_s {
|
||||
u8 food_idx;
|
||||
u8 item_scale_type[mPr_POCKETS_SLOT_COUNT];
|
||||
u8 page_order[mIV_PAGE_NUM];
|
||||
u8 next_page_id;
|
||||
s16 page_move_timer;
|
||||
s16 remove_timer;
|
||||
mIV_pl_eff_c pl_eff[mIV_PLAYER_EFFECT_NUM];
|
||||
|
||||
+23
-1
@@ -22,6 +22,8 @@ typedef struct player_actor_s PLAYER_ACTOR;
|
||||
#define mPlayer_FORCE_POSITION_ANGLE_ROTY (1 << 5)
|
||||
#define mPlayer_FORCE_POSITION_ANGLE_ROTZ (1 << 6)
|
||||
|
||||
#define mPlayer_JOINT_NUM 26
|
||||
|
||||
enum {
|
||||
mPlayer_ADDRESSABLE_TRUE,
|
||||
mPlayer_ADDRESSABLE_FALSE_MOVEMENT,
|
||||
@@ -364,6 +366,7 @@ enum {
|
||||
mPlayer_ITEM_KIND_UMBRELLA30,
|
||||
mPlayer_ITEM_KIND_UMBRELLA31,
|
||||
|
||||
mPlayer_ITEM_KIND_ORG_UMBRELLA00,
|
||||
mPlayer_ITEM_KIND_ORG_UMBRELLA01,
|
||||
mPlayer_ITEM_KIND_ORG_UMBRELLA02,
|
||||
mPlayer_ITEM_KIND_ORG_UMBRELLA03,
|
||||
@@ -371,7 +374,6 @@ enum {
|
||||
mPlayer_ITEM_KIND_ORG_UMBRELLA05,
|
||||
mPlayer_ITEM_KIND_ORG_UMBRELLA06,
|
||||
mPlayer_ITEM_KIND_ORG_UMBRELLA07,
|
||||
mPlayer_ITEM_KIND_ORG_UMBRELLA08,
|
||||
|
||||
mPlayer_ITEM_KIND_ROD,
|
||||
mPlayer_ITEM_KIND_GOLD_ROD,
|
||||
@@ -470,6 +472,26 @@ enum {
|
||||
mPlayer_ITEM_DATA_NUM
|
||||
};
|
||||
|
||||
enum {
|
||||
mPlayer_ITEM_DATA_TYPE_GFX,
|
||||
mPlayer_ITEM_DATA_TYPE_SKELETON,
|
||||
mPlayer_ITEM_DATA_TYPE_NET_ANIMATION,
|
||||
mPlayer_ITEM_DATA_TYPE_ROD_ANIMATION,
|
||||
mPlayer_ITEM_DATA_TYPE_BALLOON_ANIMATION,
|
||||
mPlayer_ITEM_DATA_TYPE_PINWHEEL_ANIMATION,
|
||||
|
||||
mPlayer_ITEM_DATA_TYPE_NUM
|
||||
};
|
||||
|
||||
enum {
|
||||
mPlayer_PART_TABLE_NORMAL,
|
||||
mPlayer_PART_TABLE_AXE,
|
||||
mPlayer_PART_TABLE_PICK_UP,
|
||||
mPlayer_PART_TABLE_NET,
|
||||
|
||||
mPlayer_PART_TABLE_NUM
|
||||
};
|
||||
|
||||
enum {
|
||||
mPlayer_CREATURE_INSECT,
|
||||
mPlayer_CREATURE_GYOEI,
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#include "types.h"
|
||||
#include "m_player.h"
|
||||
#include "m_private_h.h"
|
||||
#include "c_keyframe.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -79,6 +80,23 @@ extern int mPlib_Check_StopNet(xyz_t* net_pos);
|
||||
extern int mPlib_Check_DigScoop(xyz_t* scoop_pos);
|
||||
extern int mPlib_Check_tree_shaken(const xyz_t* pos);
|
||||
extern int mPlib_Check_VibUnit_OneFrame(const xyz_t* pos);
|
||||
extern int mPlib_Get_BasicItemShapeIndex_fromItemKind(int item_kind);
|
||||
extern u8 mPlib_Get_Item_DataPointerType(int idx);
|
||||
extern void* mPlib_Get_Item_DataPointer(int idx);
|
||||
extern int mPlib_Get_BasicPlayerAnimeIndex_fromItemKind(int item_kind);
|
||||
extern cKF_Animation_R_c* mPlib_Get_Pointer_Animation(int anim_idx);
|
||||
extern int mPlib_Get_BasicPartTableIndex_fromAnimeIndex(int anim_idx);
|
||||
extern int mPlib_Get_BasicItemAnimeIndex_fromItemKind(int item_kind);
|
||||
extern void mPlib_DMA_player_Part_Table(s8* part_table_p, int idx);
|
||||
extern cKF_Skeleton_R_c* mPlib_get_player_mdl_p(void);
|
||||
extern u8* mPlib_Get_PlayerEyeTexAnimation_p(int anim_idx);
|
||||
extern u8* mPlib_Get_PlayerMouthTexAnimation_p(int anim_idx);
|
||||
extern u8* mPlib_Get_eye_tex_p(int idx);
|
||||
extern u8* mPlib_Get_mouth_tex_p(int idx);
|
||||
extern u8* mPlib_get_player_tex_p(GAME* game);
|
||||
extern u16* mPlib_get_player_pallet_p(GAME* game);
|
||||
extern u16* mPlib_get_player_face_pallet_p(GAME* game);
|
||||
extern int mPlib_Check_scoop_after(GAME* game, xyz_t* pos, mActor_name_t* item, ACTOR** hit_actor, int gold_shovel);
|
||||
|
||||
extern mPlayer_change_data_from_submenu_c* mPlib_Get_change_data_from_submenu_p();
|
||||
|
||||
|
||||
+8
-1
@@ -103,7 +103,7 @@ enum {
|
||||
mSM_IV_OPEN_SHRINE,
|
||||
mSM_IV_OPEN_12,
|
||||
mSM_IV_OPEN_EXCHANGE,
|
||||
mSM_IV_OPEN_14,
|
||||
mSM_IV_OPEN_CPMAIL,
|
||||
mSM_IV_OPEN_CURATOR,
|
||||
mSM_IV_OPEN_16,
|
||||
|
||||
@@ -118,6 +118,13 @@ enum {
|
||||
mSM_IV_ITEM_NUM
|
||||
};
|
||||
|
||||
enum {
|
||||
mSM_HANIWA_OPEN_ENTRUST,
|
||||
mSM_HANIWA_OPEN_TAKE,
|
||||
|
||||
mSM_HANIWA_OPEN_NUM
|
||||
};
|
||||
|
||||
enum {
|
||||
mSM_BD_OPEN_WRITE,
|
||||
mSM_BD_OPEN_READ,
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
#include "m_catalog_ovl_h.h"
|
||||
#include "m_hand_ovl_h.h"
|
||||
#include "m_inventory_ovl_h.h"
|
||||
#include "m_player.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -65,14 +66,15 @@ typedef struct submenu_ovl_dlftbl_s {
|
||||
int in_ram_flag;
|
||||
} mSM_Ovl_dlftbl_c;
|
||||
|
||||
// TODO: fill this out
|
||||
typedef struct submenu_segment_s {
|
||||
int _00;
|
||||
s16 _04;
|
||||
s16 _06;
|
||||
s16 _08;
|
||||
s16 _0A;
|
||||
u8 _0C[0x30 - 0x0C];
|
||||
s16 player_main_anime_idx;
|
||||
s16 player_item_anime_idx;
|
||||
s16 change_player_main_anime_idx;
|
||||
s16 player_anime_timer;
|
||||
s16 player_umbrella_bank_idx;
|
||||
s16 umbrella_ids[2];
|
||||
s8 player_part_table[mPlayer_JOINT_NUM + 1];
|
||||
int dlftbl_loaded_num;
|
||||
mSM_Ovl_dlftbl_c* dlftbl_loaded_tbl[8];
|
||||
} mSM_Segment_c;
|
||||
@@ -91,7 +93,7 @@ typedef struct submenu_menu_info_s {
|
||||
f32 speed[2];
|
||||
|
||||
char* _28;
|
||||
int _2C;
|
||||
int open_flag;
|
||||
|
||||
int next_proc_status;
|
||||
s16 move_drt;
|
||||
|
||||
Reference in New Issue
Block a user