Files
ac-decomp/include/m_island.h
T
2023-05-27 13:12:34 -04:00

53 lines
1.5 KiB
C

#ifndef M_ISLAND_H
#define M_ISLAND_H
#include "types.h"
#include "m_personal_id.h"
#include "m_npc.h"
#include "m_land.h"
#include "m_field_make.h"
#include "m_home.h"
#include "m_needlework.h"
#ifdef __cplusplus
extern "C" {
#endif
#define mISL_ISLAND_NAME_LEN 8
#define mISL_FG_BLOCK_X_NUM 2
#define mISL_FG_BLOCK_Z_NUM 1
enum {
mISL_ISLAND_BLOCK_LEFT,
mISL_ISLAND_BLOCK_RIGHT,
mISL_ISLAND_BLOCK_NUM
};
/* sizeof(Island_c) == 0x1900 */
typedef struct island_s {
/* 0x0000 */ u8 name[mISL_ISLAND_NAME_LEN]; /* island name */
/* 0x0008 */ mLd_land_info_c landinfo; /* land info for town */
/* 0x0014 */ mFM_fg_c fgblock[mISL_FG_BLOCK_Z_NUM][mISL_FG_BLOCK_X_NUM]; /* island item actor data */
/* 0x0418 */ mHm_cottage_c cottage; /* player shared cottage data */
/* 0x0CE0 */ mNW_original_design_c flag_design; /* island flag design */
/* 0x0F00 */ Animal_c animal; /* islander info */
/* 0x1888 */ u16 deposit[mISL_FG_BLOCK_X_NUM * mISL_FG_BLOCK_Z_NUM][UT_Z_NUM]; /* buried item bitfield */
/* 0x18C8 */ u8 bg_data[mISL_ISLAND_BLOCK_NUM]; /* island acre ids */
/* 0x18CA */ lbRTC_time_c renew_time; /* last time island was visited? */
/* 0x18D2 */ u8 unused_18D2[14]; /* unused */
/* 0x18E0 */ u8 grass_tex_type; /* grass type */
/* 0x18E1 */ u8 last_song_male; /* last song kapp'n sang for a male character */
/* 0x18E2 */ u8 last_song_female; /* last song kapp'n sang for a female character */
/* 0x18E3 */ u8 unused_18E3[29]; /* unused */
} Island_c;
extern void mISL_ClearKeepIsland();
#ifdef __cplusplus
}
#endif
#endif