mirror of
https://github.com/ACreTeam/ac-decomp
synced 2026-05-22 22:24:16 -04:00
76 lines
1.6 KiB
C
76 lines
1.6 KiB
C
#ifndef AC_EV_GHOST_H
|
|
#define AC_EV_GHOST_H
|
|
|
|
#include "types.h"
|
|
#include "m_actor.h"
|
|
#include "ac_npc.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#define aEGH_MINIMUM_GRASS_COUNT 8
|
|
|
|
#define aEGH_BIT_FOUND_GHOST 1
|
|
|
|
enum {
|
|
aEGH_ITEM_LIST_FTR_A,
|
|
aEGH_ITEM_LIST_FTR_B,
|
|
aEGH_ITEM_LIST_FTR_C,
|
|
aEGH_ITEM_LIST_FTR_EVENT,
|
|
aEGH_ITEM_LIST_FTR_LOTTERY,
|
|
aEGH_ITEM_LIST_CARPET_A,
|
|
aEGH_ITEM_LIST_CARPET_B,
|
|
aEGH_ITEM_LIST_CARPET_C,
|
|
aEGH_ITEM_LIST_CARPET_EVENT,
|
|
aEGH_ITEM_LIST_WALL_A,
|
|
aEGH_ITEM_LIST_WALL_B,
|
|
aEGH_ITEM_LIST_WALL_C,
|
|
aEGH_ITEM_LIST_WALL_EVENT,
|
|
aEGH_ITEM_LIST_CLOTH_A,
|
|
aEGH_ITEM_LIST_CLOTH_B,
|
|
aEGH_ITEM_LIST_CLOTH_C,
|
|
aEGH_ITEM_LIST_CLOTH_EVENT,
|
|
aEGH_ITEM_LIST_BINSEN_A,
|
|
aEGH_ITEM_LIST_BINSEN_B,
|
|
aEGH_ITEM_LIST_BINSEN_C,
|
|
aEGH_ITEM_LIST_HANIWA,
|
|
aEGH_ITEM_LIST_UMBRELLA,
|
|
|
|
aEGH_ITEM_LIST_NUM
|
|
};
|
|
|
|
typedef struct ev_ghost_s EV_GHOST_ACTOR;
|
|
|
|
typedef void (*aEGH_PROC)(EV_GHOST_ACTOR*, GAME_PLAY*);
|
|
|
|
struct ev_ghost_s {
|
|
/* 0x000 */ NPC_ACTOR npc_class;
|
|
/* 0x994 */ aEGH_PROC think_proc;
|
|
/* 0x998 */ int msg_no;
|
|
/* 0x99C */ mActor_name_t give_item;
|
|
/* 0x99E */ s16 bye_bye_angle;
|
|
/* 0x9A0 */ u8 bye_bye_timer;
|
|
/* 0x9A1 */ u8 bye_bye_scale_timer;
|
|
/* 0x9A2 */ u8 bye_bye_transparency_delay_timer;
|
|
/* 0x9A3 */ u8 think_act;
|
|
/* 0x9A4 */ u8 after_talk_think_act;
|
|
/* 0x9A5 */ u8 _9A5;
|
|
/* 0x9A6 */ u8 talk_act;
|
|
/* 0x9A7 */ u8 _9A7;
|
|
/* 0x9A8 */ u8 melody_inst;
|
|
/* 0x9A9 */ u8 alpha;
|
|
/* 0x9AA */ u8 _9AA;
|
|
/* 0x9AB */ u8 roof_pal;
|
|
/* 0x9AC */ u8 _9AC;
|
|
};
|
|
|
|
extern ACTOR_PROFILE Ev_Ghost_Profile;
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|
|
|