mirror of
https://github.com/HarbourMasters/Starship
synced 2026-07-29 07:34:59 -04:00
export configuration for ast_great_fox & ast_sector_z & ast_sector_y (#175)
* Matchpoint * remove symbols from undef * remove header * comments * var rename * remove header * first asset * progress * progress * progress, should be matching. Torch bug? * comments * update torch with Peter's fix * PRINTF * replace symbol usage * todo comment * D_SX_6000000 usage * progress * Matchpoint * progress replacing symbol usage (apo apo ahora) * remove headers * va bene * format * remove header
This commit is contained in:
committed by
GitHub
parent
4a572e7e30
commit
ec1d3da564
+4
-3
@@ -5,6 +5,7 @@
|
||||
#include "assets/ast_allies.h"
|
||||
#include "assets/ast_vs_player.h"
|
||||
#include "assets/ast_enmy_planet.h"
|
||||
#include "assets/ast_sector_z.h"
|
||||
|
||||
/* static */ Vec3f D_800C9A90 = { 0.0f, -10.0f, 0.0f };
|
||||
/* static */ Vec3f D_800C9A9C[4] = {
|
||||
@@ -2229,8 +2230,8 @@ void func_80035448(Actor* actor) {
|
||||
func_8004FEC0(actor);
|
||||
break;
|
||||
case 200:
|
||||
Animation_GetFrameData(&D_6006D64, 0, sp7C);
|
||||
Animation_DrawSkeleton(3, D_6006E50, sp7C, func_800352E0, NULL, actor, gCalcMatrix);
|
||||
Animation_GetFrameData(&D_SZ_6006D64, 0, sp7C);
|
||||
Animation_DrawSkeleton(3, D_SZ_6006E50, sp7C, func_800352E0, NULL, actor, gCalcMatrix);
|
||||
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -400.0f, 1);
|
||||
Matrix_Scale(gGfxMatrix, actor->fwork[29], actor->fwork[29], actor->fwork[29], 1);
|
||||
func_8005B1E8(actor, 3);
|
||||
@@ -2260,7 +2261,7 @@ void func_80035448(Actor* actor) {
|
||||
break;
|
||||
}
|
||||
} else if (gCurrentLevel == LEVEL_SECTOR_Z) {
|
||||
gSPDisplayList(gMasterDisp++, D_6004FE0) Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -60.0f, 1);
|
||||
gSPDisplayList(gMasterDisp++, D_SZ_6004FE0) Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -60.0f, 1);
|
||||
func_8005B1E8(actor, 2);
|
||||
} else if (gCurrentLevel == LEVEL_BOLSE) {
|
||||
gSPDisplayList(gMasterDisp++, D_6008770) Matrix_Push(&gGfxMatrix);
|
||||
|
||||
@@ -3,6 +3,8 @@
|
||||
#include "variables.h"
|
||||
#include "assets.h"
|
||||
#include "assets/ast_aquas.h"
|
||||
#include "assets/ast_sector_y.h"
|
||||
#include "assets/ast_sector_z.h"
|
||||
#include "assets/ast_vs_player.h"
|
||||
|
||||
extern Vec3f D_6030FD0[];
|
||||
@@ -55,7 +57,7 @@ CollisionHeader D_800D2B38[10] = {
|
||||
{ -1704.0f, -1006.0f, -4751.0f },
|
||||
{ 1704.0f, 1030.0f, 4842.0f },
|
||||
174,
|
||||
D_6033070,
|
||||
D_SY_6033070,
|
||||
D_6033E08,
|
||||
},
|
||||
{
|
||||
@@ -90,8 +92,8 @@ CollisionHeader D_800D2B38[10] = {
|
||||
{ -1386.0f, -696.0f, -2274.0f },
|
||||
{ 1386.0f, 1033.0f, 1833.0f },
|
||||
316,
|
||||
D_6007558,
|
||||
D_6008E08,
|
||||
D_SZ_6007558,
|
||||
D_6008E08, //! TODO: replace with D_SZ_6008E08 after factory fix
|
||||
},
|
||||
{
|
||||
{ -671.0f, 0.0f, -671.0f },
|
||||
|
||||
+1
-1
@@ -1465,7 +1465,7 @@ void func_80039A50(PlayerShot* shot) {
|
||||
Matrix_Scale(gGfxMatrix, 3.0f, 3.0f, 20.0f, 1);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
RCP_SetupDL_40();
|
||||
gSPDisplayList(gMasterDisp++, D_E00DFB0);
|
||||
gSPDisplayList(gMasterDisp++, D_GREAT_FOX_E00DFB0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
+4
-2
@@ -21,6 +21,8 @@ f32 D_80161394; // can be static
|
||||
#include "assets/ast_vs_player.h"
|
||||
#include "assets/ast_training.h"
|
||||
#include "assets/ast_sector_x.h"
|
||||
#include "assets/ast_sector_y.h"
|
||||
#include "assets/ast_sector_z.h"
|
||||
#include "assets/ast_aquas.h"
|
||||
#include "assets/ast_andross.h"
|
||||
#include "assets/ast_warp_zone.h"
|
||||
@@ -618,7 +620,7 @@ void func_8003E1E8(void) {
|
||||
Matrix_Scale(gGfxMatrix, 0.5f, 0.5f, 0.5f, 1);
|
||||
Matrix_RotateX(gGfxMatrix, M_PI / 2, 1);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_6002F80);
|
||||
gSPDisplayList(gMasterDisp++, D_SZ_6002F80);
|
||||
break;
|
||||
case LEVEL_SECTOR_Y:
|
||||
Matrix_Translate(gGfxMatrix, sp138 - 120.0f, -(sp134 - 120.0f), -290.0f, 1);
|
||||
@@ -626,7 +628,7 @@ void func_8003E1E8(void) {
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
RCP_SetupDL_62();
|
||||
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 192);
|
||||
gSPDisplayList(gMasterDisp++, D_6001840);
|
||||
gSPDisplayList(gMasterDisp++, D_SY_6001840);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -305,7 +305,7 @@ s32 D_80177B00[4][4];
|
||||
u8 D_Timer_80177B44;
|
||||
u8 D_80177B4C;
|
||||
u8 D_80177B6C;
|
||||
u8 D_80177B8C;
|
||||
u8 gGreatFoxIntact;
|
||||
u8 D_80177BAC;
|
||||
u16 D_Timer_80177BD0[4];
|
||||
u16 D_80177C30[4];
|
||||
|
||||
+16
-25
@@ -6,24 +6,19 @@
|
||||
|
||||
#include "global.h"
|
||||
#include "assets.h"
|
||||
#include "assets/ast_sector_x.h"
|
||||
#include "assets/ast_aquas.h"
|
||||
#include "assets/ast_great_fox.h"
|
||||
#include "assets/ast_enmy_space.h"
|
||||
#include "assets/ast_enmy_planet.h"
|
||||
#include "assets/ast_ending.h"
|
||||
#include "assets/ast_sector_x.h"
|
||||
#include "assets/ast_sector_y.h"
|
||||
#include "assets/ast_sector_z.h"
|
||||
|
||||
extern Gfx D_60320E0[];
|
||||
|
||||
extern s32 D_800C9E90[];
|
||||
|
||||
extern Animation D_60265B4;
|
||||
extern Animation D_602B8DC;
|
||||
extern Animation D_60034C4;
|
||||
extern Animation D_602A2CC;
|
||||
extern Animation D_602CEB4;
|
||||
extern Animation D_602B778;
|
||||
|
||||
extern f32 D_80178454;
|
||||
extern f32 D_80178458;
|
||||
extern f32 D_80178464;
|
||||
@@ -33,15 +28,11 @@ extern f32 D_80178478;
|
||||
|
||||
extern Gfx D_6000D80[];
|
||||
extern Gfx D_600BAA0[];
|
||||
extern Gfx D_60132A0[];
|
||||
extern Gfx D_60132B0[];
|
||||
extern Gfx D_6014A40[];
|
||||
extern Gfx D_6020810[];
|
||||
|
||||
extern Animation D_AQ_6020A40;
|
||||
extern Animation D_601F3B8;
|
||||
extern Limb* D_AQ_6020C6C[];
|
||||
extern Limb* D_602D140[];
|
||||
|
||||
#include "assets/ast_allies.h"
|
||||
|
||||
@@ -133,7 +124,7 @@ f32 D_800CA1D4[] = {
|
||||
};
|
||||
|
||||
Animation* D_800CA1F4[] = {
|
||||
&D_60265B4, &D_602B8DC, &D_60034C4, &D_602A2CC, &D_602CEB4, &D_602B778, &D_601F3B8,
|
||||
&D_SY_60265B4, &D_SY_602B8DC, &D_SY_60034C4, &D_SY_602A2CC, &D_SY_602CEB4, &D_SY_602B778, &D_SY_601F3B8,
|
||||
};
|
||||
|
||||
void func_80048AC0(s32 teamId) {
|
||||
@@ -2613,14 +2604,14 @@ void func_8004FEC0(Actor* actor) {
|
||||
|
||||
case 25:
|
||||
if (actor->index & 1) {
|
||||
gSPDisplayList(gMasterDisp++, D_6001DA0);
|
||||
gSPDisplayList(gMasterDisp++, D_SZ_6001DA0);
|
||||
} else {
|
||||
gSPDisplayList(gMasterDisp++, D_6001360);
|
||||
gSPDisplayList(gMasterDisp++, D_SZ_6001360);
|
||||
}
|
||||
break;
|
||||
|
||||
case 26:
|
||||
gSPDisplayList(gMasterDisp++, D_6004FE0);
|
||||
gSPDisplayList(gMasterDisp++, D_SZ_6004FE0);
|
||||
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -60.0f, 1);
|
||||
func_8005B1E8(actor, 2);
|
||||
break;
|
||||
@@ -2780,14 +2771,14 @@ void func_8004FEC0(Actor* actor) {
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
/* fallthrough */
|
||||
case 39:
|
||||
gSPDisplayList(gMasterDisp++, D_60097E0);
|
||||
gSPDisplayList(gMasterDisp++, D_SY_60097E0);
|
||||
func_8004FCB8(actor, 4);
|
||||
break;
|
||||
|
||||
case 36:
|
||||
Matrix_Scale(gGfxMatrix, actor->scale, actor->scale, actor->scale, 1);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_601D730);
|
||||
gSPDisplayList(gMasterDisp++, D_SY_601D730);
|
||||
func_8004FCB8(actor, 0);
|
||||
break;
|
||||
|
||||
@@ -2805,7 +2796,7 @@ void func_8004FEC0(Actor* actor) {
|
||||
Math_SmoothStepToVec3fArray(sp144, actor->vwork, 1, animFrameData, actor->fwork[2], 100.0f, .0f);
|
||||
RCP_SetupDL_30(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 150, 255, 150, 255);
|
||||
Animation_DrawSkeleton(1, D_602D140, actor->vwork, 0, 0, actor, &gIdentityMatrix);
|
||||
Animation_DrawSkeleton(1, D_SY_602D140, actor->vwork, 0, 0, actor, &gIdentityMatrix);
|
||||
|
||||
if (actor->fwork[0] != 0.0f) {
|
||||
RCP_SetupDL_49();
|
||||
@@ -2865,7 +2856,7 @@ void func_8004FEC0(Actor* actor) {
|
||||
break;
|
||||
|
||||
case 40:
|
||||
gSPDisplayList(gMasterDisp++, D_60132A0);
|
||||
gSPDisplayList(gMasterDisp++, D_SY_60132A0);
|
||||
break;
|
||||
|
||||
case 41:
|
||||
@@ -2873,7 +2864,7 @@ void func_8004FEC0(Actor* actor) {
|
||||
break;
|
||||
|
||||
case 42:
|
||||
gSPDisplayList(gMasterDisp++, D_6014A40);
|
||||
gSPDisplayList(gMasterDisp++, D_SY_6014A40);
|
||||
break;
|
||||
|
||||
case 43:
|
||||
@@ -2942,10 +2933,10 @@ void func_800515C4(void) {
|
||||
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, 1005);
|
||||
}
|
||||
|
||||
if (D_80177B8C != 0) {
|
||||
gSPDisplayList(gMasterDisp++, D_E000000);
|
||||
if (gGreatFoxIntact) {
|
||||
gSPDisplayList(gMasterDisp++, D_GREAT_FOX_E000000);
|
||||
} else {
|
||||
gSPDisplayList(gMasterDisp++, D_E003AB0);
|
||||
gSPDisplayList(gMasterDisp++, D_GREAT_FOX_E003AB0);
|
||||
}
|
||||
|
||||
if ((gCurrentLevel != LEVEL_AQUAS) &&
|
||||
@@ -2953,7 +2944,7 @@ void func_800515C4(void) {
|
||||
RCP_SetupDL_49();
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255);
|
||||
for (i = 0, var_s6_2 = D_800CA0BC; i < 4; i++, var_s6_2++) {
|
||||
if ((i != 1) || (D_80177B8C != 0)) {
|
||||
if ((i != 1) || gGreatFoxIntact) {
|
||||
sp9C[i] = 0.0f;
|
||||
if (i < 2) {
|
||||
if (!(gGameFrameCount & 0x38)) {
|
||||
|
||||
@@ -17,6 +17,7 @@ f32 D_801615B8[4];
|
||||
#include "assets/ast_allies.h"
|
||||
#include "assets/ast_landmaster.h"
|
||||
#include "assets/ast_vs_player.h"
|
||||
#include "assets/ast_sector_z.h"
|
||||
|
||||
s32 D_800CA220 = 0;
|
||||
u8 D_800CA224[] = { 0, 0, 0, 0 };
|
||||
@@ -1390,7 +1391,7 @@ void func_80057248(void) {
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gDPSetTextureFilter(gMasterDisp++, G_TF_POINT);
|
||||
if ((i == 0) && (gCurrentLevel == LEVEL_SECTOR_Z)) {
|
||||
gSPDisplayList(gMasterDisp++, D_6004330);
|
||||
gSPDisplayList(gMasterDisp++, D_SZ_6004330);
|
||||
} else {
|
||||
gSPDisplayList(gMasterDisp++, D_800CA354[i]);
|
||||
}
|
||||
|
||||
+17
-15
@@ -5,6 +5,8 @@
|
||||
#include "assets/ast_arwing.h"
|
||||
#include "assets/ast_training.h"
|
||||
#include "assets/ast_sector_x.h"
|
||||
#include "assets/ast_sector_y.h"
|
||||
#include "assets/ast_sector_z.h"
|
||||
#include "assets/ast_aquas.h"
|
||||
#include "assets/ast_7_ti_1.h"
|
||||
#include "assets/ast_andross.h"
|
||||
@@ -187,17 +189,17 @@ ObjectInfo D_800CC124[0x190] = {
|
||||
/* OBJ_80_103 */ {(void*) func_i5_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_80_104 */ {(void*) func_i5_801A23AC, 1, (ObjectFunc) func_i5_801A0BD8, D_6036594, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_80_105 */ {(void*) func_i5_801A23AC, 1, (ObjectFunc) NULL, D_6036204, 1300.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_80_106 */ {(void*) D_60097E0, 0, (ObjectFunc) NULL, D_6034478, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_80_107 */ {(void*) D_601D730, 0, (ObjectFunc) NULL, D_603450C, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_80_108 */ {(void*) D_60102C0, 0, (ObjectFunc) NULL, D_6034588, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_80_109 */ {(void*) D_60036A0, 0, (ObjectFunc) func_i6_801A4E44, D_6034664, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_80_110 */ {(void*) D_6005360, 0, (ObjectFunc) NULL, D_6034770, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_80_106 */ {(void*) D_SY_60097E0, 0, (ObjectFunc) NULL, D_SY_6034478, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_80_107 */ {(void*) D_SY_601D730, 0, (ObjectFunc) NULL, D_SY_603450C, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_80_108 */ {(void*) D_SY_60102C0, 0, (ObjectFunc) NULL, D_SY_6034588, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_80_109 */ {(void*) D_SY_60036A0, 0, (ObjectFunc) func_i6_801A4E44, D_SY_6034664, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_80_110 */ {(void*) D_SY_6005360, 0, (ObjectFunc) NULL, D_SY_6034770, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_80_111 */ {(void*) func_80074F90, 1, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_80_112 */ {(void*) D_600F6C0, 0, (ObjectFunc) func_i6_801A52B8, D_60347F0, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_80_113 */ {(void*) D_601B610, 0, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_114 */ {(void*) D_601C6A0, 0, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_115 */ {(void*) D_60188D0, 0, (ObjectFunc) NULL, D_603486C, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_116 */ {(void*) D_60034D0, 0, (ObjectFunc) NULL, D_60347D4, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_112 */ {(void*) D_SY_600F6C0, 0, (ObjectFunc) func_i6_801A52B8, D_SY_60347F0, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_80_113 */ {(void*) D_SY_601B610, 0, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_114 */ {(void*) D_SY_601C6A0, 0, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_115 */ {(void*) D_SY_60188D0, 0, (ObjectFunc) NULL, D_SY_603486C, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_116 */ {(void*) D_SY_60034D0, 0, (ObjectFunc) NULL, D_SY_60347D4, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_117 */ {(void*) D_AQ_60231C0, 0, (ObjectFunc) NULL, D_AQ_6030C60, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_118 */ {(void*) D_AQ_6011EE0, 0, (ObjectFunc) NULL, D_AQ_6030C7C, 2000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_80_119 */ {(void*) D_AQ_6015730, 0, (ObjectFunc) NULL, D_AQ_6030D74, 2000.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
@@ -237,9 +239,9 @@ ObjectInfo D_800CC124[0x190] = {
|
||||
/* OBJ_80_153 */ {(void*) D_600B8B0, 0, (ObjectFunc) NULL, D_6011C48, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_154 */ {(void*) D_600BAF0, 0, (ObjectFunc) NULL, D_601115C, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_155 */ {(void*) NULL, 0, (ObjectFunc) NULL, D_800CBF34, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_156 */ {(void*) func_i6_80197CB8, 1, (ObjectFunc) NULL, D_6034368, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_157 */ {(void*) D_6001DA0, 0, (ObjectFunc) NULL, D_600924C, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_158 */ {(void*) D_6001360, 0, (ObjectFunc) NULL, D_60092E8, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_156 */ {(void*) func_i6_80197CB8, 1, (ObjectFunc) NULL, D_SY_6034368, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_157 */ {(void*) D_SZ_6001DA0, 0, (ObjectFunc) NULL, D_SZ_600924C, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_158 */ {(void*) D_SZ_6001360, 0, (ObjectFunc) NULL, D_SZ_60092E8, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_159 */ {(void*) D_6008370, 0, (ObjectFunc) NULL, D_601668C, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_80_160 */ {(void*) D_6010960, 0, (ObjectFunc) NULL, D_6016714, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_4C_161 */ {(void*) D_602F7C0, 0, (ObjectFunc) func_80068FE0, D_603E468, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
@@ -285,7 +287,7 @@ ObjectInfo D_800CC124[0x190] = {
|
||||
/* OBJ_ACTOR_201 */ {(void*) func_800598E8, 1, (ObjectFunc) func_8006AC08, D_602F684, 100.0f, 0, 1, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_202 */ {(void*) func_80059A24, 1, (ObjectFunc) func_8006AD18, D_602F6A0, 100.0f, 0, 1, 39, 0, 180.0f, 1 },
|
||||
/* OBJ_ACTOR_203 */ {(void*) func_i2_8018F884, 1, (ObjectFunc) func_i2_8018F330, D_800CBF34, 1000.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_204 */ {(void*) func_i6_801A4CB0, 1, (ObjectFunc) func_i6_801A3BD4, D_603405C, 1000.0f, 0, 0, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_204 */ {(void*) func_i6_801A4CB0, 1, (ObjectFunc) func_i6_801A3BD4, D_SY_603405C, 1000.0f, 0, 0, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_205 */ {(void*) func_i5_801A12C4, 1, (ObjectFunc) func_i5_8019C778, D_60359C8, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_206 */ {(void*) func_i5_801A12C4, 1, (ObjectFunc) func_i5_801AC438, D_6035A48, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_207 */ {(void*) func_i5_801AC294, 2, (ObjectFunc) func_i5_801A7E7C, D_603677C, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
@@ -394,7 +396,7 @@ ObjectInfo D_800CC124[0x190] = {
|
||||
/* OBJ_BOSS_310 */ {(void*) func_8002E64C, 1, (ObjectFunc) func_8002E628, D_800CBF34, 0.0f, 0, 0, 40, 1, 0.0f, 10 },
|
||||
/* OBJ_BOSS_311 */ {(void*) func_i4_80191AFC, 2, (ObjectFunc) func_i4_801912FC, D_6011C80, 0.0f, 0, 0, 40, 1, 0.0f, 10 },
|
||||
/* OBJ_BOSS_312 */ {(void*) func_i6_80196288, 2, (ObjectFunc) func_i6_80196210, D_60166F4, 0.0f, 0, 0, 40, 1, 0.0f, 10 },
|
||||
/* OBJ_BOSS_313 */ {(void*) func_i4_8019E98C, 1, (ObjectFunc) func_i4_8019E454, D_6009388, 0.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_313 */ {(void*) func_i4_8019E98C, 1, (ObjectFunc) func_i4_8019E454, D_SZ_6009388, 0.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_314 */ {(void*) func_i6_8019E2C4, 2, (ObjectFunc) func_i6_8019C888, D_800CBF34, 0.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_SO */ {(void*) func_i3_801A71B8, 2, (ObjectFunc) func_i3_801A5B3C, D_800CBF34, 0.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_316 */ {(void*) func_i4_801968F4, 1, (ObjectFunc) func_i4_801946C4, D_6011058, 0.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
|
||||
@@ -22,6 +22,7 @@ extern Gfx D_601BAD0[];
|
||||
#include "assets/ast_bg_planet.h"
|
||||
#include "assets/ast_training.h"
|
||||
#include "assets/ast_sector_x.h"
|
||||
#include "assets/ast_sector_y.h"
|
||||
#include "assets/ast_aquas.h"
|
||||
#include "assets/ast_area_6.h"
|
||||
#include "assets/ast_A_ti.h"
|
||||
@@ -807,7 +808,7 @@ void func_800798F0(Effect* effect) {
|
||||
|
||||
case 16:
|
||||
gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK);
|
||||
gSPDisplayList(gMasterDisp++, D_600F6C0);
|
||||
gSPDisplayList(gMasterDisp++, D_SY_600F6C0);
|
||||
gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK);
|
||||
break;
|
||||
|
||||
|
||||
+10
-8
@@ -2,6 +2,8 @@
|
||||
#include "global.h"
|
||||
#include "assets.h"
|
||||
#include "assets/ast_sector_x.h"
|
||||
#include "assets/ast_sector_y.h"
|
||||
#include "assets/ast_sector_z.h"
|
||||
#include "assets/ast_aquas.h"
|
||||
#include "assets/ast_andross.h"
|
||||
#include "assets/ast_area_6.h"
|
||||
@@ -15,9 +17,9 @@ u8 D_80161684;
|
||||
#include "fox_enmy_assets.h"
|
||||
|
||||
ObjectInit* D_800CFDA0[] = {
|
||||
D_60371A4, D_6026CC4, D_SX_602A164, D_A6_6023F64, D_A6_60287A4, D_602E4F4, D_6007E74,
|
||||
D_601F234, D_6026714, D_C035154, D_TR_6006AA4, D_6031000, D_6006C60, D_602E5C8,
|
||||
D_600EAD4, NULL, D_6011044, D_600FF74, D_6006EB4, D_6014D94, D_vs_player_302DE3C,
|
||||
D_60371A4, D_6026CC4, D_SX_602A164, D_A6_6023F64, D_A6_60287A4, D_SY_602E4F4, D_6007E74,
|
||||
D_601F234, D_6026714, D_C035154, D_TR_6006AA4, D_6031000, D_6006C60, D_602E5C8,
|
||||
D_600EAD4, NULL, D_6011044, D_600FF74, D_SZ_6006EB4, D_6014D94, D_vs_player_302DE3C,
|
||||
};
|
||||
s32 D_800CFDF4[] = {
|
||||
OBJ_80_0,
|
||||
@@ -64,11 +66,11 @@ u32 D_800CFF54[9] = {
|
||||
};
|
||||
|
||||
void func_80060F30(f32* pos, u32 sfxId, s32 arg2) {
|
||||
(void) "CHIME SET \n";
|
||||
(void) "BOMB SET 1\n";
|
||||
(void) "BOMB SET 2\n";
|
||||
(void) "center_X %f\n";
|
||||
(void) "Enm->obj.pos.x %f\n";
|
||||
PRINTF("CHIME SET \n");
|
||||
PRINTF("BOMB SET 1\n");
|
||||
PRINTF("BOMB SET 2\n");
|
||||
PRINTF("center_X %f\n");
|
||||
PRINTF("Enm->obj.pos.x %f\n");
|
||||
if (!gVersusMode) {
|
||||
AUDIO_PLAY_SFX(sfxId, gDefaultSfxSource, 4);
|
||||
} else {
|
||||
|
||||
+23
-22
@@ -11,6 +11,7 @@ s32 D_80161690;
|
||||
#include "assets/ast_warp_zone.h"
|
||||
#include "assets/ast_allies.h"
|
||||
#include "assets/ast_sector_x.h"
|
||||
#include "assets/ast_sector_y.h"
|
||||
#include "assets/ast_aquas.h"
|
||||
#include "assets/ast_7_ti_1.h"
|
||||
#include "assets/ast_andross.h"
|
||||
@@ -905,26 +906,26 @@ UnkStruct_D003C D_800D003C[108] = {
|
||||
{ NULL, D_SX_603238C, 1.0f, 500.0f, 3000.0f, 1, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_SX_6020D20, D_SX_60328CC, -1.0f, 2100.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ NULL, D_800CBF34, 1.0f, 100.0f, 3001.0f, 2, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_60097E0, D_6034478, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_601D730, D_603450C, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_SY_60097E0, D_SY_6034478, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_SY_601D730, D_SY_603450C, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ NULL, D_800CBE8C, 1.0f, 20000.0f, 3000.0f, 1, 0, 2, 0, 0.0f, 0 },
|
||||
{ D_60102C0, D_6034588, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_SY_60102C0, D_SY_6034588, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_6017B60, D_800CBEC4, -1.0f, 300.0f, 3001.0f, 0, 0, 0, 0, 1.0f, 1 },
|
||||
{ D_6004D00, D_800CBEC4, 1.0f, 100.0f, 3000.0f, 1, 0, 4, 0, 1.0f, 1 },
|
||||
{ D_601A880, D_800CBE8C, -1.0f, 100.0f, 3000.0f, 1, 0, 0, 0, 0.0f, 1 },
|
||||
{ NULL, D_603405C, 0.3f, 100.0f, 3000.0f, 0, 0, 1, 0, 1.0f, 1 },
|
||||
{ NULL, D_603405C, 0.3f, 100.0f, 3000.0f, 0, 0, 1, 0, 1.0f, 1 },
|
||||
{ NULL, D_603405C, 0.3f, 100.0f, 3000.0f, 0, 0, 1, 0, 1.0f, 1 },
|
||||
{ D_6015D60, D_6034124, 2.0f, 100.0f, 3000.0f, 0, 0, 1, 0, 1.0f, 1 },
|
||||
{ NULL, D_SY_603405C, 0.3f, 100.0f, 3000.0f, 0, 0, 1, 0, 1.0f, 1 },
|
||||
{ NULL, D_SY_603405C, 0.3f, 100.0f, 3000.0f, 0, 0, 1, 0, 1.0f, 1 },
|
||||
{ NULL, D_SY_603405C, 0.3f, 100.0f, 3000.0f, 0, 0, 1, 0, 1.0f, 1 },
|
||||
{ D_SY_6015D60, D_SY_6034124, 2.0f, 100.0f, 3000.0f, 0, 0, 1, 0, 1.0f, 1 },
|
||||
{ NULL, D_602C1A0, -1.0f, 1000.0f, 3000.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_SX_600B540, D_SX_60328E8, -1.0f, 2100.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_ENMY_SPACE_4000EC0, D_800CBE8C, 1.5f, 100.0f, 3000.0f, 1, 0, 1, 0, 1.0f, 1 },
|
||||
{ D_ENMY_SPACE_4008D50, D_800CBE8C, 1.5f, 100.0f, 3000.0f, 1, 0, 1, 0, 1.0f, 1 },
|
||||
{ NULL, D_800CBF34, -1.0f, 2000.0f, 3000.0f, 0, 0, 3, 0, 0.0f, 1 },
|
||||
{ D_60102C0, D_800CBF34, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_601F3D0, D_800CBF34, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_6022B10, D_800CBF34, 2.0f, 100.0f, 3000.0f, 0, 0, 1, 0, 0.0f, 1 },
|
||||
{ D_60209F0, D_800CBF34, 2.0f, 100.0f, 3000.0f, 0, 0, 1, 0, 0.0f, 1 },
|
||||
{ D_SY_60102C0, D_800CBF34, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_SY_601F3D0, D_800CBF34, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_SY_6022B10, D_800CBF34, 2.0f, 100.0f, 3000.0f, 0, 0, 1, 0, 0.0f, 1 },
|
||||
{ D_SY_60209F0, D_800CBF34, 2.0f, 100.0f, 3000.0f, 0, 0, 1, 0, 0.0f, 1 },
|
||||
{ D_6019430, D_800CBEC4, 2.5f, 100.0f, 3000.0f, 1, 0, 0, 0, 1.0f, 1 },
|
||||
{ D_6018960, D_800CBE8C, 2.5f, 100.0f, 3000.0f, 1, 0, 0, 0, 1.0f, 1 },
|
||||
{ D_6009F50, D_800CBF34, -1.0f, 100.0f, 3000.0f, 1, 0, 0, 0, 0.0f, 1 },
|
||||
@@ -932,16 +933,16 @@ UnkStruct_D003C D_800D003C[108] = {
|
||||
{ D_600C2A0, D_800CBEC4, -1.0f, 100.0f, 8000.0f, 1, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_600BD40, D_800CBE8C, -1.0f, 100.0f, 8000.0f, 1, 0, 0, 0, 0.0f, 1 },
|
||||
{ NULL, D_602F604, 3.0f, 100.0f, 3000.0f, 2, 0, 1, 0, 1.0f, 1 },
|
||||
{ D_60205D0, D_603445C, 3.0f, 100.0f, 3000.0f, 1, 0, 0, 0, 1.0f, 1 },
|
||||
{ D_60036A0, D_6034664, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_601AD70, D_800CBF34, 4.0f, 100.0f, 3000.0f, 0, 0, 1, 0, 0.0f, 1 },
|
||||
{ D_SY_60205D0, D_SY_603445C, 3.0f, 100.0f, 3000.0f, 1, 0, 0, 0, 1.0f, 1 },
|
||||
{ D_SY_60036A0, D_SY_6034664, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_SY_601AD70, D_800CBF34, 4.0f, 100.0f, 3000.0f, 0, 0, 1, 0, 0.0f, 1 },
|
||||
{ D_arwing_3007650, D_800CBF34, 1.0f, 100.0f, 3000.0f, 2, 0, 5, 0, 0.0f, 1 },
|
||||
{ D_60034D0, D_60347D4, 3.0f, 100.0f, 3000.0f, 1, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_6005360, D_6034770, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_600F6C0, D_60347F0, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_601B610, D_800CBF34, -1.0f, 10000.0f, 3001.0f, 0, 0, 1, 0, 0.0f, 1 },
|
||||
{ D_601C6A0, D_800CBF34, -1.0f, 10000.0f, 3001.0f, 0, 0, 1, 0, 0.0f, 1 },
|
||||
{ D_60188D0, D_603486C, 3.0f, 100.0f, 3001.0f, 0, 0, 1, 0, 0.0f, 1 },
|
||||
{ D_SY_60034D0, D_SY_60347D4, 3.0f, 100.0f, 3000.0f, 1, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_SY_6005360, D_SY_6034770, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_SY_600F6C0, D_SY_60347F0, -1.0f, 10000.0f, 3001.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
{ D_SY_601B610, D_800CBF34, -1.0f, 10000.0f, 3001.0f, 0, 0, 1, 0, 0.0f, 1 },
|
||||
{ D_SY_601C6A0, D_800CBF34, -1.0f, 10000.0f, 3001.0f, 0, 0, 1, 0, 0.0f, 1 },
|
||||
{ D_SY_60188D0, D_SY_603486C, 3.0f, 100.0f, 3001.0f, 0, 0, 1, 0, 0.0f, 1 },
|
||||
{ NULL, D_800CBEA8, 1.0f, 100.0f, 3000.0f, 2, 0, 0, 0, 1.0f, 0 },
|
||||
{ NULL, D_602C294, 1.0f, 100.0f, 3000.0f, 0, 0, 0, 0, 1.0f, 1 },
|
||||
{ NULL, D_601B474, -1.0f, 100.0f, 3000.0f, 2, 0, 0, 0, 0.0f, 1 },
|
||||
@@ -1013,7 +1014,7 @@ void func_8006D36C(Actor* actor) {
|
||||
var_v1 = SEGMENTED_TO_VIRTUAL(D_A6_6027F50);
|
||||
break;
|
||||
case LEVEL_SECTOR_Y:
|
||||
var_v1 = SEGMENTED_TO_VIRTUAL(D_6032E18);
|
||||
var_v1 = SEGMENTED_TO_VIRTUAL(D_SY_6032E18);
|
||||
break;
|
||||
case LEVEL_SOLAR:
|
||||
var_v1 = SEGMENTED_TO_VIRTUAL(D_6020DD0);
|
||||
@@ -3757,7 +3758,7 @@ bool func_80074F04(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thi
|
||||
|
||||
s32 func_80074F90(Object_80* obj80) {
|
||||
RCP_SetupDL(&gMasterDisp, 0x3C);
|
||||
gSPDisplayList(gMasterDisp++, D_601AD70);
|
||||
gSPDisplayList(gMasterDisp++, D_SY_601AD70);
|
||||
RCP_SetupDL(&gMasterDisp, 0x40);
|
||||
return 0;
|
||||
}
|
||||
|
||||
+27
-25
@@ -1,17 +1,5 @@
|
||||
// #include "prevent_bss_reordering.h"
|
||||
#include "sf64math.h"
|
||||
#include "assets/ast_blue_marine.h"
|
||||
#include "assets/ast_landmaster.h"
|
||||
#include "assets/ast_training.h"
|
||||
#include "assets/ast_andross.h"
|
||||
#include "assets/ast_star_wolf.h"
|
||||
#include "assets/ast_font.h"
|
||||
#include "assets/ast_vs_player.h"
|
||||
#include "assets/ast_bg_planet.h"
|
||||
#include "assets/ast_bg_space.h"
|
||||
#include "assets/ast_area_6.h"
|
||||
#include "assets/ast_aquas.h"
|
||||
|
||||
// BSS section range:
|
||||
// D_801616A0 <==> D_80161910
|
||||
|
||||
@@ -84,12 +72,26 @@ s32 D_80161900[20];
|
||||
#include "global.h"
|
||||
#include "assets.h"
|
||||
|
||||
#include "assets/ast_blue_marine.h"
|
||||
#include "assets/ast_landmaster.h"
|
||||
#include "assets/ast_training.h"
|
||||
#include "assets/ast_andross.h"
|
||||
#include "assets/ast_star_wolf.h"
|
||||
#include "assets/ast_font.h"
|
||||
#include "assets/ast_vs_player.h"
|
||||
#include "assets/ast_bg_planet.h"
|
||||
#include "assets/ast_bg_space.h"
|
||||
#include "assets/ast_area_6.h"
|
||||
#include "assets/ast_aquas.h"
|
||||
#include "assets/ast_sector_x.h"
|
||||
#include "assets/ast_sector_y.h"
|
||||
#include "assets/ast_sector_z.h"
|
||||
|
||||
void func_80087788(void);
|
||||
|
||||
// Segmented addresses
|
||||
|
||||
extern u8 D_6000000[];
|
||||
extern u16 D_6000840[];
|
||||
extern u16 D_6000C80[];
|
||||
extern u8 D_6000D80[];
|
||||
extern u8 D_6001260[];
|
||||
@@ -559,15 +561,15 @@ s32 func_800863C8(void) {
|
||||
}
|
||||
|
||||
UnkStruct_D_800D1AEC D_800D1AEC[] = {
|
||||
{ D_500A050, 16, 15, D_6000000, 128, 28 }, { D_500A140, 16, 15, D_6000000, 96, 28 },
|
||||
{ D_500A140, 16, 15, D_6000000, 176, 12 }, { D_500A230, 16, 15, D_6000000, 168, 28 },
|
||||
{ D_500A230, 16, 15, D_6000000, 168, 28 }, { D_500A230, 16, 15, D_AQ_6000000, 96, 13 },
|
||||
{ D_500A320, 16, 15, D_6000000, 176, 12 }, { D_500A320, 16, 15, D_6000000, 112, 13 },
|
||||
{ D_500A320, 16, 15, D_6000000, 112, 28 }, { D_500A410, 16, 15, D_6000000, 96, 28 },
|
||||
{ D_500A410, 16, 15, D_6000000, 160, 28 }, { D_500A410, 16, 15, D_6000000, 176, 12 },
|
||||
{ D_500A500, 16, 15, D_6000000, 168, 19 }, { D_500A500, 16, 15, D_A6_6000000, 104, 28 },
|
||||
{ D_500A5F0, 16, 15, D_6000D80, 128, 28 }, { D_500A5F0, 16, 15, D_60012D0, 128, 28 },
|
||||
{ D_500A5F0, 16, 15, D_C000A80, 128, 28 }, { D_5009F60, 16, 15, D_5000D50, 80, 12 },
|
||||
{ D_500A050, 16, 15, D_6000000, 128, 28 }, { D_500A140, 16, 15, D_6000000, 96, 28 },
|
||||
{ D_500A140, 16, 15, D_SY_6000000, 176, 12 }, { D_500A230, 16, 15, D_6000000, 168, 28 },
|
||||
{ D_500A230, 16, 15, D_6000000, 168, 28 }, { D_500A230, 16, 15, D_AQ_6000000, 96, 13 },
|
||||
{ D_500A320, 16, 15, D_SZ_6000000, 176, 12 }, { D_500A320, 16, 15, D_6000000, 112, 13 },
|
||||
{ D_500A320, 16, 15, D_6000000, 112, 28 }, { D_500A410, 16, 15, D_6000000, 96, 28 },
|
||||
{ D_500A410, 16, 15, D_6000000, 160, 28 }, { D_500A410, 16, 15, D_SX_6000000, 176, 12 },
|
||||
{ D_500A500, 16, 15, D_6000000, 168, 19 }, { D_500A500, 16, 15, D_A6_6000000, 104, 28 },
|
||||
{ D_500A5F0, 16, 15, D_6000D80, 128, 28 }, { D_500A5F0, 16, 15, D_60012D0, 128, 28 },
|
||||
{ D_500A5F0, 16, 15, D_C000A80, 128, 28 }, { D_5009F60, 16, 15, D_5000D50, 80, 12 },
|
||||
};
|
||||
|
||||
void func_80086444(void) {
|
||||
@@ -1757,7 +1759,7 @@ void func_800898F0(void) {
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 208, 80, 255);
|
||||
Matrix_Scale(gGfxMatrix, 30.0f, 30.0f, 1.0f, 1);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_6004570);
|
||||
gSPDisplayList(gMasterDisp++, D_SZ_6004570);
|
||||
}
|
||||
|
||||
f32 D_800D1E10 = 0.0f;
|
||||
@@ -2103,7 +2105,7 @@ s32 func_8008A4DC(void) {
|
||||
|
||||
switch (gCurrentLevel) {
|
||||
case LEVEL_SECTOR_Z:
|
||||
TextureRect_8bIA(&gMasterDisp, D_60012D0, 16, 9, 251.0f + D_800D1E10, 181.0f, 1.00f, 1.00f);
|
||||
TextureRect_8bIA(&gMasterDisp, D_SZ_60012D0, 16, 9, 251.0f + D_800D1E10, 181.0f, 1.00f, 1.00f);
|
||||
break;
|
||||
|
||||
case LEVEL_FORTUNA:
|
||||
@@ -2122,7 +2124,7 @@ s32 func_8008A4DC(void) {
|
||||
if ((y < 150.0f) || (y > 206.0f)) {
|
||||
break;
|
||||
}
|
||||
TextureRect_8bIA(&gMasterDisp, D_6000840, 64, 64, 250.0f + D_800D1E10, temp, 0.25f, 0.25f);
|
||||
TextureRect_8bIA(&gMasterDisp, D_SY_6000840, 64, 64, 250.0f + D_800D1E10, temp, 0.25f, 0.25f);
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
+8
-6
@@ -4,6 +4,8 @@
|
||||
#include "fox_map.h"
|
||||
#include "assets/ast_training.h"
|
||||
#include "assets/ast_sector_x.h"
|
||||
#include "assets/ast_sector_y.h"
|
||||
#include "assets/ast_sector_z.h"
|
||||
#include "assets/ast_aquas.h"
|
||||
#include "assets/ast_andross.h"
|
||||
#include "assets/ast_arwing.h"
|
||||
@@ -378,7 +380,7 @@ void func_800A55B0(void) {
|
||||
s32 i;
|
||||
s32 j;
|
||||
|
||||
D_80178310 = SEGMENTED_TO_VIRTUAL(D_6030B14);
|
||||
D_80178310 = SEGMENTED_TO_VIRTUAL(D_SY_6030B14);
|
||||
|
||||
for (j = 0, obj58 = gObjects58; j < 200; j++) {
|
||||
if (D_80178310[j].id <= OBJ_INVALID) {
|
||||
@@ -461,9 +463,9 @@ void func_800A5844(void) {
|
||||
}
|
||||
|
||||
EnvSettings* D_800D2F98[21] = {
|
||||
&D_6037160, &D_ENV_6026C80, &D_SX_602A120, &D_A6_6023F20, &D_A6_6028760, &D_602E4B0, &D_6007E30,
|
||||
&D_601F1F0, &D_60266D0, &D_C035110, &D_TR_6006A60, &D_6030E30_Env, &D_6005000, &D_AQ_602E540,
|
||||
&D_600EA90, NULL, &D_6011000, &D_600FF30_Env, &D_6006E70, &D_6014D50, &D_vs_player_302DD70,
|
||||
&D_6037160, &D_ENV_6026C80, &D_SX_602A120, &D_A6_6023F20, &D_A6_6028760, &D_SY_602E4B0, &D_6007E30,
|
||||
&D_601F1F0, &D_60266D0, &D_C035110, &D_TR_6006A60, &D_6030E30_Env, &D_6005000, &D_AQ_602E540,
|
||||
&D_600EA90, NULL, &D_6011000, &D_600FF30_Env, &D_SZ_6006E70, &D_6014D50, &D_vs_player_302DD70,
|
||||
};
|
||||
|
||||
void func_800A594C(void) {
|
||||
@@ -2365,7 +2367,7 @@ void func_800AB334(void) {
|
||||
D_80178294 = 0;
|
||||
switch (gCurrentLevel) {
|
||||
case LEVEL_SECTOR_Z:
|
||||
D_80177B8C = 1;
|
||||
gGreatFoxIntact = true;
|
||||
break;
|
||||
case LEVEL_METEO:
|
||||
case LEVEL_SECTOR_X:
|
||||
@@ -4359,7 +4361,7 @@ void func_800B0F50(Player* playerx) {
|
||||
gGoldRingCount[0] = D_80161A94[0] = gTotalHits = 0;
|
||||
gLifeCount[gPlayerNum] = 2;
|
||||
gBombCount[gPlayerNum] = 3;
|
||||
D_80177B8C = 1;
|
||||
gGreatFoxIntact = true;
|
||||
if (gCamCount == (gPlayerNum + 1)) {
|
||||
D_80161720[0] = 0.0f;
|
||||
D_80161720[1] = 0.0f;
|
||||
|
||||
@@ -16,6 +16,7 @@ s32 D_80178748;
|
||||
#include "assets/ast_allies.h"
|
||||
#include "assets/ast_training.h"
|
||||
#include "assets/ast_sector_x.h"
|
||||
#include "assets/ast_sector_y.h"
|
||||
#include "assets/ast_aquas.h"
|
||||
#include "assets/ast_star_wolf.h"
|
||||
#include "assets/ast_great_fox.h"
|
||||
@@ -299,10 +300,10 @@ void func_800BAAE8(void) {
|
||||
sp44 = D_SX_6021ED0;
|
||||
break;
|
||||
case RCID_BOSS_SECTORY:
|
||||
sp44 = D_6018F30;
|
||||
sp44 = D_SY_6018F30;
|
||||
break;
|
||||
case RCID_BOSS_SECTORY_OPEN:
|
||||
sp44 = D_6019E50;
|
||||
sp44 = D_SY_6019E50;
|
||||
break;
|
||||
case RCID_BOSS_MACBETH:
|
||||
sp44 = D_6010C20;
|
||||
@@ -365,16 +366,16 @@ void func_800BAAE8(void) {
|
||||
sp44 = D_D008990;
|
||||
break;
|
||||
case RCID_ROB64_TITLE:
|
||||
sp44 = D_E00E100;
|
||||
sp44 = D_GREAT_FOX_E00E100;
|
||||
break;
|
||||
case RCID_ROB64_TITLE_OPEN:
|
||||
sp44 = D_E00F020;
|
||||
sp44 = D_GREAT_FOX_E00F020;
|
||||
break;
|
||||
case RCID_GEN_PEPPER_TITLE:
|
||||
sp44 = D_E00FF40;
|
||||
sp44 = D_GREAT_FOX_E00FF40;
|
||||
break;
|
||||
case RCID_GEN_PEPPER_TITLE_OPEN:
|
||||
sp44 = D_E010E60;
|
||||
sp44 = D_GREAT_FOX_E010E60;
|
||||
break;
|
||||
case RCID_TR:
|
||||
sp44 = D_TR_6000900;
|
||||
|
||||
@@ -1784,12 +1784,12 @@ void func_ending_8018C21C(void) {
|
||||
Matrix_RotateZ(gGfxMatrix, gActors[i].obj.rot.z * M_DTOR, 1);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
|
||||
if (D_80177B8C != 0) {
|
||||
gSPDisplayList(gMasterDisp++, D_E000000);
|
||||
if (gGreatFoxIntact) {
|
||||
gSPDisplayList(gMasterDisp++, D_GREAT_FOX_E000000);
|
||||
}
|
||||
|
||||
if (D_80177B8C == 0) {
|
||||
gSPDisplayList(gMasterDisp++, D_E003AB0);
|
||||
if (!gGreatFoxIntact) {
|
||||
gSPDisplayList(gMasterDisp++, D_GREAT_FOX_E003AB0);
|
||||
}
|
||||
|
||||
RCP_SetupDL(&gMasterDisp, 0x31);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#include "global.h"
|
||||
#include "assets.h"
|
||||
#include "assets/ast_sector_z.h"
|
||||
|
||||
s32 D_i4_801A0560;
|
||||
s32 D_i4_801A0564;
|
||||
@@ -8,10 +9,6 @@ Vec3f D_i4_8019F4C0[] = { 0.0f, 0.0f, 35000.0f, -2000.0f, 0.0f, 35000.0f, 2000.0
|
||||
Vec3f D_i4_8019F4E4[] = { -700.0f, -200.0f, 200.0f, 500.0f, 200.0f, -300.0f,
|
||||
300.0f, -300.0f, -200.0f, 200.0f, 400.0f, 500.0f };
|
||||
|
||||
extern Gfx D_6001A10[];
|
||||
extern Gfx D_60045E0[];
|
||||
extern f32 D_6009230[];
|
||||
|
||||
extern s32 D_80161710;
|
||||
|
||||
void func_8002EE34(void);
|
||||
@@ -188,7 +185,7 @@ void func_i4_80199FCC(Actor* actor, s32 arg1) {
|
||||
|
||||
actor->health = 250;
|
||||
actor->info.drawType = 2;
|
||||
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_6009230);
|
||||
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_SZ_6009230);
|
||||
actor->fwork[1] = 25.0f;
|
||||
actor->fwork[29] = 2.0f;
|
||||
|
||||
@@ -1027,7 +1024,7 @@ f32 D_i4_8019F63C[] = { -200.0f, -250.0f, -500.0f, 5000.0f };
|
||||
void func_i4_8019C574(Actor* actor, s32 index) {
|
||||
f32 var_fv0 = 1.0f;
|
||||
|
||||
if (D_80177B8C == 0) {
|
||||
if (!gGreatFoxIntact) {
|
||||
var_fv0 = -1.0f;
|
||||
}
|
||||
|
||||
@@ -1096,7 +1093,7 @@ void func_i4_8019C85C(Player* player) {
|
||||
Boss* boss0 = &gBosses[0];
|
||||
f32 var_fv1 = 1.0f;
|
||||
|
||||
if (D_80177B8C == 0) {
|
||||
if (!gGreatFoxIntact) {
|
||||
var_fv1 = -1.0f;
|
||||
}
|
||||
|
||||
@@ -1195,11 +1192,11 @@ void func_i4_8019C85C(Player* player) {
|
||||
Math_SmoothStepToF(&boss0->fwork[2], 0.5f, 1.0f, 0.05f, 0.0f);
|
||||
Math_SmoothStepToF(&boss0->fwork[3], 0.7f, 1.0f, 0.7f, 0.0f);
|
||||
|
||||
if ((gCsFrameCount == 100) && (D_80177B8C != 0)) {
|
||||
if ((gCsFrameCount == 100) && gGreatFoxIntact) {
|
||||
AUDIO_PLAY_BGM(SEQ_ID_38);
|
||||
}
|
||||
|
||||
if ((gCsFrameCount == 210) && (D_80177B8C != 0)) {
|
||||
if ((gCsFrameCount == 210) && gGreatFoxIntact) {
|
||||
D_80177840 = 100;
|
||||
D_80177930 = 1;
|
||||
}
|
||||
@@ -1222,7 +1219,7 @@ void func_i4_8019C85C(Player* player) {
|
||||
D_80178340 = 0;
|
||||
|
||||
if (player->timer_1F8 == 0) {
|
||||
if (D_80177B8C == 0) {
|
||||
if (!gGreatFoxIntact) {
|
||||
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM, 50);
|
||||
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 50);
|
||||
}
|
||||
@@ -1351,7 +1348,7 @@ void func_i4_8019C85C(Player* player) {
|
||||
break;
|
||||
}
|
||||
|
||||
if (D_80177B8C != 0) {
|
||||
if (gGreatFoxIntact) {
|
||||
switch (gCsFrameCount) {
|
||||
case 1729:
|
||||
Radio_PlayMessage(gMsg_ID_16250, RCID_ROB64);
|
||||
@@ -1476,7 +1473,7 @@ void func_i4_8019C85C(Player* player) {
|
||||
break;
|
||||
|
||||
case 1370:
|
||||
if (D_80177B8C != 0) {
|
||||
if (gGreatFoxIntact) {
|
||||
D_80177930 = 1;
|
||||
} else {
|
||||
AUDIO_PLAY_BGM(SEQ_ID_49);
|
||||
@@ -1485,7 +1482,7 @@ void func_i4_8019C85C(Player* player) {
|
||||
break;
|
||||
|
||||
case 1560:
|
||||
if (D_80177B8C == 0) {
|
||||
if (!gGreatFoxIntact) {
|
||||
D_80177840 = 100;
|
||||
}
|
||||
break;
|
||||
@@ -1618,7 +1615,7 @@ void func_i4_8019DD20(Actor* actor) {
|
||||
break;
|
||||
|
||||
case 400:
|
||||
if (D_80177B8C != 0) {
|
||||
if (gGreatFoxIntact) {
|
||||
Radio_PlayMessage(gMsg_ID_16160, RCID_KATT);
|
||||
} else {
|
||||
Radio_PlayMessage(gMsg_ID_16165, RCID_KATT);
|
||||
@@ -1689,10 +1686,10 @@ void func_i4_8019E234(Actor* actor) {
|
||||
}
|
||||
|
||||
void func_i4_8019E3A8(Actor* actor) {
|
||||
gSPDisplayList(gMasterDisp++, D_6001A10);
|
||||
gSPDisplayList(gMasterDisp++, D_SZ_6001A10);
|
||||
gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK);
|
||||
RCP_SetupDL(&gMasterDisp, 0x39);
|
||||
gSPDisplayList(gMasterDisp++, D_60045E0);
|
||||
gSPDisplayList(gMasterDisp++, D_SZ_60045E0);
|
||||
gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK);
|
||||
}
|
||||
|
||||
@@ -1719,7 +1716,7 @@ void func_i4_8019E454(Boss* boss) {
|
||||
}
|
||||
|
||||
if (boss->timer_050 == 1) {
|
||||
D_80177B8C = 0;
|
||||
gGreatFoxIntact = false;
|
||||
}
|
||||
|
||||
if (boss->timer_050 == 5) {
|
||||
@@ -1760,7 +1757,7 @@ void func_i4_8019E454(Boss* boss) {
|
||||
boss->obj.rot.y = boss->unk_078.y + 180.0f;
|
||||
boss->obj.rot.z = -boss->unk_078.z;
|
||||
|
||||
if (D_80177B8C == 0) {
|
||||
if (!gGreatFoxIntact) {
|
||||
Matrix_RotateY(gCalcMatrix, (boss->obj.rot.y - 270.0f) * M_DTOR, 0);
|
||||
Matrix_RotateX(gCalcMatrix, boss->obj.rot.x * M_DTOR, 1);
|
||||
Matrix_RotateZ(gCalcMatrix, boss->obj.rot.z * M_DTOR, 1);
|
||||
|
||||
@@ -1,28 +1,8 @@
|
||||
#include "global.h"
|
||||
#include "assets.h"
|
||||
#include "assets/ast_sector_y.h"
|
||||
|
||||
extern Animation D_6003348;
|
||||
extern Animation D_60034C4;
|
||||
extern Gfx D_6013600[];
|
||||
extern Gfx D_6014A40[];
|
||||
extern Gfx D_6014BD0[];
|
||||
extern Gfx D_601F3D0[];
|
||||
extern Animation D_60258A0;
|
||||
extern Animation D_602645C;
|
||||
extern Animation D_60265B4;
|
||||
extern Animation D_602738C;
|
||||
extern Animation D_6029B48;
|
||||
extern Animation D_602A2CC;
|
||||
extern Animation D_602B778;
|
||||
extern Animation D_602B8DC;
|
||||
extern Animation D_602CEB4;
|
||||
extern Limb* D_602D140[];
|
||||
extern f32 D_60340C0[];
|
||||
extern f32 D_6034124[];
|
||||
extern f32 D_60341A8[];
|
||||
extern f32 D_603421C[];
|
||||
extern f32 D_60342A0[];
|
||||
extern f32 D_6034304[];
|
||||
|
||||
void func_i6_80198244(Boss*);
|
||||
void func_i6_80198ABC(Boss*);
|
||||
@@ -66,9 +46,8 @@ void func_i6_80197B30(Actor* actor, s32 timer) {
|
||||
}
|
||||
|
||||
void func_i6_80197C64(Effect* effect) {
|
||||
|
||||
RCP_SetupDL_21();
|
||||
gSPDisplayList(gMasterDisp++, D_6014A40);
|
||||
gSPDisplayList(gMasterDisp++, D_SY_6014A40);
|
||||
RCP_SetupDL(&gMasterDisp, 0x40);
|
||||
}
|
||||
|
||||
@@ -76,41 +55,47 @@ void func_i6_80197CB8(Object_80* obj80) {
|
||||
}
|
||||
|
||||
void func_i6_80197CC4(Boss* boss) {
|
||||
|
||||
boss->fwork[9] = 0.0f;
|
||||
boss->swork[33] = 5500;
|
||||
boss->timer_050 = 10;
|
||||
boss->timer_058 = 0;
|
||||
D_80177A10[8] = 0;
|
||||
|
||||
if (boss->index == 0) {
|
||||
boss->info.hitbox = SEGMENTED_TO_VIRTUAL(D_60342A0);
|
||||
boss->info.hitbox = SEGMENTED_TO_VIRTUAL(D_SY_60342A0);
|
||||
boss->health = 150;
|
||||
|
||||
boss->swork[28] = 5;
|
||||
boss->fwork[43] = 3.5f;
|
||||
boss->fwork[45] = 40.0f;
|
||||
|
||||
if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_9) {
|
||||
boss->obj.pos.z = -28900.0f;
|
||||
gObjects58[0].obj.pos.z = -30000.0f;
|
||||
}
|
||||
|
||||
boss->unk_078.y = 0.0f;
|
||||
func_i6_8019AEC0(boss);
|
||||
} else {
|
||||
boss->fwork[34] = 2.8f;
|
||||
boss->info.hitbox = SEGMENTED_TO_VIRTUAL(D_6034304);
|
||||
boss->info.hitbox = SEGMENTED_TO_VIRTUAL(D_SY_6034304);
|
||||
boss->health = 100;
|
||||
boss->swork[28] = 0;
|
||||
boss->swork[25] = 1;
|
||||
boss->fwork[45] = 35.0f;
|
||||
|
||||
if (boss->index == 1) {
|
||||
boss->unk_078.y = 15.0f;
|
||||
} else {
|
||||
boss->unk_078.y = 345.0f;
|
||||
}
|
||||
|
||||
boss->vel.x = SIN_DEG(boss->unk_078.y) * boss->fwork[45] * 0.2f;
|
||||
boss->vel.z = COS_DEG(boss->unk_078.y) * boss->fwork[45] * 0.2f;
|
||||
func_i6_80198244(boss);
|
||||
boss->timer_056 = 250;
|
||||
}
|
||||
|
||||
if (gLevelMode == LEVELMODE_ON_RAILS) {
|
||||
if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) {
|
||||
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_9;
|
||||
@@ -140,6 +125,7 @@ void func_i6_80197F84(Boss* boss) {
|
||||
Math_SmoothStepToF(&boss->vel.z, 0.0f, 0.1f, 0.2f, 0.1f);
|
||||
Math_SmoothStepToF(&boss->vel.x, 0.0f, 0.1f, 0.2f, 0.1f);
|
||||
Math_SmoothStepToAngle(&boss->unk_078.x, 0.0f, 0.1f, 4.0f, 0.1f);
|
||||
|
||||
if (func_i6_8019B5CC(boss) != 0) {
|
||||
Math_SmoothStepToF(&boss->obj.pos.y, 1000.0f, 0.1f, 30.0f, 0.1f);
|
||||
} else {
|
||||
@@ -154,9 +140,11 @@ void func_i6_80197F84(Boss* boss) {
|
||||
yaw = Math_RadToDeg(Math_Atan2F(boss->fwork[18] - boss->obj.pos.x, boss->fwork[20] - boss->obj.pos.z));
|
||||
|
||||
Math_SmoothStepToAngle(&boss->unk_078.y, yaw, 0.1f, 8.0f, 0.1f);
|
||||
|
||||
if (boss->timer_050 == 0) {
|
||||
func_i6_80198244(boss);
|
||||
}
|
||||
|
||||
if (boss->swork[22] == 1) {
|
||||
if (ABS(boss->vel.x) <= 1.0f && (ABS(boss->vel.z) <= 1.0f) &&
|
||||
(fabsf(boss->fwork[18] - boss->obj.pos.x) <= 400.0f) &&
|
||||
@@ -169,6 +157,7 @@ void func_i6_80197F84(Boss* boss) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (func_i6_8019B528(boss) != 0) {
|
||||
func_i6_80198ABC(boss);
|
||||
}
|
||||
@@ -206,9 +195,11 @@ void func_i6_801983E4(Boss* boss) {
|
||||
f32 zSpeed;
|
||||
|
||||
func_i6_8019B6E8(boss);
|
||||
|
||||
if (boss->timer_052 == 0) {
|
||||
func_i6_8019BC14(boss);
|
||||
}
|
||||
|
||||
Math_SmoothStepToAngle(&boss->unk_078.z, 0.0f, 0.1f, 2.0f, 0.1f);
|
||||
Math_SmoothStepToAngle(&boss->unk_078.x, 0.0f, 0.1f, 2.0f, 0.1f);
|
||||
Math_SmoothStepToF(&boss->vel.x, boss->fwork[11], 0.1f, 0.5f, 0.1f);
|
||||
@@ -238,22 +229,27 @@ void func_i6_801983E4(Boss* boss) {
|
||||
boss->fwork[34] = 2.8f;
|
||||
}
|
||||
}
|
||||
|
||||
func_i6_8019C194(boss, zSpeed, xSpeed);
|
||||
|
||||
if (boss->swork[22] == 1) {
|
||||
yAngle = gPlayer[0].unk_114 - 180.0f;
|
||||
if (yAngle < 0.0f) {
|
||||
yAngle += 360.0f;
|
||||
}
|
||||
|
||||
yAngle = boss->unk_078.y - yAngle;
|
||||
if (yAngle < 0.0f) {
|
||||
yAngle += 360.0f;
|
||||
}
|
||||
|
||||
if ((zSpeed <= 1300.0f) && (xSpeed <= 800.0f) && (yAngle < 260.0f) && (yAngle > 100.0f) &&
|
||||
(boss->unk_078.x == 0.0f) && (boss->fwork[34] <= 2.0f)) {
|
||||
if (Rand_ZeroOne() < 0.2f) {
|
||||
func_i6_8019AA08(boss);
|
||||
}
|
||||
}
|
||||
|
||||
if ((zSpeed < 3400.0f) || (xSpeed < 2400.0f)) {
|
||||
if (((yAngle >= 60.0f) && (yAngle <= 100.0f)) || ((yAngle <= 300.0f) && (yAngle >= 260.0f))) {
|
||||
if (Rand_ZeroOne() < 0.3f) {
|
||||
@@ -264,6 +260,7 @@ void func_i6_801983E4(Boss* boss) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (((yAngle > 300.0f) || (yAngle < 60.0f)) && (boss->unk_078.x == 0.0f)) {
|
||||
if (Rand_ZeroOne() < 0.3f) {
|
||||
if (Rand_ZeroOne() < 0.4f) {
|
||||
@@ -281,11 +278,13 @@ void func_i6_801983E4(Boss* boss) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (func_i6_8019B5CC(boss) != 0) {
|
||||
Math_SmoothStepToF(&boss->obj.pos.y, 1000.0f, 0.1f, 30.0f, 0.1f);
|
||||
} else {
|
||||
Math_SmoothStepToF(&boss->obj.pos.y, 0.0f, 0.1f, 5.0f, 0.1f);
|
||||
}
|
||||
|
||||
if (boss->timer_056 == 0) {
|
||||
if (Rand_ZeroOne() <= 0.7f) {
|
||||
func_i6_80199D64(boss);
|
||||
@@ -293,6 +292,7 @@ void func_i6_801983E4(Boss* boss) {
|
||||
func_i6_80197F18(boss);
|
||||
}
|
||||
}
|
||||
|
||||
if (func_i6_8019B528(boss) != 0) {
|
||||
func_i6_80198ABC(boss);
|
||||
}
|
||||
@@ -305,12 +305,14 @@ void func_i6_80198ABC(Boss* boss) {
|
||||
if (yAngle < 0.0f) {
|
||||
yAngle += 360.0f;
|
||||
}
|
||||
|
||||
boss->swork[20] = 4;
|
||||
boss->swork[21] = 3;
|
||||
boss->fwork[34] = 4.5f;
|
||||
|
||||
boss->timer_056 = (s32) (RAND_FLOAT(100.0f) + 100.0f);
|
||||
boss->timer_050 = 0;
|
||||
|
||||
if (yAngle > 180.0f) {
|
||||
boss->fwork[27] = 40.0f;
|
||||
if (boss->index == 0) {
|
||||
@@ -330,11 +332,13 @@ void func_i6_80198ABC(Boss* boss) {
|
||||
func_8002E4F8(gMsg_ID_14200, RCID_FALCO);
|
||||
}
|
||||
break;
|
||||
|
||||
case 1:
|
||||
if ((gBosses[1].obj.status == OBJ_FREE) && (gBosses[2].obj.status == OBJ_FREE)) {
|
||||
func_8002E4F8(gMsg_ID_14320, RCID_BOSS_SECTORY);
|
||||
}
|
||||
break;
|
||||
|
||||
case 2:
|
||||
if ((gTeamShields[2] > 0) && (gBosses[1].obj.status != OBJ_FREE) && (gBosses[2].obj.status != OBJ_FREE)) {
|
||||
func_8002E4F8(gMsg_ID_14220, RCID_SLIPPY);
|
||||
@@ -350,9 +354,11 @@ void func_i6_80198CE4(Boss* boss) {
|
||||
f32 yAngle;
|
||||
|
||||
func_i6_8019B6E8(boss);
|
||||
|
||||
if (boss->timer_052 == 0) {
|
||||
func_i6_8019BC14(boss);
|
||||
}
|
||||
|
||||
Math_SmoothStepToAngle(&boss->unk_078.z, boss->fwork[27], 0.1f, 0.5f, 0.1f);
|
||||
Math_SmoothStepToAngle(&boss->unk_078.x, 0.0f, 0.1f, 4.0f, 0.1f);
|
||||
yAngle = Math_RadToDeg(Math_Atan2F(-boss->obj.pos.x, -300.0f - boss->obj.pos.z));
|
||||
@@ -362,6 +368,7 @@ void func_i6_80198CE4(Boss* boss) {
|
||||
} else {
|
||||
Math_SmoothStepToAngle(&boss->unk_078.y, yAngle, 0.1f, 2.0f, 0.1f);
|
||||
}
|
||||
|
||||
if (boss->index == 0) {
|
||||
boss->vel.x = SIN_DEG(boss->unk_078.y) * (boss->fwork[45] + 20.0f);
|
||||
boss->vel.z = COS_DEG(boss->unk_078.y) * (boss->fwork[45] + 20.0f);
|
||||
@@ -369,16 +376,20 @@ void func_i6_80198CE4(Boss* boss) {
|
||||
boss->vel.x = SIN_DEG(boss->unk_078.y) * boss->fwork[45];
|
||||
boss->vel.z = COS_DEG(boss->unk_078.y) * boss->fwork[45];
|
||||
}
|
||||
|
||||
if (func_i6_8019B5CC(boss) != 0) {
|
||||
Math_SmoothStepToF(&boss->obj.pos.y, 1000.0f, 0.1f, 30.0f, 0.1f);
|
||||
} else {
|
||||
Math_SmoothStepToF(&boss->obj.pos.y, 0.0f, 0.1f, 5.0f, 0.1f);
|
||||
}
|
||||
|
||||
Math_SmoothStepToF(&boss->vel.y, 0.0f, 0.1f, 0.2f, 0.1f);
|
||||
yAngle -= boss->unk_078.y;
|
||||
|
||||
if (yAngle < 0.0f) {
|
||||
yAngle += 360.0f;
|
||||
}
|
||||
|
||||
if ((func_i6_8019B528(boss) == 0) && ((yAngle <= 20.0f) || (yAngle >= 320.0f))) {
|
||||
func_i6_80198244(boss);
|
||||
}
|
||||
@@ -394,15 +405,19 @@ void func_i6_80198F5C(Boss* boss) {
|
||||
boss->timer_05C = 20;
|
||||
func_8007C120(boss->obj.pos.x, boss->obj.pos.y, boss->obj.pos.z, boss->vel.x, boss->vel.y, boss->vel.z, 0.1f, 10);
|
||||
boss->health -= boss->damage;
|
||||
|
||||
if (boss->health < 0) {
|
||||
boss->health = 0;
|
||||
}
|
||||
|
||||
boss->timer_058 = 20;
|
||||
|
||||
if (boss->health <= 0) {
|
||||
boss->unk_04C = 0;
|
||||
boss->swork[36] = 0;
|
||||
boss->swork[21] = 9;
|
||||
boss->info.hitbox = SEGMENTED_TO_VIRTUAL(D_800CBF34);
|
||||
|
||||
if (boss->index == 0) {
|
||||
boss->timer_058 = 20000;
|
||||
boss->vel.x = boss->vel.y = boss->vel.z = 0.0f;
|
||||
@@ -425,6 +440,7 @@ void func_i6_80198F5C(Boss* boss) {
|
||||
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 30);
|
||||
return;
|
||||
}
|
||||
|
||||
if ((gBosses[1].obj.status == OBJ_FREE) || (gBosses[2].obj.status == OBJ_FREE)) {
|
||||
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM, 20);
|
||||
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 20);
|
||||
@@ -581,7 +597,7 @@ void func_i6_80199438(Boss* boss) {
|
||||
Object_Kill(&gActors[D_80177A10[9]].obj, gActors[D_80177A10[9]].sfxSource);
|
||||
if ((gBosses[1].obj.status == OBJ_FREE) || (gBosses[2].obj.status == OBJ_FREE)) {
|
||||
gBosses[0].unk_04A = 1;
|
||||
gObjects58[0].info.dList = D_601F3D0;
|
||||
gObjects58[0].info.dList = D_SY_601F3D0;
|
||||
gObjects58[0].info.drawType = 0;
|
||||
} else {
|
||||
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_3;
|
||||
@@ -608,7 +624,7 @@ void func_i6_80199438(Boss* boss) {
|
||||
}
|
||||
}
|
||||
func_8007D2C8(boss->obj.pos.x, boss->obj.pos.y, boss->obj.pos.z + 30.0f, 4.0f);
|
||||
boss->info.hitbox = SEGMENTED_TO_VIRTUAL(D_6034304);
|
||||
boss->info.hitbox = SEGMENTED_TO_VIRTUAL(D_SY_6034304);
|
||||
AUDIO_PLAY_SFX(0x2903A06F, boss->sfxSource, 4);
|
||||
}
|
||||
}
|
||||
@@ -849,12 +865,12 @@ void func_i6_8019AA08(Boss* boss) {
|
||||
if (Rand_ZeroOne() >= 0.5f) {
|
||||
boss->swork[21] = 7;
|
||||
boss->swork[31] = 11;
|
||||
boss->swork[32] = Animation_GetFrameCount(&D_602645C) - 1;
|
||||
boss->swork[32] = Animation_GetFrameCount(&D_SY_602645C) - 1;
|
||||
|
||||
} else if (boss->index == 0) {
|
||||
boss->swork[21] = 8;
|
||||
boss->swork[31] = 13;
|
||||
boss->swork[32] = Animation_GetFrameCount(&D_60258A0) - 1;
|
||||
boss->swork[32] = Animation_GetFrameCount(&D_SY_60258A0) - 1;
|
||||
|
||||
} else {
|
||||
return;
|
||||
@@ -1369,56 +1385,56 @@ void func_i6_8019C888(Boss* boss) {
|
||||
|
||||
switch (boss->swork[21]) {
|
||||
case 0:
|
||||
boss->unk_04C = Animation_GetFrameCount(&D_602B778) - 1;
|
||||
sp1D0 = Animation_GetFrameData(&D_602B778, boss->unk_04C, sp64);
|
||||
boss->unk_04C = Animation_GetFrameCount(&D_SY_602B778) - 1;
|
||||
sp1D0 = Animation_GetFrameData(&D_SY_602B778, boss->unk_04C, sp64);
|
||||
break;
|
||||
case 1:
|
||||
boss->unk_04C = Animation_GetFrameCount(&D_60265B4) - 1;
|
||||
sp1D0 = Animation_GetFrameData(&D_60265B4, boss->unk_04C, sp64);
|
||||
boss->unk_04C = Animation_GetFrameCount(&D_SY_60265B4) - 1;
|
||||
sp1D0 = Animation_GetFrameData(&D_SY_60265B4, boss->unk_04C, sp64);
|
||||
break;
|
||||
case 2:
|
||||
boss->unk_04C = Animation_GetFrameCount(&D_6029B48) - 1;
|
||||
sp1D0 = Animation_GetFrameData(&D_6029B48, boss->unk_04C, sp64);
|
||||
boss->unk_04C = Animation_GetFrameCount(&D_SY_6029B48) - 1;
|
||||
sp1D0 = Animation_GetFrameData(&D_SY_6029B48, boss->unk_04C, sp64);
|
||||
break;
|
||||
case 3:
|
||||
boss->unk_04C = Animation_GetFrameCount(&D_602B8DC) - 1;
|
||||
sp1D0 = Animation_GetFrameData(&D_602B8DC, boss->unk_04C, sp64);
|
||||
boss->unk_04C = Animation_GetFrameCount(&D_SY_602B8DC) - 1;
|
||||
sp1D0 = Animation_GetFrameData(&D_SY_602B8DC, boss->unk_04C, sp64);
|
||||
break;
|
||||
case 4:
|
||||
boss->unk_04C++;
|
||||
if (boss->unk_04C >= Animation_GetFrameCount(&D_6003348)) {
|
||||
boss->unk_04C = Animation_GetFrameCount(&D_6003348) - 1;
|
||||
if (boss->unk_04C >= Animation_GetFrameCount(&D_SY_6003348)) {
|
||||
boss->unk_04C = Animation_GetFrameCount(&D_SY_6003348) - 1;
|
||||
}
|
||||
sp1D0 = Animation_GetFrameData(&D_6003348, boss->unk_04C, sp64);
|
||||
sp1D0 = Animation_GetFrameData(&D_SY_6003348, boss->unk_04C, sp64);
|
||||
break;
|
||||
case 5:
|
||||
boss->unk_04C++;
|
||||
if (boss->unk_04C >= Animation_GetFrameCount(&D_602738C)) {
|
||||
if (boss->unk_04C >= Animation_GetFrameCount(&D_SY_602738C)) {
|
||||
boss->unk_04C = 0;
|
||||
}
|
||||
sp1D0 = Animation_GetFrameData(&D_602738C, boss->unk_04C, sp64);
|
||||
sp1D0 = Animation_GetFrameData(&D_SY_602738C, boss->unk_04C, sp64);
|
||||
break;
|
||||
case 6:
|
||||
sp1D0 = Animation_GetFrameData(&D_602738C, boss->unk_04C, sp64);
|
||||
sp1D0 = Animation_GetFrameData(&D_SY_602738C, boss->unk_04C, sp64);
|
||||
break;
|
||||
case 7:
|
||||
if (boss->unk_04C < (Animation_GetFrameCount(&D_602645C) - 1)) {
|
||||
if (boss->unk_04C < (Animation_GetFrameCount(&D_SY_602645C) - 1)) {
|
||||
boss->unk_04C++;
|
||||
}
|
||||
sp1D0 = Animation_GetFrameData(&D_602645C, boss->unk_04C, sp64);
|
||||
sp1D0 = Animation_GetFrameData(&D_SY_602645C, boss->unk_04C, sp64);
|
||||
break;
|
||||
case 8:
|
||||
if (boss->unk_04C < (Animation_GetFrameCount(&D_60258A0) - 1)) {
|
||||
if (boss->unk_04C < (Animation_GetFrameCount(&D_SY_60258A0) - 1)) {
|
||||
boss->unk_04C++;
|
||||
}
|
||||
sp1D0 = Animation_GetFrameData(&D_60258A0, boss->unk_04C, sp64);
|
||||
sp1D0 = Animation_GetFrameData(&D_SY_60258A0, boss->unk_04C, sp64);
|
||||
break;
|
||||
case 9:
|
||||
boss->unk_04C++;
|
||||
if (boss->unk_04C >= Animation_GetFrameCount(&D_60034C4)) {
|
||||
if (boss->unk_04C >= Animation_GetFrameCount(&D_SY_60034C4)) {
|
||||
boss->unk_04C = 0;
|
||||
}
|
||||
sp1D0 = Animation_GetFrameData(&D_60034C4, boss->unk_04C, sp64);
|
||||
sp1D0 = Animation_GetFrameData(&D_SY_60034C4, boss->unk_04C, sp64);
|
||||
break;
|
||||
}
|
||||
boss->obj.rot.x = boss->unk_078.x;
|
||||
@@ -1645,7 +1661,7 @@ s32 func_i6_8019DC4C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* d
|
||||
case 17:
|
||||
rot->x += boss->fwork[8];
|
||||
rot->y -= boss->fwork[7];
|
||||
*dList = D_6014BD0;
|
||||
*dList = D_SY_6014BD0;
|
||||
break;
|
||||
case 18:
|
||||
rot->x += boss->fwork[6];
|
||||
@@ -1680,7 +1696,7 @@ s32 func_i6_8019DE10(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* d
|
||||
break;
|
||||
case 4:
|
||||
if (boss->swork[25] == 0) {
|
||||
*dList = D_6013600;
|
||||
*dList = D_SY_6013600;
|
||||
if (boss->swork[24] & 1) {
|
||||
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 255, 0, 255);
|
||||
}
|
||||
@@ -1691,7 +1707,7 @@ s32 func_i6_8019DE10(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* d
|
||||
case 17:
|
||||
rot->x += boss->fwork[8];
|
||||
rot->y -= boss->fwork[7];
|
||||
*dList = D_6014BD0;
|
||||
*dList = D_SY_6014BD0;
|
||||
break;
|
||||
case 18:
|
||||
rot->x += boss->fwork[6];
|
||||
@@ -1781,7 +1797,7 @@ void func_i6_8019E2C4(Boss* boss) {
|
||||
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
}
|
||||
if ((boss->health > 0) || (boss->swork[36] == 0)) {
|
||||
Animation_DrawSkeleton(2, D_602D140, boss->vwork, func_i6_8019DE10, func_i6_8019E014, boss, gCalcMatrix);
|
||||
Animation_DrawSkeleton(2, D_SY_602D140, boss->vwork, func_i6_8019DE10, func_i6_8019E014, boss, gCalcMatrix);
|
||||
if (boss->timer_054 != 0) {
|
||||
sp9C = D_i6_801A69AC[boss->timer_054];
|
||||
RCP_SetupDL_49();
|
||||
@@ -3298,11 +3314,11 @@ void func_i6_801A3BD4(Actor* actor) {
|
||||
break;
|
||||
case 5:
|
||||
actor->unk_046 = 5;
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_602B778) - 1;
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_SY_602B778) - 1;
|
||||
break;
|
||||
case 7:
|
||||
actor->unk_046 = 6;
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_602B778) - 1;
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_SY_602B778) - 1;
|
||||
break;
|
||||
}
|
||||
actor->unk_048 = 0;
|
||||
@@ -3314,30 +3330,30 @@ void func_i6_801A3BD4(Actor* actor) {
|
||||
i = actor->iwork[17];
|
||||
if (i != 0) {
|
||||
if (i == 1) {
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_60265B4) - 1;
|
||||
sp4C = Animation_GetFrameData(&D_60265B4, actor->unk_0B6, sp68);
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_SY_60265B4) - 1;
|
||||
sp4C = Animation_GetFrameData(&D_SY_60265B4, actor->unk_0B6, sp68);
|
||||
} else if (i == 2) {
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_602B8DC) - 1;
|
||||
sp4C = Animation_GetFrameData(&D_602B8DC, actor->unk_0B6, sp68);
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_SY_602B8DC) - 1;
|
||||
sp4C = Animation_GetFrameData(&D_SY_602B8DC, actor->unk_0B6, sp68);
|
||||
}
|
||||
} else {
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_602CEB4);
|
||||
sp4C = Animation_GetFrameData(&D_602CEB4, actor->unk_0B6, sp68);
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_SY_602CEB4);
|
||||
sp4C = Animation_GetFrameData(&D_SY_602CEB4, actor->unk_0B6, sp68);
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
i = actor->iwork[17];
|
||||
if (i != 0) {
|
||||
if (i == 1) {
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_60265B4) - 1;
|
||||
sp4C = Animation_GetFrameData(&D_60265B4, actor->unk_0B6, sp68);
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_SY_60265B4) - 1;
|
||||
sp4C = Animation_GetFrameData(&D_SY_60265B4, actor->unk_0B6, sp68);
|
||||
} else if (i == 2) {
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_602B8DC) - 1;
|
||||
sp4C = Animation_GetFrameData(&D_602B8DC, actor->unk_0B6, sp68);
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_SY_602B8DC) - 1;
|
||||
sp4C = Animation_GetFrameData(&D_SY_602B8DC, actor->unk_0B6, sp68);
|
||||
}
|
||||
} else {
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_602A2CC) - 1;
|
||||
sp4C = Animation_GetFrameData(&D_602A2CC, actor->unk_0B6, sp68);
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_SY_602A2CC) - 1;
|
||||
sp4C = Animation_GetFrameData(&D_SY_602A2CC, actor->unk_0B6, sp68);
|
||||
}
|
||||
if (actor->timer_0BE == 15) {
|
||||
actor->timer_0C4 = 4;
|
||||
@@ -3365,19 +3381,19 @@ void func_i6_801A3BD4(Actor* actor) {
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (actor->unk_0B6 < (Animation_GetFrameCount(&D_6029B48) - 1)) {
|
||||
if (actor->unk_0B6 < (Animation_GetFrameCount(&D_SY_6029B48) - 1)) {
|
||||
actor->unk_0B6++;
|
||||
}
|
||||
sp4C = Animation_GetFrameData(&D_6029B48, actor->unk_0B6, sp68);
|
||||
sp4C = Animation_GetFrameData(&D_SY_6029B48, actor->unk_0B6, sp68);
|
||||
break;
|
||||
case 4:
|
||||
actor->unk_0B6++;
|
||||
if (actor->unk_0B6 >= (Animation_GetFrameCount(&D_602B778) - 1)) {
|
||||
if (actor->unk_0B6 >= (Animation_GetFrameCount(&D_SY_602B778) - 1)) {
|
||||
actor->unk_046 = 0;
|
||||
actor->iwork[17] = 0;
|
||||
actor->fwork[15] = 0.0f;
|
||||
}
|
||||
sp4C = Animation_GetFrameData(&D_602B778, actor->unk_0B6, sp68);
|
||||
sp4C = Animation_GetFrameData(&D_SY_602B778, actor->unk_0B6, sp68);
|
||||
break;
|
||||
case 5:
|
||||
case 6:
|
||||
@@ -3391,14 +3407,14 @@ void func_i6_801A3BD4(Actor* actor) {
|
||||
}
|
||||
actor->unk_046 = 0;
|
||||
}
|
||||
sp4C = Animation_GetFrameData(&D_602B778, actor->unk_0B6, sp68);
|
||||
sp4C = Animation_GetFrameData(&D_SY_602B778, actor->unk_0B6, sp68);
|
||||
break;
|
||||
case 3:
|
||||
actor->unk_0B6++;
|
||||
if (actor->unk_0B6 >= Animation_GetFrameCount(&D_6003348)) {
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_6003348) - 1;
|
||||
if (actor->unk_0B6 >= Animation_GetFrameCount(&D_SY_6003348)) {
|
||||
actor->unk_0B6 = Animation_GetFrameCount(&D_SY_6003348) - 1;
|
||||
}
|
||||
sp4C = Animation_GetFrameData(&D_6003348, actor->unk_0B6, sp68);
|
||||
sp4C = Animation_GetFrameData(&D_SY_6003348, actor->unk_0B6, sp68);
|
||||
if ((actor->timer_0BE % 4U) == 0) {
|
||||
func_8007D2C8(RAND_FLOAT_CENTERED(150.0f) + actor->obj.pos.x,
|
||||
RAND_FLOAT_CENTERED(150.0f) + actor->obj.pos.y, actor->obj.pos.z + 30.0f, 4.0f);
|
||||
@@ -3479,20 +3495,20 @@ void func_i6_801A3BD4(Actor* actor) {
|
||||
} else {
|
||||
Math_SmoothStepToF(&actor->fwork[27], 0.0f, 1.0f, 0.05f, 0.0f);
|
||||
}
|
||||
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_603405C);
|
||||
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_SY_603405C);
|
||||
if (actor->unk_046 == 1) {
|
||||
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_603421C);
|
||||
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_SY_603421C);
|
||||
}
|
||||
i = actor->iwork[17];
|
||||
if (i != 0) {
|
||||
if (i == 1) {
|
||||
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_6034124);
|
||||
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_SY_6034124);
|
||||
} else if (i == 2) {
|
||||
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_60341A8);
|
||||
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_SY_60341A8);
|
||||
}
|
||||
}
|
||||
if (actor->unk_046 == 2) {
|
||||
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_60340C0);
|
||||
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_SY_60340C0);
|
||||
}
|
||||
|
||||
if ((actor->unk_0D0 != 0) && (actor->unk_046 != 3)) {
|
||||
@@ -3554,7 +3570,7 @@ s32 func_i6_801A4A18(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* d
|
||||
rot->x += actor->fwork[28];
|
||||
rot->y -= actor->fwork[29];
|
||||
if (actor->unk_0B4 == 48) {
|
||||
*dList = D_6014BD0;
|
||||
*dList = D_SY_6014BD0;
|
||||
}
|
||||
}
|
||||
if (limbIndex == 18) {
|
||||
@@ -3585,7 +3601,7 @@ void func_i6_801A4CB0(Actor* actor) {
|
||||
f32 scale;
|
||||
|
||||
RCP_SetupDL_30(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
Animation_DrawSkeleton(2, D_602D140, actor->vwork, func_i6_801A4A18, func_i6_801A4C34, actor, gCalcMatrix);
|
||||
Animation_DrawSkeleton(2, D_SY_602D140, actor->vwork, func_i6_801A4A18, func_i6_801A4C34, actor, gCalcMatrix);
|
||||
|
||||
if (actor->timer_0C4 != 0) {
|
||||
scale = D_i6_801A6B64[actor->timer_0C4];
|
||||
|
||||
@@ -2487,7 +2487,7 @@ void func_menu_8018E058(void) {
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
RCP_SetupDL(&gMasterDisp, 0x17);
|
||||
|
||||
D_80177B8C = 1;
|
||||
gGreatFoxIntact = true;
|
||||
|
||||
func_800515C4();
|
||||
func_8005F1EC(D_menu_801B8658.unk_24);
|
||||
|
||||
Reference in New Issue
Block a user