mirror of
https://github.com/zeldaret/oot.git
synced 2025-07-04 06:54:33 +00:00
z_demo documentation (#1327)
* commit old stuff * progress * progress * progress * progress * more progress, renaming cues next * small changes * enum values added for all actions * hardcoded values removed when possible * commands renamed * first pass of action -> cue * fix some matches * some more cleanup * scriptPtr * forgot one * remove cue rot union * more changes * some more stuff * more stuff * fix matching issues * some more things * progress, starting to rename destinations * small changes * name some destinations * more names * need to switch branch * progress * first pass of destination names * usages fixed * use destination enum * fix csdis * format * command descriptions * revert accidental zap changes * forgot some things * use a single macro for CutsceneCameraPoint (idk why i didnt think of this sooner) * typo * review1 * clarify ruby/sapphire comment * remove endframe for commands that dont use it * some more review * most review, but not all * scriptPtr -> script, and another small change * ocarina action * remove +1 from light settings command, change comment * actionIndex -> cueIdTemp (i guess) * _SetCueX -> _SetXFromCue * format * tweak fade out seq arg names * use spline terminology * more dragorn and engineer review * misc start/end frame note * cleanup StartPosRotFromCue vs PosRotFromCue * cleanup spline terminology * sPrevCamId -> sReturnToCamId * comment on debug cs data address * Cutscene_Init -> Cutscene_InitContext * single point types are not a list * remove todo comment * some more review * rumble struct names * some review * more review * missed one * reword pointer comment * even more review * match transition terminology with z_play * change condition and format * frame count * command specific structs with alignment * anon review * remove unneeded arg from time macro * yeet `CsCmdGeneric` * remove unused from single point types * typo * compromise attempt -- name endFrame everywhere * fixes * fix again * copied the wrong note * cutscene data note * review, format * compat defines * idk whats going on man Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
This commit is contained in:
parent
92e03cf747
commit
7927e7b330
130 changed files with 6392 additions and 5954 deletions
|
@ -1,33 +1,33 @@
|
|||
#include "global.h"
|
||||
|
||||
void Flags_UnsetAllEnv(PlayState* play) {
|
||||
void CutsceneFlags_UnsetAll(PlayState* play) {
|
||||
u8 i;
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(play->envFlags); i++) {
|
||||
play->envFlags[i] = 0;
|
||||
for (i = 0; i < ARRAY_COUNT(play->cutsceneFlags); i++) {
|
||||
play->cutsceneFlags[i] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
void Flags_SetEnv(PlayState* play, s16 flag) {
|
||||
void CutsceneFlags_Set(PlayState* play, s16 flag) {
|
||||
s16 index = flag / 16;
|
||||
s16 bit = flag % 16;
|
||||
s16 mask = 1 << bit;
|
||||
|
||||
play->envFlags[index] |= mask;
|
||||
play->cutsceneFlags[index] |= mask;
|
||||
}
|
||||
|
||||
void Flags_UnsetEnv(PlayState* play, s16 flag) {
|
||||
void CutsceneFlags_Unset(PlayState* play, s16 flag) {
|
||||
s16 index = flag / 16;
|
||||
s16 bit = flag % 16;
|
||||
s16 mask = (1 << bit) ^ 0xFFFF;
|
||||
|
||||
play->envFlags[index] &= mask;
|
||||
play->cutsceneFlags[index] &= mask;
|
||||
}
|
||||
|
||||
s32 Flags_GetEnv(PlayState* play, s16 flag) {
|
||||
s32 CutsceneFlags_Get(PlayState* play, s16 flag) {
|
||||
s16 index = flag / 16;
|
||||
s16 bit = flag % 16;
|
||||
s16 mask = 1 << bit;
|
||||
|
||||
return play->envFlags[index] & mask;
|
||||
return play->cutsceneFlags[index] & mask;
|
||||
}
|
||||
|
|
|
@ -33,7 +33,8 @@ s32 func_800BB2B4(Vec3f* pos, f32* roll, f32* fov, CutsceneCameraPoint* point, s
|
|||
progress = 0.0f;
|
||||
}
|
||||
|
||||
if ((point[key].continueFlag == -1) || (point[key + 1].continueFlag == -1) || (point[key + 2].continueFlag == -1)) {
|
||||
if ((point[key].continueFlag == CS_CAM_STOP) || (point[key + 1].continueFlag == CS_CAM_STOP) ||
|
||||
(point[key + 2].continueFlag == CS_CAM_STOP)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -2259,7 +2259,7 @@ void AudioOcarina_Update(void) {
|
|||
AudioOcarina_UpdateRecordingStaff();
|
||||
}
|
||||
|
||||
void AudioOcarina_PlayLongScarecrowAfterCredits(void) {
|
||||
void AudioOcarina_PlayLongScarecrowSong(void) {
|
||||
static u8 sScarecrowAfterCreditsState = 0;
|
||||
static u8 sScarecrowAfterCreditsIntrumentId = OCARINA_INSTRUMENT_DEFAULT;
|
||||
static u16 sScarecrowAfterCreditsTimer = 1200;
|
||||
|
|
|
@ -252,7 +252,7 @@ s32 func_800B4088(DbCamera* dbCamera, Camera* cam) {
|
|||
position = &dbCamera->sub.position[dbCamera->sub.unkIdx];
|
||||
lookAt = &dbCamera->sub.lookAt[dbCamera->sub.unkIdx];
|
||||
|
||||
position->continueFlag = -1;
|
||||
position->continueFlag = CS_CAM_STOP;
|
||||
lookAt->continueFlag = position->continueFlag;
|
||||
position->nextPointFrame = 0;
|
||||
lookAt->nextPointFrame = 30;
|
||||
|
@ -268,10 +268,10 @@ s32 func_800B4088(DbCamera* dbCamera, Camera* cam) {
|
|||
}
|
||||
|
||||
for (i = 0; i < (dbCamera->sub.nPoints - 2); i++) {
|
||||
dbCamera->sub.position[i].continueFlag = dbCamera->sub.lookAt[i].continueFlag = 0;
|
||||
dbCamera->sub.position[i].continueFlag = dbCamera->sub.lookAt[i].continueFlag = CS_CAM_CONTINUE;
|
||||
}
|
||||
|
||||
dbCamera->sub.position[i].continueFlag = dbCamera->sub.lookAt[i].continueFlag = -1;
|
||||
dbCamera->sub.position[i].continueFlag = dbCamera->sub.lookAt[i].continueFlag = CS_CAM_STOP;
|
||||
|
||||
return dbCamera->sub.unkIdx;
|
||||
}
|
||||
|
@ -299,7 +299,7 @@ s32 func_800B42C0(DbCamera* dbCamera, Camera* cameraPtr) {
|
|||
CutsceneCameraPoint* position = &dbCamera->sub.position[dbCamera->sub.unkIdx];
|
||||
CutsceneCameraPoint* lookAt = &dbCamera->sub.lookAt[dbCamera->sub.unkIdx];
|
||||
|
||||
position->continueFlag = lookAt->continueFlag = 0;
|
||||
position->continueFlag = lookAt->continueFlag = CS_CAM_CONTINUE;
|
||||
|
||||
if (dbCamera->sub.mode != 1) {
|
||||
DbCamera_Vec3FToS(&dbCamera->eye, &position->pos);
|
||||
|
@ -352,10 +352,10 @@ void func_800B44E0(DbCamera* dbCamera, Camera* cam) {
|
|||
sDbCamAnim.unk_04 = 0;
|
||||
|
||||
for (i = 0; i < (dbCamera->sub.nPoints - 2); i++) {
|
||||
dbCamera->sub.position[i].continueFlag = dbCamera->sub.lookAt[i].continueFlag = 0;
|
||||
dbCamera->sub.position[i].continueFlag = dbCamera->sub.lookAt[i].continueFlag = CS_CAM_CONTINUE;
|
||||
}
|
||||
|
||||
dbCamera->sub.position[i].continueFlag = dbCamera->sub.lookAt[i].continueFlag = -1;
|
||||
dbCamera->sub.position[i].continueFlag = dbCamera->sub.lookAt[i].continueFlag = CS_CAM_STOP;
|
||||
}
|
||||
|
||||
if (dbCamera->sub.nPoints < 6) {
|
||||
|
@ -2155,7 +2155,7 @@ s32 DbCamera_UpdateDemoControl(DbCamera* dbCamera, Camera* cam) {
|
|||
}
|
||||
|
||||
if (CHECK_BTN_ALL(sPlay->state.input[1].press.button, BTN_CRIGHT)) {
|
||||
D_8015FCC8 = 0;
|
||||
gUseCutsceneCam = false;
|
||||
gSaveContext.cutsceneIndex = 0xFFFD;
|
||||
gSaveContext.cutsceneTrigger = 1;
|
||||
sDbCamAnim.curFrame = 0.0f;
|
||||
|
|
|
@ -7716,7 +7716,7 @@ Vec3s Camera_Update(Camera* camera) {
|
|||
if (gDbgCamEnabled) {
|
||||
DbgCamera_Enable(&D_8015BD80, camera);
|
||||
} else if (camera->play->csCtx.state != CS_STATE_IDLE) {
|
||||
func_80064534(camera->play, &camera->play->csCtx);
|
||||
Cutscene_StopManual(camera->play, &camera->play->csCtx);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
1769
src/code/z_demo.c
1769
src/code/z_demo.c
File diff suppressed because it is too large
Load diff
|
@ -417,7 +417,7 @@ void Environment_Init(PlayState* play2, EnvironmentContext* envCtx, s32 unused)
|
|||
cREG(12) = 0;
|
||||
cREG(13) = 0;
|
||||
cREG(14) = 0;
|
||||
D_8015FCC8 = 1;
|
||||
gUseCutsceneCam = true;
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(sLightningBolts); i++) {
|
||||
sLightningBolts[i].state = LIGHTNING_BOLT_INACTIVE;
|
||||
|
@ -426,8 +426,8 @@ void Environment_Init(PlayState* play2, EnvironmentContext* envCtx, s32 unused)
|
|||
play->roomCtx.unk_74[0] = 0;
|
||||
play->roomCtx.unk_74[1] = 0;
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(play->csCtx.npcActions); i++) {
|
||||
play->csCtx.npcActions[i] = 0;
|
||||
for (i = 0; i < ARRAY_COUNT(play->csCtx.actorCues); i++) {
|
||||
play->csCtx.actorCues[i] = NULL;
|
||||
}
|
||||
|
||||
if (Object_GetIndex(&play->objectCtx, OBJECT_GAMEPLAY_FIELD_KEEP) < 0 && !play->envCtx.sunMoonDisabled) {
|
||||
|
|
|
@ -1,118 +1,118 @@
|
|||
#include "global.h"
|
||||
|
||||
static CutsceneCameraPoint D_8012013C[14] = {
|
||||
{ CS_CMD_CONTINUE, 25, 40, 70.79991f, { -1814, 533, -1297 } },
|
||||
{ CS_CMD_CONTINUE, 20, 40, 70.99991f, { -1805, 434, -1293 } },
|
||||
{ CS_CMD_CONTINUE, 10, 30, 60.0f, { -1794, 323, -1280 } },
|
||||
{ CS_CMD_CONTINUE, 5, 25, 60.0f, { -1817, 218, -1270 } },
|
||||
{ CS_CMD_CONTINUE, 3, 20, 60.0f, { -1836, 168, -1243 } },
|
||||
{ CS_CMD_CONTINUE, 0, 20, 60.0f, { -1905, 115, -1193 } },
|
||||
{ CS_CMD_CONTINUE, 0, 30, 55.0f, { -1969, 58, -1212 } },
|
||||
{ CS_CMD_CONTINUE, 0, 30, 55.0f, { -1969, 31, -1164 } },
|
||||
{ CS_CMD_CONTINUE, 0, 30, 60.0f, { -1969, 54, -1209 } },
|
||||
{ CS_CMD_CONTINUE, 0, 30, 60.0f, { -1973, 35, -1206 } },
|
||||
{ CS_CMD_CONTINUE, 0, 50, 60.0f, { -1974, 12, -1179 } },
|
||||
{ CS_CMD_CONTINUE, 0, 50, 60.0f, { -1974, 12, -1179 } },
|
||||
{ CS_CMD_STOP, 0, 50, 60.0f, { -1974, 12, -1179 } },
|
||||
{ CS_CMD_STOP, 0, 30, 60.0f, { -1974, 12, -1179 } },
|
||||
{ CS_CAM_CONTINUE, 25, 40, 70.79991f, { -1814, 533, -1297 } },
|
||||
{ CS_CAM_CONTINUE, 20, 40, 70.99991f, { -1805, 434, -1293 } },
|
||||
{ CS_CAM_CONTINUE, 10, 30, 60.0f, { -1794, 323, -1280 } },
|
||||
{ CS_CAM_CONTINUE, 5, 25, 60.0f, { -1817, 218, -1270 } },
|
||||
{ CS_CAM_CONTINUE, 3, 20, 60.0f, { -1836, 168, -1243 } },
|
||||
{ CS_CAM_CONTINUE, 0, 20, 60.0f, { -1905, 115, -1193 } },
|
||||
{ CS_CAM_CONTINUE, 0, 30, 55.0f, { -1969, 58, -1212 } },
|
||||
{ CS_CAM_CONTINUE, 0, 30, 55.0f, { -1969, 31, -1164 } },
|
||||
{ CS_CAM_CONTINUE, 0, 30, 60.0f, { -1969, 54, -1209 } },
|
||||
{ CS_CAM_CONTINUE, 0, 30, 60.0f, { -1973, 35, -1206 } },
|
||||
{ CS_CAM_CONTINUE, 0, 50, 60.0f, { -1974, 12, -1179 } },
|
||||
{ CS_CAM_CONTINUE, 0, 50, 60.0f, { -1974, 12, -1179 } },
|
||||
{ CS_CAM_STOP, 0, 50, 60.0f, { -1974, 12, -1179 } },
|
||||
{ CS_CAM_STOP, 0, 30, 60.0f, { -1974, 12, -1179 } },
|
||||
};
|
||||
static CutsceneCameraPoint D_8012021C[14] = {
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { -1751, 604, -1233 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1752, 516, -1233 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { -1751, 417, -1233 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1767, 306, -1219 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { -1776, 257, -1205 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1881, 147, -1149 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { -1969, 72, -1077 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1969, 7, -1048 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { -1969, 1, -1030 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1987, 17, -1076 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { -2007, 10, -1004 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { -2007, 10, -1004 } },
|
||||
{ CS_CMD_STOP, 0, 0, 60.0f, { -2007, 10, -1004 } }, { CS_CMD_STOP, 0, 0, 60.0f, { -2007, 10, -1004 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 60.0f, { -1751, 604, -1233 } }, { CS_CAM_CONTINUE, 0, 0, 60.0f, { -1752, 516, -1233 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 60.0f, { -1751, 417, -1233 } }, { CS_CAM_CONTINUE, 0, 0, 60.0f, { -1767, 306, -1219 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 60.0f, { -1776, 257, -1205 } }, { CS_CAM_CONTINUE, 0, 0, 60.0f, { -1881, 147, -1149 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 60.0f, { -1969, 72, -1077 } }, { CS_CAM_CONTINUE, 0, 0, 60.0f, { -1969, 7, -1048 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 60.0f, { -1969, 1, -1030 } }, { CS_CAM_CONTINUE, 0, 0, 60.0f, { -1987, 17, -1076 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 60.0f, { -2007, 10, -1004 } }, { CS_CAM_CONTINUE, 0, 0, 60.0f, { -2007, 10, -1004 } },
|
||||
{ CS_CAM_STOP, 0, 0, 60.0f, { -2007, 10, -1004 } }, { CS_CAM_STOP, 0, 0, 60.0f, { -2007, 10, -1004 } },
|
||||
};
|
||||
static s16 D_801202FC = 13;
|
||||
static s16 D_80120300 = 210;
|
||||
static s16 D_80120304 = 0;
|
||||
|
||||
static CutsceneCameraPoint sCrawlspaceAtPoints[9] = {
|
||||
{ CS_CMD_CONTINUE, 0, 10, 40.0f, { 0, 4, 0 } }, { CS_CMD_CONTINUE, 0, 10, 40.000004f, { 0, 4, 0 } },
|
||||
{ CS_CMD_CONTINUE, 0, 10, 50.0f, { 0, 9, 0 } }, { CS_CMD_CONTINUE, 0, 12, 55.0f, { 0, 12, 0 } },
|
||||
{ CS_CMD_CONTINUE, 0, 15, 61.0f, { 0, 18, 0 } }, { CS_CMD_CONTINUE, 0, 20, 65.0f, { 0, 29, 0 } },
|
||||
{ CS_CMD_CONTINUE, 0, 40, 60.0f, { 0, 34, 0 } }, { CS_CMD_STOP, 0, 40, 60.0f, { 0, 34, 0 } },
|
||||
{ CS_CMD_STOP, 0, 10, 60.0f, { 0, 34, 0 } },
|
||||
{ CS_CAM_CONTINUE, 0, 10, 40.0f, { 0, 4, 0 } }, { CS_CAM_CONTINUE, 0, 10, 40.000004f, { 0, 4, 0 } },
|
||||
{ CS_CAM_CONTINUE, 0, 10, 50.0f, { 0, 9, 0 } }, { CS_CAM_CONTINUE, 0, 12, 55.0f, { 0, 12, 0 } },
|
||||
{ CS_CAM_CONTINUE, 0, 15, 61.0f, { 0, 18, 0 } }, { CS_CAM_CONTINUE, 0, 20, 65.0f, { 0, 29, 0 } },
|
||||
{ CS_CAM_CONTINUE, 0, 40, 60.0f, { 0, 34, 0 } }, { CS_CAM_STOP, 0, 40, 60.0f, { 0, 34, 0 } },
|
||||
{ CS_CAM_STOP, 0, 10, 60.0f, { 0, 34, 0 } },
|
||||
};
|
||||
static CutsceneCameraPoint sCrawlspaceForwardsEyePoints[9] = {
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 9, 45 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 8, 50 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 17, 58 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 21, 78 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 46, 109 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 58, 118 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 63, 119 } }, { CS_CMD_STOP, 0, 0, 60.0f, { 0, 62, 119 } },
|
||||
{ CS_CMD_STOP, 0, 0, 60.0f, { 0, 62, 119 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 60.0f, { 0, 9, 45 } }, { CS_CAM_CONTINUE, 0, 0, 60.0f, { 0, 8, 50 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 60.0f, { 0, 17, 58 } }, { CS_CAM_CONTINUE, 0, 0, 60.0f, { 0, 21, 78 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 60.0f, { 0, 46, 109 } }, { CS_CAM_CONTINUE, 0, 0, 60.0f, { 0, 58, 118 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 60.0f, { 0, 63, 119 } }, { CS_CAM_STOP, 0, 0, 60.0f, { 0, 62, 119 } },
|
||||
{ CS_CAM_STOP, 0, 0, 60.0f, { 0, 62, 119 } },
|
||||
};
|
||||
static s16 sCrawlspaceUnused = 9;
|
||||
static s16 sCrawlspaceTimer = 90;
|
||||
static s16 sCrawlspaceActionParam = 1;
|
||||
static CutsceneCameraPoint sCrawlspaceBackwardsEyePoints[10] = {
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 9, -45 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 9, -45 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 8, -50 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 17, -58 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 21, -78 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 46, -109 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 58, -118 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 63, -119 } },
|
||||
{ CS_CMD_STOP, 0, 0, 60.0f, { 0, 62, -119 } }, { CS_CMD_STOP, 0, 0, 60.0f, { 0, 62, -119 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 60.0f, { 0, 9, -45 } }, { CS_CAM_CONTINUE, 0, 0, 60.0f, { 0, 9, -45 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 60.0f, { 0, 8, -50 } }, { CS_CAM_CONTINUE, 0, 0, 60.0f, { 0, 17, -58 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 60.0f, { 0, 21, -78 } }, { CS_CAM_CONTINUE, 0, 0, 60.0f, { 0, 46, -109 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 60.0f, { 0, 58, -118 } }, { CS_CAM_CONTINUE, 0, 0, 60.0f, { 0, 63, -119 } },
|
||||
{ CS_CAM_STOP, 0, 0, 60.0f, { 0, 62, -119 } }, { CS_CAM_STOP, 0, 0, 60.0f, { 0, 62, -119 } },
|
||||
};
|
||||
|
||||
static CutsceneCameraPoint D_801204D4[14] = {
|
||||
{ CS_CMD_CONTINUE, -15, 40, 80.600006f, { -60, 332, 183 } },
|
||||
{ CS_CMD_CONTINUE, -22, 30, 80.600006f, { -60, 332, 183 } },
|
||||
{ CS_CMD_CONTINUE, -20, 38, 80.600006f, { -118, 344, 41 } },
|
||||
{ CS_CMD_CONTINUE, -18, 32, 80.600006f, { -80, 251, -8 } },
|
||||
{ CS_CMD_CONTINUE, -12, 28, 80.600006f, { -64, 259, -28 } },
|
||||
{ CS_CMD_CONTINUE, -8, 22, 80.600006f, { -79, 200, -342 } },
|
||||
{ CS_CMD_CONTINUE, -5, 10, 65.80005f, { -110, 140, -549 } },
|
||||
{ CS_CMD_CONTINUE, -2, 8, 65.2f, { -74, 109, -507 } },
|
||||
{ CS_CMD_CONTINUE, 0, 10, 65.80002f, { -32, 78, -680 } },
|
||||
{ CS_CMD_CONTINUE, 0, 20, 85.199936f, { 25, 127, -950 } },
|
||||
{ CS_CMD_CONTINUE, 0, 30, 85.199936f, { 25, 127, -950 } },
|
||||
{ CS_CMD_CONTINUE, 0, 40, 85.199936f, { 25, 127, -950 } },
|
||||
{ CS_CMD_STOP, 6, 30, 85.199936f, { 25, 127, -950 } },
|
||||
{ CS_CMD_STOP, 0, 30, 85.199936f, { 25, 127, -950 } },
|
||||
{ CS_CAM_CONTINUE, -15, 40, 80.600006f, { -60, 332, 183 } },
|
||||
{ CS_CAM_CONTINUE, -22, 30, 80.600006f, { -60, 332, 183 } },
|
||||
{ CS_CAM_CONTINUE, -20, 38, 80.600006f, { -118, 344, 41 } },
|
||||
{ CS_CAM_CONTINUE, -18, 32, 80.600006f, { -80, 251, -8 } },
|
||||
{ CS_CAM_CONTINUE, -12, 28, 80.600006f, { -64, 259, -28 } },
|
||||
{ CS_CAM_CONTINUE, -8, 22, 80.600006f, { -79, 200, -342 } },
|
||||
{ CS_CAM_CONTINUE, -5, 10, 65.80005f, { -110, 140, -549 } },
|
||||
{ CS_CAM_CONTINUE, -2, 8, 65.2f, { -74, 109, -507 } },
|
||||
{ CS_CAM_CONTINUE, 0, 10, 65.80002f, { -32, 78, -680 } },
|
||||
{ CS_CAM_CONTINUE, 0, 20, 85.199936f, { 25, 127, -950 } },
|
||||
{ CS_CAM_CONTINUE, 0, 30, 85.199936f, { 25, 127, -950 } },
|
||||
{ CS_CAM_CONTINUE, 0, 40, 85.199936f, { 25, 127, -950 } },
|
||||
{ CS_CAM_STOP, 6, 30, 85.199936f, { 25, 127, -950 } },
|
||||
{ CS_CAM_STOP, 0, 30, 85.199936f, { 25, 127, -950 } },
|
||||
};
|
||||
static CutsceneCameraPoint D_801205B4[14] = {
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { -225, 785, -242 } },
|
||||
{ CS_CMD_CONTINUE, -21, 0, 80.600006f, { -245, 784, -242 } },
|
||||
{ CS_CMD_CONTINUE, -21, 0, 80.600006f, { -288, 485, -379 } },
|
||||
{ CS_CMD_CONTINUE, -21, 0, 80.600006f, { -250, 244, -442 } },
|
||||
{ CS_CMD_CONTINUE, -21, 0, 80.600006f, { -163, 21, -415 } },
|
||||
{ CS_CMD_CONTINUE, -21, 0, 80.600006f, { -98, 86, -520 } },
|
||||
{ CS_CMD_CONTINUE, -21, 0, 80.600006f, { -86, 31, -816 } },
|
||||
{ CS_CMD_CONTINUE, -21, 0, 80.600006f, { -74, 18, -931 } },
|
||||
{ CS_CMD_CONTINUE, 1, 0, 80.600006f, { -91, 80, -1220 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 85.199936f, { 14, 153, -1340 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 85.199936f, { 28, 125, -1340 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 85.199936f, { 48, 124, -1340 } },
|
||||
{ CS_CMD_STOP, 0, 0, 85.199936f, { 48, 124, -1502 } },
|
||||
{ CS_CMD_STOP, 0, 0, 85.199936f, { 48, 124, -1262 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 60.0f, { -225, 785, -242 } },
|
||||
{ CS_CAM_CONTINUE, -21, 0, 80.600006f, { -245, 784, -242 } },
|
||||
{ CS_CAM_CONTINUE, -21, 0, 80.600006f, { -288, 485, -379 } },
|
||||
{ CS_CAM_CONTINUE, -21, 0, 80.600006f, { -250, 244, -442 } },
|
||||
{ CS_CAM_CONTINUE, -21, 0, 80.600006f, { -163, 21, -415 } },
|
||||
{ CS_CAM_CONTINUE, -21, 0, 80.600006f, { -98, 86, -520 } },
|
||||
{ CS_CAM_CONTINUE, -21, 0, 80.600006f, { -86, 31, -816 } },
|
||||
{ CS_CAM_CONTINUE, -21, 0, 80.600006f, { -74, 18, -931 } },
|
||||
{ CS_CAM_CONTINUE, 1, 0, 80.600006f, { -91, 80, -1220 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 85.199936f, { 14, 153, -1340 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 85.199936f, { 28, 125, -1340 } },
|
||||
{ CS_CAM_CONTINUE, 0, 0, 85.199936f, { 48, 124, -1340 } },
|
||||
{ CS_CAM_STOP, 0, 0, 85.199936f, { 48, 124, -1502 } },
|
||||
{ CS_CAM_STOP, 0, 0, 85.199936f, { 48, 124, -1262 } },
|
||||
};
|
||||
static s16 D_80120694 = 14;
|
||||
static s16 D_80120698 = 190;
|
||||
static s16 D_8012069C = 8;
|
||||
|
||||
static CutsceneCameraPoint D_801206A0[12] = {
|
||||
{ CS_CMD_CONTINUE, 6, 20, 80.0f, { -96, 40, 170 } }, { CS_CMD_CONTINUE, 6, 20, 80.0f, { -96, 40, 170 } },
|
||||
{ CS_CMD_CONTINUE, 6, 20, 70.0f, { -70, 35, 150 } }, { CS_CMD_CONTINUE, 5, 10, 60.0f, { -57, 34, 133 } },
|
||||
{ CS_CMD_CONTINUE, 4, 25, 65.0f, { -22, 32, 110 } }, { CS_CMD_CONTINUE, 3, 12, 60.0f, { -9, 33, 98 } },
|
||||
{ CS_CMD_CONTINUE, 3, 5, 65.0f, { -3, 29, 87 } }, { CS_CMD_CONTINUE, 2, 10, 65.0f, { -1, 15, 84 } },
|
||||
{ CS_CMD_CONTINUE, 1, 200, 65.0f, { 0, 17, 82 } }, { CS_CMD_CONTINUE, 1, 500, 65.0f, { 0, 18, 82 } },
|
||||
{ CS_CMD_STOP, 8, 50, 65.0f, { 0, 18, 82 } }, { CS_CMD_STOP, 11, 60, 65.0f, { 0, 18, 82 } },
|
||||
{ CS_CAM_CONTINUE, 6, 20, 80.0f, { -96, 40, 170 } }, { CS_CAM_CONTINUE, 6, 20, 80.0f, { -96, 40, 170 } },
|
||||
{ CS_CAM_CONTINUE, 6, 20, 70.0f, { -70, 35, 150 } }, { CS_CAM_CONTINUE, 5, 10, 60.0f, { -57, 34, 133 } },
|
||||
{ CS_CAM_CONTINUE, 4, 25, 65.0f, { -22, 32, 110 } }, { CS_CAM_CONTINUE, 3, 12, 60.0f, { -9, 33, 98 } },
|
||||
{ CS_CAM_CONTINUE, 3, 5, 65.0f, { -3, 29, 87 } }, { CS_CAM_CONTINUE, 2, 10, 65.0f, { -1, 15, 84 } },
|
||||
{ CS_CAM_CONTINUE, 1, 200, 65.0f, { 0, 17, 82 } }, { CS_CAM_CONTINUE, 1, 500, 65.0f, { 0, 18, 82 } },
|
||||
{ CS_CAM_STOP, 8, 50, 65.0f, { 0, 18, 82 } }, { CS_CAM_STOP, 11, 60, 65.0f, { 0, 18, 82 } },
|
||||
};
|
||||
static CutsceneCameraPoint D_80120760[12] = {
|
||||
{ CS_CMD_CONTINUE, 6, 0, 80.0f, { -50, 10, 180 } }, { CS_CMD_CONTINUE, 6, 0, 80.0f, { -50, 20, 180 } },
|
||||
{ CS_CMD_CONTINUE, 6, 0, 70.0f, { -40, 30, 177 } }, { CS_CMD_CONTINUE, 5, 0, 65.0f, { 0, 35, 172 } },
|
||||
{ CS_CMD_CONTINUE, 4, 0, 65.0f, { 34, 35, 162 } }, { CS_CMD_CONTINUE, 3, 0, 65.0f, { 61, 32, 147 } },
|
||||
{ CS_CMD_CONTINUE, 3, 0, 65.0f, { 72, 30, 128 } }, { CS_CMD_CONTINUE, 2, 0, 65.0f, { 74, 20, 125 } },
|
||||
{ CS_CMD_CONTINUE, 1, 0, 65.0f, { 75, 18, 123 } }, { CS_CMD_CONTINUE, 1, 0, 65.0f, { 75, 10, 123 } },
|
||||
{ CS_CMD_STOP, 0, 0, 65.0f, { 75, 10, 122 } }, { CS_CMD_STOP, 0, 0, 65.0f, { 75, 10, 122 } },
|
||||
{ CS_CAM_CONTINUE, 6, 0, 80.0f, { -50, 10, 180 } }, { CS_CAM_CONTINUE, 6, 0, 80.0f, { -50, 20, 180 } },
|
||||
{ CS_CAM_CONTINUE, 6, 0, 70.0f, { -40, 30, 177 } }, { CS_CAM_CONTINUE, 5, 0, 65.0f, { 0, 35, 172 } },
|
||||
{ CS_CAM_CONTINUE, 4, 0, 65.0f, { 34, 35, 162 } }, { CS_CAM_CONTINUE, 3, 0, 65.0f, { 61, 32, 147 } },
|
||||
{ CS_CAM_CONTINUE, 3, 0, 65.0f, { 72, 30, 128 } }, { CS_CAM_CONTINUE, 2, 0, 65.0f, { 74, 20, 125 } },
|
||||
{ CS_CAM_CONTINUE, 1, 0, 65.0f, { 75, 18, 123 } }, { CS_CAM_CONTINUE, 1, 0, 65.0f, { 75, 10, 123 } },
|
||||
{ CS_CAM_STOP, 0, 0, 65.0f, { 75, 10, 122 } }, { CS_CAM_STOP, 0, 0, 65.0f, { 75, 10, 122 } },
|
||||
};
|
||||
static CutsceneCameraPoint D_80120820[12] = {
|
||||
{ CS_CMD_CONTINUE, 6, 0, 80.0f, { 85, 5, 170 } }, { CS_CMD_CONTINUE, 6, 0, 80.0f, { 85, 10, 170 } },
|
||||
{ CS_CMD_CONTINUE, 6, 0, 70.0f, { 80, 20, 167 } }, { CS_CMD_CONTINUE, 5, 0, 65.0f, { 74, 25, 165 } },
|
||||
{ CS_CMD_CONTINUE, 4, 0, 65.0f, { 63, 30, 162 } }, { CS_CMD_CONTINUE, 3, 0, 65.0f, { 66, 34, 147 } },
|
||||
{ CS_CMD_CONTINUE, 3, 0, 65.0f, { 72, 34, 128 } }, { CS_CMD_CONTINUE, 2, 0, 65.0f, { 74, 20, 125 } },
|
||||
{ CS_CMD_CONTINUE, 1, 0, 65.0f, { 75, 18, 123 } }, { CS_CMD_CONTINUE, 1, 0, 65.0f, { 75, 10, 123 } },
|
||||
{ CS_CMD_STOP, 0, 0, 65.0f, { 75, 10, 122 } }, { CS_CMD_STOP, 0, 0, 65.0f, { 75, 10, 122 } },
|
||||
{ CS_CAM_CONTINUE, 6, 0, 80.0f, { 85, 5, 170 } }, { CS_CAM_CONTINUE, 6, 0, 80.0f, { 85, 10, 170 } },
|
||||
{ CS_CAM_CONTINUE, 6, 0, 70.0f, { 80, 20, 167 } }, { CS_CAM_CONTINUE, 5, 0, 65.0f, { 74, 25, 165 } },
|
||||
{ CS_CAM_CONTINUE, 4, 0, 65.0f, { 63, 30, 162 } }, { CS_CAM_CONTINUE, 3, 0, 65.0f, { 66, 34, 147 } },
|
||||
{ CS_CAM_CONTINUE, 3, 0, 65.0f, { 72, 34, 128 } }, { CS_CAM_CONTINUE, 2, 0, 65.0f, { 74, 20, 125 } },
|
||||
{ CS_CAM_CONTINUE, 1, 0, 65.0f, { 75, 18, 123 } }, { CS_CAM_CONTINUE, 1, 0, 65.0f, { 75, 10, 123 } },
|
||||
{ CS_CAM_STOP, 0, 0, 65.0f, { 75, 10, 122 } }, { CS_CAM_STOP, 0, 0, 65.0f, { 75, 10, 122 } },
|
||||
};
|
||||
static s16 D_801208E0 = 12;
|
||||
static s16 D_801208E4 = 90;
|
||||
|
|
|
@ -4301,12 +4301,12 @@ void Interface_Update(PlayState* play) {
|
|||
gSaveContext.nextDayTime = NEXT_TIME_NIGHT;
|
||||
play->transitionType = TRANS_TYPE_FADE_BLACK_FAST;
|
||||
gSaveContext.nextTransitionType = TRANS_TYPE_FADE_BLACK;
|
||||
play->unk_11DE9 = true;
|
||||
play->haltAllActors = true;
|
||||
} else {
|
||||
gSaveContext.nextDayTime = NEXT_TIME_DAY;
|
||||
play->transitionType = TRANS_TYPE_FADE_WHITE_FAST;
|
||||
gSaveContext.nextTransitionType = TRANS_TYPE_FADE_WHITE;
|
||||
play->unk_11DE9 = true;
|
||||
play->haltAllActors = true;
|
||||
}
|
||||
|
||||
if (play->sceneId == SCENE_HAUNTED_WASTELAND) {
|
||||
|
|
|
@ -2,17 +2,17 @@
|
|||
#include "quake.h"
|
||||
#include "terminal.h"
|
||||
|
||||
void* D_8012D1F0 = NULL;
|
||||
void* gDebugCutsceneScript = NULL;
|
||||
UNK_TYPE D_8012D1F4 = 0; // unused
|
||||
Input* D_8012D1F8 = NULL;
|
||||
|
||||
TransitionUnk sTrnsnUnk;
|
||||
s32 gTrnsnUnkState;
|
||||
VisMono D_80161498;
|
||||
Color_RGBA8_u32 D_801614B0;
|
||||
Color_RGBA8_u32 gVisMonoColor;
|
||||
FaultClient D_801614B8;
|
||||
s16 sTransitionFillTimer;
|
||||
u64 D_801614D0[0xA00];
|
||||
u64 sDebugCutsceneScriptBuf[0xA00];
|
||||
|
||||
void Play_SpawnScene(PlayState* this, s32 sceneId, s32 spawn);
|
||||
|
||||
|
@ -266,7 +266,7 @@ void Play_Init(GameState* thisx) {
|
|||
EffectSs_InitInfo(this, 0x55);
|
||||
CollisionCheck_InitContext(this, &this->colChkCtx);
|
||||
AnimationContext_Reset(&this->animationCtx);
|
||||
func_8006450C(this, &this->csCtx);
|
||||
Cutscene_InitContext(this, &this->csCtx);
|
||||
|
||||
if (gSaveContext.nextCutsceneIndex != 0xFFEF) {
|
||||
gSaveContext.cutsceneIndex = gSaveContext.nextCutsceneIndex;
|
||||
|
@ -371,7 +371,7 @@ void Play_Init(GameState* thisx) {
|
|||
this->transitionTrigger = TRANS_TRIGGER_END;
|
||||
this->unk_11E16 = 0xFF;
|
||||
this->unk_11E18 = 0;
|
||||
this->unk_11DE9 = false;
|
||||
this->haltAllActors = false;
|
||||
|
||||
if (gSaveContext.gameMode != GAMEMODE_TITLE_SCREEN) {
|
||||
if (gSaveContext.nextTransitionType == TRANS_NEXT_TYPE_DEFAULT) {
|
||||
|
@ -391,8 +391,8 @@ void Play_Init(GameState* thisx) {
|
|||
TransitionFade_SetColor(&this->transitionFadeFlash, RGBA8(160, 160, 160, 255));
|
||||
TransitionFade_Start(&this->transitionFadeFlash);
|
||||
VisMono_Init(&D_80161498);
|
||||
D_801614B0.a = 0;
|
||||
Flags_UnsetAllEnv(this);
|
||||
gVisMonoColor.a = 0;
|
||||
CutsceneFlags_UnsetAll(this);
|
||||
|
||||
osSyncPrintf("ZELDA ALLOC SIZE=%x\n", THA_GetRemaining(&this->state.tha));
|
||||
zAllocSize = THA_GetRemaining(&this->state.tha);
|
||||
|
@ -436,10 +436,13 @@ void Play_Init(GameState* thisx) {
|
|||
AnimationContext_Update(this, &this->animationCtx);
|
||||
gSaveContext.respawnFlag = 0;
|
||||
|
||||
if (dREG(95) != 0) {
|
||||
D_8012D1F0 = D_801614D0;
|
||||
osSyncPrintf("\nkawauso_data=[%x]", D_8012D1F0);
|
||||
DmaMgr_DmaRomToRam(0x03FEB000, D_8012D1F0, sizeof(D_801614D0));
|
||||
if (R_USE_DEBUG_CUTSCENE) {
|
||||
gDebugCutsceneScript = sDebugCutsceneScriptBuf;
|
||||
osSyncPrintf("\nkawauso_data=[%x]", gDebugCutsceneScript);
|
||||
|
||||
// This hardcoded ROM address extends past the end of the ROM file.
|
||||
// Presumably the ROM was larger at a previous point in development when this debug feature was used.
|
||||
DmaMgr_DmaRomToRam(0x03FEB000, gDebugCutsceneScript, sizeof(sDebugCutsceneScriptBuf));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -888,15 +891,15 @@ void Play_Update(PlayState* this) {
|
|||
|
||||
PLAY_LOG(3637);
|
||||
|
||||
if (!this->unk_11DE9) {
|
||||
if (!this->haltAllActors) {
|
||||
Actor_UpdateAll(this, &this->actorCtx);
|
||||
}
|
||||
|
||||
PLAY_LOG(3643);
|
||||
func_80064558(this, &this->csCtx);
|
||||
Cutscene_UpdateManual(this, &this->csCtx);
|
||||
|
||||
PLAY_LOG(3648);
|
||||
func_800645A0(this, &this->csCtx);
|
||||
Cutscene_UpdateScripted(this, &this->csCtx);
|
||||
|
||||
PLAY_LOG(3651);
|
||||
Effect_UpdateAll(this);
|
||||
|
@ -1096,8 +1099,8 @@ void Play_Draw(PlayState* this) {
|
|||
|
||||
TransitionFade_Draw(&this->transitionFadeFlash, &gfxP);
|
||||
|
||||
if (D_801614B0.a > 0) {
|
||||
D_80161498.primColor.rgba = D_801614B0.rgba;
|
||||
if (gVisMonoColor.a > 0) {
|
||||
D_80161498.primColor.rgba = gVisMonoColor.rgba;
|
||||
VisMono_Draw(&D_80161498, &gfxP);
|
||||
}
|
||||
|
||||
|
|
|
@ -443,8 +443,8 @@ void Scene_CommandAlternateHeaderList(PlayState* play, SceneCmd* cmd) {
|
|||
}
|
||||
|
||||
void Scene_CommandCutsceneData(PlayState* play, SceneCmd* cmd) {
|
||||
osSyncPrintf("\ngame_play->demo_play.data=[%x]", play->csCtx.segment);
|
||||
play->csCtx.segment = SEGMENTED_TO_VIRTUAL(cmd->cutsceneData.data);
|
||||
osSyncPrintf("\ngame_play->demo_play.data=[%x]", play->csCtx.script);
|
||||
play->csCtx.script = SEGMENTED_TO_VIRTUAL(cmd->cutsceneData.data);
|
||||
}
|
||||
|
||||
// Camera & World Map Area
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue