Merge branch 'main' into doc_rename_hitBacklash

This commit is contained in:
Dragorn421 2025-06-15 22:26:14 +02:00
commit d8206ac602
No known key found for this signature in database
GPG Key ID: 381AEBAF3D429335
84 changed files with 662 additions and 1067 deletions

View File

@ -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"
};

View File

@ -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)];

View File

@ -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"
};

View File

@ -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)];

View File

@ -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"
};

View File

@ -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)];

View File

@ -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"
};

View File

@ -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)];

View File

@ -1,6 +1,6 @@
<Root>
<File Name="object_anubice" Segment="6">
<Skeleton Name="gAnubiceSkel" Type="Normal" LimbType="Standard" Offset="0x3990"/>
<Skeleton Name="gAnubiceSkel" Type="Normal" LimbType="Standard" LimbNone="ANUBICE_LIMB_NONE" LimbMax="ANUBICE_LIMB_MAX" EnumName="AnubiceLimb" Offset="0x3990"/>
<Animation Name="gAnubiceFallDownAnim" Offset="0x348"/>
<Animation Name="gAnubiceAttackingAnim" Offset="0x78C"/>
@ -69,20 +69,20 @@
<DList Name="object_anubice_0031A0_DL" Offset="0x31A0"/>
<DList Name="object_anubice_003288_DL" Offset="0x3288"/>
<Texture Name="object_anubice_0036A0_Tex" Format="i4" Width="32" Height="32" Offset="0x36A0"/>
<Limb Name="object_anubice_0038A0_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_ANUBICE_0038A0" Offset="0x38A0"/>
<Limb Name="object_anubice_0038AC_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_ANUBICE_0038AC" Offset="0x38AC"/>
<Limb Name="object_anubice_0038B8_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_ANUBICE_0038B8" Offset="0x38B8"/>
<Limb Name="object_anubice_0038C4_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_ANUBICE_0038C4" Offset="0x38C4"/>
<Limb Name="object_anubice_0038D0_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_ANUBICE_0038D0" Offset="0x38D0"/>
<Limb Name="object_anubice_0038DC_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_ANUBICE_0038DC" Offset="0x38DC"/>
<Limb Name="object_anubice_0038E8_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_ANUBICE_0038E8" Offset="0x38E8"/>
<Limb Name="object_anubice_0038F4_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_ANUBICE_0038F4" Offset="0x38F4"/>
<Limb Name="object_anubice_003900_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_ANUBICE_003900" Offset="0x3900"/>
<Limb Name="object_anubice_00390C_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_ANUBICE_00390C" Offset="0x390C"/>
<Limb Name="object_anubice_003918_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_ANUBICE_003918" Offset="0x3918"/>
<Limb Name="object_anubice_003924_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_ANUBICE_003924" Offset="0x3924"/>
<Limb Name="object_anubice_003930_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_ANUBICE_003930" Offset="0x3930"/>
<Limb Name="object_anubice_00393C_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_ANUBICE_00393C" Offset="0x393C"/>
<Limb Name="object_anubice_003948_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_ANUBICE_003948" Offset="0x3948"/>
<Limb Name="object_anubice_0038A0_Limb" LimbType="Standard" EnumName="ANUBICE_LIMB_ROOT" Offset="0x38A0"/>
<Limb Name="object_anubice_0038AC_Limb" LimbType="Standard" EnumName="ANUBICE_LIMB_BODY_ROOT" Offset="0x38AC"/>
<Limb Name="object_anubice_0038B8_Limb" LimbType="Standard" EnumName="ANUBICE_LIMB_CHEST" Offset="0x38B8"/>
<Limb Name="object_anubice_0038C4_Limb" LimbType="Standard" EnumName="ANUBICE_LIMB_ABDOMEN_ROOT" Offset="0x38C4"/>
<Limb Name="object_anubice_0038D0_Limb" LimbType="Standard" EnumName="ANUBICE_LIMB_UPPER_ABDOMEN" Offset="0x38D0"/>
<Limb Name="object_anubice_0038DC_Limb" LimbType="Standard" EnumName="ANUBICE_LIMB_LOWER_ABDOMEN" Offset="0x38DC"/>
<Limb Name="object_anubice_0038E8_Limb" LimbType="Standard" EnumName="ANUBICE_LIMB_TAIL_ROOT" Offset="0x38E8"/>
<Limb Name="object_anubice_0038F4_Limb" LimbType="Standard" EnumName="ANUBICE_LIMB_TAIL_BASE" Offset="0x38F4"/>
<Limb Name="object_anubice_003900_Limb" LimbType="Standard" EnumName="ANUBICE_LIMB_TAIL_TIP" Offset="0x3900"/>
<Limb Name="object_anubice_00390C_Limb" LimbType="Standard" EnumName="ANUBICE_LIMB_JEWEL_ROOT" Offset="0x390C"/>
<Limb Name="object_anubice_003918_Limb" LimbType="Standard" EnumName="ANUBICE_LIMB_JEWEL" Offset="0x3918"/>
<Limb Name="object_anubice_003924_Limb" LimbType="Standard" EnumName="ANUBICE_LIMB_HEAD_ROOT" Offset="0x3924"/>
<Limb Name="object_anubice_003930_Limb" LimbType="Standard" EnumName="ANUBICE_LIMB_HEAD" Offset="0x3930"/>
<Limb Name="object_anubice_00393C_Limb" LimbType="Standard" EnumName="ANUBICE_LIMB_JAW_ROOT" Offset="0x393C"/>
<Limb Name="object_anubice_003948_Limb" LimbType="Standard" EnumName="ANUBICE_LIMB_JAW" Offset="0x3948"/>
</File>
</Root>

View File

@ -34,10 +34,10 @@
<Texture Name="gBiriInnerHoodTex" Format="ia16" Width="16" Height="16" Offset="0x5608"/>
<!-- Biri Limbs and Skeleton -->
<Limb Name="gBiriRootLimb" LimbType="Standard" Offset="0x5808"/>
<Limb Name="gBiriInnerHoodLimb" LimbType="Standard" Offset="0x5814"/>
<Limb Name="gBiriOuterHoodLimb" LimbType="Standard" Offset="0x5820"/>
<Limb Name="gBiriTentaclesLimb" LimbType="Standard" Offset="0x582C"/>
<Skeleton Name="gBiriSkel" Type="Normal" LimbType="Standard" Offset="0x5848"/>
<Limb Name="gBiriRootLimb" LimbType="Standard" EnumName="BIRI_LIMB_ROOT" Offset="0x5808"/>
<Limb Name="gBiriInnerHoodLimb" LimbType="Standard" EnumName="BIRI_LIMB_INNER_HOOD" Offset="0x5814"/>
<Limb Name="gBiriOuterHoodLimb" LimbType="Standard" EnumName="BIRI_LIMB_OUTER_HOOD" Offset="0x5820"/>
<Limb Name="gBiriTentaclesLimb" LimbType="Standard" EnumName="BIRI_LIMB_TENTACLES" Offset="0x582C"/>
<Skeleton Name="gBiriSkel" Type="Normal" LimbType="Standard" LimbNone="BIRI_LIMB_NONE" LimbMax="BIRI_LIMB_MAX" EnumName="BiriLimb" Offset="0x5848"/>
</File>
</Root>

View File

@ -33,20 +33,20 @@
<Texture Name="gTorchSlugBody2Tex" Format="ci8" Width="32" Height="32" Offset="0x1C40" TlutOffset="0x1640"/>
<!-- Torch Slug Limbs -->
<Limb Name="gTorchSlugBodyLimb" LimbType="Standard" Offset="0x2040"/>
<Limb Name="gTorchSlugLeftEyestalkRootRootLimb" LimbType="Standard" Offset="0x204C"/>
<Limb Name="gTorchSlugLeftEyestalkRootLimb" LimbType="Standard" Offset="0x2058"/>
<Limb Name="gTorchSlugLeftUpperEyestalkRootLimb" LimbType="Standard" Offset="0x2064"/>
<Limb Name="gTorchSlugLeftUpperEyestalkLimb" LimbType="Standard" Offset="0x2070"/>
<Limb Name="gTorchSlugLeftLowerEyestalkLimb" LimbType="Standard" Offset="0x207C"/>
<Limb Name="gTorchSlugRightEyestalkRootRootLimb" LimbType="Standard" Offset="0x2088"/>
<Limb Name="gTorchSlugRightEyestalkRootLimb" LimbType="Standard" Offset="0x2094"/>
<Limb Name="gTorchSlugRightUpperEyestalkRootLimb" LimbType="Standard" Offset="0x20A0"/>
<Limb Name="gTorchSlugRightUpperEyestalkLimb" LimbType="Standard" Offset="0x20AC"/>
<Limb Name="gTorchSlugRightLowerEyestalkLimb" LimbType="Standard" Offset="0x20B8"/>
<Limb Name="gTorchSlugBodyLimb" LimbType="Standard" EnumName="TORCH_SLUG_LIMB_BODY" Offset="0x2040"/>
<Limb Name="gTorchSlugLeftEyestalkRootRootLimb" LimbType="Standard" EnumName="TORCH_SLUG_LIMB_LEFT_EYESTALK_ROOT_ROOT" Offset="0x204C"/>
<Limb Name="gTorchSlugLeftEyestalkRootLimb" LimbType="Standard" EnumName="TORCH_SLUG_LIMB_LEFT_EYESTALK_ROOT" Offset="0x2058"/>
<Limb Name="gTorchSlugLeftUpperEyestalkRootLimb" LimbType="Standard" EnumName="TORCH_SLUG_LIMB_LEFT_UPPER_EYESTALK_ROOT" Offset="0x2064"/>
<Limb Name="gTorchSlugLeftUpperEyestalkLimb" LimbType="Standard" EnumName="TORCH_SLUG_LIMB_LEFT_UPPER_EYESTALK" Offset="0x2070"/>
<Limb Name="gTorchSlugLeftLowerEyestalkLimb" LimbType="Standard" EnumName="TORCH_SLUG_LIMB_LEFT_LOWER_EYESTALK" Offset="0x207C"/>
<Limb Name="gTorchSlugRightEyestalkRootRootLimb" LimbType="Standard" EnumName="TORCH_SLUG_LIMB_RIGHT_EYESTALK_ROOT_ROOT" Offset="0x2088"/>
<Limb Name="gTorchSlugRightEyestalkRootLimb" LimbType="Standard" EnumName="TORCH_SLUG_LIMB_RIGHT_EYESTALK_ROOT" Offset="0x2094"/>
<Limb Name="gTorchSlugRightUpperEyestalkRootLimb" LimbType="Standard" EnumName="TORCH_SLUG_LIMB_RIGHT_UPPER_EYESTALK_ROOT" Offset="0x20A0"/>
<Limb Name="gTorchSlugRightUpperEyestalkLimb" LimbType="Standard" EnumName="TORCH_SLUG_LIMB_RIGHT_UPPER_EYESTALK" Offset="0x20AC"/>
<Limb Name="gTorchSlugRightLowerEyestalkLimb" LimbType="Standard" EnumName="TORCH_SLUG_LIMB_RIGHT_LOWER_EYESTALK" Offset="0x20B8"/>
<!-- Torch Slug Skeleton -->
<Skeleton Name="gTorchSlugSkel" Type="Normal" LimbType="Standard" Offset="0x20F0"/>
<Skeleton Name="gTorchSlugSkel" Type="Normal" LimbType="Standard" LimbNone="TORCH_SLUG_LIMB_NONE" LimbMax="TORCH_SLUG_LIMB_MAX" EnumName="TorchSlugLimb" Offset="0x20F0"/>
<!-- Torch Slug Animations -->
<Animation Name="gTorchSlugEyestalkRaiseAnim" Offset="0x21A0"/> <!-- Original name is "bw_hakken" ("discovery; detection"). Used for when the Torch Slug spots the player. -->

View File

@ -35,22 +35,22 @@
<Texture Name="gWindmillManMouthAngryTex" Format="ci8" Width="32" Height="16" Offset="0x6920" TlutOffset="0x4E60"/>
<Texture Name="gWindmillManHairTex" Format="ci8" Width="8" Height="16" Offset="0x6B20" TlutOffset="0x4E60"/>
<Skeleton Name="gWindmillManSkel" Type="Flex" LimbType="Standard" Offset="0x6C90"/>
<Limb Name="gWindmillManTorsoLimb" LimbType="Standard" Offset="0x6BA0"/>
<Limb Name="gWindmillManLeftThighLimb" LimbType="Standard" Offset="0x6BAC"/>
<Limb Name="gWindmillManLeftLegLimb" LimbType="Standard" Offset="0x6BB8"/>
<Limb Name="gWindmillManLeftFootLimb" LimbType="Standard" Offset="0x6BC4"/>
<Limb Name="gWindmillManRightThighLimb" LimbType="Standard" Offset="0x6BD0"/>
<Limb Name="gWindmillManRightLegLimb" LimbType="Standard" Offset="0x6BDC"/>
<Limb Name="gWindmillManRightFootLimb" LimbType="Standard" Offset="0x6BE8"/>
<Limb Name="gWindmillManChestAndMusicBoxPipeLimb" LimbType="Standard" Offset="0x6BF4"/>
<Limb Name="gWindmillManLeftArmAndMusicBoxLimb" LimbType="Standard" Offset="0x6C00"/>
<Limb Name="gWindmillManLimb_006C0C" LimbType="Standard" Offset="0x6C0C"/> <!--A random triangle near the right side of the music box-->
<Limb Name="gWindmillManRightShoulderLimb" LimbType="Standard" Offset="0x6C18"/>
<Limb Name="gWindmillManRightArmLimb" LimbType="Standard" Offset="0x6C24"/>
<Limb Name="gWindmillManRightHandAndCrankLimb" LimbType="Standard" Offset="0x6C30"/>
<Limb Name="gWindmillManHeadLimb" LimbType="Standard" Offset="0x6C3C"/>
<Limb Name="gWindmillManHornLimb" LimbType="Standard" Offset="0x6C48"/>
<Skeleton Name="gWindmillManSkel" Type="Flex" LimbType="Standard" LimbNone="WINDMILL_MAN_LIMB_NONE" LimbMax="WINDMILL_MAN_LIMB_MAX" EnumName="WindmillManLimb" Offset="0x6C90"/>
<Limb Name="gWindmillManTorsoLimb" LimbType="Standard" EnumName="WINDMILL_MAN_LIMB_TORSO" Offset="0x6BA0"/>
<Limb Name="gWindmillManLeftThighLimb" LimbType="Standard" EnumName="WINDMILL_MAN_LIMB_LEFT_THIGH" Offset="0x6BAC"/>
<Limb Name="gWindmillManLeftLegLimb" LimbType="Standard" EnumName="WINDMILL_MAN_LIMB_LEFT_LEG" Offset="0x6BB8"/>
<Limb Name="gWindmillManLeftFootLimb" LimbType="Standard" EnumName="WINDMILL_MAN_LIMB_LEFT_FOOT" Offset="0x6BC4"/>
<Limb Name="gWindmillManRightThighLimb" LimbType="Standard" EnumName="WINDMILL_MAN_LIMB_RIGHT_THIGH" Offset="0x6BD0"/>
<Limb Name="gWindmillManRightLegLimb" LimbType="Standard" EnumName="WINDMILL_MAN_LIMB_RIGHT_LEG" Offset="0x6BDC"/>
<Limb Name="gWindmillManRightFootLimb" LimbType="Standard" EnumName="WINDMILL_MAN_LIMB_RIGHT_FOOT" Offset="0x6BE8"/>
<Limb Name="gWindmillManChestAndMusicBoxPipeLimb" LimbType="Standard" EnumName="WINDMILL_MAN_LIMB_CHEST_MUSIC_BOX" Offset="0x6BF4"/>
<Limb Name="gWindmillManLeftArmAndMusicBoxLimb" LimbType="Standard" EnumName="WINDMILL_MAN_LIMB_LEFT_ARM_MUSIC_BOX" Offset="0x6C00"/>
<Limb Name="gWindmillManLimb_006C0C" LimbType="Standard" EnumName="WINDMILL_MAN_LIMB_UNK" Offset="0x6C0C"/> <!--A random triangle near the right side of the music box-->
<Limb Name="gWindmillManRightShoulderLimb" LimbType="Standard" EnumName="WINDMILL_MAN_LIMB_RIGHT_SHOULDER" Offset="0x6C18"/>
<Limb Name="gWindmillManRightArmLimb" LimbType="Standard" EnumName="WINDMILL_MAN_LIMB_RIGHT_ARM" Offset="0x6C24"/>
<Limb Name="gWindmillManRightHandAndCrankLimb" LimbType="Standard" EnumName="WINDMILL_MAN_LIMB_RIGHT_HAND_AND_CRANK" Offset="0x6C30"/>
<Limb Name="gWindmillManHeadLimb" LimbType="Standard" EnumName="WINDMILL_MAN_LIMB_HEAD" Offset="0x6C3C"/>
<Limb Name="gWindmillManHornLimb" LimbType="Standard" EnumName="WINDMILL_MAN_LIMB_HORN" Offset="0x6C48"/>
<Array Name="gWindmillManBlueTriangleVtx" Count="3" Offset="0xB20">
<Vtx/>

View File

@ -2,24 +2,24 @@
<File Name="object_ge1" Segment="6">
<!-- White-clothed Gerudo Skeleton -->
<Skeleton Name="gGerudoWhiteSkel" Type="Flex" LimbType="Standard" Offset="0x0330"/>
<Skeleton Name="gGerudoWhiteSkel" Type="Flex" LimbType="Standard" LimbNone="GERUDO_WHITE_LIMB_NONE" LimbMax="GERUDO_WHITE_LIMB_MAX" EnumName="GerudoWhiteLimb" Offset="0x0330"/>
<!-- White-clothed Gerudo Limbs -->
<Limb Name="gGerudoWhiteWaistLimb" LimbType="Standard" Offset="0x0240"/>
<Limb Name="gGerudoWhiteLeftThighLimb" LimbType="Standard" Offset="0x024C"/>
<Limb Name="gGerudoWhiteLeftShinLimb" LimbType="Standard" Offset="0x0258"/>
<Limb Name="gGerudoWhiteLeftFootLimb" LimbType="Standard" Offset="0x0264"/>
<Limb Name="gGerudoWhiteRightThighLimb" LimbType="Standard" Offset="0x0270"/>
<Limb Name="gGerudoWhiteRightShinLimb" LimbType="Standard" Offset="0x027C"/>
<Limb Name="gGerudoWhiteRightFootLimb" LimbType="Standard" Offset="0x0288"/>
<Limb Name="gGerudoWhiteTorsoLimb" LimbType="Standard" Offset="0x0294"/>
<Limb Name="gGerudoWhiteLeftUpperArmLimb" LimbType="Standard" Offset="0x02A0"/>
<Limb Name="gGerudoWhiteLeftForearmLimb" LimbType="Standard" Offset="0x02AC"/>
<Limb Name="gGerudoWhiteLeftHandLimb" LimbType="Standard" Offset="0x02B8"/>
<Limb Name="gGerudoWhiteRightUpperArmLimb" LimbType="Standard" Offset="0x02C4"/>
<Limb Name="gGerudoWhiteRightForearmLimb" LimbType="Standard" Offset="0x02D0"/>
<Limb Name="gGerudoWhiteRightHandLimb" LimbType="Standard" Offset="0x02DC"/>
<Limb Name="gGerudoWhiteHeadLimb" LimbType="Standard" Offset="0x02E8"/>
<Limb Name="gGerudoWhiteWaistLimb" LimbType="Standard" EnumName="GERUDO_WHITE_LIMB_WAIST" Offset="0x0240"/>
<Limb Name="gGerudoWhiteLeftThighLimb" LimbType="Standard" EnumName="GERUDO_WHITE_LIMB_L_THIGH" Offset="0x024C"/>
<Limb Name="gGerudoWhiteLeftShinLimb" LimbType="Standard" EnumName="GERUDO_WHITE_LIMB_L_SHIN" Offset="0x0258"/>
<Limb Name="gGerudoWhiteLeftFootLimb" LimbType="Standard" EnumName="GERUDO_WHITE_LIMB_L_FOOT" Offset="0x0264"/>
<Limb Name="gGerudoWhiteRightThighLimb" LimbType="Standard" EnumName="GERUDO_WHITE_LIMB_R_THIGH" Offset="0x0270"/>
<Limb Name="gGerudoWhiteRightShinLimb" LimbType="Standard" EnumName="GERUDO_WHITE_LIMB_R_SHIN" Offset="0x027C"/>
<Limb Name="gGerudoWhiteRightFootLimb" LimbType="Standard" EnumName="GERUDO_WHITE_LIMB_R_FOOT" Offset="0x0288"/>
<Limb Name="gGerudoWhiteTorsoLimb" LimbType="Standard" EnumName="GERUDO_WHITE_LIMB_TORSO" Offset="0x0294"/>
<Limb Name="gGerudoWhiteLeftUpperArmLimb" LimbType="Standard" EnumName="GERUDO_WHITE_LIMB_L_UPPER_ARM" Offset="0x02A0"/>
<Limb Name="gGerudoWhiteLeftForearmLimb" LimbType="Standard" EnumName="GERUDO_WHITE_LIMB_L_FOREARM" Offset="0x02AC"/>
<Limb Name="gGerudoWhiteLeftHandLimb" LimbType="Standard" EnumName="GERUDO_WHITE_LIMB_L_HAND" Offset="0x02B8"/>
<Limb Name="gGerudoWhiteRightUpperArmLimb" LimbType="Standard" EnumName="GERUDO_WHITE_LIMB_R_UPPER_ARM" Offset="0x02C4"/>
<Limb Name="gGerudoWhiteRightForearmLimb" LimbType="Standard" EnumName="GERUDO_WHITE_LIMB_R_FOREARM" Offset="0x02D0"/>
<Limb Name="gGerudoWhiteRightHandLimb" LimbType="Standard" EnumName="GERUDO_WHITE_LIMB_R_HAND" Offset="0x02DC"/>
<Limb Name="gGerudoWhiteHeadLimb" LimbType="Standard" EnumName="GERUDO_WHITE_LIMB_HEAD" Offset="0x02E8"/>
<!-- White-clothed Gerudo Limb DisplayLists -->
<DList Name="gGerudoWhiteWaistDL" Offset="0x69E0"/>

View File

@ -1,7 +1,7 @@
<Root>
<File Name="object_geldb" Segment="6">
<!-- Red-clothed Gerudo skeleton -->
<Skeleton Name="gGerudoRedSkel" Type="Flex" LimbType="Standard" Offset="0xA458"/>
<Skeleton Name="gGerudoRedSkel" Type="Flex" LimbType="Standard" LimbNone="GERUDO_RED_LIMB_NONE" LimbMax="GERUDO_RED_LIMB_MAX" EnumName="GerudoRedLimb" Offset="0xA458"/>
<!-- Red-clothed Gerudo animations -->
<Animation Name="gGerudoRedJumpAnim" Offset="0xADF8"/>
@ -120,28 +120,28 @@
<DList Name="object_geldb_0099A8_DL" Offset="0x99A8"/>
<DList Name="object_geldb_009A60_DL" Offset="0x9A60"/>
<DList Name="object_geldb_009B50_DL" Offset="0x9B50"/>
<Limb Name="object_geldb_00A2E8_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A2E8" Offset="0xA2E8"/>
<Limb Name="object_geldb_00A2F4_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A2F4" Offset="0xA2F4"/>
<Limb Name="object_geldb_00A300_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A300" Offset="0xA300"/>
<Limb Name="object_geldb_00A30C_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A30C" Offset="0xA30C"/>
<Limb Name="object_geldb_00A318_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A318" Offset="0xA318"/>
<Limb Name="object_geldb_00A324_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A324" Offset="0xA324"/>
<Limb Name="object_geldb_00A330_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A330" Offset="0xA330"/>
<Limb Name="object_geldb_00A33C_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A33C" Offset="0xA33C"/>
<Limb Name="object_geldb_00A348_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A348" Offset="0xA348"/>
<Limb Name="object_geldb_00A354_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A354" Offset="0xA354"/>
<Limb Name="object_geldb_00A360_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A360" Offset="0xA360"/>
<Limb Name="object_geldb_00A36C_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A36C" Offset="0xA36C"/>
<Limb Name="object_geldb_00A378_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A378" Offset="0xA378"/>
<Limb Name="object_geldb_00A384_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A384" Offset="0xA384"/>
<Limb Name="object_geldb_00A390_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A390" Offset="0xA390"/>
<Limb Name="object_geldb_00A39C_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A39C" Offset="0xA39C"/>
<Limb Name="object_geldb_00A3A8_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A3A8" Offset="0xA3A8"/>
<Limb Name="object_geldb_00A3B4_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A3B4" Offset="0xA3B4"/>
<Limb Name="object_geldb_00A3C0_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A3C0" Offset="0xA3C0"/>
<Limb Name="object_geldb_00A3CC_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A3CC" Offset="0xA3CC"/>
<Limb Name="object_geldb_00A3D8_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A3D8" Offset="0xA3D8"/>
<Limb Name="object_geldb_00A3E4_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A3E4" Offset="0xA3E4"/>
<Limb Name="object_geldb_00A3F0_Limb" LimbType="Standard" EnumName="LIMB_OBJECT_GELDB_00A3F0" Offset="0xA3F0"/>
<Limb Name="object_geldb_00A2E8_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_ROOT" Offset="0xA2E8"/>
<Limb Name="object_geldb_00A2F4_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_TORSO" Offset="0xA2F4"/>
<Limb Name="object_geldb_00A300_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_NECK" Offset="0xA300"/>
<Limb Name="object_geldb_00A30C_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_PONYTAIL" Offset="0xA30C"/>
<Limb Name="object_geldb_00A318_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_VEIL" Offset="0xA318"/>
<Limb Name="object_geldb_00A324_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_HEAD" Offset="0xA324"/>
<Limb Name="object_geldb_00A330_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_R_UPPER_ARM" Offset="0xA330"/>
<Limb Name="object_geldb_00A33C_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_R_FOREARM" Offset="0xA33C"/>
<Limb Name="object_geldb_00A348_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_R_WRIST" Offset="0xA348"/>
<Limb Name="object_geldb_00A354_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_R_HAND" Offset="0xA354"/>
<Limb Name="object_geldb_00A360_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_R_SWORD" Offset="0xA360"/>
<Limb Name="object_geldb_00A36C_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_L_UPPER_ARM" Offset="0xA36C"/>
<Limb Name="object_geldb_00A378_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_L_FOREARM" Offset="0xA378"/>
<Limb Name="object_geldb_00A384_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_L_WRIST" Offset="0xA384"/>
<Limb Name="object_geldb_00A390_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_L_HAND" Offset="0xA390"/>
<Limb Name="object_geldb_00A39C_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_L_SWORD" Offset="0xA39C"/>
<Limb Name="object_geldb_00A3A8_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_L_THIGH" Offset="0xA3A8"/>
<Limb Name="object_geldb_00A3B4_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_L_SHIN" Offset="0xA3B4"/>
<Limb Name="object_geldb_00A3C0_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_L_FOOT" Offset="0xA3C0"/>
<Limb Name="object_geldb_00A3CC_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_R_THIGH" Offset="0xA3CC"/>
<Limb Name="object_geldb_00A3D8_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_R_SHIN" Offset="0xA3D8"/>
<Limb Name="object_geldb_00A3E4_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_R_FOOT" Offset="0xA3E4"/>
<Limb Name="object_geldb_00A3F0_Limb" LimbType="Standard" EnumName="GERUDO_RED_LIMB_WAIST" Offset="0xA3F0"/>
</File>
</Root>

View File

@ -1,7 +1,7 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_boots_2" Segment="6">
<Texture Name="object_gi_boots_2_000000_Tex" Format="ia8" Width="16" Height="16" Offset="0x0"/>
<Texture Name="gGiIronBootsRivetsTex" Format="ia8" Width="16" Height="16" Offset="0x0"/>
<Array Name="gGiIronBootsVtx" Count="287" Offset="0x100">
<Vtx/>
</Array>

View File

@ -1,7 +1,7 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_butterfly" Segment="6">
<Texture Name="object_gi_butterfly_000000_Tex" Format="ia4" Width="24" Height="48" Offset="0x0"/>
<Texture Name="gGiButterflyTex" Format="ia4" Width="24" Height="48" Offset="0x0"/>
<Array Name="gGiButterflyContainerVtx" Count="65" Offset="0x240">
<Vtx/>
</Array>

View File

@ -1,6 +1,6 @@
<Root>
<File Name="object_gi_clothes" Segment="6">
<Texture Name="object_gi_clothes_000000_Tex" Format="i4" Width="64" Height="64" Offset="0x0"/>
<Texture Name="gGiTunicCollarTex" Format="i4" Width="64" Height="64" Offset="0x0"/>
<Array Name="gGiTunicCollarVtx" Count="16" Offset="0x800">
<Vtx/>
</Array>

View File

@ -2,7 +2,7 @@
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_dekupouch" Segment="6">
<Texture Name="object_gi_dekupouch_000000_Tex" Format="i4" Width="32" Height="16" Offset="0x0"/>
<Texture Name="object_gi_dekupouch_000100_Tex" Format="i4" Width="32" Height="32" Offset="0x100"/>
<Texture Name="gGiBulletBagWritingTex" Format="i4" Width="32" Height="32" Offset="0x100"/>
<Array Name="gGiBulletBagVtx" Count="111" Offset="0x300">
<Vtx/>
</Array>

View File

@ -1,8 +1,8 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_fire" Segment="6">
<Texture Name="object_gi_fire_000000_Tex" Format="i8" Width="16" Height="32" Offset="0x0"/>
<Texture Name="object_gi_fire_000200_Tex" Format="i8" Width="16" Height="32" Offset="0x200"/>
<Texture Name="gGiBlueFireFlameTex" Format="i8" Width="16" Height="32" Offset="0x0"/>
<Texture Name="gGiBlueFireFireEffectTex" Format="i8" Width="16" Height="32" Offset="0x200"/>
<Array Name="gGiBlueFireChamberstickVtx" Count="130" Offset="0x400">
<Vtx/>
</Array>

View File

@ -1,7 +1,7 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_frog" Segment="6">
<Texture Name="object_gi_frog_000000_Tex" Format="i8" Width="32" Height="32" Offset="0x0"/>
<Texture Name="gGiFrogEyeTex" Format="i8" Width="32" Height="32" Offset="0x0"/>
<Array Name="gGiFrogVtx" Count="139" Offset="0x400">
<Vtx/>
</Array>

View File

@ -1,7 +1,7 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_gerudo" Segment="6">
<Texture Name="object_gi_gerudo_000000_Tex" Format="i8" Width="32" Height="32" Offset="0x0"/>
<Texture Name="gGiGerudoCardTex" Format="i8" Width="32" Height="32" Offset="0x0"/>
<Array Name="gGiGerudoCardVtx" Count="182" Offset="0x400">
<Vtx/>
</Array>

View File

@ -1,11 +1,11 @@
<Root>
<File Name="object_gi_gerudomask" Segment="6">
<Texture Name="object_gi_gerudomask_000000_Tex" Format="rgba16" Width="256" Height="1" Offset="0x0"/>
<Texture Name="gGiGerudoMaskTLUT" Format="rgba16" Width="256" Height="1" Offset="0x0"/>
<Blob Name="object_gi_gerudomask_000200_Blob" Size="0x8" Offset="0x200"/>
<Texture Name="object_gi_gerudomask_000208_Tex" Format="ci8" Width="8" Height="8" Offset="0x208" TlutOffset="0x0"/>
<Texture Name="object_gi_gerudomask_000248_Tex" Format="ci8" Width="16" Height="16" Offset="0x248" TlutOffset="0x0"/>
<Texture Name="object_gi_gerudomask_000348_Tex" Format="ci8" Width="16" Height="16" Offset="0x348" TlutOffset="0x0"/>
<Texture Name="object_gi_gerudomask_000448_Tex" Format="ci8" Width="32" Height="32" Offset="0x448" TlutOffset="0x0"/>
<Texture Name="gGiGerudoMaskSkinTex" Format="ci8" Width="8" Height="8" Offset="0x208" TlutOffset="0x0"/>
<Texture Name="gGiGerudoMaskHairTex" Format="ci8" Width="16" Height="16" Offset="0x248" TlutOffset="0x0"/>
<Texture Name="gGiGerudoMaskLipsTex" Format="ci8" Width="16" Height="16" Offset="0x348" TlutOffset="0x0"/>
<Texture Name="gGiGerudoMaskEyeTex" Format="ci8" Width="32" Height="32" Offset="0x448" TlutOffset="0x0"/>
<Array Name="gGiGerudoMaskVtx" Count="138" Offset="0x848">
<Vtx/>
</Array>

View File

@ -1,8 +1,8 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_ghost" Segment="6">
<Texture Name="object_gi_ghost_000000_Tex" Format="i8" Width="16" Height="32" Offset="0x0"/>
<Texture Name="object_gi_ghost_000200_Tex" Format="i8" Width="16" Height="32" Offset="0x200"/>
<Texture Name="gGiGhostFlameTex" Format="i8" Width="16" Height="32" Offset="0x0"/>
<Texture Name="gGiGhostFireEffectTex" Format="i8" Width="16" Height="32" Offset="0x200"/>
<Array Name="gGiGhostContainerLidVtx" Count="56" Offset="0x400">
<Vtx/>
</Array>

View File

@ -1,7 +1,7 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_gloves" Segment="6">
<Texture Name="object_gi_gloves_000000_Tex" Format="i8" Width="64" Height="32" Offset="0x0"/>
<Texture Name="gGiGauntletsPlateTex" Format="i8" Width="64" Height="32" Offset="0x0"/>
<Array Name="gGiGauntletsVtx" Count="152" Offset="0x800">
<Vtx/>
</Array>

View File

@ -1,11 +1,11 @@
<Root>
<File Name="object_gi_golonmask" Segment="6">
<Texture Name="object_gi_golonmask_000000_Tex" Format="rgba16" Width="256" Height="1" Offset="0x0"/>
<Texture Name="gGiGoronMaskTLUT" Format="rgba16" Width="256" Height="1" Offset="0x0"/>
<Blob Name="object_gi_golonmask_000200_Blob" Size="0x8" Offset="0x200"/>
<Texture Name="object_gi_golonmask_000208_Tex" Format="ci8" Width="8" Height="8" Offset="0x208" TlutOffset="0x0"/>
<Texture Name="object_gi_golonmask_000248_Tex" Format="ci8" Width="16" Height="16" Offset="0x248" TlutOffset="0x0"/>
<Texture Name="object_gi_golonmask_000348_Tex" Format="ci8" Width="32" Height="32" Offset="0x348" TlutOffset="0x0"/>
<Texture Name="object_gi_golonmask_000748_Tex" Format="ci8" Width="64" Height="32" Offset="0x748" TlutOffset="0x0"/>
<Texture Name="gGiGoronMaskSkinTex" Format="ci8" Width="8" Height="8" Offset="0x208" TlutOffset="0x0"/>
<Texture Name="gGiGoronMaskHairTex" Format="ci8" Width="16" Height="16" Offset="0x248" TlutOffset="0x0"/>
<Texture Name="gGiGoronMaskEyeTex" Format="ci8" Width="32" Height="32" Offset="0x348" TlutOffset="0x0"/>
<Texture Name="gGiGoronMaskMouthTex" Format="ci8" Width="64" Height="32" Offset="0x748" TlutOffset="0x0"/>
<Array Name="gGiGoronMaskVtx" Count="91" Offset="0xF48">
<Vtx/>
</Array>

View File

@ -1,7 +1,7 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_hoverboots" Segment="6">
<Texture Name="object_gi_hoverboots_000000_Tex" Format="ia4" Width="48" Height="32" Offset="0x0"/>
<Texture Name="gGiHoverBootsWingTex" Format="ia4" Width="48" Height="32" Offset="0x0"/>
<Texture Name="object_gi_hoverboots_000300_Tex" Format="i4" Width="16" Height="32" Offset="0x300"/>
<Array Name="gGiHoverBootsVtx" Count="325" Offset="0x400">
<Vtx/>

View File

@ -1,7 +1,7 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_ki_tan_mask" Segment="6">
<Texture Name="object_gi_ki_tan_mask_000000_Tex" Format="ia8" Width="8" Height="32" Offset="0x0"/>
<Texture Name="gGiKeatonMaskEyeTex" Format="ia8" Width="8" Height="32" Offset="0x0"/>
<Array Name="gGiKeatonMaskVtx" Count="148" Offset="0x100">
<Vtx/>
</Array>

View File

@ -1,7 +1,7 @@
<Root>
<File Name="object_gi_letter" Segment="6">
<Texture Name="object_gi_letter_000000_Tex" Format="i8" Width="48" Height="32" Offset="0x0"/>
<Texture Name="object_gi_letter_000600_Tex" Format="ia8" Width="48" Height="32" Offset="0x600"/>
<Texture Name="gGiLetterPaperTex" Format="i8" Width="48" Height="32" Offset="0x0"/>
<Texture Name="gGiLetterWritingTex" Format="ia8" Width="48" Height="32" Offset="0x600"/>
<Array Name="gGiLetterVtx" Count="8" Offset="0xC00">
<Vtx/>
</Array>

View File

@ -1,9 +1,9 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_liquid" Segment="6">
<Texture Name="object_gi_liquid_000000_Tex" Format="ia8" Width="16" Height="32" Offset="0x0"/>
<Texture Name="object_gi_liquid_000200_Tex" Format="ia8" Width="16" Height="32" Offset="0x200"/>
<Texture Name="object_gi_liquid_000400_Tex" Format="ia8" Width="16" Height="32" Offset="0x400"/>
<Texture Name="gGiGreenPotionPatternTex" Format="ia8" Width="16" Height="32" Offset="0x0"/>
<Texture Name="gGiRedPotionPatternTex" Format="ia8" Width="16" Height="32" Offset="0x200"/>
<Texture Name="gGiBluePotionPatternTex" Format="ia8" Width="16" Height="32" Offset="0x400"/>
<Array Name="gGiPotionPotVtx" Count="176" Offset="0x600">
<Vtx/>
</Array>

View File

@ -1,7 +1,7 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_milk" Segment="6">
<Texture Name="object_gi_milk_000000_Tex" Format="i8" Width="72" Height="24" Offset="0x0"/>
<Texture Name="gGiMilkBottleLabelTex" Format="i8" Width="72" Height="24" Offset="0x0"/>
<Array Name="gGiMilkBottleContentsVtx" Count="63" Offset="0x6C0">
<Vtx/>
</Array>

View File

@ -1,8 +1,8 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_niwatori" Segment="6">
<Texture Name="object_gi_niwatori_000000_Tex" Format="i8" Width="32" Height="64" Offset="0x0"/>
<Texture Name="object_gi_niwatori_000800_Tex" Format="ia8" Width="32" Height="32" Offset="0x800"/>
<Texture Name="gGiChickenFeathersTex" Format="i8" Width="32" Height="64" Offset="0x0"/>
<Texture Name="gGiChickenEyeTex" Format="ia8" Width="32" Height="32" Offset="0x800"/>
<Array Name="gGiChickenVtx" Count="153" Offset="0xC00">
<Vtx/>
</Array>

View File

@ -1,7 +1,7 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_ocarina" Segment="6">
<Texture Name="object_gi_ocarina_000000_Tex" Format="i8" Width="16" Height="16" Offset="0x0"/>
<Texture Name="gGiOcarinaTimeHoleTex" Format="i8" Width="16" Height="16" Offset="0x0"/>
<Array Name="gGiOcarinaTimeVtx" Count="100" Offset="0x100">
<Vtx/>
</Array>

View File

@ -1,7 +1,7 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_ocarina_0" Segment="6">
<Texture Name="object_gi_ocarina_0_000000_Tex" Format="i8" Width="16" Height="16" Offset="0x0"/>
<Texture Name="gGiOcarinaFairyHoleTex" Format="i8" Width="16" Height="16" Offset="0x0"/>
<Array Name="gGiOcarinaFairyVtx" Count="105" Offset="0x100">
<Vtx/>
</Array>

View File

@ -1,7 +1,7 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_prescription" Segment="6">
<Texture Name="object_gi_prescription_000000_Tex" Format="ia8" Width="32" Height="48" Offset="0x0"/>
<Texture Name="gGiPrescriptionWritingTex" Format="ia8" Width="32" Height="48" Offset="0x0"/>
<Array Name="gGiPrescriptionVtx" Count="30" Offset="0x600">
<Vtx/>
</Array>

View File

@ -1,7 +1,7 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_rabit_mask" Segment="6">
<Texture Name="object_gi_rabit_mask_000000_Tex" Format="ia8" Width="16" Height="16" Offset="0x0"/>
<Texture Name="gGiBunnyHoodEyeTex" Format="ia8" Width="16" Height="16" Offset="0x0"/>
<Array Name="gGiBunnyHoodVtx" Count="166" Offset="0x100">
<Vtx/>
</Array>

View File

@ -1,8 +1,8 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_shield_3" Segment="6">
<Texture Name="object_gi_shield_3_000000_Tex" Format="i4" Width="64" Height="32" Offset="0x0"/>
<Texture Name="object_gi_shield_3_000400_Tex" Format="i4" Width="64" Height="64" Offset="0x400"/>
<Texture Name="gGiMirrorShieldSymbol1Tex" Format="i4" Width="64" Height="32" Offset="0x0"/>
<Texture Name="gGiMirrorShieldSymbol2Tex" Format="i4" Width="64" Height="64" Offset="0x400"/>
<Array Name="gGiMirrorShieldVtx" Count="49" Offset="0xC00">
<Vtx/>
</Array>

View File

@ -1,6 +1,6 @@
<Root>
<File Name="object_gi_soldout" Segment="6">
<Texture Name="object_gi_soldout_000000_Tex" Format="ia8" Width="32" Height="32" Offset="0x0"/>
<Texture Name="gGiSoldOutTex" Format="ia8" Width="32" Height="32" Offset="0x0"/>
<Array Name="gGiSoldOutVtx" Count="4" Offset="0x400">
<Vtx/>
</Array>

View File

@ -1,7 +1,7 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_soul" Segment="6">
<Texture Name="object_gi_soul_000000_Tex" Format="i8" Width="32" Height="32" Offset="0x0"/>
<Texture Name="gGiFairyTex" Format="i8" Width="32" Height="32" Offset="0x0"/>
<Array Name="gGiFairyContainerBaseCapVtx" Count="69" Offset="0x400">
<Vtx/>
</Array>

View File

@ -1,8 +1,8 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_ticketstone" Segment="6">
<Texture Name="object_gi_ticketstone_000000_Tex" Format="i4" Width="48" Height="24" Offset="0x0"/>
<Texture Name="object_gi_ticketstone_000240_Tex" Format="i8" Width="32" Height="24" Offset="0x240"/>
<Texture Name="gGiClaimCheckWriting1Tex" Format="i4" Width="48" Height="24" Offset="0x0"/>
<Texture Name="gGiClaimCheckWriting2Tex" Format="i8" Width="32" Height="24" Offset="0x240"/>
<Array Name="gGiClaimCheckVtx" Count="138" Offset="0x540">
<Vtx/>
</Array>

View File

@ -1,8 +1,8 @@
<Root>
<ExternalFile OutPath="assets/objects/gameplay_keep"/>
<File Name="object_gi_truth_mask" Segment="6">
<Texture Name="object_gi_truth_mask_000000_Tex" Format="i8" Width="32" Height="32" Offset="0x0"/>
<Texture Name="object_gi_truth_mask_000400_Tex" Format="i8" Width="32" Height="32" Offset="0x400"/>
<Texture Name="gGiMaskOfTruthAccent1Tex" Format="i8" Width="32" Height="32" Offset="0x0"/>
<Texture Name="gGiMaskOfTruthAccent2Tex" Format="i8" Width="32" Height="32" Offset="0x400"/>
<Array Name="gGiMaskOfTruthVtx" Count="158" Offset="0x800">
<Vtx/>
</Array>

View File

@ -1,11 +1,11 @@
<Root>
<File Name="object_gi_zoramask" Segment="6">
<Texture Name="object_gi_zoramask_000000_Tex" Format="rgba16" Width="256" Height="1" Offset="0x0"/>
<Texture Name="gGiZoraMaskTLUT" Format="rgba16" Width="256" Height="1" Offset="0x0"/>
<Blob Name="object_gi_zoramask_000200_Blob" Size="0x8" Offset="0x200"/>
<Texture Name="object_gi_zoramask_000208_Tex" Format="ci8" Width="8" Height="8" Offset="0x208" TlutOffset="0x0"/>
<Texture Name="object_gi_zoramask_000248_Tex" Format="ci8" Width="32" Height="32" Offset="0x248" TlutOffset="0x0"/>
<Texture Name="object_gi_zoramask_000648_Tex" Format="ci8" Width="32" Height="32" Offset="0x648" TlutOffset="0x0"/>
<Texture Name="object_gi_zoramask_000A48_Tex" Format="ci8" Width="32" Height="32" Offset="0xA48" TlutOffset="0x0"/>
<Texture Name="gGiZoraMaskEyeTex" Format="ci8" Width="32" Height="32" Offset="0x648" TlutOffset="0x0"/>
<Texture Name="gGiZoraMaskMouthTex" Format="ci8" Width="32" Height="32" Offset="0xA48" TlutOffset="0x0"/>
<Array Name="gGiZoraMaskVtx" Count="85" Offset="0xE48">
<Vtx/>
</Array>

View File

@ -145,31 +145,31 @@
<Texture Name="gYoungGanondorfFingernailTex" Format="rgba16" Width="4" Height="4" Offset="0x11858"/>
<!-- Young Ganondorf Limbs -->
<Limb Name="gYoungGanondorfRootLimb" LimbType="Standard" Offset="0x11878"/>
<Limb Name="gYoungGanondorfTorsoLimb" LimbType="Standard" Offset="0x11884"/>
<Limb Name="gYoungGanondorfLeftUpperArmLimb" LimbType="Standard" Offset="0x11890"/>
<Limb Name="gYoungGanondorfLeftForearmLimb" LimbType="Standard" Offset="0x1189C"/>
<Limb Name="gYoungGanondorfLeftHandLimb" LimbType="Standard" Offset="0x118A8"/>
<Limb Name="gYoungGanondorfRightUpperArmLimb" LimbType="Standard" Offset="0x118B4"/>
<Limb Name="gYoungGanondorfRightForearmLimb" LimbType="Standard" Offset="0x118C0"/>
<Limb Name="gYoungGanondorfRightHandLimb" LimbType="Standard" Offset="0x118CC"/>
<Limb Name="gYoungGanondorfJewelLimb" LimbType="Standard" Offset="0x118D8"/>
<Limb Name="gYoungGanondorfLeftUpperLipLimb" LimbType="Standard" Offset="0x118E4"/>
<Limb Name="gYoungGanondorfJawLimb" LimbType="Standard" Offset="0x118F0"/>
<Limb Name="gYoungGanondorfChinLimb" LimbType="Standard" Offset="0x118FC"/>
<Limb Name="gYoungGanondorfRightUpperLipLimb" LimbType="Standard" Offset="0x11908"/>
<Limb Name="gYoungGanondorfTeethLimb" LimbType="Standard" Offset="0x11914"/>
<Limb Name="gYoungGanondorfHeadLimb" LimbType="Standard" Offset="0x11920"/>
<Limb Name="gYoungGanondorfPelvisLimb" LimbType="Standard" Offset="0x1192C"/>
<Limb Name="gYoungGanondorfLeftThighLimb" LimbType="Standard" Offset="0x11938"/>
<Limb Name="gYoungGanondorfLeftShinLimb" LimbType="Standard" Offset="0x11944"/>
<Limb Name="gYoungGanondorfLeftFootLimb" LimbType="Standard" Offset="0x11950"/>
<Limb Name="gYoungGanondorfKnifeLimb" LimbType="Standard" Offset="0x1195C"/>
<Limb Name="gYoungGanondorfRightThighLimb" LimbType="Standard" Offset="0x11968"/>
<Limb Name="gYoungGanondorfRightShinLimb" LimbType="Standard" Offset="0x11974"/>
<Limb Name="gYoungGanondorfRightFootLimb" LimbType="Standard" Offset="0x11980"/>
<Limb Name="gYoungGanondorfRootLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_ROOT" Offset="0x11878"/>
<Limb Name="gYoungGanondorfTorsoLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_TORSO" Offset="0x11884"/>
<Limb Name="gYoungGanondorfLeftUpperArmLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_LEFT_UPPER_ARM" Offset="0x11890"/>
<Limb Name="gYoungGanondorfLeftForearmLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_LEFT_FOREARM" Offset="0x1189C"/>
<Limb Name="gYoungGanondorfLeftHandLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_LEFT_HAND" Offset="0x118A8"/>
<Limb Name="gYoungGanondorfRightUpperArmLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_RIGHT_UPPER_ARM" Offset="0x118B4"/>
<Limb Name="gYoungGanondorfRightForearmLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_RIGHT_FOREARM" Offset="0x118C0"/>
<Limb Name="gYoungGanondorfRightHandLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_RIGHT_HAND" Offset="0x118CC"/>
<Limb Name="gYoungGanondorfJewelLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_JEWEL" Offset="0x118D8"/>
<Limb Name="gYoungGanondorfLeftUpperLipLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_LEFT_UPPER_LIP" Offset="0x118E4"/>
<Limb Name="gYoungGanondorfJawLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_JAW" Offset="0x118F0"/>
<Limb Name="gYoungGanondorfChinLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_CHIN" Offset="0x118FC"/>
<Limb Name="gYoungGanondorfRightUpperLipLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_RIGHT_UPPER_LIP" Offset="0x11908"/>
<Limb Name="gYoungGanondorfTeethLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_TEETH" Offset="0x11914"/>
<Limb Name="gYoungGanondorfHeadLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_HEAD" Offset="0x11920"/>
<Limb Name="gYoungGanondorfPelvisLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_PELVIS" Offset="0x1192C"/>
<Limb Name="gYoungGanondorfLeftThighLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_LEFT_THIGH" Offset="0x11938"/>
<Limb Name="gYoungGanondorfLeftShinLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_LEFT_SHIN" Offset="0x11944"/>
<Limb Name="gYoungGanondorfLeftFootLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_LEFT_FOOT" Offset="0x11950"/>
<Limb Name="gYoungGanondorfKnifeLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_KNIFE" Offset="0x1195C"/>
<Limb Name="gYoungGanondorfRightThighLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_RIGHT_THIGH" Offset="0x11968"/>
<Limb Name="gYoungGanondorfRightShinLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_RIGHT_SHIN" Offset="0x11974"/>
<Limb Name="gYoungGanondorfRightFootLimb" LimbType="Standard" EnumName="YOUNG_GANONDORF_LIMB_RIGHT_FOOT" Offset="0x11980"/>
<!-- Young Ganondorf Skeleton -->
<Skeleton Name="gYoungGanondorfSkel" Type="Flex" LimbType="Standard" Offset="0x119E8"/>
<Skeleton Name="gYoungGanondorfSkel" Type="Flex" LimbType="Standard" LimbNone="YOUNG_GANONDORF_LIMB_NONE" LimbMax="YOUNG_GANONDORF_LIMB_MAX" EnumName="YoungGanondorfLimb" Offset="0x119E8"/>
</File>
</Root>

View File

@ -7,29 +7,29 @@
<Animation Name="gFlagpoleFlapAnim" Offset="0x444"/>
<!-- Flagpole Skeleton -->
<Skeleton Name="gFlagpoleSkel" Type="Normal" LimbType="Standard" Offset="0x2FD0"/>
<Skeleton Name="gFlagpoleSkel" Type="Normal" LimbType="Standard" LimbNone="FLAGPOLE_LIMB_NONE" LimbMax="FLAGPOLE_LIMB_MAX" EnumName="FlagpoleLimb" Offset="0x2FD0"/>
<!-- Flagpole Limbs -->
<Limb Name="gFlagpolePoleBaseLimb" LimbType="Standard" Offset="0x2E90"/>
<Limb Name="gFlagpolePoleLimb" LimbType="Standard" Offset="0x2E9C"/>
<Limb Name="gFlagpoleFlag1BaseLimb" LimbType="Standard" Offset="0x2EA8"/>
<Limb Name="gFlagpoleFlag1HoistEndBaseLimb" LimbType="Standard" Offset="0x2EB4"/>
<Limb Name="gFlagpoleFlag1HoistMidBaseLimb" LimbType="Standard" Offset="0x2EC0"/>
<Limb Name="gFlagpoleFlag1FlyMidBaseLimb" LimbType="Standard" Offset="0x2ECC"/>
<Limb Name="gFlagpoleFlag1FlyEndBaseLimb" LimbType="Standard" Offset="0x2ED8"/>
<Limb Name="gFlagpoleFlag1FlyEndLimb" LimbType="Standard" Offset="0x2EE4"/>
<Limb Name="gFlagpoleFlag1FlyMidLimb" LimbType="Standard" Offset="0x2EF0"/>
<Limb Name="gFlagpoleFlag1HoistMidLimb" LimbType="Standard" Offset="0x2EFC"/>
<Limb Name="gFlagpoleFlag1HoistEndLimb" LimbType="Standard" Offset="0x2F08"/>
<Limb Name="gFlagpoleFlag2BaseLimb" LimbType="Standard" Offset="0x2F14"/>
<Limb Name="gFlagpoleFlag2HoistEndBaseLimb" LimbType="Standard" Offset="0x2F20"/>
<Limb Name="gFlagpoleFlag2HoistMidBaseLimb" LimbType="Standard" Offset="0x2F2C"/>
<Limb Name="gFlagpoleFlag2FlyMidBaseLimb" LimbType="Standard" Offset="0x2F38"/>
<Limb Name="gFlagpoleFlag2FlyEndBaseLimb" LimbType="Standard" Offset="0x2F44"/>
<Limb Name="gFlagpoleFlag2FlyEndLimb" LimbType="Standard" Offset="0x2F50"/>
<Limb Name="gFlagpoleFlag2FlyMidLimb" LimbType="Standard" Offset="0x2F5C"/>
<Limb Name="gFlagpoleFlag2HoistMidLimb" LimbType="Standard" Offset="0x2F68"/>
<Limb Name="gFlagpoleFlag2HoistEndLimb" LimbType="Standard" Offset="0x2F74"/>
<Limb Name="gFlagpolePoleBaseLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_POLE_BASE" Offset="0x2E90"/>
<Limb Name="gFlagpolePoleLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_POLE" Offset="0x2E9C"/>
<Limb Name="gFlagpoleFlag1BaseLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_1_BASE" Offset="0x2EA8"/>
<Limb Name="gFlagpoleFlag1HoistEndBaseLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_1_HOIST_END_BASE" Offset="0x2EB4"/>
<Limb Name="gFlagpoleFlag1HoistMidBaseLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_1_HOIST_MID_BASE" Offset="0x2EC0"/>
<Limb Name="gFlagpoleFlag1FlyMidBaseLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_1_FLY_MID_BASE" Offset="0x2ECC"/>
<Limb Name="gFlagpoleFlag1FlyEndBaseLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_1_FLY_END_BASE" Offset="0x2ED8"/>
<Limb Name="gFlagpoleFlag1FlyEndLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_1_FLY_END" Offset="0x2EE4"/>
<Limb Name="gFlagpoleFlag1FlyMidLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_1_FLY_MID" Offset="0x2EF0"/>
<Limb Name="gFlagpoleFlag1HoistMidLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_1_HOIST_MID" Offset="0x2EFC"/>
<Limb Name="gFlagpoleFlag1HoistEndLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_1_HOIST_END" Offset="0x2F08"/>
<Limb Name="gFlagpoleFlag2BaseLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_2_BASE" Offset="0x2F14"/>
<Limb Name="gFlagpoleFlag2HoistEndBaseLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_2_HOIST_END_BASE" Offset="0x2F20"/>
<Limb Name="gFlagpoleFlag2HoistMidBaseLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_2_HOIST_MID_BASE" Offset="0x2F2C"/>
<Limb Name="gFlagpoleFlag2FlyMidBaseLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_2_FLY_MID_BASE" Offset="0x2F38"/>
<Limb Name="gFlagpoleFlag2FlyEndBaseLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_2_FLY_END_BASE" Offset="0x2F44"/>
<Limb Name="gFlagpoleFlag2FlyEndLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_2_FLY_END" Offset="0x2F50"/>
<Limb Name="gFlagpoleFlag2FlyMidLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_2_FLY_MID" Offset="0x2F5C"/>
<Limb Name="gFlagpoleFlag2HoistMidLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_2_HOIST_MID" Offset="0x2F68"/>
<Limb Name="gFlagpoleFlag2HoistEndLimb" LimbType="Standard" EnumName="FLAGPOLE_LIMB_FLAG_2_HOIST_END" Offset="0x2F74"/>
<!-- Flagpole Vertices -->
<Array Name="gFlagpolePoleVtx" Count="39" Offset="0x2460">

View File

@ -107,23 +107,23 @@
<DList Name="gImpaRightFootDL" Offset="0xE5D0"/>
<DList Name="gImpaRightHandDL" Offset="0xE908"/>
<DList Name="gImpaHandPointingDL" Offset="0xEDE8"/>
<Limb Name="gImpaRootLimb" LimbType="Standard" Offset="0xF688"/>
<Limb Name="gImpaTorsoLimb" LimbType="Standard" Offset="0xF694"/>
<Limb Name="gImpaLeftThighLimb" LimbType="Standard" Offset="0xF6A0"/>
<Limb Name="gImpaLeftLegLimb" LimbType="Standard" Offset="0xF6AC"/>
<Limb Name="gImpaLeftFootLimb" LimbType="Standard" Offset="0xF6B8"/>
<Limb Name="gImpaRightThighLimb" LimbType="Standard" Offset="0xF6C4"/>
<Limb Name="gImpaRightLegLimb" LimbType="Standard" Offset="0xF6D0"/>
<Limb Name="gImpaRightFootLimb" LimbType="Standard" Offset="0xF6DC"/>
<Limb Name="gImpaChestLimb" LimbType="Standard" Offset="0xF6E8"/>
<Limb Name="gImpaLeftShoulderLimb" LimbType="Standard" Offset="0xF6F4"/>
<Limb Name="gImpaLeftArmLimb" LimbType="Standard" Offset="0xF700"/>
<Limb Name="gImpaLeftHandLimb" LimbType="Standard" Offset="0xF70C"/>
<Limb Name="gImpaRightShoulderLimb" LimbType="Standard" Offset="0xF718"/>
<Limb Name="gImpaRightArmLimb" LimbType="Standard" Offset="0xF724"/>
<Limb Name="gImpaRightHandLimb" LimbType="Standard" Offset="0xF730"/>
<Limb Name="gImpaHeadLimb" LimbType="Standard" Offset="0xF73C"/>
<Skeleton Name="gImpaSkel" Type="Flex" LimbType="Standard" Offset="0xF788"/>
<Limb Name="gImpaRootLimb" LimbType="Standard" EnumName="IMPA_LIMB_ROOT" Offset="0xF688"/>
<Limb Name="gImpaTorsoLimb" LimbType="Standard" EnumName="IMPA_LIMB_TORSO" Offset="0xF694"/>
<Limb Name="gImpaLeftThighLimb" LimbType="Standard" EnumName="IMPA_LIMB_LEFT_THIGH" Offset="0xF6A0"/>
<Limb Name="gImpaLeftLegLimb" LimbType="Standard" EnumName="IMPA_LIMB_LEFT_LEG" Offset="0xF6AC"/>
<Limb Name="gImpaLeftFootLimb" LimbType="Standard" EnumName="IMPA_LIMB_LEFT_FOOT" Offset="0xF6B8"/>
<Limb Name="gImpaRightThighLimb" LimbType="Standard" EnumName="IMPA_LIMB_RIGHT_THIGH" Offset="0xF6C4"/>
<Limb Name="gImpaRightLegLimb" LimbType="Standard" EnumName="IMPA_LIMB_RIGHT_LEG" Offset="0xF6D0"/>
<Limb Name="gImpaRightFootLimb" LimbType="Standard" EnumName="IMPA_LIMB_RIGHT_FOOT" Offset="0xF6DC"/>
<Limb Name="gImpaChestLimb" LimbType="Standard" EnumName="IMPA_LIMB_CHEST" Offset="0xF6E8"/>
<Limb Name="gImpaLeftShoulderLimb" LimbType="Standard" EnumName="IMPA_LIMB_LEFT_SHOULDER" Offset="0xF6F4"/>
<Limb Name="gImpaLeftArmLimb" LimbType="Standard" EnumName="IMPA_LIMB_LEFT_ARM" Offset="0xF700"/>
<Limb Name="gImpaLeftHandLimb" LimbType="Standard" EnumName="IMPA_LIMB_LEFT_HAND" Offset="0xF70C"/>
<Limb Name="gImpaRightShoulderLimb" LimbType="Standard" EnumName="IMPA_LIMB_RIGHT_SHOULDER" Offset="0xF718"/>
<Limb Name="gImpaRightArmLimb" LimbType="Standard" EnumName="IMPA_LIMB_RIGHT_ARM" Offset="0xF724"/>
<Limb Name="gImpaRightHandLimb" LimbType="Standard" EnumName="IMPA_LIMB_RIGHT_HAND" Offset="0xF730"/>
<Limb Name="gImpaHeadLimb" LimbType="Standard" EnumName="IMPA_LIMB_HEAD" Offset="0xF73C"/>
<Skeleton Name="gImpaSkel" Type="Flex" LimbType="Standard" LimbNone="IMPA_LIMB_NONE" LimbMax="IMPA_LIMB_MAX" EnumName="ImpaLimb" Offset="0xF788"/>
<Animation Name="object_im_Anim_00FB10" Offset="0xFB10"/>
<Animation Name="object_im_Anim_0101C8" Offset="0x101C8"/>
<Animation Name="gImpaStartWhistlingAnim" Offset="0x10EE0"/>

View File

@ -216,27 +216,27 @@
<DList Name="gIngoAdultEraLeftLegDL" Offset="0x137C0"/>
<DList Name="gIngoAdultEraLeftFootDL" Offset="0x13910"/>
<Limb Name="gIngoRootLimb" LimbType="Standard" Offset="0x13A58"/>
<Limb Name="gIngoLeftThighLimb" LimbType="Standard" Offset="0x13A64"/>
<Limb Name="gIngoLeftLegLimb" LimbType="Standard" Offset="0x13A70"/>
<Limb Name="gIngoLeftFootLimb" LimbType="Standard" Offset="0x13A7C"/>
<Limb Name="gIngoRightThighLimb" LimbType="Standard" Offset="0x13A88"/>
<Limb Name="gIngoRightLegLimb" LimbType="Standard" Offset="0x13A94"/>
<Limb Name="gIngoRightFootLimb" LimbType="Standard" Offset="0x13AA0"/>
<Limb Name="gIngoTorsoLimb" LimbType="Standard" Offset="0x13AAC"/>
<Limb Name="gIngoChestLimb" LimbType="Standard" Offset="0x13AB8"/>
<Limb Name="gIngoLeftShoulderLimb" LimbType="Standard" Offset="0x13AC4"/>
<Limb Name="gIngoLeftArmLimb" LimbType="Standard" Offset="0x13AD0"/>
<Limb Name="gIngoLeftHandLimb" LimbType="Standard" Offset="0x13ADC"/>
<Limb Name="gIngoRightShoulderLimb" LimbType="Standard" Offset="0x13AE8"/>
<Limb Name="gIngoRightArmLimb" LimbType="Standard" Offset="0x13AF4"/>
<Limb Name="gIngoRightHandLimb" LimbType="Standard" Offset="0x13B00"/>
<Limb Name="gIngoHeadLimb" LimbType="Standard" Offset="0x13B0C"/>
<Limb Name="gIngoLeftEyebrowLimb" LimbType="Standard" Offset="0x13B18"/>
<Limb Name="gIngoRightEyebrowLimb" LimbType="Standard" Offset="0x13B24"/>
<Limb Name="gIngoMustacheLimb" LimbType="Standard" Offset="0x13B30"/>
<Limb Name="gIngoRootLimb" LimbType="Standard" EnumName="INGO_LIMB_ROOT" Offset="0x13A58"/>
<Limb Name="gIngoLeftThighLimb" LimbType="Standard" EnumName="INGO_LIMB_LEFT_THIGH" Offset="0x13A64"/>
<Limb Name="gIngoLeftLegLimb" LimbType="Standard" EnumName="INGO_LIMB_LEFT_LEG" Offset="0x13A70"/>
<Limb Name="gIngoLeftFootLimb" LimbType="Standard" EnumName="INGO_LIMB_LEFT_FOOT" Offset="0x13A7C"/>
<Limb Name="gIngoRightThighLimb" LimbType="Standard" EnumName="INGO_LIMB_RIGHT_THIGH" Offset="0x13A88"/>
<Limb Name="gIngoRightLegLimb" LimbType="Standard" EnumName="INGO_LIMB_RIGHT_LEG" Offset="0x13A94"/>
<Limb Name="gIngoRightFootLimb" LimbType="Standard" EnumName="INGO_LIMB_RIGHT_FOOT" Offset="0x13AA0"/>
<Limb Name="gIngoTorsoLimb" LimbType="Standard" EnumName="INGO_LIMB_TORSO" Offset="0x13AAC"/>
<Limb Name="gIngoChestLimb" LimbType="Standard" EnumName="INGO_LIMB_CHEST" Offset="0x13AB8"/>
<Limb Name="gIngoLeftShoulderLimb" LimbType="Standard" EnumName="INGO_LIMB_LEFT_SHOULDER" Offset="0x13AC4"/>
<Limb Name="gIngoLeftArmLimb" LimbType="Standard" EnumName="INGO_LIMB_LEFT_ARM" Offset="0x13AD0"/>
<Limb Name="gIngoLeftHandLimb" LimbType="Standard" EnumName="INGO_LIMB_LEFT_HAND" Offset="0x13ADC"/>
<Limb Name="gIngoRightShoulderLimb" LimbType="Standard" EnumName="INGO_LIMB_RIGHT_SHOULDER" Offset="0x13AE8"/>
<Limb Name="gIngoRightArmLimb" LimbType="Standard" EnumName="INGO_LIMB_RIGHT_ARM" Offset="0x13AF4"/>
<Limb Name="gIngoRightHandLimb" LimbType="Standard" EnumName="INGO_LIMB_RIGHT_HAND" Offset="0x13B00"/>
<Limb Name="gIngoHeadLimb" LimbType="Standard" EnumName="INGO_LIMB_HEAD" Offset="0x13B0C"/>
<Limb Name="gIngoLeftEyebrowLimb" LimbType="Standard" EnumName="INGO_LIMB_LEFT_EYEBROW" Offset="0x13B18"/>
<Limb Name="gIngoRightEyebrowLimb" LimbType="Standard" EnumName="INGO_LIMB_RIGHT_EYEBROW" Offset="0x13B24"/>
<Limb Name="gIngoMustacheLimb" LimbType="Standard" EnumName="INGO_LIMB_MUSTACHE" Offset="0x13B30"/>
<Skeleton Name="gIngoSkel" Type="Flex" LimbType="Standard" Offset="0x13B88"/>
<Skeleton Name="gIngoSkel" Type="Flex" LimbType="Standard" LimbNone="INGO_LIMB_NONE" LimbMax="INGO_LIMB_MAX" EnumName="IngoLimb" Offset="0x13B88"/>
<Animation Name="object_in_Anim_013C6C" Offset="0x13C6C"/>
<Animation Name="object_in_Anim_013D60" Offset="0x13D60"/>

View File

@ -99,25 +99,25 @@
<DList Name="gMalonAdultLeftLegDL" Offset="0x8A60"/>
<DList Name="gMalonAdultLeftFootDL" Offset="0x8B50"/>
<Skeleton Name="gMalonAdultSkel" Type="Flex" LimbType="Standard" Offset="0x8D90"/>
<Limb Name="gMalonAdultRootLimb" LimbType="Standard" Offset="0x8C70"/>
<Limb Name="gMalonAdultLowerControlLimb" LimbType="Standard" Offset="0x8C7C"/>
<Limb Name="gMalonAdultLeftThighLimb" LimbType="Standard" Offset="0x8C88"/>
<Limb Name="gMalonAdultLeftLegLimb" LimbType="Standard" Offset="0x8C94"/>
<Limb Name="gMalonAdultLeftFootLimb" LimbType="Standard" Offset="0x8CA0"/>
<Limb Name="gMalonAdultRightThighLimb" LimbType="Standard" Offset="0x8CAC"/>
<Limb Name="gMalonAdultRightLegLimb" LimbType="Standard" Offset="0x8CB8"/>
<Limb Name="gMalonAdultRightFootLimb" LimbType="Standard" Offset="0x8CC4"/>
<Limb Name="gMalonAdultTorsoLimb" LimbType="Standard" Offset="0x8CD0"/>
<Limb Name="gMalonAdultDressLimb" LimbType="Standard" Offset="0x8CDC"/>
<Limb Name="gMalonAdultChestAndNeckLimb" LimbType="Standard" Offset="0x8CE8"/>
<Limb Name="gMalonAdultLeftShoulderLimb" LimbType="Standard" Offset="0x8CF4"/>
<Limb Name="gMalonAdultLeftArmLimb" LimbType="Standard" Offset="0x8D00"/>
<Limb Name="gMalonAdultLeftHandLimb" LimbType="Standard" Offset="0x8D0C"/>
<Limb Name="gMalonAdultRightShoulderLimb" LimbType="Standard" Offset="0x8D18"/>
<Limb Name="gMalonAdultRightArmLimb" LimbType="Standard" Offset="0x8D24"/>
<Limb Name="gMalonAdultRightHandLimb" LimbType="Standard" Offset="0x8D30"/>
<Limb Name="gMalonAdultHeadLimb" LimbType="Standard" Offset="0x8D3C"/>
<Skeleton Name="gMalonAdultSkel" Type="Flex" LimbType="Standard" LimbNone="MALON_ADULT_LIMB_NONE" LimbMax="MALON_ADULT_LIMB_MAX" EnumName="MalonAdultLimb" Offset="0x8D90"/>
<Limb Name="gMalonAdultRootLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_ROOT" Offset="0x8C70"/>
<Limb Name="gMalonAdultLowerControlLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_LOWER_CONTROL" Offset="0x8C7C"/>
<Limb Name="gMalonAdultLeftThighLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_LEFT_THIGH" Offset="0x8C88"/>
<Limb Name="gMalonAdultLeftLegLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_LEFT_LEG" Offset="0x8C94"/>
<Limb Name="gMalonAdultLeftFootLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_LEFT_FOOT" Offset="0x8CA0"/>
<Limb Name="gMalonAdultRightThighLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_RIGHT_THIGH" Offset="0x8CAC"/>
<Limb Name="gMalonAdultRightLegLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_RIGHT_LEG" Offset="0x8CB8"/>
<Limb Name="gMalonAdultRightFootLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_RIGHT_FOOT" Offset="0x8CC4"/>
<Limb Name="gMalonAdultTorsoLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_TORSO" Offset="0x8CD0"/>
<Limb Name="gMalonAdultDressLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_DRESS" Offset="0x8CDC"/>
<Limb Name="gMalonAdultChestAndNeckLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_CHEST_AND_NECK" Offset="0x8CE8"/>
<Limb Name="gMalonAdultLeftShoulderLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_LEFT_SHOULDER" Offset="0x8CF4"/>
<Limb Name="gMalonAdultLeftArmLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_LEFT_ARM" Offset="0x8D00"/>
<Limb Name="gMalonAdultLeftHandLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_LEFT_HAND" Offset="0x8D0C"/>
<Limb Name="gMalonAdultRightShoulderLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_RIGHT_SHOULDER" Offset="0x8D18"/>
<Limb Name="gMalonAdultRightArmLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_RIGHT_ARM" Offset="0x8D24"/>
<Limb Name="gMalonAdultRightHandLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_RIGHT_HAND" Offset="0x8D30"/>
<Limb Name="gMalonAdultHeadLimb" LimbType="Standard" EnumName="MALON_ADULT_LIMB_HEAD" Offset="0x8D3C"/>
<Animation Name="gMalonAdultIdleAnim" Offset="0x7D4"/>
<Animation Name="gMalonAdultSingToIdleAnim" Offset="0x92F0"/> <!-- Unused -->
<Animation Name="gMalonAdultStandStillAnim" Offset="0x93BC"/>

View File

@ -1,25 +1,25 @@
<Root>
<File Name="object_md" Segment="6">
<!-- Mido Skeleton -->
<Skeleton Name="gMidoSkel" Type="Flex" LimbType="Standard" Offset="0x7FB8"/>
<Skeleton Name="gMidoSkel" Type="Flex" LimbType="Standard" LimbNone="MIDO_LIMB_NONE" LimbMax="MIDO_LIMB_MAX" EnumName="MidoLimb" Offset="0x7FB8"/>
<!-- Mido Limbs -->
<Limb Name="gMidoRootLimb" LimbType="Standard" Offset="0x7EB8"/>
<Limb Name="gMidoWaistLimb" LimbType="Standard" Offset="0x7EC4"/>
<Limb Name="gMidoLeftThighLimb" LimbType="Standard" Offset="0x7ED0"/>
<Limb Name="gMidoLeftLegLimb" LimbType="Standard" Offset="0x7EDC"/>
<Limb Name="gMidoLeftFootLimb" LimbType="Standard" Offset="0x7EE8"/>
<Limb Name="gMidoRightThighLimb" LimbType="Standard" Offset="0x7EF4"/>
<Limb Name="gMidoRightLegLimb" LimbType="Standard" Offset="0x7F00"/>
<Limb Name="gMidoRightFootLimb" LimbType="Standard" Offset="0x7F0C"/>
<Limb Name="gMidoTorsoLimb" LimbType="Standard" Offset="0x7F18"/>
<Limb Name="gMidoLeftUpperArmLimb" LimbType="Standard" Offset="0x7F24"/>
<Limb Name="gMidoLeftForearmLimb" LimbType="Standard" Offset="0x7F30"/>
<Limb Name="gMidoLeftHandLimb" LimbType="Standard" Offset="0x7F3C"/>
<Limb Name="gMidoRightUpperArmLimb" LimbType="Standard" Offset="0x7F48"/>
<Limb Name="gMidoRightForearmLimb" LimbType="Standard" Offset="0x7F54"/>
<Limb Name="gMidoRightHandLimb" LimbType="Standard" Offset="0x7F60"/>
<Limb Name="gMidoHeadLimb" LimbType="Standard" Offset="0x7F6C"/>
<Limb Name="gMidoRootLimb" LimbType="Standard" EnumName="MIDO_LIMB_ROOT" Offset="0x7EB8"/>
<Limb Name="gMidoWaistLimb" LimbType="Standard" EnumName="MIDO_LIMB_WAIST" Offset="0x7EC4"/>
<Limb Name="gMidoLeftThighLimb" LimbType="Standard" EnumName="MIDO_LIMB_LEFT_THIGH" Offset="0x7ED0"/>
<Limb Name="gMidoLeftLegLimb" LimbType="Standard" EnumName="MIDO_LIMB_LEFT_LEG" Offset="0x7EDC"/>
<Limb Name="gMidoLeftFootLimb" LimbType="Standard" EnumName="MIDO_LIMB_LEFT_FOOT" Offset="0x7EE8"/>
<Limb Name="gMidoRightThighLimb" LimbType="Standard" EnumName="MIDO_LIMB_RIGHT_THIGH" Offset="0x7EF4"/>
<Limb Name="gMidoRightLegLimb" LimbType="Standard" EnumName="MIDO_LIMB_RIGHT_LEG" Offset="0x7F00"/>
<Limb Name="gMidoRightFootLimb" LimbType="Standard" EnumName="MIDO_LIMB_RIGHT_FOOT" Offset="0x7F0C"/>
<Limb Name="gMidoTorsoLimb" LimbType="Standard" EnumName="MIDO_LIMB_TORSO" Offset="0x7F18"/>
<Limb Name="gMidoLeftUpperArmLimb" LimbType="Standard" EnumName="MIDO_LIMB_LEFT_UPPER_ARM" Offset="0x7F24"/>
<Limb Name="gMidoLeftForearmLimb" LimbType="Standard" EnumName="MIDO_LIMB_LEFT_FOREARM" Offset="0x7F30"/>
<Limb Name="gMidoLeftHandLimb" LimbType="Standard" EnumName="MIDO_LIMB_LEFT_HAND" Offset="0x7F3C"/>
<Limb Name="gMidoRightUpperArmLimb" LimbType="Standard" EnumName="MIDO_LIMB_RIGHT_UPPER_ARM" Offset="0x7F48"/>
<Limb Name="gMidoRightForearmLimb" LimbType="Standard" EnumName="MIDO_LIMB_RIGHT_FOREARM" Offset="0x7F54"/>
<Limb Name="gMidoRightHandLimb" LimbType="Standard" EnumName="MIDO_LIMB_RIGHT_HAND" Offset="0x7F60"/>
<Limb Name="gMidoHeadLimb" LimbType="Standard" EnumName="MIDO_LIMB_HEAD" Offset="0x7F6C"/>
<!-- Mido Limb Vertices -->
<Array Name="gMidoLeftHandVtx" Count="48" Offset="0x15E0">

View File

@ -2,27 +2,27 @@
<File Name="object_nb" Segment="6">
<!-- Nabooru Skeleton -->
<Skeleton Name="gNabooruSkel" Type="Flex" LimbType="Standard" Offset="0x181C8"/>
<Skeleton Name="gNabooruSkel" Type="Flex" LimbType="Standard" LimbNone="NABOORU_LIMB_NONE" LimbMax="NABOORU_LIMB_MAX" EnumName="NabooruLimb" Offset="0x181C8"/>
<!-- Nabooru Limbs -->
<Limb Name="gNabooruRootLimb" LimbType="Standard" Offset="0x180A8"/>
<Limb Name="gNabooruLeftThighLimb" LimbType="Standard" Offset="0x180B4"/>
<Limb Name="gNabooruLeftShinLimb" LimbType="Standard" Offset="0x180C0"/>
<Limb Name="gNabooruLeftFootLimb" LimbType="Standard" Offset="0x180CC"/>
<Limb Name="gNabooruRightThighLimb" LimbType="Standard" Offset="0x180D8"/>
<Limb Name="gNabooruRightShinLimb" LimbType="Standard" Offset="0x180E4"/>
<Limb Name="gNabooruRightFootLimb" LimbType="Standard" Offset="0x180F0"/>
<Limb Name="gNabooruTorsoLimb" LimbType="Standard" Offset="0x180FC"/>
<Limb Name="gNabooruLeftUpperArmLimb" LimbType="Standard" Offset="0x18108"/>
<Limb Name="gNabooruLeftForearmLimb" LimbType="Standard" Offset="0x18114"/>
<Limb Name="gNabooruLeftHandLimb" LimbType="Standard" Offset="0x18120"/>
<Limb Name="gNabooruRightUpperArmLimb" LimbType="Standard" Offset="0x1812C"/>
<Limb Name="gNabooruRightForearmLimb" LimbType="Standard" Offset="0x18138"/>
<Limb Name="gNabooruRightHandLimb" LimbType="Standard" Offset="0x18144"/>
<Limb Name="gNabooruHeadLimb" LimbType="Standard" Offset="0x18150"/>
<Limb Name="gNabooruBlankLimb" LimbType="Standard" Offset="0x1815C"/>
<Limb Name="gNabooruPonytailLimb" LimbType="Standard" Offset="0x18168"/>
<Limb Name="gNabooruWaistLimb" LimbType="Standard" Offset="0x18174"/>
<Limb Name="gNabooruRootLimb" LimbType="Standard" EnumName="NABOORU_LIMB_ROOT" Offset="0x180A8"/>
<Limb Name="gNabooruLeftThighLimb" LimbType="Standard" EnumName="NABOORU_LIMB_L_THIGH" Offset="0x180B4"/>
<Limb Name="gNabooruLeftShinLimb" LimbType="Standard" EnumName="NABOORU_LIMB_L_SHIN" Offset="0x180C0"/>
<Limb Name="gNabooruLeftFootLimb" LimbType="Standard" EnumName="NABOORU_LIMB_L_FOOT" Offset="0x180CC"/>
<Limb Name="gNabooruRightThighLimb" LimbType="Standard" EnumName="NABOORU_LIMB_R_THIGH" Offset="0x180D8"/>
<Limb Name="gNabooruRightShinLimb" LimbType="Standard" EnumName="NABOORU_LIMB_R_SHIN" Offset="0x180E4"/>
<Limb Name="gNabooruRightFootLimb" LimbType="Standard" EnumName="NABOORU_LIMB_R_FOOT" Offset="0x180F0"/>
<Limb Name="gNabooruTorsoLimb" LimbType="Standard" EnumName="NABOORU_LIMB_TORSO" Offset="0x180FC"/>
<Limb Name="gNabooruLeftUpperArmLimb" LimbType="Standard" EnumName="NABOORU_LIMB_L_UPPER_ARM" Offset="0x18108"/>
<Limb Name="gNabooruLeftForearmLimb" LimbType="Standard" EnumName="NABOORU_LIMB_L_FOREARM" Offset="0x18114"/>
<Limb Name="gNabooruLeftHandLimb" LimbType="Standard" EnumName="NABOORU_LIMB_L_HAND" Offset="0x18120"/>
<Limb Name="gNabooruRightUpperArmLimb" LimbType="Standard" EnumName="NABOORU_LIMB_R_UPPER_ARM" Offset="0x1812C"/>
<Limb Name="gNabooruRightForearmLimb" LimbType="Standard" EnumName="NABOORU_LIMB_R_FOREARM" Offset="0x18138"/>
<Limb Name="gNabooruRightHandLimb" LimbType="Standard" EnumName="NABOORU_LIMB_R_HAND" Offset="0x18144"/>
<Limb Name="gNabooruHeadLimb" LimbType="Standard" EnumName="NABOORU_LIMB_HEAD" Offset="0x18150"/>
<Limb Name="gNabooruBlankLimb" LimbType="Standard" EnumName="NABOORU_LIMB_BLANK" Offset="0x1815C"/>
<Limb Name="gNabooruPonytailLimb" LimbType="Standard" EnumName="NABOORU_LIMB_PONYTAIL" Offset="0x18168"/>
<Limb Name="gNabooruWaistLimb" LimbType="Standard" EnumName="NABOORU_LIMB_WAIST" Offset="0x18174"/>
<!-- Nabooru Limb Vertices -->
<Array Name="gNabooruHeadMouthClosedVtx" Count="297" Offset="0xDD68">

View File

@ -116,67 +116,67 @@
<Texture Name="gStalfosTrousersTopTex" Format="rgba16" Width="8" Height="8" Offset="0x77E8"/>
<!-- Stalfos limbs and skeleton -->
<Limb Name="gStalfosRootLimb" LimbType="Standard" Offset="0x7868"/>
<Limb Name="gStalfosUpperBodyRootLimb" LimbType="Standard" Offset="0x7874"/>
<Limb Name="gStalfosLowerCoreRootLimb" LimbType="Standard" Offset="0x7880"/>
<Limb Name="gStalfosUpperCoreRootLimb" LimbType="Standard" Offset="0x788C"/>
<Limb Name="gStalfosLowerNeckRootLimb" LimbType="Standard" Offset="0x7898"/>
<Limb Name="gStalfosSkullRootLimb" LimbType="Standard" Offset="0x78A4"/>
<Limb Name="gStalfosLimb7Limb" LimbType="Standard" Offset="0x78B0"/>
<Limb Name="gStalfosLimb8Limb" LimbType="Standard" Offset="0x78BC"/>
<Limb Name="gStalfosJawRootLimb" LimbType="Standard" Offset="0x78C8"/>
<Limb Name="gStalfosJawLimb" LimbType="Standard" Offset="0x78D4"/>
<Limb Name="gStalfosSkullLimb" LimbType="Standard" Offset="0x78E0"/>
<Limb Name="gStalfosUpperNeckLimb" LimbType="Standard" Offset="0x78EC"/>
<Limb Name="gStalfosLowerNeckLimb" LimbType="Standard" Offset="0x78F8"/>
<Limb Name="gStalfosUpperCoreLimb" LimbType="Standard" Offset="0x7904"/>
<Limb Name="gStalfosChestLimb" LimbType="Standard" Offset="0x7910"/>
<Limb Name="gStalfosRightShoulderRootLimb" LimbType="Standard" Offset="0x791C"/>
<Limb Name="gStalfosRightShoulderArmorRootLimb" LimbType="Standard" Offset="0x7928"/>
<Limb Name="gStalfosRightShoulderArmorLimb" LimbType="Standard" Offset="0x7934"/>
<Limb Name="gStalfosLeftShoulderRootLimb" LimbType="Standard" Offset="0x7940"/>
<Limb Name="gStalfosLeftShoulderArmorRootLimb" LimbType="Standard" Offset="0x794C"/>
<Limb Name="gStalfosLeftShoulderArmorLimb" LimbType="Standard" Offset="0x7958"/>
<Limb Name="gStalfosLeftArmRootLimb" LimbType="Standard" Offset="0x7964"/>
<Limb Name="gStalfosLeftUpperArmRootLimb" LimbType="Standard" Offset="0x7970"/>
<Limb Name="gStalfosLeftForearmRootLimb" LimbType="Standard" Offset="0x797C"/>
<Limb Name="gStalfosLeftHandRootLimb" LimbType="Standard" Offset="0x7988"/>
<Limb Name="gStalfosLeftHandLimb" LimbType="Standard" Offset="0x7994"/>
<Limb Name="gStalfosShieldLimb" LimbType="Standard" Offset="0x79A0"/>
<Limb Name="gStalfosLeftForearmLimb" LimbType="Standard" Offset="0x79AC"/>
<Limb Name="gStalfosLeftUpperArmLimb" LimbType="Standard" Offset="0x79B8"/>
<Limb Name="gStalfosRightArmRootLimb" LimbType="Standard" Offset="0x79C4"/>
<Limb Name="gStalfosRightUpperArmRootLimb" LimbType="Standard" Offset="0x79D0"/>
<Limb Name="gStalfosRightForearmRootLimb" LimbType="Standard" Offset="0x79DC"/>
<Limb Name="gStalfosRightHandRootLimb" LimbType="Standard" Offset="0x79E8"/>
<Limb Name="gStalfosSwordLimb" LimbType="Standard" Offset="0x79F4"/>
<Limb Name="gStalfosRightHandLimb" LimbType="Standard" Offset="0x7A00"/>
<Limb Name="gStalfosRightForearmLimb" LimbType="Standard" Offset="0x7A0C"/>
<Limb Name="gStalfosRightUpperArmLimb" LimbType="Standard" Offset="0x7A18"/>
<Limb Name="gStalfosLowerCoreLimb" LimbType="Standard" Offset="0x7A24"/>
<Limb Name="gStalfosLowerBodyRootLimb" LimbType="Standard" Offset="0x7A30"/>
<Limb Name="gStalfosWaistRootLimb" LimbType="Standard" Offset="0x7A3C"/>
<Limb Name="gStalfosLegsRootLimb" LimbType="Standard" Offset="0x7A48"/>
<Limb Name="gStalfosLeftLegRootLimb" LimbType="Standard" Offset="0x7A54"/>
<Limb Name="gStalfosLeftThighRootLimb" LimbType="Standard" Offset="0x7A60"/>
<Limb Name="gStalfosLeftLowerLegRootLimb" LimbType="Standard" Offset="0x7A6C"/>
<Limb Name="gStalfosLeftAnkleRootLimb" LimbType="Standard" Offset="0x7A78"/>
<Limb Name="gStalfosLeftAnkleLimb" LimbType="Standard" Offset="0x7A84"/>
<Limb Name="gStalfosLeftFootRootLimb" LimbType="Standard" Offset="0x7A90"/>
<Limb Name="gStalfosLeftFootLimb" LimbType="Standard" Offset="0x7A9C"/>
<Limb Name="gStalfosLeftLowerLegLimb" LimbType="Standard" Offset="0x7AA8"/>
<Limb Name="gStalfosLeftThighLimb" LimbType="Standard" Offset="0x7AB4"/>
<Limb Name="gStalfosRightLegRootLimb" LimbType="Standard" Offset="0x7AC0"/>
<Limb Name="gStalfosRightThighRootLimb" LimbType="Standard" Offset="0x7ACC"/>
<Limb Name="gStalfosRightLowerLegRootLimb" LimbType="Standard" Offset="0x7AD8"/>
<Limb Name="gStalfosRightAnkleRootLimb" LimbType="Standard" Offset="0x7AE4"/>
<Limb Name="gStalfosRightAnkleLimb" LimbType="Standard" Offset="0x7AF0"/>
<Limb Name="gStalfosRightFootRootLimb" LimbType="Standard" Offset="0x7AFC"/>
<Limb Name="gStalfosRightFootLimb" LimbType="Standard" Offset="0x7B08"/>
<Limb Name="gStalfosRightLowerLegLimb" LimbType="Standard" Offset="0x7B14"/>
<Limb Name="gStalfosRightThighLimb" LimbType="Standard" Offset="0x7B20"/>
<Limb Name="gStalfosWaistLimb" LimbType="Standard" Offset="0x7B2C"/>
<Skeleton Name="gStalfosSkel" Type="Normal" LimbType="Standard" Offset="0x7C28"/>
<Limb Name="gStalfosRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_ROOT" Offset="0x7868"/>
<Limb Name="gStalfosUpperBodyRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_UPPERBODY_ROOT" Offset="0x7874"/>
<Limb Name="gStalfosLowerCoreRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_CORE_LOWER_ROOT" Offset="0x7880"/>
<Limb Name="gStalfosUpperCoreRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_CORE_UPPER_ROOT" Offset="0x788C"/>
<Limb Name="gStalfosLowerNeckRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_NECK_ROOT" Offset="0x7898"/>
<Limb Name="gStalfosSkullRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_HEAD_ROOT" Offset="0x78A4"/>
<Limb Name="gStalfosLimb7Limb" LimbType="Standard" EnumName="STALFOS_LIMB_7" Offset="0x78B0"/>
<Limb Name="gStalfosLimb8Limb" LimbType="Standard" EnumName="STALFOS_LIMB_8" Offset="0x78BC"/>
<Limb Name="gStalfosJawRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_JAW_ROOT" Offset="0x78C8"/>
<Limb Name="gStalfosJawLimb" LimbType="Standard" EnumName="STALFOS_LIMB_JAW" Offset="0x78D4"/>
<Limb Name="gStalfosSkullLimb" LimbType="Standard" EnumName="STALFOS_LIMB_HEAD" Offset="0x78E0"/>
<Limb Name="gStalfosUpperNeckLimb" LimbType="Standard" EnumName="STALFOS_LIMB_NECK_UPPER" Offset="0x78EC"/>
<Limb Name="gStalfosLowerNeckLimb" LimbType="Standard" EnumName="STALFOS_LIMB_NECK_LOWER" Offset="0x78F8"/>
<Limb Name="gStalfosUpperCoreLimb" LimbType="Standard" EnumName="STALFOS_LIMB_CORE_UPPER" Offset="0x7904"/>
<Limb Name="gStalfosChestLimb" LimbType="Standard" EnumName="STALFOS_LIMB_CHEST" Offset="0x7910"/>
<Limb Name="gStalfosRightShoulderRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_SHOULDER_R_ROOT" Offset="0x791C"/>
<Limb Name="gStalfosRightShoulderArmorRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_SHOULDER_ARMOR_R_ROOT" Offset="0x7928"/>
<Limb Name="gStalfosRightShoulderArmorLimb" LimbType="Standard" EnumName="STALFOS_LIMB_SHOULDER_ARMOR_R" Offset="0x7934"/>
<Limb Name="gStalfosLeftShoulderRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_SHOULDER_L_ROOT" Offset="0x7940"/>
<Limb Name="gStalfosLeftShoulderArmorRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_SHOULDER_ARMOR_L_ROOT" Offset="0x794C"/>
<Limb Name="gStalfosLeftShoulderArmorLimb" LimbType="Standard" EnumName="STALFOS_LIMB_SHOULDER_ARMOR_L" Offset="0x7958"/>
<Limb Name="gStalfosLeftArmRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_ARM_L_ROOT" Offset="0x7964"/>
<Limb Name="gStalfosLeftUpperArmRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_UPPERARM_L_ROOT" Offset="0x7970"/>
<Limb Name="gStalfosLeftForearmRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_FOREARM_L_ROOT" Offset="0x797C"/>
<Limb Name="gStalfosLeftHandRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_HAND_L_ROOT" Offset="0x7988"/>
<Limb Name="gStalfosLeftHandLimb" LimbType="Standard" EnumName="STALFOS_LIMB_HAND_L" Offset="0x7994"/>
<Limb Name="gStalfosShieldLimb" LimbType="Standard" EnumName="STALFOS_LIMB_SHIELD" Offset="0x79A0"/>
<Limb Name="gStalfosLeftForearmLimb" LimbType="Standard" EnumName="STALFOS_LIMB_FOREARM_L" Offset="0x79AC"/>
<Limb Name="gStalfosLeftUpperArmLimb" LimbType="Standard" EnumName="STALFOS_LIMB_UPPERARM_L" Offset="0x79B8"/>
<Limb Name="gStalfosRightArmRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_ARM_R_ROOT" Offset="0x79C4"/>
<Limb Name="gStalfosRightUpperArmRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_UPPERARM_R_ROOT" Offset="0x79D0"/>
<Limb Name="gStalfosRightForearmRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_FOREARM_R_ROOT" Offset="0x79DC"/>
<Limb Name="gStalfosRightHandRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_HAND_R_ROOT" Offset="0x79E8"/>
<Limb Name="gStalfosSwordLimb" LimbType="Standard" EnumName="STALFOS_LIMB_SWORD" Offset="0x79F4"/>
<Limb Name="gStalfosRightHandLimb" LimbType="Standard" EnumName="STALFOS_LIMB_HAND_R" Offset="0x7A00"/>
<Limb Name="gStalfosRightForearmLimb" LimbType="Standard" EnumName="STALFOS_LIMB_FOREARM_R" Offset="0x7A0C"/>
<Limb Name="gStalfosRightUpperArmLimb" LimbType="Standard" EnumName="STALFOS_LIMB_UPPERARM_R" Offset="0x7A18"/>
<Limb Name="gStalfosLowerCoreLimb" LimbType="Standard" EnumName="STALFOS_LIMB_CORE_LOWER" Offset="0x7A24"/>
<Limb Name="gStalfosLowerBodyRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_LOWERBODY_ROOT" Offset="0x7A30"/>
<Limb Name="gStalfosWaistRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_WAIST_ROOT" Offset="0x7A3C"/>
<Limb Name="gStalfosLegsRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_LEGS_ROOT" Offset="0x7A48"/>
<Limb Name="gStalfosLeftLegRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_LEG_L_ROOT" Offset="0x7A54"/>
<Limb Name="gStalfosLeftThighRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_THIGH_L_ROOT" Offset="0x7A60"/>
<Limb Name="gStalfosLeftLowerLegRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_LOWERLEG_L_ROOT" Offset="0x7A6C"/>
<Limb Name="gStalfosLeftAnkleRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_ANKLE_L_ROOT" Offset="0x7A78"/>
<Limb Name="gStalfosLeftAnkleLimb" LimbType="Standard" EnumName="STALFOS_LIMB_ANKLE_L" Offset="0x7A84"/>
<Limb Name="gStalfosLeftFootRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_FOOT_L_ROOT" Offset="0x7A90"/>
<Limb Name="gStalfosLeftFootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_FOOT_L" Offset="0x7A9C"/>
<Limb Name="gStalfosLeftLowerLegLimb" LimbType="Standard" EnumName="STALFOS_LIMB_LOWERLEG_L" Offset="0x7AA8"/>
<Limb Name="gStalfosLeftThighLimb" LimbType="Standard" EnumName="STALFOS_LIMB_THIGH_L" Offset="0x7AB4"/>
<Limb Name="gStalfosRightLegRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_LEG_R_ROOT" Offset="0x7AC0"/>
<Limb Name="gStalfosRightThighRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_THIGH_R_ROOT" Offset="0x7ACC"/>
<Limb Name="gStalfosRightLowerLegRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_LOWERLEG_R_ROOT" Offset="0x7AD8"/>
<Limb Name="gStalfosRightAnkleRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_ANKLE_R_ROOT" Offset="0x7AE4"/>
<Limb Name="gStalfosRightAnkleLimb" LimbType="Standard" EnumName="STALFOS_LIMB_ANKLE_R" Offset="0x7AF0"/>
<Limb Name="gStalfosRightFootRootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_FOOT_R_ROOT" Offset="0x7AFC"/>
<Limb Name="gStalfosRightFootLimb" LimbType="Standard" EnumName="STALFOS_LIMB_FOOT_R" Offset="0x7B08"/>
<Limb Name="gStalfosRightLowerLegLimb" LimbType="Standard" EnumName="STALFOS_LIMB_LOWERLEG_R" Offset="0x7B14"/>
<Limb Name="gStalfosRightThighLimb" LimbType="Standard" EnumName="STALFOS_LIMB_THIGH_R" Offset="0x7B20"/>
<Limb Name="gStalfosWaistLimb" LimbType="Standard" EnumName="STALFOS_LIMB_WAIST" Offset="0x7B2C"/>
<Skeleton Name="gStalfosSkel" Type="Normal" LimbType="Standard" LimbNone="STALFOS_LIMB_NONE" LimbMax="STALFOS_LIMB_MAX" EnumName="StalfosLimb" Offset="0x7C28"/>
<!-- Stalfos Animations -->
<Animation Name="gStalfosFlinchFromHitBehindAnim" Offset="0x444"/>

View File

@ -1,22 +1,22 @@
<Root>
<File Name="object_ta" Segment="6">
<Skeleton Name="gTalonSkel" Type="Flex" LimbType="Standard" Offset="0xB7B8"/>
<Limb Name="gTalonRootLimb" LimbType="Standard" Offset="0xB6B8"/>
<Limb Name="gTalonLeftThighLimb" LimbType="Standard" Offset="0xB6C4"/>
<Limb Name="gTalonLeftLegLimb" LimbType="Standard" Offset="0xB6D0"/>
<Limb Name="gTalonLeftFootLimb" LimbType="Standard" Offset="0xB6DC"/>
<Limb Name="gTalonRightThighLimb" LimbType="Standard" Offset="0xB6E8"/>
<Limb Name="gTalonRightLegLimb" LimbType="Standard" Offset="0xB6F4"/>
<Limb Name="gTalonRightFootLimb" LimbType="Standard" Offset="0xB700"/>
<Limb Name="gTalonChestLimb" LimbType="Standard" Offset="0xB70C"/>
<Limb Name="gTalonLeftShoulderLimb" LimbType="Standard" Offset="0xB718"/>
<Limb Name="gTalonLeftArmLimb" LimbType="Standard" Offset="0xB724"/>
<Limb Name="gTalonLeftHandLimb" LimbType="Standard" Offset="0xB730"/>
<Limb Name="gTalonRightShoulderLimb" LimbType="Standard" Offset="0xB73C"/>
<Limb Name="gTalonRightArmLimb" LimbType="Standard" Offset="0xB748"/>
<Limb Name="gTalonRightHandLimb" LimbType="Standard" Offset="0xB754"/>
<Limb Name="gTalonHeadLimb" LimbType="Standard" Offset="0xB760"/>
<Limb Name="gTalonTorsoLimb" LimbType="Standard" Offset="0xB76C"/>
<Skeleton Name="gTalonSkel" Type="Flex" LimbType="Standard" LimbNone="TALON_LIMB_NONE" LimbMax="TALON_LIMB_MAX" EnumName="TalonLimb" Offset="0xB7B8"/>
<Limb Name="gTalonRootLimb" LimbType="Standard" EnumName="TALON_LIMB_ROOT" Offset="0xB6B8"/>
<Limb Name="gTalonLeftThighLimb" LimbType="Standard" EnumName="TALON_LIMB_LEFT_THIGH" Offset="0xB6C4"/>
<Limb Name="gTalonLeftLegLimb" LimbType="Standard" EnumName="TALON_LIMB_LEFT_LEG" Offset="0xB6D0"/>
<Limb Name="gTalonLeftFootLimb" LimbType="Standard" EnumName="TALON_LIMB_LEFT_FOOT" Offset="0xB6DC"/>
<Limb Name="gTalonRightThighLimb" LimbType="Standard" EnumName="TALON_LIMB_RIGHT_THIGH" Offset="0xB6E8"/>
<Limb Name="gTalonRightLegLimb" LimbType="Standard" EnumName="TALON_LIMB_RIGHT_LEG" Offset="0xB6F4"/>
<Limb Name="gTalonRightFootLimb" LimbType="Standard" EnumName="TALON_LIMB_RIGHT_FOOT" Offset="0xB700"/>
<Limb Name="gTalonChestLimb" LimbType="Standard" EnumName="TALON_LIMB_CHEST" Offset="0xB70C"/>
<Limb Name="gTalonLeftShoulderLimb" LimbType="Standard" EnumName="TALON_LIMB_LEFT_SHOULDER" Offset="0xB718"/>
<Limb Name="gTalonLeftArmLimb" LimbType="Standard" EnumName="TALON_LIMB_LEFT_ARM" Offset="0xB724"/>
<Limb Name="gTalonLeftHandLimb" LimbType="Standard" EnumName="TALON_LIMB_LEFT_HAND" Offset="0xB730"/>
<Limb Name="gTalonRightShoulderLimb" LimbType="Standard" EnumName="TALON_LIMB_RIGHT_SHOULDER" Offset="0xB73C"/>
<Limb Name="gTalonRightArmLimb" LimbType="Standard" EnumName="TALON_LIMB_RIGHT_ARM" Offset="0xB748"/>
<Limb Name="gTalonRightHandLimb" LimbType="Standard" EnumName="TALON_LIMB_RIGHT_HAND" Offset="0xB754"/>
<Limb Name="gTalonHeadLimb" LimbType="Standard" EnumName="TALON_LIMB_HEAD" Offset="0xB760"/>
<Limb Name="gTalonTorsoLimb" LimbType="Standard" EnumName="TALON_LIMB_TORSO" Offset="0xB76C"/>
<Animation Name="gTalonSitSleepingAnim" Offset="0x17E8"/>
<Animation Name="gTalonStandAnim" Offset="0x1C94"/>
<Animation Name="gTalonSitHandsUpAnim" Offset="0xBF38"/>

View File

@ -71,34 +71,34 @@
<Texture Name="gBariInnerHoodTex" Format="ia16" Width="32" Height="32" Offset="0x3E88"/>
<!-- Bari Limbs and Skeleton -->
<Limb Name="gBariNucleusBaseLimb" LimbType="Standard" Offset="0x4688"/>
<Limb Name="gBariNucleusLimb" LimbType="Standard" Offset="0x4694"/>
<Limb Name="gBariRightMandibleBaseBaseLimb" LimbType="Standard" Offset="0x46A0"/>
<Limb Name="gBariRightMandibleBaseLimb" LimbType="Standard" Offset="0x46AC"/>
<Limb Name="gBariRightMandibleLimb" LimbType="Standard" Offset="0x46B8"/>
<Limb Name="gBariLeftMandibleBaseBaseLimb" LimbType="Standard" Offset="0x46C4"/>
<Limb Name="gBariLeftMandibleBaseLimb" LimbType="Standard" Offset="0x46D0"/>
<Limb Name="gBariLeftMandibleLimb" LimbType="Standard" Offset="0x46DC"/>
<Limb Name="gBariLeftArmBaseLimb" LimbType="Standard" Offset="0x46E8"/>
<Limb Name="gBariLeftUpperArmBaseLimb" LimbType="Standard" Offset="0x46F4"/>
<Limb Name="gBariLeftForearmBaseLimb" LimbType="Standard" Offset="0x4700"/>
<Limb Name="gBariLeftClawBodyBaseLimb" LimbType="Standard" Offset="0x470C"/>
<Limb Name="gBariLeftClawTipBaseLimb" LimbType="Standard" Offset="0x4718"/>
<Limb Name="gBariLeftClawTipLimb" LimbType="Standard" Offset="0x4724"/>
<Limb Name="gBariLeftClawBodyLimb" LimbType="Standard" Offset="0x4730"/>
<Limb Name="gBariLeftForearmLimb" LimbType="Standard" Offset="0x473C"/>
<Limb Name="gBariLeftUpperArmLimb" LimbType="Standard" Offset="0x4748"/>
<Limb Name="gBariRightArmBaseLimb" LimbType="Standard" Offset="0x4754"/>
<Limb Name="gBariRightUpperArmBaseLimb" LimbType="Standard" Offset="0x4760"/>
<Limb Name="gBariRightForearmBaseLimb" LimbType="Standard" Offset="0x476C"/>
<Limb Name="gBariRightClawBodyBaseLimb" LimbType="Standard" Offset="0x4778"/>
<Limb Name="gBariRightClawTipBaseLimb" LimbType="Standard" Offset="0x4784"/>
<Limb Name="gBariRightClawTipLimb" LimbType="Standard" Offset="0x4790"/>
<Limb Name="gBariRightClawBodyLimb" LimbType="Standard" Offset="0x479C"/>
<Limb Name="gBariRightForearmLimb" LimbType="Standard" Offset="0x47A8"/>
<Limb Name="gBariRightUpperArmLimb" LimbType="Standard" Offset="0x47B4"/>
<Limb Name="gBariInnerHoodLimb" LimbType="Standard" Offset="0x47C0"/>
<Limb Name="gBariOuterHoodLimb" LimbType="Standard" Offset="0x47CC"/>
<Skeleton Name="gBariSkel" Type="Normal" LimbType="Standard" Offset="0x4848"/>
<Limb Name="gBariNucleusBaseLimb" LimbType="Standard" EnumName="VALI_LIMB_NUCLEUS_BASE" Offset="0x4688"/>
<Limb Name="gBariNucleusLimb" LimbType="Standard" EnumName="VALI_LIMB_NUCLEUS" Offset="0x4694"/>
<Limb Name="gBariRightMandibleBaseBaseLimb" LimbType="Standard" EnumName="VALI_LIMB_RIGHT_MANDIBLE_BASE_BASE" Offset="0x46A0"/>
<Limb Name="gBariRightMandibleBaseLimb" LimbType="Standard" EnumName="VALI_LIMB_RIGHT_MANDIBLE_BASE" Offset="0x46AC"/>
<Limb Name="gBariRightMandibleLimb" LimbType="Standard" EnumName="VALI_LIMB_RIGHT_MANDIBLE" Offset="0x46B8"/>
<Limb Name="gBariLeftMandibleBaseBaseLimb" LimbType="Standard" EnumName="VALI_LIMB_LEFT_MANDIBLE_BASE_BASE" Offset="0x46C4"/>
<Limb Name="gBariLeftMandibleBaseLimb" LimbType="Standard" EnumName="VALI_LIMB_LEFT_MANDIBLE_BASE" Offset="0x46D0"/>
<Limb Name="gBariLeftMandibleLimb" LimbType="Standard" EnumName="VALI_LIMB_LEFT_MANDIBLE" Offset="0x46DC"/>
<Limb Name="gBariLeftArmBaseLimb" LimbType="Standard" EnumName="VALI_LIMB_LEFT_ARM_BASE" Offset="0x46E8"/>
<Limb Name="gBariLeftUpperArmBaseLimb" LimbType="Standard" EnumName="VALI_LIMB_LEFT_UPPER_ARM_BASE" Offset="0x46F4"/>
<Limb Name="gBariLeftForearmBaseLimb" LimbType="Standard" EnumName="VALI_LIMB_LEFT_FOREARM_BASE" Offset="0x4700"/>
<Limb Name="gBariLeftClawBodyBaseLimb" LimbType="Standard" EnumName="VALI_LIMB_LEFT_CLAW_BODY_BASE" Offset="0x470C"/>
<Limb Name="gBariLeftClawTipBaseLimb" LimbType="Standard" EnumName="VALI_LIMB_LEFT_CLAW_TIP_BASE" Offset="0x4718"/>
<Limb Name="gBariLeftClawTipLimb" LimbType="Standard" EnumName="VALI_LIMB_LEFT_CLAW_TIP" Offset="0x4724"/>
<Limb Name="gBariLeftClawBodyLimb" LimbType="Standard" EnumName="VALI_LIMB_LEFT_CLAW_BODY" Offset="0x4730"/>
<Limb Name="gBariLeftForearmLimb" LimbType="Standard" EnumName="VALI_LIMB_LEFT_FOREARM" Offset="0x473C"/>
<Limb Name="gBariLeftUpperArmLimb" LimbType="Standard" EnumName="VALI_LIMB_LEFT_UPPER_ARM" Offset="0x4748"/>
<Limb Name="gBariRightArmBaseLimb" LimbType="Standard" EnumName="VALI_LIMB_RIGHT_ARM_BASE" Offset="0x4754"/>
<Limb Name="gBariRightUpperArmBaseLimb" LimbType="Standard" EnumName="VALI_LIMB_RIGHT_UPPER_ARM_BASE" Offset="0x4760"/>
<Limb Name="gBariRightForearmBaseLimb" LimbType="Standard" EnumName="VALI_LIMB_RIGHT_FOREARM_BASE" Offset="0x476C"/>
<Limb Name="gBariRightClawBodyBaseLimb" LimbType="Standard" EnumName="VALI_LIMB_RIGHT_CLAW_BODY_BASE" Offset="0x4778"/>
<Limb Name="gBariRightClawTipBaseLimb" LimbType="Standard" EnumName="VALI_LIMB_RIGHT_CLAW_TIP_BASE" Offset="0x4784"/>
<Limb Name="gBariRightClawTipLimb" LimbType="Standard" EnumName="VALI_LIMB_RIGHT_CLAW_TIP" Offset="0x4790"/>
<Limb Name="gBariRightClawBodyLimb" LimbType="Standard" EnumName="VALI_LIMB_RIGHT_CLAW_BODY" Offset="0x479C"/>
<Limb Name="gBariRightForearmLimb" LimbType="Standard" EnumName="VALI_LIMB_RIGHT_FOREARM" Offset="0x47A8"/>
<Limb Name="gBariRightUpperArmLimb" LimbType="Standard" EnumName="VALI_LIMB_RIGHT_UPPER_ARM" Offset="0x47B4"/>
<Limb Name="gBariInnerHoodLimb" LimbType="Standard" EnumName="VALI_LIMB_INNER_HOOD" Offset="0x47C0"/>
<Limb Name="gBariOuterHoodLimb" LimbType="Standard" EnumName="VALI_LIMB_OUTER_HOOD" Offset="0x47CC"/>
<Skeleton Name="gBariSkel" Type="Normal" LimbType="Standard" LimbNone="VALI_LIMB_NONE" LimbMax="VALI_LIMB_MAX" EnumName="ValiLimb" Offset="0x4848"/>
</File>
</Root>

View File

@ -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);

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;
}

View File

@ -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

View File

@ -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;

View File

@ -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);
}
}

View File

@ -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;

View File

@ -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);
}

View File

@ -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;

View File

@ -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);
}
}

View File

@ -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;

View File

@ -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:

View File

@ -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;

View File

@ -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;

View File

@ -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);
}

View File

@ -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;

View File

@ -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);
}

View File

@ -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;

View File

@ -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;

View File

@ -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);
}
}

View File

@ -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

View File

@ -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;

View File

@ -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;

View File

@ -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);
}
}

View File

@ -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;

View File

@ -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];

View File

@ -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 {

View File

@ -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;

View File

@ -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;

View File

@ -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);
}
}
}

View File

@ -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);