export configuration for ast_meteo & ast_bolse (#188)

* progress

* remove header

* - '#include "sf64level.h"'

* MatchPoint

* asset analysis complete, here it comes. Wheeeeeh

* comment

* correction

* some missile docs

* format

* preparations for ast_bolse extraction

* Matchpoint

* Jackpot
This commit is contained in:
Alejandro Asenjo Nitti
2024-03-31 22:04:45 -03:00
committed by GitHub
parent 4255ef5519
commit 8b4bb6d943
24 changed files with 673 additions and 329 deletions
+2 -1
View File
@@ -3,6 +3,7 @@
#include "assets.h"
#include "assets/ast_star_wolf.h"
#include "assets/ast_allies.h"
#include "assets/ast_bolse.h"
#include "assets/ast_versus.h"
#include "assets/ast_enmy_planet.h"
#include "assets/ast_sector_z.h"
@@ -2264,7 +2265,7 @@ void func_80035448(Actor* actor) {
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);
gSPDisplayList(gMasterDisp++, D_BO_6008770) Matrix_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -60.0f, 1);
func_8005B1E8(actor, 2);
Matrix_Pop(&gGfxMatrix);
+10 -8
View File
@@ -3,6 +3,8 @@
#include "variables.h"
#include "assets.h"
#include "assets/ast_aquas.h"
#include "assets/ast_bolse.h"
#include "assets/ast_meteo.h"
#include "assets/ast_corneria.h"
#include "assets/ast_macbeth.h"
#include "assets/ast_sector_y.h"
@@ -36,22 +38,22 @@ CollisionHeader D_800D2B38[10] = {
{ -1128.0f, -1835.0f, -1202.0f },
{ 997.0f, 139.0f, 1360.0f },
79,
D_602FA9C,
D_60300C8,
D_ME_602FA9C,
D_ME_60300C8,
},
{
{ -3006.0f, -2274.0f, -4530.0f },
{ 3015.0f, 3348.0f, 5246.0f },
236,
D_60305DC,
D_603184C,
D_ME_60305DC,
D_ME_603184C,
},
{
{ -152.0f, -200.0f, -152.0f },
{ 165.0f, 204.0f, 181.0f },
42,
D_6030208,
D_6030550,
D_ME_6030208,
D_ME_6030550,
},
{
{ -1704.0f, -1006.0f, -4751.0f },
@@ -85,8 +87,8 @@ CollisionHeader D_800D2B38[10] = {
{ -1554.0f, -2.0f, -1401.0f },
{ 1554.0f, 590.0f, 1401.0f },
262,
D_6010294,
D_601170C,
D_BO_6010294,
D_BO_601170C,
},
{
{ -1386.0f, -696.0f, -2274.0f },
+6 -4
View File
@@ -20,11 +20,13 @@ f32 D_80161394; // can be static
#include "assets/ast_bg_planet.h"
#include "assets/ast_versus.h"
#include "assets/ast_corneria.h"
#include "assets/ast_meteo.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_bolse.h"
#include "assets/ast_titania.h"
#include "assets/ast_macbeth.h"
#include "assets/ast_andross.h"
@@ -554,12 +556,12 @@ void func_8003E1E8(void) {
Matrix_Translate(gGfxMatrix, sp138 - 120.0f, -(sp134 - 120.0f) - 30.0f, -290.0f, 1);
Matrix_Scale(gGfxMatrix, 0.5f, 0.5f, 1.0f, 1);
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_600DDF0);
gSPDisplayList(gMasterDisp++, D_ME_600DDF0);
} else if (D_80177D20 > 185668.0f) {
Matrix_Translate(gGfxMatrix, sp138 - 120.0f, -(sp134 - 120.0f) - 130.0f, -290.0f, 1);
Matrix_Scale(gGfxMatrix, 0.4f, 0.4f, 1.0f, 1);
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_600DDF0);
gSPDisplayList(gMasterDisp++, D_ME_600DDF0);
}
break;
case LEVEL_SECTOR_X:
@@ -616,7 +618,7 @@ void func_8003E1E8(void) {
Matrix_Translate(gGfxMatrix, sp138 - 120.0f, -(sp134 - 120.0f), -290.0f, 1);
Matrix_Scale(gGfxMatrix, sp128, sp128, sp128, 1);
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_600D190);
gSPDisplayList(gMasterDisp++, D_BO_600D190);
break;
case LEVEL_SECTOR_Z:
Matrix_Translate(gGfxMatrix, sp138 - 120.0f, -(sp134 - 120.0f), -290.0f, 1);
@@ -1063,7 +1065,7 @@ void func_80040CE4(void) {
} else if (gCurrentLevel == LEVEL_KATINA) {
gSPDisplayList(gMasterDisp++, D_6009250);
} else if (gCurrentLevel == LEVEL_BOLSE) {
gSPDisplayList(gMasterDisp++, D_600A810);
gSPDisplayList(gMasterDisp++, D_BO_600A810);
} else if (gCurrentLevel == LEVEL_VENOM_2) {
gSPDisplayList(gMasterDisp++, D_MA_6010700);
}
+6 -8
View File
@@ -11,6 +11,8 @@
#include "assets/ast_enmy_space.h"
#include "assets/ast_enmy_planet.h"
#include "assets/ast_ending.h"
#include "assets/ast_meteo.h"
#include "assets/ast_bolse.h"
#include "assets/ast_sector_x.h"
#include "assets/ast_sector_y.h"
#include "assets/ast_sector_z.h"
@@ -25,10 +27,6 @@ extern f32 D_80178468;
extern f32 D_80178474;
extern f32 D_80178478;
extern Gfx D_6000D80[];
extern Gfx D_600BAA0[];
extern Gfx D_6020810[];
#include "assets/ast_allies.h"
Vec3f D_800C9F60[] = {
@@ -2571,7 +2569,7 @@ void func_8004FEC0(Actor* actor) {
RCP_SetupDL_40();
Matrix_Scale(gGfxMatrix, 60.0f, 60.0f, 1.0f, 1);
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_6020810);
gSPDisplayList(gMasterDisp++, D_ME_6020810);
break;
case 11:
@@ -2677,7 +2675,7 @@ void func_8004FEC0(Actor* actor) {
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_600BAA0);
gSPDisplayList(gMasterDisp++, D_BO_600BAA0);
Matrix_Push(&gGfxMatrix);
@@ -2724,7 +2722,7 @@ void func_8004FEC0(Actor* actor) {
Matrix_SetGfxMtx(&gMasterDisp);
gDPSetTextureFilter(gMasterDisp++, 0 << 12);
gSPDisplayList(gMasterDisp++, D_6000D80);
gSPDisplayList(gMasterDisp++, D_BO_6000D80);
gDPSetTextureFilter(gMasterDisp++, 2 << 12);
Matrix_Pop(&gGfxMatrix);
@@ -2744,7 +2742,7 @@ void func_8004FEC0(Actor* actor) {
break;
case 32:
gSPDisplayList(gMasterDisp++, D_6008770);
gSPDisplayList(gMasterDisp++, D_BO_6008770);
break;
case 33:
+15 -13
View File
@@ -4,6 +4,8 @@
#include "assets/ast_versus.h"
#include "assets/ast_arwing.h"
#include "assets/ast_corneria.h"
#include "assets/ast_meteo.h"
#include "assets/ast_bolse.h"
#include "assets/ast_training.h"
#include "assets/ast_sector_x.h"
#include "assets/ast_sector_y.h"
@@ -238,8 +240,8 @@ ObjectInfo D_800CC124[0x190] = {
/* OBJ_80_149 */ {(void*) D_6007D80, 0, (ObjectFunc) NULL, D_600FFA0, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_150 */ {(void*) D_6006310, 0, (ObjectFunc) NULL, D_600FFC0, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_151 */ {(void*) D_TI_60066E0, 0, (ObjectFunc) NULL, D_600FEB8, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_152 */ {(void*) D_600F4C0, 0, (ObjectFunc) NULL, D_6011C10, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_153 */ {(void*) D_600B8B0, 0, (ObjectFunc) NULL, D_6011C48, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_152 */ {(void*) D_BO_600F4C0, 0, (ObjectFunc) NULL, D_BO_6011C10, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_153 */ {(void*) D_BO_600B8B0, 0, (ObjectFunc) NULL, D_BO_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_SY_6034368, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
@@ -267,13 +269,13 @@ ObjectInfo D_800CC124[0x190] = {
/* OBJ_ACTOR_178 */ {(void*) func_i1_8018BBF8, 2, (ObjectFunc) func_i1_8018B418, D_CO_603E5D0, 500.0f, 0, 0, 39, 1, 200.0f, 1 },
/* OBJ_ACTOR_179 */ {(void*) func_i1_8018BD7C, 2, (ObjectFunc) func_i1_8018B58C, D_CO_603E604, 500.0f, 0, 0, 39, 1, 0.0f, 1 },
/* OBJ_ACTOR_180 */ {(void*) func_8005B6A4, 1, (ObjectFunc) func_80066A80, D_800CBF34, 1000.0f, 0, 0, 39, 0, 0.0f, 1 },
/* OBJ_ACTOR_181 */ {(void*) D_6018C00, 0, (ObjectFunc) func_i2_8018756C, D_602F6EC, 200.0f, 0, 0, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_182 */ {(void*) func_8005B71C, 1, (ObjectFunc) func_i2_80187650, D_602F708, 100.0f, 0, 1, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_181 */ {(void*) D_ME_6018C00, 0, (ObjectFunc) func_i2_8018756C, D_ME_602F6EC, 200.0f, 0, 0, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_182 */ {(void*) func_8005B71C, 1, (ObjectFunc) func_i2_80187650, D_ME_602F708, 100.0f, 0, 1, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_183 */ {(void*) func_i2_8018DA6C, 1, (ObjectFunc) func_i2_8018D9EC, D_800CBF34, 100.0f, 0, 1, 39, 0, 0.0f, 1 },
/* OBJ_ACTOR_184 */ {(void*) func_i2_8018DAEC, 1, (ObjectFunc) func_i2_8018D9EC, D_800CBF34, 100.0f, 0, 1, 39, 0, 0.0f, 1 },
/* OBJ_ACTOR_185 */ {(void*) func_i2_8018DB6C, 1, (ObjectFunc) func_i2_8018D9EC, D_800CBF34, 100.0f, 0, 1, 39, 0, 0.0f, 1 },
/* OBJ_ACTOR_186 */ {(void*) func_8005B7CC, 1, (ObjectFunc) func_i2_8018795C, D_602F724, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_187 */ {(void*) D_6018450, 0, (ObjectFunc) func_i2_801877C4, D_602F740, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_186 */ {(void*) func_8005B7CC, 1, (ObjectFunc) func_i2_8018795C, D_ME_602F724, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_187 */ {(void*) D_ME_6018450, 0, (ObjectFunc) func_i2_801877C4, D_ME_602F740, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_188 */ {(void*) func_i3_801BEC74, 1, (ObjectFunc) func_i3_801BEC68, D_AQ_6030BE0, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_189 */ {(void*) func_8005A094, 1, (ObjectFunc) func_8006C008, D_800CBF34, 0.0f, 0, 0, 39, 0, 0.0f, 0 },
/* OBJ_ACTOR_190 */ {(void*) func_8005B848, 1, (ObjectFunc) func_800656D4, D_800CBFE4, 100.0f, 0, 1, 39, 0, 1.0f, 0 },
@@ -287,8 +289,8 @@ ObjectInfo D_800CC124[0x190] = {
/* OBJ_ACTOR_198 */ {(void*) func_80035448, 1, (ObjectFunc) func_80092EC0, D_800CC01C, 20000.0f, 0, 0, 39, 1, 0.0f, 0 },
/* OBJ_ACTOR_199 */ {(void*) func_i6_80188448, 1, (ObjectFunc) func_i6_801880E4, D_800CBF34, 20000.0f, 0, 0, 39, 1, 0.0f, 0 },
/* OBJ_ACTOR_200 */ {(void*) func_80074FF0, 1, (ObjectFunc) func_80072594, D_800CBF34, 2000.0f, 0, 1, 39, 0, 0.0f, 1 },
/* 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_201 */ {(void*) func_800598E8, 1, (ObjectFunc) func_8006AC08, D_ME_602F684, 100.0f, 0, 1, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_202 */ {(void*) func_80059A24, 1, (ObjectFunc) func_8006AD18, D_ME_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_SY_603405C, 1000.0f, 0, 0, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_205 */ {(void*) func_i5_801A12C4, 1, (ObjectFunc) func_i5_8019C778, D_MA_60359C8, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
@@ -357,8 +359,8 @@ ObjectInfo D_800CC124[0x190] = {
/* OBJ_ACTOR_268 */ {(void*) func_i3_801BDE6C, 1, (ObjectFunc) func_i3_801BD54C, D_AQ_6031570, 10000.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ACTOR_269 */ {(void*) func_i3_801BD264, 1, (ObjectFunc) func_i3_801BC9A0, D_AQ_6030D20, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_ACTOR_270 */ {(void*) func_i3_801BEB1C, 1, (ObjectFunc) func_i3_801BE3F8, D_AQ_60314C8, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_ACTOR_271 */ {(void*) func_8002E694, 2, (ObjectFunc) func_8002E670, D_6011B24, 0.0f, 0, 0, 39, 0, 730.0f, 1 },
/* OBJ_ACTOR_272 */ {(void*) func_8002E6DC, 1, (ObjectFunc) func_8002E6B8, D_6011BF4, 0.0f, 0, 0, 39, 0, 150.0f, 1 },
/* OBJ_ACTOR_271 */ {(void*) func_8002E694, 2, (ObjectFunc) func_8002E670, D_BO_6011B24, 0.0f, 0, 0, 39, 0, 730.0f, 1 },
/* OBJ_ACTOR_272 */ {(void*) func_8002E6DC, 1, (ObjectFunc) func_8002E6B8, D_BO_6011BF4, 0.0f, 0, 0, 39, 0, 150.0f, 1 },
/* OBJ_ACTOR_273 */ {(void*) func_i4_80188FE4, 2, (ObjectFunc) func_i4_80188AD0, D_600FF30_Hitbox, 0.0f, 0, 0, 39, 0, 220.0f, 1 },
/* OBJ_ACTOR_274 */ {(void*) func_i4_8019E3A8, 1, (ObjectFunc) func_i4_8019E234, D_800CBEC4, 0.0f, 0, 0, 39, 0, 1.0f, 0 },
/* OBJ_ACTOR_275 */ {(void*) func_i3_8019F7AC, 1, (ObjectFunc) func_i3_8019F20C, D_800CBE8C, 200.0f, 0, 0, 39, 0, 1.0f, 1 },
@@ -383,8 +385,8 @@ ObjectInfo D_800CC124[0x190] = {
/* OBJ_BOSS_294 */ {(void*) func_i1_8018ED78, 1, (ObjectFunc) func_i1_8018DDAC, D_CO_603E714, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_295 */ {(void*) func_i1_8018EE84, 1, (ObjectFunc) func_i1_8018E290, D_CO_603E748, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_296 */ {(void*) func_i1_8018EF90, 1, (ObjectFunc) func_i1_8018E76C, D_CO_603E7C4, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_297 */ {(void*) func_i2_8018BACC, 1, (ObjectFunc) func_i2_8018978C, D_602F75C, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_298 */ {(void*) func_i2_801887D0, 1, (ObjectFunc) func_i2_80188344, D_602FA50, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_297 */ {(void*) func_i2_8018BACC, 1, (ObjectFunc) func_i2_8018978C, D_ME_602F75C, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_298 */ {(void*) func_i2_801887D0, 1, (ObjectFunc) func_i2_80188344, D_ME_602FA50, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_299 */ {(void*) func_80042FC4, 2, (ObjectFunc) func_80042FB8, D_800CBF34, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_300 */ {(void*) func_80042FE8, 1, (ObjectFunc) func_80042FDC, D_800CBF34, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_301 */ {(void*) func_i3_801BEC5C, 1, (ObjectFunc) func_i3_801BEC50, D_AQ_6030B10, 0.0f, 0, 0, 40, 0, 0.0f, 10 },
@@ -397,7 +399,7 @@ ObjectInfo D_800CC124[0x190] = {
/* OBJ_BOSS_308 */ {(void*) func_8008FE78, 1, (ObjectFunc) func_800907C4, D_600FFE0, 0.0f, 0, 0, 40, 1, 0.0f, 10 },
/* OBJ_BOSS_309 */ {(void*) func_8002E604, 1, (ObjectFunc) func_8002E5E0, D_800CBF34, 0.0f, 0, 0, 40, 1, 0.0f, 10 },
/* 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_311 */ {(void*) func_i4_80191AFC, 2, (ObjectFunc) func_i4_801912FC, D_BO_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_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 },
+7 -6
View File
@@ -10,6 +10,7 @@ WingInfo D_80161630;
#include "fox_edisplay_assets.h"
#include "assets/ast_corneria.h"
#include "assets/ast_meteo.h"
#include "assets/ast_sector_x.h"
#include "assets/ast_aquas.h"
#include "assets/ast_macbeth.h"
@@ -89,12 +90,12 @@ void func_80059A24(Actor* actor) {
Matrix_Translate(gGfxMatrix, 0.f, -temp, 0.0f, 1);
Matrix_SetGfxMtx(&gMasterDisp);
Animation_GetFrameData(&D_601E8C4, actor->unk_0B6, sp30);
Animation_DrawSkeleton(1, D_601E9D0, sp30, NULL, func_800599A4, &actor->index, &gIdentityMatrix);
Animation_GetFrameData(&D_ME_601E8C4, actor->unk_0B6, sp30);
Animation_DrawSkeleton(1, D_ME_601E9D0, sp30, NULL, func_800599A4, &actor->index, &gIdentityMatrix);
}
void func_80059AEC(Object_80* obj80) {
gSPDisplayList(gMasterDisp++, D_601AE40);
gSPDisplayList(gMasterDisp++, D_ME_601AE40);
}
void func_80059B20(Object_80* obj80) {
@@ -551,19 +552,19 @@ void func_8005B388(Actor* actor) {
void func_8005B6A4(Actor* actor) {
Matrix_Scale(gGfxMatrix, 1.0f, 1.0f, 1.0f, 1);
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_6024B60);
gSPDisplayList(gMasterDisp++, D_ME_6024B60);
}
void func_8005B71C(Actor* actor) {
RCP_SetupDL_29(actor->unk_046, gFogGreen, gFogBlue, gFogAlpha, actor->unk_048, gFogFar);
Matrix_Scale(gGfxMatrix, 0.5f, 0.5f, 0.5f, 1);
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_6018C00);
gSPDisplayList(gMasterDisp++, D_ME_6018C00);
}
void func_8005B7CC(Actor* actor) {
RCP_SetupDL_29(actor->unk_046, gFogGreen, gFogBlue, gFogAlpha, actor->unk_048, gFogFar);
gSPDisplayList(gMasterDisp++, D_6022920);
gSPDisplayList(gMasterDisp++, D_ME_6022920);
}
void func_8005B848(Actor* actor) {
+3 -2
View File
@@ -15,6 +15,7 @@ extern Gfx D_601BAD0[];
#include "assets/ast_bg_space.h"
#include "assets/ast_bg_planet.h"
#include "assets/ast_corneria.h"
#include "assets/ast_meteo.h"
#include "assets/ast_training.h"
#include "assets/ast_sector_x.h"
#include "assets/ast_sector_y.h"
@@ -433,7 +434,7 @@ void func_800788B0(Effect* effect) {
case LEVEL_METEO:
Graphics_SetScaleMtx(effect->scale2);
gDPSetPrimColor(gMasterDisp++, 0, 0, 128, 128, 128, 255);
gSPDisplayList(gMasterDisp++, D_601FF80);
gSPDisplayList(gMasterDisp++, D_ME_601FF80);
break;
case LEVEL_AQUAS:
@@ -486,7 +487,7 @@ void func_80078BE0(Effect* effect) {
void func_80078C84(Effect* effect) {
Graphics_SetScaleMtx(effect->scale2);
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 192);
gSPDisplayList(gMasterDisp++, D_TI_6000A80);
gSPDisplayList(gMasterDisp++, D_ME_6000A80);
}
void func_80078CE8(Effect* effect) {
+3 -1
View File
@@ -6,6 +6,8 @@
#include "assets/ast_sector_y.h"
#include "assets/ast_sector_z.h"
#include "assets/ast_aquas.h"
#include "assets/ast_bolse.h"
#include "assets/ast_meteo.h"
#include "assets/ast_macbeth.h"
#include "assets/ast_titania.h"
#include "assets/ast_andross.h"
@@ -523,7 +525,7 @@ void func_80062664(void) {
s32 j;
if ((gCurrentLevel == LEVEL_METEO) && (D_8017827C == 1)) {
D_80178310 = SEGMENTED_TO_VIRTUAL(D_602B148);
D_80178310 = SEGMENTED_TO_VIRTUAL(D_ME_602B148);
} else if ((gCurrentLevel == LEVEL_SECTOR_X) && (D_8017827C == 1)) {
D_80178310 = SEGMENTED_TO_VIRTUAL(D_SX_602F18C);
} else if ((gCurrentLevel == LEVEL_VENOM_ANDROSS) && (D_8017827C == 1)) {
+18 -17
View File
@@ -9,6 +9,7 @@ s32 D_80161690;
#include "assets/ast_arwing.h"
#include "assets/ast_training.h"
#include "assets/ast_corneria.h"
#include "assets/ast_meteo.h"
#include "assets/ast_warp_zone.h"
#include "assets/ast_allies.h"
#include "assets/ast_sector_x.h"
@@ -881,8 +882,8 @@ UnkStruct_D003C D_800D003C[108] = {
{ D_ENMY_SPACE_400BD20, D_800CBEC4, 2.0f, 100.0f, 3000.0f, 1, 0, 1, 0, 1.0f, 1 },
{ D_ENMY_SPACE_4001310, D_800CBE8C, 1.5f, 100.0f, 3000.0f, 1, 0, 6, 0, 1.0f, 1 },
{ D_ENMY_SPACE_400B390, D_800CBE8C, 2.0f, 100.0f, 3000.0f, 1, 0, 1, 0, 1.0f, 1 },
{ D_6018C00, D_800CBE8C, 2.5f, 100.0f, 3000.0f, 1, 0, 1, 0, 1.0f, 1 },
{ D_601F2A0, D_800CBEFC, 7.0f, 100.0f, 3000.0f, 1, 0, 1, 0, 1.0f, 1 },
{ D_ME_6018C00, D_800CBE8C, 2.5f, 100.0f, 3000.0f, 1, 0, 1, 0, 1.0f, 1 },
{ D_ME_601F2A0, D_800CBEFC, 7.0f, 100.0f, 3000.0f, 1, 0, 1, 0, 1.0f, 1 },
{ D_ENMY_SPACE_400AAE0, D_800CBE8C, 1.5f, 100.0f, 3000.0f, 1, 0, 1, 0, 1.0f, 1 },
{ D_ENMY_SPACE_4000650, D_800CBE8C, 1.5f, 100.0f, 3000.0f, 1, 0, 6, 0, 1.0f, 1 },
{ D_A6_6016190, D_A6_60282A0, -2.0f, 2100.0f, 3000.0f, 0, 0, 7, 0, 0.0f, 5 },
@@ -913,9 +914,9 @@ UnkStruct_D003C D_800D003C[108] = {
{ 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_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_ME_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 },
{ D_ME_601A880, D_800CBE8C, -1.0f, 100.0f, 3000.0f, 1, 0, 0, 0, 0.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 },
@@ -929,13 +930,13 @@ UnkStruct_D003C D_800D003C[108] = {
{ 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 },
{ D_ME_6019430, D_800CBEC4, 2.5f, 100.0f, 3000.0f, 1, 0, 0, 0, 1.0f, 1 },
{ D_ME_6018960, D_800CBE8C, 2.5f, 100.0f, 3000.0f, 1, 0, 0, 0, 1.0f, 1 },
{ D_ME_6009F50, D_800CBF34, -1.0f, 100.0f, 3000.0f, 1, 0, 0, 0, 0.0f, 1 },
{ NULL, D_800CBEC4, 3.0f, 100.0f, 3000.0f, 1, 0, 0, 0, 1.0f, 1 },
{ 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_ME_600C2A0, D_800CBEC4, -1.0f, 100.0f, 8000.0f, 1, 0, 0, 0, 0.0f, 1 },
{ D_ME_600BD40, D_800CBE8C, -1.0f, 100.0f, 8000.0f, 1, 0, 0, 0, 0.0f, 1 },
{ NULL, D_ME_602F604, 3.0f, 100.0f, 3000.0f, 2, 0, 1, 0, 1.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 },
@@ -965,7 +966,7 @@ UnkStruct_D003C D_800D003C[108] = {
{ D_WZ_7000E80, D_800CC054, 2.5f, 100.0f, 3000.0f, 1, 0, 0, 0, 1.0f, 1 },
{ D_WZ_70008F0, D_800CBE8C, -1.0f, 100.0f, 8000.0f, 1, 0, 0, 0, 0.0f, 0 },
{ D_WZ_7000280, D_800CC070, -1.0f, 1000.0f, 3000.0f, 1, 0, 0, 0, 0.0f, 0 },
{ D_600AC70, D_800CBE8C, -1.0f, 100.0f, 3000.0f, 1, 0, 0, 0, 0.0f, 1 },
{ D_ME_600AC70, D_800CBE8C, -1.0f, 100.0f, 3000.0f, 1, 0, 0, 0, 0.0f, 1 },
{ D_MA_601A2B0, D_MA_60364C0, 1.0f, 100.0f, 3000.0f, 1, 1, 0, 0, 0.0f, 1 },
{ D_6002500, D_601B944, -1.0f, 100.0f, 3000.0f, 0, 0, 0, 0, 0.0f, 1 },
{ D_60043F0, D_800CBF34, -1.0f, 100.0f, 3000.0f, 0, 0, 0, 0, 0.0f, 1 },
@@ -3218,7 +3219,7 @@ void func_80072594(Actor* actor) {
}
if (var_s0 == 3) {
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_602F638);
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_ME_602F638);
func_8006D36C(actor);
}
break;
@@ -3994,19 +3995,19 @@ void func_80074FF0(Actor* actor) {
Matrix_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, 0.0f, actor->fwork[15], 0.0f, 1);
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_600CAA0);
gSPDisplayList(gMasterDisp++, D_ME_600CAA0);
Matrix_Pop(&gGfxMatrix);
gSPDisplayList(gMasterDisp++, D_600C130);
gSPDisplayList(gMasterDisp++, D_ME_600C130);
Matrix_Translate(gGfxMatrix, 0.0f, -actor->fwork[15], 0.0f, 1);
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_600C740);
gSPDisplayList(gMasterDisp++, D_ME_600C740);
Matrix_Pop(&gGfxMatrix);
break;
case 67:
gSPDisplayList(gMasterDisp++, D_6008AA0);
gSPDisplayList(gMasterDisp++, D_ME_6008AA0);
RCP_SetupDL(&gMasterDisp, 0x35);
gSPDisplayList(gMasterDisp++, D_6009E30);
gSPDisplayList(gMasterDisp++, D_ME_6009E30);
break;
case 78:
+2 -2
View File
@@ -85,6 +85,7 @@ s32 D_80161900[20];
#include "assets/ast_aquas.h"
#include "assets/ast_macbeth.h"
#include "assets/ast_titania.h"
#include "assets/ast_bolse.h"
#include "assets/ast_sector_x.h"
#include "assets/ast_sector_y.h"
#include "assets/ast_sector_z.h"
@@ -104,7 +105,6 @@ extern u8 D_ZO_6000000[];
extern u8 D_BO_6000000[];
extern u8 D_VE1_6000D80[];
extern u8 D_VE2_60012D0[];
extern u8 D_6000C80[];
extern u8 D_6001260[];
extern u8 D_6002890[];
extern Gfx D_6003090[];
@@ -2115,7 +2115,7 @@ s32 func_8008A4DC(void) {
break;
case LEVEL_BOLSE:
TextureRect_8bIA(&gMasterDisp, D_6000C80, 16, 16, 251.0f + D_800D1E10, 178.0f, 1.00f, 1.00f);
TextureRect_8bIA(&gMasterDisp, D_BO_6000C80, 16, 16, 251.0f + D_800D1E10, 178.0f, 1.00f, 1.00f);
break;
case LEVEL_SECTOR_Y:
+2
View File
@@ -8,6 +8,8 @@
#include "assets/ast_sector_y.h"
#include "assets/ast_sector_z.h"
#include "assets/ast_aquas.h"
#include "assets/ast_bolse.h"
#include "assets/ast_meteo.h"
#include "assets/ast_macbeth.h"
#include "assets/ast_titania.h"
#include "assets/ast_andross.h"
+3 -2
View File
@@ -15,6 +15,7 @@ s32 D_80178748;
#include "assets/ast_allies.h"
#include "assets/ast_corneria.h"
#include "assets/ast_meteo.h"
#include "assets/ast_training.h"
#include "assets/ast_sector_x.h"
#include "assets/ast_sector_y.h"
@@ -272,10 +273,10 @@ void func_800BAAE8(void) {
sp44 = D_CO_6025500;
break;
case RCID_BOSS_METEO:
sp44 = D_601C8E0;
sp44 = D_ME_601C8E0;
break;
case RCID_BOSS_METEO_OPEN:
sp44 = D_601D800;
sp44 = D_ME_601D800;
break;
case RCID_BOSS_AREA6:
sp44 = D_A6_60047E0;
+13 -20
View File
@@ -1,17 +1,10 @@
#include "global.h"
#include "assets.h"
#include "assets/ast_meteo.h"
extern s32 D_800C9E90[];
extern Gfx D_6001310[];
extern Gfx D_600CD60[];
extern Gfx D_6016240[];
extern Gfx D_6017AD0[];
extern Gfx D_60236F0[];
extern Gfx D_6023810[];
extern Gfx D_6024AD0[];
extern Gfx D_60240B0[];
extern Gfx D_60263F0[];
Vec3f D_i2_80195430[] = {
{ 122.0, -5.0, -1200.0 }, { 122.0, -103.0, -727.0 }, { 142.0, -323.0, -848.0 }, { 362.0, -59.0, -435.0 },
@@ -481,7 +474,7 @@ void func_i2_801887D0(Boss* boss) {
Matrix_RotateZ(gGfxMatrix, (M_PI / 4), 1);
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_60240B0);
gSPDisplayList(gMasterDisp++, D_ME_60240B0);
RCP_SetupDL_64();
for (i = 1; i < 4; i++) {
@@ -499,7 +492,7 @@ void func_i2_801887D0(Boss* boss) {
Matrix_RotateZ(gGfxMatrix, 1.5707964f, 1); // (M_PI / 2) does not match
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_60263F0);
gSPDisplayList(gMasterDisp++, D_ME_60263F0);
Matrix_Pop(&gGfxMatrix);
}
}
@@ -1552,7 +1545,7 @@ void func_i2_8018BACC(Boss* boss) {
f32 var_fs1;
s32 pad;
gSPDisplayList(gMasterDisp++, D_6001310);
gSPDisplayList(gMasterDisp++, D_ME_6001310);
RCP_SetupDL_64();
gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK);
@@ -1636,9 +1629,9 @@ void func_i2_8018BACC(Boss* boss) {
Matrix_SetGfxMtx(&gMasterDisp);
if (i < 4) {
gSPDisplayList(gMasterDisp++, D_6024AD0);
gSPDisplayList(gMasterDisp++, D_ME_6024AD0);
} else {
gSPDisplayList(gMasterDisp++, D_60236F0);
gSPDisplayList(gMasterDisp++, D_ME_60236F0);
}
Matrix_Pop(&gGfxMatrix);
}
@@ -1737,7 +1730,7 @@ void func_i2_8018BACC(Boss* boss) {
}
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_6023810);
gSPDisplayList(gMasterDisp++, D_ME_6023810);
Matrix_Pop(&gGfxMatrix);
Matrix_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, -700.0f, 0.0f, -(1235.0f - ((var_fs0 - 1.0f) * 89.2f)), 1);
@@ -1749,7 +1742,7 @@ void func_i2_8018BACC(Boss* boss) {
}
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_6023810);
gSPDisplayList(gMasterDisp++, D_ME_6023810);
Matrix_Pop(&gGfxMatrix);
}
}
@@ -2129,17 +2122,17 @@ void func_i2_8018D9EC(Actor* actor) {
void func_i2_8018DA6C(Actor* actor) {
RCP_SetupDL_60(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
gSPDisplayList(gMasterDisp++, D_6017AD0);
gSPDisplayList(gMasterDisp++, D_ME_6017AD0);
}
void func_i2_8018DAEC(Actor* actor) {
RCP_SetupDL_60(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
gSPDisplayList(gMasterDisp++, D_6016240);
gSPDisplayList(gMasterDisp++, D_ME_6016240);
}
void func_i2_8018DB6C(Actor* actor) {
RCP_SetupDL_60(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
gSPDisplayList(gMasterDisp++, D_600CD60);
gSPDisplayList(gMasterDisp++, D_ME_600CD60);
}
void func_i2_8018DBEC(Effect* effect) {
@@ -2149,7 +2142,7 @@ void func_i2_8018DBEC(Effect* effect) {
Matrix_RotateZ(gGfxMatrix, M_PI / 2, 1);
Matrix_SetGfxMtx(&gMasterDisp);
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, effect->unk_44);
gSPDisplayList(gMasterDisp++, D_60263F0);
gSPDisplayList(gMasterDisp++, D_ME_60263F0);
}
}
@@ -2177,7 +2170,7 @@ void func_i2_8018DE14(Effect* effect) {
switch (effect->unk_4C) {
case 0:
gSPDisplayList(gMasterDisp++, D_6023810);
gSPDisplayList(gMasterDisp++, D_ME_6023810);
case 1:
break;
}
+21 -39
View File
@@ -2,6 +2,7 @@
// #include "prevent_bss_reordering2.h"
#include "global.h"
#include "assets.h"
#include "assets/ast_bolse.h"
typedef struct UnkStruct_D_i4_801A03E0 {
f32 unk_00;
@@ -25,25 +26,6 @@ extern s16 D_800C9C34; // fox_bg
extern s32 D_80177C3C[];
extern s32 D_801778F4[];
extern Animation D_6001C64;
extern Limb* D_6001FB0[];
extern Gfx D_6002020[];
extern Gfx D_6006910[];
extern u8 D_6008BB8[];
extern Gfx D_6009BC0[];
extern u8 D_600AD80[];
extern Gfx D_600BEC0[];
extern Gfx D_600BF30[];
extern Vtx D_600C0B8[];
extern Gfx D_600C4E0[];
extern u8 D_600CF88[];
extern Animation D_600F2E0;
extern Animation D_600F3D8;
extern Limb* D_600F36C;
extern Limb* D_600F4A4;
extern u8 D_6011BA4[];
extern Vtx D_6011E28[];
f32 D_i4_8019EEC0 = 0.0f;
void func_8002FC00(Actor*);
@@ -626,8 +608,8 @@ s32 func_i4_8018D414(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* t
void func_i4_8018D454(Actor* actor) {
Matrix_Scale(gGfxMatrix, 2.0f, 2.0f, 2.0f, 1);
Animation_GetFrameData(&D_600F2E0, 0, actor->vwork);
Animation_DrawSkeleton(1, &D_600F36C, actor->vwork, func_i4_8018D414, NULL, actor, &gIdentityMatrix);
Animation_GetFrameData(&D_BO_600F2E0, 0, actor->vwork);
Animation_DrawSkeleton(1, D_BO_600F36C, actor->vwork, func_i4_8018D414, NULL, actor, &gIdentityMatrix);
actor->iwork[0] = 1;
}
@@ -688,7 +670,7 @@ bool func_i4_8018D584(Actor* actor) {
}
func_8007B344(actor->obj.pos.x, actor->obj.pos.y + 730.0f, actor->obj.pos.z, 10.0f, 5);
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_6011BA4);
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_BO_6011BA4);
Audio_KillSfxBySourceAndId(actor->sfxSource, 0x11000028U);
AUDIO_PLAY_SFX(0x2903B009U, actor->sfxSource, 0U);
} else {
@@ -732,8 +714,8 @@ s32 func_i4_8018D874(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* t
}
void func_i4_8018D960(Actor* actor) {
Animation_GetFrameData(&D_600F3D8, 0, actor->vwork);
Animation_DrawSkeleton(3, &D_600F4A4, actor->vwork, func_i4_8018D874, NULL, actor, gCalcMatrix);
Animation_GetFrameData(&D_BO_600F3D8, 0, actor->vwork);
Animation_DrawSkeleton(3, D_BO_600F4A4, actor->vwork, func_i4_8018D874, NULL, actor, gCalcMatrix);
}
s32 func_i4_8018D9CC(void) {
@@ -741,8 +723,8 @@ s32 func_i4_8018D9CC(void) {
f32 spA8[17];
f32 sp64[17];
s32 j;
Vtx* sp5C = SEGMENTED_TO_VIRTUAL(D_6011E28);
Vtx* sp58 = SEGMENTED_TO_VIRTUAL(D_600C0B8);
Vtx* sp5C = SEGMENTED_TO_VIRTUAL(D_BO_6011E28);
Vtx* sp58 = SEGMENTED_TO_VIRTUAL(D_BO_600C0B8);
for (i = 0; i < 17; i++) {
if ((i == 0) || (i == 16)) {
@@ -953,7 +935,7 @@ void func_i4_8018E870(Boss* boss) {
Matrix_Scale(gGfxMatrix, boss->unk_3F8, boss->unk_3F8, boss->unk_3F8, 1);
if (boss->vwork[30].y >= 0.0f) {
gSPDisplayList(gMasterDisp++, D_6002020);
gSPDisplayList(gMasterDisp++, D_BO_6002020);
}
if (gGameFrameCount & 1) {
@@ -977,7 +959,7 @@ void func_i4_8018E870(Boss* boss) {
Matrix_Translate(gGfxMatrix, 1.0f, 1.0f, D_i4_801A0488[i].unk_08 * 200.0f, 1);
Matrix_Scale(gGfxMatrix, 1.0f, 1.0f, D_i4_801A0488[i].unk_08, 1);
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_600BF30);
gSPDisplayList(gMasterDisp++, D_BO_600BF30);
Matrix_Pop(&gGfxMatrix);
}
}
@@ -1797,7 +1779,7 @@ void func_i4_80191180(Effect* effect) {
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 192);
Matrix_Scale(gGfxMatrix, 1.0f, 1.0f, effect->scale2, 1);
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_6006910);
gSPDisplayList(gMasterDisp++, D_BO_6006910);
break;
case 1:
@@ -1967,7 +1949,7 @@ s32 func_i4_801918E4(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* t
}
}
if (boss->swork[0 + limbIndex - 9] <= 0) {
*dList = D_6009BC0;
*dList = D_BO_6009BC0;
}
break;
}
@@ -1993,11 +1975,11 @@ void func_i4_80191A6C(s32 index, Vec3f* vec, void* ptr) {
}
void func_i4_80191AFC(Boss* boss) {
Animation_GetFrameData(&D_6001C64, 0, boss->vwork);
Animation_GetFrameData(&D_BO_6001C64, 0, boss->vwork);
if (boss->state >= 2) {
Animation_DrawSkeleton(3, D_6001FB0, boss->vwork, func_i4_801918E4, func_i4_80191A6C, boss, gCalcMatrix);
Animation_DrawSkeleton(3, D_BO_6001FB0, boss->vwork, func_i4_801918E4, func_i4_80191A6C, boss, gCalcMatrix);
} else {
Animation_DrawSkeleton(3, D_6001FB0, boss->vwork, NULL, NULL, boss, gCalcMatrix);
Animation_DrawSkeleton(3, D_BO_6001FB0, boss->vwork, NULL, NULL, boss, gCalcMatrix);
}
}
@@ -2006,8 +1988,8 @@ void func_i4_80191BAC(Boss* boss) {
Math_SmoothStepToF(&boss->fwork[0], D_i4_801A03DC * 9.0f + 10.0f, 1.0f, 10.0f, 0.0f);
Texture_Scroll(&D_600CF88, 16, 16, 0);
Texture_Scroll(&D_600CF88, 16, 16, 0);
Texture_Scroll(&D_BO_600CF88, 16, 16, 0);
Texture_Scroll(&D_BO_600CF88, 16, 16, 0);
switch (boss->state) {
case 2:
@@ -2060,7 +2042,7 @@ void func_i4_80191DB0(Boss* boss) {
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, alpha);
Matrix_Scale(gGfxMatrix, 1.2f, 0.55f, 1.2f, 1);
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_600C4E0);
gSPDisplayList(gMasterDisp++, D_BO_600C4E0);
}
}
@@ -2173,12 +2155,12 @@ void func_i4_80192264(void) {
if ((spD0.z < 3000.0f) && (spD0.z > -13000.0f) && (fabsf(spD0.x) < (fabsf(spD0.z * 0.7f) + 3000.0f)) &&
(fabsf(spD0.y) < (fabsf(spD0.z * 0.5f) + 2000.0f))) {
if (rnd < 0.3f) {
gDPLoadTileTexture(gMasterDisp++, D_6008BB8, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32);
gDPLoadTileTexture(gMasterDisp++, D_BO_6008BB8, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32);
} else {
gDPLoadTileTexture(gMasterDisp++, D_600AD80, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32);
gDPLoadTileTexture(gMasterDisp++, D_BO_600AD80, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32);
}
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_600BEC0)
gSPDisplayList(gMasterDisp++, D_BO_600BEC0)
}
Matrix_Pop(&gGfxMatrix);
}
+36 -35
View File
@@ -98,15 +98,23 @@ void func_i4_80199BDC(f32 xPos, f32 yPos, f32 zPos, f32 xVel, f32 yVel, f32 zVel
}
}
}
typedef enum {
MISSILE_TARGET_X = 4,
MISSILE_TARGET_Y = 5,
MISSILE_TARGET_Z = 6,
} MissileWork;
// https://decomp.me/scratch/FVgio
// https://decomp.me/scratch/7td7r
#ifdef NON_MATCHING
void func_i4_80199C60(Actor* actor) {
s32 pad[2];
f32 var_fa0;
f32 var_fv1;
void func_i4_80199C60(Actor* missile) {
f32 xDist;
f32 yDist;
f32 zDist;
f32 x;
f32 y;
s32 pad;
switch (++actor->iwork[9]) {
switch (++missile->iwork[9]) {
case 600:
Radio_PlayMessage(gMsg_ID_16080, RCID_ROB64);
break;
@@ -120,39 +128,33 @@ void func_i4_80199C60(Actor* actor) {
break;
}
var_fv1 = gBosses[0].obj.pos.x - actor->obj.pos.x;
var_fa0 = gBosses[0].obj.pos.z - actor->obj.pos.z;
SIN_DEG(gGameFrameCount);
/* Distance between the Great Fox and the missile */
xDist = gBosses[0].obj.pos.x - missile->obj.pos.x;
zDist = gBosses[0].obj.pos.z - missile->obj.pos.z;
if (0) {
;
}
if (var_fv1) {
;
}
if (var_fa0) {
;
}
SIN_DEG(gGameFrameCount); // WTF
if (actor->unk_0E4 < 100) {
var_fv1 = SIN_DEG((actor->index * 45) + gGameFrameCount) * 5000.0f;
var_fa0 = COS_DEG((actor->index * 45) + (gGameFrameCount * 2)) * 5000.0f;
if (xDist) {}
if (zDist) {}
if (missile->unk_0E4 < 100) {
xDist = SIN_DEG((missile->index * 45) + gGameFrameCount) * 5000.0f;
zDist = COS_DEG((missile->index * 45) + (gGameFrameCount * 2)) * 5000.0f;
} else {
var_fa0 = 0.0f;
var_fv1 = 0.0f;
zDist = 0.0f;
xDist = 0.0f;
}
actor->fwork[4] = (gBosses[0].obj.pos.x + var_fv1) + 400.0f;
actor->fwork[5] = (gBosses[0].obj.pos.y + var_fa0) + 100.0f;
// temp_fv0 = fabsf(actor->fwork[4] - actor->obj.pos.x);
actor->fwork[6] = gBosses[0].obj.pos.z;
actor->fwork[3] = 1.4f;
missile->fwork[MISSILE_TARGET_X] = (gBosses[0].obj.pos.x + xDist) + 400.0f;
missile->fwork[MISSILE_TARGET_Y] = (gBosses[0].obj.pos.y + zDist) + 100.0f;
missile->fwork[MISSILE_TARGET_Z] = gBosses[0].obj.pos.z;
missile->fwork[3] = 1.4f;
if (((fabsf(actor->fwork[4] - actor->obj.pos.x) < 800.0f) &&
(fabsf(actor->fwork[5] - actor->obj.pos.y) < 800.0f)) &&
(fabsf(actor->fwork[6] - actor->obj.pos.z) < 800.0f)) {
func_i4_80199900(actor, 0);
D_80178480 = 0x19;
if (((fabsf(missile->fwork[MISSILE_TARGET_X] - missile->obj.pos.x) < 800.0f) &&
(fabsf(missile->fwork[MISSILE_TARGET_Y] - missile->obj.pos.y) < 800.0f)) &&
(fabsf(missile->fwork[MISSILE_TARGET_Z] - missile->obj.pos.z) < 800.0f)) {
func_i4_80199900(missile, 0);
D_80178480 = 25;
gBosses[0].dmgType = DMG_UNK_100;
if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_5)) {
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_7;
@@ -161,8 +163,7 @@ void func_i4_80199C60(Actor* actor) {
return;
}
}
if (((fabsf(actor->fwork[6] - actor->obj.pos.z) < 2000.0f) &&
if (((fabsf(missile->fwork[MISSILE_TARGET_Z] - missile->obj.pos.z) < 2000.0f) &&
(((gPlayer[0].camEye.z < 0.0f) || (D_801615D0.y < 0.0f)) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_10))) &&
(((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_10)) ||
(gPlayer[0].state_1C8 == PLAYERSTATE_1C8_5))) {