summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authoremilybrooks <emilybrooksemilybrooks@gmail.com>2024-01-26 16:19:49 -0700
committerGitHub <noreply@github.com>2024-01-26 16:19:49 -0700
commit1d9c5c49c5d5ee1fa0e9d53d02bfd732d9d863fd (patch)
treee2068628ed4f9309c9623a09717751249e573784 /include
parentcc4355f6adae67c2f90b78659dc6bcf13910cc86 (diff)
Second half of tool objects (#136)
* tol_keitai_1 * kenjyu * evw_anime data extraction works * forgot to remove this * added comments for objects * fixes * scroll colprim colenv now extract as arrays * forgot commas
Diffstat (limited to 'include')
-rw-r--r--include/evw_anime.h50
-rw-r--r--include/tables/dmatables/dmadata_table_jp.h12
-rw-r--r--include/tables/object_table.h12
3 files changed, 56 insertions, 18 deletions
diff --git a/include/evw_anime.h b/include/evw_anime.h
index 14a2273..e4c83f1 100644
--- a/include/evw_anime.h
+++ b/include/evw_anime.h
@@ -5,11 +5,49 @@
struct Game;
-typedef struct EvwAnimeUnk {
- s8 unk_0;
- s16 unk1;
- void* unk_4;
-} EvwAnimeUnk;
+typedef struct EvwAnimeScroll {
+ /* 0x0 */ s8 x; /* x (s) texture position */
+ /* 0x1 */ s8 y; /* y (t) texture position */
+ /* 0x2 */ u8 width; /* texture width */
+ /* 0x3 */ u8 height; /* texture height */
+} EvwAnimeScroll; // size = 0x4
+
+typedef struct EvwAnimeColPrim {
+ /* 0x0 */ u8 r;
+ /* 0x1 */ u8 g;
+ /* 0x2 */ u8 b;
+ /* 0x3 */ u8 a;
+ /* 0x4 */ u8 l;
+} EvwAnimeColPrim; // size = 0x5
+
+typedef struct EvwAnimeColEnv {
+ /* 0x0 */ u8 r;
+ /* 0x1 */ u8 g;
+ /* 0x2 */ u8 b;
+ /* 0x3 */ u8 a;
+} EvwAnimeColEnv; // size = 0x4
+
+typedef struct EvwAnimeColReg {
+ /* 0x0 */ u16 frameCount;
+ /* 0x2 */ u16 keyframeCount;
+ /* 0x4 */ EvwAnimeColPrim* prim;
+ /* 0x8 */ EvwAnimeColEnv* env;
+ /* 0xC */ u16* keyframes;
+} EvwAnimeColReg; // size = 0x10
+
+typedef struct EvwAnimeTexAnime {
+ /* 0x0 */ u16 frameCount; /* total frames in the animation */
+ /* 0x2 */ u16 keyframeCount; /* number of animation keyframes */
+ /* 0x4 */ void** textureTable; /* list of each texture */
+ /* 0x8 */ u8* animationPattern; /* list of which texture to use per keyframe (runs at 30 FPS) */
+ /* 0xC */ u16* keyframes; /* list of keyframe frame indices */
+} EvwAnimeTexAnime; // size = 0x10
+
+typedef struct EvwAnimeData {
+ /* 0x0 */ s8 segment; /* Negative segments signal the end of the animation data array */
+ /* 0x2 */ s16 type;
+ /* 0x4 */ void* dataPtr;
+} EvwAnimeData; // size = 0x8
// void func_800549C0_jp();
// void func_80054A28_jp();
@@ -23,6 +61,6 @@ typedef struct EvwAnimeUnk {
// void func_80055214_jp();
// void func_80055248_jp();
// void func_800554D8_jp();
-void Evw_Anime_Set(struct Game*,EvwAnimeUnk*);
+void Evw_Anime_Set(struct Game*,EvwAnimeData*);
#endif
diff --git a/include/tables/dmatables/dmadata_table_jp.h b/include/tables/dmatables/dmadata_table_jp.h
index c714c66..21afbce 100644
--- a/include/tables/dmatables/dmadata_table_jp.h
+++ b/include/tables/dmatables/dmadata_table_jp.h
@@ -2268,15 +2268,15 @@ DEFINE_DMA_ENTRY(tol_umb_29, "tol_umb_29")
DEFINE_DMA_ENTRY(tol_umb_30, "tol_umb_30")
DEFINE_DMA_ENTRY(tol_umb_31, "tol_umb_31")
DEFINE_DMA_ENTRY(tol_umb_32, "tol_umb_32")
-DEFINE_DMA_ENTRY(object_01127000, "object_01127000")
+DEFINE_DMA_ENTRY(tol_keitai_1, "tol_keitai_1")
DEFINE_DMA_ENTRY(tol_utiwa_1, "tol_utiwa_1")
DEFINE_DMA_ENTRY(object_01129000, "object_01129000")
-DEFINE_DMA_ENTRY(object_0112A000, "object_0112A000")
-DEFINE_DMA_ENTRY(object_0112B000, "object_0112B000")
-DEFINE_DMA_ENTRY(object_0112C000, "object_0112C000")
-DEFINE_DMA_ENTRY(object_0112D000, "object_0112D000")
+DEFINE_DMA_ENTRY(tol_npcsao_1, "tol_npcsao_1")
+DEFINE_DMA_ENTRY(tol_kamicup, "tol_kamicup")
+DEFINE_DMA_ENTRY(tol_kenjyu_1, "tol_kenjyu_1")
+DEFINE_DMA_ENTRY(tol_tamaire, "tol_tamaire")
DEFINE_DMA_ENTRY(tol_cracker_1, "tol_cracker_1")
-DEFINE_DMA_ENTRY(object_01130000, "object_01130000")
+DEFINE_DMA_ENTRY(tol_hata_01, "tol_hata_01")
DEFINE_DMA_ENTRY(object_01131000, "object_01131000")
DEFINE_DMA_ENTRY(object_01134000, "object_01134000")
DEFINE_DMA_ENTRY(object_01135000, "object_01135000")
diff --git a/include/tables/object_table.h b/include/tables/object_table.h
index ada136d..ee4f5fb 100644
--- a/include/tables/object_table.h
+++ b/include/tables/object_table.h
@@ -16,7 +16,7 @@
/* 0x003 */ DEFINE_OBJECT(gameplay_keep, GAMEPLAY_KEEP)
/* 0x004 */ DEFINE_OBJECT(object_00D2D000, OBJECT_4)
/* 0x005 */ DEFINE_OBJECT(object_013A4000, OBJECT_5)
-/* 0x006 */ DEFINE_OBJECT(object_01130000, OBJECT_6)
+/* 0x006 */ DEFINE_OBJECT(tol_hata_01, OBJECT_TOL_HATA_01)
/* 0x007 */ DEFINE_OBJECT(object_0113C000, OBJECT_7)
/* 0x008 */ DEFINE_OBJECT(object_00D25000, OBJECT_8)
/* 0x009 */ DEFINE_OBJECT(object_00B36000, OBJECT_9)
@@ -26,7 +26,7 @@
/* 0x00D */ DEFINE_OBJECT(object_013AB000, OBJECT_13)
/* 0x00E */ DEFINE_OBJECT(object_00B68000, OBJECT_14)
/* 0x00F */ DEFINE_OBJECT(object_00B88000, OBJECT_15)
-/* 0x010 */ DEFINE_OBJECT(object_0112C000, OBJECT_16)
+/* 0x010 */ DEFINE_OBJECT(tol_kenjyu_1, OBJECT_TOL_KENJYU_1)
/* 0x011 */ DEFINE_OBJECT(object_0179F000, OBJECT_17)
/* 0x012 */ DEFINE_OBJECT(object_017A1000, OBJECT_18)
/* 0x013 */ DEFINE_OBJECT(object_0182A000, OBJECT_19)
@@ -55,7 +55,7 @@
/* 0x02A */ DEFINE_OBJECT(object_01871000, OBJECT_42)
/* 0x02B */ DEFINE_OBJECT(object_013A5000, OBJECT_43)
/* 0x02C */ DEFINE_OBJECT(object_013A6000, OBJECT_44)
-/* 0x02D */ DEFINE_OBJECT(object_01127000, OBJECT_45)
+/* 0x02D */ DEFINE_OBJECT(tol_keitai_1, OBJECT_TOL_KEITAI_1)
/* 0x02E */ DEFINE_OBJECT(object_01880000, OBJECT_46)
/* 0x02F */ DEFINE_OBJECT(object_01884000, OBJECT_47)
/* 0x030 */ DEFINE_OBJECT(object_01135000, OBJECT_48)
@@ -380,8 +380,8 @@
/* 0x16F */ DEFINE_OBJECT(object_01011000, OBJECT_367)
/* 0x170 */ DEFINE_OBJECT(object_01014000, OBJECT_368)
/* 0x171 */ DEFINE_OBJECT(object_01147000, OBJECT_369)
-/* 0x172 */ DEFINE_OBJECT(object_0112A000, OBJECT_370)
-/* 0x173 */ DEFINE_OBJECT(object_0112B000, OBJECT_371)
+/* 0x172 */ DEFINE_OBJECT(tol_npcsao_1, OBJECT_TOL_NPCSAO_1)
+/* 0x173 */ DEFINE_OBJECT(tol_kamicup, OBJECT_TOL_KAMICUP)
/* 0x174 */ DEFINE_OBJECT(object_00F41000, OBJECT_372)
/* 0x175 */ DEFINE_OBJECT(object_00F43000, OBJECT_373)
/* 0x176 */ DEFINE_OBJECT(object_00FBF000, OBJECT_374)
@@ -401,7 +401,7 @@
/* 0x184 */ DEFINE_OBJECT(object_010A8000, OBJECT_388)
/* 0x185 */ DEFINE_OBJECT(object_010AA000, OBJECT_389)
/* 0x186 */ DEFINE_OBJECT(object_010AC000, OBJECT_390)
-/* 0x187 */ DEFINE_OBJECT(object_0112D000, OBJECT_391)
+/* 0x187 */ DEFINE_OBJECT(tol_tamaire, OBJECT_TOL_TAMAIRE)
/* 0x188 */ DEFINE_OBJECT(object_011F4000, OBJECT_392)
/* 0x189 */ DEFINE_OBJECT_UNSET(OBJECT_UNSET_393)
/* 0x18A */ DEFINE_OBJECT(object_01106000, OBJECT_394)