mirror of
https://github.com/HarbourMasters/Starship
synced 2026-06-09 04:49:43 -04:00
Sector Z, Fortuna & General Docs (#261)
* Sector Z Docs initial * Sector Z docs * some other things * correction * Space Junk * SectorZ_SetLevelObjects * rename assets with correct prefix * aSzBackgroundTex * details * pr review * Sector X initials * Meteo Initials * Sector X things I forgot * fox_tr360 & fox_ve1 & fox_so initials * fox_so details * Zones initials * More Zones initials * more zones initials * area 6 initials * fortuna inits * fortuna actors * some more docs * more docs for Fortuna * fix mistake in data incorrectly imported * Fortuna Radars * BossFO * Sector Y Initials * Venom 2 general Docs * Some Corneria Docs * Actor, Scenery and Boss IDs in update and draw functions of gObjectInfo * more docs and this usage * fox_360 this usage * more actor types and this usages * fox_effect type usage * training docs * some Sector X docs * fix incorrect usage of "this" * fix comment * more docs * funcNames * fox_bg spacing * boolean * scenery corneria bumbs * terrain bumps * corneria arch * more corneria objects * hitboxes * more corneria objects * more corneria level objects * more corneria objects * aCoWaterfallDL * corneria docs * more corneria docs * Granga swork start * corneria swork * Corneria * Corneria Granga docs * more granga docs * granga work buffer enum * CarrierParts enum use * option * Corneria Docs * GRANGA_FWK * fox_co.h header * fix Fault_FillRectangle typo * PR reviews * sCsTeamInitialPos * Doodad
This commit is contained in:
committed by
GitHub
parent
24e316a2b2
commit
c348962cab
+299
-119
File diff suppressed because it is too large
Load Diff
+29
-28
@@ -69,7 +69,7 @@ void PlayerShot_ExplodeBomb(PlayerShot* shot) {
|
||||
shot->unk_48 * 3.0f, 10);
|
||||
func_effect_8007ADF4(shot->obj.pos.x, gGroundHeight, shot->obj.pos.z, shot->unk_48 * 0.05f,
|
||||
shot->unk_48 * 0.5f);
|
||||
func_effect_8007A6F0(&shot->obj.pos, NA_SE_OB_WATER_BOUND_M);
|
||||
Effect_SpawnTimedSfxAtPos(&shot->obj.pos, NA_SE_OB_WATER_BOUND_M);
|
||||
} else {
|
||||
func_enmy_80062B60(shot->obj.pos.x, shot->obj.pos.z, 0, shot->unk_48 * 3.0f);
|
||||
}
|
||||
@@ -305,10 +305,11 @@ s32 PlayerShot_CheckObjectHitbox(PlayerShot* shot, f32* hitboxData, Object* obj)
|
||||
if (!((obj->id >= OBJ_ACTOR_START) && (obj->id < OBJ_ACTOR_MAX))) {
|
||||
PlayerShot_Impact(shot);
|
||||
}
|
||||
if ((obj->id == OBJ_SCENERY_15) || ((obj->id == OBJ_SCENERY_22) && (i == 0)) ||
|
||||
((obj->id == OBJ_SCENERY_10) && (i == 0)) || ((obj->id == OBJ_SCENERY_13) && (i == 0)) ||
|
||||
((obj->id == OBJ_SCENERY_12) && (i < 3)) || (obj->id == OBJ_SCENERY_16) ||
|
||||
(obj->id == OBJ_SCENERY_14)) {
|
||||
if ((obj->id == OBJ_SCENERY_CO_BUILDING_6) || ((obj->id == OBJ_SCENERY_CO_ARCH_3) && (i == 0)) ||
|
||||
((obj->id == OBJ_SCENERY_CO_BUILDING_1) && (i == 0)) ||
|
||||
((obj->id == OBJ_SCENERY_CO_BUILDING_4) && (i == 0)) ||
|
||||
((obj->id == OBJ_SCENERY_CO_BUILDING_3) && (i < 3)) || (obj->id == OBJ_SCENERY_CO_BUILDING_7) ||
|
||||
(obj->id == OBJ_SCENERY_CO_BUILDING_5)) {
|
||||
if (shot->obj.pos.x - (obj->pos.x + hitbox->x.offset) < -hitbox->x.size) {
|
||||
if (hitbox->z.size + (obj->pos.z + hitbox->z.offset) < shot->obj.pos.z) {
|
||||
shot->obj.pos.z = hitbox->z.size + (obj->pos.z + hitbox->z.offset) - 5.0f;
|
||||
@@ -336,7 +337,7 @@ s32 PlayerShot_CheckObjectHitbox(PlayerShot* shot, f32* hitboxData, Object* obj)
|
||||
return i + 1;
|
||||
}
|
||||
if (obj->id < OBJ_SCENERY_MAX) {
|
||||
func_effect_8007A6F0(&shot->obj.pos, NA_SE_EN_REFLECT);
|
||||
Effect_SpawnTimedSfxAtPos(&shot->obj.pos, NA_SE_EN_REFLECT);
|
||||
}
|
||||
return i + 1;
|
||||
}
|
||||
@@ -485,7 +486,7 @@ bool PlayerShot_CheckPolyCollision(PlayerShot* shot, ObjectId objId, Object* obj
|
||||
sp7C.z = obj->pos.z - shot->obj.pos.z;
|
||||
// undefined behavior: if this check fails, the function returns no value
|
||||
if (((fabsf(sp7C.x) < 1100.0f) && (fabsf(sp7C.z) < 1100.0f) && (shot->obj.pos.y < 900.0f)) ||
|
||||
(objId == OBJ_BOSS_SZ) || (objId == ACTOR_EVENT_ID) || (objId == OBJ_SCENERY_ME_TUNNEL)) {
|
||||
(objId == OBJ_BOSS_SZ_GREAT_FOX) || (objId == ACTOR_EVENT_ID) || (objId == OBJ_SCENERY_ME_TUNNEL)) {
|
||||
Matrix_RotateY(gCalcMatrix, -obj->rot.y * M_DTOR, MTXF_NEW);
|
||||
sp7C.x = shot->obj.pos.x - obj->pos.x;
|
||||
sp7C.y = shot->obj.pos.y - obj->pos.y;
|
||||
@@ -506,8 +507,8 @@ bool PlayerShot_CheckPolyCollision(PlayerShot* shot, ObjectId objId, Object* obj
|
||||
case OBJ_ACTOR_180:
|
||||
objId = COL1_0;
|
||||
break;
|
||||
case OBJ_SCENERY_4:
|
||||
case OBJ_SCENERY_5:
|
||||
case OBJ_SCENERY_CO_BUMP_4:
|
||||
case OBJ_SCENERY_CO_BUMP_5:
|
||||
objId = COL2_1;
|
||||
useCol2 = true;
|
||||
break;
|
||||
@@ -529,7 +530,7 @@ bool PlayerShot_CheckPolyCollision(PlayerShot* shot, ObjectId objId, Object* obj
|
||||
case ACTOR_EVENT_ID:
|
||||
objId = COL1_3;
|
||||
break;
|
||||
case OBJ_BOSS_SZ:
|
||||
case OBJ_BOSS_SZ_GREAT_FOX:
|
||||
objId = COL1_8;
|
||||
break;
|
||||
case OBJ_SCENERY_ME_TUNNEL:
|
||||
@@ -555,11 +556,11 @@ bool PlayerShot_CheckPolyCollision(PlayerShot* shot, ObjectId objId, Object* obj
|
||||
objId = COL2_7;
|
||||
useCol2 = true;
|
||||
break;
|
||||
case OBJ_SCENERY_2:
|
||||
case OBJ_SCENERY_CO_BUMP_2:
|
||||
objId = COL2_2;
|
||||
useCol2 = true;
|
||||
break;
|
||||
case OBJ_SCENERY_3:
|
||||
case OBJ_SCENERY_CO_BUMP_3:
|
||||
case OBJ_SCENERY_69:
|
||||
objId = COL2_3;
|
||||
useCol2 = true;
|
||||
@@ -612,7 +613,7 @@ bool PlayerShot_CheckPolyCollision(PlayerShot* shot, ObjectId objId, Object* obj
|
||||
return false;
|
||||
}
|
||||
PlayerShot_Impact(shot);
|
||||
func_effect_8007A6F0(&shot->obj.pos, NA_SE_EN_REFLECT);
|
||||
Effect_SpawnTimedSfxAtPos(&shot->obj.pos, NA_SE_EN_REFLECT);
|
||||
if (gCurrentLevel == LEVEL_METEO) {
|
||||
Matrix_RotateY(gCalcMatrix, obj->rot.y * M_DTOR, MTXF_NEW);
|
||||
sp7C.x = sp4C.x - obj->pos.x;
|
||||
@@ -635,7 +636,7 @@ bool PlayerShot_CheckPolyCollision(PlayerShot* shot, ObjectId objId, Object* obj
|
||||
return false;
|
||||
}
|
||||
PlayerShot_Impact(shot);
|
||||
func_effect_8007A6F0(&shot->obj.pos, NA_SE_EN_REFLECT);
|
||||
Effect_SpawnTimedSfxAtPos(&shot->obj.pos, NA_SE_EN_REFLECT);
|
||||
if (gCurrentLevel == LEVEL_FORTUNA) {
|
||||
func_effect_8007BC7C(shot->obj.pos.x, shot->obj.pos.y, shot->obj.pos.z, 3.0f);
|
||||
func_effect_8007BC7C(shot->obj.pos.x, shot->obj.pos.y, shot->obj.pos.z, 3.0f);
|
||||
@@ -790,7 +791,7 @@ void PlayerShot_CollisionCheck(PlayerShot* shot) {
|
||||
default:
|
||||
if (actor->info.unk_16 != 0) {
|
||||
if (actor->obj.id == OBJ_ACTOR_ALLRANGE) {
|
||||
if ((actor->aiType >= AI360_WOLF) && (actor->aiType < AI360_10) &&
|
||||
if ((actor->aiType >= AI360_WOLF) && (actor->aiType < AI360_ENEMY) &&
|
||||
(((gCurrentLevel == LEVEL_VENOM_2) &&
|
||||
(shot->sourceId <= NPC_SHOT_ID + AI360_PEPPY)) ||
|
||||
((gCurrentLevel != LEVEL_VENOM_2) && (shot->sourceId == AI360_FOX))) &&
|
||||
@@ -906,8 +907,8 @@ void PlayerShot_CollisionCheck(PlayerShot* shot) {
|
||||
if ((scenery360->obj.id == OBJ_SCENERY_117) || (scenery360->obj.id == OBJ_SCENERY_141) ||
|
||||
(scenery360->obj.id == OBJ_SCENERY_149) || (scenery360->obj.id == OBJ_SCENERY_150) ||
|
||||
(scenery360->obj.id == OBJ_SCENERY_148) || (scenery360->obj.id == OBJ_SCENERY_143) ||
|
||||
(scenery360->obj.id == OBJ_SCENERY_160) || (scenery360->obj.id == OBJ_SCENERY_1) ||
|
||||
(scenery360->obj.id == OBJ_SCENERY_3) || (scenery360->obj.id == OBJ_SCENERY_140)) {
|
||||
(scenery360->obj.id == OBJ_SCENERY_160) || (scenery360->obj.id == OBJ_SCENERY_CO_BUMP_1) ||
|
||||
(scenery360->obj.id == OBJ_SCENERY_CO_BUMP_3) || (scenery360->obj.id == OBJ_SCENERY_140)) {
|
||||
PlayerShot_CheckPolyCollision(shot, scenery360->obj.id, &scenery360->obj);
|
||||
} else {
|
||||
PlayerShot_CheckObjectHitbox(shot, scenery360->info.hitbox, &scenery360->obj);
|
||||
@@ -917,13 +918,13 @@ void PlayerShot_CollisionCheck(PlayerShot* shot) {
|
||||
} else {
|
||||
for (i = 0, scenery = gScenery; i < ARRAY_COUNT(gScenery); i++, scenery++) {
|
||||
if (scenery->obj.status == OBJ_ACTIVE) {
|
||||
if ((scenery->obj.id == OBJ_SCENERY_1) || (scenery->obj.id == OBJ_SCENERY_ME_TUNNEL) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_4) || (scenery->obj.id == OBJ_SCENERY_5) ||
|
||||
if ((scenery->obj.id == OBJ_SCENERY_CO_BUMP_1) || (scenery->obj.id == OBJ_SCENERY_ME_TUNNEL) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_CO_BUMP_4) || (scenery->obj.id == OBJ_SCENERY_CO_BUMP_5) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_120) || (scenery->obj.id == OBJ_SCENERY_124) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_126) || (scenery->obj.id == OBJ_SCENERY_47) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_2) || (scenery->obj.id == OBJ_SCENERY_3) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_CO_BUMP_2) || (scenery->obj.id == OBJ_SCENERY_CO_BUMP_3) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_67) || (scenery->obj.id == OBJ_SCENERY_74) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_3)) {
|
||||
(scenery->obj.id == OBJ_SCENERY_CO_BUMP_3)) {
|
||||
PlayerShot_CheckPolyCollision(shot, scenery->obj.id, &scenery->obj);
|
||||
} else {
|
||||
temp_v0 = PlayerShot_CheckObjectHitbox(shot, scenery->info.hitbox, &scenery->obj);
|
||||
@@ -953,7 +954,7 @@ void PlayerShot_CollisionCheck(PlayerShot* shot) {
|
||||
for (i = 0, boss = gBosses; i < ARRAY_COUNT(gBosses); i++, boss++) {
|
||||
if ((boss->obj.status == OBJ_ACTIVE) && (boss->timer_05A == 0)) {
|
||||
if ((boss->obj.id == OBJ_BOSS_FO) || (boss->obj.id == OBJ_BOSS_VE2) || (boss->obj.id == OBJ_BOSS_309) ||
|
||||
(boss->obj.id == OBJ_BOSS_SZ)) {
|
||||
(boss->obj.id == OBJ_BOSS_SZ_GREAT_FOX)) {
|
||||
PlayerShot_CheckPolyCollision(shot, boss->obj.id, &boss->obj);
|
||||
} else if (boss->obj.id == OBJ_BOSS_310) {
|
||||
test.x = fabsf(boss->obj.pos.x - shot->obj.pos.x) * .8333333f;
|
||||
@@ -1614,7 +1615,7 @@ void PlayerShot_UpdateBeam(PlayerShot* shot, s32 index) {
|
||||
PlayerShot_Impact(shot);
|
||||
shot->obj.pos.y = gGroundHeight + 2;
|
||||
if (gCurrentLevel == LEVEL_BOLSE) {
|
||||
func_effect_8007A6F0(&shot->obj.pos, NA_SE_EN_REFLECT);
|
||||
Effect_SpawnTimedSfxAtPos(&shot->obj.pos, NA_SE_EN_REFLECT);
|
||||
}
|
||||
if ((gCamCount != 4) && (gCurrentLevel != LEVEL_AQUAS)) {
|
||||
if ((shot->sourceId == TEAM_ID_FOX) && (gLaserStrength[0] != LASERS_SINGLE) &&
|
||||
@@ -1660,7 +1661,7 @@ void PlayerShot_UpdateBeam(PlayerShot* shot, s32 index) {
|
||||
Object_Kill(&shot->obj, shot->sfxSource);
|
||||
return;
|
||||
}
|
||||
if ((shot->sourceId < NPC_SHOT_ID + AI360_10) || ((shot->timer % 2) != 0)) {
|
||||
if ((shot->sourceId < NPC_SHOT_ID + AI360_ENEMY) || ((shot->timer % 2) != 0)) {
|
||||
PlayerShot_CollisionCheck(shot);
|
||||
}
|
||||
}
|
||||
@@ -1863,7 +1864,7 @@ void PlayerShot_ApplyExplosionDamage(PlayerShot* shot, s32 damage) {
|
||||
|
||||
scenery = gScenery;
|
||||
for (i = 0; i < ARRAY_COUNT(gScenery); i++, scenery++) {
|
||||
if ((scenery->obj.status == OBJ_ACTIVE) && (scenery->obj.id == OBJ_SCENERY_56)) {
|
||||
if ((scenery->obj.status == OBJ_ACTIVE) && (scenery->obj.id == OBJ_SCENERY_CO_DOORS)) {
|
||||
dx = scenery->obj.pos.x - shot->obj.pos.x;
|
||||
dy = scenery->obj.pos.y - shot->obj.pos.y;
|
||||
dz = scenery->obj.pos.z - shot->obj.pos.z;
|
||||
@@ -1904,7 +1905,7 @@ void PlayerShot_ApplyExplosionDamage(PlayerShot* shot, s32 damage) {
|
||||
actor->hitPos.z = shot->obj.pos.z;
|
||||
if (sqrtf(SQ(dx) + SQ(dy) + SQ(dz)) < radius) {
|
||||
if ((actor->obj.id == OBJ_ACTOR_193) || (actor->obj.id == OBJ_ACTOR_186) ||
|
||||
(actor->obj.id == OBJ_ACTOR_190) || (actor->obj.id == OBJ_ACTOR_202) ||
|
||||
(actor->obj.id == OBJ_MISSILE_SEEK_TEAM) || (actor->obj.id == OBJ_ACTOR_202) ||
|
||||
(actor->obj.id == OBJ_ACTOR_201) || (actor->obj.id == OBJ_ACTOR_187) ||
|
||||
((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->eventType == EVID_SUPPLY_CRATE)) ||
|
||||
((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->eventType == EVID_SX_WARP_GATE)) ||
|
||||
@@ -2093,7 +2094,7 @@ void PlayerShot_UpdateLockOnShot(PlayerShot* shot) {
|
||||
shot->unk_48 * 3.0f, 5);
|
||||
func_effect_8007ADF4(shot->obj.pos.x, gGroundHeight, shot->obj.pos.z, shot->unk_48 * 0.05f,
|
||||
shot->unk_48 * 0.5f);
|
||||
func_effect_8007A6F0(&shot->obj.pos, NA_SE_OB_WATER_BOUND_M);
|
||||
Effect_SpawnTimedSfxAtPos(&shot->obj.pos, NA_SE_OB_WATER_BOUND_M);
|
||||
}
|
||||
PlayerShot_Impact(shot);
|
||||
} else {
|
||||
@@ -2246,7 +2247,7 @@ void PlayerShot_UpdateShot(PlayerShot* shot, s32 index) {
|
||||
}
|
||||
}
|
||||
Object_Kill(&shot->obj, shot->sfxSource);
|
||||
func_effect_8007A6F0(&shot->obj.pos, NA_SE_SPREAD_EXPLOSION);
|
||||
Effect_SpawnTimedSfxAtPos(&shot->obj.pos, NA_SE_SPREAD_EXPLOSION);
|
||||
} else if (gCurrentLevel == LEVEL_AQUAS) {
|
||||
Aquas_801ABA40(shot);
|
||||
} else {
|
||||
|
||||
+82
-15
@@ -168,20 +168,19 @@ void Background_DrawStarfield(void) {
|
||||
}
|
||||
|
||||
void Background_DrawPartialStarfield(s32 yMin, s32 yMax) {
|
||||
f32 by; // 8C
|
||||
f32 bx; // 88
|
||||
s16 vy; // 84
|
||||
f32 by;
|
||||
f32 bx;
|
||||
s16 vy;
|
||||
s16 vx;
|
||||
s32 i; // 80
|
||||
s32 var_s2; // 7C
|
||||
f32 cos; // 78
|
||||
f32 sin; // 74
|
||||
f32 spf68; // 70
|
||||
f32 spf64; // 6C
|
||||
f32* sp60; // 68
|
||||
f32* sp5C; // 64
|
||||
u32* sp58; // 60
|
||||
|
||||
s32 i;
|
||||
s32 var_s2;
|
||||
f32 cos;
|
||||
f32 sin;
|
||||
f32 spf68;
|
||||
f32 spf64;
|
||||
f32* sp60;
|
||||
f32* sp5C;
|
||||
u32* sp58;
|
||||
gDPPipeSync(gMasterDisp++);
|
||||
gDPSetCycleType(gMasterDisp++, G_CYC_FILL);
|
||||
gDPSetCombineMode(gMasterDisp++, G_CC_SHADE, G_CC_SHADE);
|
||||
@@ -261,10 +260,13 @@ void Background_DrawBackdrop(void) {
|
||||
levelType = LEVELTYPE_SPACE;
|
||||
}
|
||||
levelId = gCurrentLevel;
|
||||
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
|
||||
if (D_ctx_80177C70 == 2) {
|
||||
Matrix_Scale(gGfxMatrix, 1.2f, 1.2f, 1.0f, MTXF_APPLY);
|
||||
}
|
||||
|
||||
switch (levelType) {
|
||||
case LEVELTYPE_PLANET:
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_17);
|
||||
@@ -277,12 +279,14 @@ void Background_DrawBackdrop(void) {
|
||||
sp13C = Math_ModF(Math_RadToDeg(gPlayer[gPlayerNum].camYaw) * (-7280.0f / 360.0f) * 5.0f, 7280.0f);
|
||||
Matrix_RotateZ(gGfxMatrix, gPlayer[gPlayerNum].camRoll * M_DTOR, MTXF_APPLY);
|
||||
Matrix_Translate(gGfxMatrix, sp13C, -2000.0f + sp134, -6000.0f, MTXF_APPLY);
|
||||
|
||||
if (gCurrentLevel == LEVEL_FORTUNA) {
|
||||
Matrix_Translate(gGfxMatrix, 0.0f, -2000.0f, 0, MTXF_APPLY);
|
||||
} else if (gCurrentLevel == LEVEL_KATINA) {
|
||||
Matrix_Translate(gGfxMatrix, 0.0f, -2500.0f, 0, MTXF_APPLY);
|
||||
}
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
|
||||
switch (gCurrentLevel) {
|
||||
case LEVEL_VERSUS:
|
||||
if (gVersusStage == VS_STAGE_CORNERIA) {
|
||||
@@ -305,6 +309,7 @@ void Background_DrawBackdrop(void) {
|
||||
}
|
||||
Matrix_Translate(gGfxMatrix, 7280.0f, 0.0f, 0.0f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
|
||||
switch (gCurrentLevel) {
|
||||
case LEVEL_VERSUS:
|
||||
if (gVersusStage == VS_STAGE_CORNERIA) {
|
||||
@@ -326,6 +331,7 @@ void Background_DrawBackdrop(void) {
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVEL_CORNERIA:
|
||||
case LEVEL_VENOM_1:
|
||||
sp134 = (gPlayer[gPlayerNum].camPitch * -6000.0f) - (gPlayer[gPlayerNum].cam.eye.y * 0.6f);
|
||||
@@ -333,6 +339,7 @@ void Background_DrawBackdrop(void) {
|
||||
Matrix_RotateZ(gGfxMatrix, gPlayer[gPlayerNum].camRoll * M_DTOR, MTXF_APPLY);
|
||||
Matrix_Translate(gGfxMatrix, sp13C, -2000.0f + sp134, -6000.0f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
|
||||
switch (gCurrentLevel) {
|
||||
case LEVEL_CORNERIA:
|
||||
gSPDisplayList(gMasterDisp++, D_CO_60059F0);
|
||||
@@ -341,8 +348,10 @@ void Background_DrawBackdrop(void) {
|
||||
gSPDisplayList(gMasterDisp++, D_VE1_60046F0);
|
||||
break;
|
||||
}
|
||||
|
||||
Matrix_Translate(gGfxMatrix, 7280.0f, 0.0f, 0.0f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
|
||||
switch (gCurrentLevel) {
|
||||
case LEVEL_CORNERIA:
|
||||
gSPDisplayList(gMasterDisp++, D_CO_60059F0);
|
||||
@@ -352,6 +361,7 @@ void Background_DrawBackdrop(void) {
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVEL_VENOM_ANDROSS:
|
||||
if (gDrawBackdrop != 6) {
|
||||
if ((gDrawBackdrop == 2) || (gDrawBackdrop == 7)) {
|
||||
@@ -412,6 +422,7 @@ void Background_DrawBackdrop(void) {
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVEL_AQUAS:
|
||||
if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_LEVEL_INTRO) {
|
||||
sp13C = Math_RadToDeg(gPlayer[gPlayerNum].camYaw) - gPlayer[gPlayerNum].yRot_114;
|
||||
@@ -423,6 +434,7 @@ void Background_DrawBackdrop(void) {
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_Translate(gGfxMatrix, sp13C, sp134, -7000.0f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
|
||||
if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_LEVEL_INTRO) {
|
||||
gSPDisplayList(gMasterDisp++, D_AQ_601AFF0);
|
||||
} else {
|
||||
@@ -445,6 +457,7 @@ void Background_DrawBackdrop(void) {
|
||||
Matrix_Pop(&gGfxMatrix);
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVEL_SOLAR:
|
||||
case LEVEL_ZONESS:
|
||||
case LEVEL_MACBETH:
|
||||
@@ -452,6 +465,7 @@ void Background_DrawBackdrop(void) {
|
||||
sp12C = Math_RadToDeg(gPlayer[gPlayerNum].camYaw) - gPlayer[gPlayerNum].yRot_114;
|
||||
sp134 = (gPlayer[gPlayerNum].camPitch * -7000.0f) - (gPlayer[gPlayerNum].cam.eye.y * 0.6f);
|
||||
sp13C = sp12C * -40.44444f * 2.0f; // close to 7280.0f / 180.0f
|
||||
|
||||
if ((gCurrentLevel == LEVEL_TITANIA) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_LEVEL_INTRO) &&
|
||||
(gPlayer[0].csState < 3)) {
|
||||
D_bg_8015F968 += __sinf(gPlayer[0].camYaw) * 20.0f;
|
||||
@@ -462,10 +476,12 @@ void Background_DrawBackdrop(void) {
|
||||
D_bg_8015F968 = __sinf(gPlayer[0].camPitch) * 7000.0f;
|
||||
sp134 -= fabsf(D_bg_8015F968);
|
||||
}
|
||||
|
||||
sp13C = Math_ModF(sp13C, 7280.0f);
|
||||
RCP_SetupDL_17();
|
||||
Matrix_RotateZ(gGfxMatrix, gPlayer[gPlayerNum].camRoll * M_DTOR, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, 1.5f, 1.0f, 1.0f, MTXF_APPLY);
|
||||
|
||||
if ((gCurrentLevel == LEVEL_TITANIA) || (gCurrentLevel == LEVEL_ZONESS)) {
|
||||
Matrix_Translate(gGfxMatrix, sp13C, -3000.0f + sp134, -7000.0f, MTXF_APPLY);
|
||||
} else if (gCurrentLevel == LEVEL_SOLAR) {
|
||||
@@ -474,6 +490,7 @@ void Background_DrawBackdrop(void) {
|
||||
Matrix_Translate(gGfxMatrix, sp13C, -4000.0f + sp134, -7000.0f, MTXF_APPLY);
|
||||
}
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
|
||||
if (gCurrentLevel == LEVEL_TITANIA) {
|
||||
gSPDisplayList(gMasterDisp++, D_TI_6000A80);
|
||||
} else if (gCurrentLevel == LEVEL_MACBETH) {
|
||||
@@ -490,6 +507,7 @@ void Background_DrawBackdrop(void) {
|
||||
}
|
||||
Matrix_Translate(gGfxMatrix, 7280.0f * sp13C, 0.0f, 0.0f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
|
||||
if (gCurrentLevel == LEVEL_TITANIA) {
|
||||
gSPDisplayList(gMasterDisp++, D_TI_6000A80);
|
||||
} else if (gCurrentLevel == LEVEL_MACBETH) {
|
||||
@@ -502,6 +520,7 @@ void Background_DrawBackdrop(void) {
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVELTYPE_SPACE:
|
||||
if (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_ENTER_WARP_ZONE) {
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
@@ -534,13 +553,16 @@ void Background_DrawBackdrop(void) {
|
||||
sp138 = Math_ModF(sp138, 480.0f);
|
||||
sp134 = Math_ModF(sp134, 360.0f);
|
||||
}
|
||||
|
||||
if ((sp12C < 180.0f) && (sp138 > 380.0f)) {
|
||||
sp138 = -(480.0f - sp138);
|
||||
}
|
||||
if ((sp130 > 180.0f) && (sp134 > 280.0f)) {
|
||||
sp134 = -(360.0f - sp134);
|
||||
}
|
||||
|
||||
Matrix_RotateZ(gGfxMatrix, gStarfieldRoll, MTXF_APPLY);
|
||||
|
||||
switch (levelId) {
|
||||
case LEVEL_WARP_ZONE:
|
||||
if ((s32) gWarpZoneBgAlpha != 0) {
|
||||
@@ -558,6 +580,7 @@ void Background_DrawBackdrop(void) {
|
||||
Matrix_Pop(&gGfxMatrix);
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVEL_METEO:
|
||||
if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_LEVEL_COMPLETE) && (gCsFrameCount > 260)) {
|
||||
Matrix_Translate(gGfxMatrix, sp138 - 120.0f, -(sp134 - 120.0f) - 30.0f, -290.0f,
|
||||
@@ -573,6 +596,7 @@ void Background_DrawBackdrop(void) {
|
||||
gSPDisplayList(gMasterDisp++, D_ME_600DDF0);
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVEL_SECTOR_X:
|
||||
if (gSceneSetup == 0) {
|
||||
Matrix_Translate(gGfxMatrix, sp138 - 120.0f, -(sp134 - 120.0f), -290.0f, MTXF_APPLY);
|
||||
@@ -583,6 +607,7 @@ void Background_DrawBackdrop(void) {
|
||||
gSPDisplayList(gMasterDisp++, D_SX_6029890);
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVEL_TRAINING:
|
||||
Matrix_Translate(gGfxMatrix, sp138 - 120.0f, -(sp134 - 120.0f), -290.0f, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, 0.2f, 0.2f, 1.0f, MTXF_APPLY);
|
||||
@@ -591,6 +616,7 @@ void Background_DrawBackdrop(void) {
|
||||
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 255);
|
||||
gSPDisplayList(gMasterDisp++, D_TR_6003760);
|
||||
break;
|
||||
|
||||
case LEVEL_AREA_6:
|
||||
case LEVEL_UNK_4:
|
||||
sp128 = (gPathProgress * 0.00004f) + 0.5f;
|
||||
@@ -609,6 +635,7 @@ void Background_DrawBackdrop(void) {
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_A6_601BB40);
|
||||
break;
|
||||
|
||||
case LEVEL_FORTUNA:
|
||||
sp128 = 1.5f;
|
||||
if ((gCsFrameCount > 400) && (gMissionStatus == MISSION_COMPLETE)) {
|
||||
@@ -619,6 +646,7 @@ void Background_DrawBackdrop(void) {
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_FO_600B4B0);
|
||||
break;
|
||||
|
||||
case LEVEL_BOLSE:
|
||||
sp128 = 1.0f;
|
||||
if ((gCsFrameCount > 500) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_LEVEL_COMPLETE)) {
|
||||
@@ -629,13 +657,15 @@ void Background_DrawBackdrop(void) {
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_BO_600D190);
|
||||
break;
|
||||
|
||||
case LEVEL_SECTOR_Z:
|
||||
Matrix_Translate(gGfxMatrix, sp138 - 120.0f, -(sp134 - 120.0f), -290.0f, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, 0.5f, 0.5f, 0.5f, MTXF_APPLY);
|
||||
Matrix_RotateX(gGfxMatrix, M_PI / 2, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_SZ_6002F80);
|
||||
gSPDisplayList(gMasterDisp++, aSzBackgroundDL);
|
||||
break;
|
||||
|
||||
case LEVEL_SECTOR_Y:
|
||||
Matrix_Translate(gGfxMatrix, sp138 - 120.0f, -(sp134 - 120.0f), -290.0f, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, 0.4f, 0.4f, 1.0f, MTXF_APPLY);
|
||||
@@ -648,6 +678,7 @@ void Background_DrawBackdrop(void) {
|
||||
}
|
||||
Matrix_Pop(&gGfxMatrix);
|
||||
}
|
||||
|
||||
if (gStarWarpDistortion > 0.0f) {
|
||||
f32* xStar = gStarOffsetsX;
|
||||
f32* yStar = gStarOffsetsY;
|
||||
@@ -655,7 +686,7 @@ void Background_DrawBackdrop(void) {
|
||||
|
||||
RCP_SetupDL_14();
|
||||
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 128, 128, 255, 255);
|
||||
i = 0;
|
||||
|
||||
zRot = 0.0f;
|
||||
for (i = 0; i < 300; i++, xStar++, yStar++) {
|
||||
*xStar = RAND_FLOAT_SEEDED(480.0f) - 80.0f;
|
||||
@@ -690,10 +721,12 @@ void Background_DrawSun(void) {
|
||||
(gCurrentLevel == LEVEL_SOLAR) || (gCurrentLevel == LEVEL_TRAINING) || gVersusMode) {
|
||||
return;
|
||||
}
|
||||
|
||||
gPlayerGlareAlphas[gPlayerNum] -= sSunGlareAlphaStep[levelType];
|
||||
if (gPlayerGlareAlphas[gPlayerNum] > 300) {
|
||||
gPlayerGlareAlphas[gPlayerNum] = 0;
|
||||
}
|
||||
|
||||
if (((gCurrentLevel == LEVEL_AQUAS) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_LEVEL_INTRO)) ||
|
||||
(((gPlayer[gPlayerNum].state_1C8 == PLAYERSTATE_1C8_U_TURN) || (gLevelMode == LEVELMODE_ALL_RANGE) ||
|
||||
(gPlayer[gPlayerNum].state_1C8 == PLAYERSTATE_1C8_LEVEL_COMPLETE)) &&
|
||||
@@ -701,14 +734,17 @@ void Background_DrawSun(void) {
|
||||
gPlayerGlareReds[gPlayerNum] = 128;
|
||||
gPlayerGlareGreens[gPlayerNum] = 128;
|
||||
gPlayerGlareBlues[gPlayerNum] = 128;
|
||||
|
||||
camYaw = Math_RadToDeg(gPlayer[gPlayerNum].camYaw);
|
||||
camPitch = Math_RadToDeg(gPlayer[gPlayerNum].camPitch);
|
||||
if (camPitch > 180.0f) {
|
||||
camPitch -= 360.0f;
|
||||
}
|
||||
|
||||
camYaw -= 135.0f;
|
||||
gSunViewX = -camYaw * 3.2f;
|
||||
gSunViewY = (-camPitch * 3.2f) + 130.0f - ((gPlayer[gPlayerNum].cam.eye.y - 350.0f) * 0.015f);
|
||||
|
||||
if (gCurrentLevel == LEVEL_KATINA) {
|
||||
gSunViewY -= 80.0f;
|
||||
}
|
||||
@@ -716,6 +752,7 @@ void Background_DrawSun(void) {
|
||||
gSunViewY -= 60.0f;
|
||||
gSunViewX -= 480.0f;
|
||||
}
|
||||
|
||||
if ((gSunViewX < 120.0f) && (gSunViewX > -120.0f) && (gSunViewY < 120.0f)) {
|
||||
gPlayerGlareAlphas[gPlayerNum] += sSunGlareAlphaStep[levelType] * 2;
|
||||
if (sSunGlareMaxAlpha[levelType] < gPlayerGlareAlphas[gPlayerNum]) {
|
||||
@@ -723,6 +760,7 @@ void Background_DrawSun(void) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (gPlayerGlareAlphas[gPlayerNum] != 0) {
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_RotateZ(gGfxMatrix, gPlayer[gPlayerNum].camRoll * M_DTOR, MTXF_APPLY);
|
||||
@@ -732,12 +770,14 @@ void Background_DrawSun(void) {
|
||||
sunAlpha = sSunAlphas;
|
||||
sunDL = sSunDLs;
|
||||
sunScale = sSunScales;
|
||||
|
||||
if (gCurrentLevel == LEVEL_KATINA) {
|
||||
sunColor = sKaSunColors;
|
||||
sunAlpha = sKaSunAlphas;
|
||||
sunDL = sKaSunDLs;
|
||||
sunScale = sKaSunScales;
|
||||
}
|
||||
|
||||
for (i = 0; i < 5; i++, sunColor++, sunAlpha++, sunDL++, sunScale++) {
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_Scale(gGfxMatrix, *sunScale, *sunScale, *sunScale, MTXF_APPLY);
|
||||
@@ -766,11 +806,13 @@ void Background_DrawLensFlare(void) {
|
||||
(gPlayerGlareAlphas[gPlayerNum] == 0)) {
|
||||
return;
|
||||
}
|
||||
|
||||
alphaMod = 1.0f;
|
||||
if (gPlayerGlareAlphas[gPlayerNum] < 80) {
|
||||
alphaMod = gPlayerGlareAlphas[gPlayerNum] / 80.0f;
|
||||
}
|
||||
alphaMod *= sLensFlareAlphaMod[gLevelType];
|
||||
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_RotateZ(gGfxMatrix, gPlayer[gPlayerNum].camRoll * M_DTOR, MTXF_APPLY);
|
||||
Matrix_Translate(gGfxMatrix, gSunViewX, gSunViewY, -200.0f, MTXF_APPLY);
|
||||
@@ -782,6 +824,7 @@ void Background_DrawLensFlare(void) {
|
||||
lensFlareDL = &sSunDLs[5];
|
||||
lensFlareScale = &sSunScales[5];
|
||||
lensFlareShift = &sSunShifts[5];
|
||||
|
||||
if (gCurrentLevel == LEVEL_KATINA) {
|
||||
lensFlareColor = &sKaSunColors[5];
|
||||
lensFlareAlpha = &sKaSunAlphas[5];
|
||||
@@ -789,6 +832,7 @@ void Background_DrawLensFlare(void) {
|
||||
lensFlareScale = &sKaSunScales[5];
|
||||
lensFlareShift = &sKaSunShifts[5];
|
||||
}
|
||||
|
||||
for (i = 5; i < 13; i++, lensFlareColor++, lensFlareAlpha++, lensFlareDL++, lensFlareScale++, lensFlareShift++) {
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_Translate(gGfxMatrix, *lensFlareShift * lensFlareOffsetX, *lensFlareShift * -lensFlareOffsetY, 0.0f,
|
||||
@@ -828,6 +872,7 @@ void Background_DrawGround(void) {
|
||||
Bolse_DrawDynamicGround();
|
||||
return;
|
||||
}
|
||||
|
||||
sp1D4 = 0.0f;
|
||||
if ((gGroundType != 10) && (gGroundType != 11)) {
|
||||
sp1D4 = -4000.0f;
|
||||
@@ -849,10 +894,13 @@ void Background_DrawGround(void) {
|
||||
sp1B4.x = 0;
|
||||
sp1B4.y = 0;
|
||||
sp1B4.z = -5500.0f;
|
||||
|
||||
Matrix_RotateY(gCalcMatrix, -gPlayer[gPlayerNum].camYaw, MTXF_NEW);
|
||||
Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp1B4, &sp1A8);
|
||||
|
||||
temp_fv1 = gPlayer[gPlayerNum].cam.eye.x + sp1A8.x;
|
||||
temp_fa0 = gPlayer[gPlayerNum].cam.eye.z + sp1A8.z;
|
||||
|
||||
if (temp_fv1 > 6000.0f) {
|
||||
gPlayer[gPlayerNum].xPath = 12000.0f;
|
||||
}
|
||||
@@ -865,6 +913,7 @@ void Background_DrawGround(void) {
|
||||
if (temp_fv1 < -18000.0f) {
|
||||
gPlayer[gPlayerNum].xPath = -24000.0f;
|
||||
}
|
||||
|
||||
if (temp_fa0 > 6000.0f) {
|
||||
sp1D4 = 12000.0f;
|
||||
}
|
||||
@@ -878,12 +927,16 @@ void Background_DrawGround(void) {
|
||||
sp1D4 = -24000.0f;
|
||||
}
|
||||
}
|
||||
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_Translate(gGfxMatrix, gPlayer[gPlayerNum].xPath, -3.0f + gCameraShakeY, sp1D4, MTXF_APPLY);
|
||||
|
||||
if (D_ctx_80177C70 == 2) {
|
||||
Matrix_Scale(gGfxMatrix, 1.2f, 1.2f, 1.0f, MTXF_APPLY);
|
||||
}
|
||||
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
|
||||
switch (gCurrentLevel) {
|
||||
case LEVEL_CORNERIA:
|
||||
if (gGroundClipMode != 0) {
|
||||
@@ -891,6 +944,7 @@ void Background_DrawGround(void) {
|
||||
} else {
|
||||
RCP_SetupDL_20(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
}
|
||||
|
||||
if (gLevelMode == LEVELMODE_ON_RAILS) {
|
||||
gDPSetTextureImage(gMasterDisp++, G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, SEGMENTED_TO_VIRTUAL(D_CO_601B6C0));
|
||||
temp_s0 = fabsf(Math_ModF(2.0f * (gPathTexScroll * 0.2133333f), 128.0f)); // 0.64f / 3.0f
|
||||
@@ -935,6 +989,7 @@ void Background_DrawGround(void) {
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVEL_VENOM_1:
|
||||
case LEVEL_MACBETH:
|
||||
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
@@ -972,6 +1027,7 @@ void Background_DrawGround(void) {
|
||||
gSPDisplayList(gMasterDisp++, sp1C0);
|
||||
Matrix_Pop(&gGfxMatrix);
|
||||
break;
|
||||
|
||||
case LEVEL_TRAINING:
|
||||
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
if (gLevelMode == LEVELMODE_ON_RAILS) {
|
||||
@@ -1002,10 +1058,12 @@ void Background_DrawGround(void) {
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVEL_AQUAS:
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_20);
|
||||
sp1C0 = D_AQ_600AB10;
|
||||
gSPFogPosition(gMasterDisp++, gFogNear, gFogFar);
|
||||
|
||||
if ((D_bg_8015F964 == 0) && ((gAqDrawMode == 0) || (gAqDrawMode == 2))) {
|
||||
|
||||
gDPLoadTileTexture(gMasterDisp++, SEGMENTED_TO_VIRTUAL(D_AQ_600AB68), G_IM_FMT_RGBA, G_IM_SIZ_16b, 32,
|
||||
@@ -1029,6 +1087,7 @@ void Background_DrawGround(void) {
|
||||
gSPDisplayList(gMasterDisp++, sp1C0);
|
||||
Matrix_Pop(&gGfxMatrix);
|
||||
}
|
||||
|
||||
if ((D_bg_8015F964 != 0) || (gAqDrawMode == 0)) {
|
||||
gDPLoadTileTexture(gMasterDisp++, SEGMENTED_TO_VIRTUAL(D_AQ_602ACC0), G_IM_FMT_RGBA, G_IM_SIZ_16b, 32,
|
||||
32);
|
||||
@@ -1042,6 +1101,7 @@ void Background_DrawGround(void) {
|
||||
} else {
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_37);
|
||||
}
|
||||
|
||||
if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_LEVEL_INTRO) && (gPlayer[0].csState < 2)) {
|
||||
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 255);
|
||||
} else if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_LEVEL_COMPLETE) {
|
||||
@@ -1050,6 +1110,7 @@ void Background_DrawGround(void) {
|
||||
} else {
|
||||
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, (s32) D_AQ_801C4188);
|
||||
}
|
||||
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_Translate(gGfxMatrix, 0.0f, D_bg_8015F970, -3000.0f, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, 2.0f, 1.0f, 0.5f, MTXF_APPLY);
|
||||
@@ -1062,6 +1123,7 @@ void Background_DrawGround(void) {
|
||||
gSPDisplayList(gMasterDisp++, D_AQ_602AC40);
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVEL_FORTUNA:
|
||||
case LEVEL_KATINA:
|
||||
case LEVEL_BOLSE:
|
||||
@@ -1071,6 +1133,7 @@ void Background_DrawGround(void) {
|
||||
} else {
|
||||
RCP_SetupDL_20(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
}
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(sGroundPositions360x); i++) {
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_Translate(gGfxMatrix, sGroundPositions360x[i], 0.0f, sGroundPositions360z[i], MTXF_APPLY);
|
||||
@@ -1087,12 +1150,14 @@ void Background_DrawGround(void) {
|
||||
Matrix_Pop(&gGfxMatrix);
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVEL_VERSUS:
|
||||
if (gGroundClipMode != 0) {
|
||||
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
} else {
|
||||
RCP_SetupDL_20(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
}
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(sGroundPositions360x); i++) {
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_Translate(gGfxMatrix, sGroundPositions360x[i], 0.0f, sGroundPositions360z[i], MTXF_APPLY);
|
||||
@@ -1105,6 +1170,7 @@ void Background_DrawGround(void) {
|
||||
Matrix_Pop(&gGfxMatrix);
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVEL_SOLAR:
|
||||
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -2000.0f, MTXF_APPLY);
|
||||
@@ -1116,6 +1182,7 @@ void Background_DrawGround(void) {
|
||||
gSPDisplayList(gMasterDisp++, D_SO_6002E60);
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVEL_ZONESS:
|
||||
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -1500.0f, MTXF_APPLY);
|
||||
|
||||
+30
-25
@@ -11,7 +11,7 @@ s32 PAD_boss_C9EC4[14] = { 0 };
|
||||
|
||||
const f32 D_boss_800D55D0[] = { 6000.0f, 18000.0f, -6000.0f, -18000.0f }; // unused?
|
||||
|
||||
void Boss_AwardBonus(Boss* boss) {
|
||||
void Boss_AwardBonus(Boss* this) {
|
||||
s32 bonus;
|
||||
f32 yOffset;
|
||||
|
||||
@@ -26,15 +26,17 @@ void Boss_AwardBonus(Boss* boss) {
|
||||
} else {
|
||||
bonus = 0;
|
||||
}
|
||||
|
||||
if (bonus != 0) {
|
||||
yOffset = 0.0f;
|
||||
if (boss->obj.id == OBJ_BOSS_292) {
|
||||
if (this->obj.id == OBJ_BOSS_CO_GRANGA) {
|
||||
yOffset = 300.0f;
|
||||
} else if (boss->obj.id == OBJ_BOSS_TI) {
|
||||
} else if (this->obj.id == OBJ_BOSS_TI) {
|
||||
yOffset = 200.0f;
|
||||
}
|
||||
BonusText_Display(boss->obj.pos.x, boss->obj.pos.y + yOffset, boss->obj.pos.z, bonus);
|
||||
BonusText_Display(this->obj.pos.x, this->obj.pos.y + yOffset, this->obj.pos.z, bonus);
|
||||
}
|
||||
|
||||
gHitCount += bonus + 1;
|
||||
D_ctx_80177850 = 15;
|
||||
}
|
||||
@@ -57,27 +59,27 @@ void Boss300_Update(Boss300* this) {
|
||||
void Boss300_Draw(Boss300* this) {
|
||||
}
|
||||
|
||||
void Boss_SetupDebris(Actor* actor, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5, f32 arg6, f32 arg7, f32 arg8,
|
||||
void Boss_SetupDebris(ActorDebris* this, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5, f32 arg6, f32 arg7, f32 arg8,
|
||||
f32 arg9, f32 argA, s32 argB, s32 argC) {
|
||||
Actor_Initialize(actor);
|
||||
actor->obj.status = OBJ_INIT;
|
||||
actor->obj.id = OBJ_ACTOR_DEBRIS;
|
||||
actor->state = argB;
|
||||
actor->obj.pos.x = arg1;
|
||||
actor->obj.pos.y = arg2;
|
||||
actor->obj.pos.z = arg3;
|
||||
actor->obj.rot.x = arg4;
|
||||
actor->obj.rot.y = arg5;
|
||||
actor->obj.rot.z = arg6;
|
||||
actor->vel.x = arg7;
|
||||
actor->vel.y = arg8;
|
||||
actor->vel.z = arg9;
|
||||
actor->scale = argA;
|
||||
actor->timer_0BC = argC;
|
||||
actor->timer_0BE = 20;
|
||||
Object_SetInfo(&actor->info, actor->obj.id);
|
||||
Actor_Initialize(this);
|
||||
this->obj.status = OBJ_INIT;
|
||||
this->obj.id = OBJ_ACTOR_DEBRIS;
|
||||
this->state = argB;
|
||||
this->obj.pos.x = arg1;
|
||||
this->obj.pos.y = arg2;
|
||||
this->obj.pos.z = arg3;
|
||||
this->obj.rot.x = arg4;
|
||||
this->obj.rot.y = arg5;
|
||||
this->obj.rot.z = arg6;
|
||||
this->vel.x = arg7;
|
||||
this->vel.y = arg8;
|
||||
this->vel.z = arg9;
|
||||
this->scale = argA;
|
||||
this->timer_0BC = argC;
|
||||
this->timer_0BE = 20;
|
||||
Object_SetInfo(&this->info, this->obj.id);
|
||||
if (gLevelType == LEVELTYPE_PLANET) {
|
||||
actor->gravity = 0.5f;
|
||||
this->gravity = 0.5f;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -93,8 +95,8 @@ void Boss_SpawnDebris(f32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5
|
||||
}
|
||||
}
|
||||
|
||||
void Boss_SetCullDistance(Boss* boss) {
|
||||
boss->info.cullDistance = 30000.0f;
|
||||
void Boss_SetCullDistance(Boss* this) {
|
||||
this->info.cullDistance = 30000.0f;
|
||||
}
|
||||
|
||||
void Boss_CompleteLevel(Player* player, f32 xPos, f32 yPos, f32 zPos) {
|
||||
@@ -110,10 +112,13 @@ void Boss_CompleteLevel(Player* player, f32 xPos, f32 yPos, f32 zPos) {
|
||||
player->csState = 10;
|
||||
player->csTimer = 50;
|
||||
player->csEventTimer = 50;
|
||||
|
||||
player->unk_000 = 0.0f;
|
||||
player->unk_004 = 1.0f;
|
||||
|
||||
if (player->pos.x < player->xPath) {
|
||||
player->unk_004 = -1.0f;
|
||||
}
|
||||
|
||||
gPlayer[0].vel.x = 0.0f;
|
||||
}
|
||||
|
||||
@@ -194,6 +194,7 @@ void func_col1_80097C88(Vec3f* norms, Vtx_tn* quad) {
|
||||
__vtx1_x = quad->ob[0];
|
||||
__vtx1_y = quad->ob[1];
|
||||
__vtx1_z = quad->ob[2];
|
||||
|
||||
quad++;
|
||||
__vtx2_x = quad->ob[0];
|
||||
__vtx2_y = quad->ob[1];
|
||||
@@ -205,17 +206,21 @@ void func_col1_80097C88(Vec3f* norms, Vtx_tn* quad) {
|
||||
__dy2 = __vtx2_y - __vtx1_y;
|
||||
__dz1 = __vtx1_z - __vtx0_z;
|
||||
__dz2 = __vtx2_z - __vtx1_z;
|
||||
|
||||
norms->x = (__dy1 * __dz2) - (__dz1 * __dy2);
|
||||
norms->y = (__dz1 * __dx2) - (__dx1 * __dz2);
|
||||
norms->z = (__dx1 * __dy2) - (__dy1 * __dx2);
|
||||
|
||||
temp_fv0 = VEC3F_MAG(norms);
|
||||
if (temp_fv0 != 0.0f) {
|
||||
norms->x = (norms->x / temp_fv0) * 127.0f;
|
||||
norms->y = (norms->y / temp_fv0) * 127.0f;
|
||||
norms->z = (norms->z / temp_fv0) * 127.0f;
|
||||
}
|
||||
|
||||
norms++;
|
||||
quad++;
|
||||
|
||||
__vtx1_x = __vtx2_x;
|
||||
__vtx1_y = __vtx2_y;
|
||||
__vtx1_z = __vtx2_z;
|
||||
@@ -223,15 +228,18 @@ void func_col1_80097C88(Vec3f* norms, Vtx_tn* quad) {
|
||||
__vtx2_x = quad->ob[0];
|
||||
__vtx2_y = quad->ob[1];
|
||||
__vtx2_z = quad->ob[2];
|
||||
|
||||
__dx1 = __vtx1_x - __vtx0_x;
|
||||
__dx2 = __vtx2_x - __vtx1_x;
|
||||
__dy1 = __vtx1_y - __vtx0_y;
|
||||
__dy2 = __vtx2_y - __vtx1_y;
|
||||
__dz1 = __vtx1_z - __vtx0_z;
|
||||
__dz2 = __vtx2_z - __vtx1_z;
|
||||
|
||||
norms->x = (__dy1 * __dz2) - (__dz1 * __dy2);
|
||||
norms->y = (__dz1 * __dx2) - (__dx1 * __dz2);
|
||||
norms->z = (__dx1 * __dy2) - (__dy1 * __dx2);
|
||||
|
||||
temp_fv0 = VEC3F_MAG(norms);
|
||||
if (temp_fv0 != 0.0f) {
|
||||
norms->x = (norms->x / temp_fv0) * 127.0f;
|
||||
@@ -260,8 +268,10 @@ s32 func_col1_8009808C(Vec3f* pos, Vtx_tn* quad, Vec3f* normOut) {
|
||||
__vtx3_x = quad[3].ob[0];
|
||||
__vtx3_y = quad[3].ob[1];
|
||||
__vtx3_z = quad[3].ob[2];
|
||||
|
||||
__pos_x = pos->x;
|
||||
__pos_z = pos->z;
|
||||
|
||||
test1 = TRINORM_Y(__vtx0, __vtx1, __pos);
|
||||
if (test1 >= 0.0f) {
|
||||
test1 = TRINORM_Y(__vtx1, __vtx2, __pos);
|
||||
@@ -277,6 +287,7 @@ s32 func_col1_8009808C(Vec3f* pos, Vtx_tn* quad, Vec3f* normOut) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (var_v1 == 0) {
|
||||
test1 = TRINORM_Y(__vtx0, __vtx2, __pos);
|
||||
if ((test1 >= 0.0f)) {
|
||||
|
||||
@@ -26,14 +26,18 @@ bool func_col2_800A36FC(Vec3f* objPos, Vec3f* colliderPos, CollisionHeader2* col
|
||||
objRelPos.x = objPos->x - colliderPos->x;
|
||||
objRelPos.y = objPos->y - colliderPos->y;
|
||||
objRelPos.z = objPos->z - colliderPos->z;
|
||||
|
||||
if ((objRelPos.x < colHeader->min.x) || (objRelPos.y < colHeader->min.y) || (objRelPos.z < colHeader->min.z) ||
|
||||
(colHeader->max.x < objRelPos.x) || (colHeader->max.y < objRelPos.y) || (colHeader->max.z < objRelPos.z)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
above = false;
|
||||
count = colHeader->polyCount;
|
||||
|
||||
polys = SEGMENTED_TO_VIRTUAL(colHeader->polys);
|
||||
mesh = SEGMENTED_TO_VIRTUAL(colHeader->mesh);
|
||||
|
||||
for (i = 0; i < count; i++, polys++) {
|
||||
for (j = 0; j < 3; j++) {
|
||||
tri[j] = &mesh[polys->vtx[j]];
|
||||
@@ -43,12 +47,15 @@ bool func_col2_800A36FC(Vec3f* objPos, Vec3f* colliderPos, CollisionHeader2* col
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (above) {
|
||||
vtx.x = tri[0]->x;
|
||||
vtx.y = tri[0]->y;
|
||||
vtx.z = tri[0]->z;
|
||||
|
||||
func_col1_80098860(&triPlane, &vtx, &norm);
|
||||
hitDataOut->y = func_col1_800988B4(&objRelPos, &triPlane);
|
||||
|
||||
if (triPlane.normal.x != 0.0f) {
|
||||
norm.x = -triPlane.dist / triPlane.normal.x;
|
||||
} else {
|
||||
@@ -64,6 +71,7 @@ bool func_col2_800A36FC(Vec3f* objPos, Vec3f* colliderPos, CollisionHeader2* col
|
||||
} else {
|
||||
norm.z = 0.0f;
|
||||
}
|
||||
|
||||
hitDataOut->x = Math_Atan2F_XY(norm.y, norm.z);
|
||||
if (norm.z != 0.0f) {
|
||||
hitDataOut->z = -Math_Atan2F_XY(__sinf(Math_Atan2F_XY(norm.y, norm.z)) * norm.z, norm.x);
|
||||
@@ -72,6 +80,7 @@ bool func_col2_800A36FC(Vec3f* objPos, Vec3f* colliderPos, CollisionHeader2* col
|
||||
} else {
|
||||
hitDataOut->z = -Math_Atan2F_XY(norm.y, norm.x);
|
||||
}
|
||||
|
||||
if ((objPos->y - hitDataOut->y <= 0.0f) || (gCurrentLevel == LEVEL_MACBETH)) {
|
||||
sp38 = true;
|
||||
}
|
||||
@@ -106,6 +115,7 @@ bool func_col2_800A3A74(Vec3f* point, Vec3f** tri, Vec3f* normOut) {
|
||||
|
||||
ptx = point->x;
|
||||
ptz = point->z;
|
||||
|
||||
temp1 = ((vtx2.z - vtx1.z) * (ptx - vtx2.x)) - ((vtx2.x - vtx1.x) * (ptz - vtx2.z));
|
||||
if (temp1 >= 0.0f) {
|
||||
if (((vtx3.x - vtx2.x) * (ptz - vtx3.z)) <= ((vtx3.z - vtx2.z) * (ptx - vtx3.x))) {
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
s32 gSceneId;
|
||||
s32 gSceneSetup;
|
||||
s32 gClearPlayerInfo; // some sort of flag
|
||||
s32 D_ctx_8017782C; // some sort of flag. all range related?
|
||||
bool D_ctx_8017782C; // some sort of flag. all range related?
|
||||
GameState gGameState;
|
||||
s32 gNextGameStateTimer;
|
||||
s32 gVsItemSpawnTimer;
|
||||
@@ -287,7 +287,7 @@ UNK_TYPE P_800D31A8 = 0;
|
||||
u16 gEnemyShotSpeed; // enemy shot speed?
|
||||
u8 gShowLevelClearStatusScreen;
|
||||
s32 gLevelStartStatusScreenTimer;
|
||||
s32 gLevelClearScreenTimer; // timer for mission accomplished scrren
|
||||
s32 gLevelClearScreenTimer; // timer for mission accomplished screen
|
||||
s32 gBossHealthBar;
|
||||
s32 D_ctx_80177850; // bonus text related. set to 15 but never read
|
||||
s32 D_ctx_80177858[4]; // set to 3 but never used. related to VS mode customization?
|
||||
|
||||
+250
-237
@@ -79,24 +79,26 @@ static Vec3f D_demo_800C9F60[] = {
|
||||
};
|
||||
static f32 D_demo_800C9F90[] = { 75.0f, -80.0f, 85.0f, 0.0f };
|
||||
|
||||
void func_demo_80048CC4(Actor* actor, s32 arg1) {
|
||||
Actor_Initialize(actor);
|
||||
actor->obj.status = OBJ_INIT;
|
||||
actor->obj.id = OBJ_ACTOR_CUTSCENE;
|
||||
actor->obj.pos.x = D_demo_800C9F60[arg1].x + gPlayer[0].pos.x;
|
||||
actor->obj.pos.y = D_demo_800C9F60[arg1].y + gPlayer[0].pos.y;
|
||||
actor->obj.pos.z = D_demo_800C9F60[arg1].z + gPlayer[0].trueZpos;
|
||||
actor->rot_0F4.y = 0.0f;
|
||||
actor->rot_0F4.z = D_demo_800C9F90[arg1];
|
||||
Object_SetInfo(&actor->info, actor->obj.id);
|
||||
void func_demo_80048CC4(ActorCutscene* this, s32 index) {
|
||||
Actor_Initialize(this);
|
||||
this->obj.status = OBJ_INIT;
|
||||
this->obj.id = OBJ_ACTOR_CUTSCENE;
|
||||
|
||||
if (arg1 == 3) {
|
||||
AUDIO_PLAY_SFX(NA_SE_GREATFOX_ENGINE, actor->sfxSource, 0);
|
||||
AUDIO_PLAY_SFX(NA_SE_GREATFOX_BURNER, actor->sfxSource, 0);
|
||||
actor->animFrame = 1;
|
||||
this->obj.pos.x = D_demo_800C9F60[index].x + gPlayer[0].pos.x;
|
||||
this->obj.pos.y = D_demo_800C9F60[index].y + gPlayer[0].pos.y;
|
||||
this->obj.pos.z = D_demo_800C9F60[index].z + gPlayer[0].trueZpos;
|
||||
|
||||
this->rot_0F4.y = 0.0f;
|
||||
this->rot_0F4.z = D_demo_800C9F90[index];
|
||||
Object_SetInfo(&this->info, this->obj.id);
|
||||
|
||||
if (index == 3) {
|
||||
AUDIO_PLAY_SFX(NA_SE_GREATFOX_ENGINE, this->sfxSource, 0);
|
||||
AUDIO_PLAY_SFX(NA_SE_GREATFOX_BURNER, this->sfxSource, 0);
|
||||
this->animFrame = 1;
|
||||
} else {
|
||||
actor->iwork[11] = 1;
|
||||
AUDIO_PLAY_SFX(NA_SE_ARWING_ENGINE_FG, actor->sfxSource, 4);
|
||||
this->iwork[11] = 1;
|
||||
AUDIO_PLAY_SFX(NA_SE_ARWING_ENGINE_FG, this->sfxSource, 4);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -109,6 +111,7 @@ void Cutscene_WarpZoneComplete(Player* player) {
|
||||
s32 temp_v1;
|
||||
|
||||
gBosses[1].obj.status = OBJ_FREE;
|
||||
|
||||
Math_SmoothStepToF(&player->zRotBarrelRoll, 0.0f, 0.1f, 15.0f, 0.0f);
|
||||
Math_SmoothStepToF(&player->zRotBank, 0.0f, 0.1f, 15.0f, 0.0f);
|
||||
Math_SmoothStepToF(&player->rot.x, 0.0f, 0.1f, 3.0f, 0.0f);
|
||||
@@ -190,6 +193,7 @@ void Cutscene_WarpZoneComplete(Player* player) {
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
if (gCsFrameCount > 450) {
|
||||
Math_SmoothStepToF(&D_ctx_80177A48[0], 1.0f, 0.1f, 0.004f, 0.0f);
|
||||
player->baseSpeed += 2.0f;
|
||||
@@ -328,37 +332,40 @@ static f32 D_demo_800CA020[] = { 45.0f, -45.0f, 10.0f, 0.0f };
|
||||
static s32 D_demo_800CA030[] = { 0, 0, 0, 1 };
|
||||
static s32 D_demo_800CA040[] = { 0, 0, 0, 0 };
|
||||
|
||||
void func_demo_80049968(Actor* actor, s32 arg1) {
|
||||
Actor_Initialize(actor);
|
||||
actor->obj.status = OBJ_INIT;
|
||||
actor->obj.id = OBJ_ACTOR_CUTSCENE;
|
||||
actor->obj.pos.x = D_demo_800C9FD0[arg1];
|
||||
actor->obj.pos.y = D_demo_800C9FE0[arg1];
|
||||
actor->obj.pos.z = D_demo_800C9FF0[arg1] + gPlayer[0].trueZpos;
|
||||
actor->fwork[0] = D_demo_800CA000[arg1];
|
||||
actor->fwork[1] = D_demo_800CA010[arg1];
|
||||
actor->animFrame = D_demo_800CA030[arg1];
|
||||
actor->state = D_demo_800CA040[arg1];
|
||||
actor->obj.rot.z = D_demo_800CA020[arg1];
|
||||
actor->obj.rot.y = 180.0f;
|
||||
actor->vel.z = gPlayer[0].vel.z;
|
||||
Object_SetInfo(&actor->info, actor->obj.id);
|
||||
actor->iwork[11] = 1;
|
||||
AUDIO_PLAY_SFX(NA_SE_ARWING_ENGINE_FG, actor->sfxSource, 4);
|
||||
void func_demo_80049968(ActorCutscene* this, s32 index) {
|
||||
Actor_Initialize(this);
|
||||
this->obj.status = OBJ_INIT;
|
||||
this->obj.id = OBJ_ACTOR_CUTSCENE;
|
||||
|
||||
this->obj.pos.x = D_demo_800C9FD0[index];
|
||||
this->obj.pos.y = D_demo_800C9FE0[index];
|
||||
this->obj.pos.z = D_demo_800C9FF0[index] + gPlayer[0].trueZpos;
|
||||
|
||||
this->fwork[0] = D_demo_800CA000[index];
|
||||
this->fwork[1] = D_demo_800CA010[index];
|
||||
|
||||
this->animFrame = D_demo_800CA030[index];
|
||||
this->state = D_demo_800CA040[index];
|
||||
this->obj.rot.z = D_demo_800CA020[index];
|
||||
this->obj.rot.y = 180.0f;
|
||||
this->vel.z = gPlayer[0].vel.z;
|
||||
Object_SetInfo(&this->info, this->obj.id);
|
||||
this->iwork[11] = 1;
|
||||
AUDIO_PLAY_SFX(NA_SE_ARWING_ENGINE_FG, this->sfxSource, 4);
|
||||
}
|
||||
|
||||
void func_demo_80049A9C(Effect* effect, f32 x, f32 y, f32 z) {
|
||||
Effect_Initialize(effect);
|
||||
effect->obj.status = OBJ_INIT;
|
||||
effect->obj.id = OBJ_EFFECT_346;
|
||||
effect->timer_50 = 100;
|
||||
effect->scale2 = 0.2f;
|
||||
effect->obj.pos.x = x;
|
||||
effect->obj.pos.y = y;
|
||||
effect->obj.pos.z = z;
|
||||
effect->vel.z = 40.0f;
|
||||
effect->obj.rot.z = RAND_FLOAT(360.0f);
|
||||
Object_SetInfo(&effect->info, effect->obj.id);
|
||||
void func_demo_80049A9C(Effect346* this, f32 x, f32 y, f32 z) {
|
||||
Effect_Initialize(this);
|
||||
this->obj.status = OBJ_INIT;
|
||||
this->obj.id = OBJ_EFFECT_346;
|
||||
this->timer_50 = 100;
|
||||
this->scale2 = 0.2f;
|
||||
this->obj.pos.x = x;
|
||||
this->obj.pos.y = y;
|
||||
this->obj.pos.z = z;
|
||||
this->vel.z = 40.0f;
|
||||
this->obj.rot.z = RAND_FLOAT(360.0f);
|
||||
Object_SetInfo(&this->info, this->obj.id);
|
||||
}
|
||||
|
||||
void func_demo_80049B44(void) {
|
||||
@@ -659,65 +666,68 @@ static f32 D_demo_800CA05C[] = { -60.0f, -60.0f, -120.0f };
|
||||
static f32 D_demo_800CA068[] = { -150.0f, -150.0f, -300.0f };
|
||||
static f32 D_demo_800CA074[] = { 360.0f, -360.0f, 0.0f };
|
||||
|
||||
void func_demo_8004A700(Actor* actor, s32 arg1) {
|
||||
Actor_Initialize(actor);
|
||||
actor->obj.status = OBJ_INIT;
|
||||
actor->obj.id = OBJ_ACTOR_CUTSCENE;
|
||||
actor->obj.pos.x = gPlayer[0].pos.x;
|
||||
actor->obj.pos.y = gPlayer[0].pos.y - 1000.0f;
|
||||
actor->obj.pos.z = gPlayer[0].pos.z;
|
||||
actor->fwork[0] = D_demo_800CA050[arg1];
|
||||
actor->fwork[1] = D_demo_800CA05C[arg1];
|
||||
actor->fwork[2] = D_demo_800CA068[arg1];
|
||||
actor->fwork[3] = 4.0f;
|
||||
actor->fwork[7] = RAND_FLOAT(100.0f);
|
||||
actor->fwork[8] = RAND_FLOAT(100.0f);
|
||||
actor->obj.rot.z = D_demo_800CA074[arg1];
|
||||
actor->iwork[11] = 1;
|
||||
Object_SetInfo(&actor->info, actor->obj.id);
|
||||
AUDIO_PLAY_SFX(NA_SE_ARWING_ENGINE_FG, actor->sfxSource, 4);
|
||||
void func_demo_8004A700(ActorCutscene* this, s32 index) {
|
||||
Actor_Initialize(this);
|
||||
this->obj.status = OBJ_INIT;
|
||||
this->obj.id = OBJ_ACTOR_CUTSCENE;
|
||||
|
||||
this->obj.pos.x = gPlayer[0].pos.x;
|
||||
this->obj.pos.y = gPlayer[0].pos.y - 1000.0f;
|
||||
this->obj.pos.z = gPlayer[0].pos.z;
|
||||
|
||||
this->fwork[0] = D_demo_800CA050[index];
|
||||
this->fwork[1] = D_demo_800CA05C[index];
|
||||
this->fwork[2] = D_demo_800CA068[index];
|
||||
|
||||
this->fwork[3] = 4.0f;
|
||||
this->fwork[7] = RAND_FLOAT(100.0f);
|
||||
this->fwork[8] = RAND_FLOAT(100.0f);
|
||||
this->obj.rot.z = D_demo_800CA074[index];
|
||||
this->iwork[11] = 1;
|
||||
Object_SetInfo(&this->info, this->obj.id);
|
||||
AUDIO_PLAY_SFX(NA_SE_ARWING_ENGINE_FG, this->sfxSource, 4);
|
||||
}
|
||||
|
||||
void func_demo_8004A840(s32 actor) {
|
||||
func_demo_8004A700(&gActors[actor], actor);
|
||||
}
|
||||
|
||||
void func_demo_8004A888(Effect* effect) {
|
||||
Vec3f sp2C;
|
||||
Vec3f sp20;
|
||||
void func_demo_8004A888(Clouds* this) {
|
||||
Vec3f src;
|
||||
Vec3f dest;
|
||||
|
||||
Matrix_RotateY(gCalcMatrix, (gPlayer[0].rot.y + 180.0f) * M_DTOR, MTXF_NEW);
|
||||
Matrix_RotateX(gCalcMatrix, -(gPlayer[0].rot.x * M_DTOR), MTXF_APPLY);
|
||||
Effect_Initialize(effect);
|
||||
|
||||
effect->obj.status = OBJ_INIT;
|
||||
sp2C.x = RAND_FLOAT_CENTERED(1500.0f);
|
||||
sp2C.y = RAND_FLOAT_CENTERED(800.0f);
|
||||
sp2C.z = 3000.0f;
|
||||
Effect_Initialize(this);
|
||||
this->obj.status = OBJ_INIT;
|
||||
src.x = RAND_FLOAT_CENTERED(1500.0f);
|
||||
src.y = RAND_FLOAT_CENTERED(800.0f);
|
||||
src.z = 3000.0f;
|
||||
|
||||
Matrix_MultVec3f(gCalcMatrix, &sp2C, &sp20);
|
||||
Matrix_MultVec3f(gCalcMatrix, &src, &dest);
|
||||
|
||||
effect->obj.pos.x = gPlayer[0].pos.x + sp20.x;
|
||||
effect->obj.pos.y = gPlayer[0].pos.y + sp20.y;
|
||||
effect->obj.pos.z = gPlayer[0].pos.z + sp20.z;
|
||||
sp2C.x = 0.0f;
|
||||
sp2C.y = 0.0f;
|
||||
sp2C.z = -80.0f;
|
||||
this->obj.pos.x = gPlayer[0].pos.x + dest.x;
|
||||
this->obj.pos.y = gPlayer[0].pos.y + dest.y;
|
||||
this->obj.pos.z = gPlayer[0].pos.z + dest.z;
|
||||
src.x = 0.0f;
|
||||
src.y = 0.0f;
|
||||
src.z = -80.0f;
|
||||
|
||||
Matrix_MultVec3f(gCalcMatrix, &sp2C, &sp20);
|
||||
Matrix_MultVec3f(gCalcMatrix, &src, &dest);
|
||||
|
||||
effect->vel.x = sp20.x;
|
||||
effect->vel.y = sp20.y;
|
||||
effect->vel.z = sp20.z;
|
||||
effect->obj.id = OBJ_EFFECT_352;
|
||||
effect->timer_50 = 40;
|
||||
effect->unk_46 = 144;
|
||||
effect->scale2 = RAND_FLOAT(30.0f) + 10.0f;
|
||||
this->vel.x = dest.x;
|
||||
this->vel.y = dest.y;
|
||||
this->vel.z = dest.z;
|
||||
this->obj.id = OBJ_EFFECT_CLOUDS;
|
||||
this->timer_50 = 40;
|
||||
this->unk_46 = 144;
|
||||
this->scale2 = RAND_FLOAT(30.0f) + 10.0f;
|
||||
|
||||
if (Rand_ZeroOne() < 0.5f) {
|
||||
effect->obj.rot.z = 180.0f;
|
||||
this->obj.rot.z = 180.0f;
|
||||
}
|
||||
Object_SetInfo(&effect->info, effect->obj.id);
|
||||
Object_SetInfo(&this->info, this->obj.id);
|
||||
}
|
||||
|
||||
void func_demo_8004AA84(void) {
|
||||
@@ -740,7 +750,7 @@ void Cutscene_AllRangeMode(Player* player) {
|
||||
s32 pad;
|
||||
Vec3f sp70;
|
||||
Vec3f sp64;
|
||||
Actor* actor;
|
||||
ActorTeamBoss* actor;
|
||||
f32 var_s1;
|
||||
f32 var_s2;
|
||||
f32 var_s3;
|
||||
@@ -749,7 +759,9 @@ void Cutscene_AllRangeMode(Player* player) {
|
||||
s32 pad2;
|
||||
|
||||
gCsFrameCount++;
|
||||
|
||||
Math_SmoothStepToAngle(&player->aerobaticPitch, 0.0f, 0.1f, 20.0f, 0.0f);
|
||||
|
||||
if (gCsFrameCount == 37) {
|
||||
gChangeTo360 = true;
|
||||
if (gCurrentLevel == LEVEL_VENOM_ANDROSS) {
|
||||
@@ -1872,7 +1884,7 @@ void func_demo_8004E4D4(ActorCutscene* this) {
|
||||
Vec3f sp54;
|
||||
Vec3f sp48;
|
||||
Vec3f sp3C;
|
||||
Player* sp38 = gPlayer;
|
||||
Player* sp38 = &gPlayer[0];
|
||||
f32 sp34;
|
||||
|
||||
this->fwork[7] += 3.0f;
|
||||
@@ -1925,6 +1937,7 @@ void func_demo_8004E4D4(ActorCutscene* this) {
|
||||
if (this->fwork[9] > 50.0f) {
|
||||
this->fwork[9] = 50.0f;
|
||||
}
|
||||
|
||||
if (this->timer_0BE == 0) {
|
||||
switch (this->index) {
|
||||
case 1:
|
||||
@@ -2102,55 +2115,55 @@ void func_demo_8004EBD0(ActorCutscene* this) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_demo_8004F05C(Actor* actor) {
|
||||
if (((gLevelType == LEVELTYPE_PLANET) && (actor->animFrame == 0)) || (gCurrentLevel == LEVEL_BOLSE)) {
|
||||
actor->fwork[0] += 3.0f;
|
||||
actor->fwork[1] = SIN_DEG(actor->fwork[0]) * 1.5f;
|
||||
void func_demo_8004F05C(ActorCutscene* this) {
|
||||
if (((gLevelType == LEVELTYPE_PLANET) && (this->animFrame == 0)) || (gCurrentLevel == LEVEL_BOLSE)) {
|
||||
this->fwork[0] += 3.0f;
|
||||
this->fwork[1] = SIN_DEG(this->fwork[0]) * 1.5f;
|
||||
}
|
||||
|
||||
switch (gCurrentLevel) {
|
||||
case LEVEL_BOLSE:
|
||||
switch (actor->animFrame) {
|
||||
switch (this->animFrame) {
|
||||
case 0:
|
||||
if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_LEVEL_INTRO) {
|
||||
actor->rot_0F4.z += actor->rot_0F4.y;
|
||||
actor->vel.x = SIN_DEG(actor->rot_0F4.z) * 10.0f;
|
||||
actor->obj.rot.z = SIN_DEG(actor->rot_0F4.z) * 40.0f;
|
||||
this->rot_0F4.z += this->rot_0F4.y;
|
||||
this->vel.x = SIN_DEG(this->rot_0F4.z) * 10.0f;
|
||||
this->obj.rot.z = SIN_DEG(this->rot_0F4.z) * 40.0f;
|
||||
break;
|
||||
}
|
||||
|
||||
Math_SmoothStepToF(&actor->obj.rot.z, actor->fwork[1], 0.05f, 0.3f, 0.0f);
|
||||
Math_SmoothStepToF(&this->obj.rot.z, this->fwork[1], 0.05f, 0.3f, 0.0f);
|
||||
|
||||
switch (actor->state) {
|
||||
switch (this->state) {
|
||||
case 0:
|
||||
break;
|
||||
|
||||
case 1:
|
||||
actor->state = 2;
|
||||
actor->timer_0BC = 100;
|
||||
AUDIO_PLAY_SFX(NA_SE_ARWING_BOOST, actor->sfxSource, 0);
|
||||
actor->fwork[29] = 5.0f;
|
||||
this->state = 2;
|
||||
this->timer_0BC = 100;
|
||||
AUDIO_PLAY_SFX(NA_SE_ARWING_BOOST, this->sfxSource, 0);
|
||||
this->fwork[29] = 5.0f;
|
||||
|
||||
case 2:
|
||||
actor->iwork[11] = 2;
|
||||
actor->vel.z -= 5.0f;
|
||||
if (actor->timer_0BC == 0) {
|
||||
Object_Kill(&actor->obj, actor->sfxSource);
|
||||
this->iwork[11] = 2;
|
||||
this->vel.z -= 5.0f;
|
||||
if (this->timer_0BC == 0) {
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case 31:
|
||||
if (actor->timer_0BC == 0) {
|
||||
Object_Kill(&actor->obj, actor->sfxSource);
|
||||
if (this->timer_0BC == 0) {
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
}
|
||||
break;
|
||||
|
||||
case 32:
|
||||
actor->obj.rot.z += actor->rot_0F4.z;
|
||||
if (actor->timer_0BC == 0) {
|
||||
Object_Kill(&actor->obj, actor->sfxSource);
|
||||
this->obj.rot.z += this->rot_0F4.z;
|
||||
if (this->timer_0BC == 0) {
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -2160,40 +2173,40 @@ void func_demo_8004F05C(Actor* actor) {
|
||||
break;
|
||||
|
||||
case LEVEL_AREA_6:
|
||||
Area6_8018DA58(actor);
|
||||
Area6_8018DA58(this);
|
||||
break;
|
||||
|
||||
case LEVEL_SECTOR_Y:
|
||||
switch (actor->animFrame) {
|
||||
switch (this->animFrame) {
|
||||
case 0:
|
||||
SectorY_8019FF00(actor);
|
||||
SectorY_8019FF00(this);
|
||||
break;
|
||||
|
||||
case 42:
|
||||
if (actor->timer_0BC == 0) {
|
||||
if (actor->obj.pos.x >= -3500.0f) {
|
||||
if (actor->obj.pos.z <= 3000.0f) {
|
||||
if ((fabsf(actor->obj.pos.y) <= 400.0f) && (gCsFrameCount <= 300)) {
|
||||
func_effect_8007D2C8(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 8.0f);
|
||||
if (this->timer_0BC == 0) {
|
||||
if (this->obj.pos.x >= -3500.0f) {
|
||||
if (this->obj.pos.z <= 3000.0f) {
|
||||
if ((fabsf(this->obj.pos.y) <= 400.0f) && (gCsFrameCount <= 300)) {
|
||||
func_effect_8007D2C8(this->obj.pos.x, this->obj.pos.y, this->obj.pos.z, 8.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
Object_Kill(&actor->obj, actor->sfxSource);
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
}
|
||||
break;
|
||||
|
||||
case 43:
|
||||
if (actor->timer_0BC == 0) {
|
||||
Object_Kill(&actor->obj, actor->sfxSource);
|
||||
if (this->timer_0BC == 0) {
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVEL_SECTOR_X:
|
||||
if ((actor->state != 0) && (actor->state == 1)) {
|
||||
actor->vel.y += 0.1f;
|
||||
Math_SmoothStepToF(&actor->obj.rot.x, -20.0f, 0.1f, 0.5f, 0.0f);
|
||||
if ((this->state != 0) && (this->state == 1)) {
|
||||
this->vel.y += 0.1f;
|
||||
Math_SmoothStepToF(&this->obj.rot.x, -20.0f, 0.1f, 0.5f, 0.0f);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -2202,84 +2215,84 @@ void func_demo_8004F05C(Actor* actor) {
|
||||
break;
|
||||
|
||||
default:
|
||||
switch (actor->state) {
|
||||
switch (this->state) {
|
||||
case 100:
|
||||
Math_SmoothStepToF(&actor->obj.pos.x, actor->vwork[0x14].x, 0.03f, 3.0f, 0.0f);
|
||||
Math_SmoothStepToF(&actor->obj.pos.y, actor->vwork[0x14].y, 0.03f, 2.0f, 0.0f);
|
||||
Math_SmoothStepToF(&actor->obj.pos.z, actor->vwork[0x14].z, 0.03f, 2.0f, 0.0f);
|
||||
Math_SmoothStepToF(&actor->obj.rot.z, 0.0f, 0.02f, 0.3f, 0);
|
||||
Math_SmoothStepToF(&this->obj.pos.x, this->vwork[0x14].x, 0.03f, 3.0f, 0.0f);
|
||||
Math_SmoothStepToF(&this->obj.pos.y, this->vwork[0x14].y, 0.03f, 2.0f, 0.0f);
|
||||
Math_SmoothStepToF(&this->obj.pos.z, this->vwork[0x14].z, 0.03f, 2.0f, 0.0f);
|
||||
Math_SmoothStepToF(&this->obj.rot.z, 0.0f, 0.02f, 0.3f, 0);
|
||||
break;
|
||||
|
||||
case 0:
|
||||
actor->obj.rot.z = actor->rot_0F4.z;
|
||||
if (actor->animFrame == 10) {
|
||||
actor->obj.pos.z = gPlayer[0].cam.eye.z + 12000.0f;
|
||||
this->obj.rot.z = this->rot_0F4.z;
|
||||
if (this->animFrame == 10) {
|
||||
this->obj.pos.z = gPlayer[0].cam.eye.z + 12000.0f;
|
||||
}
|
||||
break;
|
||||
|
||||
case 1:
|
||||
actor->vel.y += 0.8f;
|
||||
actor->vel.x += 0.8f;
|
||||
Math_SmoothStepToF(&actor->obj.rot.z, 420.0f, 0.1f, 15.0f, 0.001f);
|
||||
this->vel.y += 0.8f;
|
||||
this->vel.x += 0.8f;
|
||||
Math_SmoothStepToF(&this->obj.rot.z, 420.0f, 0.1f, 15.0f, 0.001f);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
actor->vel.y += 0.8f;
|
||||
actor->vel.x -= 0.8f;
|
||||
Math_SmoothStepToF(&actor->obj.rot.z, -420.0f, 0.1f, 15.0f, 0.001f);
|
||||
this->vel.y += 0.8f;
|
||||
this->vel.x -= 0.8f;
|
||||
Math_SmoothStepToF(&this->obj.rot.z, -420.0f, 0.1f, 15.0f, 0.001f);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
actor->vel.y += 1.2f;
|
||||
actor->vel.z += 0.1f;
|
||||
Math_SmoothStepToF(&actor->obj.rot.x, -45.0f, 0.1f, 15.0f, 0.001f);
|
||||
this->vel.y += 1.2f;
|
||||
this->vel.z += 0.1f;
|
||||
Math_SmoothStepToF(&this->obj.rot.x, -45.0f, 0.1f, 15.0f, 0.001f);
|
||||
break;
|
||||
|
||||
case 10:
|
||||
actor->vel.x -= 1.0f;
|
||||
Math_SmoothStepToF(&actor->obj.rot.z, -45.0f, 0.05f, 0.5f, 0.0f);
|
||||
this->vel.x -= 1.0f;
|
||||
Math_SmoothStepToF(&this->obj.rot.z, -45.0f, 0.05f, 0.5f, 0.0f);
|
||||
break;
|
||||
|
||||
case 11:
|
||||
actor->vel.x -= 2.0f;
|
||||
Math_SmoothStepToF(&actor->obj.rot.z, -70.0f, 0.1f, 6.0f, 0.0f);
|
||||
Math_SmoothStepToF(&actor->obj.rot.y, 225.0f, 0.05f, 2.0f, 0.0f);
|
||||
this->vel.x -= 2.0f;
|
||||
Math_SmoothStepToF(&this->obj.rot.z, -70.0f, 0.1f, 6.0f, 0.0f);
|
||||
Math_SmoothStepToF(&this->obj.rot.y, 225.0f, 0.05f, 2.0f, 0.0f);
|
||||
break;
|
||||
|
||||
case 12:
|
||||
actor->vel.x += 2.0f;
|
||||
actor->vel.y += 1.0f;
|
||||
Math_SmoothStepToF(&actor->obj.rot.z, 80.0f, 0.1f, 6.0f, 0.0f);
|
||||
Math_SmoothStepToF(&actor->obj.rot.x, -15.0f, 0.05f, 4.0f, 0.0f);
|
||||
Math_SmoothStepToF(&actor->obj.rot.y, 135.0f, 0.05f, 2.0f, 0.0f);
|
||||
this->vel.x += 2.0f;
|
||||
this->vel.y += 1.0f;
|
||||
Math_SmoothStepToF(&this->obj.rot.z, 80.0f, 0.1f, 6.0f, 0.0f);
|
||||
Math_SmoothStepToF(&this->obj.rot.x, -15.0f, 0.05f, 4.0f, 0.0f);
|
||||
Math_SmoothStepToF(&this->obj.rot.y, 135.0f, 0.05f, 2.0f, 0.0f);
|
||||
break;
|
||||
|
||||
case 13:
|
||||
actor->vel.y += 2.0f;
|
||||
Math_SmoothStepToF(&actor->obj.rot.z, -400.0f, 0.2f, 14.0f, 0.0f);
|
||||
Math_SmoothStepToF(&actor->obj.rot.x, -45.0f, 0.05f, 4.0f, 0.0f);
|
||||
this->vel.y += 2.0f;
|
||||
Math_SmoothStepToF(&this->obj.rot.z, -400.0f, 0.2f, 14.0f, 0.0f);
|
||||
Math_SmoothStepToF(&this->obj.rot.x, -45.0f, 0.05f, 4.0f, 0.0f);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void func_demo_8004F798(Actor* actor) {
|
||||
actor->iwork[11] = 2;
|
||||
void func_demo_8004F798(ActorCutscene* this) {
|
||||
this->iwork[11] = 2;
|
||||
|
||||
switch (actor->state) {
|
||||
switch (this->state) {
|
||||
case 0:
|
||||
Math_SmoothStepToF(&actor->obj.pos.x, actor->fwork[0], 0.05f, 50.0f, 0.0f);
|
||||
Math_SmoothStepToF(&actor->obj.pos.y, actor->fwork[1], 0.05f, 50.0f, 0.0f);
|
||||
Math_SmoothStepToF(&actor->obj.rot.z, 0.0f, 0.05f, 1.0f, 0.0f);
|
||||
actor->obj.pos.z -= 2.0f;
|
||||
Math_SmoothStepToF(&this->obj.pos.x, this->fwork[0], 0.05f, 50.0f, 0.0f);
|
||||
Math_SmoothStepToF(&this->obj.pos.y, this->fwork[1], 0.05f, 50.0f, 0.0f);
|
||||
Math_SmoothStepToF(&this->obj.rot.z, 0.0f, 0.05f, 1.0f, 0.0f);
|
||||
this->obj.pos.z -= 2.0f;
|
||||
break;
|
||||
|
||||
case 1:
|
||||
actor->fwork[29] = 10.0f;
|
||||
actor->vel.z -= 100.0f;
|
||||
if ((actor->obj.pos.z + gPathProgress) < -15000.0f) {
|
||||
Object_Kill(&actor->obj, actor->sfxSource);
|
||||
this->fwork[29] = 10.0f;
|
||||
this->vel.z -= 100.0f;
|
||||
if ((this->obj.pos.z + gPathProgress) < -15000.0f) {
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -2323,7 +2336,7 @@ void ActorCutscene_Update(ActorCutscene* this) {
|
||||
break;
|
||||
|
||||
case LEVEL_SECTOR_Z:
|
||||
SectorZ_8019DD20(this);
|
||||
SectorZ_LevelCompleteCsUpdate(this);
|
||||
break;
|
||||
|
||||
case LEVEL_AREA_6:
|
||||
@@ -2460,19 +2473,19 @@ static Animation* D_demo_800CA1F4[] = {
|
||||
&D_SY_60265B4, &D_SY_602B8DC, &D_SY_60034C4, &D_SY_602A2CC, &D_SY_602CEB4, &D_SY_602B778, &D_SY_601F3B8,
|
||||
};
|
||||
|
||||
void func_demo_8004FCB8(Actor* actor, s32 arg1) {
|
||||
void func_demo_8004FCB8(ActorCutscene* this, s32 arg1) {
|
||||
f32 angle;
|
||||
f32 scale;
|
||||
s32 i;
|
||||
|
||||
if (actor->timer_0BC == 0) {
|
||||
actor->timer_0BC = 32;
|
||||
actor->fwork[5] = 0.3f;
|
||||
if (this->timer_0BC == 0) {
|
||||
this->timer_0BC = 32;
|
||||
this->fwork[5] = 0.3f;
|
||||
}
|
||||
|
||||
if (actor->fwork[5] > 0.0f) {
|
||||
scale = actor->fwork[5];
|
||||
actor->fwork[5] -= 0.05f;
|
||||
if (this->fwork[5] > 0.0f) {
|
||||
scale = this->fwork[5];
|
||||
this->fwork[5] -= 0.05f;
|
||||
RCP_SetupDL_49();
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255);
|
||||
gDPSetEnvColor(gMasterDisp++, 16, 16, 240, 255);
|
||||
@@ -2481,9 +2494,8 @@ void func_demo_8004FCB8(Actor* actor, s32 arg1) {
|
||||
for (i = arg1; i < (arg1 + 4); i++) {
|
||||
Matrix_Pop(&gGfxMatrix);
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_Translate(gGfxMatrix, D_demo_800CA110[i].x + actor->obj.pos.x,
|
||||
D_demo_800CA110[i].y + actor->obj.pos.y, D_demo_800CA110[i].z + actor->obj.pos.z,
|
||||
MTXF_APPLY);
|
||||
Matrix_Translate(gGfxMatrix, D_demo_800CA110[i].x + this->obj.pos.x, D_demo_800CA110[i].y + this->obj.pos.y,
|
||||
D_demo_800CA110[i].z + this->obj.pos.z, MTXF_APPLY);
|
||||
Matrix_RotateY(gGfxMatrix, angle, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, scale, scale, scale, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
@@ -2492,7 +2504,7 @@ void func_demo_8004FCB8(Actor* actor, s32 arg1) {
|
||||
}
|
||||
}
|
||||
|
||||
void ActorCutscene_Draw(Actor* actor) {
|
||||
void ActorCutscene_Draw(ActorCutscene* this) {
|
||||
static f32 D_800CA210 = 0.0f;
|
||||
static f32 D_800CA214 = 0.0f;
|
||||
static f32 D_800CA218 = 0.0f;
|
||||
@@ -2512,26 +2524,26 @@ void ActorCutscene_Draw(Actor* actor) {
|
||||
f32 y;
|
||||
f32 x;
|
||||
|
||||
switch (actor->animFrame) {
|
||||
switch (this->animFrame) {
|
||||
case 1000:
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_45);
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, actor->unk_046);
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, this->unk_046);
|
||||
gSPDisplayList(gMasterDisp++, D_ENMY_PLANET_40018A0);
|
||||
|
||||
if (actor->unk_046 > 50) {
|
||||
Actor_DrawEngineAndContrails(actor);
|
||||
if (this->unk_046 > 50) {
|
||||
Actor_DrawEngineAndContrails(this);
|
||||
}
|
||||
break;
|
||||
|
||||
case 0:
|
||||
func_edisplay_8005B388(actor);
|
||||
func_edisplay_8005B388(this);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
if (gCurrentLevel == LEVEL_SECTOR_Z) {
|
||||
gSPFogPosition(gMasterDisp++, gFogNear, 1005);
|
||||
}
|
||||
actor->info.bonus = 1;
|
||||
this->info.bonus = 1;
|
||||
Cutscene_DrawGreatFox();
|
||||
break;
|
||||
|
||||
@@ -2547,12 +2559,12 @@ void ActorCutscene_Draw(Actor* actor) {
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255);
|
||||
Matrix_Scale(gGfxMatrix, 60.0f, 60.0f, 1.0f, MTXF_APPLY);
|
||||
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, 10.0f, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, actor->scale, actor->scale, 1.0f, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, this->scale, this->scale, 1.0f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
|
||||
RCP_SetupDL_49();
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, actor->iwork[0]);
|
||||
gDPSetEnvColor(gMasterDisp++, 255, 255, 00, actor->iwork[0]);
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, this->iwork[0]);
|
||||
gDPSetEnvColor(gMasterDisp++, 255, 255, 00, this->iwork[0]);
|
||||
gSPDisplayList(gMasterDisp++, D_1024AC0);
|
||||
break;
|
||||
|
||||
@@ -2562,42 +2574,42 @@ void ActorCutscene_Draw(Actor* actor) {
|
||||
|
||||
case 24:
|
||||
gSPDisplayList(gMasterDisp++, D_D009A40);
|
||||
Actor_DrawEngineAndContrails(actor);
|
||||
Actor_DrawEngineAndContrails(this);
|
||||
break;
|
||||
|
||||
case 25:
|
||||
if ((actor->index % 2) != 0) {
|
||||
gSPDisplayList(gMasterDisp++, D_SZ_6001DA0);
|
||||
if ((this->index % 2) != 0) {
|
||||
gSPDisplayList(gMasterDisp++, aSzSpaceJunk3DL);
|
||||
} else {
|
||||
gSPDisplayList(gMasterDisp++, D_SZ_6001360);
|
||||
gSPDisplayList(gMasterDisp++, aSzSpaceJunk1DL);
|
||||
}
|
||||
break;
|
||||
|
||||
case 26:
|
||||
gSPDisplayList(gMasterDisp++, D_SZ_6004FE0);
|
||||
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -60.0f, MTXF_APPLY);
|
||||
Actor_DrawEngineGlow(actor, 2);
|
||||
Actor_DrawEngineGlow(this, 2);
|
||||
break;
|
||||
|
||||
case 28:
|
||||
gSPDisplayList(gMasterDisp++, D_ENMY_SPACE_400AAE0);
|
||||
Matrix_Translate(gGfxMatrix, 0.f, 0.f, -60.0f, MTXF_APPLY);
|
||||
Actor_DrawEngineGlow(actor, 2);
|
||||
Actor_DrawEngineGlow(this, 2);
|
||||
break;
|
||||
|
||||
case 30:
|
||||
Display_SetSecondLight(&actor->obj.pos);
|
||||
Display_SetSecondLight(&this->obj.pos);
|
||||
|
||||
if (actor->unk_046 != 0) {
|
||||
if (this->unk_046 != 0) {
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_55);
|
||||
gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK);
|
||||
Rand_SetSeed(1, 29000, 9876);
|
||||
|
||||
for (sp2D0 = 0; sp2D0 < 30; sp2D0++) {
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_Translate(gGfxMatrix, RAND_FLOAT_CENTERED_SEEDED(3000.0f) * actor->fwork[20],
|
||||
RAND_FLOAT_CENTERED_SEEDED(3000.0f) * actor->fwork[20],
|
||||
RAND_FLOAT_CENTERED_SEEDED(3000.0f) * actor->fwork[20], MTXF_APPLY);
|
||||
Matrix_Translate(gGfxMatrix, RAND_FLOAT_CENTERED_SEEDED(3000.0f) * this->fwork[20],
|
||||
RAND_FLOAT_CENTERED_SEEDED(3000.0f) * this->fwork[20],
|
||||
RAND_FLOAT_CENTERED_SEEDED(3000.0f) * this->fwork[20], MTXF_APPLY);
|
||||
Matrix_RotateY(gGfxMatrix, 2.0f * RAND_FLOAT_SEEDED(M_PI), MTXF_APPLY);
|
||||
Matrix_RotateZ(gGfxMatrix, (2.0f * gGameFrameCount) * M_DTOR, MTXF_APPLY);
|
||||
Matrix_RotateX(gGfxMatrix, 2.0f * RAND_FLOAT_SEEDED(M_PI), MTXF_APPLY);
|
||||
@@ -2717,13 +2729,13 @@ void ActorCutscene_Draw(Actor* actor) {
|
||||
break;
|
||||
|
||||
case 33:
|
||||
if ((actor->index == 3) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_LEVEL_COMPLETE)) {
|
||||
if ((this->index == 3) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_LEVEL_COMPLETE)) {
|
||||
gSPDisplayList(gMasterDisp++, D_D00B880);
|
||||
} else {
|
||||
gSPDisplayList(gMasterDisp++, aKaCornerianFighterDL);
|
||||
}
|
||||
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -60.0f, MTXF_APPLY);
|
||||
Actor_DrawEngineGlow(actor, 0);
|
||||
Actor_DrawEngineGlow(this, 0);
|
||||
break;
|
||||
|
||||
case 34:
|
||||
@@ -2736,44 +2748,44 @@ void ActorCutscene_Draw(Actor* actor) {
|
||||
/* fallthrough */
|
||||
case 39:
|
||||
gSPDisplayList(gMasterDisp++, D_SY_60097E0);
|
||||
func_demo_8004FCB8(actor, 4);
|
||||
func_demo_8004FCB8(this, 4);
|
||||
break;
|
||||
|
||||
case 36:
|
||||
Matrix_Scale(gGfxMatrix, actor->scale, actor->scale, actor->scale, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, this->scale, this->scale, this->scale, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_SY_601D730);
|
||||
func_demo_8004FCB8(actor, 0);
|
||||
func_demo_8004FCB8(this, 0);
|
||||
break;
|
||||
|
||||
case 37:
|
||||
RCP_SetupDL_49();
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, actor->iwork[0], actor->iwork[1], actor->iwork[2], actor->iwork[3]);
|
||||
gDPSetEnvColor(gMasterDisp++, actor->iwork[4], actor->iwork[5], actor->iwork[6], actor->iwork[7]);
|
||||
Matrix_Scale(gGfxMatrix, actor->scale, actor->fwork[4], 1.0f, MTXF_APPLY);
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, this->iwork[0], this->iwork[1], this->iwork[2], this->iwork[3]);
|
||||
gDPSetEnvColor(gMasterDisp++, this->iwork[4], this->iwork[5], this->iwork[6], this->iwork[7]);
|
||||
Matrix_Scale(gGfxMatrix, this->scale, this->fwork[4], 1.0f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_1024AC0);
|
||||
break;
|
||||
|
||||
case 38:
|
||||
animFrameData = Animation_GetFrameData(D_demo_800CA1F4[actor->iwork[4]], actor->iwork[5], sp144);
|
||||
Math_SmoothStepToVec3fArray(sp144, actor->vwork, 1, animFrameData, actor->fwork[2], 100.0f, .0f);
|
||||
animFrameData = Animation_GetFrameData(D_demo_800CA1F4[this->iwork[4]], this->iwork[5], sp144);
|
||||
Math_SmoothStepToVec3fArray(sp144, this->vwork, 1, animFrameData, this->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_SY_602D140, actor->vwork, 0, 0, actor, &gIdentityMatrix);
|
||||
Animation_DrawSkeleton(1, D_SY_602D140, this->vwork, 0, 0, this, &gIdentityMatrix);
|
||||
|
||||
if (actor->fwork[0] != 0.0f) {
|
||||
if (this->fwork[0] != 0.0f) {
|
||||
RCP_SetupDL_49();
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255);
|
||||
gDPSetEnvColor(gMasterDisp++, 255, 32, 32, 255);
|
||||
Matrix_Translate(gGfxMatrix, 10.0f, -5.0f, -40.0f, MTXF_APPLY);
|
||||
Matrix_RotateY(gGfxMatrix, (-actor->obj.rot.y) * M_DTOR, MTXF_APPLY);
|
||||
Matrix_RotateY(gGfxMatrix, (-this->obj.rot.y) * M_DTOR, MTXF_APPLY);
|
||||
Graphics_SetScaleMtx(1.0f);
|
||||
Matrix_Scale(gGfxMatrix, actor->fwork[0], actor->fwork[0], actor->fwork[0], MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, this->fwork[0], this->fwork[0], this->fwork[0], MTXF_APPLY);
|
||||
|
||||
camX = gPlayer[0].cam.eye.x - actor->obj.pos.x;
|
||||
camY = gPlayer[0].cam.eye.y - actor->obj.pos.y;
|
||||
camZ = gPlayer[0].cam.eye.z - (actor->obj.pos.z + gPathProgress);
|
||||
camX = gPlayer[0].cam.eye.x - this->obj.pos.x;
|
||||
camY = gPlayer[0].cam.eye.y - this->obj.pos.y;
|
||||
camZ = gPlayer[0].cam.eye.z - (this->obj.pos.z + gPathProgress);
|
||||
|
||||
y = -Math_Atan2F(camX, camZ);
|
||||
x = Math_Atan2F(camY, sqrtf(SQ(camZ) + SQ(camX)));
|
||||
@@ -2783,29 +2795,29 @@ void ActorCutscene_Draw(Actor* actor) {
|
||||
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_1024AC0);
|
||||
Math_SmoothStepToF(&actor->fwork[0], 0.0f, 0.1f, 0.2f, 0.05f);
|
||||
Math_SmoothStepToF(&this->fwork[0], 0.0f, 0.1f, 0.2f, 0.05f);
|
||||
}
|
||||
|
||||
if (actor->fwork[6] != 0.0f) {
|
||||
if (this->fwork[6] != 0.0f) {
|
||||
RCP_SetupDL_49();
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255);
|
||||
gDPSetEnvColor(gMasterDisp++, 255, 48, 0, 255);
|
||||
Matrix_Pop(&gGfxMatrix);
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_RotateY(gCalcMatrix, (actor->obj.rot.y - 90.0f) * M_DTOR, MTXF_NEW);
|
||||
Matrix_RotateY(gCalcMatrix, (this->obj.rot.y - 90.0f) * M_DTOR, MTXF_NEW);
|
||||
|
||||
sp2B8.x = 210.0f;
|
||||
sp2B8.y = 0.0f;
|
||||
sp2B8.z = 40.0f;
|
||||
|
||||
Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp2B8, &sp2AC);
|
||||
Matrix_Translate(gGfxMatrix, actor->obj.pos.x + sp2AC.x, actor->obj.pos.y + sp2AC.y,
|
||||
actor->obj.pos.z + sp2AC.z, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, actor->fwork[6], actor->fwork[6], actor->fwork[6], MTXF_APPLY);
|
||||
Matrix_Translate(gGfxMatrix, this->obj.pos.x + sp2AC.x, this->obj.pos.y + sp2AC.y,
|
||||
this->obj.pos.z + sp2AC.z, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, this->fwork[6], this->fwork[6], this->fwork[6], MTXF_APPLY);
|
||||
|
||||
camX = gPlayer[0].cam.eye.x - actor->obj.pos.x;
|
||||
camY = gPlayer[0].cam.eye.y - actor->obj.pos.y;
|
||||
camZ = gPlayer[0].cam.eye.z - (actor->obj.pos.z + gPathProgress);
|
||||
camX = gPlayer[0].cam.eye.x - this->obj.pos.x;
|
||||
camY = gPlayer[0].cam.eye.y - this->obj.pos.y;
|
||||
camZ = gPlayer[0].cam.eye.z - (this->obj.pos.z + gPathProgress);
|
||||
|
||||
y = -Math_Atan2F(camX, camZ);
|
||||
x = Math_Atan2F(camY, sqrtf(SQ(camZ) + SQ(camX)));
|
||||
@@ -2815,7 +2827,7 @@ void ActorCutscene_Draw(Actor* actor) {
|
||||
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_1024AC0);
|
||||
Math_SmoothStepToF(&actor->fwork[6], 0.00f, 0.1f, 0.6f, 0);
|
||||
Math_SmoothStepToF(&this->fwork[6], 0.00f, 0.1f, 0.6f, 0);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -2824,7 +2836,7 @@ void ActorCutscene_Draw(Actor* actor) {
|
||||
break;
|
||||
|
||||
case 41:
|
||||
Aquas_801BE0F0(actor);
|
||||
Aquas_801BE0F0(this);
|
||||
break;
|
||||
|
||||
case 42:
|
||||
@@ -2834,28 +2846,28 @@ void ActorCutscene_Draw(Actor* actor) {
|
||||
case 43:
|
||||
RCP_SetupDL_49();
|
||||
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, actor->iwork[0]);
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, this->iwork[0]);
|
||||
gDPSetEnvColor(gMasterDisp++, 255, 192, 128, 255);
|
||||
|
||||
Matrix_RotateY(
|
||||
gGfxMatrix,
|
||||
Math_Atan2F(gPlayer[0].cam.eye.x - gPlayer[0].cam.at.x, gPlayer[0].cam.eye.z - gPlayer[0].cam.at.z),
|
||||
MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, actor->fwork[0], actor->fwork[0], actor->fwork[0], MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, this->fwork[0], this->fwork[0], this->fwork[0], MTXF_APPLY);
|
||||
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_1024AC0);
|
||||
|
||||
if (actor->iwork[0] != 0) {
|
||||
actor->iwork[0] -= 7;
|
||||
if (this->iwork[0] != 0) {
|
||||
this->iwork[0] -= 7;
|
||||
}
|
||||
actor->fwork[0] += 0.2f;
|
||||
this->fwork[0] += 0.2f;
|
||||
break;
|
||||
|
||||
case 44:
|
||||
Animation_GetFrameData(&D_AQ_6020A40, actor->iwork[0], actor->vwork);
|
||||
Animation_GetFrameData(&D_AQ_6020A40, this->iwork[0], this->vwork);
|
||||
gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK);
|
||||
Animation_DrawSkeleton(1, D_AQ_6020C6C, actor->vwork, 0, 0, &actor->index, &gIdentityMatrix);
|
||||
Animation_DrawSkeleton(1, D_AQ_6020C6C, this->vwork, 0, 0, &this->index, &gIdentityMatrix);
|
||||
gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK);
|
||||
break;
|
||||
|
||||
@@ -2882,9 +2894,9 @@ void Cutscene_DrawGreatFox(void) {
|
||||
f32 sp9C[4];
|
||||
Gfx* var_fp;
|
||||
|
||||
(void) "Demo_Time=%d\n";
|
||||
(void) "Demo_Time=%d\n";
|
||||
(void) "d Enm->wrk0 %d\n";
|
||||
PRINTF("Demo_Time=%d\n");
|
||||
PRINTF("Demo_Time=%d\n");
|
||||
PRINTF("d Enm->wrk0 %d\n");
|
||||
|
||||
if (gGameState == GSTATE_TITLE) {
|
||||
var_fp = D_TITLE_60320E0;
|
||||
@@ -2933,6 +2945,7 @@ void Cutscene_DrawGreatFox(void) {
|
||||
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 48);
|
||||
gDPSetEnvColor(gMasterDisp++, 255, 255, 0, 48);
|
||||
|
||||
for (i = 0, var_s6_2 = D_demo_800CA0EC; i < 3; i++, var_s6_2++) {
|
||||
sp9C[i] = D_demo_800CA190[gGameFrameCount % 2U];
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
f32* D_edata_800CF964[] = { NULL }; // Likely a scrapped array of scenery shadow boxes
|
||||
|
||||
void func_edata_800594F0(Scenery* scenery) {
|
||||
void Scenery48_Draw(Scenery* scenery) {
|
||||
RCP_SetupDL_57(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
Matrix_RotateY(gGfxMatrix, M_PI, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
@@ -12,7 +12,7 @@ void func_edata_800594F0(Scenery* scenery) {
|
||||
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
}
|
||||
|
||||
void func_edata_800595D0(Scenery* scenery) {
|
||||
void Scenery49_Draw(Scenery* scenery) {
|
||||
RCP_SetupDL_57(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
Matrix_RotateY(gGfxMatrix, M_PI, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
@@ -20,5 +20,5 @@ void func_edata_800595D0(Scenery* scenery) {
|
||||
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
}
|
||||
|
||||
void func_edata_800596B0(Actor* actor) {
|
||||
void Actor289_Draw(Actor* actor) {
|
||||
}
|
||||
|
||||
+270
-270
@@ -93,72 +93,72 @@ f32 gWarpZoneEvent93Hitbox[] = {
|
||||
|
||||
// clang-format off
|
||||
ObjectInfo gObjectInfo[] = {
|
||||
/* OBJ_SCENERY_0, */ {(void*) D_CO_6015F00, 0, (ObjectFunc) NULL, D_CO_603E3E0, 800.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_1, */ {(void*) D_CO_602E9E0, 0, (ObjectFunc) NULL, gNoHitbox, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_2, */ {(void*) D_CO_601BEC0, 0, (ObjectFunc) NULL, gNoHitbox, 3000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_3, */ {(void*) D_CO_602E7A0, 0, (ObjectFunc) NULL, gNoHitbox, 3000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_4, */ {(void*) D_CO_60244A0, 0, (ObjectFunc) NULL, gNoHitbox, 3000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_5, */ {(void*) D_CO_602E570, 0, (ObjectFunc) NULL, gNoHitbox, 3000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_6, */ {(void*) D_CO_60132B0, 0, (ObjectFunc) NULL, D_CO_603DCA4, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_7, */ {(void*) D_CO_602E080, 0, (ObjectFunc) NULL, D_CO_603DD40, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_8, */ {(void*) D_CO_60164F0, 0, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_9, */ {(void*) D_CO_6014500, 0, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_10, */ {(void*) D_CO_602D5F0, 0, (ObjectFunc) NULL, D_CO_603DDF0, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_11, */ {(void*) D_CO_601A7D0, 0, (ObjectFunc) NULL, D_CO_603DE8C, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_12, */ {(void*) D_CO_6014B50, 0, (ObjectFunc) NULL, D_CO_603DEF4, 500.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_13, */ {(void*) D_CO_6016580, 0, (ObjectFunc) NULL, D_CO_603DF8C, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_14, */ {(void*) D_CO_601B560, 0, (ObjectFunc) func_enmy_80066EA8, D_CO_603DFDC, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_15, */ {(void*) D_CO_60361F0, 0, (ObjectFunc) func_enmy_80066EA8, D_CO_603E014, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_16, */ {(void*) D_CO_6018E80, 0, (ObjectFunc) func_enmy_80066EA8, D_CO_603E030, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_17, */ {(void*) D_CO_6035F10, 0, (ObjectFunc) func_enmy_80066EA8, D_CO_603E09C, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_18, */ {(void*) Corneria_8018753C, 1, (ObjectFunc) Corneria_80187530, D_CO_603E98C, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_19, */ {(void*) D_CO_60153B0, 0, (ObjectFunc) NULL, D_CO_603E118, 100.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_20, */ {(void*) D_CO_601F5A0, 0, (ObjectFunc) NULL, D_CO_603E14C, 500.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_21, */ {(void*) D_CO_60137B0, 0, (ObjectFunc) NULL, D_CO_603E1B4, 400.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_22, */ {(void*) D_CO_6006A80, 0, (ObjectFunc) NULL, D_CO_603E21C, 400.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_23, */ {(void*) D_CO_6016270, 0, (ObjectFunc) NULL, D_CO_603E4A0, 200.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_24, */ {(void*) D_CO_6010E00, 0, (ObjectFunc) NULL, D_CO_603E9EC, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_25, */ {(void*) D_CO_6014670, 0, (ObjectFunc) NULL, D_CO_603EA08, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_26, */ {(void*) D_CO_6010A50, 0, (ObjectFunc) NULL, D_CO_603EA74, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_27, */ {(void*) D_CO_60143E0, 0, (ObjectFunc) NULL, D_CO_603EAE0, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_28, */ {(void*) D_CO_6014A20, 0, (ObjectFunc) NULL, D_CO_603EB0C, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_SKULL, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, D_TI_60064FC, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_0, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, D_TI_6006518, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_1, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, D_TI_6006564, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_2, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, D_TI_60065B0, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_3, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, D_TI_60065FC, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_4, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, D_TI_6006648, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_5, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, D_TI_6006694, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_6, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, D_TI_60066E0, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_7, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, D_TI_600672C, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_8, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, D_TI_6006778, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_STONE_ARCH, */ {(void*) aCoStoneArchDL, 0, (ObjectFunc) NULL, aCoStoneArchHitbox, 800.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUMP_1, */ {(void*) aCoBump1DL, 0, (ObjectFunc) NULL, gNoHitbox, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUMP_2, */ {(void*) aCoBump2DL, 0, (ObjectFunc) NULL, gNoHitbox, 3000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUMP_3, */ {(void*) aCoBump3DL, 0, (ObjectFunc) NULL, gNoHitbox, 3000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUMP_4, */ {(void*) aCoBump4DL, 0, (ObjectFunc) NULL, gNoHitbox, 3000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUMP_5, */ {(void*) aCoBump5DL, 0, (ObjectFunc) NULL, gNoHitbox, 3000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_HIGHWAY_1, */ {(void*) aCoHighway1DL, 0, (ObjectFunc) NULL, aCoHighway1Hitbox, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_HIGHWAY_2, */ {(void*) aCoHighway2DL, 0, (ObjectFunc) NULL, aCoHighway2Hitbox, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_HIGHWAY_3, */ {(void*) aCoHighway3DL, 0, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_HIGHWAY_4, */ {(void*) aCoHighway4DL, 0, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUILDING_1, */ {(void*) aCoBuilding1DL, 0, (ObjectFunc) NULL, aCoBuilding1Hitbox, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUILDING_2, */ {(void*) aCoBuilding2DL, 0, (ObjectFunc) NULL, aCoBuilding2Hitbox, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUILDING_3, */ {(void*) aCoBuilding3DL, 0, (ObjectFunc) NULL, aCoBuilding3Hitbox, 500.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUILDING_4, */ {(void*) aCoBuilding4DL, 0, (ObjectFunc) NULL, aCoBuilding4Hitbox, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUILDING_5, */ {(void*) aCoBuilding5DL, 0, (ObjectFunc) SceneryRotateTowardsCamera, aCoBuilding5Hitbox, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUILDING_6, */ {(void*) aCoBuilding6DL, 0, (ObjectFunc) SceneryRotateTowardsCamera, aCoBuilding6Hitbox, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUILDING_7, */ {(void*) aCoBuilding7DL, 0, (ObjectFunc) SceneryRotateTowardsCamera, aCoBuilding7Hitbox, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUILDING_8, */ {(void*) aCoBuilding8DL, 0, (ObjectFunc) SceneryRotateTowardsCamera, aCoBuilding8Hitbox, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUILDING_ON_FIRE, */ {(void*) Corneria_BuildingOnFire_Draw, 1, (ObjectFunc) Corneria_BuildingOnFire_Update, aCoBuildingOnFireHitbox, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_TOWER, */ {(void*) aCoTowerDL, 0, (ObjectFunc) NULL, aCoTowerHitbox, 100.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_ARCH_1, */ {(void*) aCoArch1DL, 0, (ObjectFunc) NULL, aCoArch1Hitbox, 500.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_ARCH_2, */ {(void*) aCoArch2DL, 0, (ObjectFunc) NULL, aCoArch2Hitbox, 400.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_ARCH_3, */ {(void*) aCoArch3DL, 0, (ObjectFunc) NULL, aCoArch3Hitbox, 400.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_RADAR, */ {(void*) aRadarDL, 0, (ObjectFunc) NULL, aCoRadarHitbox, 200.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_HIGHWAY_5, */ {(void*) aCoHighway5DL, 0, (ObjectFunc) NULL, aCoHighway5Hitbox, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_HIGHWAY_6, */ {(void*) aCoHighway6DL, 0, (ObjectFunc) NULL, aCoHighway6Hitbox, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_HIGHWAY_7, */ {(void*) aCoHighway7DL, 0, (ObjectFunc) NULL, aCoHighway7Hitbox, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_HIGHWAY_8, */ {(void*) aCoHighway8DL, 0, (ObjectFunc) NULL, aCoHighway8Hitbox, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_HIGHWAY_9, */ {(void*) aCoHighway9DL, 0, (ObjectFunc) NULL, aCoHighway9Hitbox, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_SKULL, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, aTiSkullHitbox, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_0, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, aTiRib0Hitbox, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_1, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, aTiRib1Hitbox, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_2, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, aTiRib2Hitbox, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_3, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, aTiRib3Hitbox, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_4, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, aTiRib4Hitbox, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_5, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, aTiRib5Hitbox, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_6, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, aTiRib6Hitbox, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_7, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, aTiRib7Hitbox, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_TI_RIB_8, */ {(void*) Scenery_DrawTitaniaBones, 1, (ObjectFunc) Scenery_UpdateTitaniaBones, aTiRib8Hitbox, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_ME_TUNNEL, */ {(void*) MeteoTunnel_Draw, 1, (ObjectFunc) MeteoTunnel_Update, gNoHitbox, 6000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_40, */ {(void*) func_edisplay_80059F68, 1, (ObjectFunc) func_enmy_80066D5C, D_CO_603E4A4, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_41, */ {(void*) func_edisplay_80059FDC, 1, (ObjectFunc) func_enmy_80066EA8, D_CO_603E4DC, 300.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_42, */ {(void*) Scenery42_Draw, 1, (ObjectFunc) Scenery42_Update, D_CO_603E514, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_43, */ {(void*) D_ZO_6024AC0, 0, (ObjectFunc) NULL, D_ZO_602B9EC, 200.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUILDING_9, */ {(void*) CoBuilding9_Draw, 1, (ObjectFunc) CoBuilding9_Update, aCoBuilding9Hitbox, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_BUILDING_10, */ {(void*) CoBuilding10_Draw, 1, (ObjectFunc) SceneryRotateTowardsCamera, aCoBuilding10Hitbox, 300.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_IBEAM, */ {(void*) CoIBeam_Draw, 1, (ObjectFunc) CoIBeam_Update, aCoIBeamHitbox, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_ZO_ROCK_1, */ {(void*) aZoRock1DL, 0, (ObjectFunc) NULL, aZoRock1Hitbox, 200.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_44, */ {(void*) D_ZO_600F560, 0, (ObjectFunc) NULL, D_ZO_602BA20, 1500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_45, */ {(void*) D_ZO_600EC90, 0, (ObjectFunc) NULL, D_ZO_602BAE4, 1500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_46, */ {(void*) D_ZO_600E820, 0, (ObjectFunc) NULL, D_ZO_602BBD8, 1500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_47, */ {(void*) D_ZO_601FCB0, 0, (ObjectFunc) NULL, D_ZO_602BC54, 500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_48, */ {(void*) func_edata_800594F0, 1, (ObjectFunc) NULL, D_VE1_601B4E0, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_49, */ {(void*) func_edata_800595D0, 1, (ObjectFunc) NULL, D_VE1_601B4FC, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_48, */ {(void*) Scenery48_Draw, 1, (ObjectFunc) NULL, D_VE1_601B4E0, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_49, */ {(void*) Scenery49_Draw, 1, (ObjectFunc) NULL, D_VE1_601B4FC, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_50, */ {(void*) D_VE1_6007410, 0, (ObjectFunc) NULL, D_VE1_601B518, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_51, */ {(void*) D_VE1_6006F50, 0, (ObjectFunc) NULL, D_VE1_601B584, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_52, */ {(void*) D_VE1_6005780, 0, (ObjectFunc) Venom1_80193540, D_VE1_601B5F4, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_52, */ {(void*) D_VE1_6005780, 0, (ObjectFunc) Venom1_Scenery52_Update, D_VE1_601B5F4, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_53, */ {(void*) D_VE1_6003610, 0, (ObjectFunc) NULL, D_VE1_601B644, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_54, */ {(void*) D_CO_6000E00, 0, (ObjectFunc) Scenery54_Update, D_CO_603E0EC, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_55, */ {(void*) D_CO_6013B50, 0, (ObjectFunc) NULL, D_CO_603E88C, 1000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_56, */ {(void*) Corneria_8018F31C, 2, (ObjectFunc) Corneria_8018F044, D_CO_603E8A8, 1000.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_57, */ {(void*) Titania_8018F8B8, 1, (ObjectFunc) Titania_8018F4D8, D_TI_6006BF0, 800.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_WATERFALL, */ {(void*) aCoWaterfallDL, 0, (ObjectFunc) CoWaterfall_Update, aCoWaterfallHitbox, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_ROCKWALL, */ {(void*) aCoRockwallDL, 0, (ObjectFunc) NULL, aCoRockwallHitbox, 1000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_CO_DOORS, */ {(void*) Corneria_Doors_Draw, 2, (ObjectFunc) Corneria_Doors_Update, aCoDoorsHitbox, 1000.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_57, */ {(void*) Titania_Scenery57_Draw, 1, (ObjectFunc) Titania_Scenery57_Update, D_TI_6006BF0, 800.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_58, */ {(void*) D_TI1_700BE00, 0, (ObjectFunc) NULL, D_TI_6006C44, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_59, */ {(void*) D_MA_6024010, 0, (ObjectFunc) NULL, D_MA_603626C, 300.0f, 0, 0, 5, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_60, */ {(void*) D_MA_6027180, 0, (ObjectFunc) NULL, D_MA_6036288, 400.0f, 0, 0, 5, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_61, */ {(void*) Macbeth_801A2A78, 1, (ObjectFunc) NULL, D_MA_60362A4, 200.0f, 0, 0, 5, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_61, */ {(void*) Macbeth_Scenery61_Draw, 1, (ObjectFunc) NULL, D_MA_60362A4, 200.0f, 0, 0, 5, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_62, */ {(void*) D_MA_60270E0, 0, (ObjectFunc) NULL, gNoHitbox, 1500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_63, */ {(void*) D_MA_6013960, 0, (ObjectFunc) NULL, D_MA_6036894, 500.0f, 0, 0, 5, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_64, */ {(void*) D_MA_600AF40, 0, (ObjectFunc) NULL, D_MA_60368E0, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_65, */ {(void*) Macbeth_801A6608, 1, (ObjectFunc) NULL, D_MA_6036724, 400.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_65, */ {(void*) Macbeth_Scenery65_Draw, 1, (ObjectFunc) NULL, D_MA_6036724, 400.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_66, */ {(void*) D_MA_601F1D0, 0, (ObjectFunc) NULL, D_MA_60362D8, 2500.0f, 0, 0, 5, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_67, */ {(void*) D_MA_60238F0, 0, (ObjectFunc) NULL, D_MA_6036328, 2000.0f, 0, 0, 5, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_68, */ {(void*) D_MA_601B7C0, 0, (ObjectFunc) NULL, D_MA_60362F4, 2500.0f, 0, 0, 5, 0, 0.0f, 0 },
|
||||
@@ -170,42 +170,42 @@ ObjectInfo gObjectInfo[] = {
|
||||
/* OBJ_SCENERY_74, */ {(void*) D_MA_602DC20, 0, (ObjectFunc) NULL, D_MA_603643C, 1000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_75, */ {(void*) D_MA_601B0D0, 0, (ObjectFunc) NULL, D_MA_6036760, 3000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_76, */ {(void*) D_MA_60075D0, 0, (ObjectFunc) NULL, gNoHitbox, 1000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_77, */ {(void*) Macbeth_801A2B24, 1, (ObjectFunc) NULL, D_MA_6036344, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_78, */ {(void*) Macbeth_801A2B24, 1, (ObjectFunc) NULL, gNoHitbox, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_79, */ {(void*) Macbeth_801A2B24, 1, (ObjectFunc) NULL, gNoHitbox, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_80, */ {(void*) Macbeth_801A2B24, 1, (ObjectFunc) NULL, gNoHitbox, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_81, */ {(void*) Macbeth_801A2B24, 1, (ObjectFunc) NULL, gNoHitbox, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_82, */ {(void*) Macbeth_801A2B24, 1, (ObjectFunc) NULL, gNoHitbox, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_83, */ {(void*) Macbeth_801A3240, 1, (ObjectFunc) Macbeth_801A2DD8, gNoHitbox, 15000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_84, */ {(void*) Macbeth_801A2B24, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_85, */ {(void*) Macbeth_801A2B24, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_86, */ {(void*) Macbeth_801A2B24, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_87, */ {(void*) Macbeth_801A2B24, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_88, */ {(void*) Macbeth_801A2B24, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_89, */ {(void*) Macbeth_801A2B24, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_90, */ {(void*) Macbeth_801A2B24, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_91, */ {(void*) Macbeth_801A2B24, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_92, */ {(void*) Macbeth_801A23AC, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_93, */ {(void*) Macbeth_801A23AC, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_94, */ {(void*) Macbeth_801A23AC, 1, (ObjectFunc) NULL, gNoHitbox, 15000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_95, */ {(void*) Macbeth_801A23AC, 1, (ObjectFunc) NULL, gNoHitbox, 15000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_96, */ {(void*) Macbeth_801A23AC, 1, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_97, */ {(void*) Macbeth_801A23AC, 1, (ObjectFunc) NULL, gNoHitbox, 15000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_98, */ {(void*) Macbeth_801A23AC, 1, (ObjectFunc) NULL, gNoHitbox, 15000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_99, */ {(void*) Macbeth_801A23AC, 1, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_100 */ {(void*) Macbeth_801A23AC, 1, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_101 */ {(void*) Macbeth_801A23AC, 1, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_102 */ {(void*) Macbeth_801A23AC, 1, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_103 */ {(void*) Macbeth_801A23AC, 1, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_104 */ {(void*) Macbeth_801A23AC, 1, (ObjectFunc) Macbeth_801A0BD8, D_MA_6036594, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_105 */ {(void*) Macbeth_801A23AC, 1, (ObjectFunc) NULL, D_MA_6036204, 1300.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_77, */ {(void*) Macbeth_SceneryDoodad2_Draw, 1, (ObjectFunc) NULL, D_MA_6036344, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_78, */ {(void*) Macbeth_SceneryDoodad2_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_79, */ {(void*) Macbeth_SceneryDoodad2_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_80, */ {(void*) Macbeth_SceneryDoodad2_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_81, */ {(void*) Macbeth_SceneryDoodad2_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_82, */ {(void*) Macbeth_SceneryDoodad2_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_83, */ {(void*) Macbeth_Scenery83_Draw, 1, (ObjectFunc) Macbeth_Scenery83_Update, gNoHitbox, 15000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_84, */ {(void*) Macbeth_SceneryDoodad2_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_85, */ {(void*) Macbeth_SceneryDoodad2_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_86, */ {(void*) Macbeth_SceneryDoodad2_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_87, */ {(void*) Macbeth_SceneryDoodad2_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_88, */ {(void*) Macbeth_SceneryDoodad2_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_89, */ {(void*) Macbeth_SceneryDoodad2_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_90, */ {(void*) Macbeth_SceneryDoodad2_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_91, */ {(void*) Macbeth_SceneryDoodad2_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_92, */ {(void*) Macbeth_SceneryDoodad_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_93, */ {(void*) Macbeth_SceneryDoodad_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_94, */ {(void*) Macbeth_SceneryDoodad_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 15000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_95, */ {(void*) Macbeth_SceneryDoodad_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 15000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_96, */ {(void*) Macbeth_SceneryDoodad_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_97, */ {(void*) Macbeth_SceneryDoodad_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 15000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_98, */ {(void*) Macbeth_SceneryDoodad_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 15000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_99, */ {(void*) Macbeth_SceneryDoodad_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_100 */ {(void*) Macbeth_SceneryDoodad_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_101 */ {(void*) Macbeth_SceneryDoodad_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_102 */ {(void*) Macbeth_SceneryDoodad_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_103 */ {(void*) Macbeth_SceneryDoodad_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_104 */ {(void*) Macbeth_SceneryDoodad_Draw, 1, (ObjectFunc) Macbeth_Scenery104_Update, D_MA_6036594, 2500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_105 */ {(void*) Macbeth_SceneryDoodad_Draw, 1, (ObjectFunc) NULL, D_MA_6036204, 1300.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_106 */ {(void*) D_SY_60097E0, 0, (ObjectFunc) NULL, D_SY_6034478, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_107 */ {(void*) D_SY_601D730, 0, (ObjectFunc) NULL, D_SY_603450C, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_108 */ {(void*) D_SY_60102C0, 0, (ObjectFunc) NULL, D_SY_6034588, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_109 */ {(void*) D_SY_60036A0, 0, (ObjectFunc) SectorY_801A4E44, D_SY_6034664, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_109 */ {(void*) D_SY_60036A0, 0, (ObjectFunc) SectorY_Scenery109_Update, D_SY_6034664, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_110 */ {(void*) D_SY_6005360, 0, (ObjectFunc) NULL, D_SY_6034770, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_111 */ {(void*) Scenery111_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 2000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_112 */ {(void*) D_SY_600F6C0, 0, (ObjectFunc) SectorY_801A52B8, D_SY_60347F0, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_112 */ {(void*) D_SY_600F6C0, 0, (ObjectFunc) SectorY_Scenery112_Update, D_SY_60347F0, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_113 */ {(void*) D_SY_601B610, 0, (ObjectFunc) NULL, gNoHitbox, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_114 */ {(void*) D_SY_601C6A0, 0, (ObjectFunc) NULL, gNoHitbox, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_115 */ {(void*) D_SY_60188D0, 0, (ObjectFunc) NULL, D_SY_603486C, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
@@ -219,13 +219,13 @@ ObjectInfo gObjectInfo[] = {
|
||||
/* OBJ_SCENERY_123 */ {(void*) D_AQ_60120F0, 0, (ObjectFunc) NULL, D_AQ_6030E4C, 2000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_124 */ {(void*) D_AQ_600EEF0, 0, (ObjectFunc) NULL, gNoHitbox, 2000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_125 */ {(void*) D_AQ_600BF80, 0, (ObjectFunc) NULL, D_AQ_6030E68, 2000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_126 */ {(void*) Aquas_801BE1FC, 1, (ObjectFunc) NULL, gNoHitbox, 2000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_127 */ {(void*) D_VE1_9005C80, 0, (ObjectFunc) Venom1_801924A8, D_VE1_601B678, 1000.0f, 0, 0, 42, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_126 */ {(void*) Aquas_Scenery126_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 2000.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_127 */ {(void*) D_VE1_9005C80, 0, (ObjectFunc) Venom1_Scenery127_Update, D_VE1_601B678, 1000.0f, 0, 0, 42, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_128 */ {(void*) D_VE1_9003F50, 0, (ObjectFunc) NULL, D_VE1_601B6C4, 3200.0f, 0, 0, 42, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_129 */ {(void*) D_VE1_900F060, 0, (ObjectFunc) NULL, D_VE1_601B710, 3200.0f, 0, 0, 42, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_130 */ {(void*) D_VE1_900F1D0, 0, (ObjectFunc) NULL, D_VE1_601B75C, 3200.0f, 0, 0, 42, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_131 */ {(void*) Andross_801935D4, 1, (ObjectFunc) Andross_8019356C, D_ANDROSS_C038BD8, 500.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_132 */ {(void*) Andross_8019350C, 1, (ObjectFunc) Andross_80193380, D_ANDROSS_C038A48, 500.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_131 */ {(void*) Andross_Scenery131_Draw, 1, (ObjectFunc) Andross_Scenery131_Update, D_ANDROSS_C038BD8, 500.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_132 */ {(void*) Andross_Scenery132_Draw, 1, (ObjectFunc) Andross_Scenery132_Update, D_ANDROSS_C038A48, 500.0f, 0, 0, 41, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_133 */ {(void*) D_TR_60030F0, 0, (ObjectFunc) NULL, D_TR_6009CC4, 1000.0f, 0, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_134 */ {(void*) D_VE2_6003000, 0, (ObjectFunc) NULL, D_ANDROSS_C038BA4, 0.0f, 0, 0, 41, 1, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_135 */ {(void*) D_VE2_6006890, 0, (ObjectFunc) NULL, D_ANDROSS_C038B40, 0.0f, 0, 0, 41, 1, 0.0f, 0 },
|
||||
@@ -249,172 +249,172 @@ ObjectInfo gObjectInfo[] = {
|
||||
/* OBJ_SCENERY_153 */ {(void*) D_BO_600B8B0, 0, (ObjectFunc) NULL, D_BO_6011C48, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_154 */ {(void*) aKaFLBaseDL, 0, (ObjectFunc) NULL, D_KA_601115C, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_155 */ {(void*) NULL, 0, (ObjectFunc) NULL, gNoHitbox, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_156 */ {(void*) SectorY_80197CB8, 1, (ObjectFunc) NULL, D_SY_6034368, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_157 */ {(void*) D_SZ_6001DA0, 0, (ObjectFunc) NULL, D_SZ_600924C, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_158 */ {(void*) D_SZ_6001360, 0, (ObjectFunc) NULL, D_SZ_60092E8, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_156 */ {(void*) SectorY_Scenery156_Draw, 1, (ObjectFunc) NULL, D_SY_6034368, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_157 */ {(void*) aSzSpaceJunk3DL, 0, (ObjectFunc) NULL, D_SZ_600924C, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_158 */ {(void*) aSzSpaceJunk1DL, 0, (ObjectFunc) NULL, D_SZ_60092E8, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_159 */ {(void*) D_VE2_6008370, 0, (ObjectFunc) NULL, D_VE2_601668C, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SCENERY_160 */ {(void*) D_VE2_6010960, 0, (ObjectFunc) NULL, D_VE2_6016714, 0.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_CO_POLE */ {(void*) D_CO_602F7C0, 0, (ObjectFunc) Sprite_UpdateDoodad, D_CO_603E468, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_CO_TREE */ {(void*) D_CO_601C9B0, 0, (ObjectFunc) Sprite_UpdateDoodad, D_CO_603E484, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_FO_POLE */ {(void*) D_FO_600A420, 0, (ObjectFunc) Sprite_UpdateDoodad, D_FO_600FE9C, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_CO_POLE */ {(void*) aCoPoleDL, 0, (ObjectFunc) Sprite_UpdateDoodad, aCoPoleHitbox, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_CO_TREE */ {(void*) aCoTreeDL, 0, (ObjectFunc) Sprite_UpdateDoodad, aCoTreeHitbox, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_FO_POLE */ {(void*) aFoPoleDL, 0, (ObjectFunc) Sprite_UpdateDoodad, aFoPoleHitbox, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_FOG_SHADOW */ {(void*) FogShadow_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 1800.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_CO_RUIN1 */ {(void*) D_CO_602DCA0, 0, (ObjectFunc) NULL, gNoHitbox, -100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_CO_RUIN2 */ {(void*) D_CO_601F500, 0, (ObjectFunc) NULL, gNoHitbox, -100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_167 */ {(void*) Sprite167_Draw, 1, (ObjectFunc) Sprite167_Update, gNoHitbox, 500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_168 */ {(void*) Sprite168_Draw, 1, (ObjectFunc) NULL, gNoHitbox, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_TI_CACTUS */ {(void*) D_TI_60023B0, 0, (ObjectFunc) Titania_Cactus_Update, D_TI_60068BC, 100.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_CO_SMOKE */ {(void*) NULL, 1, (ObjectFunc) Corneria_801875A4, gNoHitbox, 0.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_TI_CACTUS */ {(void*) aTiCactusDL, 0, (ObjectFunc) Titania_Cactus_Update, aTiCactusHitbox, 100.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_CO_SMOKE */ {(void*) NULL, 1, (ObjectFunc) Corneria_Smoke_Update, gNoHitbox, 0.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_VE1_BOSS_TRIGGER1 */ {(void*) NULL, 1, (ObjectFunc) Venom1_BossTrigger1_Update, gNoHitbox, 0.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_VE1_BOSS_TRIGGER2 */ {(void*) NULL, 1, (ObjectFunc) Venom1_BossTrigger2_Update, gNoHitbox, 0.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_VE1_BOSS_TRIGGER3 */ {(void*) NULL, 1, (ObjectFunc) Venom1_BossTrigger3_Update, gNoHitbox, 0.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_VE1_BOSS_TRIGGER4 */ {(void*) NULL, 1, (ObjectFunc) Venom1_BossTrigger4_Update, gNoHitbox, 0.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_SPRITE_GFOX_TARGET */ {(void*) NULL, 1, (ObjectFunc) NULL, gNoHitbox, 1000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_176 */ {(void*) Corneria_8018BAAC, 2, (ObjectFunc) Corneria_8018AED0, D_CO_603E5D0, 500.0f, 0, 0, 39, 1, 200.0f, 1 },
|
||||
/* OBJ_ACTOR_177 */ {(void*) Corneria_8018BBA4, 2, (ObjectFunc) Corneria_8018B15C, D_CO_603E5D0, 500.0f, 0, 0, 39, 1, 200.0f, 1 },
|
||||
/* OBJ_ACTOR_178 */ {(void*) Corneria_8018BBF8, 2, (ObjectFunc) Corneria_8018B418, D_CO_603E5D0, 500.0f, 0, 0, 39, 1, 200.0f, 1 },
|
||||
/* OBJ_ACTOR_179 */ {(void*) Corneria_8018BD7C, 2, (ObjectFunc) Corneria_8018B58C, D_CO_603E604, 500.0f, 0, 0, 39, 1, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_180 */ {(void*) func_edisplay_8005B6A4, 1, (ObjectFunc) func_enmy_80066A80, gNoHitbox, 1000.0f, 0, 0, 39, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_181 */ {(void*) D_ME_6018C00, 0, (ObjectFunc) Meteo_8018756C, D_ME_602F6EC, 200.0f, 0, 0, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_182 */ {(void*) func_edisplay_8005B71C, 1, (ObjectFunc) Meteo_80187650, D_ME_602F708, 100.0f, 0, 1, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_183 */ {(void*) Meteo_8018DA6C, 1, (ObjectFunc) Meteo_8018D9EC, gNoHitbox, 100.0f, 0, 1, 39, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_184 */ {(void*) Meteo_8018DAEC, 1, (ObjectFunc) Meteo_8018D9EC, gNoHitbox, 100.0f, 0, 1, 39, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_185 */ {(void*) Meteo_8018DB6C, 1, (ObjectFunc) Meteo_8018D9EC, gNoHitbox, 100.0f, 0, 1, 39, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_186 */ {(void*) func_edisplay_8005B7CC, 1, (ObjectFunc) Meteo_8018795C, D_ME_602F724, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_187 */ {(void*) D_ME_6018450, 0, (ObjectFunc) Meteo_801877C4, D_ME_602F740, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_188 */ {(void*) Aquas_801BEC74, 1, (ObjectFunc) Aquas_801BEC68, D_AQ_6030BE0, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_CO_GARUDA_1 */ {(void*) Corneria_CoGaruda1_Draw, 2, (ObjectFunc) Corneria_CoGaruda1_Update, CoGarudaHitbox, 500.0f, 0, 0, 39, 1, 200.0f, 1 },
|
||||
/* OBJ_ACTOR_CO_GARUDA_2 */ {(void*) Corneria_CoGaruda2_Draw, 2, (ObjectFunc) Corneria_CoGaruda2_Update, CoGarudaHitbox, 500.0f, 0, 0, 39, 1, 200.0f, 1 },
|
||||
/* OBJ_ACTOR_CO_GARUDA_3 */ {(void*) Corneria_CoGaruda3_Draw, 2, (ObjectFunc) Corneria_CoGaruda3_Update, CoGarudaHitbox, 500.0f, 0, 0, 39, 1, 200.0f, 1 },
|
||||
/* OBJ_ACTOR_CO_GARUDA_DESTROY */ {(void*) Corneria_CoGarudaDestroy_Draw, 2, (ObjectFunc) Corneria_CoGarudaDestroy_Update, aCoGarudaDestroyHitbox, 500.0f, 0, 0, 39, 1, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_180 */ {(void*) Actor180_Draw, 1, (ObjectFunc) Actor180_Update, gNoHitbox, 1000.0f, 0, 0, 39, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_181 */ {(void*) D_ME_6018C00, 0, (ObjectFunc) Meteo_Actor181_Update, D_ME_602F6EC, 200.0f, 0, 0, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_182 */ {(void*) Actor182_Draw, 1, (ObjectFunc) Meteo_Actor182_Update, D_ME_602F708, 100.0f, 0, 1, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_183 */ {(void*) Meteo_Actor183_Draw, 1, (ObjectFunc) Meteo_ActorDoodad_Update, gNoHitbox, 100.0f, 0, 1, 39, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_184 */ {(void*) Meteo_Actor184_Draw, 1, (ObjectFunc) Meteo_ActorDoodad_Update, gNoHitbox, 100.0f, 0, 1, 39, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_185 */ {(void*) Meteo_Actor185_Draw, 1, (ObjectFunc) Meteo_ActorDoodad_Update, gNoHitbox, 100.0f, 0, 1, 39, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_186 */ {(void*) Actor186_Draw, 1, (ObjectFunc) Meteo_Actor186_Update, D_ME_602F724, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_187 */ {(void*) D_ME_6018450, 0, (ObjectFunc) Meteo_Actor187_Update, D_ME_602F740, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_188 */ {(void*) Aquas_Actor188_Draw, 1, (ObjectFunc) Aquas_Actor188_Update, D_AQ_6030BE0, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_DEBRIS */ {(void*) ActorDebris_Draw, 1, (ObjectFunc) ActorDebris_Update, gNoHitbox, 0.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_190 */ {(void*) func_edisplay_8005B848, 1, (ObjectFunc) func_enmy_800656D4, gActor190_191Hitbox, 100.0f, 0, 1, 39, 0, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_191 */ {(void*) func_edisplay_8005B848, 1, (ObjectFunc) func_enmy_800656D4, gActor190_191Hitbox, 100.0f, 0, 1, 39, 0, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_192 */ {(void*) func_edisplay_8005B9A4, 1, (ObjectFunc) func_enmy_8006654C, D_CO_603E54C, 200.0f, 0, 1, 39, 0, 50.0f, 1 },
|
||||
/* OBJ_ACTOR_193 */ {(void*) func_edisplay_8005BA30, 1, (ObjectFunc) func_enmy_800669A0, D_CO_603E598, 100.0f, 0, 1, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_MISSILE_SEEK_TEAM */ {(void*) Actor190_191_Draw, 1, (ObjectFunc) Actors190_191_Update, gActor190_191Hitbox, 100.0f, 0, 1, 39, 0, 1.0f, 0 },
|
||||
/* OBJ_MISSILE_SEEK_PLAYER */ {(void*) Actor190_191_Draw, 1, (ObjectFunc) Actors190_191_Update, gActor190_191Hitbox, 100.0f, 0, 1, 39, 0, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_192 */ {(void*) Actor192_Draw, 1, (ObjectFunc) Actor192_Update, D_CO_603E54C, 200.0f, 0, 1, 39, 0, 50.0f, 1 },
|
||||
/* OBJ_ACTOR_193 */ {(void*) Actor193_Draw, 1, (ObjectFunc) Actor193_Update, D_CO_603E598, 100.0f, 0, 1, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_194 */ {(void*) Actor194_Draw, 1, (ObjectFunc) Actor194_Update, gActor194Hitbox, 200.0f, 0, 1, 39, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_CUTSCENE */ {(void*) ActorCutscene_Draw, 1, (ObjectFunc) ActorCutscene_Update, gNoHitbox, 20000.0f, 0, 1, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_196 */ {(void*) Actor196_Draw, 1, (ObjectFunc) Actor196_Update, D_CO_603E5B4, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_ALLRANGE */ {(void*) ActorAllRange_Draw, 1, (ObjectFunc) ActorAllRange_Update, gActorAllRangeHItbox, 20000.0f, 0, 1, 39, 1, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_TEAM_BOSS */ {(void*) ActorAllRange_Draw, 1, (ObjectFunc) ActorTeamBoss_Update, gTeamHitbox, 20000.0f, 0, 0, 39, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_199 */ {(void*) Andross_80188448, 1, (ObjectFunc) Andross_801880E4, gNoHitbox, 20000.0f, 0, 0, 39, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_199 */ {(void*) Andross_Actor199_Draw, 1, (ObjectFunc) Andross_Actor199_Update, gNoHitbox, 20000.0f, 0, 0, 39, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_EVENT */ {(void*) ActorEvent_Draw, 1, (ObjectFunc) ActorEvent_Update, gNoHitbox, 2000.0f, 0, 1, 39, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_201 */ {(void*) Actor201_Draw, 1, (ObjectFunc) Actor201_Update, D_ME_602F684, 100.0f, 0, 1, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_202 */ {(void*) Actor202_Draw, 1, (ObjectFunc) Actor202_Update, D_ME_602F6A0, 100.0f, 0, 1, 39, 0, 180.0f, 1 },
|
||||
/* OBJ_ACTOR_SLIPPY_SX */ {(void*) SectorX_8018F884, 1, (ObjectFunc) SectorX_8018F330, gNoHitbox, 1000.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_SLIPPY_SX */ {(void*) SectorX_Slippy_Draw, 1, (ObjectFunc) SectorX_Slippy_Update, gNoHitbox, 1000.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_204 */ {(void*) SectorY_Actor204_Draw, 1, (ObjectFunc) SectorY_Actor204_Update, D_SY_603405C, 1000.0f, 0, 0, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_205 */ {(void*) Macbeth_801A12C4, 1, (ObjectFunc) Macbeth_8019C778, D_MA_60359C8, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_206 */ {(void*) Macbeth_801A12C4, 1, (ObjectFunc) Macbeth_801AC438, D_MA_6035A48, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_207 */ {(void*) Macbeth_801AC294, 2, (ObjectFunc) Macbeth_801A7E7C, D_MA_603677C, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_208 */ {(void*) Macbeth_801A12C4, 1, (ObjectFunc) Macbeth_8019EA60, D_MA_6035A14, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_209 */ {(void*) Macbeth_801A12C4, 1, (ObjectFunc) Macbeth_8019D700, D_MA_6035AE0, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_210 */ {(void*) Macbeth_801A12C4, 1, (ObjectFunc) Macbeth_8019CE88, D_MA_6035D9C, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_211 */ {(void*) Macbeth_801A12C4, 1, (ObjectFunc) Macbeth_8019E410, D_MA_6035E04, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_212 */ {(void*) Macbeth_801A12C4, 1, (ObjectFunc) Macbeth_8019FF9C, D_MA_60360C0, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_213 */ {(void*) Macbeth_801A12C4, 1, (ObjectFunc) Macbeth_8019EE68, D_MA_6036154, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_214 */ {(void*) Macbeth_801A43BC, 1, (ObjectFunc) Macbeth_801A3E98, D_MA_6036458, 300.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_215 */ {(void*) Macbeth_801A4A64, 1, (ObjectFunc) Macbeth_801A46A0, D_MA_60364C0, 300.0f, 0, 1, 40, 1, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_216 */ {(void*) Macbeth_801A5F90, 1, (ObjectFunc) Macbeth_801A5E54, D_MA_60366EC, 200.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_217 */ {(void*) Macbeth_801A6100, 1, (ObjectFunc) Macbeth_801A5FD0, D_MA_6036708, 200.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_218 */ {(void*) Macbeth_801A6540, 1, (ObjectFunc) Macbeth_801A6144, D_MA_6036728, 200.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_219 */ {(void*) Macbeth_801A68EC, 1, (ObjectFunc) Macbeth_801A67C8, D_MA_6036744, 300.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_220 */ {(void*) Macbeth_801ADAC8, 1, (ObjectFunc) Macbeth_801AD6F0, D_MA_6036930, 200.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_221 */ {(void*) Macbeth_801AE2C0, 1, (ObjectFunc) Macbeth_801ADD68, D_MA_603694C, 300.0f, 0, 0, 40, 1, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_222 */ {(void*) Macbeth_801AEEFC, 1, (ObjectFunc) Macbeth_801AEC04, D_MA_6036968, 300.0f, 0, 0, 40, 1, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_223 */ {(void*) Macbeth_801A54E8, 1, (ObjectFunc) Macbeth_801A4B24, D_MA_60364DC, 300.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_224 */ {(void*) NULL, 1, (ObjectFunc) Titania_80189194, gNoHitbox, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_225 */ {(void*) D_TI1_700AB70, 0, (ObjectFunc) Titania_8018AB44, D_TI_60064AC, 50.0f, 0, 0, 39, 1, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_226 */ {(void*) Titania_80189AFC, 1, (ObjectFunc) Titania_801895B8, D_TI_60064C8, 300.0f, 0, 0, 39, 1, 70.0f, 1 },
|
||||
/* OBJ_ACTOR_227 */ {(void*) Titania_8018E5B4, 1, (ObjectFunc) Titania_8018E54C, D_TI_60067C4, 0.0f, 0, 0, 39, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_228 */ {(void*) Titania_8018EF14, 1, (ObjectFunc) Titania_8018E5F8, D_TI_6006808, 0.0f, 0, 0, 39, 1, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_229 */ {(void*) Titania_8018E2D8, 1, (ObjectFunc) Titania_8018C8A8, D_TI_6006A3C, 1000.0f, 0, 0, 20, 1, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_230 */ {(void*) Titania_8018AABC, 1, (ObjectFunc) Titania_8018A544, D_TI_600683C, 0.0f, 0, 1, 39, 1, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_231 */ {(void*) Titania_8018BE84, 1, (ObjectFunc) Titania_8018B9D0, D_TI_6006858, 0.0f, 0, 0, 39, 1, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_232 */ {(void*) Titania_8018B6AC, 1, (ObjectFunc) Titania_8018B268, D_TI_6006890, 0.0f, 0, 0, 39, 1, 20.0f, 1 },
|
||||
/* OBJ_ACTOR_233 */ {(void*) Titania_8018A1C0, 1, (ObjectFunc) Titania_80189CC8, D_TI_60068F0, 200.0f, 0, 0, 39, 1, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_205 */ {(void*) Macbeth_ActorDoodad_Draw, 1, (ObjectFunc) Macbeth_Actor205_Update, D_MA_60359C8, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_206 */ {(void*) Macbeth_ActorDoodad_Draw, 1, (ObjectFunc) Macbeth_Actor206_Update, D_MA_6035A48, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_207 */ {(void*) Macbeth_Actor207_Draw, 2, (ObjectFunc) Macbeth_Actor207_Update, D_MA_603677C, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_208 */ {(void*) Macbeth_ActorDoodad_Draw, 1, (ObjectFunc) Macbeth_Actor208_Update, D_MA_6035A14, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_209 */ {(void*) Macbeth_ActorDoodad_Draw, 1, (ObjectFunc) Macbeth_Actor209_Update, D_MA_6035AE0, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_210 */ {(void*) Macbeth_ActorDoodad_Draw, 1, (ObjectFunc) Macbeth_Actor210_Update, D_MA_6035D9C, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_211 */ {(void*) Macbeth_ActorDoodad_Draw, 1, (ObjectFunc) Macbeth_Actor211_Update, D_MA_6035E04, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_212 */ {(void*) Macbeth_ActorDoodad_Draw, 1, (ObjectFunc) Macbeth_Actor212_Update, D_MA_60360C0, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_213 */ {(void*) Macbeth_ActorDoodad_Draw, 1, (ObjectFunc) Macbeth_Actor213_Update, D_MA_6036154, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_214 */ {(void*) Macbeth_Actor214_Draw, 1, (ObjectFunc) Macbeth_Actor214_Update, D_MA_6036458, 300.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_215 */ {(void*) Macbeth_Actor215_Draw, 1, (ObjectFunc) Macbeth_Actor215_Update, D_MA_60364C0, 300.0f, 0, 1, 40, 1, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_216 */ {(void*) Macbeth_Actor216_Draw, 1, (ObjectFunc) Macbeth_Actor216_Update, D_MA_60366EC, 200.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_217 */ {(void*) Macbeth_Actor217_Draw, 1, (ObjectFunc) Macbeth_Actor217_Update, D_MA_6036708, 200.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_218 */ {(void*) Macbeth_Actor218_Draw, 1, (ObjectFunc) Macbeth_Actor218_Update, D_MA_6036728, 200.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_219 */ {(void*) Macbeth_Actor219_Draw, 1, (ObjectFunc) Macbeth_Actor219_Update, D_MA_6036744, 300.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_220 */ {(void*) Macbeth_Actor220_Draw, 1, (ObjectFunc) Macbeth_Actor220_Update, D_MA_6036930, 200.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_221 */ {(void*) Macbeth_Actor221_Draw, 1, (ObjectFunc) Macbeth_Actor221_Update, D_MA_603694C, 300.0f, 0, 0, 40, 1, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_222 */ {(void*) Macbeth_Actor222_Draw, 1, (ObjectFunc) Macbeth_Actor222_Update, D_MA_6036968, 300.0f, 0, 0, 40, 1, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_223 */ {(void*) Macbeth_Actor223_Draw, 1, (ObjectFunc) Macbeth_Actor223_Update, D_MA_60364DC, 300.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_224 */ {(void*) NULL, 1, (ObjectFunc) Titania_Actor224_Update, gNoHitbox, 200.0f, 0, 0, 39, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_225 */ {(void*) D_TI1_700AB70, 0, (ObjectFunc) Titania_Actor225_Update, D_TI_60064AC, 50.0f, 0, 0, 39, 1, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_226 */ {(void*) Titania_Actor226_Draw, 1, (ObjectFunc) Titania_Actor226_Update, D_TI_60064C8, 300.0f, 0, 0, 39, 1, 70.0f, 1 },
|
||||
/* OBJ_ACTOR_227 */ {(void*) Titania_Actor227_Draw, 1, (ObjectFunc) Titania_Actor227_Update, D_TI_60067C4, 0.0f, 0, 0, 39, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_228 */ {(void*) Titania_Actor228_Draw, 1, (ObjectFunc) Titania_Actor228_Update, D_TI_6006808, 0.0f, 0, 0, 39, 1, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_229 */ {(void*) Titania_Actor229_Draw, 1, (ObjectFunc) Titania_Actor229_Update, D_TI_6006A3C, 1000.0f, 0, 0, 20, 1, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_230 */ {(void*) Titania_Actor230_Draw, 1, (ObjectFunc) Titania_Actor230_Update, D_TI_600683C, 0.0f, 0, 1, 39, 1, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_231 */ {(void*) Titania_Actor231_Draw, 1, (ObjectFunc) Titania_Actor231_Update, D_TI_6006858, 0.0f, 0, 0, 39, 1, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_232 */ {(void*) Titania_Actor232_Draw, 1, (ObjectFunc) Titania_Actor232_Update, D_TI_6006890, 0.0f, 0, 0, 39, 1, 20.0f, 1 },
|
||||
/* OBJ_ACTOR_233 */ {(void*) Titania_Actor233_Draw, 1, (ObjectFunc) Titania_Actor233_Update, D_TI_60068F0, 200.0f, 0, 0, 39, 1, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_234 */ {(void*) Actor234_Draw, 1, (ObjectFunc) Actor234_Update, gNoHitbox, 2000.0f, 0, 0, 39, 0, 0.0f, 5 },
|
||||
/* OBJ_ACTOR_235 */ {(void*) Zoness_80190430, 2, (ObjectFunc) Zoness_801904CC, D_ZO_602C294, 1000.0f, 0, 1, 40, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_236 */ {(void*) Zoness_80190F08, 1, (ObjectFunc) Zoness_80190A00, D_ZO_602BC58, 5000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_235 */ {(void*) Zoness_Actor235_Draw, 2, (ObjectFunc) Zoness_Actor235_Update, D_ZO_602C294, 1000.0f, 0, 1, 40, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_236 */ {(void*) Zoness_Actor236_Draw, 1, (ObjectFunc) Zoness_Actor236_Update, D_ZO_602BC58, 5000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_237 */ {(void*) Actor237_Draw, 1, (ObjectFunc) Actor237_Update, gNoHitbox, 200.0f, 0, 0, 40, 0, 0.0f, 2 },
|
||||
/* OBJ_ACTOR_238 */ {(void*) Zoness_801914C4, 2, (ObjectFunc) Zoness_80191010, gCubeHitbox100, 200.0f, 0, 1, 40, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_238 */ {(void*) Zoness_Actor238_Draw, 2, (ObjectFunc) Zoness_Actor238_Update, gCubeHitbox100, 200.0f, 0, 1, 40, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_239 */ {(void*) NULL, 1, (ObjectFunc) NULL, gNoHitbox, 1000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_240 */ {(void*) Zoness_80191B4C, 1, (ObjectFunc) Zoness_80191680, gCubeHitbox100, 1500.0f, 0, 1, 40, 0, 20.0f, 0 },
|
||||
/* OBJ_ACTOR_241 */ {(void*) Zoness_80191DB0, 1, (ObjectFunc) Zoness_80191BC4, gActor241Hitbox, 1500.0f, 0, 1, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_242 */ {(void*) Zoness_80191FFC, 2, (ObjectFunc) Zoness_80192094, D_ZO_602BE3C, 500.0f, 0, 0, 40, 0, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_243 */ {(void*) Zoness_80192C18, 2, (ObjectFunc) Zoness_80192834, gCubeHitbox100, 0.0f, 0, 1, 40, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_244 */ {(void*) Zoness_80193240, 2, (ObjectFunc) Zoness_80192E64, D_ZO_602BE58, 2000.0f, 0, 0, 40, 0, 50.0f, 0 },
|
||||
/* OBJ_ACTOR_245 */ {(void*) Zoness_8019983C, 1, (ObjectFunc) Zoness_8019969C, gCubeHitbox100, 200.0f, 0, 0, 40, 0, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_246 */ {(void*) Zoness_80199E24, 1, (ObjectFunc) Zoness_80199A28, gCubeHitbox100, 2000.0f, 0, 0, 40, 0, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_247 */ {(void*) Zoness_8019D3C4, 1, (ObjectFunc) Zoness_8019D15C, D_ZO_602BFC4, 500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_248 */ {(void*) Zoness_8019A1FC, 1, (ObjectFunc) Zoness_80199F10, gCubeHitbox150, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_249 */ {(void*) Zoness_8019ACCC, 1, (ObjectFunc) Zoness_8019A5D4, gCubeHitbox200, 5000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_250 */ {(void*) Zoness_8019B7DC, 1, (ObjectFunc) Zoness_8019B548, D_ZO_602C1D4, 10000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_251 */ {(void*) Zoness_8019BDE0, 2, (ObjectFunc) Zoness_8019B854, D_ZO_602C218, 1000.0f, 0, 0, 40, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_252 */ {(void*) Zoness_8019C1CC, 1, (ObjectFunc) Zoness_8019BE48, D_ZO_602C234, 200.0f, 0, 0, 40, 0, 80.0f, 1 },
|
||||
/* OBJ_ACTOR_253 */ {(void*) Zoness_8019C83C, 1, (ObjectFunc) Zoness_8019C454, D_ZO_602C250, 300.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_254 */ {(void*) Zoness_8019CE58, 1, (ObjectFunc) Zoness_8019CBEC, D_ZO_602C2B0, 300.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_255 */ {(void*) Aquas_801AE168, 1, (ObjectFunc) Aquas_801AD6C0, D_AQ_6030BFC, 500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_256 */ {(void*) Aquas_801AEB44, 1, (ObjectFunc) Aquas_801AE3D8, D_AQ_6030C18, 10000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_257 */ {(void*) Aquas_801B099C, 1, (ObjectFunc) Aquas_801AFA5C, D_AQ_6030C44, 10000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_258 */ {(void*) Aquas_801B0EC0, 1, (ObjectFunc) Aquas_801B0B60, gCubeHitbox100, 200.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_259 */ {(void*) Aquas_801B619C, 2, (ObjectFunc) Aquas_801B638C, D_AQ_6031398, 10000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_260 */ {(void*) Aquas_801B90DC, 2, (ObjectFunc) Aquas_801B7C78, D_AQ_60313CC, 300.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_261 */ {(void*) Aquas_801B504C, 2, (ObjectFunc) Aquas_801B50E8, D_AQ_6031400, 300.0f, 0, 0, 40, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_262 */ {(void*) Aquas_801B7A24, 2, (ObjectFunc) Aquas_801B6FF8, D_AQ_603144C, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_263 */ {(void*) Aquas_801BA108, 2, (ObjectFunc) Aquas_801B91A4, D_AQ_6031480, 200.0f, 0, 0, 40, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_264 */ {(void*) Aquas_801BA4E4, 1, (ObjectFunc) Aquas_801BA26C, gCubeHitbox100, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_265 */ {(void*) Aquas_801BAD7C, 1, (ObjectFunc) Aquas_801BA6A4, D_AQ_6031500, 200.0f, 0, 0, 40, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_266 */ {(void*) Aquas_801BB204, 2, (ObjectFunc) Aquas_801BADF8, D_AQ_6031538, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_267 */ {(void*) Aquas_801BC930, 2, (ObjectFunc) Aquas_801BB79C, D_AQ_6031554, 800.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_268 */ {(void*) Aquas_801BDE6C, 1, (ObjectFunc) Aquas_801BD54C, D_AQ_6031570, 10000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_269 */ {(void*) Aquas_801BD264, 1, (ObjectFunc) Aquas_801BC9A0, D_AQ_6030D20, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_270 */ {(void*) Aquas_801BEB1C, 1, (ObjectFunc) Aquas_801BE3F8, D_AQ_60314C8, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_240 */ {(void*) Zoness_Actor240_Draw, 1, (ObjectFunc) Zoness_Actor240_Update, gCubeHitbox100, 1500.0f, 0, 1, 40, 0, 20.0f, 0 },
|
||||
/* OBJ_ACTOR_241 */ {(void*) Zoness_Actor241_Draw, 1, (ObjectFunc) Zoness_Actor241_Update, gActor241Hitbox, 1500.0f, 0, 1, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_242 */ {(void*) Zoness_Actor242_Draw, 2, (ObjectFunc) Zoness_Actor242_Update, D_ZO_602BE3C, 500.0f, 0, 0, 40, 0, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_243 */ {(void*) Zoness_Actor243_Draw, 2, (ObjectFunc) Zoness_Actor243_Update, gCubeHitbox100, 0.0f, 0, 1, 40, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_244 */ {(void*) Zoness_Actor244_Draw, 2, (ObjectFunc) Zoness_Actor244_Update, D_ZO_602BE58, 2000.0f, 0, 0, 40, 0, 50.0f, 0 },
|
||||
/* OBJ_ACTOR_245 */ {(void*) Zoness_Actor245_Draw, 1, (ObjectFunc) Zoness_Actor245_Update, gCubeHitbox100, 200.0f, 0, 0, 40, 0, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_246 */ {(void*) Zoness_Actor246_Draw, 1, (ObjectFunc) Zoness_Actor246_Update, gCubeHitbox100, 2000.0f, 0, 0, 40, 0, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_247 */ {(void*) Zoness_Actor247_Draw, 1, (ObjectFunc) Zoness_Actor247_Update, D_ZO_602BFC4, 500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_248 */ {(void*) Zoness_Actor248_Draw, 1, (ObjectFunc) Zoness_Actor248_Update, gCubeHitbox150, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_249 */ {(void*) Zoness_Actor249_Draw, 1, (ObjectFunc) Zoness_Actor249_Update, gCubeHitbox200, 5000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_250 */ {(void*) Zoness_Actor250_Draw, 1, (ObjectFunc) Zoness_Actor250_Update, D_ZO_602C1D4, 10000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_251 */ {(void*) Zoness_Actor251_Draw, 2, (ObjectFunc) Zoness_Actor251_Update, D_ZO_602C218, 1000.0f, 0, 0, 40, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_252 */ {(void*) Zoness_Actor252_Draw, 1, (ObjectFunc) Zoness_Actor252_Update, D_ZO_602C234, 200.0f, 0, 0, 40, 0, 80.0f, 1 },
|
||||
/* OBJ_ACTOR_253 */ {(void*) Zoness_Actor253_Draw, 1, (ObjectFunc) Zoness_Actor253_Update, D_ZO_602C250, 300.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_254 */ {(void*) Zoness_Actor254_Draw, 1, (ObjectFunc) Zoness_Actor254_Update, D_ZO_602C2B0, 300.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_255 */ {(void*) Aquas_Actor255_Draw, 1, (ObjectFunc) Aquas_Actor255_Update, D_AQ_6030BFC, 500.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_256 */ {(void*) Aquas_Actor256_Draw, 1, (ObjectFunc) Aquas_Actor256_Update, D_AQ_6030C18, 10000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_257 */ {(void*) Aquas_Actor257_Draw, 1, (ObjectFunc) Aquas_Actor257_Update, D_AQ_6030C44, 10000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_258 */ {(void*) Aquas_Actor258_Draw, 1, (ObjectFunc) Aquas_Actor258_Update, gCubeHitbox100, 200.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_259 */ {(void*) Aquas_Actor259_Draw, 2, (ObjectFunc) Aquas_Actor259_Update, D_AQ_6031398, 10000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_260 */ {(void*) Aquas_Actor260_Draw, 2, (ObjectFunc) Aquas_Actor260_Update, D_AQ_60313CC, 300.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_261 */ {(void*) Aquas_Actor261_Draw, 2, (ObjectFunc) Aquas_Actor261_Update, D_AQ_6031400, 300.0f, 0, 0, 40, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_262 */ {(void*) Aquas_Actor262_Draw, 2, (ObjectFunc) Aquas_Actor262_Update, D_AQ_603144C, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_263 */ {(void*) Aquas_Actor263_Draw, 2, (ObjectFunc) Aquas_Actor263_Update, D_AQ_6031480, 200.0f, 0, 0, 40, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_264 */ {(void*) Aquas_Actor264_Draw, 1, (ObjectFunc) Aquas_Actor264_Update, gCubeHitbox100, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_265 */ {(void*) Aquas_Actor265_Draw, 1, (ObjectFunc) Aquas_Actor265_Update, D_AQ_6031500, 200.0f, 0, 0, 40, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_266 */ {(void*) Aquas_Actor266_Draw, 2, (ObjectFunc) Aquas_Actor266_Update, D_AQ_6031538, 200.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_267 */ {(void*) Aquas_Actor267_Draw, 2, (ObjectFunc) Aquas_Actor267_Update, D_AQ_6031554, 800.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_268 */ {(void*) Aquas_Actor268_Draw, 1, (ObjectFunc) Aquas_Actor268_Update, D_AQ_6031570, 10000.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_269 */ {(void*) Aquas_Actor269_Draw, 1, (ObjectFunc) Aquas_Actor269_Update, D_AQ_6030D20, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_270 */ {(void*) Aquas_Actor270_Draw, 1, (ObjectFunc) Aquas_Actor270_Update, D_AQ_60314C8, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_271 */ {(void*) Actor271_Draw, 2, (ObjectFunc) Actor271_Update, D_BO_6011B24, 0.0f, 0, 0, 39, 0, 730.0f, 1 },
|
||||
/* OBJ_ACTOR_272 */ {(void*) Actor272_Draw, 1, (ObjectFunc) Actor272_Update, D_BO_6011BF4, 0.0f, 0, 0, 39, 0, 150.0f, 1 },
|
||||
/* OBJ_ACTOR_273 */ {(void*) Fortuna_80188FE4, 2, (ObjectFunc) Fortuna_80188AD0, D_FO_600FF30, 0.0f, 0, 0, 39, 0, 220.0f, 1 },
|
||||
/* OBJ_ACTOR_274 */ {(void*) SectorZ_8019E3A8, 1, (ObjectFunc) SectorZ_8019E234, gCubeHitbox200, 0.0f, 0, 0, 39, 0, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_275 */ {(void*) Solar_8019F7AC, 1, (ObjectFunc) Solar_8019F20C, gCubeHitbox100, 200.0f, 0, 0, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_276 */ {(void*) Solar_8019F7AC, 1, (ObjectFunc) Solar_8019F20C, gCubeHitbox100, 200.0f, 0, 0, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_277 */ {(void*) Solar_8019F7AC, 1, (ObjectFunc) Solar_8019F20C, gCubeHitbox200, 200.0f, 0, 0, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_278 */ {(void*) NULL, 1, (ObjectFunc) Solar_8019EA7C, gNoHitbox, 200.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_279 */ {(void*) NULL, 1, (ObjectFunc) Solar_801A003C, gNoHitbox, 1000.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_280 */ {(void*) D_VE1_900DD20, 0, (ObjectFunc) Venom1_80192518, D_VE1_601B7F8, 1000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_281 */ {(void*) Venom1_80192E2C, 1, (ObjectFunc) Venom1_80192CD4, D_VE1_601B830, 1000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_282 */ {(void*) D_VE1_901DA50, 0, (ObjectFunc) Venom1_80192CD4, D_VE1_601B868, 1000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_283 */ {(void*) D_VE1_9023AD0, 0, (ObjectFunc) Venom1_80192EB0, D_VE1_601B8A0, 1000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_284 */ {(void*) Venom1_801934D0, 1, (ObjectFunc) Venom1_801933DC, D_VE1_601B8D8, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_285 */ {(void*) Andross_80193244, 1, (ObjectFunc) Andross_80192E94, gCubeHitbox100, 1000.0f, 0, 0, 20, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_286 */ {(void*) Andross_80188660, 1, (ObjectFunc) Andross_80188528, gCubeHitbox100, 1000.0f, 0, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_287 */ {(void*) NULL, 1, (ObjectFunc) Andross_80189724, gNoHitbox, 1000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_288 */ {(void*) NULL, 1, (ObjectFunc) Andross_801893B8, gNoHitbox, 1000.0f, 0, 0, 20, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_289 */ {(void*) func_edata_800596B0, 1, (ObjectFunc) Andross_80189470, gNoHitbox, 1000.0f, 0, 0, 20, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_290 */ {(void*) NULL, 1, (ObjectFunc) Andross_8018933C, gNoHitbox, 1000.0f, 0, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_FO_RADAR */ {(void*) Fortuna_Radar_Draw, 2, (ObjectFunc) Fortuna_Radar_Update, aFoRadarHitbox, 0.0f, 0, 0, 39, 0, 220.0f, 1 },
|
||||
/* OBJ_ACTOR_SZ_SPACE_JUNK */ {(void*) SectorZ_SpaceJunkDraw, 1, (ObjectFunc) SectorZ_SpaceJunkUpdate, gCubeHitbox200, 0.0f, 0, 0, 39, 0, 1.0f, 0 },
|
||||
/* OBJ_ACTOR_275 */ {(void*) Solar_Doodad_Draw, 1, (ObjectFunc) Solar_Doodad_Update, gCubeHitbox100, 200.0f, 0, 0, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_276 */ {(void*) Solar_Doodad_Draw, 1, (ObjectFunc) Solar_Doodad_Update, gCubeHitbox100, 200.0f, 0, 0, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_277 */ {(void*) Solar_Doodad_Draw, 1, (ObjectFunc) Solar_Doodad_Update, gCubeHitbox200, 200.0f, 0, 0, 39, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_278 */ {(void*) NULL, 1, (ObjectFunc) Solar_Actor278_Update, gNoHitbox, 200.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_279 */ {(void*) NULL, 1, (ObjectFunc) Solar_Actor279_Update, gNoHitbox, 1000.0f, 0, 0, 0, 0, 0.0f, 1 },
|
||||
/* OBJ_ACTOR_280 */ {(void*) D_VE1_900DD20, 0, (ObjectFunc) Venom1_Actor280_Update, D_VE1_601B7F8, 1000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_281 */ {(void*) Venom1_Actor281_Draw, 1, (ObjectFunc) Venom1_Doodad_Update, D_VE1_601B830, 1000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_282 */ {(void*) D_VE1_901DA50, 0, (ObjectFunc) Venom1_Doodad_Update, D_VE1_601B868, 1000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_283 */ {(void*) D_VE1_9023AD0, 0, (ObjectFunc) Venom1_Actor283_Update, D_VE1_601B8A0, 1000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_284 */ {(void*) Venom1_Actor284_Draw, 1, (ObjectFunc) Venom1_Actor284_Update, D_VE1_601B8D8, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_285 */ {(void*) Andross_Actor285_Draw, 1, (ObjectFunc) Andross_Actor285_Update, gCubeHitbox100, 1000.0f, 0, 0, 20, 0, 1.0f, 1 },
|
||||
/* OBJ_ACTOR_286 */ {(void*) Andross_Actor286_Draw, 1, (ObjectFunc) Andross_Actor286_Update, gCubeHitbox100, 1000.0f, 0, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_287 */ {(void*) NULL, 1, (ObjectFunc) Andross_Actor287_Update, gNoHitbox, 1000.0f, 0, 0, 40, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_288 */ {(void*) NULL, 1, (ObjectFunc) Andross_Actor288_Update, gNoHitbox, 1000.0f, 0, 0, 20, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_289 */ {(void*) Actor289_Draw, 1, (ObjectFunc) Andross_Actor289_Update, gNoHitbox, 1000.0f, 0, 0, 20, 1, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_290 */ {(void*) NULL, 1, (ObjectFunc) Andross_Actor290_Update, gNoHitbox, 1000.0f, 0, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_ACTOR_SUPPLIES */ {(void*) ActorSupplies_Draw, 1, (ObjectFunc) ActorSupplies_Update, gCubeHitbox150, 1000.0f, 0, 0, 0, 0, 1.0f, 0 },
|
||||
/* OBJ_BOSS_292 */ {(void*) Corneria_8018AA74, 2, (ObjectFunc) Corneria_80189058, D_CO_603E620, 20000.0f, 0, 0, 40, 1, 0.0f, 10 },
|
||||
/* OBJ_BOSS_293 */ {(void*) Corneria_8018ECAC, 1, (ObjectFunc) Corneria_8018C19C, D_CO_603E840, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_294 */ {(void*) Corneria_8018ED78, 1, (ObjectFunc) Corneria_8018DDAC, D_CO_603E714, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_295 */ {(void*) Corneria_8018EE84, 1, (ObjectFunc) Corneria_8018E290, D_CO_603E748, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_296 */ {(void*) Corneria_8018EF90, 1, (ObjectFunc) Corneria_8018E76C, D_CO_603E7C4, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_297 */ {(void*) Meteo_8018BACC, 1, (ObjectFunc) Meteo_8018978C, D_ME_602F75C, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_298 */ {(void*) Meteo_801887D0, 1, (ObjectFunc) Meteo_80188344, D_ME_602FA50, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_CO_GRANGA */ {(void*) Corneria_Granga_Draw, 2, (ObjectFunc) Corneria_Granga_Update, aCoGrangaHitbox, 20000.0f, 0, 0, 40, 1, 0.0f, 10 },
|
||||
/* OBJ_BOSS_CO_CARRIER */ {(void*) Corneria_Carrier_Draw, 1, (ObjectFunc) Corneria_Carrier_Update, aCoCarrierHitbox, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_294 */ {(void*) Corneria_Boss294_Draw, 1, (ObjectFunc) Corneria_Boss294_Update, D_CO_603E714, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_295 */ {(void*) Corneria_Boss295_Draw, 1, (ObjectFunc) Corneria_Boss295_Update, D_CO_603E748, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_296 */ {(void*) Corneria_Boss296_Draw, 1, (ObjectFunc) Corneria_Boss296_Update, D_CO_603E7C4, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_297 */ {(void*) Meteo_Boss297_Draw, 1, (ObjectFunc) Meteo_Boss297_Update, D_ME_602F75C, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_298 */ {(void*) Meteo_Boss298_Draw, 1, (ObjectFunc) Meteo_Boss298_Update, D_ME_602FA50, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_299 */ {(void*) Boss299_Draw, 2, (ObjectFunc) Boss299_Update, gNoHitbox, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_300 */ {(void*) Boss300_Draw, 1, (ObjectFunc) Boss300_Update, gNoHitbox, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_301 */ {(void*) Aquas_Boss301_Draw, 1, (ObjectFunc) Aquas_Boss301_Update, D_AQ_6030B10, 0.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_A6 */ {(void*) Area6_Boss_Draw, 1, (ObjectFunc) Area6_Boss_Update, D_A6_6028454, 2000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_303 */ {(void*) SectorX_80193434, 2, (ObjectFunc) SectorX_80190078, D_SX_6032550, 20000.0f, 0, 0, 20, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_304 */ {(void*) SectorX_8018FF84, 2, (ObjectFunc) SectorX_8018FE38, D_SX_6032488, 1000.0f, 0, 0, 20, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_305 */ {(void*) SectorX_80190020, 2, (ObjectFunc) SectorX_8018FF20, D_SX_60324EC, 1000.0f, 0, 0, 20, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_SX_SPYBORG */ {(void*) SectorX_Boss_Draw, 2, (ObjectFunc) SectorX_Boss_Update, D_SX_6032550, 20000.0f, 0, 0, 20, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_304 */ {(void*) SectorX_Boss304_Draw, 2, (ObjectFunc) SectorX_Boss304_Update, D_SX_6032488, 1000.0f, 0, 0, 20, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_305 */ {(void*) SectorX_Boss305_Draw, 2, (ObjectFunc) SectorX_Boss305_Update, D_SX_60324EC, 1000.0f, 0, 0, 20, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_TI */ {(void*) Titania_Boss_Draw, 1, (ObjectFunc) Titania_Boss_Update,D_TI_801B83A8, 1000.0f, 0, 0, 40, 1, 0.0f, 10 },
|
||||
/* OBJ_BOSS_ZO */ {(void*) Zoness_Boss_Draw, 2, (ObjectFunc) Zoness_Boss_Update, D_ZO_602C044, 1000.0f, 0, 0, 40, 0, 1.0f, 10 },
|
||||
/* OBJ_BOSS_FO */ {(void*) HUD_BossFO_Draw, 1, (ObjectFunc) HUD_BossFO_Update, D_FO_600FFE0, 0.0f, 0, 0, 40, 1, 0.0f, 10 },
|
||||
/* OBJ_BOSS_309 */ {(void*) Boss309_Draw, 1, (ObjectFunc) Boss309_Update, gNoHitbox, 0.0f, 0, 0, 40, 1, 0.0f, 10 },
|
||||
/* OBJ_BOSS_310 */ {(void*) Boss310_Draw, 1, (ObjectFunc) Boss310_Update, gNoHitbox, 0.0f, 0, 0, 40, 1, 0.0f, 10 },
|
||||
/* OBJ_BOSS_311 */ {(void*) Bolse_80191AFC, 2, (ObjectFunc) Bolse_801912FC, D_BO_6011C80, 0.0f, 0, 0, 40, 1, 0.0f, 10 },
|
||||
/* OBJ_BOSS_311 */ {(void*) Bolse_Boss311_Draw, 2, (ObjectFunc) Bolse_Boss311_Update, D_BO_6011C80, 0.0f, 0, 0, 40, 1, 0.0f, 10 },
|
||||
/* OBJ_BOSS_VE2 */ {(void*) Venom2_Boss_Draw, 2, (ObjectFunc) Venom2_Boss_Update, D_VE2_60166F4, 0.0f, 0, 0, 40, 1, 0.0f, 10 },
|
||||
/* OBJ_BOSS_SZ */ {(void*) SectorZ_Boss_Draw, 1, (ObjectFunc) SectorZ_Boss_Update, D_SZ_6009388, 0.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_SZ_GREAT_FOX */ {(void*) SectorZ_GreatFoxDraw, 1, (ObjectFunc) SectorZ_GreatFoxUpdate, D_SZ_6009388, 0.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_SY */ {(void*) SectorY_Boss_Draw, 2, (ObjectFunc) SectorY_Boss_Update, gNoHitbox, 0.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_SO */ {(void*) Solar_Boss_Draw, 2, (ObjectFunc) Solar_Boss_Update, gNoHitbox, 0.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_KA */ {(void*) Katina_BossDraw, 1, (ObjectFunc) Katina_BossUpdate, D_KA_6011058, 0.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_KA_BASE */ {(void*) Katina_Base_Draw, 1, (ObjectFunc) Katina_BaseUpdate, D_KA_601115C, 0.0f, 0, 0, 40, 1, 0.0f, 10 },
|
||||
/* OBJ_BOSS_AQ */ {(void*) Aquas_Boss_Draw, 2, (ObjectFunc) Aquas_Boss_Update, D_AQ_6030F74, 10000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_VE1 */ {(void*) Venom1_Boss_Draw, 1, (ObjectFunc) Venom1_Boss_Update,D_VE1_8019A9B8, 3000.0f, 0, 0, 40, 1, 0.0f, 10 },
|
||||
/* OBJ_BOSS_320 */ {(void*) Andross_801928C8, 2, (ObjectFunc) Andross_8018DBF0, D_ANDROSS_C038DC0, 10000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_321 */ {(void*) Andross_8018B8C0, 1, (ObjectFunc) Andross_80189B70, D_ANDROSS_C038F24, 10000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_320 */ {(void*) Andross_Boss320_Draw, 2, (ObjectFunc) Andross_Boss320_Update, D_ANDROSS_C038DC0, 10000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_BOSS_321 */ {(void*) Andross_Boss321_Draw, 1, (ObjectFunc) Andross_Boss321_Update, D_ANDROSS_C038F24, 10000.0f, 0, 0, 40, 0, 0.0f, 10 },
|
||||
/* OBJ_ITEM_LASERS */ {(void*) ItemLasers_Draw, 1, (ObjectFunc) ItemLasers_Update, gItemLasersHitbox, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ITEM_CHECKPOINT */ {(void*) ItemCheckpoint_Draw, 1, (ObjectFunc) ItemCheckpoint_Update, gItemCheckpointHitbox, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ITEM_SILVER_RING */ {(void*) ItemSilverRing_Draw, 1, (ObjectFunc) ItemSupplyRing_Update, gItemSupplyRingHitbox, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
@@ -430,68 +430,68 @@ ObjectInfo gObjectInfo[] = {
|
||||
/* OBJ_ITEM_RING_CHECK */ {(void*) NULL, 1, (ObjectFunc) ItemRingCheck_Update, gItemRingCheckHitbox, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ITEM_1UP */ {(void*) D_1022120, 0, (ObjectFunc) Item1up_Update, gCubeHitbox100, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ITEM_GOLD_RING */ {(void*) ItemGoldRing_Draw, 1, (ObjectFunc) ItemGoldRing_Update, gItemSupplyRingHitbox, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ITEM_WING_REPAIR */ {(void*) D_arwing_3007650, 0, (ObjectFunc) ItemWingRepair_Update, gItemLasersHitbox, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ITEM_WING_REPAIR */ {(void*) aArwingItemLasersDL, 0, (ObjectFunc) ItemWingRepair_Update, gItemLasersHitbox, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_ITEM_TRAINING_RING */ {(void*) gItemTrainingRingDL, 0, (ObjectFunc) Training_ItemRing_Update, D_TR_6009CFC, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_FIRE_SMOKE */ {(void*) func_effect_8007D55C, 1, (ObjectFunc) func_effect_8007D2F4, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_340 */ {(void*) func_effect_8007D55C, 1, (ObjectFunc) func_effect_8007D748, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_341 */ {(void*) func_effect_8007D55C, 1, (ObjectFunc) func_effect_8007D8A8, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_342 */ {(void*) func_effect_8007E330, 1, (ObjectFunc) func_effect_8007E298, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_343 */ {(void*) func_effect_8007CAF0, 1, (ObjectFunc) func_effect_8007C9E0, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_344 */ {(void*) func_effect_8007868C, 1, (ObjectFunc) func_effect_8007E014, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_345 */ {(void*) func_effect_8007879C, 1, (ObjectFunc) func_effect_8007E258, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_346 */ {(void*) func_effect_800788B0, 1, (ObjectFunc) func_effect_8007F438, NULL, -200.0f, 1, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_347 */ {(void*) func_effect_800783C0, 1, (ObjectFunc) func_effect_8007B758, NULL, 100.0f, 1, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_348 */ {(void*) func_effect_80078A64, 1, (ObjectFunc) func_effect_8007F6B0, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_349 */ {(void*) NULL, 1, (ObjectFunc) func_effect_8007F958, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_350 */ {(void*) NULL, 1, (ObjectFunc) func_effect_8007FBE0, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_351 */ {(void*) func_effect_80078438, 1, (ObjectFunc) func_effect_8007E3E4, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_352 */ {(void*) func_effect_800784B4, 1, (ObjectFunc) func_effect_8007B62C, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_353 */ {(void*) func_effect_80078B8C, 1, (ObjectFunc) func_effect_8007FE88, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_354 */ {(void*) SectorY_80197C64, 1, (ObjectFunc) func_effect_8007FE88, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_355 */ {(void*) func_effect_80078AEC, 1, (ObjectFunc) func_effect_800802B8, NULL, 100.0f, 1, 0, 20, 1, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_356 */ {(void*) func_effect_80078C84, 1, (ObjectFunc) func_effect_800802F8, NULL, 100.0f, 1, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_357 */ {(void*) func_effect_800798F0, 1, (ObjectFunc) func_effect_8007968C, NULL, 100.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_FIRE_SMOKE */ {(void*) Effect_FireSmoke_Draw, 1, (ObjectFunc) Effect_Effect339_Update, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_340 */ {(void*) Effect_FireSmoke_Draw, 1, (ObjectFunc) Effect_Effect340_Update, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_341 */ {(void*) Effect_FireSmoke_Draw, 1, (ObjectFunc) Effect_Effect341_Update, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_342 */ {(void*) Effect_Effect342_Draw, 1, (ObjectFunc) Effect_Effect342_Update, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_343 */ {(void*) Effect_Effect343_Draw, 1, (ObjectFunc) Effect_Effect343_Update, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_344 */ {(void*) Effect_Effect344_Draw, 1, (ObjectFunc) Effect_Effect344_Update, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_345 */ {(void*) Effect_Effect345_Draw, 1, (ObjectFunc) Effect_Effect345_Update, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_346 */ {(void*) Effect_Effect346_Draw, 1, (ObjectFunc) Effect_Effect346_Update, NULL, -200.0f, 1, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_347 */ {(void*) Effect_Effect347_Draw, 1, (ObjectFunc) Effect_Effect347_Update, NULL, 100.0f, 1, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_348 */ {(void*) Effect_Effect348_Draw, 1, (ObjectFunc) Effect_Effect348_Update, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_349 */ {(void*) NULL, 1, (ObjectFunc) Effect_Effect349_Update, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_350 */ {(void*) NULL, 1, (ObjectFunc) Effect_Effect350_Update, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_351 */ {(void*) Effect_Effect351_Draw, 1, (ObjectFunc) Effect_Effect351_Update, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_CLOUDS */ {(void*) Effect_Clouds_Draw, 1, (ObjectFunc) Effect_Clouds_Update, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_ENEMY_LASER_1 */ {(void*) Effect_Effect353_Draw, 1, (ObjectFunc) Effect_Effect353_354_Update, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_354 */ {(void*) SectorY_Effect354_Draw, 1, (ObjectFunc) Effect_Effect353_354_Update, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_355 */ {(void*) Effect_Effect355_Draw, 1, (ObjectFunc) Effect_Effect355_Update, NULL, 100.0f, 1, 0, 20, 1, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_356 */ {(void*) Effect_Effect356_Draw, 1, (ObjectFunc) Effect_Effect356_Update, NULL, 100.0f, 1, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_357 */ {(void*) Effect_Effect357_Draw, 1, (ObjectFunc) Effect_Effect357_Update, NULL, 100.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_358 */ {(void*) Katina_LaserEnergyParticlesDraw, 1, (ObjectFunc) Katina_LaserEnergyParticlesUpdate, NULL, 100.0f, 1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_359 */ {(void*) func_effect_8007AA60, 1, (ObjectFunc) func_effect_8007A994, NULL, -100.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_360 */ {(void*) func_effect_8007BEE8, 1, (ObjectFunc) func_effect_8007BE54, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_361 */ {(void*) func_effect_8007BEE8, 1, (ObjectFunc) func_effect_8007BDE0, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_362 */ {(void*) func_effect_8007BEE8, 1, (ObjectFunc) func_effect_8007BCE8, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_363 */ {(void*) func_hud_80094BBC, 1, (ObjectFunc) func_hud_80094954, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_364 */ {(void*) func_effect_8007B9DC, 1, (ObjectFunc) func_effect_8007B960, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_365 */ {(void*) func_effect_8007E5CC, 1, (ObjectFunc) func_effect_8007E45C, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_366 */ {(void*) func_effect_80078550, 1, (ObjectFunc) Aquas_801AC918, NULL, 100.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_367 */ {(void*) func_effect_80078604, 1, (ObjectFunc) func_effect_8007E648, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_368 */ {(void*) Titania_80188FA8, 1, (ObjectFunc) Titania_80188F60, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_369 */ {(void*) Meteo_8018DCE4, 1, (ObjectFunc) Meteo_80188CAC, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_370 */ {(void*) Meteo_8018DBEC, 1, (ObjectFunc) Meteo_80188FAC, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_371 */ {(void*) Meteo_8018DE14, 1, (ObjectFunc) Meteo_80189114, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_372 */ {(void*) func_effect_80077A00, 1, (ObjectFunc) func_effect_8007AB50, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_373 */ {(void*) NULL, 1, (ObjectFunc) func_effect_8007A748, NULL, 500.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_374 */ {(void*) func_effect_8007DED4, 1, (ObjectFunc) func_effect_8007DB70, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_375 */ {(void*) func_effect_8007DAE4, 1, (ObjectFunc) func_effect_8007DA58, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_376 */ {(void*) func_effect_80078CE8, 1, (ObjectFunc) func_effect_80080360, NULL, -200.0f, 1, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_377 */ {(void*) func_effect_80078BE0, 1, (ObjectFunc) func_effect_800802D8, NULL, 100.0f, 1, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_378 */ {(void*) Macbeth_801A5AF0, 1, (ObjectFunc) Macbeth_801A57D0, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_379 */ {(void*) Macbeth_801AEAA0, 1, (ObjectFunc) Macbeth_801AE87C, NULL, 100.0f, 1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_380 */ {(void*) Macbeth_801A5D68, 1, (ObjectFunc) Macbeth_801A5B4C, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_381 */ {(void*) func_effect_80077A7C, 1, (ObjectFunc) func_effect_8007B0F4, NULL, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_382 */ {(void*) NULL, 1, (ObjectFunc) func_effect_8007B040, NULL, 200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_383 */ {(void*) func_effect_8007A3C0, 1, (ObjectFunc) func_effect_8007A28C, NULL, 10000.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_384 */ {(void*) func_effect_80077B84, 1, (ObjectFunc) func_effect_8007B3B8, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_385 */ {(void*) func_effect_80078038, 1, (ObjectFunc) func_effect_8007B5C0, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_386 */ {(void*) NULL, 1, (ObjectFunc) func_effect_8007C250, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_387 */ {(void*) NULL, 1, (ObjectFunc) func_effect_8007C8C4, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_388 */ {(void*) func_effect_80077B78, 1, (ObjectFunc) func_effect_8007B670, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_389 */ {(void*) func_effect_800780F8, 1, (ObjectFunc) func_effect_8007B67C, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_390 */ {(void*) NULL, 1, (ObjectFunc) func_effect_8007C50C, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_391 */ {(void*) func_effect_80083B8C, 1, (ObjectFunc) func_effect_800837EC, NULL, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_392 */ {(void*) Solar_801A0AF0, 1, (ObjectFunc) Solar_801A0120, NULL, 300.0f, 1, 2, 10, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_393 */ {(void*) func_effect_80078F78, 1, (ObjectFunc) func_effect_80078EBC, NULL, 300.0f, 1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_394 */ {(void*) func_effect_80080D04, 1, (ObjectFunc) func_effect_80080ACC, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_395 */ {(void*) func_effect_80082F78, 1, (ObjectFunc) func_effect_80081C5C, NULL, 300.0f, 0, 1, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_396 */ {(void*) Andross_8018CF98, 1, (ObjectFunc) Andross_8018CAD4, NULL, 2000.0f, 0, 1, 40, 2, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_397 */ {(void*) Bolse_80191180, 1, (ObjectFunc) Bolse_80191054, NULL, 2000.0f, 0, 1, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_398 */ {(void*) func_effect_8008092C, 1, (ObjectFunc) func_effect_8008040C, NULL, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_399 */ {(void*) func_effect_80084194, 1, (ObjectFunc) func_effect_80083FA8, NULL, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_359 */ {(void*) Effect_Effect359_Draw, 1, (ObjectFunc) Effect_Effect359_Update, NULL, -100.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_360 */ {(void*) Effect_Effect360_361_362_Draw, 1, (ObjectFunc) Effect_Effect360_Update, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_361 */ {(void*) Effect_Effect360_361_362_Draw, 1, (ObjectFunc) Effect_Effect361_Update, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_362 */ {(void*) Effect_Effect360_361_362_Draw, 1, (ObjectFunc) Effect_Effect362_Update, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_363 */ {(void*) Hud_Effect363_Draw, 1, (ObjectFunc) Hud_Effect363_Update, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_364 */ {(void*) Effect_Effect364_Draw, 1, (ObjectFunc) Effect_Effect364_Update, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_365 */ {(void*) Effect_Effect365_Draw, 1, (ObjectFunc) Effect_Effect365_Update, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_366 */ {(void*) Effect_Effect366_Draw, 1, (ObjectFunc) Aquas_Effect366_Update, NULL, 100.0f, 1, 2, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_367 */ {(void*) Effect_Effect367_Draw, 1, (ObjectFunc) Effect_Effect367_Update, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_368 */ {(void*) Titania_Effect368_Draw, 1, (ObjectFunc) Titania_Effect368_Update, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_369 */ {(void*) Meteo_Effect369_Draw, 1, (ObjectFunc) Meteo_Effect369_Update, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_370 */ {(void*) Meteo_Effect370_Draw, 1, (ObjectFunc) Meteo_Effect370_Update, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_371 */ {(void*) Meteo_Effect371_Draw, 1, (ObjectFunc) Meteo_Effect371_Update, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_372 */ {(void*) Effect_Effect372_Draw, 1, (ObjectFunc) Effect_Effect372_Update, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_TIMED_SFX */ {(void*) NULL, 1, (ObjectFunc) Effect_TimedSfx_Update, NULL, 500.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_374 */ {(void*) Macbeth_Effect374_Draw, 1, (ObjectFunc) Effect_Effect374_Update, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_375 */ {(void*) Macbeth_Effect375_Draw, 1, (ObjectFunc) Effect_Effect375_Update, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_376 */ {(void*) Macbeth_Effect376_Draw, 1, (ObjectFunc) Effect_Effect376_Update, NULL, -200.0f, 1, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_377 */ {(void*) Macbeth_Effect377_Draw, 1, (ObjectFunc) Effect_Effect377_Update, NULL, 100.0f, 1, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_378 */ {(void*) Macbeth_Effect378_Draw, 1, (ObjectFunc) Macbeth_Effect378_Update, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_379 */ {(void*) Macbeth_Effect379_Draw, 1, (ObjectFunc) Macbeth_Effect379_Update, NULL, 100.0f, 1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_380 */ {(void*) Macbeth_Effect380_Draw, 1, (ObjectFunc) Macbeth_Effect380_Update, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_381 */ {(void*) Effect_Effect382_Draw, 1, (ObjectFunc) Effect_Effect381_Update, NULL, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_382 */ {(void*) NULL, 1, (ObjectFunc) Effect_Effect382_Update, NULL, 200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_383 */ {(void*) Effect_Effect383_Draw, 1, (ObjectFunc) Effect_Effect383_Update, NULL, 10000.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_384 */ {(void*) Effect_Effect384_Draw, 1, (ObjectFunc) Effect_Effect384_Update, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_385 */ {(void*) Effect_Effect385_Draw, 1, (ObjectFunc) Effect_Effect385_Update, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_386 */ {(void*) NULL, 1, (ObjectFunc) Effect_Effect386_Update, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_387 */ {(void*) NULL, 1, (ObjectFunc) Effect_Effect387_Update, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_388 */ {(void*) Effect_Effect388_Draw, 1, (ObjectFunc) Effect_Effect388_Update, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_389 */ {(void*) Effect_Effect389_Draw, 1, (ObjectFunc) Effect_Effect389_Update, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_390 */ {(void*) NULL, 1, (ObjectFunc) Effect_Effect390_Update, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_391 */ {(void*) Effect_Effect391_Draw, 1, (ObjectFunc) Effect_Effect391_Update, NULL, 500.0f, 0, 0, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_392 */ {(void*) Solar_Effect392_Draw, 1, (ObjectFunc) Solar_Effect392_Update, NULL, 300.0f, 1, 2, 10, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_393 */ {(void*) Effect_Effect393_Draw, 1, (ObjectFunc) Effect_Effect393_Update, NULL, 300.0f, 1, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_394 */ {(void*) Effect_Effect394_Draw, 1, (ObjectFunc) Effect_Effect394_Update, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_395 */ {(void*) Effect_Effect395_Draw, 1, (ObjectFunc) Effect_Effect395_Update, NULL, 300.0f, 0, 1, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_396 */ {(void*) Andross_Effect396_Draw, 1, (ObjectFunc) Andross_Effect396_Update, NULL, 2000.0f, 0, 1, 40, 2, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_397 */ {(void*) Bolse_Effect397_Draw, 1, (ObjectFunc) Bolse_Effect397_Update, NULL, 2000.0f, 0, 1, 20, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_398 */ {(void*) Effect_Effect398_Draw, 1, (ObjectFunc) Effect_Effect398_Update, NULL, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
/* OBJ_EFFECT_399 */ {(void*) Effect_Effect399_Draw, 1, (ObjectFunc) Effect_Effect399_Update, NULL, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
|
||||
};
|
||||
// clang-format on
|
||||
|
||||
+30
-30
@@ -114,7 +114,7 @@ void Scenery_DrawTitaniaBones(Scenery* scenery) {
|
||||
void func_edisplay_80059BB0(void* arg0) {
|
||||
}
|
||||
|
||||
void Scenery42_Draw(Scenery_42* this) {
|
||||
void CoIBeam_Draw(CoIBeam* this) {
|
||||
gSPDisplayList(gMasterDisp++, D_CO_6023AC0);
|
||||
}
|
||||
|
||||
@@ -134,33 +134,33 @@ void FogShadow_Draw(FogShadow* this) {
|
||||
RCP_SetupDL_47(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 180);
|
||||
switch (this->sceneryId) {
|
||||
case OBJ_SCENERY_0:
|
||||
case OBJ_SCENERY_CO_STONE_ARCH:
|
||||
Matrix_Scale(gGfxMatrix, 2.0f, 1.0f, 0.7f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_CO_6034B90);
|
||||
break;
|
||||
case OBJ_SCENERY_21:
|
||||
case OBJ_SCENERY_CO_ARCH_2:
|
||||
Matrix_Scale(gGfxMatrix, 1.0f, 1.0f, 0.7f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_CO_6034B90);
|
||||
break;
|
||||
case OBJ_SCENERY_6:
|
||||
case OBJ_SCENERY_7:
|
||||
case OBJ_SCENERY_CO_HIGHWAY_1:
|
||||
case OBJ_SCENERY_CO_HIGHWAY_2:
|
||||
Matrix_Scale(gGfxMatrix, 1.0f, 1.0f, 10.55f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_Gfx_800DAC20);
|
||||
break;
|
||||
case OBJ_SCENERY_56:
|
||||
case OBJ_SCENERY_CO_DOORS:
|
||||
Matrix_Scale(gGfxMatrix, 1.6f, 1.0f, 1.0f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_CO_6034B90);
|
||||
break;
|
||||
case OBJ_SCENERY_20:
|
||||
case OBJ_SCENERY_CO_ARCH_1:
|
||||
Matrix_Scale(gGfxMatrix, 1.2f, 1.0f, 1.3f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_CO_6034B90);
|
||||
break;
|
||||
case OBJ_SCENERY_22:
|
||||
case OBJ_SCENERY_CO_ARCH_3:
|
||||
Matrix_Scale(gGfxMatrix, 2.2f, 1.0f, 1.4f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_CO_6034B90);
|
||||
@@ -169,22 +169,22 @@ void FogShadow_Draw(FogShadow* this) {
|
||||
RCP_SetupDL_60(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
}
|
||||
|
||||
void func_edisplay_80059F68(Scenery* scenery) {
|
||||
void CoBuilding9_Draw(Scenery* scenery) {
|
||||
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -95.0f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_CO_602DA20);
|
||||
}
|
||||
|
||||
void func_edisplay_80059FDC(Scenery* scenery) {
|
||||
void CoBuilding10_Draw(Scenery* scenery) {
|
||||
gSPDisplayList(gMasterDisp++, D_CO_6035DA0);
|
||||
}
|
||||
|
||||
// repurposed into OBJ_SCENERY_15
|
||||
// repurposed into OBJ_SCENERY_CO_BUILDING_6
|
||||
void func_edisplay_8005A010(Sprite* sprite) {
|
||||
if (!sprite->toLeft) {
|
||||
Matrix_RotateY(gGfxMatrix, M_PI / 2, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_CO_60361F0);
|
||||
gSPDisplayList(gMasterDisp++, aCoBuilding6DL);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -209,7 +209,7 @@ Gfx* D_edisplay_800CFADC[] = {
|
||||
};
|
||||
Gfx* D_edisplay_800CFB08[] = { D_ZO_6020F10, D_ZO_6021100, D_ZO_60214B0 };
|
||||
Gfx* D_edisplay_800CFB14[] = { D_ZO_60163E0, D_ZO_60165D0, D_ZO_6016880, D_ZO_6016B50, D_ZO_6000C40 };
|
||||
Gfx* D_edisplay_800CFB28[] = { D_CO_6018E80, D_ZO_601F620, D_ZO_601F420, D_ZO_6018C80, D_ZO_601F940, D_ZO_601F260 };
|
||||
Gfx* D_edisplay_800CFB28[] = { aCoBuilding7DL, D_ZO_601F620, D_ZO_601F420, D_ZO_6018C80, D_ZO_601F940, D_ZO_601F260 };
|
||||
Gfx* D_edisplay_800CFB40[] = {
|
||||
D_SO_6014DB0, D_SO_60146D0, D_SO_6014B80, D_SO_6014470, D_SO_6014930,
|
||||
D_SO_60138A0, D_SO_60151A0, D_SO_600F750, D_SO_6015810,
|
||||
@@ -556,25 +556,25 @@ void func_edisplay_8005B388(Actor* actor) {
|
||||
Actor_DrawEngineAndContrails(actor);
|
||||
}
|
||||
|
||||
void func_edisplay_8005B6A4(Actor* actor) {
|
||||
void Actor180_Draw(Actor* actor) {
|
||||
Matrix_Scale(gGfxMatrix, 1.0f, 1.0f, 1.0f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_ME_6024B60);
|
||||
}
|
||||
|
||||
void func_edisplay_8005B71C(Actor* actor) {
|
||||
void Actor182_Draw(Actor* actor) {
|
||||
RCP_SetupDL_29(actor->unk_046, gFogGreen, gFogBlue, gFogAlpha, actor->unk_048, gFogFar);
|
||||
Matrix_Scale(gGfxMatrix, 0.5f, 0.5f, 0.5f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_ME_6018C00);
|
||||
}
|
||||
|
||||
void func_edisplay_8005B7CC(Actor* actor) {
|
||||
void Actor186_Draw(Actor* actor) {
|
||||
RCP_SetupDL_29(actor->unk_046, gFogGreen, gFogBlue, gFogAlpha, actor->unk_048, gFogFar);
|
||||
gSPDisplayList(gMasterDisp++, D_ME_6022920);
|
||||
}
|
||||
|
||||
void func_edisplay_8005B848(Actor* actor) {
|
||||
void Actor190_191_Draw(Actor* actor) {
|
||||
f32 scale;
|
||||
|
||||
switch (actor->eventType) {
|
||||
@@ -599,13 +599,13 @@ void func_edisplay_8005B848(Actor* actor) {
|
||||
Actor_DrawEngineGlow(actor, 2);
|
||||
}
|
||||
|
||||
void func_edisplay_8005B9A4(Actor* actor) {
|
||||
void Actor192_Draw(Actor* actor) {
|
||||
Matrix_Translate(gGfxMatrix, 0.0f, -124.0f, 0.0f, MTXF_APPLY);
|
||||
Animation_GetFrameData(&D_CO_6029528, actor->animFrame, actor->vwork);
|
||||
Animation_DrawSkeleton(1, D_CO_6029674, actor->vwork, NULL, NULL, actor, &gIdentityMatrix);
|
||||
}
|
||||
|
||||
void func_edisplay_8005BA30(Actor* actor) {
|
||||
void Actor193_Draw(Actor* actor) {
|
||||
if (actor->timer_0BC != 0) {
|
||||
RCP_SetupDL_27();
|
||||
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 0, 0, 255);
|
||||
@@ -667,7 +667,7 @@ void Object_SetShadowDL(ObjectId objId, s32 index) {
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case OBJ_BOSS_292:
|
||||
case OBJ_BOSS_CO_GRANGA:
|
||||
gSPDisplayList(gMasterDisp++, D_CO_6034B90);
|
||||
break;
|
||||
case OBJ_BOSS_KA:
|
||||
@@ -679,7 +679,7 @@ void Object_SetShadowDL(ObjectId objId, s32 index) {
|
||||
Graphics_SetScaleMtx(150.0f);
|
||||
gSPDisplayList(gMasterDisp++, D_102A8A0);
|
||||
break;
|
||||
case OBJ_BOSS_293:
|
||||
case OBJ_BOSS_CO_CARRIER:
|
||||
case OBJ_BOSS_294:
|
||||
case OBJ_BOSS_295:
|
||||
case OBJ_BOSS_296:
|
||||
@@ -690,7 +690,7 @@ void Object_SetShadowDL(ObjectId objId, s32 index) {
|
||||
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 150);
|
||||
}
|
||||
switch (objId) {
|
||||
case OBJ_BOSS_293:
|
||||
case OBJ_BOSS_CO_CARRIER:
|
||||
gSPDisplayList(gMasterDisp++, D_CO_6036840);
|
||||
break;
|
||||
case OBJ_BOSS_294:
|
||||
@@ -946,8 +946,8 @@ void Scenery_Draw(Scenery* this, s32 arg1) {
|
||||
func_edisplay_8005D008(&this->obj, this->info.drawType);
|
||||
this->obj.pos.y -= gCameraShakeY;
|
||||
if (this->info.drawType == 0) {
|
||||
if ((this->obj.id == OBJ_SCENERY_19) || (this->obj.id == OBJ_SCENERY_55) || (this->obj.id == OBJ_SCENERY_9) ||
|
||||
(this->obj.id == OBJ_SCENERY_50)) {
|
||||
if ((this->obj.id == OBJ_SCENERY_CO_TOWER) || (this->obj.id == OBJ_SCENERY_CO_ROCKWALL) ||
|
||||
(this->obj.id == OBJ_SCENERY_CO_HIGHWAY_4) || (this->obj.id == OBJ_SCENERY_50)) {
|
||||
RCP_SetupDL_57(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK);
|
||||
if (arg1 < 0) {
|
||||
@@ -956,7 +956,7 @@ void Scenery_Draw(Scenery* this, s32 arg1) {
|
||||
gSPDisplayList(gMasterDisp++, this->info.dList);
|
||||
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
} else {
|
||||
if (this->obj.id == OBJ_SCENERY_8) {
|
||||
if (this->obj.id == OBJ_SCENERY_CO_HIGHWAY_3) {
|
||||
if (arg1 < 0) {
|
||||
return; // weird control flow
|
||||
}
|
||||
@@ -967,7 +967,7 @@ void Scenery_Draw(Scenery* this, s32 arg1) {
|
||||
Object_ApplyWaterDistortion();
|
||||
}
|
||||
gSPDisplayList(gMasterDisp++, this->info.dList);
|
||||
if (this->obj.id == OBJ_SCENERY_8) {
|
||||
if (this->obj.id == OBJ_SCENERY_CO_HIGHWAY_3) {
|
||||
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
|
||||
}
|
||||
}
|
||||
@@ -999,7 +999,7 @@ void Actor_DrawOnRails(Actor* this) {
|
||||
Actor194_Draw(this);
|
||||
return;
|
||||
case OBJ_ACTOR_236:
|
||||
Zoness_80190F08(this);
|
||||
Zoness_Actor236_Draw(this);
|
||||
return;
|
||||
}
|
||||
if ((this->obj.id == OBJ_ACTOR_EVENT) && (this->eventType == EVID_200)) {
|
||||
@@ -1154,7 +1154,7 @@ void Boss_Draw(Boss* this, s32 arg1) {
|
||||
var_fv0 = 6000.0f;
|
||||
var_ft5 = 0.9f;
|
||||
var_fv1 = -20000.0f;
|
||||
} else if (this->obj.id == OBJ_BOSS_SZ) {
|
||||
} else if (this->obj.id == OBJ_BOSS_SZ_GREAT_FOX) {
|
||||
var_fv1 = -25000.0f;
|
||||
var_ft5 = 0.7f;
|
||||
var_fa1 = 3000.0f;
|
||||
@@ -1198,7 +1198,7 @@ void Effect_DrawOnRails(Effect* this, s32 arg1) {
|
||||
if ((arg1 < 0) && (this->obj.pos.y < 7.0f)) {
|
||||
return;
|
||||
}
|
||||
if ((this->obj.id == OBJ_EFFECT_353) || (this->obj.id == OBJ_EFFECT_369)) {
|
||||
if ((this->obj.id == OBJ_EFFECT_ENEMY_LASER_1) || (this->obj.id == OBJ_EFFECT_369)) {
|
||||
func_edisplay_8005D3CC(&this->obj, this->unk_60.x, this->unk_60.y, this->unk_60.z, 0);
|
||||
} else if (this->info.unk_14 == -1) {
|
||||
this->obj.pos.y += gCameraShakeY;
|
||||
@@ -1245,7 +1245,7 @@ void Effect_DrawAllRange(Effect* this) {
|
||||
}
|
||||
}
|
||||
Object_SetSfxSourceToView(this->sfxSource, &sp40);
|
||||
if (!drawn && (this->obj.id != OBJ_EFFECT_352) && (this->obj.id != OBJ_EFFECT_373) && (!gVersusMode)) {
|
||||
if (!drawn && (this->obj.id != OBJ_EFFECT_CLOUDS) && (this->obj.id != OBJ_EFFECT_TIMED_SFX) && (!gVersusMode)) {
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
}
|
||||
}
|
||||
|
||||
+1489
-1485
File diff suppressed because it is too large
Load Diff
+726
-564
File diff suppressed because it is too large
Load Diff
+90
-87
@@ -32,30 +32,30 @@ void ActorEvent_SetMessage(u16* msg, s32 character) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_enmy2_8006A800(Effect* effect, f32 xPos, f32 yPos, f32 zPos, f32 scale2) {
|
||||
Effect_Initialize(effect);
|
||||
void func_enmy2_8006A800(Effect361* this, f32 xPos, f32 yPos, f32 zPos, f32 scale2) {
|
||||
Effect_Initialize(this);
|
||||
|
||||
effect->obj.status = OBJ_INIT;
|
||||
effect->obj.id = OBJ_EFFECT_361;
|
||||
effect->obj.pos.x = xPos;
|
||||
effect->obj.pos.y = yPos;
|
||||
effect->obj.pos.z = zPos;
|
||||
effect->unk_48 = 3;
|
||||
this->obj.status = OBJ_INIT;
|
||||
this->obj.id = OBJ_EFFECT_361;
|
||||
this->obj.pos.x = xPos;
|
||||
this->obj.pos.y = yPos;
|
||||
this->obj.pos.z = zPos;
|
||||
this->unk_48 = 3;
|
||||
|
||||
if (Rand_ZeroOne() < 0.5f) {
|
||||
effect->unk_48 = -effect->unk_48;
|
||||
this->unk_48 = -this->unk_48;
|
||||
}
|
||||
|
||||
effect->unk_4A = 100;
|
||||
effect->scale2 = scale2 * 0.25f;
|
||||
effect->scale1 = 0.3f;
|
||||
this->unk_4A = 100;
|
||||
this->scale2 = scale2 * 0.25f;
|
||||
this->scale1 = 0.3f;
|
||||
|
||||
if (scale2 < 10.0f) {
|
||||
effect->scale1 = 0.1f;
|
||||
this->scale1 = 0.1f;
|
||||
}
|
||||
|
||||
effect->obj.rot.z = RAND_FLOAT(360.0f);
|
||||
Object_SetInfo(&effect->info, effect->obj.id);
|
||||
this->obj.rot.z = RAND_FLOAT(360.0f);
|
||||
Object_SetInfo(&this->info, this->obj.id);
|
||||
}
|
||||
|
||||
void func_enmy2_8006A900(f32 xPos, f32 yPos, f32 zPos, f32 scale2) {
|
||||
@@ -75,21 +75,21 @@ void Actor237_Update(Actor237* this) {
|
||||
void Actor237_Draw(Actor237* this) {
|
||||
}
|
||||
|
||||
void Obj54_8006A984(Effect* effect, f32 xPos, f32 yPos, f32 zPos) {
|
||||
Effect_Initialize(effect);
|
||||
effect->obj.status = OBJ_INIT;
|
||||
effect->obj.id = OBJ_EFFECT_365;
|
||||
void Obj54_8006A984(Effect* this, f32 xPos, f32 yPos, f32 zPos) {
|
||||
Effect_Initialize(this);
|
||||
this->obj.status = OBJ_INIT;
|
||||
this->obj.id = OBJ_EFFECT_365;
|
||||
|
||||
effect->obj.pos.x = xPos;
|
||||
effect->obj.pos.y = yPos;
|
||||
effect->obj.pos.z = zPos;
|
||||
this->obj.pos.x = xPos;
|
||||
this->obj.pos.y = yPos;
|
||||
this->obj.pos.z = zPos;
|
||||
|
||||
effect->unk_44 = 40;
|
||||
effect->scale2 = 5.0f;
|
||||
effect->scale1 = RAND_FLOAT_CENTERED(2.0f);
|
||||
effect->vel.y = 10.0f;
|
||||
effect->obj.rot.z = RAND_FLOAT(360.0f);
|
||||
Object_SetInfo(&effect->info, effect->obj.id);
|
||||
this->unk_44 = 40;
|
||||
this->scale2 = 5.0f;
|
||||
this->scale1 = RAND_FLOAT_CENTERED(2.0f);
|
||||
this->vel.y = 10.0f;
|
||||
this->obj.rot.z = RAND_FLOAT(360.0f);
|
||||
Object_SetInfo(&this->info, this->obj.id);
|
||||
}
|
||||
|
||||
void Obj54_8006AA3C(f32 xPos, f32 yPos, f32 zPos) {
|
||||
@@ -103,7 +103,7 @@ void Obj54_8006AA3C(f32 xPos, f32 yPos, f32 zPos) {
|
||||
}
|
||||
}
|
||||
|
||||
void Scenery54_Update(Scenery_54* this) {
|
||||
void CoWaterfall_Update(CoWaterfall* this) {
|
||||
Vec3f sp24;
|
||||
Vec3f sp18;
|
||||
|
||||
@@ -131,7 +131,7 @@ void Actor201_Update(Actor201* this) {
|
||||
f32 sp2C;
|
||||
|
||||
if (Actor201_8006ABA4(this) && (this->timer_0BC == 0)) {
|
||||
func_effect_8007F11C(OBJ_EFFECT_353, this->obj.pos.x, this->obj.pos.y, this->obj.pos.z, gEnemyShotSpeed);
|
||||
Effect_EnemyLaser(OBJ_EFFECT_ENEMY_LASER_1, this->obj.pos.x, this->obj.pos.y, this->obj.pos.z, gEnemyShotSpeed);
|
||||
this->timer_0BC = 20;
|
||||
}
|
||||
sp2C = this->obj.pos.z + gPathProgress;
|
||||
@@ -157,9 +157,9 @@ void Actor202_Update(Actor202* this) {
|
||||
this->iwork[1] = true;
|
||||
}
|
||||
|
||||
if (((gGameFrameCount % 32) == 0)) {
|
||||
func_effect_8007F11C(OBJ_EFFECT_353, this->obj.pos.x, this->obj.pos.y + 180.0f, this->obj.pos.z,
|
||||
gEnemyShotSpeed);
|
||||
if ((gGameFrameCount % 32) == 0) {
|
||||
Effect_EnemyLaser(OBJ_EFFECT_ENEMY_LASER_1, this->obj.pos.x, this->obj.pos.y + 180.0f, this->obj.pos.z,
|
||||
gEnemyShotSpeed);
|
||||
}
|
||||
|
||||
switch (this->state) {
|
||||
@@ -216,7 +216,7 @@ void Actor202_Update(Actor202* this) {
|
||||
func_effect_8007BFFC(this->obj.pos.x, this->obj.pos.y + 180.0f, this->obj.pos.z, this->vel.x, this->vel.y,
|
||||
this->vel.z, 8.0f, 30);
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
func_effect_8007A6F0(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
Effect_SpawnTimedSfxAtPos(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
gHitCount += this->info.bonus;
|
||||
D_ctx_80177850 = 15;
|
||||
} else {
|
||||
@@ -341,7 +341,7 @@ void Actor194_Draw(Actor194* this) {
|
||||
}
|
||||
}
|
||||
|
||||
void Scenery42_Update(Scenery_42* this) {
|
||||
void CoIBeam_Update(CoIBeam* this) {
|
||||
this->obj.pos.x += this->vel.x;
|
||||
this->obj.pos.y += this->vel.y;
|
||||
this->obj.pos.z += this->vel.z;
|
||||
@@ -367,20 +367,20 @@ void Scenery42_Update(Scenery_42* this) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_enmy2_8006BA64(Effect* effect, f32 xPos, f32 yPos, f32 zPos) {
|
||||
Effect_Initialize(effect);
|
||||
effect->obj.status = OBJ_INIT;
|
||||
effect->obj.id = OBJ_EFFECT_375;
|
||||
void func_enmy2_8006BA64(Effect375* this, f32 xPos, f32 yPos, f32 zPos) {
|
||||
Effect_Initialize(this);
|
||||
this->obj.status = OBJ_INIT;
|
||||
this->obj.id = OBJ_EFFECT_375;
|
||||
|
||||
effect->obj.pos.x = xPos;
|
||||
effect->obj.pos.y = yPos;
|
||||
effect->obj.pos.z = zPos;
|
||||
this->obj.pos.x = xPos;
|
||||
this->obj.pos.y = yPos;
|
||||
this->obj.pos.z = zPos;
|
||||
|
||||
effect->scale2 = 0.0f;
|
||||
effect->scale1 = 0.12f;
|
||||
effect->obj.rot.y = RAND_FLOAT(360.0f);
|
||||
effect->unk_60.y = RAND_FLOAT_CENTERED(3.0f);
|
||||
Object_SetInfo(&effect->info, effect->obj.id);
|
||||
this->scale2 = 0.0f;
|
||||
this->scale1 = 0.12f;
|
||||
this->obj.rot.y = RAND_FLOAT(360.0f);
|
||||
this->unk_60.y = RAND_FLOAT_CENTERED(3.0f);
|
||||
Object_SetInfo(&this->info, this->obj.id);
|
||||
}
|
||||
|
||||
void func_enmy2_8006BB1C(f32 xPos, f32 yPos, f32 zPos) {
|
||||
@@ -445,12 +445,14 @@ void Actor196_Update(Actor196* this) {
|
||||
|
||||
case 3:
|
||||
if (this->timer_0BC == 1) {
|
||||
func_effect_8007F11C(OBJ_EFFECT_353, this->obj.pos.x, this->obj.pos.y, this->obj.pos.z,
|
||||
gEnemyShotSpeed);
|
||||
Effect_EnemyLaser(OBJ_EFFECT_ENEMY_LASER_1, this->obj.pos.x, this->obj.pos.y, this->obj.pos.z,
|
||||
gEnemyShotSpeed);
|
||||
}
|
||||
|
||||
if (this->vel.y < 12.0f) {
|
||||
Math_SmoothStepToF(&this->obj.rot.x, 180.0f, 0.1f, 7.0f, 0.01f);
|
||||
}
|
||||
|
||||
if (this->obj.pos.y < (gGroundHeight + 10.0f)) {
|
||||
this->obj.pos.y = gGroundHeight;
|
||||
this->state = 4;
|
||||
@@ -664,7 +666,7 @@ void ActorDebris_Update(ActorDebris* this) {
|
||||
(this->timer_0BE == 0)) {
|
||||
func_effect_8007B8F8(this->obj.pos.x, this->obj.pos.y, this->obj.pos.z + 50.0f, this->scale * 10.0f);
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
func_effect_8007A6F0(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
Effect_SpawnTimedSfxAtPos(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -675,7 +677,7 @@ void ActorDebris_Update(ActorDebris* this) {
|
||||
(this->timer_0BE == 0)) {
|
||||
func_effect_8007B8F8(this->obj.pos.x, this->obj.pos.y, this->obj.pos.z + 50.0f, this->scale * 10.0f);
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
func_effect_8007A6F0(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
Effect_SpawnTimedSfxAtPos(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -696,7 +698,7 @@ void ActorDebris_Update(ActorDebris* this) {
|
||||
(this->timer_0BE == 0)) {
|
||||
func_effect_8007B8F8(this->obj.pos.x, this->obj.pos.y, this->obj.pos.z + 50.0f, this->scale * 10.0f);
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
func_effect_8007A6F0(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
Effect_SpawnTimedSfxAtPos(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -707,7 +709,7 @@ void ActorDebris_Update(ActorDebris* this) {
|
||||
func_effect_8007B8F8(this->obj.pos.x, this->obj.pos.y, this->obj.pos.z + 70.0f, this->scale * 20.0f);
|
||||
func_effect_8007B8F8(this->obj.pos.x, this->obj.pos.y, this->obj.pos.z + 70.0f, this->scale * 20.0f);
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
func_effect_8007A6F0(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
Effect_SpawnTimedSfxAtPos(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -779,7 +781,7 @@ void ActorDebris_Update(ActorDebris* this) {
|
||||
(this->timer_0BE == 0)) {
|
||||
func_effect_8007D0E0(this->obj.pos.x, this->obj.pos.y, this->obj.pos.z, 10.0f);
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
func_effect_8007A6F0(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
Effect_SpawnTimedSfxAtPos(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
}
|
||||
} else if (((this->state >= 41) && (this->state < 45)) || (this->state == 59)) {
|
||||
if (((this->timer_0BC == 0) ||
|
||||
@@ -787,7 +789,7 @@ void ActorDebris_Update(ActorDebris* this) {
|
||||
(this->timer_0BE == 0)) {
|
||||
func_effect_8007D0E0(this->obj.pos.x, this->obj.pos.y, this->obj.pos.z, 2.0f * this->scale);
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
func_effect_8007A6F0(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
Effect_SpawnTimedSfxAtPos(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
}
|
||||
if (Play_CheckDynaFloorCollision(&sp44, &sp40, this->obj.pos.x, this->obj.pos.y, this->obj.pos.z)) {
|
||||
func_effect_8007B228(this->obj.pos.x, sp44, this->obj.pos.z, 2.0f);
|
||||
@@ -804,7 +806,7 @@ void ActorDebris_Update(ActorDebris* this) {
|
||||
func_effect_8007BFFC(this->obj.pos.x, this->obj.pos.y, this->obj.pos.z, this->vel.x, this->vel.y,
|
||||
this->vel.z, this->scale * 1.5f, 4);
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
func_effect_8007A6F0(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
Effect_SpawnTimedSfxAtPos(&this->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
}
|
||||
} else {
|
||||
if ((this->state == 3) && ((this->timer_0BC % 8) == 0)) {
|
||||
@@ -1008,7 +1010,7 @@ static EventActorInfo sEventActorInfo[108] = {
|
||||
/* 68 */ { D_SY_60205D0, D_SY_603445C, 3.0f, 100.0f, 3000.0f, 1, 0, EISFX_NONE, 0, 1.0f, 1 },
|
||||
/* 69 */ { D_SY_60036A0, D_SY_6034664, -1.0f, 10000.0f, 3001.0f, 0, 0, EISFX_NONE, 0, 0.0f, 1 },
|
||||
/* 70 */ { D_SY_601AD70, gNoHitbox, 4.0f, 100.0f, 3000.0f, 0, 0, EISFX_EN_ENGINE_01, 0, 0.0f, 1 },
|
||||
/* 71 */ { D_arwing_3007650, gNoHitbox, 1.0f, 100.0f, 3000.0f, 2, 0, EISFX_OB_WING, 0, 0.0f, 1 },
|
||||
/* 71 */ { aArwingItemLasersDL, gNoHitbox, 1.0f, 100.0f, 3000.0f, 2, 0, EISFX_OB_WING, 0, 0.0f, 1 },
|
||||
/* 72 */ { D_SY_60034D0, D_SY_60347D4, 3.0f, 100.0f, 3000.0f, 1, 0, EISFX_NONE, 0, 0.0f, 1 },
|
||||
/* 73 */ { D_SY_6005360, D_SY_6034770, -1.0f, 10000.0f, 3001.0f, 0, 0, EISFX_NONE, 0, 0.0f, 1 },
|
||||
/* 74 */ { D_SY_600F6C0, D_SY_60347F0, -1.0f, 10000.0f, 3001.0f, 0, 0, EISFX_NONE, 0, 0.0f, 1 },
|
||||
@@ -1761,7 +1763,7 @@ void ActorEvent_SetupEffect347(Effect* effect, f32 xPos, f32 yPos, f32 zPos, f32
|
||||
effect->scale1 = scale1;
|
||||
effect->unk_44 = 100;
|
||||
Object_SetInfo(&effect->info, effect->obj.id);
|
||||
func_effect_8007A6F0(&effect->obj.pos, NA_SE_EN_EXPLOSION_M);
|
||||
Effect_SpawnTimedSfxAtPos(&effect->obj.pos, NA_SE_EN_EXPLOSION_M);
|
||||
}
|
||||
|
||||
void ActorEvent_SpawnEffect347(f32 xPos, f32 yPos, f32 zPos, f32 scale1) {
|
||||
@@ -1790,7 +1792,7 @@ void ActorEvent_SetupEffect394(Effect* effect, f32 xPos, f32 yPos, f32 zPos, f32
|
||||
effect->unk_7A = 18;
|
||||
Object_SetInfo(&effect->info, effect->obj.id);
|
||||
effect->info.damage = 40;
|
||||
func_effect_8007A6F0(&effect->obj.pos, NA_SE_EN_EXPLOSION_M);
|
||||
Effect_SpawnTimedSfxAtPos(&effect->obj.pos, NA_SE_EN_EXPLOSION_M);
|
||||
}
|
||||
|
||||
void ActorEvent_SpawnEffect394(f32 xPos, f32 yPos, f32 zPos, f32 scale1) {
|
||||
@@ -1819,9 +1821,9 @@ void ActorEvent_8006F254(ActorEvent* this) {
|
||||
sp54.z = gEnemyShotSpeed;
|
||||
|
||||
Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp54, &sp48);
|
||||
func_effect_8007F04C(OBJ_EFFECT_353, this->obj.pos.x + sp48.x, this->obj.pos.y + sp48.y, this->obj.pos.z + sp48.z,
|
||||
this->obj.rot.x, this->obj.rot.y, this->obj.rot.z, this->vwork[29].x, this->vwork[29].y,
|
||||
this->vwork[29].z + this->rot_0F4.z, sp48.x, sp48.y, sp48.z, 1.0f);
|
||||
func_effect_8007F04C(OBJ_EFFECT_ENEMY_LASER_1, this->obj.pos.x + sp48.x, this->obj.pos.y + sp48.y,
|
||||
this->obj.pos.z + sp48.z, this->obj.rot.x, this->obj.rot.y, this->obj.rot.z, this->vwork[29].x,
|
||||
this->vwork[29].y, this->vwork[29].z + this->rot_0F4.z, sp48.x, sp48.y, sp48.z, 1.0f);
|
||||
}
|
||||
|
||||
void ActorEvent_ProcessActions(ActorEvent* this) {
|
||||
@@ -1844,8 +1846,8 @@ void ActorEvent_ProcessActions(ActorEvent* this) {
|
||||
|
||||
case EVACT_2: // shoot at player
|
||||
if (this->obj.pos.z < (gPlayer[0].trueZpos - 600.0f)) {
|
||||
func_effect_8007F11C(OBJ_EFFECT_353, this->obj.pos.x, this->obj.pos.y, this->obj.pos.z,
|
||||
gEnemyShotSpeed);
|
||||
Effect_EnemyLaser(OBJ_EFFECT_ENEMY_LASER_1, this->obj.pos.x, this->obj.pos.y, this->obj.pos.z,
|
||||
gEnemyShotSpeed);
|
||||
}
|
||||
this->unk_048 = EVACT_NONE;
|
||||
break;
|
||||
@@ -1895,15 +1897,15 @@ void ActorEvent_ProcessActions(ActorEvent* this) {
|
||||
|
||||
case EVACT_6:
|
||||
if (this->obj.pos.z < (gPlayer[0].trueZpos - 600.0f)) {
|
||||
func_effect_8007F11C(OBJ_EFFECT_355, this->obj.pos.x, this->obj.pos.y, this->obj.pos.z,
|
||||
gEnemyShotSpeed);
|
||||
Effect_EnemyLaser(OBJ_EFFECT_355, this->obj.pos.x, this->obj.pos.y, this->obj.pos.z,
|
||||
gEnemyShotSpeed);
|
||||
}
|
||||
this->unk_048 = EVACT_NONE;
|
||||
break;
|
||||
|
||||
case EVACT_7:
|
||||
if (this->obj.pos.z < (gPlayer[0].trueZpos - 600.0f)) {
|
||||
func_effect_8007F11C(OBJ_EFFECT_356, this->obj.pos.x, this->obj.pos.y, this->obj.pos.z, 60.0f);
|
||||
Effect_EnemyLaser(OBJ_EFFECT_356, this->obj.pos.x, this->obj.pos.y, this->obj.pos.z, 60.0f);
|
||||
}
|
||||
this->unk_048 = EVACT_NONE;
|
||||
break;
|
||||
@@ -1913,8 +1915,8 @@ void ActorEvent_ProcessActions(ActorEvent* this) {
|
||||
sp6C.y = gPlayer[0].pos.y;
|
||||
gPlayer[0].pos.x += RAND_FLOAT_CENTERED(300.0f);
|
||||
gPlayer[0].pos.y += RAND_FLOAT_CENTERED(300.0f);
|
||||
func_effect_8007F11C(OBJ_EFFECT_353, this->obj.pos.x, this->obj.pos.y, this->obj.pos.z,
|
||||
gEnemyShotSpeed);
|
||||
Effect_EnemyLaser(OBJ_EFFECT_ENEMY_LASER_1, this->obj.pos.x, this->obj.pos.y, this->obj.pos.z,
|
||||
gEnemyShotSpeed);
|
||||
gPlayer[0].pos.x = sp6C.x;
|
||||
gPlayer[0].pos.y = sp6C.y;
|
||||
this->unk_048 = EVACT_NONE;
|
||||
@@ -1943,7 +1945,7 @@ void ActorEvent_ProcessActions(ActorEvent* this) {
|
||||
this->vel.z, this->scale * 3.0f, 15);
|
||||
Actor_Despawn(this);
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
func_effect_8007A6F0(&this->obj.pos, NA_SE_EN_EXPLOSION_M);
|
||||
Effect_SpawnTimedSfxAtPos(&this->obj.pos, NA_SE_EN_EXPLOSION_M);
|
||||
break;
|
||||
|
||||
case EVACT_DESPAWN:
|
||||
@@ -1967,16 +1969,16 @@ void ActorEvent_ProcessActions(ActorEvent* this) {
|
||||
break;
|
||||
|
||||
case EVACT_16:
|
||||
func_effect_8007F11C(OBJ_EFFECT_353, this->obj.pos.x + 190.0f, this->obj.pos.y + 90.0f,
|
||||
this->obj.pos.z + 220.0f, gEnemyShotSpeed);
|
||||
func_effect_8007F11C(OBJ_EFFECT_353, this->obj.pos.x - 190.0f, this->obj.pos.y + 90.0f,
|
||||
this->obj.pos.z + 220.0f, gEnemyShotSpeed);
|
||||
Effect_EnemyLaser(OBJ_EFFECT_ENEMY_LASER_1, this->obj.pos.x + 190.0f, this->obj.pos.y + 90.0f,
|
||||
this->obj.pos.z + 220.0f, gEnemyShotSpeed);
|
||||
Effect_EnemyLaser(OBJ_EFFECT_ENEMY_LASER_1, this->obj.pos.x - 190.0f, this->obj.pos.y + 90.0f,
|
||||
this->obj.pos.z + 220.0f, gEnemyShotSpeed);
|
||||
this->unk_048 = EVACT_NONE;
|
||||
break;
|
||||
|
||||
case EVACT_17:
|
||||
if (this->obj.pos.z < (gPlayer[0].cam.eye.z - 600.0f)) {
|
||||
func_effect_8007F20C(OBJ_EFFECT_353, this->obj.pos.x, this->obj.pos.y, this->obj.pos.z,
|
||||
func_effect_8007F20C(OBJ_EFFECT_ENEMY_LASER_1, this->obj.pos.x, this->obj.pos.y, this->obj.pos.z,
|
||||
gEnemyShotSpeed);
|
||||
}
|
||||
this->unk_048 = EVACT_NONE;
|
||||
@@ -2047,7 +2049,7 @@ void ActorEvent_8006FEEC(ActorEvent* this) {
|
||||
this->itemDrop = DROP_NONE;
|
||||
Actor_Despawn(this);
|
||||
Object_Kill(&this->obj, this->sfxSource);
|
||||
func_effect_8007A6F0(&this->obj.pos, NA_SE_EN_BIRD_DOWN);
|
||||
Effect_SpawnTimedSfxAtPos(&this->obj.pos, NA_SE_EN_BIRD_DOWN);
|
||||
func_effect_8007D2C8(this->obj.pos.x, this->obj.pos.y, this->obj.pos.z, 4.0f);
|
||||
} else {
|
||||
AUDIO_PLAY_SFX(NA_SE_EN_BIRD_DAMAGE, this->sfxSource, 4);
|
||||
@@ -3161,7 +3163,7 @@ void ActorEvent_Update(ActorEvent* this) {
|
||||
var_fv0 = 0.0f;
|
||||
}
|
||||
|
||||
func_effect_8007F04C(OBJ_EFFECT_353, this->obj.pos.x + spAC.x + spA0.x,
|
||||
func_effect_8007F04C(OBJ_EFFECT_ENEMY_LASER_1, this->obj.pos.x + spAC.x + spA0.x,
|
||||
this->obj.pos.y + spAC.y + spA0.y + var_fv0, this->obj.pos.z + spAC.z + spA0.z,
|
||||
this->fwork[15], this->obj.rot.y, this->obj.rot.z, this->vwork[29].x,
|
||||
this->vwork[29].y, this->vwork[29].z + this->rot_0F4.z, spAC.x, spAC.y, spAC.z,
|
||||
@@ -3653,7 +3655,7 @@ void ActorEvent_Update(ActorEvent* this) {
|
||||
effect->unk_60.z = -effect->unk_60.z;
|
||||
}
|
||||
|
||||
if (gGameFrameCount & 2) {
|
||||
if ((gGameFrameCount & 2) != 0) {
|
||||
effect->vel.y = -effect->vel.y;
|
||||
}
|
||||
}
|
||||
@@ -3905,6 +3907,7 @@ void ActorEvent_Draw(ActorEvent* this) {
|
||||
gSPDisplayList(gMasterDisp++, sEventActorInfo[this->eventType].dList);
|
||||
gDPSetTextureFilter(gMasterDisp++, G_TF_BILERP);
|
||||
break;
|
||||
|
||||
default:
|
||||
if ((this->eventType < EVID_200) && (sEventActorInfo[this->eventType].dList != NULL)) {
|
||||
gSPDisplayList(gMasterDisp++, sEventActorInfo[this->eventType].dList);
|
||||
@@ -4101,7 +4104,7 @@ void ActorEvent_Draw(ActorEvent* this) {
|
||||
case EVID_79:
|
||||
temp_s0 = this->state;
|
||||
this->state = 2; // actor 235 state
|
||||
Zoness_80190430(this);
|
||||
Zoness_Actor235_Draw(this);
|
||||
this->state = temp_s0;
|
||||
break;
|
||||
|
||||
@@ -4261,7 +4264,7 @@ void func_enmy2_800763A4(Actor* actor) {
|
||||
actor->scale * 3.0f, 5);
|
||||
func_effect_8007B228(actor->obj.pos.x, sp58, actor->obj.pos.z, 2.0f);
|
||||
actor->timer_0BE = 2;
|
||||
func_effect_8007A6F0(&actor->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
Effect_SpawnTimedSfxAtPos(&actor->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -4272,7 +4275,7 @@ void func_enmy2_800763A4(Actor* actor) {
|
||||
actor->obj.pos.z - actor->vel.z, 0.0f, 0.0f, 0.0f, actor->scale * 4.0f, 20);
|
||||
func_enmy_80062C38(actor->obj.pos.x, actor->obj.pos.z);
|
||||
actor->timer_0BE = 2;
|
||||
func_effect_8007A6F0(&actor->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
Effect_SpawnTimedSfxAtPos(&actor->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
@@ -4304,9 +4307,9 @@ void func_enmy2_800763A4(Actor* actor) {
|
||||
actor->obj.pos.z - actor->vel.z, actor->scale * 3.0f);
|
||||
|
||||
if ((actor->obj.id == OBJ_ACTOR_ALLRANGE) && (actor->aiType < AI360_KATT)) {
|
||||
func_effect_8007A6F0(&actor->obj.pos, NA_SE_EN_EXPLOSION_M);
|
||||
Effect_SpawnTimedSfxAtPos(&actor->obj.pos, NA_SE_EN_EXPLOSION_M);
|
||||
} else {
|
||||
func_effect_8007A6F0(&actor->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
Effect_SpawnTimedSfxAtPos(&actor->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
}
|
||||
|
||||
if ((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->eventType == EVID_SLIPPY_METEO)) {
|
||||
@@ -4372,9 +4375,9 @@ void func_enmy2_800763A4(Actor* actor) {
|
||||
actor->timer_0BE = 2;
|
||||
|
||||
if ((actor->obj.id == OBJ_ACTOR_ALLRANGE) && (actor->aiType < AI360_KATT)) {
|
||||
func_effect_8007A6F0(&actor->obj.pos, NA_SE_EN_EXPLOSION_M);
|
||||
Effect_SpawnTimedSfxAtPos(&actor->obj.pos, NA_SE_EN_EXPLOSION_M);
|
||||
} else {
|
||||
func_effect_8007A6F0(&actor->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
Effect_SpawnTimedSfxAtPos(&actor->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -4410,9 +4413,9 @@ void func_enmy2_800763A4(Actor* actor) {
|
||||
actor->timer_0BE = 2;
|
||||
|
||||
if ((actor->obj.id == OBJ_ACTOR_ALLRANGE) && (actor->aiType < AI360_KATT)) {
|
||||
func_effect_8007A6F0(&actor->obj.pos, NA_SE_EN_EXPLOSION_M);
|
||||
Effect_SpawnTimedSfxAtPos(&actor->obj.pos, NA_SE_EN_EXPLOSION_M);
|
||||
} else {
|
||||
func_effect_8007A6F0(&actor->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
Effect_SpawnTimedSfxAtPos(&actor->obj.pos, NA_SE_EN_EXPLOSION_S);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -95,7 +95,7 @@ void Game_SetGameState(void) {
|
||||
gLevelPhase = gNextLevelPhase;
|
||||
gNextLevelPhase = 0;
|
||||
if ((gLevelPhase != 0) && (gCurrentLevel != LEVEL_VENOM_ANDROSS)) {
|
||||
D_ctx_8017782C = 0;
|
||||
D_ctx_8017782C = false;
|
||||
}
|
||||
break;
|
||||
case GSTATE_MAP:
|
||||
|
||||
+15
-14
@@ -1322,7 +1322,7 @@ void HUD_DrawStatusScreens(void) {
|
||||
|
||||
s32 func_hud_800886B8(void) {
|
||||
s32 var_v1 = 0;
|
||||
f32 var_fv1 = gInputPress->stick_y; // related to the vertical height of the arwing
|
||||
f32 var_fv1 = gInputPress->stick_y;
|
||||
|
||||
if ((var_fv1 != 0.0f) && (D_80161810[4] != 0)) {
|
||||
return 0;
|
||||
@@ -2159,27 +2159,28 @@ s32 func_hud_8008A4DC(void) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
s32 func_hud_8008AC54(s32 arg0) {
|
||||
// Why is this function here in fox_hud? Weird.
|
||||
s32 Hud_MissileSeekModeCheck(s32 missileSeekMode) {
|
||||
Actor* actor;
|
||||
s32 i;
|
||||
s32 ret = 0;
|
||||
|
||||
for (i = 0, actor = gActors; i < 60; i++, actor++) {
|
||||
switch (arg0) {
|
||||
case 0:
|
||||
if ((actor->obj.status == OBJ_ACTIVE) && (actor->obj.id == OBJ_ACTOR_190)) {
|
||||
for (i = 0, actor = &gActors[0]; i < 60; i++, actor++) {
|
||||
switch (missileSeekMode) {
|
||||
case 0: // follows teammates
|
||||
if ((actor->obj.status == OBJ_ACTIVE) && (actor->obj.id == OBJ_MISSILE_SEEK_TEAM)) {
|
||||
ret++;
|
||||
}
|
||||
break;
|
||||
|
||||
case 1:
|
||||
if ((actor->obj.status == OBJ_ACTIVE) && (actor->obj.id == OBJ_ACTOR_191)) {
|
||||
case 1: // follows player
|
||||
if ((actor->obj.status == OBJ_ACTIVE) && (actor->obj.id == OBJ_MISSILE_SEEK_PLAYER)) {
|
||||
ret++;
|
||||
}
|
||||
break;
|
||||
|
||||
case 2:
|
||||
if (((actor->obj.id == OBJ_ACTOR_190) || (actor->obj.id == OBJ_ACTOR_191)) &&
|
||||
case 2: // follows either
|
||||
if (((actor->obj.id == OBJ_MISSILE_SEEK_TEAM) || (actor->obj.id == OBJ_MISSILE_SEEK_PLAYER)) &&
|
||||
(actor->obj.status == OBJ_ACTIVE)) {
|
||||
ret++;
|
||||
}
|
||||
@@ -3526,7 +3527,7 @@ void func_hud_8008F96C(void) {
|
||||
}
|
||||
|
||||
if (gCurrentLevel == LEVEL_TRAINING) {
|
||||
Training_801988E0();
|
||||
Training_RingPassCount_Draw();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4186,7 +4187,7 @@ bool func_hud_800915FC(Actor* actor) {
|
||||
y = 720.0f;
|
||||
}
|
||||
|
||||
if (boss->obj.id == OBJ_BOSS_293) {
|
||||
if (boss->obj.id == OBJ_BOSS_CO_CARRIER) {
|
||||
y = 280.0f;
|
||||
}
|
||||
|
||||
@@ -5306,7 +5307,7 @@ f32 D_800D24C0[] = { 128.0f, 128.0f, 255.0f, 128.0f };
|
||||
s32 D_800D24C8[] = { 0, 900 };
|
||||
f32 D_800D24CC = 0.02f;
|
||||
|
||||
void func_hud_80094954(Effect* effect) {
|
||||
void Hud_Effect363_Update(Effect* effect) {
|
||||
Player* player = &gPlayer[0];
|
||||
|
||||
if ((player->state_1C8 == PLAYERSTATE_1C8_LEVEL_INTRO) && (gCurrentLevel == LEVEL_AQUAS) && (player->csState < 2)) {
|
||||
@@ -5363,7 +5364,7 @@ void func_hud_80094954(Effect* effect) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_hud_80094BBC(Effect* effect) {
|
||||
void Hud_Effect363_Draw(Effect* effect) {
|
||||
if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_LEVEL_INTRO) && (gCurrentLevel == LEVEL_AQUAS) &&
|
||||
(gPlayer[0].csState < 2)) {
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_68);
|
||||
|
||||
@@ -26,12 +26,14 @@ void func_pause_800A3E00(void) {
|
||||
D_ctx_80177868 = 1;
|
||||
}
|
||||
break;
|
||||
|
||||
case 1:
|
||||
D_ctx_80177868 = 2;
|
||||
gDrawMode = DRAW_UNK_7;
|
||||
gCsCamEyeX = gCsCamEyeY = gCsCamEyeZ = gCsCamAtX = gCsCamAtY = 0.0f;
|
||||
gCsCamAtZ = -10.0f;
|
||||
break;
|
||||
|
||||
case 2:
|
||||
if ((gControllerPress[0].button & START_BUTTON) || (gControllerPress[1].button & START_BUTTON)) {
|
||||
Audio_PlayPauseSfx(0);
|
||||
@@ -41,6 +43,7 @@ void func_pause_800A3E00(void) {
|
||||
gNextGameStateTimer = 0;
|
||||
}
|
||||
break;
|
||||
|
||||
case 3:
|
||||
if (gNextGameStateTimer == 0) {
|
||||
gPlayState = PLAY_UPDATE;
|
||||
|
||||
+62
-58
@@ -342,7 +342,7 @@ void Play_Setup360_CO(void) {
|
||||
s32 i;
|
||||
s32 j;
|
||||
|
||||
gLevelObjects = SEGMENTED_TO_VIRTUAL(D_CO_603B074);
|
||||
gLevelObjects = SEGMENTED_TO_VIRTUAL(aCoAllRangeLevelObjects);
|
||||
|
||||
for (j = 0, scenery360 = gScenery360; j < 200; j++) {
|
||||
if (gLevelObjects[j].id <= OBJ_INVALID) {
|
||||
@@ -357,7 +357,7 @@ void Play_Setup360_CO(void) {
|
||||
scenery360->obj.pos.y = gLevelObjects[j].yPos;
|
||||
scenery360->obj.rot.y = gLevelObjects[j].rot.y;
|
||||
Object_SetInfo(&scenery360->info, scenery360->obj.id);
|
||||
if (scenery360->obj.id == OBJ_SCENERY_1) {
|
||||
if (scenery360->obj.id == OBJ_SCENERY_CO_BUMP_1) {
|
||||
scenery360->info.dList = D_CO_6020760;
|
||||
}
|
||||
scenery360++;
|
||||
@@ -385,7 +385,7 @@ void Play_Setup360_CO(void) {
|
||||
gBosses[i].obj.pos.x = 0.0f;
|
||||
gBosses[i].obj.pos.y = 0.0f;
|
||||
gBosses[i].obj.pos.z = 0.0f;
|
||||
gBosses[i].obj.id = OBJ_BOSS_292;
|
||||
gBosses[i].obj.id = OBJ_BOSS_CO_GRANGA;
|
||||
Object_SetInfo(&gBosses[i].info, gBosses[i].obj.id);
|
||||
}
|
||||
|
||||
@@ -461,10 +461,12 @@ void Play_Setup(void) {
|
||||
gAllRangeCheckpoint = gSavedObjectLoadIndex = 0;
|
||||
gSavedPathProgress = 0.0f;
|
||||
gSavedHitCount = gCsFrameCount = gLevelStartStatusScreenTimer = gLevelClearScreenTimer = gRadioState = 0;
|
||||
D_ctx_8017782C = 1;
|
||||
D_ctx_8017782C = true;
|
||||
|
||||
if (((gCurrentLevel == LEVEL_VENOM_2) && (gNextLevelPhase == 2)) || (gCurrentLevel == LEVEL_VENOM_ANDROSS)) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (i = 1; i < 4; i++) {
|
||||
if (gSavedTeamShields[i] < 0) {
|
||||
if (gSavedTeamShields[i] == -1) {
|
||||
@@ -1212,8 +1214,8 @@ bool Play_CheckPolyCollision(ObjectId objId, f32 arg1, f32 arg2, f32 arg3, f32 a
|
||||
case OBJ_ACTOR_180:
|
||||
colId = COL1_0;
|
||||
break;
|
||||
case OBJ_SCENERY_4:
|
||||
case OBJ_SCENERY_5:
|
||||
case OBJ_SCENERY_CO_BUMP_4:
|
||||
case OBJ_SCENERY_CO_BUMP_5:
|
||||
colId = COL2_1;
|
||||
useCol2 = true;
|
||||
break;
|
||||
@@ -1235,7 +1237,7 @@ bool Play_CheckPolyCollision(ObjectId objId, f32 arg1, f32 arg2, f32 arg3, f32 a
|
||||
case ACTOR_EVENT_ID:
|
||||
colId = COL1_3;
|
||||
break;
|
||||
case OBJ_BOSS_SZ:
|
||||
case OBJ_BOSS_SZ_GREAT_FOX:
|
||||
colId = COL1_8;
|
||||
break;
|
||||
case OBJ_SCENERY_ME_TUNNEL:
|
||||
@@ -1257,11 +1259,11 @@ bool Play_CheckPolyCollision(ObjectId objId, f32 arg1, f32 arg2, f32 arg3, f32 a
|
||||
colId = COL2_7;
|
||||
useCol2 = true;
|
||||
break;
|
||||
case OBJ_SCENERY_2:
|
||||
case OBJ_SCENERY_CO_BUMP_2:
|
||||
colId = COL2_2;
|
||||
useCol2 = true;
|
||||
break;
|
||||
case OBJ_SCENERY_3:
|
||||
case OBJ_SCENERY_CO_BUMP_3:
|
||||
case OBJ_SCENERY_69:
|
||||
colId = COL2_3;
|
||||
useCol2 = true;
|
||||
@@ -1331,10 +1333,10 @@ bool Play_CheckPolyCollision(ObjectId objId, f32 arg1, f32 arg2, f32 arg3, f32 a
|
||||
case OBJ_SCENERY_146:
|
||||
case OBJ_SCENERY_147:
|
||||
case OBJ_SCENERY_148:
|
||||
case OBJ_SCENERY_40:
|
||||
case OBJ_SCENERY_41:
|
||||
case OBJ_SCENERY_42:
|
||||
case OBJ_SCENERY_43:
|
||||
case OBJ_SCENERY_CO_BUILDING_9:
|
||||
case OBJ_SCENERY_CO_BUILDING_10:
|
||||
case OBJ_SCENERY_IBEAM:
|
||||
case OBJ_SCENERY_ZO_ROCK_1:
|
||||
case OBJ_SCENERY_44:
|
||||
case OBJ_SCENERY_45:
|
||||
case OBJ_SCENERY_46:
|
||||
@@ -1344,9 +1346,9 @@ bool Play_CheckPolyCollision(ObjectId objId, f32 arg1, f32 arg2, f32 arg3, f32 a
|
||||
case OBJ_SCENERY_51:
|
||||
case OBJ_SCENERY_52:
|
||||
case OBJ_SCENERY_53:
|
||||
case OBJ_SCENERY_54:
|
||||
case OBJ_SCENERY_55:
|
||||
case OBJ_SCENERY_56:
|
||||
case OBJ_SCENERY_CO_WATERFALL:
|
||||
case OBJ_SCENERY_CO_ROCKWALL:
|
||||
case OBJ_SCENERY_CO_DOORS:
|
||||
case OBJ_SCENERY_57:
|
||||
case OBJ_SCENERY_58:
|
||||
case OBJ_SCENERY_59:
|
||||
@@ -1645,8 +1647,8 @@ void Player_CollisionCheck(Player* player) {
|
||||
if ((scenery360->obj.id == OBJ_SCENERY_117) || (scenery360->obj.id == OBJ_SCENERY_143) ||
|
||||
(scenery360->obj.id == OBJ_SCENERY_141) || (scenery360->obj.id == OBJ_SCENERY_149) ||
|
||||
(scenery360->obj.id == OBJ_SCENERY_150) || (scenery360->obj.id == OBJ_SCENERY_148) ||
|
||||
(scenery360->obj.id == OBJ_SCENERY_160) || (scenery360->obj.id == OBJ_SCENERY_1) ||
|
||||
(scenery360->obj.id == OBJ_SCENERY_3) || (scenery360->obj.id == OBJ_SCENERY_140)) {
|
||||
(scenery360->obj.id == OBJ_SCENERY_160) || (scenery360->obj.id == OBJ_SCENERY_CO_BUMP_1) ||
|
||||
(scenery360->obj.id == OBJ_SCENERY_CO_BUMP_3) || (scenery360->obj.id == OBJ_SCENERY_140)) {
|
||||
temp_v0 = Player_CheckPolyCollision(player, scenery360->obj.id, scenery360->obj.pos.x,
|
||||
scenery360->obj.pos.y, scenery360->obj.pos.z,
|
||||
scenery360->obj.rot.x, scenery360->obj.rot.y,
|
||||
@@ -1666,7 +1668,7 @@ void Player_CollisionCheck(Player* player) {
|
||||
scenery360->obj.rot.y, scenery360->obj.rot.z, 0.0f, 0.0f, 0.0f);
|
||||
if ((temp_v0 != 0) && (temp_v0 < 0)) {
|
||||
if (player->whooshTimer == 0) {
|
||||
func_effect_8007A6F0(&scenery360->obj.pos, NA_SE_PASS);
|
||||
Effect_SpawnTimedSfxAtPos(&scenery360->obj.pos, NA_SE_PASS);
|
||||
}
|
||||
player->whooshTimer += 2;
|
||||
if (player->whooshTimer >= 4) {
|
||||
@@ -1682,7 +1684,7 @@ void Player_CollisionCheck(Player* player) {
|
||||
if (temp_v0 != 0) {
|
||||
if (temp_v0 < 0) {
|
||||
if (player->whooshTimer == 0) {
|
||||
func_effect_8007A6F0(&scenery360->obj.pos, NA_SE_PASS);
|
||||
Effect_SpawnTimedSfxAtPos(&scenery360->obj.pos, NA_SE_PASS);
|
||||
}
|
||||
player->whooshTimer += 2;
|
||||
if (player->whooshTimer >= 4) {
|
||||
@@ -1749,11 +1751,11 @@ void Player_CollisionCheck(Player* player) {
|
||||
(scenery->obj.id != OBJ_SCENERY_71) && (scenery->obj.id != OBJ_SCENERY_73) &&
|
||||
(scenery->obj.id != OBJ_SCENERY_74) && (scenery->obj.id != OBJ_SCENERY_69) &&
|
||||
((player->trueZpos - 2000.0f) < scenery->obj.pos.z)) {
|
||||
if ((scenery->obj.id == OBJ_SCENERY_1) || (scenery->obj.id == OBJ_SCENERY_4) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_5) || (scenery->obj.id == OBJ_SCENERY_47) ||
|
||||
if ((scenery->obj.id == OBJ_SCENERY_CO_BUMP_1) || (scenery->obj.id == OBJ_SCENERY_CO_BUMP_4) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_CO_BUMP_5) || (scenery->obj.id == OBJ_SCENERY_47) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_117) || (scenery->obj.id == OBJ_SCENERY_120) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_124) || (scenery->obj.id == OBJ_SCENERY_126) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_2) || (scenery->obj.id == OBJ_SCENERY_3)) {
|
||||
(scenery->obj.id == OBJ_SCENERY_CO_BUMP_2) || (scenery->obj.id == OBJ_SCENERY_CO_BUMP_3)) {
|
||||
spC8.x = scenery->obj.pos.x - player->pos.x;
|
||||
spC8.z = scenery->obj.pos.z - player->trueZpos;
|
||||
if (sqrtf(SQ(spC8.x) + SQ(spC8.z)) < 1100.0f) {
|
||||
@@ -1766,7 +1768,7 @@ void Player_CollisionCheck(Player* player) {
|
||||
}
|
||||
} else {
|
||||
padB0 = scenery->obj.rot.y;
|
||||
if (scenery->info.action == (ObjectFunc) func_enmy_80066EA8) {
|
||||
if (scenery->info.action == (ObjectFunc) SceneryRotateTowardsCamera) {
|
||||
padB0 = 0.0f;
|
||||
}
|
||||
temp_v0 = Player_CheckHitboxCollision(
|
||||
@@ -1788,7 +1790,7 @@ void Player_CollisionCheck(Player* player) {
|
||||
if (player->whooshTimer >= 4) {
|
||||
player->whooshTimer = 4;
|
||||
}
|
||||
} else if (scenery->obj.id == OBJ_SCENERY_54) {
|
||||
} else if (scenery->obj.id == OBJ_SCENERY_CO_WATERFALL) {
|
||||
if (player->whooshTimer == 0) {
|
||||
AUDIO_PLAY_SFX(NA_SE_IN_SPLASH_L, scenery->sfxSource, 0);
|
||||
}
|
||||
@@ -1798,7 +1800,8 @@ void Player_CollisionCheck(Player* player) {
|
||||
}
|
||||
} else {
|
||||
Player_ApplyDamage(player, temp_v0, scenery->info.damage);
|
||||
if ((scenery->obj.id == OBJ_SCENERY_48) || (scenery->obj.id == OBJ_SCENERY_55) ||
|
||||
if ((scenery->obj.id == OBJ_SCENERY_48) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_CO_ROCKWALL) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_49)) {
|
||||
Matrix_RotateY(gCalcMatrix, scenery->obj.rot.y * M_DTOR, MTXF_NEW);
|
||||
spC8.x = -(player->baseSpeed + player->boostSpeed) * 0.7f;
|
||||
@@ -1841,8 +1844,8 @@ void Player_CollisionCheck(Player* player) {
|
||||
}
|
||||
for (i = 0, boss = gBosses; i < ARRAY_COUNT(gBosses); i++, boss++) {
|
||||
if (boss->obj.status == OBJ_ACTIVE) {
|
||||
if ((boss->obj.id == OBJ_BOSS_VE2) || (boss->obj.id == OBJ_BOSS_FO) || (boss->obj.id == OBJ_BOSS_SZ) ||
|
||||
(boss->obj.id == OBJ_BOSS_309)) {
|
||||
if ((boss->obj.id == OBJ_BOSS_VE2) || (boss->obj.id == OBJ_BOSS_FO) ||
|
||||
(boss->obj.id == OBJ_BOSS_SZ_GREAT_FOX) || (boss->obj.id == OBJ_BOSS_309)) {
|
||||
temp_v0 =
|
||||
Player_CheckPolyCollision(player, boss->obj.id, boss->obj.pos.x, boss->obj.pos.y,
|
||||
boss->obj.pos.z, boss->obj.rot.x, boss->obj.rot.y, boss->obj.rot.z);
|
||||
@@ -1898,7 +1901,7 @@ void Player_CollisionCheck(Player* player) {
|
||||
break;
|
||||
}
|
||||
Player_ApplyDamage(player, temp_v0, boss->info.damage);
|
||||
if ((boss->obj.id == OBJ_BOSS_303) && ((boss->state == 2) || (boss->state == 3)) &&
|
||||
if ((boss->obj.id == OBJ_BOSS_SX_SPYBORG) && ((boss->state == 2) || (boss->state == 3)) &&
|
||||
(sp98 >= 9)) {
|
||||
player->knockback.y = -100.0f;
|
||||
}
|
||||
@@ -1996,7 +1999,7 @@ void Player_CollisionCheck(Player* player) {
|
||||
}
|
||||
} else {
|
||||
actor->dmgType = DMG_COLLISION;
|
||||
if (actor->obj.id == OBJ_ACTOR_190) {
|
||||
if (actor->obj.id == OBJ_MISSILE_SEEK_TEAM) {
|
||||
actor->dmgType = -1;
|
||||
}
|
||||
if (actor->info.damage) {
|
||||
@@ -2212,8 +2215,8 @@ void Player_FloorCheck(Player* player) {
|
||||
for (sp144 = 0, scenery360 = gScenery360; sp144 < 200; sp144++, scenery360++) {
|
||||
if ((scenery360->obj.status == OBJ_ACTIVE) &&
|
||||
((scenery360->obj.id == OBJ_SCENERY_150) || (scenery360->obj.id == OBJ_SCENERY_149) ||
|
||||
(scenery360->obj.id == OBJ_SCENERY_148) || (scenery360->obj.id == OBJ_SCENERY_1) ||
|
||||
(scenery360->obj.id == OBJ_SCENERY_3)) &&
|
||||
(scenery360->obj.id == OBJ_SCENERY_148) || (scenery360->obj.id == OBJ_SCENERY_CO_BUMP_1) ||
|
||||
(scenery360->obj.id == OBJ_SCENERY_CO_BUMP_3)) &&
|
||||
(fabsf(scenery360->obj.pos.x - player->pos.x) < 2500.0f) &&
|
||||
(fabsf(scenery360->obj.pos.z - player->trueZpos) < 2500.0f)) {
|
||||
tempx = scenery360->obj.pos.x;
|
||||
@@ -2246,7 +2249,7 @@ void Player_FloorCheck(Player* player) {
|
||||
}
|
||||
} else {
|
||||
colId = COL2_0;
|
||||
if (scenery360->obj.id == OBJ_SCENERY_3) {
|
||||
if (scenery360->obj.id == OBJ_SCENERY_CO_BUMP_3) {
|
||||
colId = COL2_3;
|
||||
}
|
||||
if (func_col2_800A3690(&spD4, &spC8, colId, &spBC)) {
|
||||
@@ -2263,14 +2266,14 @@ void Player_FloorCheck(Player* player) {
|
||||
(sp144 < 50) && (gLevelMode == LEVELMODE_ON_RAILS) && (gCurrentLevel != LEVEL_VENOM_1);
|
||||
sp144++, scenery++) {
|
||||
if ((scenery->obj.status == OBJ_ACTIVE) && ((player->trueZpos - 3000.0f) < scenery->obj.pos.z) &&
|
||||
(scenery->obj.id != OBJ_SCENERY_0) && (scenery->obj.id != OBJ_SCENERY_8)) {
|
||||
(scenery->obj.id != OBJ_SCENERY_CO_STONE_ARCH) && (scenery->obj.id != OBJ_SCENERY_CO_HIGHWAY_3)) {
|
||||
tempx = scenery->obj.pos.x;
|
||||
tempy = scenery->obj.pos.y;
|
||||
tempz = scenery->obj.pos.z;
|
||||
sp120 = scenery->obj.rot.y;
|
||||
if ((scenery->obj.id == OBJ_SCENERY_3) || (scenery->obj.id == OBJ_SCENERY_2) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_47) || (scenery->obj.id == OBJ_SCENERY_4) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_5)) {
|
||||
if ((scenery->obj.id == OBJ_SCENERY_CO_BUMP_3) || (scenery->obj.id == OBJ_SCENERY_CO_BUMP_2) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_47) || (scenery->obj.id == OBJ_SCENERY_CO_BUMP_4) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_CO_BUMP_5)) {
|
||||
Matrix_RotateY(gCalcMatrix, -sp120 * M_DTOR, MTXF_NEW);
|
||||
for (var_fs1 = var_fs0 = -50.0f; var_fs0 > -500.0f; var_fs0 -= 5.0f, var_fs1 -= 5.0f) {
|
||||
spEC.x = player->pos.x - tempx;
|
||||
@@ -2292,11 +2295,12 @@ void Player_FloorCheck(Player* player) {
|
||||
if (scenery->obj.id == OBJ_SCENERY_47) {
|
||||
colId = COL2_7;
|
||||
}
|
||||
if (scenery->obj.id == OBJ_SCENERY_2) {
|
||||
if (scenery->obj.id == OBJ_SCENERY_CO_BUMP_2) {
|
||||
colId = COL2_2;
|
||||
} else if (scenery->obj.id == OBJ_SCENERY_3) {
|
||||
} else if (scenery->obj.id == OBJ_SCENERY_CO_BUMP_3) {
|
||||
colId = COL2_3;
|
||||
} else if ((scenery->obj.id == OBJ_SCENERY_4) || (scenery->obj.id == OBJ_SCENERY_5)) {
|
||||
} else if ((scenery->obj.id == OBJ_SCENERY_CO_BUMP_4) ||
|
||||
(scenery->obj.id == OBJ_SCENERY_CO_BUMP_5)) {
|
||||
colId = COL2_1;
|
||||
}
|
||||
if (func_col2_800A3690(&spD4, &spC8, colId, &spBC)) {
|
||||
@@ -2312,7 +2316,7 @@ void Player_FloorCheck(Player* player) {
|
||||
hitboxData = scenery->info.hitbox;
|
||||
count = *hitboxData;
|
||||
if (count != 0) {
|
||||
if (scenery->info.action == (ObjectFunc) func_enmy_80066EA8) {
|
||||
if (scenery->info.action == (ObjectFunc) SceneryRotateTowardsCamera) {
|
||||
sp120 = 0.0f;
|
||||
}
|
||||
hitboxData++;
|
||||
@@ -2543,7 +2547,7 @@ void Player_InitVersus(void) {
|
||||
Player_Initialize(&gPlayer[i]);
|
||||
Player_Setup(&gPlayer[i]);
|
||||
Player_Update360(&gPlayer[i]);
|
||||
Camera_Update360(&gPlayer[i], 1);
|
||||
Camera_Update360(&gPlayer[i], true);
|
||||
}
|
||||
Play_ClearObjectData();
|
||||
}
|
||||
@@ -2665,12 +2669,12 @@ void Play_Init(void) {
|
||||
switch (gCurrentLevel) {
|
||||
case LEVEL_SECTOR_Z:
|
||||
if (!D_ctx_8017782C) {
|
||||
SectorZ_8019EA68();
|
||||
SectorZ_LoadLevelObjects();
|
||||
ActorAllRange_SpawnTeam();
|
||||
}
|
||||
break;
|
||||
case LEVEL_FORTUNA:
|
||||
Fortuna_8018BA2C();
|
||||
Fortuna_LoadLevelObjects();
|
||||
ActorAllRange_SpawnTeam();
|
||||
break;
|
||||
case LEVEL_KATINA:
|
||||
@@ -2686,7 +2690,7 @@ void Play_Init(void) {
|
||||
}
|
||||
break;
|
||||
case LEVEL_VENOM_2:
|
||||
Venom2_80196968();
|
||||
Venom2_LoadLevelObjects();
|
||||
if (gLevelPhase == 0) {
|
||||
ActorAllRange_SpawnTeam();
|
||||
}
|
||||
@@ -4274,7 +4278,7 @@ void Player_Setup(Player* playerx) {
|
||||
}
|
||||
break;
|
||||
}
|
||||
Camera_Update360(player, 1);
|
||||
Camera_Update360(player, true);
|
||||
}
|
||||
player->state_1C8 = PLAYERSTATE_1C8_ACTIVE;
|
||||
player->wingPosition = gLevelType;
|
||||
@@ -4291,7 +4295,7 @@ void Player_Setup(Player* playerx) {
|
||||
player->yRot_114 = 188.0f;
|
||||
player->hideShadow = true;
|
||||
}
|
||||
Camera_UpdateArwing360(player, 1);
|
||||
Camera_UpdateArwing360(player, true);
|
||||
} else {
|
||||
player->unk_014 = 1.0f;
|
||||
player->unk_018 = 1.0f;
|
||||
@@ -4302,7 +4306,7 @@ void Player_Setup(Player* playerx) {
|
||||
D_ctx_80177A10[j] = 0;
|
||||
D_ctx_80177A48[j] = 0.0f;
|
||||
}
|
||||
D_ctx_8017782C = 0;
|
||||
D_ctx_8017782C = false;
|
||||
gAllRangeCheckpoint = 0;
|
||||
switch (gCurrentLevel) {
|
||||
case LEVEL_CORNERIA:
|
||||
@@ -5497,7 +5501,7 @@ void Player_Update(Player* player) {
|
||||
Player_Initialize(player);
|
||||
Player_Setup(player);
|
||||
Player_Update360(player);
|
||||
Camera_Update360(player, 1);
|
||||
Camera_Update360(player, true);
|
||||
Player_PlaySfx(player->sfxSource, NA_SE_ARWING_BOOST, player->num);
|
||||
player->unk_190 = player->unk_194 = 5.0f;
|
||||
} else if (player->attacker >= 0) {
|
||||
@@ -5787,7 +5791,7 @@ void Camera_FollowPlayer(Player* player, s32 playerNum, bool arg2) {
|
||||
Math_SmoothStepToF(&player->camRoll, 0.0f, 0.05f, 5.0f, 0.00001f);
|
||||
}
|
||||
|
||||
void Camera_UpdateArwing360(Player* player, s32 arg1) {
|
||||
void Camera_UpdateArwing360(Player* player, bool arg1) {
|
||||
Vec3f sp74;
|
||||
Vec3f sp68;
|
||||
f32 temp1;
|
||||
@@ -5855,7 +5859,7 @@ void Camera_UpdateArwing360(Player* player, s32 arg1) {
|
||||
Math_SmoothStepToF(&player->cam.at.z, atZ, player->unk_01C, 30000.0f, 0);
|
||||
Math_SmoothStepToF(&player->unk_018, 0.2f, 0.1f, 0.005f, 0);
|
||||
Math_SmoothStepToF(&player->unk_01C, 1.0f, 0.1f, 0.005f, 0);
|
||||
if (arg1 != 0) {
|
||||
if (arg1) {
|
||||
player->cam.eye.x = eyeX;
|
||||
player->cam.eye.y = eyeY;
|
||||
player->cam.eye.z = eyeZ;
|
||||
@@ -5999,7 +6003,7 @@ void Camera_SetStarfieldPos(f32 xEye, f32 yEye, f32 zEye, f32 xAt, f32 yAt, f32
|
||||
}
|
||||
}
|
||||
|
||||
void Camera_Update360(Player* player, s32 arg1) {
|
||||
void Camera_Update360(Player* player, bool arg1) {
|
||||
switch (player->form) {
|
||||
case FORM_ON_FOOT:
|
||||
Camera_UpdateOnFoot360(player, arg1);
|
||||
@@ -6031,7 +6035,7 @@ void Camera_Update(Player* player) {
|
||||
}
|
||||
break;
|
||||
case LEVELMODE_ALL_RANGE:
|
||||
Camera_Update360(player, 0);
|
||||
Camera_Update360(player, false);
|
||||
break;
|
||||
case LEVELMODE_UNK_2:
|
||||
Turret_UpdateCamera(player);
|
||||
@@ -6040,7 +6044,7 @@ void Camera_Update(Player* player) {
|
||||
break;
|
||||
case PLAYERSTATE_1C8_U_TURN:
|
||||
player->camRoll -= player->camRoll * 0.1f;
|
||||
Camera_Update360(player, 0);
|
||||
Camera_Update360(player, false);
|
||||
break;
|
||||
case PLAYERSTATE_1C8_DOWN:
|
||||
if ((gLevelMode == LEVELMODE_ON_RAILS) && (player->form == FORM_ARWING)) {
|
||||
@@ -6158,7 +6162,7 @@ void Play_UpdateLevel(void) {
|
||||
switch (gCurrentLevel) {
|
||||
case LEVEL_TRAINING:
|
||||
if (gLevelMode == LEVELMODE_ALL_RANGE) {
|
||||
Training_8019949C();
|
||||
Training_SpawnEnemies();
|
||||
}
|
||||
break;
|
||||
case LEVEL_VERSUS:
|
||||
@@ -6183,7 +6187,7 @@ void Play_UpdateLevel(void) {
|
||||
gPlayer[0].csState = 0;
|
||||
gPlayer[0].draw = true;
|
||||
gPlayer[0].pos.z = 15000.0f;
|
||||
Camera_Update360(gPlayer, 1);
|
||||
Camera_Update360(gPlayer, true);
|
||||
gFillScreenAlpha = 255;
|
||||
gFillScreenAlphaStep = 255;
|
||||
gFillScreenAlphaTarget = 255;
|
||||
@@ -6436,7 +6440,7 @@ void Play_Main(void) {
|
||||
gPlayer[0].zPath = gPlayer[0].zPathVel = gPathVelZ = gPathProgress = 0.0f;
|
||||
}
|
||||
if (gPlayState != PLAY_PAUSE) {
|
||||
(void) "play_time = %d\n";
|
||||
PRINTF("play_time = %d\n");
|
||||
gGameFrameCount++;
|
||||
}
|
||||
switch (gPlayState) {
|
||||
@@ -6475,7 +6479,7 @@ void Play_Main(void) {
|
||||
gCamCount = 1;
|
||||
gBgColor = 0;
|
||||
gCsFrameCount = gLevelClearScreenTimer = gLevelStartStatusScreenTimer = gRadioState = 0;
|
||||
D_ctx_8017782C = 0;
|
||||
D_ctx_8017782C = false;
|
||||
}
|
||||
if (gVersusMode) {
|
||||
Versus_Main();
|
||||
|
||||
@@ -33,11 +33,13 @@ void Graphics_NMIWipe(void) {
|
||||
if (sWipeBarLength == 0) {
|
||||
AudioThread_PreNMIReset();
|
||||
}
|
||||
|
||||
sWipeBarLength += SCREEN_WIDTH / 7;
|
||||
if (sWipeBarLength >= SCREEN_WIDTH * 85 / 8 / 7) { // Why 85 / 8 == 3400 / 320 == 10.625? Has to do with NMI timing?
|
||||
osViBlack(true);
|
||||
gStopTasks = true;
|
||||
}
|
||||
|
||||
for (i = 0; i < MAXCONTROLLERS; i++) {
|
||||
gControllerRumbleEnabled[i] = 0;
|
||||
gControllerRumbleFlags[i] = 0;
|
||||
|
||||
@@ -65,7 +65,7 @@ s32 Save_Read(void) {
|
||||
gSaveFile = gSaveIOBuffer;
|
||||
|
||||
if (gSaveFile.save.checksum == Save_Checksum(&gSaveFile.save)) {
|
||||
(void) "EEPROM ROM[0] 正常\n";
|
||||
PRINTF("EEPROM ROM[0] 正常\n");
|
||||
return 0;
|
||||
}
|
||||
#ifdef AVOID_UB
|
||||
@@ -78,9 +78,10 @@ s32 Save_Read(void) {
|
||||
gSaveFile.save.checksum = gSaveFile.backup.checksum;
|
||||
|
||||
if (gSaveFile.save.checksum == Save_Checksum(&gSaveFile.save)) {
|
||||
(void) "EEPROM ROM[1] 正常\n";
|
||||
PRINTF("EEPROM ROM[1] 正常\n");
|
||||
return 0;
|
||||
} else {
|
||||
PRINTF("EEPROM ROM[0] & ROM[1] 異常\n");
|
||||
return -1;
|
||||
}
|
||||
(void) "EEPROM ROM[0] & ROM[1] 異常\n";
|
||||
return -1;
|
||||
}
|
||||
|
||||
@@ -537,7 +537,7 @@ void func_tank_80045130(Player* player) {
|
||||
}
|
||||
|
||||
void func_tank_80045348(Player* player) {
|
||||
f32 sp44 = 15.0f;
|
||||
f32 baseSpeedTarget = 15.0f;
|
||||
f32 sp40 = 0;
|
||||
f32 sp3C = 0.1f;
|
||||
f32 sp38 = 3.5f;
|
||||
@@ -555,7 +555,7 @@ void func_tank_80045348(Player* player) {
|
||||
} else {
|
||||
player->unk_190 = 2.0f;
|
||||
}
|
||||
sp44 = 25.0f;
|
||||
baseSpeedTarget = 25.0f;
|
||||
sp40 = -200.0f;
|
||||
sp3C = 0.2f;
|
||||
sp38 = 6.0f;
|
||||
@@ -571,7 +571,7 @@ void func_tank_80045348(Player* player) {
|
||||
}
|
||||
if ((gBrakeButton[player->num] & gInputHold->button) && !player->boostCooldown && !sp2E) {
|
||||
D_800C9F14++;
|
||||
sp44 = 5.0f;
|
||||
baseSpeedTarget = 5.0f;
|
||||
sp40 = 100.0f;
|
||||
sp3C = 0.2f;
|
||||
D_800C9F28 += 1.0f;
|
||||
@@ -579,7 +579,7 @@ void func_tank_80045348(Player* player) {
|
||||
} else {
|
||||
D_800C9F28 = 0.0f;
|
||||
}
|
||||
Math_SmoothStepToF(&player->baseSpeed, sp44, sp3C, sp38, 0.001f);
|
||||
Math_SmoothStepToF(&player->baseSpeed, baseSpeedTarget, sp3C, sp38, 0.001f);
|
||||
Math_SmoothStepToF(&player->camDist, sp40, sp3C, sp38, 0.001f);
|
||||
} else if (player->unk_19C == -1) {
|
||||
Math_SmoothStepToF(&player->baseSpeed, player->unk_000, 0.1f, 2.0f, 0.01f);
|
||||
@@ -1351,7 +1351,7 @@ void func_tank_800481F4(Player* player) {
|
||||
(scenery->obj.id != OBJ_SCENERY_73) && (scenery->obj.id != OBJ_SCENERY_74) &&
|
||||
(scenery->obj.id != OBJ_SCENERY_69) && ((player->trueZpos - 2000.0f) < scenery->obj.pos.z)) {
|
||||
var_fv1 = scenery->obj.rot.y;
|
||||
if (scenery->info.action == (ObjectFunc) func_enmy_80066EA8) {
|
||||
if (scenery->info.action == (ObjectFunc) SceneryRotateTowardsCamera) {
|
||||
var_fv1 = 0.0f;
|
||||
}
|
||||
temp_v0 = Player_CheckHitboxCollision(player, scenery->info.hitbox, &sp98, scenery->obj.pos.x,
|
||||
@@ -1463,7 +1463,7 @@ void func_tank_800481F4(Player* player) {
|
||||
actor->obj.rot.y, actor->obj.rot.z, 0.0f, 0.0f, 0.0f);
|
||||
if (temp_v0 != 0) {
|
||||
actor->dmgType = DMG_COLLISION;
|
||||
if ((actor->obj.id == OBJ_ACTOR_225) || (actor->obj.id == OBJ_ACTOR_190)) {
|
||||
if ((actor->obj.id == OBJ_ACTOR_225) || (actor->obj.id == OBJ_MISSILE_SEEK_TEAM)) {
|
||||
actor->dmgType = -1;
|
||||
}
|
||||
if (actor->info.damage) {
|
||||
|
||||
@@ -1953,7 +1953,7 @@ void func_versus_800C26C8(void) {
|
||||
actor->obj.pos.x = dest.x;
|
||||
actor->obj.pos.y = dest.y;
|
||||
actor->obj.pos.z = dest.z;
|
||||
actor->aiType = i + AI360_10;
|
||||
actor->aiType = i + AI360_ENEMY;
|
||||
actor->health = 24;
|
||||
actor->timer_0C2 = 30;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user