Implement & link ac_ev_santa

This commit is contained in:
Cuyler36
2023-12-25 12:36:11 -05:00
parent 4ca6558353
commit 22c0e51ec1
7 changed files with 541 additions and 0 deletions
+23
View File
@@ -3,11 +3,34 @@
#include "types.h"
#include "m_actor.h"
#include "ac_npc.h"
#include "m_event.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef struct event_santa_s EVENT_SANTA_ACTOR;
typedef struct santa_talk_data_s {
int msg_no;
int talk_act;
} aESNT_talk_data_c;
typedef void(*aESNT_TALK_PROC)(EVENT_SANTA_ACTOR*, GAME_PLAY*);
typedef void (*aESNT_SETUP_TALK_PROC)(EVENT_SANTA_ACTOR*, GAME_PLAY*, int);
struct event_santa_s {
/* 0x000 */ NPC_ACTOR npc_class;
/* 0x994 */ int talk_act;
/* 0x998 */ aESNT_TALK_PROC talk_proc;
/* 0x99C */ aESNT_SETUP_TALK_PROC setup_talk_proc;
/* 0x9A0 */ mActor_name_t present;
/* 0x9A4 */ aESNT_talk_data_c* talk_data_p;
/* 0x9A8 */ mEv_santa_event_c* event_p;
/* 0x9AC */ mEv_santa_event_common_c* event_common_p;
};
extern ACTOR_PROFILE Ev_Santa_Profile;
#ifdef __cplusplus
+8
View File
@@ -401,6 +401,14 @@ typedef struct santa_event_common_s {
mActor_name_t last_talk_cloth;
} mEv_santa_event_common_c;
#define mEv_SANTA_CLOTH_NUM_MAX 10 /* How many different shirts can the player trick Jingle with */
typedef struct santa_event_s {
PersonalID_c pid;
u8 present_count;
mActor_name_t cloth[mEv_SANTA_CLOTH_NUM_MAX];
} mEv_santa_event_c;
typedef union {
mEv_broker_common_c broker;
mEv_santa_event_common_c santa;
+1
View File
@@ -5,6 +5,7 @@
#include "libu64/gfxprint.h"
#include "m_choice.h"
#include "m_item_name.h"
#include "m_msg_data.h"
#ifdef __cplusplus
extern "C" {
+19
View File
@@ -0,0 +1,19 @@
#ifndef M_MSG_DATA_H
#define M_MSG_DATA_H
#include "types.h"
#ifdef __cplusplus
extern "C" {
#endif
#define MSG_SANTA_WISH_FTR 0x2B54
#define MSG_SANTA_WISH_WALL 0x2B55
#define MSG_SANTA_WISH_CARPET 0x2B56
#define MSG_SANTA_WISH_CLOTH 0x2B57
#ifdef __cplusplus
}
#endif
#endif