mirror of
https://github.com/ACreTeam/ac-decomp
synced 2026-08-09 02:15:52 -04:00
Implement & link ac_present_npc
This commit is contained in:
@@ -20,18 +20,27 @@ enum {
|
||||
aPRD_TYPE_NUM
|
||||
};
|
||||
|
||||
enum {
|
||||
aPRD_ACTION_FIRST_SET,
|
||||
aPRD_ACTION_PL_COME_OUT_WAIT,
|
||||
aPRD_ACTION_PRESENT_WAIT,
|
||||
aPRD_ACTION_RETIRE_NPC_WAIT,
|
||||
|
||||
aPRD_ACTION_NUM
|
||||
};
|
||||
|
||||
typedef struct present_demo_actor_s PRESENT_DEMO_ACTOR;
|
||||
|
||||
typedef void (*aPRD_ACTION_PROC)(PRESENT_DEMO_ACTOR* present_demo, GAME* game);
|
||||
|
||||
struct present_demo_actor_s {
|
||||
ACTOR actor_class;
|
||||
int action;
|
||||
aPRD_ACTION_PROC action_proc;
|
||||
ACTOR* world_actor;
|
||||
int _180;
|
||||
int type;
|
||||
mActor_name_t present;
|
||||
/* 0x000 */ ACTOR actor_class;
|
||||
/* 0x174 */ int action;
|
||||
/* 0x178 */ aPRD_ACTION_PROC action_proc;
|
||||
/* 0x17C */ ACTOR* world_actor;
|
||||
/* 0x180 */ int _180;
|
||||
/* 0x184 */ int type;
|
||||
/* 0x188 */ mActor_name_t present;
|
||||
};
|
||||
|
||||
extern ACTOR_PROFILE Present_Demo_Profile;
|
||||
|
||||
@@ -2,12 +2,31 @@
|
||||
#define AC_PRESENT_NPC_H
|
||||
|
||||
#include "types.h"
|
||||
#include "m_actor.h"
|
||||
#include "ac_npc.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#define aPST_PRESENT_TYPE_GOLDEN_ROD (1 << 0)
|
||||
#define aPST_PRESENT_TYPE_GOLDEN_NET (1 << 1)
|
||||
|
||||
typedef struct present_npc_actor_s PRESENT_NPC_ACTOR;
|
||||
|
||||
typedef void (*aPST_THINK_PROC)(PRESENT_NPC_ACTOR* actor, GAME_PLAY* play);
|
||||
typedef void (*aPST_TALK_PROC)(PRESENT_NPC_ACTOR* actor);
|
||||
|
||||
struct present_npc_actor_s {
|
||||
NPC_ACTOR npc_class;
|
||||
int think_idx;
|
||||
int next_think_idx;
|
||||
aPST_THINK_PROC think_proc;
|
||||
int talk_type;
|
||||
aPST_TALK_PROC talk_proc;
|
||||
u8 _9A8;
|
||||
u8 umbrella_flag;
|
||||
};
|
||||
|
||||
extern ACTOR_PROFILE Present_Npc_Profile;
|
||||
|
||||
#ifdef __cplusplus
|
||||
@@ -15,4 +34,3 @@ extern ACTOR_PROFILE Present_Npc_Profile;
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@@ -164,7 +164,7 @@ typedef struct Save_s {
|
||||
/* 0x024186 */ lbRTC_day_t rainbow_day;
|
||||
/* 0x024187 */ u8 rainbow_reserved;
|
||||
/* 0x024188 */ u8 _24188;
|
||||
/* 0x024189 */ u8 _24189;
|
||||
/* 0x024189 */ u8 first_present;
|
||||
/* 0x02418A */ u8 town_day;
|
||||
/* 0x02418B */ u8 _2418B[0x24198 - 0x2418B];
|
||||
/* 0x024198 */ OSTime travel_hard_time;
|
||||
|
||||
Reference in New Issue
Block a user