mirror of
https://github.com/HarbourMasters/Starship
synced 2026-06-03 02:38:25 -04:00
N64 Recorded Cutscene Timings for Corneria, Meteo, Macbeth and Sector Y Bosses
This commit is contained in:
@@ -19,6 +19,28 @@
|
||||
#include "assets/ast_katina.h"
|
||||
#include "assets/ast_allies.h"
|
||||
#include "port/hooks/Events.h"
|
||||
#include "fox_co.h"
|
||||
#include "fox_record.h"
|
||||
|
||||
void UpdateVisPerFrameFromRecording(u8* record, s32 maxFrames) {
|
||||
if (gCsFrameCount < maxFrames) {
|
||||
gVIsPerFrame = record[gCsFrameCount];
|
||||
}
|
||||
}
|
||||
|
||||
void UpdateVisPerFrameFromRecording2(Record* record, s32 maxFrames) {
|
||||
int i;
|
||||
|
||||
if (gCsFrameCount > record[maxFrames - 1].frame) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (i = 0; i < maxFrames; i++) {
|
||||
if (gCsFrameCount == record[i].frame) {
|
||||
gVIsPerFrame = record[i].vis;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void func_demo_80048AC0(TeamId teamId) {
|
||||
s32 teamShield;
|
||||
@@ -925,6 +947,8 @@ void Cutscene_CoComplete2(Player* player) {
|
||||
|
||||
Math_SmoothStepToF(&player->camRoll, 0.0f, 0.1f, 5.0f, 0.01f);
|
||||
|
||||
UpdateVisPerFrameFromRecording(gCarrierCutsceneRecord, ARRAY_COUNT(gCarrierCutsceneRecord));
|
||||
|
||||
switch (player->csState) {
|
||||
case 10:
|
||||
D_ctx_80177A48[2] = 0.0f;
|
||||
|
||||
@@ -148,7 +148,8 @@ void Display_DrawHelpAlert(void) {
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_76_OPTIONAL);
|
||||
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255);
|
||||
if (sp78 < 0.0f) {
|
||||
Graphics_DisplaySmallText(OTRGetRectDimensionFromLeftEdgeOverride(38.0f), 106, 1.0f, 1.0f, "HELP!!");
|
||||
Graphics_DisplaySmallText(OTRGetRectDimensionFromLeftEdgeOverride(38.0f), 106, 1.0f, 1.0f,
|
||||
"HELP!!");
|
||||
} else {
|
||||
Graphics_DisplaySmallText(OTRGetRectDimensionFromRightEdgeOverride(248), 106, 1.0f, 1.0f, "HELP!!");
|
||||
}
|
||||
@@ -1138,7 +1139,7 @@ void Display_ArwingLaserCharge(Player* player) {
|
||||
|
||||
// @port: Tag the transform.
|
||||
FrameInterpolation_RecordOpenChild("ArwingMuzzleFlash", 0);
|
||||
|
||||
|
||||
Matrix_Translate(gGfxMatrix, sp94.x, sp94.y, sp94.z, MTXF_NEW);
|
||||
Matrix_Scale(gGfxMatrix, gMuzzleFlashScale[player->num], gMuzzleFlashScale[player->num], 1.0f,
|
||||
MTXF_APPLY);
|
||||
@@ -2049,6 +2050,16 @@ void Display_Update(void) {
|
||||
if (gInputPress->stick_y < 0) Graphics_DisplaySmallText(110, 220, 1.0f, 1.0f, "NEG:");
|
||||
#endif
|
||||
|
||||
// For debugging cutscene timings
|
||||
#if 0
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_83);
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 0, 255);
|
||||
Graphics_DisplaySmallText(10 + 210, 190, 1.0f, 1.0f, "CSFMS:");
|
||||
Graphics_DisplaySmallNumber(60 + 210, 190, (int) gCsFrameCount);
|
||||
Graphics_DisplaySmallText(10 + 210, 200, 1.0f, 1.0f, "PLTIM:");
|
||||
Graphics_DisplaySmallNumber(60 + 210, 200, (int) gPlayer->csTimer);
|
||||
#endif
|
||||
|
||||
// @port: @event: Call DisplayPostUpdateEvent
|
||||
CALL_EVENT(DisplayPostUpdateEvent);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user