diff --git a/assets/textures/icon_item_fra_static/icon_item_fra_static.c b/assets/textures/icon_item_fra_static/icon_item_fra_static.c
index 80dae50a8d..3cfec8f8d4 100644
--- a/assets/textures/icon_item_fra_static/icon_item_fra_static.c
+++ b/assets/textures/icon_item_fra_static/icon_item_fra_static.c
@@ -52,19 +52,19 @@ u64 gPauseToPlayMelodyFRATex[TEX_LEN(u64, gPauseToPlayMelodyFRATex_WIDTH, gPause
#include "assets/textures/icon_item_fra_static/gPauseToPlayMelodyFRATex.ia8.inc.c"
};
-u64 gPauseToSelectItemFRATex[TEX_LEN(u64, gPauseToSelectItemFRATex_WIDTH, gPauseToSelectItemFRATex_HEIGHT, 8)] = {
+u64 gPauseToSelectItemFRATex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_fra_static/gPauseToSelectItemFRATex.ia8.inc.c"
};
-u64 gPauseToMapFRATex[TEX_LEN(u64, gPauseToMapFRATex_WIDTH, gPauseToMapFRATex_HEIGHT, 8)] = {
+u64 gPauseToMapFRATex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_fra_static/gPauseToMapFRATex.ia8.inc.c"
};
-u64 gPauseToQuestStatusFRATex[TEX_LEN(u64, gPauseToQuestStatusFRATex_WIDTH, gPauseToQuestStatusFRATex_HEIGHT, 8)] = {
+u64 gPauseToQuestStatusFRATex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_fra_static/gPauseToQuestStatusFRATex.ia8.inc.c"
};
-u64 gPauseToEquipmentFRATex[TEX_LEN(u64, gPauseToEquipmentFRATex_WIDTH, gPauseToEquipmentFRATex_HEIGHT, 8)] = {
+u64 gPauseToEquipmentFRATex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_fra_static/gPauseToEquipmentFRATex.ia8.inc.c"
};
diff --git a/assets/textures/icon_item_fra_static/icon_item_fra_static.h b/assets/textures/icon_item_fra_static/icon_item_fra_static.h
index 2a7152a416..7689e75fed 100644
--- a/assets/textures/icon_item_fra_static/icon_item_fra_static.h
+++ b/assets/textures/icon_item_fra_static/icon_item_fra_static.h
@@ -44,18 +44,12 @@ extern u64 gPauseToDecideFRATex[TEX_LEN(u64, gPauseToDecideFRATex_WIDTH, gPauseT
#define gPauseToPlayMelodyFRATex_WIDTH 112
#define gPauseToPlayMelodyFRATex_HEIGHT 16
extern u64 gPauseToPlayMelodyFRATex[TEX_LEN(u64, gPauseToPlayMelodyFRATex_WIDTH, gPauseToPlayMelodyFRATex_HEIGHT, 8)];
-#define gPauseToSelectItemFRATex_WIDTH 128
-#define gPauseToSelectItemFRATex_HEIGHT 16
-extern u64 gPauseToSelectItemFRATex[TEX_LEN(u64, gPauseToSelectItemFRATex_WIDTH, gPauseToSelectItemFRATex_HEIGHT, 8)];
-#define gPauseToMapFRATex_WIDTH 128
-#define gPauseToMapFRATex_HEIGHT 16
-extern u64 gPauseToMapFRATex[TEX_LEN(u64, gPauseToMapFRATex_WIDTH, gPauseToMapFRATex_HEIGHT, 8)];
-#define gPauseToQuestStatusFRATex_WIDTH 128
-#define gPauseToQuestStatusFRATex_HEIGHT 16
-extern u64 gPauseToQuestStatusFRATex[TEX_LEN(u64, gPauseToQuestStatusFRATex_WIDTH, gPauseToQuestStatusFRATex_HEIGHT, 8)];
-#define gPauseToEquipmentFRATex_WIDTH 128
-#define gPauseToEquipmentFRATex_HEIGHT 16
-extern u64 gPauseToEquipmentFRATex[TEX_LEN(u64, gPauseToEquipmentFRATex_WIDTH, gPauseToEquipmentFRATex_HEIGHT, 8)];
+
+extern u64 gPauseToSelectItemFRATex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+extern u64 gPauseToMapFRATex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+extern u64 gPauseToQuestStatusFRATex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+extern u64 gPauseToEquipmentFRATex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+
#define gPauseSavePromptFRATex_WIDTH 152
#define gPauseSavePromptFRATex_HEIGHT 16
extern u64 gPauseSavePromptFRATex[TEX_LEN(u64, gPauseSavePromptFRATex_WIDTH, gPauseSavePromptFRATex_HEIGHT, 8)];
diff --git a/assets/textures/icon_item_ger_static/icon_item_ger_static.c b/assets/textures/icon_item_ger_static/icon_item_ger_static.c
index 379f7f6816..e8523db713 100644
--- a/assets/textures/icon_item_ger_static/icon_item_ger_static.c
+++ b/assets/textures/icon_item_ger_static/icon_item_ger_static.c
@@ -52,19 +52,19 @@ u64 gPauseToPlayMelodyGERTex[TEX_LEN(u64, gPauseToPlayMelodyGERTex_WIDTH, gPause
#include "assets/textures/icon_item_ger_static/gPauseToPlayMelodyGERTex.ia8.inc.c"
};
-u64 gPauseToSelectItemGERTex[TEX_LEN(u64, gPauseToSelectItemGERTex_WIDTH, gPauseToSelectItemGERTex_HEIGHT, 8)] = {
+u64 gPauseToSelectItemGERTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_ger_static/gPauseToSelectItemGERTex.ia8.inc.c"
};
-u64 gPauseToMapGERTex[TEX_LEN(u64, gPauseToMapGERTex_WIDTH, gPauseToMapGERTex_HEIGHT, 8)] = {
+u64 gPauseToMapGERTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_ger_static/gPauseToMapGERTex.ia8.inc.c"
};
-u64 gPauseToQuestStatusGERTex[TEX_LEN(u64, gPauseToQuestStatusGERTex_WIDTH, gPauseToQuestStatusGERTex_HEIGHT, 8)] = {
+u64 gPauseToQuestStatusGERTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_ger_static/gPauseToQuestStatusGERTex.ia8.inc.c"
};
-u64 gPauseToEquipmentGERTex[TEX_LEN(u64, gPauseToEquipmentGERTex_WIDTH, gPauseToEquipmentGERTex_HEIGHT, 8)] = {
+u64 gPauseToEquipmentGERTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_ger_static/gPauseToEquipmentGERTex.ia8.inc.c"
};
diff --git a/assets/textures/icon_item_ger_static/icon_item_ger_static.h b/assets/textures/icon_item_ger_static/icon_item_ger_static.h
index bd69237b9a..30a8455717 100644
--- a/assets/textures/icon_item_ger_static/icon_item_ger_static.h
+++ b/assets/textures/icon_item_ger_static/icon_item_ger_static.h
@@ -44,18 +44,12 @@ extern u64 gPauseToDecideGERTex[TEX_LEN(u64, gPauseToDecideGERTex_WIDTH, gPauseT
#define gPauseToPlayMelodyGERTex_WIDTH 104
#define gPauseToPlayMelodyGERTex_HEIGHT 16
extern u64 gPauseToPlayMelodyGERTex[TEX_LEN(u64, gPauseToPlayMelodyGERTex_WIDTH, gPauseToPlayMelodyGERTex_HEIGHT, 8)];
-#define gPauseToSelectItemGERTex_WIDTH 128
-#define gPauseToSelectItemGERTex_HEIGHT 16
-extern u64 gPauseToSelectItemGERTex[TEX_LEN(u64, gPauseToSelectItemGERTex_WIDTH, gPauseToSelectItemGERTex_HEIGHT, 8)];
-#define gPauseToMapGERTex_WIDTH 128
-#define gPauseToMapGERTex_HEIGHT 16
-extern u64 gPauseToMapGERTex[TEX_LEN(u64, gPauseToMapGERTex_WIDTH, gPauseToMapGERTex_HEIGHT, 8)];
-#define gPauseToQuestStatusGERTex_WIDTH 128
-#define gPauseToQuestStatusGERTex_HEIGHT 16
-extern u64 gPauseToQuestStatusGERTex[TEX_LEN(u64, gPauseToQuestStatusGERTex_WIDTH, gPauseToQuestStatusGERTex_HEIGHT, 8)];
-#define gPauseToEquipmentGERTex_WIDTH 128
-#define gPauseToEquipmentGERTex_HEIGHT 16
-extern u64 gPauseToEquipmentGERTex[TEX_LEN(u64, gPauseToEquipmentGERTex_WIDTH, gPauseToEquipmentGERTex_HEIGHT, 8)];
+
+extern u64 gPauseToSelectItemGERTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+extern u64 gPauseToMapGERTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+extern u64 gPauseToQuestStatusGERTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+extern u64 gPauseToEquipmentGERTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+
#define gPauseSavePromptGERTex_WIDTH 152
#define gPauseSavePromptGERTex_HEIGHT 16
extern u64 gPauseSavePromptGERTex[TEX_LEN(u64, gPauseSavePromptGERTex_WIDTH, gPauseSavePromptGERTex_HEIGHT, 8)];
diff --git a/assets/textures/icon_item_jpn_static/icon_item_jpn_static.c b/assets/textures/icon_item_jpn_static/icon_item_jpn_static.c
index 92d56b0724..1418c209aa 100644
--- a/assets/textures/icon_item_jpn_static/icon_item_jpn_static.c
+++ b/assets/textures/icon_item_jpn_static/icon_item_jpn_static.c
@@ -52,19 +52,19 @@ u64 gPauseToPlayMelodyJPNTex[TEX_LEN(u64, gPauseToPlayMelodyJPNTex_WIDTH, gPause
#include "assets/textures/icon_item_jpn_static/gPauseToPlayMelodyJPNTex.ia8.inc.c"
};
-u64 gPauseToSelectItemJPNTex[TEX_LEN(u64, gPauseToSelectItemJPNTex_WIDTH, gPauseToSelectItemJPNTex_HEIGHT, 8)] = {
+u64 gPauseToSelectItemJPNTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_jpn_static/gPauseToSelectItemJPNTex.ia8.inc.c"
};
-u64 gPauseToMapJPNTex[TEX_LEN(u64, gPauseToMapJPNTex_WIDTH, gPauseToMapJPNTex_HEIGHT, 8)] = {
+u64 gPauseToMapJPNTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_jpn_static/gPauseToMapJPNTex.ia8.inc.c"
};
-u64 gPauseToQuestStatusJPNTex[TEX_LEN(u64, gPauseToQuestStatusJPNTex_WIDTH, gPauseToQuestStatusJPNTex_HEIGHT, 8)] = {
+u64 gPauseToQuestStatusJPNTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_jpn_static/gPauseToQuestStatusJPNTex.ia8.inc.c"
};
-u64 gPauseToEquipmentJPNTex[TEX_LEN(u64, gPauseToEquipmentJPNTex_WIDTH, gPauseToEquipmentJPNTex_HEIGHT, 8)] = {
+u64 gPauseToEquipmentJPNTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_jpn_static/gPauseToEquipmentJPNTex.ia8.inc.c"
};
diff --git a/assets/textures/icon_item_jpn_static/icon_item_jpn_static.h b/assets/textures/icon_item_jpn_static/icon_item_jpn_static.h
index bd21c0a74e..d850c943c0 100644
--- a/assets/textures/icon_item_jpn_static/icon_item_jpn_static.h
+++ b/assets/textures/icon_item_jpn_static/icon_item_jpn_static.h
@@ -44,18 +44,12 @@ extern u64 gPauseToDecideJPNTex[TEX_LEN(u64, gPauseToDecideJPNTex_WIDTH, gPauseT
#define gPauseToPlayMelodyJPNTex_WIDTH 96
#define gPauseToPlayMelodyJPNTex_HEIGHT 16
extern u64 gPauseToPlayMelodyJPNTex[TEX_LEN(u64, gPauseToPlayMelodyJPNTex_WIDTH, gPauseToPlayMelodyJPNTex_HEIGHT, 8)];
-#define gPauseToSelectItemJPNTex_WIDTH 128
-#define gPauseToSelectItemJPNTex_HEIGHT 16
-extern u64 gPauseToSelectItemJPNTex[TEX_LEN(u64, gPauseToSelectItemJPNTex_WIDTH, gPauseToSelectItemJPNTex_HEIGHT, 8)];
-#define gPauseToMapJPNTex_WIDTH 128
-#define gPauseToMapJPNTex_HEIGHT 16
-extern u64 gPauseToMapJPNTex[TEX_LEN(u64, gPauseToMapJPNTex_WIDTH, gPauseToMapJPNTex_HEIGHT, 8)];
-#define gPauseToQuestStatusJPNTex_WIDTH 128
-#define gPauseToQuestStatusJPNTex_HEIGHT 16
-extern u64 gPauseToQuestStatusJPNTex[TEX_LEN(u64, gPauseToQuestStatusJPNTex_WIDTH, gPauseToQuestStatusJPNTex_HEIGHT, 8)];
-#define gPauseToEquipmentJPNTex_WIDTH 128
-#define gPauseToEquipmentJPNTex_HEIGHT 16
-extern u64 gPauseToEquipmentJPNTex[TEX_LEN(u64, gPauseToEquipmentJPNTex_WIDTH, gPauseToEquipmentJPNTex_HEIGHT, 8)];
+
+extern u64 gPauseToSelectItemJPNTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+extern u64 gPauseToMapJPNTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+extern u64 gPauseToQuestStatusJPNTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+extern u64 gPauseToEquipmentJPNTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+
#define gPauseSavePromptJPNTex_WIDTH 152
#define gPauseSavePromptJPNTex_HEIGHT 16
extern u64 gPauseSavePromptJPNTex[TEX_LEN(u64, gPauseSavePromptJPNTex_WIDTH, gPauseSavePromptJPNTex_HEIGHT, 8)];
diff --git a/assets/textures/icon_item_nes_static/icon_item_nes_static.c b/assets/textures/icon_item_nes_static/icon_item_nes_static.c
index 5e84c69162..aeb95065c5 100644
--- a/assets/textures/icon_item_nes_static/icon_item_nes_static.c
+++ b/assets/textures/icon_item_nes_static/icon_item_nes_static.c
@@ -52,19 +52,19 @@ u64 gPauseToPlayMelodyENGTex[TEX_LEN(u64, gPauseToPlayMelodyENGTex_WIDTH, gPause
#include "assets/textures/icon_item_nes_static/gPauseToPlayMelodyENGTex.ia8.inc.c"
};
-u64 gPauseToSelectItemENGTex[TEX_LEN(u64, gPauseToSelectItemENGTex_WIDTH, gPauseToSelectItemENGTex_HEIGHT, 8)] = {
+u64 gPauseToSelectItemENGTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_nes_static/gPauseToSelectItemENGTex.ia8.inc.c"
};
-u64 gPauseToMapENGTex[TEX_LEN(u64, gPauseToMapENGTex_WIDTH, gPauseToMapENGTex_HEIGHT, 8)] = {
+u64 gPauseToMapENGTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_nes_static/gPauseToMapENGTex.ia8.inc.c"
};
-u64 gPauseToQuestStatusENGTex[TEX_LEN(u64, gPauseToQuestStatusENGTex_WIDTH, gPauseToQuestStatusENGTex_HEIGHT, 8)] = {
+u64 gPauseToQuestStatusENGTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_nes_static/gPauseToQuestStatusENGTex.ia8.inc.c"
};
-u64 gPauseToEquipmentENGTex[TEX_LEN(u64, gPauseToEquipmentENGTex_WIDTH, gPauseToEquipmentENGTex_HEIGHT, 8)] = {
+u64 gPauseToEquipmentENGTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)] = {
#include "assets/textures/icon_item_nes_static/gPauseToEquipmentENGTex.ia8.inc.c"
};
diff --git a/assets/textures/icon_item_nes_static/icon_item_nes_static.h b/assets/textures/icon_item_nes_static/icon_item_nes_static.h
index 007bebf3bc..7c732e0973 100644
--- a/assets/textures/icon_item_nes_static/icon_item_nes_static.h
+++ b/assets/textures/icon_item_nes_static/icon_item_nes_static.h
@@ -44,18 +44,12 @@ extern u64 gPauseToDecideENGTex[TEX_LEN(u64, gPauseToDecideENGTex_WIDTH, gPauseT
#define gPauseToPlayMelodyENGTex_WIDTH 80
#define gPauseToPlayMelodyENGTex_HEIGHT 16
extern u64 gPauseToPlayMelodyENGTex[TEX_LEN(u64, gPauseToPlayMelodyENGTex_WIDTH, gPauseToPlayMelodyENGTex_HEIGHT, 8)];
-#define gPauseToSelectItemENGTex_WIDTH 128
-#define gPauseToSelectItemENGTex_HEIGHT 16
-extern u64 gPauseToSelectItemENGTex[TEX_LEN(u64, gPauseToSelectItemENGTex_WIDTH, gPauseToSelectItemENGTex_HEIGHT, 8)];
-#define gPauseToMapENGTex_WIDTH 128
-#define gPauseToMapENGTex_HEIGHT 16
-extern u64 gPauseToMapENGTex[TEX_LEN(u64, gPauseToMapENGTex_WIDTH, gPauseToMapENGTex_HEIGHT, 8)];
-#define gPauseToQuestStatusENGTex_WIDTH 128
-#define gPauseToQuestStatusENGTex_HEIGHT 16
-extern u64 gPauseToQuestStatusENGTex[TEX_LEN(u64, gPauseToQuestStatusENGTex_WIDTH, gPauseToQuestStatusENGTex_HEIGHT, 8)];
-#define gPauseToEquipmentENGTex_WIDTH 128
-#define gPauseToEquipmentENGTex_HEIGHT 16
-extern u64 gPauseToEquipmentENGTex[TEX_LEN(u64, gPauseToEquipmentENGTex_WIDTH, gPauseToEquipmentENGTex_HEIGHT, 8)];
+
+extern u64 gPauseToSelectItemENGTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+extern u64 gPauseToMapENGTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+extern u64 gPauseToQuestStatusENGTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+extern u64 gPauseToEquipmentENGTex[TEX_LEN(u64, TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 8)];
+
#define gPauseSavePromptENGTex_WIDTH 152
#define gPauseSavePromptENGTex_HEIGHT 16
extern u64 gPauseSavePromptENGTex[TEX_LEN(u64, gPauseSavePromptENGTex_WIDTH, gPauseSavePromptENGTex_HEIGHT, 8)];
diff --git a/assets/xml/objects/object_anubice.xml b/assets/xml/objects/object_anubice.xml
index 492a8e4235..903804f74a 100644
--- a/assets/xml/objects/object_anubice.xml
+++ b/assets/xml/objects/object_anubice.xml
@@ -1,6 +1,6 @@
-
+
@@ -69,20 +69,20 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_bl.xml b/assets/xml/objects/object_bl.xml
index a987840a31..3ae9c89dc0 100644
--- a/assets/xml/objects/object_bl.xml
+++ b/assets/xml/objects/object_bl.xml
@@ -34,10 +34,10 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/assets/xml/objects/object_bw.xml b/assets/xml/objects/object_bw.xml
index 27a84f18f2..e7693b47aa 100644
--- a/assets/xml/objects/object_bw.xml
+++ b/assets/xml/objects/object_bw.xml
@@ -33,20 +33,20 @@
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
-
+
diff --git a/assets/xml/objects/object_fu.xml b/assets/xml/objects/object_fu.xml
index 1bc18759a5..4a5bb6c74d 100644
--- a/assets/xml/objects/object_fu.xml
+++ b/assets/xml/objects/object_fu.xml
@@ -35,22 +35,22 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_ge1.xml b/assets/xml/objects/object_ge1.xml
index bbb5d82a0d..0aaaf59b7b 100644
--- a/assets/xml/objects/object_ge1.xml
+++ b/assets/xml/objects/object_ge1.xml
@@ -2,24 +2,24 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_geldb.xml b/assets/xml/objects/object_geldb.xml
index f80ad410a6..1488db00b0 100644
--- a/assets/xml/objects/object_geldb.xml
+++ b/assets/xml/objects/object_geldb.xml
@@ -1,7 +1,7 @@
-
+
@@ -120,28 +120,28 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_gi_boots_2.xml b/assets/xml/objects/object_gi_boots_2.xml
index ae5d148421..539422c518 100644
--- a/assets/xml/objects/object_gi_boots_2.xml
+++ b/assets/xml/objects/object_gi_boots_2.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/assets/xml/objects/object_gi_butterfly.xml b/assets/xml/objects/object_gi_butterfly.xml
index 65eed5b0e8..55ad075ff6 100644
--- a/assets/xml/objects/object_gi_butterfly.xml
+++ b/assets/xml/objects/object_gi_butterfly.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/assets/xml/objects/object_gi_clothes.xml b/assets/xml/objects/object_gi_clothes.xml
index be9853eb8f..5108c274b9 100644
--- a/assets/xml/objects/object_gi_clothes.xml
+++ b/assets/xml/objects/object_gi_clothes.xml
@@ -1,6 +1,6 @@
-
+
diff --git a/assets/xml/objects/object_gi_dekupouch.xml b/assets/xml/objects/object_gi_dekupouch.xml
index d717edb8ba..4c2b6f6a11 100644
--- a/assets/xml/objects/object_gi_dekupouch.xml
+++ b/assets/xml/objects/object_gi_dekupouch.xml
@@ -2,7 +2,7 @@
-
+
diff --git a/assets/xml/objects/object_gi_fire.xml b/assets/xml/objects/object_gi_fire.xml
index 0211f60187..c754877a8e 100644
--- a/assets/xml/objects/object_gi_fire.xml
+++ b/assets/xml/objects/object_gi_fire.xml
@@ -1,8 +1,8 @@
-
-
+
+
diff --git a/assets/xml/objects/object_gi_frog.xml b/assets/xml/objects/object_gi_frog.xml
index 53384429b4..8591106120 100644
--- a/assets/xml/objects/object_gi_frog.xml
+++ b/assets/xml/objects/object_gi_frog.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/assets/xml/objects/object_gi_gerudo.xml b/assets/xml/objects/object_gi_gerudo.xml
index 34986a295e..a767dab10e 100644
--- a/assets/xml/objects/object_gi_gerudo.xml
+++ b/assets/xml/objects/object_gi_gerudo.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/assets/xml/objects/object_gi_gerudomask.xml b/assets/xml/objects/object_gi_gerudomask.xml
index 94576b0406..4a98e810f9 100644
--- a/assets/xml/objects/object_gi_gerudomask.xml
+++ b/assets/xml/objects/object_gi_gerudomask.xml
@@ -1,11 +1,11 @@
-
+
-
-
-
-
+
+
+
+
diff --git a/assets/xml/objects/object_gi_ghost.xml b/assets/xml/objects/object_gi_ghost.xml
index 5dbf39480f..1c98056d85 100644
--- a/assets/xml/objects/object_gi_ghost.xml
+++ b/assets/xml/objects/object_gi_ghost.xml
@@ -1,8 +1,8 @@
-
-
+
+
diff --git a/assets/xml/objects/object_gi_gloves.xml b/assets/xml/objects/object_gi_gloves.xml
index 85ad6ddeff..59d07b16d7 100644
--- a/assets/xml/objects/object_gi_gloves.xml
+++ b/assets/xml/objects/object_gi_gloves.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/assets/xml/objects/object_gi_golonmask.xml b/assets/xml/objects/object_gi_golonmask.xml
index 68dbddb365..45c2ba24cd 100644
--- a/assets/xml/objects/object_gi_golonmask.xml
+++ b/assets/xml/objects/object_gi_golonmask.xml
@@ -1,11 +1,11 @@
-
+
-
-
-
-
+
+
+
+
diff --git a/assets/xml/objects/object_gi_hoverboots.xml b/assets/xml/objects/object_gi_hoverboots.xml
index fed584e742..96a4769ffc 100644
--- a/assets/xml/objects/object_gi_hoverboots.xml
+++ b/assets/xml/objects/object_gi_hoverboots.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/assets/xml/objects/object_gi_ki_tan_mask.xml b/assets/xml/objects/object_gi_ki_tan_mask.xml
index b888acfe73..90a2cfca4d 100644
--- a/assets/xml/objects/object_gi_ki_tan_mask.xml
+++ b/assets/xml/objects/object_gi_ki_tan_mask.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/assets/xml/objects/object_gi_letter.xml b/assets/xml/objects/object_gi_letter.xml
index 098b8cca79..0034b0466c 100644
--- a/assets/xml/objects/object_gi_letter.xml
+++ b/assets/xml/objects/object_gi_letter.xml
@@ -1,7 +1,7 @@
-
-
+
+
diff --git a/assets/xml/objects/object_gi_liquid.xml b/assets/xml/objects/object_gi_liquid.xml
index 133d8ce902..c40e8110db 100644
--- a/assets/xml/objects/object_gi_liquid.xml
+++ b/assets/xml/objects/object_gi_liquid.xml
@@ -1,9 +1,9 @@
-
-
-
+
+
+
diff --git a/assets/xml/objects/object_gi_milk.xml b/assets/xml/objects/object_gi_milk.xml
index cc72cec9d1..5fedddbe15 100644
--- a/assets/xml/objects/object_gi_milk.xml
+++ b/assets/xml/objects/object_gi_milk.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/assets/xml/objects/object_gi_niwatori.xml b/assets/xml/objects/object_gi_niwatori.xml
index edf67f88d8..837ba16628 100644
--- a/assets/xml/objects/object_gi_niwatori.xml
+++ b/assets/xml/objects/object_gi_niwatori.xml
@@ -1,8 +1,8 @@
-
-
+
+
diff --git a/assets/xml/objects/object_gi_ocarina.xml b/assets/xml/objects/object_gi_ocarina.xml
index dafcb92424..057b6bf5e1 100644
--- a/assets/xml/objects/object_gi_ocarina.xml
+++ b/assets/xml/objects/object_gi_ocarina.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/assets/xml/objects/object_gi_ocarina_0.xml b/assets/xml/objects/object_gi_ocarina_0.xml
index e43bb3a87c..a8104984be 100644
--- a/assets/xml/objects/object_gi_ocarina_0.xml
+++ b/assets/xml/objects/object_gi_ocarina_0.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/assets/xml/objects/object_gi_prescription.xml b/assets/xml/objects/object_gi_prescription.xml
index 1b4e54ec5d..b83d3dfce2 100644
--- a/assets/xml/objects/object_gi_prescription.xml
+++ b/assets/xml/objects/object_gi_prescription.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/assets/xml/objects/object_gi_rabit_mask.xml b/assets/xml/objects/object_gi_rabit_mask.xml
index 65b6cdd4bc..177d640692 100644
--- a/assets/xml/objects/object_gi_rabit_mask.xml
+++ b/assets/xml/objects/object_gi_rabit_mask.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/assets/xml/objects/object_gi_shield_3.xml b/assets/xml/objects/object_gi_shield_3.xml
index 3550bd0d89..f1860d200a 100644
--- a/assets/xml/objects/object_gi_shield_3.xml
+++ b/assets/xml/objects/object_gi_shield_3.xml
@@ -1,8 +1,8 @@
-
-
+
+
diff --git a/assets/xml/objects/object_gi_soldout.xml b/assets/xml/objects/object_gi_soldout.xml
index ba45784761..be9398e25c 100644
--- a/assets/xml/objects/object_gi_soldout.xml
+++ b/assets/xml/objects/object_gi_soldout.xml
@@ -1,6 +1,6 @@
-
+
diff --git a/assets/xml/objects/object_gi_soul.xml b/assets/xml/objects/object_gi_soul.xml
index 519226270d..f991bf131c 100644
--- a/assets/xml/objects/object_gi_soul.xml
+++ b/assets/xml/objects/object_gi_soul.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/assets/xml/objects/object_gi_ticketstone.xml b/assets/xml/objects/object_gi_ticketstone.xml
index ce756e3abc..238081eaa3 100644
--- a/assets/xml/objects/object_gi_ticketstone.xml
+++ b/assets/xml/objects/object_gi_ticketstone.xml
@@ -1,8 +1,8 @@
-
-
+
+
diff --git a/assets/xml/objects/object_gi_truth_mask.xml b/assets/xml/objects/object_gi_truth_mask.xml
index 32c550560c..2a8608d79b 100644
--- a/assets/xml/objects/object_gi_truth_mask.xml
+++ b/assets/xml/objects/object_gi_truth_mask.xml
@@ -1,8 +1,8 @@
-
-
+
+
diff --git a/assets/xml/objects/object_gi_zoramask.xml b/assets/xml/objects/object_gi_zoramask.xml
index 0788f67f0d..71b29f454b 100644
--- a/assets/xml/objects/object_gi_zoramask.xml
+++ b/assets/xml/objects/object_gi_zoramask.xml
@@ -1,11 +1,11 @@
-
+
-
-
+
+
diff --git a/assets/xml/objects/object_gndd.xml b/assets/xml/objects/object_gndd.xml
index d284893579..8f119f05ef 100644
--- a/assets/xml/objects/object_gndd.xml
+++ b/assets/xml/objects/object_gndd.xml
@@ -145,31 +145,31 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
diff --git a/assets/xml/objects/object_hata.xml b/assets/xml/objects/object_hata.xml
index 98887b030d..7a8beff3a4 100644
--- a/assets/xml/objects/object_hata.xml
+++ b/assets/xml/objects/object_hata.xml
@@ -7,29 +7,29 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_im.xml b/assets/xml/objects/object_im.xml
index c6ce6b6890..546f38a9a3 100644
--- a/assets/xml/objects/object_im.xml
+++ b/assets/xml/objects/object_im.xml
@@ -107,23 +107,23 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_in.xml b/assets/xml/objects/object_in.xml
index 4530adc370..84bc84804b 100644
--- a/assets/xml/objects/object_in.xml
+++ b/assets/xml/objects/object_in.xml
@@ -216,27 +216,27 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
diff --git a/assets/xml/objects/object_ma2.xml b/assets/xml/objects/object_ma2.xml
index 960e9485bf..b6492afd84 100644
--- a/assets/xml/objects/object_ma2.xml
+++ b/assets/xml/objects/object_ma2.xml
@@ -99,25 +99,25 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_md.xml b/assets/xml/objects/object_md.xml
index ea1fca3cda..db5bed45bb 100644
--- a/assets/xml/objects/object_md.xml
+++ b/assets/xml/objects/object_md.xml
@@ -1,25 +1,25 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_nb.xml b/assets/xml/objects/object_nb.xml
index cf2dba8da4..9b909a89eb 100644
--- a/assets/xml/objects/object_nb.xml
+++ b/assets/xml/objects/object_nb.xml
@@ -2,27 +2,27 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_sk2.xml b/assets/xml/objects/object_sk2.xml
index 87e7a37831..9ee3768863 100644
--- a/assets/xml/objects/object_sk2.xml
+++ b/assets/xml/objects/object_sk2.xml
@@ -116,67 +116,67 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_ta.xml b/assets/xml/objects/object_ta.xml
index d73e28972a..5ab3863b7f 100644
--- a/assets/xml/objects/object_ta.xml
+++ b/assets/xml/objects/object_ta.xml
@@ -1,22 +1,22 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_vali.xml b/assets/xml/objects/object_vali.xml
index 5e511a1494..240a7e1371 100644
--- a/assets/xml/objects/object_vali.xml
+++ b/assets/xml/objects/object_vali.xml
@@ -71,34 +71,34 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/code/z_camera.c b/src/code/z_camera.c
index a84e144e8b..dde42b7922 100644
--- a/src/code/z_camera.c
+++ b/src/code/z_camera.c
@@ -3593,7 +3593,7 @@ s32 Camera_KeepOn3(Camera* camera) {
playerHeadPos = camPlayerPosRot->pos;
playerHeadPos.y += playerHeight;
rwData->atTarget = Camera_AddVecGeoToVec3f(&playerHeadPos, &targetToPlayerDir);
- angleCnt = ARRAY_COUNT(D_8011D3B0);
+ angleCnt = ARRAY_COUNT(sCamCheckAroundOffsetsYaw);
i = 0;
targetToPlayerDir.r = prevTargetPlayerDist;
atToEyeAdj.r = roData->minDist + (targetToPlayerDir.r * (1 - 0.5f)) - atToEyeNextDir.r + atToEyeNextDir.r;
@@ -3605,8 +3605,8 @@ s32 Camera_KeepOn3(Camera* camera) {
!Camera_BGCheck(camera, &rwData->atTarget, &lineChkPointB)) {
break;
}
- atToEyeAdj.yaw = sp80 + D_8011D3B0[i];
- atToEyeAdj.pitch = sp82 + D_8011D3CC[i];
+ atToEyeAdj.yaw = sp80 + sCamCheckAroundOffsetsYaw[i];
+ atToEyeAdj.pitch = sp82 + sCamCheckAroundOffsetsPitch[i];
lineChkPointB = Camera_AddVecGeoToVec3f(&rwData->atTarget, &atToEyeAdj);
i++;
}
@@ -3664,24 +3664,24 @@ s32 Camera_KeepOn3(Camera* camera) {
"ique-cn:128 ntsc-1.0:76 ntsc-1.1:76 ntsc-1.2:76 pal-1.0:76 pal-1.1:76"
s32 Camera_KeepOn4(Camera* camera) {
- static Vec3f D_8015BD50;
+ static Vec3f sAtTarget;
static Vec3f D_8015BD60;
- static Vec3f D_8015BD70;
+ static Vec3f sEyeCandidate;
Vec3f* eye = &camera->eye;
Vec3f* at = &camera->at;
Vec3f* eyeNext = &camera->eyeNext;
- Actor* spCC[2];
+ Actor* lineOCCheckExclusions[2];
f32 t = -0.5f;
f32 temp_f0_2;
CollisionPoly* spC0;
- VecGeo spB8;
- UNUSED VecGeo spB0;
- VecGeo spA8;
+ VecGeo vecGeo;
+ VecGeo atToEyeDir;
+ VecGeo atToEyeNextDir;
s16* itemType = &camera->data2;
- s16 spA2;
- s16 spA0;
+ s16 atToEyeBasePitch;
+ s16 atToEyeBaseYaw;
s16 sp9E;
- s16 sp9C;
+ s16 lineOCCheckNumExclusions;
PosRot* playerPosRot = &camera->playerPosRot;
KeepOn4ReadOnlyData* roData = &camera->paramData.keep4.roData;
KeepOn4ReadWriteData* rwData = &camera->paramData.keep4.rwData;
@@ -3839,87 +3839,87 @@ s32 Camera_KeepOn4(Camera* camera) {
sUpdateCameraDirection = 1;
sCameraInterfaceField = roData->interfaceField;
- spB0 = OLib_Vec3fDiffToVecGeo(at, eye);
- spA8 = OLib_Vec3fDiffToVecGeo(at, eyeNext);
- D_8015BD50 = playerPosRot->pos;
- D_8015BD50.y += playerHeight;
- temp_f0_2 = BgCheck_CameraRaycastDown2(&camera->play->colCtx, &spC0, &i, &D_8015BD50);
- if (temp_f0_2 > (roData->unk_00 + D_8015BD50.y)) {
- D_8015BD50.y = temp_f0_2 + 10.0f;
+ atToEyeDir = OLib_Vec3fDiffToVecGeo(at, eye);
+ atToEyeNextDir = OLib_Vec3fDiffToVecGeo(at, eyeNext);
+ sAtTarget = playerPosRot->pos;
+ sAtTarget.y += playerHeight;
+ temp_f0_2 = BgCheck_CameraRaycastDown2(&camera->play->colCtx, &spC0, &i, &sAtTarget);
+ if (temp_f0_2 > (roData->unk_00 + sAtTarget.y)) {
+ sAtTarget.y = temp_f0_2 + 10.0f;
} else {
- D_8015BD50.y += roData->unk_00;
+ sAtTarget.y += roData->unk_00;
}
- sp9C = 0;
+ lineOCCheckNumExclusions = 0;
switch (camera->animState) {
case 0:
case 20:
- spCC[sp9C] = &camera->player->actor;
- sp9C++;
+ lineOCCheckExclusions[lineOCCheckNumExclusions] = &camera->player->actor;
+ lineOCCheckNumExclusions++;
func_80043ABC(camera);
camera->stateFlags &= ~(CAM_STATE_CHECK_WATER | CAM_STATE_CHECK_BG);
rwData->unk_10 = roData->unk_1E;
rwData->unk_08 = playerPosRot->pos.y - camera->playerPosDelta.y;
if (roData->interfaceField & KEEPON4_FLAG_1) {
- spA2 = CAM_DEG_TO_BINANG(roData->unk_08);
- spA0 = (s16)((s16)(playerPosRot->rot.y - 0x7FFF) - spA8.yaw) > 0
- ? (s16)(playerPosRot->rot.y - 0x7FFF) + CAM_DEG_TO_BINANG(roData->unk_0C)
- : (s16)(playerPosRot->rot.y - 0x7FFF) - CAM_DEG_TO_BINANG(roData->unk_0C);
+ atToEyeBasePitch = CAM_DEG_TO_BINANG(roData->unk_08);
+ atToEyeBaseYaw = (s16)((s16)(playerPosRot->rot.y - 0x7FFF) - atToEyeNextDir.yaw) > 0
+ ? (s16)(playerPosRot->rot.y - 0x7FFF) + CAM_DEG_TO_BINANG(roData->unk_0C)
+ : (s16)(playerPosRot->rot.y - 0x7FFF) - CAM_DEG_TO_BINANG(roData->unk_0C);
} else if (roData->interfaceField & KEEPON4_FLAG_2) {
- spA2 = CAM_DEG_TO_BINANG(roData->unk_08);
- spA0 = CAM_DEG_TO_BINANG(roData->unk_0C);
+ atToEyeBasePitch = CAM_DEG_TO_BINANG(roData->unk_08);
+ atToEyeBaseYaw = CAM_DEG_TO_BINANG(roData->unk_0C);
} else if ((roData->interfaceField & KEEPON4_FLAG_3) && camera->target != NULL) {
PosRot sp60;
sp60 = Actor_GetWorldPosShapeRot(camera->target);
- spA2 = CAM_DEG_TO_BINANG(roData->unk_08) - sp60.rot.x;
- spA0 = (s16)((s16)(sp60.rot.y - 0x7FFF) - spA8.yaw) > 0
- ? (s16)(sp60.rot.y - 0x7FFF) + CAM_DEG_TO_BINANG(roData->unk_0C)
- : (s16)(sp60.rot.y - 0x7FFF) - CAM_DEG_TO_BINANG(roData->unk_0C);
- spCC[1] = camera->target;
- sp9C++;
+ atToEyeBasePitch = CAM_DEG_TO_BINANG(roData->unk_08) - sp60.rot.x;
+ atToEyeBaseYaw = (s16)((s16)(sp60.rot.y - 0x7FFF) - atToEyeNextDir.yaw) > 0
+ ? (s16)(sp60.rot.y - 0x7FFF) + CAM_DEG_TO_BINANG(roData->unk_0C)
+ : (s16)(sp60.rot.y - 0x7FFF) - CAM_DEG_TO_BINANG(roData->unk_0C);
+ lineOCCheckExclusions[1] = camera->target;
+ lineOCCheckNumExclusions++;
} else if ((roData->interfaceField & KEEPON4_FLAG_7) && camera->target != NULL) {
PosRot sp4C;
sp4C = Actor_GetWorld(camera->target);
- spA2 = CAM_DEG_TO_BINANG(roData->unk_08);
+ atToEyeBasePitch = CAM_DEG_TO_BINANG(roData->unk_08);
sp9E = Camera_XZAngle(&sp4C.pos, &playerPosRot->pos);
- spA0 = ((s16)(sp9E - spA8.yaw) > 0) ? sp9E + CAM_DEG_TO_BINANG(roData->unk_0C)
- : sp9E - CAM_DEG_TO_BINANG(roData->unk_0C);
- spCC[1] = camera->target;
- sp9C++;
+ atToEyeBaseYaw = ((s16)(sp9E - atToEyeNextDir.yaw) > 0) ? sp9E + CAM_DEG_TO_BINANG(roData->unk_0C)
+ : sp9E - CAM_DEG_TO_BINANG(roData->unk_0C);
+ lineOCCheckExclusions[1] = camera->target;
+ lineOCCheckNumExclusions++;
} else if (roData->interfaceField & KEEPON4_FLAG_6) {
- spA2 = CAM_DEG_TO_BINANG(roData->unk_08);
- spA0 = spA8.yaw;
+ atToEyeBasePitch = CAM_DEG_TO_BINANG(roData->unk_08);
+ atToEyeBaseYaw = atToEyeNextDir.yaw;
} else {
- spA2 = spA8.pitch;
- spA0 = spA8.yaw;
+ atToEyeBasePitch = atToEyeNextDir.pitch;
+ atToEyeBaseYaw = atToEyeNextDir.yaw;
}
- spB8.pitch = spA2;
- spB8.yaw = spA0;
- spB8.r = roData->unk_04;
- D_8015BD70 = Camera_AddVecGeoToVec3f(&D_8015BD50, &spB8);
+ vecGeo.pitch = atToEyeBasePitch;
+ vecGeo.yaw = atToEyeBaseYaw;
+ vecGeo.r = roData->unk_04;
+ sEyeCandidate = Camera_AddVecGeoToVec3f(&sAtTarget, &vecGeo);
if (!(roData->interfaceField & KEEPON4_FLAG_0)) {
- angleCnt = ARRAY_COUNT(D_8011D3B0);
+ angleCnt = ARRAY_COUNT(sCamCheckAroundOffsetsYaw);
for (i = 0; i < angleCnt; i++) {
- if (!CollisionCheck_LineOCCheck(camera->play, &camera->play->colChkCtx, &D_8015BD50, &D_8015BD70,
- spCC, sp9C) &&
- !Camera_BGCheck(camera, &D_8015BD50, &D_8015BD70)) {
+ if (!CollisionCheck_LineOCCheck(camera->play, &camera->play->colChkCtx, &sAtTarget, &sEyeCandidate,
+ lineOCCheckExclusions, lineOCCheckNumExclusions) &&
+ !Camera_BGCheck(camera, &sAtTarget, &sEyeCandidate)) {
break;
}
- spB8.yaw = D_8011D3B0[i] + spA0;
- spB8.pitch = D_8011D3CC[i] + spA2;
- D_8015BD70 = Camera_AddVecGeoToVec3f(&D_8015BD50, &spB8);
+ vecGeo.yaw = sCamCheckAroundOffsetsYaw[i] + atToEyeBaseYaw;
+ vecGeo.pitch = sCamCheckAroundOffsetsPitch[i] + atToEyeBasePitch;
+ sEyeCandidate = Camera_AddVecGeoToVec3f(&sAtTarget, &vecGeo);
}
#if DEBUG_FEATURES
PRINTF("camera: item: BG&collision check %d time(s)\n", i);
#endif
}
- rwData->unk_04 = (s16)(spB8.pitch - spA8.pitch) / (f32)rwData->unk_10;
- rwData->unk_00 = (s16)(spB8.yaw - spA8.yaw) / (f32)rwData->unk_10;
- rwData->unk_0C = spA8.yaw;
- rwData->unk_0E = spA8.pitch;
+ rwData->unk_04 = (s16)(vecGeo.pitch - atToEyeNextDir.pitch) / (f32)rwData->unk_10;
+ rwData->unk_00 = (s16)(vecGeo.yaw - atToEyeNextDir.yaw) / (f32)rwData->unk_10;
+ rwData->unk_0C = atToEyeNextDir.yaw;
+ rwData->unk_0E = atToEyeNextDir.pitch;
camera->animState++;
rwData->unk_12 = 1;
break;
@@ -3931,16 +3931,16 @@ s32 Camera_KeepOn4(Camera* camera) {
camera->xzOffsetUpdateRate = 0.25f;
camera->yOffsetUpdateRate = 0.25f;
camera->atLERPStepScale = 0.75f;
- Camera_LERPCeilVec3f(&D_8015BD50, at, 0.5f, 0.5f, 0.2f);
+ Camera_LERPCeilVec3f(&sAtTarget, at, 0.5f, 0.5f, 0.2f);
if (roData->unk_10 != 0.0f) {
- spB8.r = roData->unk_10;
- spB8.pitch = 0;
- spB8.yaw = playerPosRot->rot.y;
- *at = Camera_AddVecGeoToVec3f(at, &spB8);
+ vecGeo.r = roData->unk_10;
+ vecGeo.pitch = 0;
+ vecGeo.yaw = playerPosRot->rot.y;
+ *at = Camera_AddVecGeoToVec3f(at, &vecGeo);
}
camera->atLERPStepScale = 0.0f;
camera->dist = Camera_LERPCeilF(roData->unk_04, camera->dist, 0.25f, 2.0f);
- spB8.r = camera->dist;
+ vecGeo.r = camera->dist;
if (rwData->unk_10 != 0) {
camera->stateFlags |= CAM_STATE_LOCK_MODE;
rwData->unk_0C += (s16)rwData->unk_00;
@@ -3967,9 +3967,9 @@ s32 Camera_KeepOn4(Camera* camera) {
}
}
}
- spB8.yaw = Camera_LERPCeilS(rwData->unk_0C, spA8.yaw, roData->unk_14, 4);
- spB8.pitch = Camera_LERPCeilS(rwData->unk_0E, spA8.pitch, roData->unk_14, 4);
- *eyeNext = Camera_AddVecGeoToVec3f(at, &spB8);
+ vecGeo.yaw = Camera_LERPCeilS(rwData->unk_0C, atToEyeNextDir.yaw, roData->unk_14, 4);
+ vecGeo.pitch = Camera_LERPCeilS(rwData->unk_0E, atToEyeNextDir.pitch, roData->unk_14, 4);
+ *eyeNext = Camera_AddVecGeoToVec3f(at, &vecGeo);
*eye = *eyeNext;
Camera_BGCheck(camera, at, eye);
camera->fov = Camera_LERPCeilF(roData->unk_18, camera->fov, camera->fovUpdateRate, 1.0f);
diff --git a/src/code/z_camera_data.inc.c b/src/code/z_camera_data.inc.c
index 9a9795f453..9f724ec084 100644
--- a/src/code/z_camera_data.inc.c
+++ b/src/code/z_camera_data.inc.c
@@ -2574,12 +2574,14 @@ s32 sCameraLetterboxSize = 32;
s32 D_8011D3AC = -1;
-s16 D_8011D3B0[] = {
- 0x0AAA, 0xF556, 0x1555, 0xEAAB, 0x2AAA, 0xD556, 0x3FFF, 0xC001, 0x5555, 0xAAAB, 0x6AAA, 0x9556, 0x7FFF, 0x0000,
+// Used in Camera_KeepOn3 and Camera_KeepOn4 to check around an `at` position for an `eye` position such that the
+// `at`-`eye` segment is not obstructed by collision or colliders.
+s16 sCamCheckAroundOffsetsYaw[] = {
+ 0x0AAA, -0x0AAA, 0x1555, -0x1555, 0x2AAA, -0x2AAA, 0x3FFF,
+ -0x3FFF, 0x5555, -0x5555, 0x6AAA, -0x6AAA, 0x7FFF, 0x0000,
};
-
-s16 D_8011D3CC[] = {
- 0x0000, 0x02C6, 0x058C, 0x0000, 0x0000, 0xFD3A, 0x0000, 0x0852, 0x0000, 0x0000, 0x0B18, 0x02C6, 0xFA74, 0x0000,
+s16 sCamCheckAroundOffsetsPitch[] = {
+ 0x0000, 0x02C6, 0x058C, 0x0000, 0x0000, -0x02C6, 0x0000, 0x0852, 0x0000, 0x0000, 0x0B18, 0x02C6, -0x058C, 0x0000,
};
s32 sUpdateCameraDirection = 0;
diff --git a/src/overlays/actors/ovl_Demo_Im/z_demo_im.h b/src/overlays/actors/ovl_Demo_Im/z_demo_im.h
index ac3e06250c..ddbec02833 100644
--- a/src/overlays/actors/ovl_Demo_Im/z_demo_im.h
+++ b/src/overlays/actors/ovl_Demo_Im/z_demo_im.h
@@ -4,32 +4,13 @@
#include "ultra64.h"
#include "actor.h"
+#include "assets/objects/object_im/object_im.h"
+
struct DemoIm;
typedef void (*DemoImActionFunc)(struct DemoIm*, struct PlayState*);
typedef void (*DemoImDrawFunc)(struct DemoIm*, struct PlayState*);
-typedef enum ImpaLimb {
- /* 0x00 */ IMPA_LIMB_NONE,
- /* 0x01 */ IMPA_LIMB_ROOT,
- /* 0x02 */ IMPA_LIMB_TORSO,
- /* 0x03 */ IMPA_LIMB_LEFT_THIGH,
- /* 0x04 */ IMPA_LIMB_LEFT_LEG,
- /* 0x05 */ IMPA_LIMB_LEFT_FOOT,
- /* 0x06 */ IMPA_LIMB_RIGHT_THIGH,
- /* 0x07 */ IMPA_LIMB_RIGHT_LEG,
- /* 0x08 */ IMPA_LIMB_RIGHT_FOOT,
- /* 0x09 */ IMPA_LIMB_CHEST,
- /* 0x0A */ IMPA_LIMB_LEFT_SHOULDER,
- /* 0x0B */ IMPA_LIMB_LEFT_ARM,
- /* 0x0C */ IMPA_LIMB_LEFT_HAND,
- /* 0x0D */ IMPA_LIMB_RIGHT_SHOULDER,
- /* 0x0E */ IMPA_LIMB_RIGHT_ARM,
- /* 0x0F */ IMPA_LIMB_RIGHT_HAND,
- /* 0x10 */ IMPA_LIMB_HEAD,
- /* 0x11 */ IMPA_LIMB_MAX
-} ImpaLimb;
-
typedef struct DemoIm {
/* 0x0000 */ Actor actor;
/* 0x014C */ SkelAnime skelAnime;
diff --git a/src/overlays/actors/ovl_En_Anubice/z_en_anubice.h b/src/overlays/actors/ovl_En_Anubice/z_en_anubice.h
index 51b143fa1e..fd54405a29 100644
--- a/src/overlays/actors/ovl_En_Anubice/z_en_anubice.h
+++ b/src/overlays/actors/ovl_En_Anubice/z_en_anubice.h
@@ -4,30 +4,12 @@
#include "ultra64.h"
#include "actor.h"
+#include "assets/objects/object_anubice/object_anubice.h"
+
struct EnAnubice;
typedef void (*EnAnubiceActionFunc)(struct EnAnubice*, struct PlayState*);
-typedef enum AnubiceLimbs {
- /* 0 */ ANUBICE_LIMB_NONE,
- /* 1 */ ANUBICE_LIMB_ROOT,
- /* 2 */ ANUBICE_LIMB_BODY_ROOT,
- /* 3 */ ANUBICE_LIMB_CHEST,
- /* 4 */ ANUBICE_LIMB_ABDOMEN_ROOT,
- /* 5 */ ANUBICE_LIMB_UPPER_ABDOMEN,
- /* 6 */ ANUBICE_LIMB_LOWER_ABDOMEN,
- /* 7 */ ANUBICE_LIMB_TAIL_ROOT,
- /* 8 */ ANUBICE_LIMB_TAIL_BASE,
- /* 9 */ ANUBICE_LIMB_TAIL_TIP,
- /* 10 */ ANUBICE_LIMB_JEWEL_ROOT,
- /* 11 */ ANUBICE_LIMB_JEWEL,
- /* 12 */ ANUBICE_LIMB_HEAD_ROOT,
- /* 13 */ ANUBICE_LIMB_HEAD,
- /* 14 */ ANUBICE_LIMB_JAW_ROOT,
- /* 15 */ ANUBICE_LIMB_JAW,
- /* 16 */ ANUBICE_LIMB_MAX
-} AnubiceLimbs;
-
typedef struct EnAnubice {
/* 0x0000 */ Actor actor;
/* 0x014C */ SkelAnime skelAnime;
diff --git a/src/overlays/actors/ovl_En_Bili/z_en_bili.c b/src/overlays/actors/ovl_En_Bili/z_en_bili.c
index eb1a8a80ad..804f5e59c1 100644
--- a/src/overlays/actors/ovl_En_Bili/z_en_bili.c
+++ b/src/overlays/actors/ovl_En_Bili/z_en_bili.c
@@ -134,7 +134,7 @@ void EnBili_Init(Actor* thisx, PlayState* play) {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 17.0f);
this->actor.shape.shadowAlpha = 155;
SkelAnime_Init(play, &this->skelAnime, &gBiriSkel, &gBiriDefaultAnim, this->jointTable, this->morphTable,
- EN_BILI_LIMB_MAX);
+ BIRI_LIMB_MAX);
Collider_InitCylinder(play, &this->collider);
Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit);
CollisionCheck_SetInfo2(&this->actor.colChkInfo, &sDamageTable, &sColChkInfoInit);
@@ -749,11 +749,11 @@ s32 EnBili_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f*
Vec3f limbScale = { 1.0f, 1.0f, 1.0f };
f32 curFrame = this->skelAnime.curFrame;
- if (limbIndex == EN_BILI_LIMB_OUTER_HOOD) {
+ if (limbIndex == BIRI_LIMB_OUTER_HOOD) {
EnBili_PulseLimb3(this, curFrame, &limbScale);
- } else if (limbIndex == EN_BILI_LIMB_INNER_HOOD) {
+ } else if (limbIndex == BIRI_LIMB_INNER_HOOD) {
EnBili_PulseLimb2(this, curFrame, &limbScale);
- } else if (limbIndex == EN_BILI_LIMB_TENTACLES) {
+ } else if (limbIndex == BIRI_LIMB_TENTACLES) {
EnBili_PulseLimb4(this, curFrame, &limbScale);
rot->y = (Camera_GetCamDirYaw(GET_ACTIVE_CAM(play)) - this->actor.shape.rot.y) + 0x8000;
}
diff --git a/src/overlays/actors/ovl_En_Bili/z_en_bili.h b/src/overlays/actors/ovl_En_Bili/z_en_bili.h
index b0e58c4679..0675847ee2 100644
--- a/src/overlays/actors/ovl_En_Bili/z_en_bili.h
+++ b/src/overlays/actors/ovl_En_Bili/z_en_bili.h
@@ -4,19 +4,12 @@
#include "ultra64.h"
#include "actor.h"
+#include "assets/objects/object_bl/object_bl.h"
+
struct EnBili;
typedef void (*EnBiliActionFunc)(struct EnBili*, struct PlayState*);
-typedef enum EnBiliLimb {
- /* 0 */ EN_BILI_LIMB_NONE,
- /* 1 */ EN_BILI_LIMB_ROOT,
- /* 2 */ EN_BILI_LIMB_INNER_HOOD,
- /* 3 */ EN_BILI_LIMB_OUTER_HOOD,
- /* 4 */ EN_BILI_LIMB_TENTACLES,
- /* 5 */ EN_BILI_LIMB_MAX
-} EnBiliLimb;
-
typedef struct EnBili {
/* 0x0000 */ Actor actor;
/* 0x014C */ SkelAnime skelAnime;
@@ -24,8 +17,8 @@ typedef struct EnBili {
/* 0x0194 */ u8 tentaclesTexIndex;
/* 0x0195 */ u8 playFlySfx;
/* 0x0196 */ s16 timer;
- /* 0x0198 */ Vec3s jointTable[EN_BILI_LIMB_MAX];
- /* 0x01B6 */ Vec3s morphTable[EN_BILI_LIMB_MAX];
+ /* 0x0198 */ Vec3s jointTable[BIRI_LIMB_MAX];
+ /* 0x01B6 */ Vec3s morphTable[BIRI_LIMB_MAX];
/* 0x01D4 */ ColliderCylinder collider;
} EnBili; // size = 0x0220
diff --git a/src/overlays/actors/ovl_En_Bw/z_en_bw.h b/src/overlays/actors/ovl_En_Bw/z_en_bw.h
index fe9f8ef90a..e3ae7da245 100644
--- a/src/overlays/actors/ovl_En_Bw/z_en_bw.h
+++ b/src/overlays/actors/ovl_En_Bw/z_en_bw.h
@@ -4,25 +4,11 @@
#include "ultra64.h"
#include "actor.h"
+#include "assets/objects/object_bw/object_bw.h"
+
struct EnBw;
typedef void (*EnBwActionFunc)(struct EnBw*, struct PlayState*);
-typedef enum TorchSlugLimb {
- /* 0 */ TORCH_SLUG_LIMB_NONE,
- /* 1 */ TORCH_SLUG_LIMB_BODY,
- /* 2 */ TORCH_SLUG_LIMB_LEFT_EYESTALK_ROOT_ROOT,
- /* 3 */ TORCH_SLUG_LIMB_LEFT_EYESTALK_ROOT,
- /* 4 */ TORCH_SLUG_LIMB_LEFT_UPPER_EYESTALK_ROOT,
- /* 5 */ TORCH_SLUG_LIMB_LEFT_UPPER_EYESTALK,
- /* 6 */ TORCH_SLUG_LIMB_LEFT_LOWER_EYESTALK,
- /* 7 */ TORCH_SLUG_LIMB_RIGHT_EYESTALK_ROOT_ROOT,
- /* 8 */ TORCH_SLUG_LIMB_RIGHT_EYESTALK_ROOT,
- /* 9 */ TORCH_SLUG_LIMB_RIGHT_UPPER_EYESTALK_ROOT,
- /* 10 */ TORCH_SLUG_LIMB_RIGHT_UPPER_EYESTALK,
- /* 11 */ TORCH_SLUG_LIMB_RIGHT_LOWER_EYESTALK,
- /* 12 */ TORCH_SLUG_LIMB_MAX
-} TorchSlugLimb;
-
typedef struct EnBw {
/* 0x0000 */ Actor actor;
/* 0x014C */ SkelAnime skelAnime;
diff --git a/src/overlays/actors/ovl_En_Fu/z_en_fu.c b/src/overlays/actors/ovl_En_Fu/z_en_fu.c
index e8cfb6342f..9495395aa3 100644
--- a/src/overlays/actors/ovl_En_Fu/z_en_fu.c
+++ b/src/overlays/actors/ovl_En_Fu/z_en_fu.c
@@ -92,7 +92,7 @@ void EnFu_Init(Actor* thisx, PlayState* play) {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 36.0f);
SkelAnime_InitFlex(play, &this->skelanime, &gWindmillManSkel, &gWindmillManPlayStillAnim, this->jointTable,
- this->morphTable, FU_LIMB_MAX);
+ this->morphTable, WINDMILL_MAN_LIMB_MAX);
Animation_PlayLoop(&this->skelanime, &gWindmillManPlayStillAnim);
Collider_InitCylinder(play, &this->collider);
Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit);
@@ -276,15 +276,15 @@ s32 EnFu_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* po
EnFu* this = (EnFu*)thisx;
s32 pad;
- if (limbIndex == FU_LIMB_UNK) {
+ if (limbIndex == WINDMILL_MAN_LIMB_UNK) {
return false;
}
switch (limbIndex) {
- case FU_LIMB_HEAD:
+ case WINDMILL_MAN_LIMB_HEAD:
rot->x += this->lookAngleOffset.y;
rot->z += this->lookAngleOffset.x;
break;
- case FU_LIMB_CHEST_MUSIC_BOX:
+ case WINDMILL_MAN_LIMB_CHEST_MUSIC_BOX:
break;
}
@@ -292,7 +292,7 @@ s32 EnFu_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* po
return false;
}
- if (limbIndex == FU_LIMB_CHEST_MUSIC_BOX) {
+ if (limbIndex == WINDMILL_MAN_LIMB_CHEST_MUSIC_BOX) {
rot->y += Math_SinS((play->state.frames * (limbIndex * FIDGET_FREQ_LIMB + FIDGET_FREQ_Y))) * FIDGET_AMPLITUDE;
rot->z += Math_CosS((play->state.frames * (limbIndex * FIDGET_FREQ_LIMB + FIDGET_FREQ_Z))) * FIDGET_AMPLITUDE;
}
@@ -302,7 +302,7 @@ s32 EnFu_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* po
void EnFu_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* rot, void* thisx) {
EnFu* this = (EnFu*)thisx;
- if (limbIndex == FU_LIMB_HEAD) {
+ if (limbIndex == WINDMILL_MAN_LIMB_HEAD) {
Matrix_MultVec3f(&sMtxSrc, &this->actor.focus.pos);
}
}
diff --git a/src/overlays/actors/ovl_En_Fu/z_en_fu.h b/src/overlays/actors/ovl_En_Fu/z_en_fu.h
index d2138f7613..bfd2842e14 100644
--- a/src/overlays/actors/ovl_En_Fu/z_en_fu.h
+++ b/src/overlays/actors/ovl_En_Fu/z_en_fu.h
@@ -4,36 +4,18 @@
#include "ultra64.h"
#include "actor.h"
+#include "assets/objects/object_fu/object_fu.h"
+
struct EnFu;
typedef void (*EnFuActionFunc)(struct EnFu*, struct PlayState*);
-typedef enum EnFuLimb {
- /* 0x00 */ FU_LIMB_ROOT,
- /* 0x01 */ FU_LIMB_TORSO,
- /* 0x02 */ FU_LIMB_LEFT_THIGH,
- /* 0x03 */ FU_LIMB_LEFT_LEG,
- /* 0x04 */ FU_LIMB_LEFT_FOOT,
- /* 0x05 */ FU_LIMB_RIGHT_THIGH,
- /* 0x06 */ FU_LIMB_RIGHT_LEG,
- /* 0x07 */ FU_LIMB_RIGHT_FOOT,
- /* 0x08 */ FU_LIMB_CHEST_MUSIC_BOX,
- /* 0x09 */ FU_LIMB_LEFT_ARM_MUSIC_BOX,
- /* 0x0A */ FU_LIMB_UNK,
- /* 0x0B */ FU_LIMB_RIGHT_SHOULDER,
- /* 0x0C */ FU_LIMB_RIGHT_ARM,
- /* 0x0D */ FU_LIMB_RIGHT_HAND_AND_CRANK,
- /* 0x0E */ FU_LIMB_HEAD,
- /* 0x0F */ FU_LIMB_HORN,
- /* 0x10 */ FU_LIMB_MAX
-} EnFuLimb;
-
typedef struct EnFu {
/* 0x0000 */ Actor actor;
/* 0x014C */ ColliderCylinder collider;
/* 0x0198 */ SkelAnime skelanime;
- /* 0x01DC */ Vec3s jointTable[FU_LIMB_MAX];
- /* 0x023C */ Vec3s morphTable[FU_LIMB_MAX];
+ /* 0x01DC */ Vec3s jointTable[WINDMILL_MAN_LIMB_MAX];
+ /* 0x023C */ Vec3s morphTable[WINDMILL_MAN_LIMB_MAX];
/* 0x029C */ Vec3s lookAngleOffset; // offset applied to neck rotation to look at link when he is close
/* 0x02A2 */ Vec3s unk_2A2;
/* 0x02A8 */ u16 behaviorFlags;
diff --git a/src/overlays/actors/ovl_En_Ge1/z_en_ge1.c b/src/overlays/actors/ovl_En_Ge1/z_en_ge1.c
index 6d08efd921..01ebeccfc3 100644
--- a/src/overlays/actors/ovl_En_Ge1/z_en_ge1.c
+++ b/src/overlays/actors/ovl_En_Ge1/z_en_ge1.c
@@ -107,7 +107,7 @@ void EnGe1_Init(Actor* thisx, PlayState* play) {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f);
SkelAnime_InitFlex(play, &this->skelAnime, &gGerudoWhiteSkel, &gGerudoWhiteIdleAnim, this->jointTable,
- this->morphTable, GE1_LIMB_MAX);
+ this->morphTable, GERUDO_WHITE_LIMB_MAX);
Animation_PlayOnce(&this->skelAnime, &gGerudoWhiteIdleAnim);
Collider_InitCylinder(play, &this->collider);
Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit);
@@ -780,7 +780,7 @@ s32 EnGe1_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* p
s32 pad;
EnGe1* this = (EnGe1*)thisx;
- if (limbIndex == GE1_LIMB_HEAD) {
+ if (limbIndex == GERUDO_WHITE_LIMB_HEAD) {
rot->x += this->headRot.y;
rot->z += this->headRot.x;
}
@@ -792,7 +792,8 @@ s32 EnGe1_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* p
// The purpose of the state flag GE1_STATE_STOP_FIDGET is to skip this code, which this actor has in lieu of an idle
// animation.
- if ((limbIndex == GE1_LIMB_TORSO) || (limbIndex == GE1_LIMB_L_FOREARM) || (limbIndex == GE1_LIMB_R_FOREARM)) {
+ if ((limbIndex == GERUDO_WHITE_LIMB_TORSO) || (limbIndex == GERUDO_WHITE_LIMB_L_FOREARM) ||
+ (limbIndex == GERUDO_WHITE_LIMB_R_FOREARM)) {
rot->y += Math_SinS(play->state.frames * (limbIndex * FIDGET_FREQ_LIMB + FIDGET_FREQ_Y)) * FIDGET_AMPLITUDE;
rot->z += Math_CosS(play->state.frames * (limbIndex * FIDGET_FREQ_LIMB + FIDGET_FREQ_Z)) * FIDGET_AMPLITUDE;
}
@@ -804,7 +805,7 @@ void EnGe1_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* rot,
OPEN_DISPS(play->state.gfxCtx, "../z_en_ge1.c", 1419);
- if (limbIndex == GE1_LIMB_HEAD) {
+ if (limbIndex == GERUDO_WHITE_LIMB_HEAD) {
gSPDisplayList(POLY_OPA_DISP++, sHairstyleDLists[this->hairstyle]);
Matrix_MultVec3f(&D_80A327A8, &this->actor.focus.pos);
}
diff --git a/src/overlays/actors/ovl_En_Ge1/z_en_ge1.h b/src/overlays/actors/ovl_En_Ge1/z_en_ge1.h
index 077f0f9cc0..4566dacbbd 100644
--- a/src/overlays/actors/ovl_En_Ge1/z_en_ge1.h
+++ b/src/overlays/actors/ovl_En_Ge1/z_en_ge1.h
@@ -4,6 +4,8 @@
#include "ultra64.h"
#include "actor.h"
+#include "assets/objects/object_ge1/object_ge1.h"
+
struct EnGe1;
typedef void (*EnGe1AnimFunc)(struct EnGe1*);
@@ -18,32 +20,12 @@ typedef enum EnGe1Type {
/* 0x46 */ GE1_TYPE_TRAINING_GROUNDS_GUARD
} EnGe1Type;
-typedef enum EnGe1Limb {
- /* 00 */ GE1_LIMB_NONE,
- /* 01 */ GE1_LIMB_WAIST,
- /* 02 */ GE1_LIMB_L_THIGH,
- /* 03 */ GE1_LIMB_L_LOWER_LEG,
- /* 04 */ GE1_LIMB_L_FOOT,
- /* 05 */ GE1_LIMB_R_THIGH,
- /* 06 */ GE1_LIMB_R_LOWER_LEG,
- /* 07 */ GE1_LIMB_R_FOOT,
- /* 08 */ GE1_LIMB_TORSO,
- /* 09 */ GE1_LIMB_L_UPPER_ARM,
- /* 10 */ GE1_LIMB_L_FOREARM,
- /* 11 */ GE1_LIMB_L_HAND,
- /* 12 */ GE1_LIMB_R_UPPER_ARM,
- /* 13 */ GE1_LIMB_R_FOREARM,
- /* 14 */ GE1_LIMB_R_HAND,
- /* 15 */ GE1_LIMB_HEAD,
- /* 16 */ GE1_LIMB_MAX
-} EnGe1Limb;
-
typedef struct EnGe1 {
/* 0x0000 */ Actor actor;
/* 0x014C */ ColliderCylinder collider;
/* 0x0198 */ SkelAnime skelAnime;
- /* 0x01DC */ Vec3s jointTable[GE1_LIMB_MAX];
- /* 0x023C */ Vec3s morphTable[GE1_LIMB_MAX];
+ /* 0x01DC */ Vec3s jointTable[GERUDO_WHITE_LIMB_MAX];
+ /* 0x023C */ Vec3s morphTable[GERUDO_WHITE_LIMB_MAX];
/* 0x029C */ Vec3s headRot;
/* 0x02A2 */ Vec3s unk_2A2;
/* 0x02A8 */ s16 eyeIndex;
diff --git a/src/overlays/actors/ovl_En_Ge3/z_en_ge3.c b/src/overlays/actors/ovl_En_Ge3/z_en_ge3.c
index ad77c01118..8ac3cdcd54 100644
--- a/src/overlays/actors/ovl_En_Ge3/z_en_ge3.c
+++ b/src/overlays/actors/ovl_En_Ge3/z_en_ge3.c
@@ -81,7 +81,7 @@ void EnGe3_Init(Actor* thisx, PlayState* play2) {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 36.0f);
SkelAnime_InitFlex(play, &this->skelAnime, &gGerudoRedSkel, NULL, this->jointTable, this->morphTable,
- GELDB_LIMB_MAX);
+ GERUDO_RED_LIMB_MAX);
Animation_PlayLoop(&this->skelAnime, &gGerudoRedStandAnim);
Collider_InitCylinder(play, &this->collider);
Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit);
@@ -241,13 +241,13 @@ s32 EnGe3_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* p
switch (limbIndex) {
// Hide swords and veil from object_geldb
- case GELDB_LIMB_VEIL:
- case GELDB_LIMB_R_SWORD:
- case GELDB_LIMB_L_SWORD:
+ case GERUDO_RED_LIMB_VEIL:
+ case GERUDO_RED_LIMB_R_SWORD:
+ case GERUDO_RED_LIMB_L_SWORD:
*dList = NULL;
return false;
// Turn head
- case GELDB_LIMB_HEAD:
+ case GERUDO_RED_LIMB_HEAD:
rot->x += this->headRot.y;
#if OOT_VERSION >= PAL_1_1
FALLTHROUGH;
@@ -256,14 +256,14 @@ s32 EnGe3_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* p
// depending on what was drawn earlier in the frame.
OPEN_DISPS(play->state.gfxCtx, "../z_en_ge3.c", 547);
switch (limbIndex) {
- case GELDB_LIMB_NECK:
+ case GERUDO_RED_LIMB_NECK:
break;
- case GELDB_LIMB_HEAD:
+ case GERUDO_RED_LIMB_HEAD:
gDPPipeSync(POLY_OPA_DISP++);
gDPSetEnvColor(POLY_OPA_DISP++, 80, 60, 10, 255);
break;
- case GELDB_LIMB_R_SWORD:
- case GELDB_LIMB_L_SWORD:
+ case GERUDO_RED_LIMB_R_SWORD:
+ case GERUDO_RED_LIMB_L_SWORD:
gDPPipeSync(POLY_OPA_DISP++);
gDPSetEnvColor(POLY_OPA_DISP++, 140, 170, 230, 255);
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 255, 255, 255);
@@ -284,7 +284,7 @@ void EnGe3_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* rot,
EnGe3* this = (EnGe3*)thisx;
Vec3f D_80A351C8 = { 600.0f, 700.0f, 0.0f };
- if (limbIndex == GELDB_LIMB_HEAD) {
+ if (limbIndex == GERUDO_RED_LIMB_HEAD) {
Matrix_MultVec3f(&D_80A351C8, &this->actor.focus.pos);
}
}
diff --git a/src/overlays/actors/ovl_En_Ge3/z_en_ge3.h b/src/overlays/actors/ovl_En_Ge3/z_en_ge3.h
index 62b9882055..297129e439 100644
--- a/src/overlays/actors/ovl_En_Ge3/z_en_ge3.h
+++ b/src/overlays/actors/ovl_En_Ge3/z_en_ge3.h
@@ -3,7 +3,8 @@
#include "ultra64.h"
#include "actor.h"
-#include "overlays/actors/ovl_En_GeldB/z_en_geldb.h"
+
+#include "assets/objects/object_geldb/object_geldb.h"
struct EnGe3;
@@ -13,8 +14,8 @@ typedef struct EnGe3 {
/* 0x0000 */ Actor actor;
/* 0x014C */ ColliderCylinder collider;
/* 0x0198 */ SkelAnime skelAnime;
- /* 0x01DC */ Vec3s jointTable[GELDB_LIMB_MAX];
- /* 0x026C */ Vec3s morphTable[GELDB_LIMB_MAX];
+ /* 0x01DC */ Vec3s jointTable[GERUDO_RED_LIMB_MAX];
+ /* 0x026C */ Vec3s morphTable[GERUDO_RED_LIMB_MAX];
/* 0x02FC */ s16 eyeIndex;
/* 0x02FE */ s16 blinkTimer;
/* 0x0300 */ Vec3s headRot;
diff --git a/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c b/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c
index 11850ccdf5..598cc7f616 100644
--- a/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c
+++ b/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c
@@ -251,7 +251,7 @@ void EnGeldB_Init(Actor* thisx, PlayState* play) {
this->blinkState = 0;
this->unkFloat = 10.0f;
SkelAnime_InitFlex(play, &this->skelAnime, &gGerudoRedSkel, &gGerudoRedNeutralAnim, this->jointTable,
- this->morphTable, GELDB_LIMB_MAX);
+ this->morphTable, GERUDO_RED_LIMB_MAX);
Collider_InitCylinder(play, &this->bodyCollider);
Collider_SetCylinder(play, &this->bodyCollider, thisx, &sBodyCylinderInit);
Collider_InitTris(play, &this->blockCollider);
@@ -1464,14 +1464,14 @@ s32 EnGeldB_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f*
EnGeldB* this = (EnGeldB*)thisx;
OPEN_DISPS(play->state.gfxCtx, "../z_en_geldB.c", 2507);
- if (limbIndex == GELDB_LIMB_NECK) {
+ if (limbIndex == GERUDO_RED_LIMB_NECK) {
rot->z += this->headRot.x;
rot->x += this->headRot.y;
rot->y += this->headRot.z;
- } else if (limbIndex == GELDB_LIMB_HEAD) {
+ } else if (limbIndex == GERUDO_RED_LIMB_HEAD) {
gDPPipeSync(POLY_OPA_DISP++);
gDPSetEnvColor(POLY_OPA_DISP++, 80, 60, 10, 255);
- } else if ((limbIndex == GELDB_LIMB_R_SWORD) || (limbIndex == GELDB_LIMB_L_SWORD)) {
+ } else if ((limbIndex == GERUDO_RED_LIMB_R_SWORD) || (limbIndex == GERUDO_RED_LIMB_L_SWORD)) {
gDPPipeSync(POLY_OPA_DISP++);
gDPSetEnvColor(POLY_OPA_DISP++, 140, 170, 230, 255);
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 255, 255, 255);
@@ -1497,7 +1497,7 @@ void EnGeldB_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* ro
EnGeldB* this = (EnGeldB*)thisx;
s32 bodyPart = -1;
- if (limbIndex == GELDB_LIMB_R_SWORD) {
+ if (limbIndex == GERUDO_RED_LIMB_R_SWORD) {
Matrix_MultVec3f(&swordQuadOffset1, &this->swordCollider.dim.quad[1]);
Matrix_MultVec3f(&swordQuadOffset0, &this->swordCollider.dim.quad[0]);
Matrix_MultVec3f(&swordQuadOffset3, &this->swordCollider.dim.quad[3]);
@@ -1515,42 +1515,43 @@ void EnGeldB_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* ro
EffectBlure_AddVertex(Effect_GetByIndex(this->blureIndex), &swordTip, &swordHilt);
}
} else {
- Actor_SetFeetPos(&this->actor, limbIndex, GELDB_LIMB_L_FOOT, &footOffset, GELDB_LIMB_R_FOOT, &footOffset);
+ Actor_SetFeetPos(&this->actor, limbIndex, GERUDO_RED_LIMB_L_FOOT, &footOffset, GERUDO_RED_LIMB_R_FOOT,
+ &footOffset);
}
- if (limbIndex == GELDB_LIMB_L_FOOT) {
+ if (limbIndex == GERUDO_RED_LIMB_L_FOOT) {
Matrix_MultVec3f(&footOffset, &this->leftFootPos);
- } else if (limbIndex == GELDB_LIMB_R_FOOT) {
+ } else if (limbIndex == GERUDO_RED_LIMB_R_FOOT) {
Matrix_MultVec3f(&footOffset, &this->rightFootPos);
}
if (this->iceTimer != 0) {
switch (limbIndex) {
- case GELDB_LIMB_NECK:
+ case GERUDO_RED_LIMB_NECK:
bodyPart = 0;
break;
- case GELDB_LIMB_L_SWORD:
+ case GERUDO_RED_LIMB_L_SWORD:
bodyPart = 1;
break;
- case GELDB_LIMB_R_SWORD:
+ case GERUDO_RED_LIMB_R_SWORD:
bodyPart = 2;
break;
- case GELDB_LIMB_L_UPPER_ARM:
+ case GERUDO_RED_LIMB_L_UPPER_ARM:
bodyPart = 3;
break;
- case GELDB_LIMB_R_UPPER_ARM:
+ case GERUDO_RED_LIMB_R_UPPER_ARM:
bodyPart = 4;
break;
- case GELDB_LIMB_TORSO:
+ case GERUDO_RED_LIMB_TORSO:
bodyPart = 5;
break;
- case GELDB_LIMB_WAIST:
+ case GERUDO_RED_LIMB_WAIST:
bodyPart = 6;
break;
- case GELDB_LIMB_L_FOOT:
+ case GERUDO_RED_LIMB_L_FOOT:
bodyPart = 7;
break;
- case GELDB_LIMB_R_FOOT:
+ case GERUDO_RED_LIMB_R_FOOT:
bodyPart = 8;
break;
default:
diff --git a/src/overlays/actors/ovl_En_GeldB/z_en_geldb.h b/src/overlays/actors/ovl_En_GeldB/z_en_geldb.h
index a5ce4286b5..003a6dc5a5 100644
--- a/src/overlays/actors/ovl_En_GeldB/z_en_geldb.h
+++ b/src/overlays/actors/ovl_En_GeldB/z_en_geldb.h
@@ -4,35 +4,9 @@
#include "ultra64.h"
#include "actor.h"
-struct EnGeldB;
+#include "assets/objects/object_geldb/object_geldb.h"
-typedef enum EnGeldBLimb {
- /* 0x00 */ GELDB_LIMB_NONE,
- /* 0x01 */ GELDB_LIMB_ROOT,
- /* 0x02 */ GELDB_LIMB_TORSO,
- /* 0x03 */ GELDB_LIMB_NECK,
- /* 0x04 */ GELDB_LIMB_PONYTAIL,
- /* 0x05 */ GELDB_LIMB_VEIL,
- /* 0x06 */ GELDB_LIMB_HEAD,
- /* 0x07 */ GELDB_LIMB_R_UPPER_ARM,
- /* 0x08 */ GELDB_LIMB_R_FOREARM,
- /* 0x09 */ GELDB_LIMB_R_WRIST,
- /* 0x0A */ GELDB_LIMB_R_HAND,
- /* 0x0B */ GELDB_LIMB_R_SWORD,
- /* 0x0C */ GELDB_LIMB_L_UPPER_ARM,
- /* 0x0D */ GELDB_LIMB_L_FOREARM,
- /* 0x0E */ GELDB_LIMB_L_WRIST,
- /* 0x0F */ GELDB_LIMB_L_HAND,
- /* 0x10 */ GELDB_LIMB_L_SWORD,
- /* 0x11 */ GELDB_LIMB_L_THIGH,
- /* 0x12 */ GELDB_LIMB_L_SHIN,
- /* 0x13 */ GELDB_LIMB_L_FOOT,
- /* 0x14 */ GELDB_LIMB_R_THIGH,
- /* 0x15 */ GELDB_LIMB_R_SHIN,
- /* 0x16 */ GELDB_LIMB_R_FOOT,
- /* 0x17 */ GELDB_LIMB_WAIST,
- /* 0x18 */ GELDB_LIMB_MAX
-} EnGeldBLimb;
+struct EnGeldB;
typedef void (*EnGeldBActionFunc)(struct EnGeldB*, struct PlayState*);
@@ -40,8 +14,8 @@ typedef struct EnGeldB {
/* 0x0000 */ Actor actor;
/* 0x014C */ Vec3s bodyPartsPos[10];
/* 0x0188 */ SkelAnime skelAnime;
- /* 0x01CC */ Vec3s jointTable[GELDB_LIMB_MAX];
- /* 0x025C */ Vec3s morphTable[GELDB_LIMB_MAX];
+ /* 0x01CC */ Vec3s jointTable[GERUDO_RED_LIMB_MAX];
+ /* 0x025C */ Vec3s morphTable[GERUDO_RED_LIMB_MAX];
/* 0x02EC */ s32 action;
/* 0x02F0 */ char unk_2F0[4];
/* 0x02F4 */ EnGeldBActionFunc actionFunc;
diff --git a/src/overlays/actors/ovl_En_Hata/z_en_hata.h b/src/overlays/actors/ovl_En_Hata/z_en_hata.h
index 53d31bab58..38c85e6349 100644
--- a/src/overlays/actors/ovl_En_Hata/z_en_hata.h
+++ b/src/overlays/actors/ovl_En_Hata/z_en_hata.h
@@ -4,31 +4,7 @@
#include "ultra64.h"
#include "actor.h"
-
-typedef enum EnHataLimb {
- /* 0x00 */ FLAGPOLE_LIMB_NONE,
- /* 0x01 */ FLAGPOLE_LIMB_POLE_BASE,
- /* 0x02 */ FLAGPOLE_LIMB_POLE,
- /* 0x03 */ FLAGPOLE_LIMB_FLAG_1_BASE,
- /* 0x04 */ FLAGPOLE_LIMB_FLAG_1_HOIST_END_BASE,
- /* 0x05 */ FLAGPOLE_LIMB_FLAG_1_HOIST_MID_BASE,
- /* 0x06 */ FLAGPOLE_LIMB_FLAG_1_FLY_MID_BASE,
- /* 0x07 */ FLAGPOLE_LIMB_FLAG_1_FLY_END_BASE,
- /* 0x08 */ FLAGPOLE_LIMB_FLAG_1_FLY_END,
- /* 0x09 */ FLAGPOLE_LIMB_FLAG_1_FLY_MID,
- /* 0x0A */ FLAGPOLE_LIMB_FLAG_1_HOIST_MID,
- /* 0x0B */ FLAGPOLE_LIMB_FLAG_1_HOIST_END,
- /* 0x0C */ FLAGPOLE_LIMB_FLAG_2_BASE,
- /* 0x0D */ FLAGPOLE_LIMB_FLAG_2_HOIST_END_BASE,
- /* 0x0E */ FLAGPOLE_LIMB_FLAG_2_HOIST_MID_BASE,
- /* 0x0F */ FLAGPOLE_LIMB_FLAG_2_FLY_MID_BASE,
- /* 0x10 */ FLAGPOLE_LIMB_FLAG_2_FLY_END_BASE,
- /* 0x11 */ FLAGPOLE_LIMB_FLAG_2_FLY_END,
- /* 0x12 */ FLAGPOLE_LIMB_FLAG_2_FLY_MID,
- /* 0x13 */ FLAGPOLE_LIMB_FLAG_2_HOIST_MID,
- /* 0x14 */ FLAGPOLE_LIMB_FLAG_2_HOIST_END,
- /* 0x15 */ FLAGPOLE_LIMB_MAX
-} EnHataLimb;
+#include "assets/objects/object_hata/object_hata.h"
typedef struct EnHata {
/* 0x0000 */ DynaPolyActor dyna;
diff --git a/src/overlays/actors/ovl_En_In/z_en_in.c b/src/overlays/actors/ovl_En_In/z_en_in.c
index 3fb2a8f5e9..9feac621ff 100644
--- a/src/overlays/actors/ovl_En_In/z_en_in.c
+++ b/src/overlays/actors/ovl_En_In/z_en_in.c
@@ -992,24 +992,24 @@ s32 EnIn_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* po
EnIn* this = (EnIn*)thisx;
Vec3s limbRot;
- if (this->actor.params > 0 && limbIndex != INGO_HEAD_LIMB) {
+ if (this->actor.params > 0 && limbIndex != INGO_LIMB_HEAD) {
if (sAdultEraDLs[limbIndex] != NULL) {
*dList = sAdultEraDLs[limbIndex];
}
}
- if (limbIndex == INGO_HEAD_LIMB) {
+ if (limbIndex == INGO_LIMB_HEAD) {
Matrix_Translate(1500.0f, 0.0f, 0.0f, MTXMODE_APPLY);
limbRot = this->interactInfo.headRot;
Matrix_RotateZ(BINANG_TO_RAD_ALT(limbRot.x), MTXMODE_APPLY);
Matrix_RotateX(BINANG_TO_RAD_ALT(limbRot.y), MTXMODE_APPLY);
Matrix_Translate(-1500.0f, 0.0f, 0.0f, MTXMODE_APPLY);
}
- if (limbIndex == INGO_CHEST_LIMB) {
+ if (limbIndex == INGO_LIMB_CHEST) {
limbRot = this->interactInfo.torsoRot;
Matrix_RotateX(BINANG_TO_RAD_ALT(limbRot.x), MTXMODE_APPLY);
Matrix_RotateY(BINANG_TO_RAD_ALT(limbRot.y), MTXMODE_APPLY);
}
- if (limbIndex == INGO_CHEST_LIMB || limbIndex == INGO_LEFT_SHOULDER_LIMB || limbIndex == INGO_RIGHT_SHOULDER_LIMB) {
+ if (limbIndex == INGO_LIMB_CHEST || limbIndex == INGO_LIMB_LEFT_SHOULDER || limbIndex == INGO_LIMB_RIGHT_SHOULDER) {
rot->y += Math_SinS(this->unk_330[limbIndex].y) * 200.0f;
rot->z += Math_CosS(this->unk_330[limbIndex].z) * 200.0f;
}
@@ -1022,14 +1022,14 @@ void EnIn_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* rot,
OPEN_DISPS(play->state.gfxCtx, "../z_en_in.c", 2335);
- if (limbIndex == INGO_HEAD_LIMB) {
+ if (limbIndex == INGO_LIMB_HEAD) {
Matrix_MultVec3f(&D_80A7B9A8, &this->actor.focus.pos);
this->actor.focus.rot = this->actor.world.rot;
}
- if (limbIndex == INGO_LEFT_HAND_LIMB && this->skelAnime.animation == &object_in_Anim_014CA8) {
+ if (limbIndex == INGO_LIMB_LEFT_HAND && this->skelAnime.animation == &object_in_Anim_014CA8) {
gSPDisplayList(POLY_OPA_DISP++, gIngoChildEraBasketDL);
}
- if (limbIndex == INGO_RIGHT_HAND_LIMB && this->skelAnime.animation == &object_in_Anim_014CA8) {
+ if (limbIndex == INGO_LIMB_RIGHT_HAND && this->skelAnime.animation == &object_in_Anim_014CA8) {
gSPDisplayList(POLY_OPA_DISP++, gIngoChildEraPitchForkDL);
}
diff --git a/src/overlays/actors/ovl_En_In/z_en_in.h b/src/overlays/actors/ovl_En_In/z_en_in.h
index 78d8f89170..2e4ecff82c 100644
--- a/src/overlays/actors/ovl_En_In/z_en_in.h
+++ b/src/overlays/actors/ovl_En_In/z_en_in.h
@@ -3,35 +3,12 @@
#include "ultra64.h"
#include "actor.h"
+#include "assets/objects/object_in/object_in.h"
struct EnIn;
typedef void (*EnInActionFunc)(struct EnIn*, struct PlayState*);
-typedef enum IngoLimb {
- /* 0x00 */ INGO_LIMB_NONE,
- /* 0x01 */ INGO_LIMB_ROOT,
- /* 0x02 */ INGO_LEFT_THIGH_LIMB,
- /* 0x03 */ INGO_LEFT_LEG_LIMB,
- /* 0x04 */ INGO_LEFT_FOOT_LIMB,
- /* 0x05 */ INGO_RIGHT_THIGH_LIMB,
- /* 0x06 */ INGO_RIGHT_LEG_LIMB,
- /* 0x07 */ INGO_RIGHT_FOOT_LIMB,
- /* 0x08 */ INGO_TORSO_LIMB,
- /* 0x09 */ INGO_CHEST_LIMB,
- /* 0x0A */ INGO_LEFT_SHOULDER_LIMB,
- /* 0x0B */ INGO_LEFT_ARM_LIMB,
- /* 0x0C */ INGO_LEFT_HAND_LIMB,
- /* 0x0D */ INGO_RIGHT_SHOULDER_LIMB,
- /* 0x0E */ INGO_RIGHT_ARM_LIMB,
- /* 0x0F */ INGO_RIGHT_HAND_LIMB,
- /* 0x10 */ INGO_HEAD_LIMB,
- /* 0x11 */ INGO_LEFT_EYEBROW_LIMB,
- /* 0x12 */ INGO_RIGHTEYEBROW_LIMB,
- /* 0x13 */ INGO_MUSTACHE_LIMB,
- /* 0x14 */ INGO_LIMB_MAX
-} IngoLimb;
-
typedef struct EnIn {
/* 0x0000 */ Actor actor;
/* 0x014C */ SkelAnime skelAnime;
diff --git a/src/overlays/actors/ovl_En_Ma2/z_en_ma2.c b/src/overlays/actors/ovl_En_Ma2/z_en_ma2.c
index ed01e29e4a..45cb07bae2 100644
--- a/src/overlays/actors/ovl_En_Ma2/z_en_ma2.c
+++ b/src/overlays/actors/ovl_En_Ma2/z_en_ma2.c
@@ -363,23 +363,23 @@ s32 EnMa2_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* p
EnMa2* this = (EnMa2*)thisx;
Vec3s limbRot;
- if ((limbIndex == MALON_ADULT_LEFT_THIGH_LIMB) || (limbIndex == MALON_ADULT_RIGHT_THIGH_LIMB)) {
+ if ((limbIndex == MALON_ADULT_LIMB_LEFT_THIGH) || (limbIndex == MALON_ADULT_LIMB_RIGHT_THIGH)) {
*dList = NULL;
}
- if (limbIndex == MALON_ADULT_HEAD_LIMB) {
+ if (limbIndex == MALON_ADULT_LIMB_HEAD) {
Matrix_Translate(1400.0f, 0.0f, 0.0f, MTXMODE_APPLY);
limbRot = this->interactInfo.headRot;
Matrix_RotateX(BINANG_TO_RAD_ALT(limbRot.y), MTXMODE_APPLY);
Matrix_RotateZ(BINANG_TO_RAD_ALT(limbRot.x), MTXMODE_APPLY);
Matrix_Translate(-1400.0f, 0.0f, 0.0f, MTXMODE_APPLY);
}
- if (limbIndex == MALON_ADULT_CHEST_AND_NECK_LIMB) {
+ if (limbIndex == MALON_ADULT_LIMB_CHEST_AND_NECK) {
limbRot = this->interactInfo.torsoRot;
Matrix_RotateY(BINANG_TO_RAD_ALT(-limbRot.y), MTXMODE_APPLY);
Matrix_RotateX(BINANG_TO_RAD_ALT(-limbRot.x), MTXMODE_APPLY);
}
- if ((limbIndex == MALON_ADULT_CHEST_AND_NECK_LIMB) || (limbIndex == MALON_ADULT_LEFT_SHOULDER_LIMB) ||
- (limbIndex == MALON_ADULT_RIGHT_SHOULDER_LIMB)) {
+ if ((limbIndex == MALON_ADULT_LIMB_CHEST_AND_NECK) || (limbIndex == MALON_ADULT_LIMB_LEFT_SHOULDER) ||
+ (limbIndex == MALON_ADULT_LIMB_RIGHT_SHOULDER)) {
rot->y += Math_SinS(this->upperBodyRot[limbIndex].y) * 200.0f;
rot->z += Math_CosS(this->upperBodyRot[limbIndex].z) * 200.0f;
}
@@ -392,10 +392,10 @@ void EnMa2_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* rot,
OPEN_DISPS(play->state.gfxCtx, "../z_en_ma2.c", 904);
- if (limbIndex == MALON_ADULT_HEAD_LIMB) {
+ if (limbIndex == MALON_ADULT_LIMB_HEAD) {
Matrix_MultVec3f(&vec, &this->actor.focus.pos);
}
- if ((limbIndex == MALON_ADULT_LEFT_HAND_LIMB) && (this->skelAnime.animation == &gMalonAdultStandStillAnim)) {
+ if ((limbIndex == MALON_ADULT_LIMB_LEFT_HAND) && (this->skelAnime.animation == &gMalonAdultStandStillAnim)) {
gSPDisplayList(POLY_OPA_DISP++, gMalonAdultBasketDL);
}
diff --git a/src/overlays/actors/ovl_En_Ma2/z_en_ma2.h b/src/overlays/actors/ovl_En_Ma2/z_en_ma2.h
index 3e2a9b4b86..777d8c73d5 100644
--- a/src/overlays/actors/ovl_En_Ma2/z_en_ma2.h
+++ b/src/overlays/actors/ovl_En_Ma2/z_en_ma2.h
@@ -3,34 +3,12 @@
#include "ultra64.h"
#include "actor.h"
+#include "assets/objects/object_ma2/object_ma2.h"
struct EnMa2;
typedef void (*EnMa2ActionFunc)(struct EnMa2*, struct PlayState*);
-typedef enum AdultMalonLimb {
- /* 0x00 */ MALON_ADULT_LIMB_NONE,
- /* 0x01 */ MALON_ADULT_ROOT_LIMB,
- /* 0x02 */ MALON_ADULT_LOWER_CONTROL_LIMB,
- /* 0x03 */ MALON_ADULT_LEFT_THIGH_LIMB,
- /* 0x04 */ MALON_ADULT_LEFT_LEG_LIMB,
- /* 0x05 */ MALON_ADULT_LEFT_FOOT_LIMB,
- /* 0x06 */ MALON_ADULT_RIGHT_THIGH_LIMB,
- /* 0x07 */ MALON_ADULT_RIGHT_LEG_LIMB,
- /* 0x08 */ MALON_ADULT_RIGHT_FOOT_LIMB,
- /* 0x09 */ MALON_ADULT_TORSO_LIMB,
- /* 0x0A */ MALON_ADULT_DRESS_LIMB,
- /* 0x0B */ MALON_ADULT_CHEST_AND_NECK_LIMB,
- /* 0x0C */ MALON_ADULT_LEFT_SHOULDER_LIMB,
- /* 0x0D */ MALON_ADULT_LEFT_ARM_LIMB,
- /* 0x0E */ MALON_ADULT_LEFT_HAND_LIMB,
- /* 0x0F */ MALON_ADULT_RIGHT_SHOULDER_LIMB,
- /* 0x10 */ MALON_ADULT_RIGHT_ARM_LIMB,
- /* 0x11 */ MALON_ADULT_RIGHT_HAND_LIMB,
- /* 0x12 */ MALON_ADULT_HEAD_LIMB,
- /* 0x13 */ MALON_ADULT_LIMB_MAX
-} AdultMalonLimb;
-
typedef struct EnMa2 {
/* 0x0000 */ Actor actor;
/* 0x014C */ SkelAnime skelAnime;
diff --git a/src/overlays/actors/ovl_En_Ma3/z_en_ma3.h b/src/overlays/actors/ovl_En_Ma3/z_en_ma3.h
index a6bb2096f3..1d3ec1cdfd 100644
--- a/src/overlays/actors/ovl_En_Ma3/z_en_ma3.h
+++ b/src/overlays/actors/ovl_En_Ma3/z_en_ma3.h
@@ -3,34 +3,12 @@
#include "ultra64.h"
#include "actor.h"
+#include "assets/objects/object_ma2/object_ma2.h"
struct EnMa3;
typedef void (*EnMa3ActionFunc)(struct EnMa3*, struct PlayState*);
-typedef enum AdultMalonLimb {
- /* 0x00 */ MALON_ADULT_LIMB_NONE,
- /* 0x01 */ MALON_ADULT_LIMB_ROOT,
- /* 0x02 */ MALON_ADULT_LIMB_LOWER_CONTROL,
- /* 0x03 */ MALON_ADULT_LIMB_LEFT_THIGH,
- /* 0x04 */ MALON_ADULT_LIMB_LEFT_LEG,
- /* 0x05 */ MALON_ADULT_LIMB_LEFT_FOOT,
- /* 0x06 */ MALON_ADULT_LIMB_RIGHT_THIGH,
- /* 0x07 */ MALON_ADULT_LIMB_RIGHT_LEG,
- /* 0x08 */ MALON_ADULT_LIMB_RIGHT_FOOT,
- /* 0x09 */ MALON_ADULT_LIMB_TORSO,
- /* 0x0A */ MALON_ADULT_LIMB_DRESS,
- /* 0x0B */ MALON_ADULT_LIMB_CHEST_AND_NECK,
- /* 0x0C */ MALON_ADULT_LIMB_LEFT_SHOULDER,
- /* 0x0D */ MALON_ADULT_LIMB_LEFT_ARM,
- /* 0x0E */ MALON_ADULT_LIMB_LEFT_HAND,
- /* 0x0F */ MALON_ADULT_LIMB_RIGHT_SHOULDER,
- /* 0x10 */ MALON_ADULT_LIMB_RIGHT_ARM,
- /* 0x11 */ MALON_ADULT_LIMB_RIGHT_HAND,
- /* 0x12 */ MALON_ADULT_LIMB_HEAD,
- /* 0x13 */ MALON_ADULT_LIMB_MAX
-} AdultMalonLimb;
-
typedef struct EnMa3 {
/* 0x0000 */ Actor actor;
/* 0x014C */ SkelAnime skelAnime;
diff --git a/src/overlays/actors/ovl_En_Md/z_en_md.c b/src/overlays/actors/ovl_En_Md/z_en_md.c
index 3059baa7bb..d1633deb65 100644
--- a/src/overlays/actors/ovl_En_Md/z_en_md.c
+++ b/src/overlays/actors/ovl_En_Md/z_en_md.c
@@ -687,7 +687,7 @@ void EnMd_Init(Actor* thisx, PlayState* play) {
s32 pad;
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 24.0f);
- SkelAnime_InitFlex(play, &this->skelAnime, &gMidoSkel, NULL, this->jointTable, this->morphTable, ENMD_LIMB_MAX);
+ SkelAnime_InitFlex(play, &this->skelAnime, &gMidoSkel, NULL, this->jointTable, this->morphTable, MIDO_LIMB_MAX);
Collider_InitCylinder(play, &this->collider);
Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit);
@@ -727,7 +727,7 @@ void EnMd_Destroy(Actor* thisx, PlayState* play) {
void EnMd_Idle(EnMd* this, PlayState* play) {
if (this->skelAnime.animation == &gMidoIdleAnim) {
- Actor_UpdateFidgetTables(play, this->fidgetTableY, this->fidgetTableZ, ENMD_LIMB_MAX);
+ Actor_UpdateFidgetTables(play, this->fidgetTableY, this->fidgetTableZ, MIDO_LIMB_MAX);
} else if ((this->interactInfo.talkState == NPC_TALK_STATE_IDLE) &&
(this->animSequence != ENMD_ANIM_SEQ_SURPRISE_TO_IDLE)) {
EnMd_SetAnimSequence(this, ENMD_ANIM_SEQ_SURPRISE_TO_IDLE);
@@ -738,7 +738,7 @@ void EnMd_Idle(EnMd* this, PlayState* play) {
void EnMd_Watch(EnMd* this, PlayState* play) {
if (this->skelAnime.animation == &gMidoIdleAnim) {
- Actor_UpdateFidgetTables(play, this->fidgetTableY, this->fidgetTableZ, ENMD_LIMB_MAX);
+ Actor_UpdateFidgetTables(play, this->fidgetTableY, this->fidgetTableZ, MIDO_LIMB_MAX);
}
EnMd_UpdateAnimSequence(this);
}
@@ -790,7 +790,7 @@ void EnMd_BlockPath(EnMd* this, PlayState* play) {
}
if (this->skelAnime.animation == &gMidoIdleAnim) {
- Actor_UpdateFidgetTables(play, this->fidgetTableY, this->fidgetTableZ, ENMD_LIMB_MAX);
+ Actor_UpdateFidgetTables(play, this->fidgetTableY, this->fidgetTableZ, MIDO_LIMB_MAX);
}
if ((this->interactInfo.talkState == NPC_TALK_STATE_IDLE) && (play->sceneId == SCENE_LOST_WOODS)) {
@@ -828,7 +828,7 @@ void EnMd_ListenToOcarina(EnMd* this, PlayState* play) {
}
void EnMd_Walk(EnMd* this, PlayState* play) {
- Actor_UpdateFidgetTables(play, this->fidgetTableY, this->fidgetTableZ, ENMD_LIMB_MAX);
+ Actor_UpdateFidgetTables(play, this->fidgetTableY, this->fidgetTableZ, MIDO_LIMB_MAX);
EnMd_UpdateAnimSequence(this);
if (!(EnMd_FollowPath(this, play)) || (this->waypoint != 0)) {
@@ -871,21 +871,21 @@ s32 EnMd_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* po
EnMd* this = (EnMd*)thisx;
Vec3s limbRot;
- if (limbIndex == ENMD_LIMB_HEAD) {
+ if (limbIndex == MIDO_LIMB_HEAD) {
Matrix_Translate(1200.0f, 0.0f, 0.0f, MTXMODE_APPLY);
limbRot = this->interactInfo.headRot;
Matrix_RotateX(BINANG_TO_RAD_ALT(limbRot.y), MTXMODE_APPLY);
Matrix_RotateZ(BINANG_TO_RAD_ALT(limbRot.x), MTXMODE_APPLY);
Matrix_Translate(-1200.0f, 0.0f, 0.0f, MTXMODE_APPLY);
}
- if (limbIndex == ENMD_LIMB_TORSO) {
+ if (limbIndex == MIDO_LIMB_TORSO) {
limbRot = this->interactInfo.torsoRot;
Matrix_RotateX(BINANG_TO_RAD_ALT(limbRot.x), MTXMODE_APPLY);
Matrix_RotateY(BINANG_TO_RAD_ALT(limbRot.y), MTXMODE_APPLY);
}
- if (((limbIndex == ENMD_LIMB_TORSO) || (limbIndex == ENMD_LIMB_LEFT_UPPER_ARM)) ||
- (limbIndex == ENMD_LIMB_RIGHT_UPPER_ARM)) {
+ if (((limbIndex == MIDO_LIMB_TORSO) || (limbIndex == MIDO_LIMB_LEFT_UPPER_ARM)) ||
+ (limbIndex == MIDO_LIMB_RIGHT_UPPER_ARM)) {
rot->y += Math_SinS(this->fidgetTableY[limbIndex]) * FIDGET_AMPLITUDE;
rot->z += Math_CosS(this->fidgetTableZ[limbIndex]) * FIDGET_AMPLITUDE;
}
@@ -897,7 +897,7 @@ void EnMd_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* rot,
EnMd* this = (EnMd*)thisx;
Vec3f vec = { 400.0f, 0.0f, 0.0f };
- if (limbIndex == ENMD_LIMB_HEAD) {
+ if (limbIndex == MIDO_LIMB_HEAD) {
Matrix_MultVec3f(&vec, &this->actor.focus.pos);
}
}
diff --git a/src/overlays/actors/ovl_En_Md/z_en_md.h b/src/overlays/actors/ovl_En_Md/z_en_md.h
index 3b5cc079bb..802e6822a8 100644
--- a/src/overlays/actors/ovl_En_Md/z_en_md.h
+++ b/src/overlays/actors/ovl_En_Md/z_en_md.h
@@ -3,30 +3,10 @@
#include "ultra64.h"
#include "actor.h"
+#include "assets/objects/object_md/object_md.h"
struct EnMd;
-typedef enum EnMdLimb {
- ENMD_LIMB_NONE,
- ENMD_LIMB_ROOT,
- ENMD_LIMB_WAIST,
- ENMD_LIMB_LEFT_THIGH,
- ENMD_LIMB_LEFT_LEG,
- ENMD_LIMB_LEFT_FOOT,
- ENMD_LIMB_RIGHT_THIGH,
- ENMD_LIMB_RIGHT_LEG,
- ENMD_LIMB_RIGHT_FOOT,
- ENMD_LIMB_TORSO,
- ENMD_LIMB_LEFT_UPPER_ARM,
- ENMD_LIMB_LEFT_FOREARM,
- ENMD_LIMB_LEFT_HAND,
- ENMD_LIMB_RIGHT_UPPER_ARM,
- ENMD_LIMB_RIGHT_FOREARM,
- ENMD_LIMB_RIGHT_HAND,
- ENMD_LIMB_HEAD,
- ENMD_LIMB_MAX
-} EnMdLimb;
-
typedef void (*EnMdActionFunc)(struct EnMd*, struct PlayState*);
#define ENMD_GET_PATH_INDEX(this) PARAMS_GET_S(this->actor.params, 8, 8)
@@ -48,10 +28,10 @@ typedef struct EnMd {
/* 0x020E */ s16 eyeTexIndex;
/* 0x0210 */ s16 alpha;
/* 0x0212 */ s16 waypoint;
- /* 0x0214 */ s16 fidgetTableY[ENMD_LIMB_MAX];
- /* 0x0236 */ s16 fidgetTableZ[ENMD_LIMB_MAX];
- /* 0x0258 */ Vec3s jointTable[ENMD_LIMB_MAX];
- /* 0x02BE */ Vec3s morphTable[ENMD_LIMB_MAX];
+ /* 0x0214 */ s16 fidgetTableY[MIDO_LIMB_MAX];
+ /* 0x0236 */ s16 fidgetTableZ[MIDO_LIMB_MAX];
+ /* 0x0258 */ Vec3s jointTable[MIDO_LIMB_MAX];
+ /* 0x02BE */ Vec3s morphTable[MIDO_LIMB_MAX];
} EnMd; // size = 0x0324
#endif
diff --git a/src/overlays/actors/ovl_En_Nb/z_en_nb.c b/src/overlays/actors/ovl_En_Nb/z_en_nb.c
index c2120b1fc9..a91373e78c 100644
--- a/src/overlays/actors/ovl_En_Nb/z_en_nb.c
+++ b/src/overlays/actors/ovl_En_Nb/z_en_nb.c
@@ -1011,7 +1011,7 @@ void func_80AB2E70(EnNb* this, PlayState* play) {
s32 func_80AB2FC0(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, void* thisx) {
EnNb* this = (EnNb*)thisx;
- if (limbIndex == NB_LIMB_HEAD) {
+ if (limbIndex == NABOORU_LIMB_HEAD) {
*dList = gNabooruHeadMouthOpenDL;
}
@@ -1476,7 +1476,8 @@ void EnNb_Init(Actor* thisx, PlayState* play) {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f);
EnNb_SetupCollider(thisx, play);
- SkelAnime_InitFlex(play, &this->skelAnime, &gNabooruSkel, NULL, this->jointTable, this->morphTable, NB_LIMB_MAX);
+ SkelAnime_InitFlex(play, &this->skelAnime, &gNabooruSkel, NULL, this->jointTable, this->morphTable,
+ NABOORU_LIMB_MAX);
switch (EnNb_GetType(this)) {
case NB_TYPE_DEMO02:
@@ -1506,13 +1507,13 @@ s32 EnNb_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* po
s32 ret = false;
if (this->headTurnFlag != 0) {
- if (limbIndex == NB_LIMB_TORSO) {
+ if (limbIndex == NABOORU_LIMB_TORSO) {
s32 pad;
rot->x += interactInfo->torsoRot.y;
rot->y -= interactInfo->torsoRot.x;
ret = false;
- } else if (limbIndex == NB_LIMB_HEAD) {
+ } else if (limbIndex == NABOORU_LIMB_HEAD) {
rot->x += interactInfo->headRot.y;
rot->z += interactInfo->headRot.x;
ret = false;
@@ -1525,7 +1526,7 @@ s32 EnNb_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* po
void EnNb_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* rot, void* thisx) {
EnNb* this = (EnNb*)thisx;
- if (limbIndex == NB_LIMB_HEAD) {
+ if (limbIndex == NABOORU_LIMB_HEAD) {
Vec3f vec1 = { 0.0f, 10.0f, 0.0f };
Vec3f vec2;
diff --git a/src/overlays/actors/ovl_En_Nb/z_en_nb.h b/src/overlays/actors/ovl_En_Nb/z_en_nb.h
index 397c6b63a2..e27a3b0ebb 100644
--- a/src/overlays/actors/ovl_En_Nb/z_en_nb.h
+++ b/src/overlays/actors/ovl_En_Nb/z_en_nb.h
@@ -3,40 +3,18 @@
#include "ultra64.h"
#include "actor.h"
+#include "assets/objects/object_nb/object_nb.h"
struct EnNb;
-typedef enum EnNbLimb {
- /* 0x00 */ NB_LIMB_NONE,
- /* 0x01 */ NB_LIMB_ROOT,
- /* 0x02 */ NB_LIMB_L_THIGH,
- /* 0x03 */ NB_LIMB_L_SHIN,
- /* 0x04 */ NB_LIMB_L_FOOT,
- /* 0x05 */ NB_LIMB_R_THIGH,
- /* 0x06 */ NB_LIMB_R_SHIN,
- /* 0x07 */ NB_LIMB_R_FOOT,
- /* 0x08 */ NB_LIMB_TORSO,
- /* 0x09 */ NB_LIMB_L_UPPER_ARM,
- /* 0x0A */ NB_LIMB_L_FOREARM,
- /* 0x0B */ NB_LIMB_L_HAND,
- /* 0x0C */ NB_LIMB_R_UPPER_ARM,
- /* 0x0D */ NB_LIMB_R_FOREARM,
- /* 0x0E */ NB_LIMB_R_HAND,
- /* 0x0F */ NB_LIMB_HEAD,
- /* 0x10 */ NB_LIMB_BLANK,
- /* 0x11 */ NB_LIMB_PONYTAIL,
- /* 0x12 */ NB_LIMB_WAIST,
- /* 0x13 */ NB_LIMB_MAX
-} EnNbLimb;
-
typedef void (*EnNbActionFunc)(struct EnNb*, struct PlayState*);
typedef void (*EnNbDrawFunc)(struct EnNb*, struct PlayState*);
typedef struct EnNb {
/* 0x0000 */ Actor actor;
/* 0x014C */ SkelAnime skelAnime;
- /* 0x0190 */ Vec3s jointTable[NB_LIMB_MAX];
- /* 0x0202 */ Vec3s morphTable[NB_LIMB_MAX];
+ /* 0x0190 */ Vec3s jointTable[NABOORU_LIMB_MAX];
+ /* 0x0202 */ Vec3s morphTable[NABOORU_LIMB_MAX];
/* 0x0274 */ s16 eyeIdx;
/* 0x0276 */ s16 blinkTimer;
/* 0x0278 */ s32 action;
diff --git a/src/overlays/actors/ovl_En_Ta/z_en_ta.c b/src/overlays/actors/ovl_En_Ta/z_en_ta.c
index 353cb507b4..f8d842b7ee 100644
--- a/src/overlays/actors/ovl_En_Ta/z_en_ta.c
+++ b/src/overlays/actors/ovl_En_Ta/z_en_ta.c
@@ -159,7 +159,7 @@ void EnTa_Init(Actor* thisx, PlayState* play2) {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 36.0f);
SkelAnime_InitFlex(play, &this->skelAnime, &gTalonSkel, &gTalonStandAnim, this->jointTable, this->morphTable,
- ENTA_LIMB_MAX);
+ TALON_LIMB_MAX);
Collider_InitCylinder(play, &this->collider);
Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit);
@@ -1280,12 +1280,12 @@ s32 EnTa_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* po
// Turn head and chest towards the target (the rotation steps are calculated in EnTa_Update)
switch (limbIndex) {
- case ENTA_LIMB_CHEST:
+ case TALON_LIMB_CHEST:
rot->x += this->torsoRot.y;
rot->y -= this->torsoRot.x;
break;
- case ENTA_LIMB_HEAD:
+ case TALON_LIMB_HEAD:
rot->x += this->headRot.y;
rot->z += this->headRot.x;
break;
@@ -1300,8 +1300,8 @@ s32 EnTa_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* po
// in the else if branch below and rocking always occurs.
// So this flag has no effect.
this->stateFlags &= ~TALON_STATE_FLAG_SUPPRESS_ROCKING_ANIM;
- } else if ((limbIndex == ENTA_LIMB_CHEST) || (limbIndex == ENTA_LIMB_LEFT_ARM) ||
- (limbIndex == ENTA_LIMB_RIGHT_ARM)) {
+ } else if ((limbIndex == TALON_LIMB_CHEST) || (limbIndex == TALON_LIMB_LEFT_ARM) ||
+ (limbIndex == TALON_LIMB_RIGHT_ARM)) {
s32 fidgetFrequency = limbIndex * FIDGET_FREQ_LIMB;
rot->y += Math_SinS(play->state.frames * (fidgetFrequency + FIDGET_FREQ_Y)) * FIDGET_AMPLITUDE;
@@ -1315,7 +1315,7 @@ void EnTa_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* rot,
static Vec3f headOffset = { 1100.0f, 1000.0f, 0.0f };
EnTa* this = (EnTa*)thisx;
- if (limbIndex == ENTA_LIMB_HEAD) {
+ if (limbIndex == TALON_LIMB_HEAD) {
Matrix_MultVec3f(&headOffset, &this->actor.focus.pos);
}
}
diff --git a/src/overlays/actors/ovl_En_Ta/z_en_ta.h b/src/overlays/actors/ovl_En_Ta/z_en_ta.h
index d8888d79b3..ac193819d8 100644
--- a/src/overlays/actors/ovl_En_Ta/z_en_ta.h
+++ b/src/overlays/actors/ovl_En_Ta/z_en_ta.h
@@ -3,6 +3,7 @@
#include "ultra64.h"
#include "actor.h"
+#include "assets/objects/object_ta/object_ta.h"
struct EnTa;
@@ -16,32 +17,11 @@ typedef enum EnTaType {
/* 0x0002 */ ENTA_RETURNED_FROM_KAKARIKO
} EnTaType;
-typedef enum EnTaLimb {
- /* 0x00 */ ENTA_LIMB_NONE,
- /* 0x01 */ ENTA_LIMB_ROOT,
- /* 0x02 */ ENTA_LIMB_LEFT_THIGH,
- /* 0x03 */ ENTA_LIMB_LEFT_LEG,
- /* 0x04 */ ENTA_LIMB_LEFT_FOOT,
- /* 0x05 */ ENTA_LIMB_RIGHT_THIGH,
- /* 0x06 */ ENTA_LIMB_RIGHT_LEG,
- /* 0x07 */ ENTA_LIMB_RIGHT_FOOT,
- /* 0x08 */ ENTA_LIMB_CHEST,
- /* 0x09 */ ENTA_LIMB_LEFT_SHOULDER,
- /* 0x0A */ ENTA_LIMB_LEFT_ARM,
- /* 0x0B */ ENTA_LIMB_LEFT_HAND,
- /* 0x0C */ ENTA_LIMB_RIGHT_SHOULDER,
- /* 0x0D */ ENTA_LIMB_RIGHT_ARM,
- /* 0x0E */ ENTA_LIMB_RIGHT_HAND,
- /* 0x0F */ ENTA_LIMB_HEAD,
- /* 0x10 */ ENTA_LIMB_TORSO,
- /* 0x11 */ ENTA_LIMB_MAX
-} EnTaLimb;
-
typedef struct EnTa {
/* 0x0000 */ Actor actor;
/* 0x014C */ SkelAnime skelAnime;
- /* 0x0190 */ Vec3s jointTable[ENTA_LIMB_MAX];
- /* 0x01F6 */ Vec3s morphTable[ENTA_LIMB_MAX];
+ /* 0x0190 */ Vec3s jointTable[TALON_LIMB_MAX];
+ /* 0x01F6 */ Vec3s morphTable[TALON_LIMB_MAX];
/* 0x025C */ EnTaActionFunc actionFunc;
/* 0x0260 */ EnTaAnimFunc animFunc;
/* 0x0264 */ ColliderCylinder collider;
diff --git a/src/overlays/actors/ovl_En_Test/z_en_test.h b/src/overlays/actors/ovl_En_Test/z_en_test.h
index 8a0e41abf6..8cd0191654 100644
--- a/src/overlays/actors/ovl_En_Test/z_en_test.h
+++ b/src/overlays/actors/ovl_En_Test/z_en_test.h
@@ -3,76 +3,12 @@
#include "ultra64.h"
#include "actor.h"
+#include "assets/objects/object_sk2/object_sk2.h"
struct EnTest;
typedef void (*EnTestActionFunc)(struct EnTest*, struct PlayState*);
-typedef enum StalfosLimb {
- /* 0x00 */ STALFOS_LIMB_NONE,
- /* 0x01 */ STALFOS_LIMB_ROOT,
- /* 0x02 */ STALFOS_LIMB_UPPERBODY_ROOT,
- /* 0x03 */ STALFOS_LIMB_CORE_LOWER_ROOT,
- /* 0x04 */ STALFOS_LIMB_CORE_UPPER_ROOT,
- /* 0x05 */ STALFOS_LIMB_NECK_ROOT,
- /* 0x06 */ STALFOS_LIMB_HEAD_ROOT,
- /* 0x07 */ STALFOS_LIMB_7,
- /* 0x08 */ STALFOS_LIMB_8,
- /* 0x09 */ STALFOS_LIMB_JAW_ROOT,
- /* 0x0A */ STALFOS_LIMB_JAW,
- /* 0x0B */ STALFOS_LIMB_HEAD,
- /* 0x0C */ STALFOS_LIMB_NECK_UPPER,
- /* 0x0D */ STALFOS_LIMB_NECK_LOWER,
- /* 0x0E */ STALFOS_LIMB_CORE_UPPER,
- /* 0x0F */ STALFOS_LIMB_CHEST,
- /* 0x10 */ STALFOS_LIMB_SHOULDER_R_ROOT,
- /* 0x11 */ STALFOS_LIMB_SHOULDER_ARMOR_R_ROOT,
- /* 0x12 */ STALFOS_LIMB_SHOULDER_ARMOR_R,
- /* 0x13 */ STALFOS_LIMB_SHOULDER_L_ROOT,
- /* 0x14 */ STALFOS_LIMB_SHOULDER_ARMOR_L_ROOT,
- /* 0x15 */ STALFOS_LIMB_SHOULDER_ARMOR_L,
- /* 0x16 */ STALFOS_LIMB_ARM_L_ROOT,
- /* 0x17 */ STALFOS_LIMB_UPPERARM_L_ROOT,
- /* 0x18 */ STALFOS_LIMB_FOREARM_L_ROOT,
- /* 0x19 */ STALFOS_LIMB_HAND_L_ROOT,
- /* 0x1A */ STALFOS_LIMB_HAND_L,
- /* 0x1B */ STALFOS_LIMB_SHIELD,
- /* 0x1C */ STALFOS_LIMB_FOREARM_L,
- /* 0x1D */ STALFOS_LIMB_UPPERARM_L,
- /* 0x1E */ STALFOS_LIMB_ARM_R_ROOT,
- /* 0x1F */ STALFOS_LIMB_UPPERARM_R_ROOT,
- /* 0x20 */ STALFOS_LIMB_FOREARM_R_ROOT,
- /* 0x21 */ STALFOS_LIMB_HAND_R_ROOT,
- /* 0x22 */ STALFOS_LIMB_SWORD,
- /* 0x23 */ STALFOS_LIMB_HAND_R,
- /* 0x24 */ STALFOS_LIMB_FOREARM_R,
- /* 0x25 */ STALFOS_LIMB_UPPERARM_R,
- /* 0x26 */ STALFOS_LIMB_CORE_LOWER,
- /* 0x27 */ STALFOS_LIMB_LOWERBODY_ROOT,
- /* 0x28 */ STALFOS_LIMB_WAIST_ROOT,
- /* 0x29 */ STALFOS_LIMB_LEGS_ROOT,
- /* 0x2A */ STALFOS_LIMB_LEG_L_ROOT,
- /* 0x2B */ STALFOS_LIMB_THIGH_L_ROOT,
- /* 0x2C */ STALFOS_LIMB_LOWERLEG_L_ROOT,
- /* 0x2D */ STALFOS_LIMB_ANKLE_L_ROOT,
- /* 0x2E */ STALFOS_LIMB_ANKLE_L,
- /* 0x2F */ STALFOS_LIMB_FOOT_L_ROOT,
- /* 0x30 */ STALFOS_LIMB_FOOT_L,
- /* 0x31 */ STALFOS_LIMB_LOWERLEG_L,
- /* 0x32 */ STALFOS_LIMB_THIGH_L,
- /* 0x33 */ STALFOS_LIMB_LEG_R_ROOT,
- /* 0x34 */ STALFOS_LIMB_THIGH_R_ROOT,
- /* 0x35 */ STALFOS_LIMB_LOWERLEG_R_ROOT,
- /* 0x36 */ STALFOS_LIMB_ANKLE_R_ROOT,
- /* 0x37 */ STALFOS_LIMB_ANKLE_R,
- /* 0x38 */ STALFOS_LIMB_FOOT_R_ROOT,
- /* 0x39 */ STALFOS_LIMB_FOOT_R,
- /* 0x3A */ STALFOS_LIMB_LOWERLEG_R,
- /* 0x3B */ STALFOS_LIMB_THIGH_R,
- /* 0x3C */ STALFOS_LIMB_WAIST,
- /* 0x3D */ STALFOS_LIMB_MAX
-} StalfosLimb;
-
typedef struct EnTest {
/* 0x000 */ Actor actor;
/* 0x14C */ Vec3s bodyPartsPos[10];
diff --git a/src/overlays/actors/ovl_En_Vali/z_en_vali.c b/src/overlays/actors/ovl_En_Vali/z_en_vali.c
index 357918c6aa..f6f11e51e6 100644
--- a/src/overlays/actors/ovl_En_Vali/z_en_vali.c
+++ b/src/overlays/actors/ovl_En_Vali/z_en_vali.c
@@ -156,7 +156,7 @@ void EnVali_Init(Actor* thisx, PlayState* play) {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 27.0f);
this->actor.shape.shadowAlpha = 155;
SkelAnime_Init(play, &this->skelAnime, &gBariSkel, &gBariLurkingAnim, this->jointTable, this->morphTable,
- EN_VALI_LIMB_MAX);
+ VALI_LIMB_MAX);
Collider_InitQuad(play, &this->leftArmCollider);
Collider_SetQuad(play, &this->leftArmCollider, &this->actor, &sQuadInit);
@@ -689,14 +689,14 @@ s32 EnVali_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f*
EnVali* this = (EnVali*)thisx;
f32 curFrame;
- if ((limbIndex == EN_VALI_LIMB_NUCLEUS) || (limbIndex == EN_VALI_LIMB_OUTER_HOOD) ||
- (limbIndex == EN_VALI_LIMB_INNER_HOOD)) {
+ if ((limbIndex == VALI_LIMB_NUCLEUS) || (limbIndex == VALI_LIMB_OUTER_HOOD) ||
+ (limbIndex == VALI_LIMB_INNER_HOOD)) {
*dList = NULL;
return false;
} else {
curFrame = this->skelAnime.curFrame;
- if ((limbIndex == EN_VALI_LIMB_LEFT_ARM_BASE) || (limbIndex == EN_VALI_LIMB_RIGHT_ARM_BASE)) {
+ if ((limbIndex == VALI_LIMB_LEFT_ARM_BASE) || (limbIndex == VALI_LIMB_RIGHT_ARM_BASE)) {
if (EnVali_SetArmLength(this, curFrame)) {
Matrix_Scale(this->armScale, 1.0f, 1.0f, MTXMODE_APPLY);
}
@@ -714,11 +714,11 @@ void EnVali_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* rot
EnVali* this = (EnVali*)thisx;
if (this->actionFunc == EnVali_FloatIdle) {
- if ((limbIndex == EN_VALI_LIMB_LEFT_FOREARM_BASE) || (limbIndex == EN_VALI_LIMB_RIGHT_FOREARM_BASE)) {
+ if ((limbIndex == VALI_LIMB_LEFT_FOREARM_BASE) || (limbIndex == VALI_LIMB_RIGHT_FOREARM_BASE)) {
Matrix_MultVec3f(&D_80B28970, &sp3C);
Matrix_MultVec3f(&D_80B2897C, &sp30);
- if (limbIndex == EN_VALI_LIMB_LEFT_FOREARM_BASE) {
+ if (limbIndex == VALI_LIMB_LEFT_FOREARM_BASE) {
Collider_SetQuadVertices(&this->leftArmCollider, &sp30, &sp3C, &this->leftArmCollider.dim.quad[0],
&this->leftArmCollider.dim.quad[1]);
} else {
diff --git a/src/overlays/actors/ovl_En_Vali/z_en_vali.h b/src/overlays/actors/ovl_En_Vali/z_en_vali.h
index 66ac96d3d1..3659882f61 100644
--- a/src/overlays/actors/ovl_En_Vali/z_en_vali.h
+++ b/src/overlays/actors/ovl_En_Vali/z_en_vali.h
@@ -3,44 +3,12 @@
#include "ultra64.h"
#include "actor.h"
+#include "assets/objects/object_vali/object_vali.h"
struct EnVali;
typedef void (*EnValiActionFunc)(struct EnVali*, struct PlayState*);
-typedef enum EnValiLimb {
- /* 0x00 */ EN_VALI_LIMB_NONE,
- /* 0x01 */ EN_VALI_LIMB_NUCLEUS_BASE,
- /* 0x02 */ EN_VALI_LIMB_NUCLEUS,
- /* 0x03 */ EN_VALI_LIMB_RIGHT_MANDIBLE_BASE_BASE,
- /* 0x04 */ EN_VALI_LIMB_RIGHT_MANDIBLE_BASE,
- /* 0x05 */ EN_VALI_LIMB_RIGHT_MANDIBLE,
- /* 0x06 */ EN_VALI_LIMB_LEFT_MANDIBLE_BASE_BASE,
- /* 0x07 */ EN_VALI_LIMB_LEFT_MANDIBLE_BASE,
- /* 0x08 */ EN_VALI_LIMB_LEFT_MANDIBLE,
- /* 0x09 */ EN_VALI_LIMB_LEFT_ARM_BASE,
- /* 0x0A */ EN_VALI_LIMB_LEFT_UPPER_ARM_BASE,
- /* 0x0B */ EN_VALI_LIMB_LEFT_FOREARM_BASE,
- /* 0x0C */ EN_VALI_LIMB_LEFT_CLAW_BODY_BASE,
- /* 0x0D */ EN_VALI_LIMB_LEFT_CLAW_TIP_BASE,
- /* 0x0E */ EN_VALI_LIMB_LEFT_CLAW_TIP,
- /* 0x0F */ EN_VALI_LIMB_LEFT_CLAW_BODY,
- /* 0x10 */ EN_VALI_LIMB_LEFT_FOREARM,
- /* 0x11 */ EN_VALI_LIMB_LEFT_UPPER_ARM,
- /* 0x12 */ EN_VALI_LIMB_RIGHT_ARM_BASE,
- /* 0x13 */ EN_VALI_LIMB_RIGHT_UPPER_ARM_BASE,
- /* 0x14 */ EN_VALI_LIMB_RIGHT_FOREARM_BASE,
- /* 0x15 */ EN_VALI_LIMB_RIGHT_CLAW_BODY_BASE,
- /* 0x16 */ EN_VALI_LIMB_RIGHT_CLAW_TIP_BASE,
- /* 0x17 */ EN_VALI_LIMB_RIGHT_CLAW_TIP,
- /* 0x18 */ EN_VALI_LIMB_RIGHT_CLAW_BODY,
- /* 0x19 */ EN_VALI_LIMB_RIGHT_FOREARM,
- /* 0x1A */ EN_VALI_LIMB_RIGHT_UPPER_ARM,
- /* 0x1B */ EN_VALI_LIMB_INNER_HOOD,
- /* 0x1C */ EN_VALI_LIMB_OUTER_HOOD,
- /* 0x1D */ EN_VALI_LIMB_MAX
-} EnValiLimb;
-
typedef struct EnVali {
/* 0x0000 */ Actor actor;
/* 0x014C */ SkelAnime skelAnime;
@@ -48,8 +16,8 @@ typedef struct EnVali {
/* 0x0194 */ u8 lightningTimer;
/* 0x0195 */ u8 slingshotReactionTimer;
/* 0x0196 */ s16 timer;
- /* 0x0198 */ Vec3s jointTable[EN_VALI_LIMB_MAX];
- /* 0x0246 */ Vec3s morphTable[EN_VALI_LIMB_MAX];
+ /* 0x0198 */ Vec3s jointTable[VALI_LIMB_MAX];
+ /* 0x0246 */ Vec3s morphTable[VALI_LIMB_MAX];
/* 0x02F4 */ f32 armScale;
/* 0x02F8 */ f32 floatHomeHeight; // Used as a centre for floating when visible (home is used for the lurk height)
/* 0x02FC */ ColliderQuad leftArmCollider;
diff --git a/src/overlays/actors/ovl_En_Viewer/z_en_viewer.h b/src/overlays/actors/ovl_En_Viewer/z_en_viewer.h
index 1bb5780203..c23a2edba4 100644
--- a/src/overlays/actors/ovl_En_Viewer/z_en_viewer.h
+++ b/src/overlays/actors/ovl_En_Viewer/z_en_viewer.h
@@ -59,34 +59,6 @@ typedef struct EnViewerFireEffect {
/* 0x30 */ u8 state;
} EnViewerFireEffect; // size = 0x34
-typedef enum YoungGanondorfLimb {
- /* 0 */ YOUNG_GANONDORF_LIMB_NONE,
- /* 1 */ YOUNG_GANONDORF_LIMB_ROOT,
- /* 2 */ YOUNG_GANONDORF_LIMB_TORSO,
- /* 3 */ YOUNG_GANONDORF_LIMB_LEFT_UPPER_ARM,
- /* 4 */ YOUNG_GANONDORF_LIMB_LEFT_FOREARM,
- /* 5 */ YOUNG_GANONDORF_LIMB_LEFT_HAND,
- /* 6 */ YOUNG_GANONDORF_LIMB_RIGHT_UPPER_ARM,
- /* 7 */ YOUNG_GANONDORF_LIMB_RIGHT_FOREARM,
- /* 8 */ YOUNG_GANONDORF_LIMB_RIGHT_HAND,
- /* 9 */ YOUNG_GANONDORF_LIMB_JEWEL,
- /* 10 */ YOUNG_GANONDORF_LIMB_LEFT_UPPER_LIP,
- /* 11 */ YOUNG_GANONDORF_LIMB_JAW,
- /* 12 */ YOUNG_GANONDORF_LIMB_CHIN,
- /* 13 */ YOUNG_GANONDORF_LIMB_RIGHT_UPPER_LIP,
- /* 14 */ YOUNG_GANONDORF_LIMB_TEETH,
- /* 15 */ YOUNG_GANONDORF_LIMB_HEAD,
- /* 16 */ YOUNG_GANONDORF_LIMB_PELVIS,
- /* 17 */ YOUNG_GANONDORF_LIMB_LEFT_THIGH,
- /* 18 */ YOUNG_GANONDORF_LIMB_LEFT_SHIN,
- /* 19 */ YOUNG_GANONDORF_LIMB_LEFT_FOOT,
- /* 20 */ YOUNG_GANONDORF_LIMB_KNIFE,
- /* 21 */ YOUNG_GANONDORF_LIMB_RIGHT_THIGH,
- /* 22 */ YOUNG_GANONDORF_LIMB_RIGHT_SHIN,
- /* 23 */ YOUNG_GANONDORF_LIMB_RIGHT_FOOT,
- /* 24 */ YOUNG_GANONDORF_LIMB_MAX
-} YoungGanondorfLimb;
-
typedef struct EnViewer {
/* 0x0000 */ Actor actor;
/* 0x014C */ Skin skin;
diff --git a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.c b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.c
index 2a76a40fa2..84b7687bb4 100644
--- a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.c
+++ b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.c
@@ -1653,13 +1653,13 @@ void KaleidoScope_DrawPages(PlayState* play, GraphicsContext* gfxCtx) {
}
void KaleidoScope_DrawInfoPanel(PlayState* play) {
- static void* D_8082AD54[] =
+ static void* sToEquipTextTextures[] =
LANGUAGE_ARRAY(gPauseToEquipJPNTex, gPauseToEquipENGTex, gPauseToEquipGERTex, gPauseToEquipFRATex);
- static void* D_8082AD60[] =
+ static void* sToDecideTextTextures[] =
LANGUAGE_ARRAY(gPauseToDecideJPNTex, gPauseToDecideENGTex, gPauseToDecideGERTex, gPauseToDecideFRATex);
- static void* D_8082AD6C[] = LANGUAGE_ARRAY(gPauseToPlayMelodyJPNTex, gPauseToPlayMelodyENGTex,
- gPauseToPlayMelodyGERTex, gPauseToPlayMelodyFRATex);
- static void* D_8082AD78[][LANGUAGE_MAX] = {
+ static void* sToPlayMelodyTextTextures[] = LANGUAGE_ARRAY(gPauseToPlayMelodyJPNTex, gPauseToPlayMelodyENGTex,
+ gPauseToPlayMelodyGERTex, gPauseToPlayMelodyFRATex);
+ static void* sScrollLeftLabels[][LANGUAGE_MAX] = {
LANGUAGE_ARRAY(gPauseToEquipmentJPNTex, gPauseToEquipmentENGTex, gPauseToEquipmentGERTex,
gPauseToEquipmentFRATex),
LANGUAGE_ARRAY(gPauseToSelectItemJPNTex, gPauseToSelectItemENGTex, gPauseToSelectItemGERTex,
@@ -1668,7 +1668,7 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
LANGUAGE_ARRAY(gPauseToQuestStatusJPNTex, gPauseToQuestStatusENGTex, gPauseToQuestStatusGERTex,
gPauseToQuestStatusFRATex),
};
- static void* D_8082ADA8[][LANGUAGE_MAX] = {
+ static void* sScrollRightLabels[][LANGUAGE_MAX] = {
LANGUAGE_ARRAY(gPauseToMapJPNTex, gPauseToMapENGTex, gPauseToMapGERTex, gPauseToMapFRATex),
LANGUAGE_ARRAY(gPauseToQuestStatusJPNTex, gPauseToQuestStatusENGTex, gPauseToQuestStatusGERTex,
gPauseToQuestStatusFRATex),
@@ -1677,9 +1677,13 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
LANGUAGE_ARRAY(gPauseToSelectItemJPNTex, gPauseToSelectItemENGTex, gPauseToSelectItemGERTex,
gPauseToSelectItemFRATex),
};
- static u16 D_8082ADD8[] = LANGUAGE_ARRAY(56, 56, 88, 80);
- static u16 D_8082ADE0[] = LANGUAGE_ARRAY(48, 64, 88, 72);
- static u16 D_8082ADE8[] = LANGUAGE_ARRAY(96, 80, 104, 112);
+ static u16 sToEquipTextWidths[] = LANGUAGE_ARRAY(gPauseToEquipJPNTex_WIDTH, gPauseToEquipENGTex_WIDTH,
+ gPauseToEquipGERTex_WIDTH, gPauseToEquipFRATex_WIDTH);
+ static u16 sToDecideTextWidths[] = LANGUAGE_ARRAY(gPauseToDecideJPNTex_WIDTH, gPauseToDecideENGTex_WIDTH,
+ gPauseToDecideGERTex_WIDTH, gPauseToDecideFRATex_WIDTH);
+ static u16 sToPlayMelodyTextWidths[] =
+ LANGUAGE_ARRAY(gPauseToPlayMelodyJPNTex_WIDTH, gPauseToPlayMelodyENGTex_WIDTH, gPauseToPlayMelodyGERTex_WIDTH,
+ gPauseToPlayMelodyFRATex_WIDTH);
static s16 D_8082ADF0[][4] = {
{ 180, 210, 255, 220 },
{ 100, 100, 150, 220 },
@@ -1974,20 +1978,20 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
pauseCtx->infoPanelVtx[16].v.ob[0] + R_KALEIDO_UNK2(gSaveContext.language);
pauseCtx->infoPanelVtx[21].v.ob[0] = pauseCtx->infoPanelVtx[23].v.ob[0] =
- pauseCtx->infoPanelVtx[20].v.ob[0] + D_8082ADE0[gSaveContext.language];
+ pauseCtx->infoPanelVtx[20].v.ob[0] + sToDecideTextWidths[gSaveContext.language];
pauseCtx->infoPanelVtx[17].v.tc[0] = pauseCtx->infoPanelVtx[19].v.tc[0] = 0x300;
- pauseCtx->infoPanelVtx[21].v.tc[0] = pauseCtx->infoPanelVtx[23].v.tc[0] = D_8082ADE0[gSaveContext.language]
- << 5;
+ pauseCtx->infoPanelVtx[21].v.tc[0] = pauseCtx->infoPanelVtx[23].v.tc[0] =
+ sToDecideTextWidths[gSaveContext.language] << 5;
gSPDisplayList(POLY_OPA_DISP++, gAButtonIconDL);
gDPPipeSync(POLY_OPA_DISP++);
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 255, 255, 255);
- POLY_OPA_DISP = KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, D_8082AD60[gSaveContext.language],
- D_8082ADE0[gSaveContext.language], 16, 4);
+ POLY_OPA_DISP = KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, sToDecideTextTextures[gSaveContext.language],
+ sToDecideTextWidths[gSaveContext.language], 16, 4);
} else if (pauseCtx->cursorSpecialPos != 0) {
if ((pauseCtx->state == PAUSE_STATE_MAIN) && (pauseCtx->mainState == PAUSE_MAIN_STATE_IDLE)) {
pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] = -63;
@@ -2002,10 +2006,12 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
if (pauseCtx->cursorSpecialPos == PAUSE_CURSOR_PAGE_LEFT) {
POLY_OPA_DISP = KaleidoScope_QuadTextureIA8(
- POLY_OPA_DISP, D_8082AD78[pauseCtx->pageIndex][gSaveContext.language], 128, 16, 0);
+ POLY_OPA_DISP, sScrollLeftLabels[pauseCtx->pageIndex][gSaveContext.language],
+ TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 0);
} else {
POLY_OPA_DISP = KaleidoScope_QuadTextureIA8(
- POLY_OPA_DISP, D_8082ADA8[pauseCtx->pageIndex][gSaveContext.language], 128, 16, 0);
+ POLY_OPA_DISP, sScrollRightLabels[pauseCtx->pageIndex][gSaveContext.language],
+ TO_PAGE_LABEL_TEX_WIDTH, TO_PAGE_LABEL_TEX_HEIGHT, 0);
}
}
} else {
@@ -2020,20 +2026,20 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
pauseCtx->infoPanelVtx[16].v.ob[0] + R_KALEIDO_UNK4(gSaveContext.language);
pauseCtx->infoPanelVtx[21].v.ob[0] = pauseCtx->infoPanelVtx[23].v.ob[0] =
- pauseCtx->infoPanelVtx[20].v.ob[0] + D_8082ADD8[gSaveContext.language];
+ pauseCtx->infoPanelVtx[20].v.ob[0] + sToEquipTextWidths[gSaveContext.language];
pauseCtx->infoPanelVtx[17].v.tc[0] = pauseCtx->infoPanelVtx[19].v.tc[0] = 0x600;
pauseCtx->infoPanelVtx[21].v.tc[0] = pauseCtx->infoPanelVtx[23].v.tc[0] =
- D_8082ADD8[gSaveContext.language] << 5;
+ sToEquipTextWidths[gSaveContext.language] << 5;
gSPDisplayList(POLY_OPA_DISP++, gCButtonIconsDL);
gDPPipeSync(POLY_OPA_DISP++);
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 255, 255, 255);
- POLY_OPA_DISP = KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, D_8082AD54[gSaveContext.language],
- D_8082ADD8[gSaveContext.language], 16, 4);
+ POLY_OPA_DISP = KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, sToEquipTextTextures[gSaveContext.language],
+ sToEquipTextWidths[gSaveContext.language], 16, 4);
} else if ((pauseCtx->pageIndex == PAUSE_MAP) && sInDungeonScene) {
} else if ((pauseCtx->pageIndex == PAUSE_QUEST) &&
@@ -2056,20 +2062,21 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
#endif
pauseCtx->infoPanelVtx[21].v.ob[0] = pauseCtx->infoPanelVtx[23].v.ob[0] =
- pauseCtx->infoPanelVtx[20].v.ob[0] + D_8082ADE8[gSaveContext.language];
+ pauseCtx->infoPanelVtx[20].v.ob[0] + sToPlayMelodyTextWidths[gSaveContext.language];
pauseCtx->infoPanelVtx[17].v.tc[0] = pauseCtx->infoPanelVtx[19].v.tc[0] = 0x300;
pauseCtx->infoPanelVtx[21].v.tc[0] = pauseCtx->infoPanelVtx[23].v.tc[0] =
- D_8082ADE8[gSaveContext.language] << 5;
+ sToPlayMelodyTextWidths[gSaveContext.language] << 5;
gSPDisplayList(POLY_OPA_DISP++, gAButtonIconDL);
gDPPipeSync(POLY_OPA_DISP++);
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 255, 255, 255);
- POLY_OPA_DISP = KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, D_8082AD6C[gSaveContext.language],
- D_8082ADE8[gSaveContext.language], 16, 4);
+ POLY_OPA_DISP =
+ KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, sToPlayMelodyTextTextures[gSaveContext.language],
+ sToPlayMelodyTextWidths[gSaveContext.language], 16, 4);
}
} else if (pauseCtx->pageIndex == PAUSE_EQUIP) {
pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] =
@@ -2082,20 +2089,20 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
pauseCtx->infoPanelVtx[16].v.ob[0] + R_KALEIDO_UNK2(gSaveContext.language);
pauseCtx->infoPanelVtx[21].v.ob[0] = pauseCtx->infoPanelVtx[23].v.ob[0] =
- pauseCtx->infoPanelVtx[20].v.ob[0] + D_8082ADD8[gSaveContext.language];
+ pauseCtx->infoPanelVtx[20].v.ob[0] + sToEquipTextWidths[gSaveContext.language];
pauseCtx->infoPanelVtx[17].v.tc[0] = pauseCtx->infoPanelVtx[19].v.tc[0] = 0x300;
pauseCtx->infoPanelVtx[21].v.tc[0] = pauseCtx->infoPanelVtx[23].v.tc[0] =
- D_8082ADD8[gSaveContext.language] << 5;
+ sToEquipTextWidths[gSaveContext.language] << 5;
gSPDisplayList(POLY_OPA_DISP++, gAButtonIconDL);
gDPPipeSync(POLY_OPA_DISP++);
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 255, 255, 255);
- POLY_OPA_DISP = KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, D_8082AD54[gSaveContext.language],
- D_8082ADD8[gSaveContext.language], 16, 4);
+ POLY_OPA_DISP = KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, sToEquipTextTextures[gSaveContext.language],
+ sToEquipTextWidths[gSaveContext.language], 16, 4);
}
}
}
diff --git a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.h b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.h
index 8f42eb244d..566b087e68 100644
--- a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.h
+++ b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.h
@@ -218,6 +218,9 @@ typedef enum ItemQuad {
/* 41 */ ITEM_QUAD_MAX
} ItemQuad;
+#define TO_PAGE_LABEL_TEX_WIDTH 128
+#define TO_PAGE_LABEL_TEX_HEIGHT 16
+
void KaleidoScope_DrawQuestStatus(struct PlayState* play, GraphicsContext* gfxCtx);
s32 KaleidoScope_UpdateQuestStatusPoint(PauseContext* pauseCtx, s32 point);
void KaleidoScope_DrawInventoryEditor(struct PlayState* play);