mirror of
https://github.com/zeldaret/af.git
synced 2026-09-26 21:35:21 -04:00
94b300b0d0
* start * match the file * actor_dlftbls_num * script to extract the actor table * bootstrap actor table * ActorId enum * migrate actor table * reorganize overlays in subfolders * Fix Player * migrate bss * cleanup and format * ActorProfile * Move player_actor to actors folder * RomOffset * ACTOR_ID_MAX
44 lines
1.0 KiB
C
44 lines
1.0 KiB
C
#ifndef M_ACTOR_DLFTBLS_H
|
|
#define M_ACTOR_DLFTBLS_H
|
|
|
|
#include "ultra64.h"
|
|
#include "libc/stdint.h"
|
|
#include "other_types.h"
|
|
|
|
struct ActorProfile;
|
|
|
|
|
|
#define DEFINE_ACTOR(_name, enumValue, _allocType) enumValue,
|
|
#define DEFINE_ACTOR_INTERNAL(_name, enumValue, _allocType) enumValue,
|
|
#define DEFINE_ACTOR_UNSET(enumValue) enumValue,
|
|
|
|
typedef enum ActorId {
|
|
#include "tables/actor_table.h"
|
|
/* 0xC9 */ ACTOR_ID_MAX
|
|
} ActorId;
|
|
|
|
#undef DEFINE_ACTOR
|
|
#undef DEFINE_ACTOR_INTERNAL
|
|
#undef DEFINE_ACTOR_UNSET
|
|
|
|
typedef struct ActorOverlay {
|
|
/* 0x00 */ RomOffset vromStart;
|
|
/* 0x04 */ RomOffset vromEnd;
|
|
/* 0x08 */ void* vramStart;
|
|
/* 0x0C */ void* vramEnd;
|
|
/* 0x10 */ void* loadedRamAddr;
|
|
/* 0x14 */ struct ActorProfile* profile;
|
|
/* 0x18 */ char* name;
|
|
/* 0x1C */ u16 allocType;
|
|
/* 0x1E */ s8 numLoaded;
|
|
} ActorOverlay; // size = 0x20
|
|
|
|
|
|
void actor_dlftbls_init(void);
|
|
void actor_dlftbls_cleanup(void);
|
|
|
|
extern ActorOverlay actor_dlftbls[ACTOR_ID_MAX];
|
|
extern ActorId actor_dlftbls_num;
|
|
|
|
#endif
|