mirror of
https://github.com/ACreTeam/ac-decomp
synced 2026-06-19 14:30:33 -04:00
Implement & link ac_handOverItem
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
|
||||
#include "types.h"
|
||||
#include "m_actor.h"
|
||||
#include "ac_tools.h"
|
||||
#include "m_scene.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
@@ -26,9 +27,16 @@ enum {
|
||||
aHOI_REQUEST_NUM
|
||||
};
|
||||
|
||||
enum {
|
||||
aHOI_NOT_PRESENT,
|
||||
aHOI_PRESENT,
|
||||
|
||||
aHOI_PRESENT_TYPE_NUM
|
||||
};
|
||||
|
||||
typedef struct hand_over_item_actor_s HANDOVERITEM_ACTOR;
|
||||
|
||||
typedef ACTOR* (*aHOI_BIRTH_PROC)(mActor_name_t, int, int);
|
||||
typedef ACTOR* (*aHOI_BIRTH_PROC)(mActor_name_t, int, int, ACTOR*);
|
||||
typedef ACTOR* (*aHOI_CHG_MASTER_PROC)(ACTOR*);
|
||||
typedef int (*aHOI_CHG_REQUEST_MODE_PROC)(ACTOR*, int);
|
||||
typedef void (*aHOI_REBUILD_DMA_PROC)(Object_Exchange_c*, ACTOR*); /* yoinked from DnM, unused in AC */
|
||||
@@ -49,8 +57,18 @@ typedef struct hand_over_item_clip_s {
|
||||
} aHOI_Clip_c;
|
||||
|
||||
struct hand_over_item_actor_s {
|
||||
ACTOR actor_class;
|
||||
u8 _174[0x1F4 - 0x174]; /* TODO */
|
||||
TOOLS_ACTOR tools_class;
|
||||
int mode;
|
||||
f32 anm_cnt;
|
||||
xyz_t trans;
|
||||
f32 scale;
|
||||
u8 trans_flag;
|
||||
u8 item_type;
|
||||
u8 draw_type;
|
||||
u8 se_set_flag;
|
||||
int item;
|
||||
int gyo_type;
|
||||
int gyo_flag;
|
||||
};
|
||||
|
||||
extern ACTOR_PROFILE HandOverItem_Profile;
|
||||
|
||||
+10
-4
@@ -169,11 +169,17 @@ extern s16 actor_profile_table[];
|
||||
extern s16 props_profile_table[];
|
||||
extern u8 npc_looks_table[];
|
||||
|
||||
extern int mNT_check_unknown(mActor_name_t item_no);
|
||||
extern int FGTreeType_check(mActor_name_t tree);
|
||||
extern mActor_name_t bg_item_fg_sub_tree_grow(mActor_name_t tree, int past_days, int check_plant);
|
||||
extern mActor_name_t bg_item_fg_sub_dig2take_conv(mActor_name_t item);
|
||||
extern int mNT_get_itemTableNo(mActor_name_t item);
|
||||
extern mActor_name_t mNT_FishIdx2FishItemNo(int idx);
|
||||
extern mActor_name_t bg_item_fg_sub(mActor_name_t item, s16 flag);
|
||||
extern mActor_name_t bg_item_fg_sub_tree_grow(mActor_name_t item, int past_days, int check_plant);
|
||||
extern mActor_name_t bg_item_fg_sub_dig2take_conv(mActor_name_t item);
|
||||
extern mNT_offset_table_c* obj_hight_table_item0_nogrow(mActor_name_t item);
|
||||
extern int FGTreeType_check(mActor_name_t tree);
|
||||
extern int mNT_ItIsStump(mActor_name_t actor);
|
||||
extern int mNT_ItIsStoneCoin10(mActor_name_t actor);
|
||||
extern int mNT_ItIsReserveDummy(mActor_name_t actor);
|
||||
extern int mNT_check_unknown(mActor_name_t item_no);
|
||||
|
||||
/* Retrieve the item actor's category */
|
||||
#define ITEM_NAME_GET_TYPE(n) (((n) & 0xF000) >> 12)
|
||||
|
||||
@@ -48,6 +48,7 @@ extern void mPlib_Load_PlayerTexAndPallet(void* tex_p, void* pal_p, int idx);
|
||||
extern void mPlib_request_main_give_from_submenu(mActor_name_t disp_item, int submenu_ovl, int present_flag, int counter_flag);
|
||||
extern int mPlib_Check_tree_shaken_big(const xyz_t* pos);
|
||||
extern int mPlib_Check_tree_shaken_little(const xyz_t* pos);
|
||||
extern int mPlib_request_main_recieve_wait_type1(GAME* game, mActor_name_t item, int counter_flag);
|
||||
|
||||
extern mPlayer_change_data_from_submenu_c* mPlib_Get_change_data_from_submenu_p();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user