1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-08-17 12:33:38 +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:
fig02 2022-12-24 13:55:17 -05:00 committed by GitHub
parent 92e03cf747
commit 7927e7b330
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
130 changed files with 6392 additions and 5954 deletions

View file

@ -214,7 +214,7 @@ s32 DemoIm_UpdateSkelAnime(DemoIm* this) {
return SkelAnime_Update(&this->skelAnime);
}
s32 DemoIm_IsCsStateIdle(PlayState* play) {
s32 DemoIm_IsCutsceneIdle(PlayState* play) {
if (play->csCtx.state == CS_STATE_IDLE) {
return true;
} else {
@ -222,57 +222,58 @@ s32 DemoIm_IsCsStateIdle(PlayState* play) {
}
}
CsCmdActorAction* DemoIm_GetNpcAction(PlayState* play, s32 actionIdx) {
CsCmdActorCue* DemoIm_GetCue(PlayState* play, s32 cueChannel) {
s32 pad[2];
CsCmdActorAction* ret = NULL;
CsCmdActorCue* cue = NULL;
if (!DemoIm_IsCsStateIdle(play)) {
ret = play->csCtx.npcActions[actionIdx];
if (!DemoIm_IsCutsceneIdle(play)) {
cue = play->csCtx.actorCues[cueChannel];
}
return ret;
return cue;
}
s32 func_809850E8(DemoIm* this, PlayState* play, u16 action, s32 actionIdx) {
CsCmdActorAction* npcAction = DemoIm_GetNpcAction(play, actionIdx);
s32 func_809850E8(DemoIm* this, PlayState* play, u16 action, s32 cueChannel) {
CsCmdActorCue* cue = DemoIm_GetCue(play, cueChannel);
if (npcAction != NULL) {
if (npcAction->action == action) {
if (cue != NULL) {
if (cue->id == action) {
return true;
}
}
return false;
}
s32 func_80985134(DemoIm* this, PlayState* play, u16 action, s32 actionIdx) {
CsCmdActorAction* npcAction = DemoIm_GetNpcAction(play, actionIdx);
s32 func_80985134(DemoIm* this, PlayState* play, u16 cueId, s32 cueChannel) {
CsCmdActorCue* cue = DemoIm_GetCue(play, cueChannel);
if (npcAction != NULL) {
if (npcAction->action != action) {
if (cue != NULL) {
if (cue->id != cueId) {
return true;
}
}
return false;
}
void func_80985180(DemoIm* this, PlayState* play, s32 actionIdx) {
CsCmdActorAction* npcAction = DemoIm_GetNpcAction(play, actionIdx);
void func_80985180(DemoIm* this, PlayState* play, s32 cueChannel) {
CsCmdActorCue* cue = DemoIm_GetCue(play, cueChannel);
if (npcAction != NULL) {
this->actor.world.pos.x = npcAction->startPos.x;
this->actor.world.pos.y = npcAction->startPos.y;
this->actor.world.pos.z = npcAction->startPos.z;
this->actor.world.rot.y = this->actor.shape.rot.y = npcAction->rot.y;
if (cue != NULL) {
this->actor.world.pos.x = cue->startPos.x;
this->actor.world.pos.y = cue->startPos.y;
this->actor.world.pos.z = cue->startPos.z;
this->actor.world.rot.y = this->actor.shape.rot.y = cue->rot.y;
}
}
void func_80985200(DemoIm* this, PlayState* play, s32 actionIdx) {
CsCmdActorAction* npcAction = DemoIm_GetNpcAction(play, actionIdx);
void func_80985200(DemoIm* this, PlayState* play, s32 cueChannel) {
CsCmdActorCue* cue = DemoIm_GetCue(play, cueChannel);
if (npcAction != NULL) {
this->actor.world.pos.x = npcAction->startPos.x;
this->actor.world.pos.y = npcAction->startPos.y;
this->actor.world.pos.z = npcAction->startPos.z;
this->actor.world.rot.y = this->actor.shape.rot.y = npcAction->rot.y;
if (cue != NULL) {
this->actor.world.pos.x = cue->startPos.x;
this->actor.world.pos.y = cue->startPos.y;
this->actor.world.pos.z = cue->startPos.z;
this->actor.world.rot.y = this->actor.shape.rot.y = cue->rot.y;
}
}
@ -329,7 +330,7 @@ void func_8098544C(DemoIm* this, PlayState* play) {
Player* player = GET_PLAYER(play);
this->action = 1;
play->csCtx.segment = D_8098786C;
play->csCtx.script = D_8098786C;
gSaveContext.cutsceneTrigger = 2;
Item_Give(play, ITEM_MEDALLION_SHADOW);
player->actor.world.rot.y = player->actor.shape.rot.y = this->actor.world.rot.y + 0x8000;
@ -337,8 +338,8 @@ void func_8098544C(DemoIm* this, PlayState* play) {
}
void func_809854DC(DemoIm* this, PlayState* play) {
if ((play->csCtx.state != CS_STATE_IDLE) && (play->csCtx.npcActions[5] != NULL) &&
(play->csCtx.npcActions[5]->action == 2)) {
if ((play->csCtx.state != CS_STATE_IDLE) && (play->csCtx.actorCues[5] != NULL) &&
(play->csCtx.actorCues[5]->id == 2)) {
Animation_Change(&this->skelAnime, &gImpaIdleAnim, 1.0f, 0.0f, Animation_GetLastFrame(&gImpaIdleAnim),
ANIMMODE_LOOP, 0.0f);
this->action = 2;
@ -355,8 +356,8 @@ void func_8098557C(DemoIm* this) {
}
void func_809855A8(DemoIm* this, PlayState* play) {
if ((play->csCtx.state != CS_STATE_IDLE) && (play->csCtx.npcActions[5] != NULL) &&
(play->csCtx.npcActions[5]->action == 3)) {
if ((play->csCtx.state != CS_STATE_IDLE) && (play->csCtx.actorCues[5] != NULL) &&
(play->csCtx.actorCues[5]->id == 3)) {
Animation_Change(&this->skelAnime, &gImpaRaiseArmsAnim, 1.0f, 0.0f, Animation_GetLastFrame(&gImpaRaiseArmsAnim),
ANIMMODE_ONCE, 4.0f);
this->action = 4;
@ -372,8 +373,8 @@ void func_80985640(DemoIm* this, s32 arg1) {
}
void func_809856AC(DemoIm* this, PlayState* play) {
if ((play->csCtx.state != CS_STATE_IDLE) && (play->csCtx.npcActions[6] != NULL) &&
(play->csCtx.npcActions[6]->action == 2)) {
if ((play->csCtx.state != CS_STATE_IDLE) && (play->csCtx.actorCues[6] != NULL) &&
(play->csCtx.actorCues[6]->id == 2)) {
this->action = 6;
func_809853B4(this, play);
}
@ -543,7 +544,7 @@ void func_80985E60(DemoIm* this, PlayState* play) {
}
void func_80985EAC(DemoIm* this, PlayState* play) {
if ((play->csCtx.frames >= 80) && (play->csCtx.frames < 243)) {
if ((play->csCtx.curFrame >= 80) && (play->csCtx.curFrame < 243)) {
func_80984F10(this, play);
} else {
func_80984DB8(this);
@ -606,14 +607,14 @@ void func_80986148(DemoIm* this) {
}
void func_809861C4(DemoIm* this, PlayState* play) {
CsCmdActorAction* npcAction = DemoIm_GetNpcAction(play, 5);
CsCmdActorCue* cue = DemoIm_GetCue(play, 5);
if (npcAction != NULL) {
u32 action = npcAction->action;
u32 unk_274 = this->unk_274;
if (cue != NULL) {
u32 nextCueId = cue->id;
u32 currentCueId = this->cueId;
if (action != unk_274) {
switch (action) {
if (nextCueId != currentCueId) {
switch (nextCueId) {
case 9:
func_80986148(this);
break;
@ -625,13 +626,13 @@ void func_809861C4(DemoIm* this, PlayState* play) {
default:
osSyncPrintf("Demo_Im_Ocarina_Check_DemoMode:そんな動作は無い!!!!!!!!\n");
}
this->unk_274 = action;
this->cueId = nextCueId;
}
}
}
void func_8098629C(DemoIm* this, PlayState* play) {
if (DemoIm_IsCsStateIdle(play)) {
if (DemoIm_IsCutsceneIdle(play)) {
this->action = 21;
this->drawConfig = 1;
this->unk_280 = 1;
@ -639,14 +640,14 @@ void func_8098629C(DemoIm* this, PlayState* play) {
}
void func_809862E0(DemoIm* this, PlayState* play) {
CsCmdActorAction* npcAction = DemoIm_GetNpcAction(play, 5);
CsCmdActorCue* cue = DemoIm_GetCue(play, 5);
if (npcAction != NULL) {
u32 action = npcAction->action;
u32 unk_274 = this->unk_274;
if (cue != NULL) {
u32 nextCueId = cue->id;
u32 currentCueId = this->cueId;
if (action != unk_274) {
switch (action) {
if (nextCueId != currentCueId) {
switch (nextCueId) {
case 1:
func_80985F54(this);
break;
@ -665,7 +666,7 @@ void func_809862E0(DemoIm* this, PlayState* play) {
default:
osSyncPrintf("Demo_Im_Ocarina_Check_DemoMode:そんな動作は無い!!!!!!!!\n");
}
this->unk_274 = action;
this->cueId = nextCueId;
}
}
}
@ -770,14 +771,14 @@ void func_80986794(DemoIm* this) {
}
void func_8098680C(DemoIm* this, PlayState* play) {
CsCmdActorAction* npcAction = DemoIm_GetNpcAction(play, 5);
CsCmdActorCue* cue = DemoIm_GetCue(play, 5);
if (npcAction != NULL) {
u32 action = npcAction->action;
u32 unk_274 = this->unk_274;
if (cue != NULL) {
u32 nextCueId = cue->id;
u32 currentCueId = this->cueId;
if (action != unk_274) {
switch (action) {
if (nextCueId != currentCueId) {
switch (nextCueId) {
case 1:
func_80986700(this);
break;
@ -793,7 +794,7 @@ void func_8098680C(DemoIm* this, PlayState* play) {
default:
osSyncPrintf("Demo_Im_Spot00_Check_DemoMode:そんな動作は無い!!!!!!!!\n");
}
this->unk_274 = action;
this->cueId = nextCueId;
}
}
}
@ -898,7 +899,7 @@ void func_80986BF8(DemoIm* this, PlayState* play) {
void func_80986C30(DemoIm* this, PlayState* play) {
if (func_80986A5C(this, play)) {
play->csCtx.segment = SEGMENTED_TO_VIRTUAL(gZeldasCourtyardLullabyCs);
play->csCtx.script = SEGMENTED_TO_VIRTUAL(gZeldasCourtyardLullabyCs);
gSaveContext.cutsceneTrigger = 1;
SET_EVENTCHKINF(EVENTCHKINF_59);
Item_Give(play, ITEM_SONG_LULLABY);
@ -1039,14 +1040,14 @@ void func_809871B4(DemoIm* this, s32 arg1) {
}
void func_809871E8(DemoIm* this, PlayState* play) {
CsCmdActorAction* npcAction = DemoIm_GetNpcAction(play, 5);
CsCmdActorCue* cue = DemoIm_GetCue(play, 5);
if (npcAction != NULL) {
u32 action = npcAction->action;
u32 unk_274 = this->unk_274;
if (cue != NULL) {
u32 nextCueId = cue->id;
u32 currentCueId = this->cueId;
if (action != unk_274) {
switch (action) {
if (nextCueId != currentCueId) {
switch (nextCueId) {
case 12:
func_809870F0(this, play);
break;
@ -1056,7 +1057,7 @@ void func_809871E8(DemoIm* this, PlayState* play) {
default:
osSyncPrintf("Demo_Im_inEnding_Check_DemoMode:そんな動作は無い!!!!!!!!\n");
}
this->unk_274 = action;
this->cueId = nextCueId;
}
}
}

View file

@ -42,7 +42,7 @@ typedef struct DemoIm {
/* 0x0268 */ f32 unk_268;
/* 0x026C */ s32 alpha;
/* 0x0270 */ s32 unk_270;
/* 0x0274 */ s32 unk_274;
/* 0x0274 */ s32 cueId;
/* 0x0278 */ f32 unk_278;
/* 0x027C */ s32 unk_27C;
/* 0x0280 */ s32 unk_280;

View file

@ -6,217 +6,217 @@ static CutsceneData D_8098786C[] = {
CS_BEGIN_CUTSCENE(32, 3000),
CS_UNK_DATA_LIST(0x00000020, 1),
CS_UNK_DATA(0x00010000, 0x0BB80000, 0x00000000, 0x00000000, 0xFFFFFFFC, 0x00000002, 0x00000000, 0xFFFFFFFC, 0x00000002, 0x00000000, 0x00000000, 0x00000000),
CS_NPC_ACTION_LIST(31, 5),
CS_NPC_ACTION(0x0001, 0, 697, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 216, 0, 0.0f, 0.0f, 0.0f),
CS_NPC_ACTION(0x0002, 697, 698, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 216, 0, 0.0f, 0.0f, 0.0f),
CS_NPC_ACTION(0x0004, 698, 768, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 216, 0, 0.0f, 0.0f, 0.0f),
CS_NPC_ACTION(0x0002, 768, 817, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 82, 0, 0.0f, 0.0f, 0.0f),
CS_NPC_ACTION(0x0003, 817, 2666, 0x0000, 0x0000, 0x0000, 0, 82, 0, 0, 82, 0, 0.0f, 0.0f, 0.0f),
CS_PLAYER_ACTION_LIST(3),
CS_PLAYER_ACTION(0x000D, 0, 300, 0x0000, 0x0000, 0x0000, 0, 6, 0, 0, 6, 0, 0.0f, 0.0f, 0.0f),
CS_PLAYER_ACTION(0x0005, 300, 661, 0x0000, 0xEAAA, 0x0000, 0, 6, 0, 0, 6, 0, 0.0f, 0.0f, 0.0f),
CS_PLAYER_ACTION(0x0013, 661, 1934, 0x0000, 0x6AAA, 0x0000, 0, 6, 0, 0, 6, 0, 0.0f, 0.0f, 0.0f),
CS_NPC_ACTION_LIST(44, 3),
CS_NPC_ACTION(0x0001, 0, 145, 0x0000, 0x0000, 0x0000, -97, 6, 169, -97, 6, 169, 0.0f, 0.0f, 0.0f),
CS_NPC_ACTION(0x0002, 145, 615, 0x0000, 0x0000, 0x0000, -97, 6, 169, -97, 6, 169, 0.0f, 0.0f, 0.0f),
CS_NPC_ACTION(0x0003, 615, 1906, 0x0000, 0x0000, 0x0000, -97, 6, 169, -97, 6, 169, 0.0f, 0.0f, 0.0f),
CS_NPC_ACTION_LIST(49, 1),
CS_NPC_ACTION(0x0001, 0, 3000, 0x0000, 0x0000, 0x0000, -22, 0, -55, -22, 0, -55, 0.0f, 0.0f, 0.0f),
CS_LIGHTING_LIST(2),
CS_LIGHTING(0x0002, 0, 10, 0x0000, 0x00000000, 0xFFFFFFFE, 0x00000000, 0x0000000D, 0xFFFFFFFE, 0x00000000, 0x0000000D),
CS_LIGHTING(0x0002, 10, 3000, 0x0000, 0x00000000, 0xFFFFFFFE, 0x00000000, 0x0000000D, 0xFFFFFFFE, 0x00000000, 0x0000000D),
CS_SCENE_TRANS_FX(0x0005, 694, 724),
CS_SCENE_TRANS_FX(0x0001, 960, 990),
CS_SCENE_TRANS_FX(0x0001, 683, 692),
CS_NPC_ACTION_LIST(62, 2),
CS_NPC_ACTION(0x0001, 0, 10, 0x0000, 0x0000, 0x0000, 64, 80, 130, 64, 80, 130, 0.0f, 0.0f, 0.0f),
CS_NPC_ACTION(0x0004, 10, 3000, 0x0000, 0x0000, 0x0000, 64, 80, 130, 64, 80, 130, 0.0f, 0.0f, 0.0f),
CS_PLAY_BGM_LIST(1),
CS_PLAY_BGM(0x0044, 770, 771, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFC9, 0x0000005C, 0x00000000, 0xFFFFFFC9, 0x0000005C),
CS_ACTOR_CUE_LIST(31, 5),
CS_ACTOR_CUE(0x0001, 0, 697, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 216, 0, 0.0f, 0.0f, 0.0f),
CS_ACTOR_CUE(0x0002, 697, 698, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 216, 0, 0.0f, 0.0f, 0.0f),
CS_ACTOR_CUE(0x0004, 698, 768, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 216, 0, 0.0f, 0.0f, 0.0f),
CS_ACTOR_CUE(0x0002, 768, 817, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 82, 0, 0.0f, 0.0f, 0.0f),
CS_ACTOR_CUE(0x0003, 817, 2666, 0x0000, 0x0000, 0x0000, 0, 82, 0, 0, 82, 0, 0.0f, 0.0f, 0.0f),
CS_PLAYER_CUE_LIST(3),
CS_PLAYER_CUE(0x000D, 0, 300, 0x0000, 0x0000, 0x0000, 0, 6, 0, 0, 6, 0, 0.0f, 0.0f, 0.0f),
CS_PLAYER_CUE(0x0005, 300, 661, 0x0000, 0xEAAA, 0x0000, 0, 6, 0, 0, 6, 0, 0.0f, 0.0f, 0.0f),
CS_PLAYER_CUE(0x0013, 661, 1934, 0x0000, 0x6AAA, 0x0000, 0, 6, 0, 0, 6, 0, 0.0f, 0.0f, 0.0f),
CS_ACTOR_CUE_LIST(44, 3),
CS_ACTOR_CUE(0x0001, 0, 145, 0x0000, 0x0000, 0x0000, -97, 6, 169, -97, 6, 169, 0.0f, 0.0f, 0.0f),
CS_ACTOR_CUE(0x0002, 145, 615, 0x0000, 0x0000, 0x0000, -97, 6, 169, -97, 6, 169, 0.0f, 0.0f, 0.0f),
CS_ACTOR_CUE(0x0003, 615, 1906, 0x0000, 0x0000, 0x0000, -97, 6, 169, -97, 6, 169, 0.0f, 0.0f, 0.0f),
CS_ACTOR_CUE_LIST(49, 1),
CS_ACTOR_CUE(0x0001, 0, 3000, 0x0000, 0x0000, 0x0000, -22, 0, -55, -22, 0, -55, 0.0f, 0.0f, 0.0f),
CS_LIGHT_SETTING_LIST(2),
CS_LIGHT_SETTING(0x0001, 0, 10, 0x0000, 0x00000000, 0xFFFFFFFE, 0x00000000, 0x0000000D, 0xFFFFFFFE, 0x00000000, 0x0000000D),
CS_LIGHT_SETTING(0x0001, 10, 3000, 0x0000, 0x00000000, 0xFFFFFFFE, 0x00000000, 0x0000000D, 0xFFFFFFFE, 0x00000000, 0x0000000D),
CS_TRANSITION(CS_TRANS_GRAY_FILL_OUT, 694, 724),
CS_TRANSITION(CS_TRANS_GRAY_FILL_IN, 960, 990),
CS_TRANSITION(CS_TRANS_GRAY_FILL_IN, 683, 692),
CS_ACTOR_CUE_LIST(62, 2),
CS_ACTOR_CUE(0x0001, 0, 10, 0x0000, 0x0000, 0x0000, 64, 80, 130, 64, 80, 130, 0.0f, 0.0f, 0.0f),
CS_ACTOR_CUE(0x0004, 10, 3000, 0x0000, 0x0000, 0x0000, 64, 80, 130, 64, 80, 130, 0.0f, 0.0f, 0.0f),
CS_START_SEQ_LIST(1),
CS_START_SEQ(NA_BGM_MEDALLION_GET, 770, 771, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFC9, 0x0000005C, 0x00000000, 0xFFFFFFC9, 0x0000005C),
CS_TEXT_LIST(14),
CS_TEXT_NONE(0, 340),
CS_TEXT_DISPLAY_TEXTBOX(0x5022, 340, 353, 0x0000, 0x0000, 0x0000),
CS_TEXT(0x5022, 340, 353, 0x0000, 0x0000, 0x0000),
CS_TEXT_NONE(353, 374),
CS_TEXT_DISPLAY_TEXTBOX(0x5025, 374, 404, 0x0000, 0x0000, 0x0000),
CS_TEXT(0x5025, 374, 404, 0x0000, 0x0000, 0x0000),
CS_TEXT_NONE(404, 424),
CS_TEXT_DISPLAY_TEXTBOX(0x502B, 424, 474, 0x0000, 0x0000, 0x0000),
CS_TEXT(0x502B, 424, 474, 0x0000, 0x0000, 0x0000),
CS_TEXT_NONE(474, 494),
CS_TEXT_DISPLAY_TEXTBOX(0x502C, 494, 543, 0x0000, 0x0000, 0x0000),
CS_TEXT(0x502C, 494, 543, 0x0000, 0x0000, 0x0000),
CS_TEXT_NONE(543, 564),
CS_TEXT_DISPLAY_TEXTBOX(0x5026, 564, 613, 0x0000, 0x0000, 0x0000),
CS_TEXT(0x5026, 564, 613, 0x0000, 0x0000, 0x0000),
CS_TEXT_NONE(613, 955),
CS_TEXT_DISPLAY_TEXTBOX(0x0041, 955, 959, 0x0000, 0x0000, 0x0000),
CS_TEXT(0x0041, 955, 959, 0x0000, 0x0000, 0x0000),
CS_TEXT_NONE(959, 1020),
CS_TEXT_DISPLAY_TEXTBOX(0x5023, 1020, 1029, 0x0000, 0x0000, 0x0000),
CS_TERMINATOR(GRAVEYARD_AFTER_SHADOW_BLUE_WARP, 1060, 1061),
CS_FADE_BGM_LIST(1),
CS_FADE_BGM(0x0004, 673, 723, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFC1, 0x00000058, 0x00000000, 0xFFFFFFC1, 0x00000058),
CS_CAM_EYE_LIST(0, 341),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 33, 225, -58, 0x20BA),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 33, 225, -58, 0xD5E0),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 33, 225, -58, 0x0950),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 33, 106, -58, 0x7C50),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 33, 23, -58, 0x0000),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 11, 10, -18, 0xFFFF),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 11, 10, -18, 0x0000),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 11, 10, -18, 0xE6A0),
CS_CAM_EYE(CS_CMD_STOP, 0x00, 0, 60.600002f, 11, 10, -18, 0x7C53),
CS_CAM_EYE_LIST(263, 504),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 22.626957f, -49, 13, 158, 0x20BA),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 22.626957f, -49, 13, 158, 0xD5E0),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 22.626957f, -49, 13, 158, 0x0950),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 22.626957f, -21, 22, 150, 0x7C50),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 33.226997f, -21, 22, 150, 0x0000),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 33.226997f, -21, 22, 150, 0xFFFF),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 33.226997f, -21, 22, 150, 0x0000),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 33.226997f, -21, 22, 150, 0xE6A0),
CS_CAM_EYE(CS_CMD_STOP, 0x00, 0, 33.226997f, -21, 22, 150, 0x7C53),
CS_CAM_EYE_LIST(363, 824),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0x20BA),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0xD5E0),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0x0950),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0x7C50),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0x0000),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0xFFFF),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 70.79991f, -67, 8, 117, 0x0000),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 70.79991f, -67, 8, 117, 0xE6A0),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 70.79991f, -67, 8, 117, 0x7C53),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 70.79991f, -67, 8, 117, 0x0000),
CS_CAM_EYE(CS_CMD_STOP, 0x00, 0, 70.79991f, -67, 8, 117, 0x0000),
CS_CAM_EYE_REL_TO_PLAYER_LIST(413, 1504),
CS_CAM_EYE_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 19.99985f, -53, 28, 45, 0x20BA),
CS_CAM_EYE_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 19.99985f, -53, 28, 45, 0xD5E0),
CS_CAM_EYE_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 19.99985f, -53, 28, 45, 0x0950),
CS_CAM_EYE_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 19.99985f, -53, 28, 45, 0x7C50),
CS_CAM_EYE_REL_TO_PLAYER(CS_CMD_STOP, 0x00, 0, 19.99985f, -53, 28, 45, 0x0000),
CS_CAM_EYE_LIST(483, 1684),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -67, 8, 117, 0x20BA),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -67, 8, 117, 0xD5E0),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -67, 8, 117, 0x0950),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -71, 15, 124, 0x7C50),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -73, 29, 131, 0x0000),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -78, 40, 140, 0xFFFF),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -78, 40, 140, 0x0000),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -78, 40, 140, 0xE6A0),
CS_CAM_EYE(CS_CMD_STOP, 0x00, 0, 68.91906f, -78, 40, 140, 0x7C53),
CS_CAM_EYE_LIST(553, 1644),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, -39, 34, 201, 0x20BA),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, -39, 34, 201, 0xD5E0),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, -39, 34, 201, 0x0950),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, -39, 34, 201, 0x7C50),
CS_CAM_EYE(CS_CMD_STOP, 0x00, 0, 45.599945f, -39, 34, 201, 0x0000),
CS_CAM_EYE_LIST(623, 819),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 70.599915f, 9, 13, -17, 0x20BA),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 70.599915f, 9, 13, -17, 0xD5E0),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 70.599915f, 9, 13, -17, 0x0950),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 70.599915f, 9, 71, -17, 0x7C50),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 126.999054f, 9, 385, -17, 0x0000),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 126.999054f, 9, 385, -17, 0xFFFF),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 126.999054f, 9, 385, -17, 0x0000),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 126.999054f, 9, 385, -17, 0xE6A0),
CS_CAM_EYE(CS_CMD_STOP, 0x00, 0, 126.999054f, 9, 385, -17, 0x7C53),
CS_CAM_EYE_LIST(693, 1035),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 13, 854, 2, 0x20BA),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 9, 853, 5, 0xD5E0),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.0f, -3, 853, 5, 0x0950),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.0f, -9, 853, -6, 0x7C50),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.0f, -2, 852, -17, 0x0000),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 9, 852, -17, 0xFFFF),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 16, 852, -6, 0x0000),
CS_CAM_EYE(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 9, 852, 5, 0xE6A0),
CS_CAM_EYE(CS_CMD_STOP, 0x00, 0, 60.0f, -3, 851, 5, 0x7C53),
CS_CAM_EYE_REL_TO_PLAYER_LIST(769, 1950),
CS_CAM_EYE_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 33, -27, 0x20BA),
CS_CAM_EYE_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 33, -27, 0xD5E0),
CS_CAM_EYE_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 68, -26, 0x0950),
CS_CAM_EYE_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x7C50),
CS_CAM_EYE_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x0000),
CS_CAM_EYE_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0xFFFF),
CS_CAM_EYE_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x0000),
CS_CAM_EYE_REL_TO_PLAYER(CS_CMD_STOP, 0x00, 0, 68.599945f, 0, 103, -26, 0xE6A0),
CS_CAM_AT_LIST(0, 370),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 60.600002f, -21, 21, 42, 0x20BA),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 60.600002f, -21, 21, 42, 0xD5E0),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 60.600002f, -21, 21, 42, 0x0950),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 60.600002f, -78, 86, 144, 0x7C50),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 60.600002f, -80, 21, 142, 0x0000),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 60.600002f, -99, 31, 177, 0xFFFF),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 60.600002f, -99, 31, 177, 0x0000),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 60.600002f, -99, 31, 177, 0xE6A0),
CS_CAM_AT(CS_CMD_STOP, 0x00, 30, 60.600002f, -99, 31, 177, 0x7C53),
CS_CAM_AT_LIST(263, 533),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 22.626957f, -309, 11, 229, 0x20BA),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 22.626957f, -309, 11, 229, 0xD5E0),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 22.626957f, -309, 11, 229, 0x0950),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 33.226997f, -258, 133, 191, 0x7C50),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 33.226997f, -258, 133, 191, 0x0000),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 33.226997f, -258, 133, 191, 0xFFFF),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 33.226997f, -258, 133, 191, 0x0000),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 33.226997f, -258, 133, 191, 0xE6A0),
CS_CAM_AT(CS_CMD_STOP, 0x00, 30, 33.226997f, -258, 133, 191, 0x7C53),
CS_CAM_AT_LIST(363, 853),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 68.79994f, 68, 109, -103, 0x20BA),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 68.99994f, 68, 109, -103, 0xD5E0),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 68.79994f, 67, 109, -103, 0x0950),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 68.599945f, 189, 109, 92, 0x7C50),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 68.599945f, 57, 108, 341, 0x0000),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 70.79991f, -186, 107, 341, 0xFFFF),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 70.79991f, -186, 107, 341, 0x0000),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 70.79991f, -186, 107, 341, 0xE6A0),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 70.79991f, -186, 107, 341, 0x7C53),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 70.79991f, -186, 107, 341, 0x0000),
CS_CAM_AT(CS_CMD_STOP, 0x00, 30, 70.79991f, -186, 107, 341, 0x0000),
CS_CAM_AT_REL_TO_PLAYER_LIST(413, 1533),
CS_CAM_AT_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 19.99985f, 171, 122, -106, 0x20BA),
CS_CAM_AT_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 19.99985f, 171, 122, -106, 0xD5E0),
CS_CAM_AT_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 19.99985f, 171, 122, -106, 0x0950),
CS_CAM_AT_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 19.99985f, 170, 122, -106, 0x7C50),
CS_CAM_AT_REL_TO_PLAYER(CS_CMD_STOP, 0x00, 30, 19.99985f, 170, 122, -106, 0x0000),
CS_CAM_AT_LIST(483, 1713),
CS_CAM_AT(CS_CMD_CONTINUE, 0x01, 20, 68.91906f, -191, 132, 327, 0x20BA),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 20, 68.91906f, -191, 132, 327, 0xD5E0),
CS_CAM_AT(CS_CMD_CONTINUE, 0xFF, 30, 68.91906f, -190, 131, 326, 0x0950),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 40, 68.91906f, -189, 154, 324, 0x7C50),
CS_CAM_AT(CS_CMD_CONTINUE, 0x01, 30, 68.91906f, -194, 162, 331, 0x0000),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 68.91906f, -199, 172, 339, 0xFFFF),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 1000, 68.91906f, -199, 172, 339, 0x0000),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 68.91906f, -199, 172, 339, 0xE6A0),
CS_CAM_AT(CS_CMD_STOP, 0x00, 30, 68.91906f, -199, 172, 339, 0x7C53),
CS_CAM_AT_LIST(553, 1673),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 45.599945f, -234, 123, 37, 0x20BA),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 45.599945f, -234, 123, 37, 0xD5E0),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 1000, 45.599945f, -234, 123, 37, 0x0950),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 45.599945f, -234, 123, 37, 0x7C50),
CS_CAM_AT(CS_CMD_STOP, 0x00, 30, 45.599945f, -233, 123, 37, 0x0000),
CS_CAM_AT_LIST(623, 848),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 70.599915f, -52, 17, 91, 0x20BA),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 70.599915f, -52, 17, 91, 0xD5E0),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 20, 70.599915f, -52, 17, 91, 0x0950),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 15, 70.599915f, -52, 75, 91, 0x7C50),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 10, 126.999054f, -5, 503, 9, 0x0000),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 126.999054f, -5, 503, 9, 0xFFFF),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 126.999054f, -5, 503, 9, 0x0000),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 126.999054f, -5, 503, 9, 0xE6A0),
CS_CAM_AT(CS_CMD_STOP, 0x00, 30, 126.999054f, -5, 503, 9, 0x7C53),
CS_CAM_AT_LIST(693, 1084),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 60.0f, 3, 6, -6, 0x20BA),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 40, 60.0f, 3, 6, -6, 0xD5E0),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 30, 50.999966f, 3, 6, -6, 0x0950),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 20, 20.59985f, 3, 6, -6, 0x7C50),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 51, 10.799838f, 3, 6, -6, 0x0000),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 10.399838f, 3, 6, -6, 0xFFFF),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 10.399838f, 3, 6, -6, 0x0000),
CS_CAM_AT(CS_CMD_CONTINUE, 0x00, 50, 10.199839f, 3, 6, -6, 0xE6A0),
CS_CAM_AT(CS_CMD_STOP, 0x00, 50, 10.999838f, 3, 6, -6, 0x7C53),
CS_CAM_AT_REL_TO_PLAYER_LIST(769, 1979),
CS_CAM_AT_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 100, 5, 0x20BA),
CS_CAM_AT_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 101, 6, 0xD5E0),
CS_CAM_AT_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 1, 99, 41, 0x0950),
CS_CAM_AT_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x7C50),
CS_CAM_AT_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x0000),
CS_CAM_AT_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 68.599945f, 0, 42, 16, 0xFFFF),
CS_CAM_AT_REL_TO_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x0000),
CS_CAM_AT_REL_TO_PLAYER(CS_CMD_STOP, 0x00, 30, 68.599945f, 0, 42, 16, 0xE6A0),
CS_TEXT(0x5023, 1020, 1029, 0x0000, 0x0000, 0x0000),
CS_DESTINATION(CS_DEST_GRAVEYARD_FROM_CHAMBER_OF_SAGES, 1060, 1061),
CS_FADE_OUT_SEQ_LIST(1),
CS_FADE_OUT_SEQ(CS_FADE_OUT_BGM_MAIN, 673, 723, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFC1, 0x00000058, 0x00000000, 0xFFFFFFC1, 0x00000058),
CS_CAM_EYE_SPLINE(0, 341),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.600002f, 33, 225, -58, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.600002f, 33, 225, -58, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.600002f, 33, 225, -58, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.600002f, 33, 106, -58, 0x7C50),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.600002f, 33, 23, -58, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.600002f, 11, 10, -18, 0xFFFF),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.600002f, 11, 10, -18, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.600002f, 11, 10, -18, 0xE6A0),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 0, 60.600002f, 11, 10, -18, 0x7C53),
CS_CAM_EYE_SPLINE(263, 504),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 22.626957f, -49, 13, 158, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 22.626957f, -49, 13, 158, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 22.626957f, -49, 13, 158, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 22.626957f, -21, 22, 150, 0x7C50),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 33.226997f, -21, 22, 150, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 33.226997f, -21, 22, 150, 0xFFFF),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 33.226997f, -21, 22, 150, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 33.226997f, -21, 22, 150, 0xE6A0),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 0, 33.226997f, -21, 22, 150, 0x7C53),
CS_CAM_EYE_SPLINE(363, 824),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0x7C50),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0xFFFF),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 70.79991f, -67, 8, 117, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 70.79991f, -67, 8, 117, 0xE6A0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 70.79991f, -67, 8, 117, 0x7C53),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 70.79991f, -67, 8, 117, 0x0000),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 0, 70.79991f, -67, 8, 117, 0x0000),
CS_CAM_EYE_SPLINE_REL_TO_PLAYER(413, 1504),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 19.99985f, -53, 28, 45, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 19.99985f, -53, 28, 45, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 19.99985f, -53, 28, 45, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 19.99985f, -53, 28, 45, 0x7C50),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 0, 19.99985f, -53, 28, 45, 0x0000),
CS_CAM_EYE_SPLINE(483, 1684),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 68.91906f, -67, 8, 117, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 68.91906f, -67, 8, 117, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 68.91906f, -67, 8, 117, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 68.91906f, -71, 15, 124, 0x7C50),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 68.91906f, -73, 29, 131, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 68.91906f, -78, 40, 140, 0xFFFF),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 68.91906f, -78, 40, 140, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 68.91906f, -78, 40, 140, 0xE6A0),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 0, 68.91906f, -78, 40, 140, 0x7C53),
CS_CAM_EYE_SPLINE(553, 1644),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 45.599945f, -39, 34, 201, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 45.599945f, -39, 34, 201, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 45.599945f, -39, 34, 201, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 45.599945f, -39, 34, 201, 0x7C50),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 0, 45.599945f, -39, 34, 201, 0x0000),
CS_CAM_EYE_SPLINE(623, 819),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 70.599915f, 9, 13, -17, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 70.599915f, 9, 13, -17, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 70.599915f, 9, 13, -17, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 70.599915f, 9, 71, -17, 0x7C50),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 126.999054f, 9, 385, -17, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 126.999054f, 9, 385, -17, 0xFFFF),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 126.999054f, 9, 385, -17, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 126.999054f, 9, 385, -17, 0xE6A0),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 0, 126.999054f, 9, 385, -17, 0x7C53),
CS_CAM_EYE_SPLINE(693, 1035),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.0f, 13, 854, 2, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.0f, 9, 853, 5, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.0f, -3, 853, 5, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.0f, -9, 853, -6, 0x7C50),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.0f, -2, 852, -17, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.0f, 9, 852, -17, 0xFFFF),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.0f, 16, 852, -6, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 60.0f, 9, 852, 5, 0xE6A0),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 0, 60.0f, -3, 851, 5, 0x7C53),
CS_CAM_EYE_SPLINE_REL_TO_PLAYER(769, 1950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 68.599945f, 0, 33, -27, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 68.599945f, 0, 33, -27, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 68.599945f, 0, 68, -26, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x7C50),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0xFFFF),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x0000),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 0, 68.599945f, 0, 103, -26, 0xE6A0),
CS_CAM_AT_SPLINE(0, 370),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 60.600002f, -21, 21, 42, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 60.600002f, -21, 21, 42, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 60.600002f, -21, 21, 42, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 60.600002f, -78, 86, 144, 0x7C50),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 60.600002f, -80, 21, 142, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 60.600002f, -99, 31, 177, 0xFFFF),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 60.600002f, -99, 31, 177, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 60.600002f, -99, 31, 177, 0xE6A0),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, 60.600002f, -99, 31, 177, 0x7C53),
CS_CAM_AT_SPLINE(263, 533),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 22.626957f, -309, 11, 229, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 22.626957f, -309, 11, 229, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 22.626957f, -309, 11, 229, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 33.226997f, -258, 133, 191, 0x7C50),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 33.226997f, -258, 133, 191, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 33.226997f, -258, 133, 191, 0xFFFF),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 33.226997f, -258, 133, 191, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 33.226997f, -258, 133, 191, 0xE6A0),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, 33.226997f, -258, 133, 191, 0x7C53),
CS_CAM_AT_SPLINE(363, 853),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 68.79994f, 68, 109, -103, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 68.99994f, 68, 109, -103, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 68.79994f, 67, 109, -103, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 68.599945f, 189, 109, 92, 0x7C50),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 68.599945f, 57, 108, 341, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 70.79991f, -186, 107, 341, 0xFFFF),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 70.79991f, -186, 107, 341, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 70.79991f, -186, 107, 341, 0xE6A0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 70.79991f, -186, 107, 341, 0x7C53),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 70.79991f, -186, 107, 341, 0x0000),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, 70.79991f, -186, 107, 341, 0x0000),
CS_CAM_AT_SPLINE_REL_TO_PLAYER(413, 1533),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 19.99985f, 171, 122, -106, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 19.99985f, 171, 122, -106, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 1000, 19.99985f, 171, 122, -106, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 19.99985f, 170, 122, -106, 0x7C50),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, 19.99985f, 170, 122, -106, 0x0000),
CS_CAM_AT_SPLINE(483, 1713),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x01, 20, 68.91906f, -191, 132, 327, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 20, 68.91906f, -191, 132, 327, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0xFF, 30, 68.91906f, -190, 131, 326, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 40, 68.91906f, -189, 154, 324, 0x7C50),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x01, 30, 68.91906f, -194, 162, 331, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 68.91906f, -199, 172, 339, 0xFFFF),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 1000, 68.91906f, -199, 172, 339, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 68.91906f, -199, 172, 339, 0xE6A0),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, 68.91906f, -199, 172, 339, 0x7C53),
CS_CAM_AT_SPLINE(553, 1673),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 45.599945f, -234, 123, 37, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 45.599945f, -234, 123, 37, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 1000, 45.599945f, -234, 123, 37, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 45.599945f, -234, 123, 37, 0x7C50),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, 45.599945f, -233, 123, 37, 0x0000),
CS_CAM_AT_SPLINE(623, 848),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 70.599915f, -52, 17, 91, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 70.599915f, -52, 17, 91, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 20, 70.599915f, -52, 17, 91, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 15, 70.599915f, -52, 75, 91, 0x7C50),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 10, 126.999054f, -5, 503, 9, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 126.999054f, -5, 503, 9, 0xFFFF),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 126.999054f, -5, 503, 9, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 126.999054f, -5, 503, 9, 0xE6A0),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, 126.999054f, -5, 503, 9, 0x7C53),
CS_CAM_AT_SPLINE(693, 1084),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 60.0f, 3, 6, -6, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 40, 60.0f, 3, 6, -6, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 50.999966f, 3, 6, -6, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 20, 20.59985f, 3, 6, -6, 0x7C50),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 51, 10.799838f, 3, 6, -6, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 10.399838f, 3, 6, -6, 0xFFFF),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 10.399838f, 3, 6, -6, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 50, 10.199839f, 3, 6, -6, 0xE6A0),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 50, 10.999838f, 3, 6, -6, 0x7C53),
CS_CAM_AT_SPLINE_REL_TO_PLAYER(769, 1979),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 68.599945f, 0, 100, 5, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 68.599945f, 0, 101, 6, 0xD5E0),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 68.599945f, 1, 99, 41, 0x0950),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x7C50),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 1000, 68.599945f, 0, 42, 16, 0xFFFF),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x0000),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, 68.599945f, 0, 42, 16, 0xE6A0),
CS_END(),
};
// clang-format on