1
0
mirror of https://github.com/zeldaret/oot.git synced 2024-09-21 04:24:43 +00:00

Cleanup symbols from undefined_syms.txt (2nd round) (#934)

This commit is contained in:
Dragorn421 2021-09-01 01:00:55 +02:00 committed by GitHub
parent 4444c5ea35
commit 89634377c6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
19 changed files with 162 additions and 259 deletions

View File

@ -1133,14 +1133,14 @@ glabel L808FE4C0
/* 015F8 808FE538 24010032 */ addiu $at, $zero, 0x0032 ## $at = 00000032
/* 015FC 808FE53C 1461000D */ bne $v1, $at, .L808FE574
/* 01600 808FE540 8FA40050 */ lw $a0, 0x0050($sp)
/* 01604 808FE544 3C050600 */ lui $a1, %hi(D_06000BFC) ## $a1 = 06000000
/* 01608 808FE548 24A50BFC */ addiu $a1, $a1, %lo(D_06000BFC) ## $a1 = 06000BFC
/* 01604 808FE544 3C050600 */ lui $a1, %hi(object_ganon_anime3_Anim_000BFC) ## $a1 = 06000000
/* 01608 808FE548 24A50BFC */ addiu $a1, $a1, %lo(object_ganon_anime3_Anim_000BFC) ## $a1 = 06000BFC
/* 0160C 808FE54C 0C029490 */ jal Animation_MorphToPlayOnce
/* 01610 808FE550 24060000 */ addiu $a2, $zero, 0x0000 ## $a2 = 00000000
/* 01614 808FE554 3C040600 */ lui $a0, %hi(D_06000BFC) ## $a0 = 06000000
/* 01614 808FE554 3C040600 */ lui $a0, %hi(object_ganon_anime3_Anim_000BFC) ## $a0 = 06000000
/* 01618 808FE558 0C028800 */ jal Animation_GetLastFrame
/* 0161C 808FE55C 24840BFC */ addiu $a0, $a0, %lo(D_06000BFC) ## $a0 = 06000BFC
/* 0161C 808FE55C 24840BFC */ addiu $a0, $a0, %lo(object_ganon_anime3_Anim_000BFC) ## $a0 = 06000BFC
/* 01620 808FE560 44825000 */ mtc1 $v0, $f10 ## $f10 = 0.00
/* 01624 808FE564 240C0003 */ addiu $t4, $zero, 0x0003 ## $t4 = 00000003
/* 01628 808FE568 A20C0314 */ sb $t4, 0x0314($s0) ## 00000314
@ -1736,8 +1736,8 @@ glabel L808FED50
/* 01EAC 808FEDEC 24060153 */ addiu $a2, $zero, 0x0153 ## $a2 = 00000153
/* 01EB0 808FEDF0 0C23F442 */ jal BossGanon2_SetObjectSegment
/* 01EB4 808FEDF4 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01EB8 808FEDF8 3C020602 */ lui $v0, %hi(D_06021A90) ## $v0 = 06020000
/* 01EBC 808FEDFC 24421A90 */ addiu $v0, $v0, %lo(D_06021A90) ## $v0 = 06021A90
/* 01EB8 808FEDF8 3C020602 */ lui $v0, %hi(object_ganon2_Tex_021A90) ## $v0 = 06020000
/* 01EBC 808FEDFC 24421A90 */ addiu $v0, $v0, %lo(object_ganon2_Tex_021A90) ## $v0 = 06021A90
/* 01EC0 808FEE00 00027900 */ sll $t7, $v0, 4
/* 01EC4 808FEE04 000FC702 */ srl $t8, $t7, 28
/* 01EC8 808FEE08 0018C880 */ sll $t9, $t8, 2
@ -2282,17 +2282,17 @@ glabel L808FF51C
/* 026C0 808FF600 262420D8 */ addiu $a0, $s1, 0x20D8 ## $a0 = 000020D8
/* 026C4 808FF604 14400082 */ bne $v0, $zero, .L808FF810
/* 026C8 808FF608 240B001D */ addiu $t3, $zero, 0x001D ## $t3 = 0000001D
/* 026CC 808FF60C 3C050601 */ lui $a1, %hi(D_060147E0) ## $a1 = 06010000
/* 026CC 808FF60C 3C050601 */ lui $a1, %hi(object_ganon_anime3_Anim_0147E0) ## $a1 = 06010000
/* 026D0 808FF610 A60B039C */ sh $t3, 0x039C($s0) ## 0000039C
/* 026D4 808FF614 AE000398 */ sw $zero, 0x0398($s0) ## 00000398
/* 026D8 808FF618 24A547E0 */ addiu $a1, $a1, %lo(D_060147E0) ## $a1 = 060147E0
/* 026D8 808FF618 24A547E0 */ addiu $a1, $a1, %lo(object_ganon_anime3_Anim_0147E0) ## $a1 = 060147E0
/* 026DC 808FF61C 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
/* 026E0 808FF620 0C029490 */ jal Animation_MorphToPlayOnce
/* 026E4 808FF624 24060000 */ addiu $a2, $zero, 0x0000 ## $a2 = 00000000
/* 026E8 808FF628 3C040601 */ lui $a0, %hi(D_060147E0) ## $a0 = 06010000
/* 026E8 808FF628 3C040601 */ lui $a0, %hi(object_ganon_anime3_Anim_0147E0) ## $a0 = 06010000
/* 026EC 808FF62C 0C028800 */ jal Animation_GetLastFrame
/* 026F0 808FF630 248447E0 */ addiu $a0, $a0, %lo(D_060147E0) ## $a0 = 060147E0
/* 026F0 808FF630 248447E0 */ addiu $a0, $a0, %lo(object_ganon_anime3_Anim_0147E0) ## $a0 = 060147E0
/* 026F4 808FF634 44825000 */ mtc1 $v0, $f10 ## $f10 = 0.00
/* 026F8 808FF638 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
/* 026FC 808FF63C 3C018091 */ lui $at, %hi(D_8090DBA0) ## $at = 80910000

View File

@ -52,7 +52,7 @@
<Texture Name="object_ganon_Tex_00A460" OutName="tex_0000A460" Format="ci8" Width="8" Height="8" Offset="0xA460"/>
<Texture Name="object_ganon_Tex_00A4A0" OutName="tex_0000A4A0" Format="ci8" Width="8" Height="8" Offset="0xA4A0"/>
<Texture Name="object_ganon_Tex_00A4E0" OutName="tex_0000A4E0" Format="rgba16" Width="32" Height="16" Offset="0xA4E0"/>
<Blob Name="object_ganon_Blob_00A8E0" Size="0x400" Offset="0xA8E0"/>
<Texture Name="object_ganon_Tex_00A8E0" OutName="tex_0000A8E0" Format="rgba16" Width="32" Height="16" Offset="0xA8E0"/>
<DList Name="object_ganon_DL_00BE90" Offset="0xBE90"/>
<DList Name="object_ganon_DL_00BF40" Offset="0xBF40"/>
<DList Name="object_ganon_DL_00C048" Offset="0xC048"/>

View File

@ -71,18 +71,19 @@
<Texture Name="object_ganon2_Tex_01D400" OutName="tex_0001D400" Format="ci8" Width="16" Height="16" Offset="0x1D400"/>
<Texture Name="object_ganon2_Tex_01D500" OutName="tex_0001D500" Format="rgba16" Width="4" Height="16" Offset="0x1D500"/>
<Texture Name="object_ganon2_Tex_01D580" OutName="tex_0001D580" Format="ci8" Width="16" Height="32" Offset="0x1D580"/>
<Texture Name="object_ganon2_Tex_01D780" OutName="tex_0001D780" Format="rgba16" Width="4" Height="4" Offset="0x1D780"/><!--Blob Name="object_ganon2_Blob_01D7A0" Size="0x168" Offset="0x1D7A0" /-->
<Texture Name="object_ganon2_Tlut_01D780" OutName="tlut_0001D780" Format="rgba16" Width="4" Height="4" Offset="0x1D780"/><!--Blob Name="object_ganon2_Blob_01D7A0" Size="0x168" Offset="0x1D7A0" /-->
<Texture Name="object_ganon2_Tex_01D908" OutName="tex_0001D908" Format="ci8" Width="32" Height="32" Offset="0x1D908"/>
<Texture Name="object_ganon2_Tex_01DD08" OutName="tex_0001DD08" Format="rgba16" Width="16" Height="32" Offset="0x1DD08"/>
<Texture Name="object_ganon2_Tex_01E108" OutName="tex_0001E108" Format="rgba16" Width="8" Height="8" Offset="0x1E108"/>
<Blob Name="object_ganon2_Blob_01E188" Size="0x80" Offset="0x1E188"/>
<Texture Name="object_ganon2_Tex_01E188" Format="ci4" Width="16" Height="16" Offset="0x1E188" TlutOffset="0x1D780"/> <!-- eye open -->
<Texture Name="object_ganon2_Tex_01E208" OutName="tex_0001E208" Format="rgba16" Width="8" Height="8" Offset="0x1E208"/>
<Texture Name="object_ganon2_Tex_01E288" OutName="tex_0001E288" Format="rgba16" Width="16" Height="16" Offset="0x1E288"/>
<Texture Name="object_ganon2_Tex_01E488" OutName="tex_0001E488" Format="rgba16" Width="16" Height="8" Offset="0x1E488"/>
<Texture Name="object_ganon2_Tex_01E588" OutName="tex_0001E588" Format="i4" Width="32" Height="32" Offset="0x1E588"/>
<Texture Name="object_ganon2_Tex_01E788" OutName="tex_0001E788" Format="rgba16" Width="8" Height="16" Offset="0x1E788"/>
<Texture Name="object_ganon2_Tex_01E888" OutName="tex_0001E888" Format="rgba16" Width="8" Height="16" Offset="0x1E888"/>
<Blob Name="object_ganon2_Blob_01E988" Size="0x100" Offset="0x1E988"/>
<Texture Name="object_ganon2_Tex_01E988" Format="ci4" Width="16" Height="16" Offset="0x1E988" TlutOffset="0x1D780"/> <!-- eye half closed -->
<Texture Name="object_ganon2_Tex_01EA08" Format="ci4" Width="16" Height="16" Offset="0x1EA08" TlutOffset="0x1D780"/> <!-- eye closed -->
<DList Name="object_ganon2_DL_020B18" Offset="0x20B18"/>
<DList Name="object_ganon2_DL_020BE0" Offset="0x20BE0"/>
<DList Name="object_ganon2_DL_020C80" Offset="0x20C80"/>
@ -93,7 +94,7 @@
<DList Name="object_ganon2_DL_0215D0" Offset="0x215D0"/>
<DList Name="object_ganon2_DL_0218B8" Offset="0x218B8"/>
<DList Name="object_ganon2_DL_0219D8" Offset="0x219D8"/>
<Blob Name="object_ganon2_Blob_021A90" Size="0x3C00" Offset="0x21A90"/>
<Texture Name="object_ganon2_Tex_021A90" Format="ia8" Width="128" Height="120" Offset="0x21A90"/>
<Limb Name="object_ganon2_Limb_025690" LimbType="Standard" Offset="0x25690"/>
<Limb Name="object_ganon2_Limb_02569C" LimbType="Standard" Offset="0x2569C"/>
<Limb Name="object_ganon2_Limb_0256A8" LimbType="Standard" Offset="0x256A8"/>

View File

@ -8,6 +8,6 @@
<Animation Name="object_ganon_anime3_Anim_003884" Offset="0x3884"/>
<Animation Name="object_ganon_anime3_Anim_003F38" Offset="0x3F38"/>
<Animation Name="object_ganon_anime3_Anim_010380" Offset="0x10380"/>
<Blob Name="object_ganon_anime3_Blob_010390" Size="0x4460" Offset="0x10390"/>
<Animation Name="object_ganon_anime3_Anim_0147E0" Offset="0x147E0"/>
</File>
</Root>

View File

@ -1,6 +1,41 @@
<Root>
<File Name="object_ik" Segment="6">
<!--Blob Name="object_ik_zeroes_unk_00000000" Size="0xF630" Offset="0x0" /-->
<Skeleton Name="object_ik_Skel_000380" Type="Normal" LimbType="Standard" Offset="0x380"/>
<Skeleton Name="object_ik_Skel_000660" Type="Normal" LimbType="Standard" Offset="0x660"/>
<Skeleton Name="object_ik_Skel_000C90" Type="Normal" LimbType="Standard" Offset="0xC90"/>
<Skeleton Name="object_ik_Skel_000900" Type="Flex" LimbType="Standard" Offset="0x900"/>
<Skeleton Name="object_ik_Skel_000F30" Type="Flex" LimbType="Standard" Offset="0xF30"/>
<Skeleton Name="object_ik_Skel_01EB40" Type="Flex" LimbType="Standard" Offset="0x1EB40"/>
<Skeleton Name="object_ik_Skel_01EE60" Type="Flex" LimbType="Standard" Offset="0x1EE60"/>
<Skeleton Name="object_ik_Skel_01E178" Type="Flex" LimbType="Standard" Offset="0x1E178"/>
<Skeleton Name="object_ik_Skel_0205C0" Type="Flex" LimbType="Standard" Offset="0x205C0"/>
<Animation Name="object_ik_Anim_00035C" Offset="0x35C"/>
<Animation Name="object_ik_Anim_000634" Offset="0x634"/>
<Animation Name="object_ik_Anim_0008DC" Offset="0x8DC"/>
<Animation Name="object_ik_Anim_000C6C" Offset="0xC6C"/>
<Animation Name="object_ik_Anim_000F0C" Offset="0xF0C"/>
<Animation Name="object_ik_Anim_001C28" Offset="0x1C28"/>
<Animation Name="object_ik_Anim_002538" Offset="0x2538"/>
<Animation Name="object_ik_Anim_0029FC" Offset="0x29FC"/>
<Animation Name="object_ik_Anim_0033C4" Offset="0x33C4"/>
<Animation Name="object_ik_Anim_003DBC" Offset="0x3DBC"/>
<Animation Name="object_ik_Anim_0045BC" Offset="0x45BC"/>
<Animation Name="object_ik_Anim_00485C" Offset="0x485C"/>
<Animation Name="object_ik_Anim_005944" Offset="0x5944"/>
<Animation Name="object_ik_Anim_006194" Offset="0x6194"/>
<Animation Name="object_ik_Anim_006734" Offset="0x6734"/>
<Animation Name="object_ik_Anim_00C114" Offset="0xC114"/>
<Animation Name="object_ik_Anim_00CD70" Offset="0xCD70"/>
<Animation Name="object_ik_Anim_00DD50" Offset="0xDD50"/>
<Animation Name="object_ik_Anim_00ED24" Offset="0xED24"/>
<Animation Name="object_ik_Anim_01EB14" Offset="0x1EB14"/>
<Animation Name="object_ik_Anim_01EE34" Offset="0x1EE34"/>
<Animation Name="object_ik_Anim_0203D8" Offset="0x203D8"/>
<Texture Name="object_ik_Tlut_00F630" OutName="tlut_00F630" Format="rgba16" Width="23" Height="8" Offset="0xf630" />
<Texture Name="object_ik_Tex_00F7A0" OutName="tex_00F7A0" Format="i4" Width="32" Height="64" Offset="0xF7A0" />
<Texture Name="object_ik_Tex_00FBA0" OutName="tex_00FBA0" Format="ia8" Width="32" Height="32" Offset="0xFBA0" />

View File

@ -2,8 +2,10 @@
<File Name="spot00_scene" Segment="2">
<Cutscene Name="gZeldaSongOfTimeCs" Offset="0xF870"/>
<Scene Name="spot00_scene" Offset="0x0"/>
<Texture Name="spot00_scene_Tex_02A198" Format="ia8" Width="8" Height="16" Offset="0x2A198"/>
</File>
<File Name="spot00_room_0" Segment="3">
<Room Name="spot00_room_0" Offset="0x0"/>
<DList Name="spot00_room_0DL_012B20" Offset="0x12B20"/>
</File>
</Root>

View File

@ -2,8 +2,10 @@
<File Name="spot16_scene" Segment="2">
<Cutscene Name="gDmtOwlCs" Offset="0x1E6A0"/>
<Scene Name="spot16_scene" Offset="0x0"/>
<Texture Name="spot16_scene_Tex_01AE98" Format="i4" Width="64" Height="64" Offset="0x1AE98"/>
</File>
<File Name="spot16_room_0" Segment="3">
<Room Name="spot16_room_0" Offset="0x0"/>
<DList Name="spot16_room_0DL_00AA48" Offset="0xAA48"/>
</File>
</Root>

View File

@ -4,8 +4,6 @@
#include "z64.h"
#include "segment_symbols.h"
extern u32 D_0300AA48;
extern u32 D_03012B20;
extern Gfx D_06025218[];
extern Gfx D_060252D8[];
extern Gfx D_06025438[];

View File

@ -1,5 +1,8 @@
#include "global.h"
#include "scenes/overworld/spot00/spot00_room_0.h"
#include "scenes/overworld/spot16/spot16_room_0.h"
#define ENTRANCE(scene, spawn, continueBgm, displayTitleCard, fadeIn, fadeOut) \
{ \
scene, spawn, \
@ -1839,7 +1842,7 @@ void func_8009DA30(GlobalContext* globalCtx) {
}
gDPSetPrimColor(displayListHead++, 0, 0, 255, 255, 255, globalCtx->roomCtx.unk_74[0]);
gSPDisplayList(displayListHead++, &D_03012B20);
gSPDisplayList(displayListHead++, spot00_room_0DL_012B20);
gSPEndDisplayList(displayListHead);
}
@ -2190,7 +2193,7 @@ void func_8009F5D4(GlobalContext* globalCtx) {
}
gDPSetPrimColor(displayListHead++, 0, 0, 255, 255, 255, globalCtx->roomCtx.unk_74[0]);
gSPDisplayList(displayListHead++, &D_0300AA48);
gSPDisplayList(displayListHead++, spot16_room_0DL_00AA48);
gSPEndDisplayList(displayListHead);
}

View File

@ -4,6 +4,7 @@
#include "objects/object_ganon/object_ganon.h"
#include "objects/object_ganon2/object_ganon2.h"
#include "objects/object_ganon_anime3/object_ganon_anime3.h"
#include "objects/object_geff/object_geff.h"
#define FLAGS 0x00000035
@ -32,18 +33,6 @@ void func_809060E8(GlobalContext* globalCtx);
void BossGanon2_GenShadowTexture(void* shadowTexture, BossGanon2* this, GlobalContext* globalCtx);
void BossGanon2_DrawShadowTexture(void* shadowTexture, BossGanon2* this, GlobalContext* globalCtx);
// object_geff
extern Gfx D_06000EA0[];
// object_ganon?
extern UNK_TYPE D_0600A8E0;
// ?
extern AnimationHeader D_060147E0;
// object_ganon2
extern u64 D_06021A90[]; // title card
const ActorInit Boss_Ganon2_InitVars = {
ACTOR_BOSS_GANON2,
ACTORCAT_BOSS,
@ -88,13 +77,13 @@ void func_808FD080(s32 idx, ColliderJntSph* collider, Vec3f* arg2) {
collider->elements[idx].dim.modelSphere.radius * collider->elements[idx].dim.scale;
}
void BossGanon2_SetObjectSegment(BossGanon2* this, GlobalContext* globalCtx, s32 objectId, u8 arg3) {
void BossGanon2_SetObjectSegment(BossGanon2* this, GlobalContext* globalCtx, s32 objectId, u8 setRSPSegment) {
s32 pad;
s32 objectIdx = Object_GetIndex(&globalCtx->objectCtx, objectId);
gSegments[6] = PHYSICAL_TO_VIRTUAL(globalCtx->objectCtx.status[objectIdx].segment);
if (arg3) {
if (setRSPSegment) {
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_boss_ganon2.c", 790);
gSPSegment(POLY_OPA_DISP++, 0x06, globalCtx->objectCtx.status[objectIdx].segment);
@ -674,7 +663,7 @@ void func_808FD5F4(BossGanon2* this, GlobalContext* globalCtx) {
}
if (this->unk_398 == 80) {
BossGanon2_SetObjectSegment(this, globalCtx, OBJECT_GANON2, false);
TitleCard_InitBossName(globalCtx, &globalCtx->actorCtx.titleCtx, SEGMENTED_TO_VIRTUAL(D_06021A90), 160,
TitleCard_InitBossName(globalCtx, &globalCtx->actorCtx.titleCtx, SEGMENTED_TO_VIRTUAL(object_ganon2_Tex_021A90), 160,
180, 128, 40);
}
this->unk_3A4.x = ((this->actor.world.pos.x + 500.0f) - 350.0f) + 100.0f;
@ -837,8 +826,8 @@ void func_808FD5F4(BossGanon2* this, GlobalContext* globalCtx) {
if ((this->unk_398 > 40) && (func_8010BDBC(&globalCtx->msgCtx) == 0)) {
this->unk_39C = 29;
this->unk_398 = 0;
Animation_MorphToPlayOnce(&this->skelAnime, &D_060147E0, 0.0f);
this->unk_194 = Animation_GetLastFrame(&D_060147E0);
Animation_MorphToPlayOnce(&this->skelAnime, &object_ganon_anime3_Anim_0147E0, 0.0f);
this->unk_194 = Animation_GetLastFrame(&object_ganon_anime3_Anim_0147E0);
this->actor.shape.yOffset = 0.0f;
this->actor.world.pos.y = 1086.0f;
this->actor.gravity = -1.0f;
@ -2737,8 +2726,8 @@ void BossGanon2_Draw(Actor* thisx, GlobalContext* globalCtx) {
switch (this->unk_337) {
case 0:
BossGanon2_SetObjectSegment(this, globalCtx, OBJECT_GANON, true);
gSPSegment(POLY_XLU_DISP++, 0x08, SEGMENTED_TO_VIRTUAL(&D_0600A8E0));
gSPSegment(POLY_XLU_DISP++, 0x09, SEGMENTED_TO_VIRTUAL(&D_0600A8E0));
gSPSegment(POLY_XLU_DISP++, 0x08, SEGMENTED_TO_VIRTUAL(object_ganon_Tex_00A8E0));
gSPSegment(POLY_XLU_DISP++, 0x09, SEGMENTED_TO_VIRTUAL(object_ganon_Tex_00A8E0));
SkelAnime_DrawFlexOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.jointTable,
this->skelAnime.dListCount, NULL, BossGanon2_PostLimbDraw2, this);
break;
@ -2865,12 +2854,11 @@ void func_80905DA8(BossGanon2* this, GlobalContext* globalCtx) {
void func_809060E8(GlobalContext* globalCtx) {
s16 alpha;
u8 spCD;
u8 usingObjectGEff = false;
BossGanon2Effect* effect;
s16 i;
BossGanon2Effect* effects;
spCD = 0;
effects = effect = globalCtx->specialEffects;
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_boss_ganon2.c", 6086);
@ -2919,9 +2907,9 @@ void func_809060E8(GlobalContext* globalCtx) {
for (i = 0; i < ARRAY_COUNT(sParticles); i++, effect++) {
if (effect->type == 2) {
if (spCD == 0) {
if (!usingObjectGEff) {
BossGanon2_SetObjectSegment(NULL, globalCtx, OBJECT_GEFF, true);
spCD++;
usingObjectGEff++;
}
Matrix_Translate(effect->position.x, effect->position.y, effect->position.z, MTXMODE_NEW);
Matrix_Scale(effect->scale, effect->scale, effect->scale, MTXMODE_APPLY);
@ -2930,7 +2918,7 @@ void func_809060E8(GlobalContext* globalCtx) {
Matrix_RotateZ(effect->unk_38.x, MTXMODE_APPLY);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_ganon2.c", 6179),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_06000EA0);
gSPDisplayList(POLY_OPA_DISP++, gGanonRubbleDL);
}
}

View File

@ -1,10 +1,6 @@
#include "z_boss_ganon2.h"
#include "overlays/actors/ovl_En_Zl3/z_en_zl3.h"
// object_ganon2
extern u64 D_0601E188[]; // eye open
extern u64 D_0601E988[]; // eye half closed
extern u64 D_0601EA08[]; // eye closed
#include "objects/object_ganon2/object_ganon2.h"
typedef struct {
/* 0x00 */ u8 type;
@ -311,9 +307,9 @@ static s8 D_80907144[] = {
static Vec3f D_80907164 = { 800.0f, 420.0f, 100.0f };
static void* sEyeTextures[] = {
D_0601E188,
D_0601E988,
D_0601EA08,
object_ganon2_Tex_01E188,
object_ganon2_Tex_01E988,
object_ganon2_Tex_01EA08,
};
static Vec3f D_8090717C = { 0.0f, -2000.0f, 0.0f };

View File

@ -56,8 +56,6 @@ const ActorInit Demo_Geff_InitVars = {
(ActorFunc)DemoGeff_Draw,
};
extern Gfx gGanonRubbleDL[];
void DemoGeff_Destroy(Actor* thisx, GlobalContext* globalCtx) {
}

View File

@ -1,5 +1,6 @@
#include "z_demo_ik.h"
#include "vt.h"
#include "objects/object_ik/object_ik.h"
#define FLAGS 0x00000010
@ -24,26 +25,6 @@ void DemoIk_DrawNothing(DemoIk* this, GlobalContext* globalCtx);
void DemoIk_Type1Draw(DemoIk* this, GlobalContext* globalCtx);
void DemoIk_Type2Draw(DemoIk* this, GlobalContext* globalCtx);
extern AnimationHeader D_0600035C;
extern SkeletonHeader D_06000380;
extern AnimationHeader D_06000634;
extern SkeletonHeader D_06000660;
extern AnimationHeader D_060008DC;
extern AnimationHeader D_06000C6C;
extern SkeletonHeader D_06000C90;
extern AnimationHeader D_06000F0C;
extern Gfx D_06016BE0[];
extern Gfx D_06016CD8[];
extern Gfx D_06016F88[];
extern Gfx D_06017028[];
extern Gfx D_06017170[];
extern FlexSkeletonHeader D_0601EE60;
extern FlexSkeletonHeader D_06000F30;
extern AnimationHeader D_0601EB14;
extern FlexSkeletonHeader D_0601EB40;
extern AnimationHeader D_0601EE34;
extern FlexSkeletonHeader D_06000900;
void DemoIk_Destroy(Actor* thisx, GlobalContext* globalCtx) {
}
@ -183,18 +164,18 @@ void DemoIk_Type1Init(DemoIk* this, GlobalContext* globalCtx) {
switch (this->actor.params) {
case 0:
skeleton = &D_06000C90;
animation = &D_06000C6C;
skeleton = &object_ik_Skel_000C90;
animation = &object_ik_Anim_000C6C;
phi_f0 = 30.0f;
break;
case 1:
skeleton = &D_06000660;
animation = &D_06000634;
skeleton = &object_ik_Skel_000660;
animation = &object_ik_Anim_000634;
phi_f0 = 10.0f;
break;
default:
skeleton = &D_06000380;
animation = &D_0600035C;
skeleton = &object_ik_Skel_000380;
animation = &object_ik_Anim_00035C;
phi_f0 = 20.0f;
// No break is required for matching
}
@ -286,12 +267,12 @@ void DemoIk_Type1PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dLi
case 0:
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_demo_ik_inArmer.c", 390),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016BE0);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016BE0);
break;
case 2:
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_demo_ik_inArmer.c", 396),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016F88);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016F88);
break;
}
}
@ -321,20 +302,20 @@ void DemoIk_Type2Init(DemoIk* this, GlobalContext* globalCtx) {
switch (this->actor.params) {
case 3:
skeleton = &D_0601EB40;
animation = &D_0601EB14;
skeleton = &object_ik_Skel_01EB40;
animation = &object_ik_Anim_01EB14;
break;
case 4:
skeleton = &D_0601EE60;
animation = &D_0601EE34;
skeleton = &object_ik_Skel_01EE60;
animation = &object_ik_Anim_01EE34;
break;
case 5:
skeleton = &D_06000F30;
animation = &D_06000F0C;
skeleton = &object_ik_Skel_000F30;
animation = &object_ik_Anim_000F0C;
break;
default:
skeleton = &D_06000900;
animation = &D_060008DC;
skeleton = &object_ik_Skel_000900;
animation = &object_ik_Anim_0008DC;
}
SkelAnime_InitFlex(globalCtx, &this->skelAnime, skeleton, NULL, this->jointTable, this->morphTable, 2);
@ -444,22 +425,22 @@ void DemoIk_Type2PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dLi
case 3:
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_demo_ik_inFace.c", 274),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06017028);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_017028);
break;
case 4:
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_demo_ik_inFace.c", 280),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06017170);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_017170);
break;
case 5:
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_demo_ik_inFace.c", 286),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016BE0);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016BE0);
break;
default:
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_demo_ik_inFace.c", 292),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016CD8);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016CD8);
break;
}
}

View File

@ -6,6 +6,7 @@
#include "z_en_guest.h"
#include "objects/object_os_anime/object_os_anime.h"
#include "objects/object_boj/object_boj.h"
#include "vt.h"
#define FLAGS 0x00000019
@ -50,9 +51,7 @@ static InitChainEntry sInitChain[] = {
ICHAIN_F32(targetArrowOffset, 500, ICHAIN_STOP),
};
extern FlexSkeletonHeader D_060000F0;
extern AnimationHeader D_060042AC;
extern Gfx D_060059B0[];
extern FlexSkeletonHeader object_boj_Skel_0000F0;
void EnGuest_Init(Actor* thisx, GlobalContext* globalCtx) {
EnGuest* this = THIS;
@ -85,7 +84,7 @@ void EnGuest_Update(Actor* thisx, GlobalContext* globalCtx) {
this->actor.flags &= ~0x10;
Actor_ProcessInitChain(&this->actor, sInitChain);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_060000F0, NULL, this->jointTable, this->morphTable, 16);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_boj_Skel_0000F0, NULL, this->jointTable, this->morphTable, 16);
gSegments[6] = VIRTUAL_TO_PHYSICAL(globalCtx->objectCtx.status[this->osAnimeBankIndex].segment);
Animation_Change(&this->skelAnime, &gObjOsAnim_42AC, 1.0f, 0.0f, Animation_GetLastFrame(&gObjOsAnim_42AC),
ANIMMODE_LOOP, 0.0f);
@ -193,7 +192,7 @@ s32 EnGuest_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dLis
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_guest.c", 352);
if (limbIndex == 15) {
*dList = D_060059B0;
*dList = object_boj_DL_0059B0;
Matrix_Translate(1400.0f, 0.0f, 0.0f, MTXMODE_APPLY);
sp3C = this->unk_2A0.unk_08;
Matrix_RotateX((sp3C.y / 32768.0f) * M_PI, MTXMODE_APPLY);

View File

@ -6,6 +6,7 @@
#include "z_en_ik.h"
#include "scenes/dungeons/jyasinboss/jyasinboss_scene.h"
#include "objects/object_ik/object_ik.h"
#include "vt.h"
#define FLAGS 0x00000010
@ -53,32 +54,6 @@ void func_80A77EDC(EnIk* this, GlobalContext* globalCtx);
void func_80A78160(EnIk* this, GlobalContext* globalCtx);
void func_80A781CC(Actor* thisx, GlobalContext* globalCtx);
extern AnimationHeader D_06001C28;
extern AnimationHeader D_06002538;
extern AnimationHeader D_060029FC;
extern AnimationHeader D_060033C4;
extern AnimationHeader D_06003DBC;
extern AnimationHeader D_060045BC;
extern AnimationHeader D_0600485C;
extern AnimationHeader D_06005944;
extern AnimationHeader D_06006194;
extern AnimationHeader D_06006734;
extern AnimationHeader D_0600C114;
extern AnimationHeader D_0600CD70;
extern AnimationHeader D_0600DD50;
extern AnimationHeader D_0600ED24;
extern Gfx D_06016BE0[];
extern Gfx D_06016CD8[];
extern Gfx D_06016D88[];
extern Gfx D_06016EE8[];
extern Gfx D_06016F88[];
extern Gfx D_06018E78[];
extern Gfx D_06019100[];
extern Gfx D_06019E08[];
extern FlexSkeletonHeader D_0601E178;
extern AnimationHeader D_060203D8;
extern FlexSkeletonHeader D_060205C0;
static ColliderCylinderInit sCylinderInit = {
{
COLTYPE_NONE,
@ -295,7 +270,7 @@ Actor* func_80A74674(GlobalContext* globalCtx, Actor* actor) {
}
void func_80A74714(EnIk* this) {
f32 frames = Animation_GetLastFrame(&D_0600CD70);
f32 frames = Animation_GetLastFrame(&object_ik_Anim_00CD70);
f32 frame;
if (this->actor.params >= 2) {
@ -304,7 +279,7 @@ void func_80A74714(EnIk* this) {
frame = 0.0f;
}
Animation_Change(&this->skelAnime, &D_0600CD70, 0.0f, frame, frames, ANIMMODE_ONCE, 0.0f);
Animation_Change(&this->skelAnime, &object_ik_Anim_00CD70, 0.0f, frame, frames, ANIMMODE_ONCE, 0.0f);
this->unk_2F8 = 3;
this->actor.speedXZ = 0.0f;
EnIk_SetupAction(this, func_80A747C0);
@ -331,12 +306,12 @@ void func_80A747C0(EnIk* this, GlobalContext* globalCtx) {
}
void func_80A7489C(EnIk* this) {
f32 frames = Animation_GetLastFrame(&D_0600DD50);
f32 frames = Animation_GetLastFrame(&object_ik_Anim_00DD50);
this->actor.flags |= 5;
this->unk_2F8 = 4;
this->actor.speedXZ = 0.0f;
Animation_Change(&this->skelAnime, &D_0600DD50, 0.0f, 0.0f, frames, ANIMMODE_LOOP, 4.0f);
Animation_Change(&this->skelAnime, &object_ik_Anim_00DD50, 0.0f, 0.0f, frames, ANIMMODE_LOOP, 4.0f);
EnIk_SetupAction(this, func_80A7492C);
}
@ -363,11 +338,11 @@ void func_80A7492C(EnIk* this, GlobalContext* globalCtx) {
void func_80A74AAC(EnIk* this) {
this->unk_2F8 = 5;
if (this->unk_2FB == 0) {
Animation_Change(&this->skelAnime, &D_0600ED24, 1.0f, 0.0f, Animation_GetLastFrame(&D_0600ED24), ANIMMODE_LOOP,
Animation_Change(&this->skelAnime, &object_ik_Anim_00ED24, 1.0f, 0.0f, Animation_GetLastFrame(&object_ik_Anim_00ED24), ANIMMODE_LOOP,
-4.0f);
this->actor.speedXZ = 0.9f;
} else {
Animation_Change(&this->skelAnime, &D_06006734, 1.0f, 0.0f, Animation_GetLastFrame(&D_06006734), ANIMMODE_LOOP,
Animation_Change(&this->skelAnime, &object_ik_Anim_006734, 1.0f, 0.0f, Animation_GetLastFrame(&object_ik_Anim_006734), ANIMMODE_LOOP,
-4.0f);
Audio_PlayActorSound2(&this->actor, NA_SE_EN_IRONNACK_DASH);
this->actor.speedXZ = 2.5f;
@ -435,12 +410,12 @@ void func_80A74BA4(EnIk* this, GlobalContext* globalCtx) {
}
void func_80A74E2C(EnIk* this) {
f32 frames = Animation_GetLastFrame(&D_06001C28);
f32 frames = Animation_GetLastFrame(&object_ik_Anim_001C28);
this->unk_2FF = 1;
this->unk_2F8 = 6;
this->actor.speedXZ = 0.0f;
Animation_Change(&this->skelAnime, &D_06001C28, 1.5f, 0.0f, frames, ANIMMODE_ONCE, -4.0f);
Animation_Change(&this->skelAnime, &object_ik_Anim_001C28, 1.5f, 0.0f, frames, ANIMMODE_ONCE, -4.0f);
EnIk_SetupAction(this, func_80A74EBC);
}
@ -475,13 +450,13 @@ void func_80A74EBC(EnIk* this, GlobalContext* globalCtx) {
}
void func_80A7506C(EnIk* this) {
f32 frames = Animation_GetLastFrame(&D_060029FC);
f32 frames = Animation_GetLastFrame(&object_ik_Anim_0029FC);
this->unk_2FE = 0;
this->unk_2F9 = (s8)frames;
this->unk_2F8 = 7;
this->unk_2FF = this->unk_2FE;
Animation_Change(&this->skelAnime, &D_060029FC, 1.0f, 0.0f, frames, ANIMMODE_LOOP, -4.0f);
Animation_Change(&this->skelAnime, &object_ik_Anim_0029FC, 1.0f, 0.0f, frames, ANIMMODE_LOOP, -4.0f);
Audio_PlayActorSound2(&this->actor, NA_SE_EN_IRONNACK_PULLOUT);
EnIk_SetupAction(this, func_80A7510C);
}
@ -493,21 +468,21 @@ void func_80A7510C(EnIk* this, GlobalContext* globalCtx) {
if (this->unk_2F8 == 8) {
func_80A7489C(this);
} else {
frames = Animation_GetLastFrame(&D_06002538);
frames = Animation_GetLastFrame(&object_ik_Anim_002538);
this->unk_2F8 = 8;
Animation_Change(&this->skelAnime, &D_06002538, 1.5f, 0.0f, frames, ANIMMODE_ONCE_INTERP, -4.0f);
Animation_Change(&this->skelAnime, &object_ik_Anim_002538, 1.5f, 0.0f, frames, ANIMMODE_ONCE_INTERP, -4.0f);
}
}
}
void func_80A751C8(EnIk* this) {
f32 frames = Animation_GetLastFrame(&D_060033C4);
f32 frames = Animation_GetLastFrame(&object_ik_Anim_0033C4);
this->unk_2FF = 2;
this->unk_300 = 0;
this->unk_2F8 = 6;
this->actor.speedXZ = 0.0f;
Animation_Change(&this->skelAnime, &D_060033C4, 0.0f, 0.0f, frames, ANIMMODE_ONCE_INTERP, -6.0f);
Animation_Change(&this->skelAnime, &object_ik_Anim_0033C4, 0.0f, 0.0f, frames, ANIMMODE_ONCE_INTERP, -6.0f);
this->unk_2FC = 0;
EnIk_SetupAction(this, func_80A75260);
}
@ -541,11 +516,11 @@ void func_80A75260(EnIk* this, GlobalContext* globalCtx) {
}
void func_80A753D0(EnIk* this) {
f32 frames = Animation_GetLastFrame(&D_06003DBC);
f32 frames = Animation_GetLastFrame(&object_ik_Anim_003DBC);
this->unk_2FF = this->unk_2FE = 0;
this->unk_2F8 = 8;
Animation_Change(&this->skelAnime, &D_06003DBC, 1.5f, 0.0f, frames, ANIMMODE_ONCE_INTERP, -4.0f);
Animation_Change(&this->skelAnime, &object_ik_Anim_003DBC, 1.5f, 0.0f, frames, ANIMMODE_ONCE_INTERP, -4.0f);
EnIk_SetupAction(this, func_80A7545C);
}
@ -557,12 +532,12 @@ void func_80A7545C(EnIk* this, GlobalContext* globalCtx) {
}
void func_80A754A0(EnIk* this) {
f32 frames = Animation_GetLastFrame(&D_060033C4);
f32 frames = Animation_GetLastFrame(&object_ik_Anim_0033C4);
this->unk_2F8 = 1;
this->unk_2FF = 3;
this->actor.speedXZ = 0.0f;
Animation_Change(&this->skelAnime, &D_060033C4, 0.5f, 13.0f, frames, ANIMMODE_ONCE_INTERP, -4.0f);
Animation_Change(&this->skelAnime, &object_ik_Anim_0033C4, 0.5f, 13.0f, frames, ANIMMODE_ONCE_INTERP, -4.0f);
EnIk_SetupAction(this, func_80A75530);
}
@ -584,12 +559,12 @@ void func_80A75530(EnIk* this, GlobalContext* globalCtx) {
}
void func_80A755F0(EnIk* this) {
f32 frames = Animation_GetLastFrame(&D_0600485C);
f32 frames = Animation_GetLastFrame(&object_ik_Anim_00485C);
this->unk_2FE = 0;
this->unk_2F8 = 9;
this->actor.speedXZ = 0.0f;
Animation_Change(&this->skelAnime, &D_0600485C, 1.0f, 0.0f, frames, ANIMMODE_ONCE_INTERP, -4.0f);
Animation_Change(&this->skelAnime, &object_ik_Anim_00485C, 1.0f, 0.0f, frames, ANIMMODE_ONCE_INTERP, -4.0f);
EnIk_SetupAction(this, func_80A7567C);
}
@ -617,11 +592,11 @@ void func_80A75790(EnIk* this) {
this->unk_2F8 = 0;
yawDiff = yaw - this->actor.shape.rot.y;
if (ABS(yawDiff) <= 0x4000) {
Animation_Change(&this->skelAnime, &D_06006194, 1.0f, 0.0f, Animation_GetLastFrame(&D_06006194), ANIMMODE_ONCE,
Animation_Change(&this->skelAnime, &object_ik_Anim_006194, 1.0f, 0.0f, Animation_GetLastFrame(&object_ik_Anim_006194), ANIMMODE_ONCE,
-4.0f);
this->actor.speedXZ = -6.0f;
} else {
Animation_Change(&this->skelAnime, &D_060045BC, 1.0f, 0.0f, Animation_GetLastFrame(&D_060045BC), ANIMMODE_ONCE,
Animation_Change(&this->skelAnime, &object_ik_Anim_0045BC, 1.0f, 0.0f, Animation_GetLastFrame(&object_ik_Anim_0045BC), ANIMMODE_ONCE,
-4.0f);
this->actor.speedXZ = 6.0f;
}
@ -645,12 +620,12 @@ void func_80A758B0(EnIk* this, GlobalContext* globalCtx) {
}
void func_80A7598C(EnIk* this) {
f32 frames = Animation_GetLastFrame(&D_06005944);
f32 frames = Animation_GetLastFrame(&object_ik_Anim_005944);
this->unk_2FE = 0;
this->unk_2F8 = 2;
this->actor.speedXZ = 0.0f;
Animation_Change(&this->skelAnime, &D_06005944, 1.0f, 0.0f, frames, ANIMMODE_ONCE, -4.0f);
Animation_Change(&this->skelAnime, &object_ik_Anim_005944, 1.0f, 0.0f, frames, ANIMMODE_ONCE, -4.0f);
this->unk_2F9 = 0x18;
Audio_PlayActorSound2(&this->actor, NA_SE_EN_IRONNACK_DEAD);
Audio_PlayActorSound2(&this->actor, NA_SE_EN_NUTS_CUTBODY);
@ -697,7 +672,7 @@ void func_80A75C38(EnIk* this, GlobalContext* globalCtx) {
return;
}
if (this->shieldCollider.base.acFlags & AC_BOUNCED) {
temp_f0 = Animation_GetLastFrame(&D_0600485C) - 2.0f;
temp_f0 = Animation_GetLastFrame(&object_ik_Anim_00485C) - 2.0f;
if (this->skelAnime.curFrame < temp_f0) {
this->skelAnime.curFrame = temp_f0;
}
@ -835,11 +810,11 @@ s32 EnIk_OverrideLimbDraw3(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList,
if (limbIndex == 12) {
if (this->actor.params != 0) {
*dList = D_06018E78;
*dList = object_ik_DL_018E78;
}
} else if (limbIndex == 13) {
if (this->actor.params != 0) {
*dList = D_06019100;
*dList = object_ik_DL_019100;
}
} else if ((limbIndex == 26) || (limbIndex == 27)) {
if ((this->unk_2FA & 1)) {
@ -889,9 +864,9 @@ void EnIk_PostLimbDraw3(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Ve
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_ik_inFight.c", 1217),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
if (this->actor.params != 0) {
gSPDisplayList(POLY_XLU_DISP++, D_06019E08);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_019E08);
} else {
gSPDisplayList(POLY_XLU_DISP++, D_06016D88);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016D88);
}
} else if (limbIndex == 17) {
s32 i;
@ -927,25 +902,25 @@ void EnIk_PostLimbDraw3(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Ve
case 22:
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_ik_inFight.c", 1270),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016F88);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016F88);
break;
case 24:
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_ik_inFight.c", 1275),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016EE8);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016EE8);
break;
case 26:
if (!(this->unk_2FA & 1)) {
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_ik_inFight.c", 1281),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016BE0);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016BE0);
}
break;
case 27:
if (!(this->unk_2FA & 1)) {
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_ik_inFight.c", 1288),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016CD8);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016CD8);
}
break;
}
@ -1095,7 +1070,7 @@ void func_80A77148(EnIk* this) {
}
void func_80A77158(EnIk* this, GlobalContext* globalCtx) {
Animation_Change(&this->skelAnime, &D_0600C114, 1.0f, 0.0f, Animation_GetLastFrame(&D_0600C114), ANIMMODE_ONCE,
Animation_Change(&this->skelAnime, &object_ik_Anim_00C114, 1.0f, 0.0f, Animation_GetLastFrame(&object_ik_Anim_00C114), ANIMMODE_ONCE,
0.0f);
func_80A770C0(this, globalCtx, 4);
this->action = 1;
@ -1104,7 +1079,7 @@ void func_80A77158(EnIk* this, GlobalContext* globalCtx) {
}
void func_80A771E4(EnIk* this) {
Animation_Change(&this->skelAnime, &D_0600C114, 1.0f, 0.0f, Animation_GetLastFrame(&D_0600C114), ANIMMODE_ONCE,
Animation_Change(&this->skelAnime, &object_ik_Anim_00C114, 1.0f, 0.0f, Animation_GetLastFrame(&object_ik_Anim_00C114), ANIMMODE_ONCE,
0.0f);
this->action = 2;
this->drawMode = 1;
@ -1134,10 +1109,10 @@ void func_80A772EC(EnIk* this, GlobalContext* globalCtx) {
void func_80A7735C(EnIk* this, GlobalContext* globalCtx) {
s32 pad[3];
f32 frames = Animation_GetLastFrame(&D_060203D8);
f32 frames = Animation_GetLastFrame(&object_ik_Anim_0203D8);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_060205C0, NULL, this->jointTable, this->morphTable, 30);
Animation_Change(&this->skelAnime, &D_060203D8, 1.0f, 0.0f, frames, ANIMMODE_ONCE, 0.0f);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_ik_Skel_0205C0, NULL, this->jointTable, this->morphTable, 30);
Animation_Change(&this->skelAnime, &object_ik_Anim_0203D8, 1.0f, 0.0f, frames, ANIMMODE_ONCE, 0.0f);
this->action = 3;
this->drawMode = 2;
func_80A770C0(this, globalCtx, 4);
@ -1198,18 +1173,18 @@ void EnIk_PostLimbDraw2(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Ve
if (EnIk_curFrame(&this->actor) < 30.0f) {
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_en_ik_inAwake.c", 267),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016D88);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016D88);
}
} break;
case 22:
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_en_ik_inAwake.c", 274),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016F88);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016F88);
break;
case 24:
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_en_ik_inAwake.c", 280),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016EE8);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016EE8);
break;
case 26: {
EnIk* this = THIS;
@ -1218,7 +1193,7 @@ void EnIk_PostLimbDraw2(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Ve
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_en_ik_inAwake.c", 288),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016BE0);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016BE0);
}
} break;
case 27: {
@ -1228,7 +1203,7 @@ void EnIk_PostLimbDraw2(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Ve
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_en_ik_inAwake.c", 297),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016CD8);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016CD8);
}
} break;
}
@ -1359,27 +1334,27 @@ void EnIk_PostLimbDraw1(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Ve
case 12:
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_en_ik_inConfrontion.c", 575),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016D88);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016D88);
break;
case 22:
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_en_ik_inConfrontion.c", 581),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016F88);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016F88);
break;
case 24:
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_en_ik_inConfrontion.c", 587),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016EE8);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016EE8);
break;
case 26:
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_en_ik_inConfrontion.c", 593),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016BE0);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016BE0);
break;
case 27:
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_en_ik_inConfrontion.c", 599),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06016CD8);
gSPDisplayList(POLY_XLU_DISP++, object_ik_DL_016CD8);
break;
}
@ -1467,7 +1442,7 @@ void EnIk_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_Kill(&this->actor);
} else {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_0601E178, &D_0600C114, this->jointTable, this->morphTable,
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_ik_Skel_01E178, &object_ik_Anim_00C114, this->jointTable, this->morphTable,
30);
func_80A74398(&this->actor, globalCtx);
func_80A780D0(this, globalCtx);

View File

@ -6,6 +6,7 @@
#include "z_en_part.h"
#include "objects/object_tite/object_tite.h"
#include "objects/object_ik/object_ik.h"
#define FLAGS 0x00000010
@ -28,8 +29,6 @@ const ActorInit En_Part_InitVars = {
(ActorFunc)EnPart_Draw,
};
extern Gfx D_06015380[];
void EnPart_Init(Actor* thisx, GlobalContext* globalCtx) {
}
@ -86,7 +85,7 @@ void func_80ACDDE8(EnPart* this, GlobalContext* globalCtx) {
case 7:
case 8:
this->actor.world.rot.y = this->actor.parent->shape.rot.y;
if (this->displayList == D_06015380) {
if (this->displayList == object_ik_DL_015380) {
sign = -1.0f;
}
this->actor.velocity.y = 0.0f;

View File

@ -6,6 +6,7 @@
#include "z_eff_ss_fhg_flash.h"
#include "overlays/actors/ovl_Boss_Ganondrof/z_boss_ganondrof.h"
#include "objects/object_fhg/object_fhg.h"
#define rAlpha regs[0]
#define rObjBankIdx regs[2]
@ -26,7 +27,6 @@ EffectSsInit Effect_Ss_Fhg_Flash_InitVars = {
UNK_TYPE D_809A5178[];
Gfx D_809A5100[];
extern Gfx D_06012160[];
u32 EffectSsFhgFlash_Init(GlobalContext* globalCtx, u32 index, EffectSs* this, void* initParamsx) {
EffectSsFhgFlashInitParams* initParams = (EffectSsFhgFlashInitParams*)initParamsx;
@ -52,7 +52,7 @@ u32 EffectSsFhgFlash_Init(GlobalContext* globalCtx, u32 index, EffectSs* this, v
this->rAlpha = 255;
this->draw = EffectSsFhgFlash_DrawLightBall;
this->update = EffectSsFhgFlash_UpdateLightBall;
this->gfx = SEGMENTED_TO_VIRTUAL(D_06012160);
this->gfx = SEGMENTED_TO_VIRTUAL(gPhantomEnergyBallDL);
gSegments[6] = oldSeg6;
} else {
osSyncPrintf("Effect_Ss_Fhg_Flash_ct():pffd->modeエラー\n");

View File

@ -5,6 +5,7 @@
*/
#include "z_eff_ss_g_magma2.h"
#include "objects/object_kingdodongo/object_kingdodongo.h"
#define rPrimColorR regs[0]
#define rPrimColorG regs[1]
@ -33,8 +34,6 @@ EffectSsInit Effect_Ss_G_Magma2_InitVars = {
EffectSsGMagma2_Init,
};
extern Gfx D_06025A90[];
u32 EffectSsGMagma2_Init(GlobalContext* globalCtx, u32 index, EffectSs* this, void* initParamsx) {
s32 objBankIndex = Object_GetIndex(&globalCtx->objectCtx, OBJECT_KINGDODONGO);
s32 pad;
@ -51,7 +50,7 @@ u32 EffectSsGMagma2_Init(GlobalContext* globalCtx, u32 index, EffectSs* this, vo
this->life = 100;
this->draw = EffectSsGMagma2_Draw;
this->update = EffectSsGMagma2_Update;
this->gfx = SEGMENTED_TO_VIRTUAL(D_06025A90);
this->gfx = SEGMENTED_TO_VIRTUAL(object_kingdodongo_DL_025A90);
this->rTexIdx = 0;
this->rDrawMode = initParams->drawMode;
this->rUpdateRate = initParams->updateRate;

View File

@ -63,10 +63,9 @@ gKm1Skel = 0x060000F0;
gKw1Skel = 0x060000F0;
object_ahg_Skel_0000F0 = 0x060000F0;
object_bji_Skel_0000F0 = 0x060000F0;
object_boj_Skel_0000F0 = 0x060000F0;
// segment addresses
D_0300AA48 = 0x0300AA48;
D_03012B20 = 0x03012B20;
// z_player_lib
D_06025218 = 0x06025218;
D_060252D8 = 0x060252D8;
D_06025438 = 0x06025438;
@ -75,8 +74,8 @@ D_06025658 = 0x06025658;
D_060257B8 = 0x060257B8;
D_0602A738 = 0x0602A738;
D_0602CB48 = 0x0602CB48;
D_0602B288 = 0x0602B288;
D_0602AFF0 = 0x0602AFF0;
// z_kanfont
D_07000000 = 0x07000000;
D_070380D4 = 0x070380D4;
D_0703811C = 0x0703811C;
@ -87,34 +86,10 @@ link_animetion_segment = 0x07000000;
// z_title
D_01000000 = 0x01000000;
// z_demo_ik
D_0600035C = 0x0600035C;
D_06000380 = 0x06000380;
D_06000634 = 0x06000634;
D_06000660 = 0x06000660;
D_060008DC = 0x060008DC;
D_06000C6C = 0x06000C6C;
D_06000C90 = 0x06000C90;
D_06000F0C = 0x06000F0C;
D_06016BE0 = 0x06016BE0;
D_06016CD8 = 0x06016CD8;
D_06016F88 = 0x06016F88;
D_06017028 = 0x06017028;
D_06017170 = 0x06017170;
D_0601EE60 = 0x0601EE60;
D_06000F30 = 0x06000F30;
D_0601EB14 = 0x0601EB14;
D_0601EB40 = 0x0601EB40;
D_0601EE34 = 0x0601EE34;
D_06000900 = 0x06000900;
// z_arms_hook
D_0602B288 = 0x0602B288;
D_0602AFF0 = 0x0602AFF0;
// z_en_part
D_06015380 = 0x06015380;
// z_bg_pushbox
D_06000000 = 0x06000000;
D_06000350 = 0x06000350;
@ -125,47 +100,9 @@ D_0E000000 = 0x0E000000;
// z_vismono
D_0F000000 = 0x0F000000;
// z_en_guest
D_060000F0 = 0x060000F0;
D_060042AC = 0x060042AC;
D_060059B0 = 0x060059B0;
// z_eff_ss_g_magma2
D_06025A90 = 0x06025A90;
// z_eff_ss_dead_dd
D_01000000 = 0x01000000;
// z_eff_ss_fhg_flash
D_06012160 = 0x06012160;
// z_en_ik
D_06001C28 = 0x06001C28;
D_06002538 = 0x06002538;
D_060029FC = 0x060029FC;
D_060033C4 = 0x060033C4;
D_06003DBC = 0x06003DBC;
D_060045BC = 0x060045BC;
D_0600485C = 0x0600485C;
D_06005944 = 0x06005944;
D_06006194 = 0x06006194;
D_06006734 = 0x06006734;
D_0600C114 = 0x0600C114;
D_0600CD70 = 0x0600CD70;
D_0600DD50 = 0x0600DD50;
D_0600ED24 = 0x0600ED24;
D_06016BE0 = 0x06016BE0;
D_06016CD8 = 0x06016CD8;
D_06016D88 = 0x06016D88;
D_06016EE8 = 0x06016EE8;
D_06016F88 = 0x06016F88;
D_06018E78 = 0x06018E78;
D_06019100 = 0x06019100;
D_06019E08 = 0x06019E08;
D_0601E178 = 0x0601E178;
D_060203D8 = 0x060203D8;
D_060205C0 = 0x060205C0;
// z_en_okarina_Tag
D_02003C80 = 0x02003C80;
D_02005020 = 0x02005020;
@ -224,16 +161,6 @@ D_06010298 = 0x06010298;
D_06010514 = 0x06010514;
D_060114E8 = 0x060114E8;
// z_boss_ganon2
D_06000BFC = 0x06000BFC;
D_06000EA0 = 0x06000EA0;
D_0600A8E0 = 0x0600A8E0;
D_060147E0 = 0x060147E0;
D_0601E188 = 0x0601E188;
D_0601E988 = 0x0601E988;
D_0601EA08 = 0x0601EA08;
D_06021A90 = 0x06021A90;
// z_demo_kankyo
D_06000080 = 0x06000080;
D_06000DE0 = 0x06000DE0;