1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2024-12-04 16:55:56 +00:00

More descriptive names for CS_BEGIN_CUTSCENE and CS_END (#2311)

* rename CS_BEGIN_CUTSCENE and CS_END

* matching

* naming consistency for END command, improved comments

* remove CS_CMD_NONE

Co-authored-by: mzxrules <mzxrules@gmail.com>

* remove comma from end of enum

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "c04562d30"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "c04562d30"
git-subrepo:
  version:  "0.4.9"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "cce3d93"

---------

Co-authored-by: mzxrules <mzxrules@gmail.com>
Co-authored-by: fig02 <fig02srl@gmail.com>
This commit is contained in:
mracsys 2024-12-02 16:50:58 -05:00 committed by GitHub
parent 3f703a39d9
commit bdc774058d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
29 changed files with 82 additions and 71 deletions

View file

@ -22,6 +22,7 @@ typedef enum CutsceneState {
} CutsceneState;
typedef enum CutsceneCmd {
/* 0xFFFF */ CS_CMD_END_OF_SCRIPT = -1,
/* 0x0001 */ CS_CMD_CAM_EYE_SPLINE = 0x01,
/* 0x0002 */ CS_CMD_CAM_AT_SPLINE,
/* 0x0003 */ CS_CMD_MISC,
@ -149,8 +150,7 @@ typedef enum CutsceneCmd {
/* 0x008E */ CS_CMD_ACTOR_CUE_7_6,
/* 0x008F */ CS_CMD_ACTOR_CUE_9_0,
/* 0x0090 */ CS_CMD_ACTOR_CUE_0_17,
/* 0x03E8 */ CS_CMD_DESTINATION = 0x03E8,
/* 0xFFFF */ CS_CMD_END = 0xFFFF
/* 0x03E8 */ CS_CMD_DESTINATION = 0x03E8
} CutsceneCmd;
typedef enum CutsceneMiscType {

View file

@ -37,9 +37,10 @@
#endif
/**
* Marks the beginning of a cutscene script.
* Describes the length and the total number of command entries for a cutscene script.
* Required at the beginning of every script.
*/
#define CS_BEGIN_CUTSCENE(totalEntries, frameCount) CMD_W(totalEntries), CMD_W(frameCount)
#define CS_HEADER(totalEntries, frameCount) CMD_W(totalEntries), CMD_W(frameCount)
/**
* Defines data for `CutsceneCameraPoint`, which can be used with any of the `eye` or `at` camera commands.
@ -267,9 +268,9 @@
CS_CMD_DESTINATION, 1, CMD_HH(destination, startFrame), CMD_HH(endFrame, endFrame)
/**
* Marks the end of a cutscene script.
* Marks the end of a command list in a cutscene script. Processing for the current frame will finish.
*/
#define CS_END() 0xFFFFFFFF, 0x00000000
#define CS_END_OF_SCRIPT() CS_CMD_END_OF_SCRIPT, CMD_W(0)
// most instances of this look like unimplemented actor cues.

View file

@ -1813,7 +1813,7 @@ void Cutscene_ProcessScript(PlayState* play, CutsceneContext* csCtx, u8* script)
MemCpy(&cmdType, script, sizeof(cmdType));
script += sizeof(cmdType);
if (cmdType == CS_CAM_STOP) {
if (cmdType == CS_CMD_END_OF_SCRIPT) {
return;
}

View file

@ -3,7 +3,7 @@
// clang-format off
CutsceneData D_808BB2F0[] = {
CS_BEGIN_CUTSCENE(9, 425),
CS_HEADER(9, 425),
CS_PLAYER_CUE_LIST(1),
CS_PLAYER_CUE(PLAYER_CUEID_12, 0, 256, 0x0000, 0x0000, 0x0000, 0, 54, 52, 0, 54, 52, CS_FLOAT(0x0, 0.0f), CS_FLOAT(0x0, 0.0f), CS_FLOAT(0x0, 0.0f)),
CS_LIGHT_SETTING_LIST(1),
@ -74,6 +74,6 @@ CutsceneData D_808BB2F0[] = {
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 20, CS_FLOAT(0x42700000, 60.0f), -1, 117, 7, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 20, CS_FLOAT(0x42700000, 60.0f), -1, 117, 7, 0x2F73),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 20, CS_FLOAT(0x42700000, 60.0f), -1, 117, 7, 0x6B2F),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
CutsceneData D_808BB7A0[] = {
CS_BEGIN_CUTSCENE(9, 368),
CS_HEADER(9, 368),
CS_CAM_EYE_SPLINE(0, 126),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, CS_FLOAT(0x42700000, 60.0f), -1, 101, -110, 0x616D),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, CS_FLOAT(0x42200000, 40.0f), -1, 101, -110, 0x6964),
@ -94,6 +94,6 @@ CutsceneData D_808BB7A0[] = {
CS_MISC(CS_MISC_SET_CSFLAG_1, 90, 91, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFF8, 0xFFFFFFDD, 0x00000000, 0xFFFFFFF8, 0xFFFFFFDD, 0x00000000, 0x00000000, 0x00000000),
CS_TRANSITION(CS_TRANS_GRAY_FILL_IN, 190, 210),
CS_DESTINATION(CS_DEST_TEMPLE_OF_TIME_FROM_MASTER_SWORD, 210, 211),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
CutsceneData D_808BBD90[] = {
CS_BEGIN_CUTSCENE(11, 3000),
CS_HEADER(11, 3000),
CS_UNK_DATA_LIST(0x00000021, 1),
CS_UNK_DATA(0x00010000, 0x0BB80000, 0x00000000, 0x00000000, 0xFFFFFFF8, 0xFFFFFFFF, 0x00000000, 0xFFFFFFF8, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000000),
CS_PLAYER_CUE_LIST(3),
@ -91,6 +91,6 @@ CutsceneData D_808BBD90[] = {
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x42700001, 60.000004f), 0, 98, -31, 0x0000),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x42700001, 60.000004f), 0, 98, -31, 0x2D70),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x42700001, 60.000004f), 0, 98, -31, 0x0085),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
CutsceneData D_808BCE20[] = {
CS_BEGIN_CUTSCENE(12, 3000),
CS_HEADER(12, 3000),
CS_UNK_DATA_LIST(0x00000015, 1),
CS_UNK_DATA(0x00010000, 0x0BB80000, 0x00000000, 0x00000000, 0x0000000F, 0xFFFFFFDE, 0x00000000, 0x0000000F, 0xFFFFFFDE, 0x00000000, 0x00000000, 0x00000000),
CS_PLAYER_CUE_LIST(2),
@ -59,11 +59,11 @@ CutsceneData D_808BCE20[] = {
CS_START_SEQ(NA_BGM_DEKU_TREE_CS, 140, 141, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFBA, 0x00000094, 0x00000000, 0xFFFFFFBA, 0x00000094),
CS_FADE_OUT_SEQ_LIST(1),
CS_FADE_OUT_SEQ(CS_FADE_OUT_BGM_MAIN, 0, 20, 0x0000, 0x00000000, 0xFFFFFFA2, 0x00000000, 0x00000027, 0xFFFFFFA2, 0x00000000, 0x00000027),
CS_END(),
CS_END_OF_SCRIPT(),
};
CutsceneData D_808BD2A0[] = {
CS_BEGIN_CUTSCENE(9, 3000),
CS_HEADER(9, 3000),
CS_UNK_DATA_LIST(0x00000015, 1),
CS_UNK_DATA(0x00010000, 0x0BB80000, 0x00000000, 0x00000000, 0x0000000F, 0xFFFFFFDE, 0x00000000, 0x0000000F, 0xFFFFFFDE, 0x00000000, 0x00000000, 0x00000000),
CS_MISC_LIST(1),
@ -99,11 +99,11 @@ CutsceneData D_808BD2A0[] = {
CS_TEXT(0x1016, 20, 80, 0x0000, 0xFFFF, 0xFFFF),
CS_START_SEQ_LIST(1),
CS_START_SEQ(NA_BGM_DEKU_TREE_CS, 0, 1, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFAC, 0x0000007E, 0x00000000, 0xFFFFFFAC, 0x0000007E),
CS_END(),
CS_END_OF_SCRIPT(),
};
CutsceneData D_808BD520[] = {
CS_BEGIN_CUTSCENE(8, 3000),
CS_HEADER(8, 3000),
CS_UNK_DATA_LIST(0x00000015, 1),
CS_UNK_DATA(0x00010000, 0x0BB80000, 0x00000000, 0x00000000, 0x0000000F, 0xFFFFFFDE, 0x00000000, 0x0000000F, 0xFFFFFFDE, 0x00000000, 0x00000000, 0x00000000),
CS_ACTOR_CUE_LIST(46, 2),
@ -134,11 +134,11 @@ CutsceneData D_808BD520[] = {
CS_STOP_SEQ(NA_BGM_DEKU_TREE_CS, 90, 91, 0x0000, 0x00000000, 0xFFFFFFAC, 0x00000000, 0x00000034, 0xFFFFFFAC, 0x00000000, 0x00000034),
CS_START_SEQ_LIST(1),
CS_START_SEQ(NA_BGM_KOKIRI, 99, 100, 0x0000, 0x00000000, 0xFFFFFFD0, 0x00000000, 0x00000041, 0xFFFFFFD0, 0x00000000, 0x00000041),
CS_END(),
CS_END_OF_SCRIPT(),
};
CutsceneData D_808BD790[] = {
CS_BEGIN_CUTSCENE(8, 3000),
CS_HEADER(8, 3000),
CS_UNK_DATA_LIST(0x00000015, 1),
CS_UNK_DATA(0x00010000, 0x0BB80000, 0x00000000, 0x00000000, 0x0000000F, 0xFFFFFFDE, 0x00000000, 0x0000000F, 0xFFFFFFDE, 0x00000000, 0x00000000, 0x00000000),
CS_ACTOR_CUE_LIST(46, 1),
@ -164,6 +164,6 @@ CutsceneData D_808BD790[] = {
CS_STOP_SEQ(NA_BGM_DEKU_TREE_CS, 70, 71, 0x0000, 0x00000000, 0xFFFFFFB7, 0x00000000, 0x00000044, 0xFFFFFFB7, 0x00000000, 0x00000044),
CS_START_SEQ_LIST(1),
CS_START_SEQ(NA_BGM_KOKIRI, 79, 80, 0x0000, 0x00000000, 0xFFFFFFE8, 0x00000000, 0x0000003A, 0xFFFFFFE8, 0x00000000, 0x0000003A),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
static CutsceneData D_8096C1A4[] = {
CS_BEGIN_CUTSCENE(31, 3000),
CS_HEADER(31, 3000),
CS_UNK_DATA_LIST(0x00000020, 1),
CS_UNK_DATA(0x00010000, 0x0BB80000, 0x00000000, 0x00000000, 0xFFFFFFFC, 0x00000002, 0x00000000, 0xFFFFFFFC, 0x00000002, 0x00000000, 0x00000000, 0x00000000),
CS_ACTOR_CUE_LIST(31, 5),
@ -182,6 +182,6 @@ static CutsceneData D_8096C1A4[] = {
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 1000, CS_FLOAT(0x4289332C, 68.599945f), 0, 42, 16, 0x013D),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x4289332C, 68.599945f), 0, 42, 16, 0x013F),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x4289332C, 68.599945f), 0, 42, 16, 0x002E),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
static CutsceneData D_8098786C[] = {
CS_BEGIN_CUTSCENE(32, 3000),
CS_HEADER(32, 3000),
CS_UNK_DATA_LIST(0x00000020, 1),
CS_UNK_DATA(0x00010000, 0x0BB80000, 0x00000000, 0x00000000, 0xFFFFFFFC, 0x00000002, 0x00000000, 0xFFFFFFFC, 0x00000002, 0x00000000, 0x00000000, 0x00000000),
CS_ACTOR_CUE_LIST(31, 5),
@ -217,6 +217,6 @@ static CutsceneData D_8098786C[] = {
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 1000, CS_FLOAT(0x4289332C, 68.599945f), 0, 42, 16, 0xFFFF),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x4289332C, 68.599945f), 0, 42, 16, 0x0000),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x4289332C, 68.599945f), 0, 42, 16, 0xE6A0),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
CutsceneData gAdultWarpInCS[] = {
CS_BEGIN_CUTSCENE(2, 164),
CS_HEADER(2, 164),
CS_CAM_EYE_SPLINE_REL_TO_PLAYER(0, 135),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, CS_FLOAT(0x42714CA7, 60.324856f), 31, 79, 59, 0x010F),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, CS_FLOAT(0x42714CA7, 60.324856f), 31, 78, 60, 0x0120),
@ -20,6 +20,6 @@ CutsceneData gAdultWarpInCS[] = {
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x42714CA7, 60.324856f), 57, 101, 21, 0x01F6),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x42714CA7, 60.324856f), 57, 101, 21, 0x0207),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x42714CA7, 60.324856f), 57, 101, 21, 0x0000),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
CutsceneData gAdultWarpOutCS[] = {
CS_BEGIN_CUTSCENE(5, 1167),
CS_HEADER(5, 1167),
CS_CAM_EYE_SPLINE_REL_TO_PLAYER(0, 1138),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, CS_FLOAT(0x42714CA8, 60.32486f), 31, 82, 61, 0x20BA),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, CS_FLOAT(0x42714CA8, 60.32486f), 31, 82, 61, 0xA1BC),
@ -26,6 +26,6 @@ CutsceneData gAdultWarpOutCS[] = {
CS_TRANSITION(CS_TRANS_GRAY_FILL_IN, 30, 35),
CS_MISC_LIST(1),
CS_MISC(CS_MISC_STOP_CUTSCENE, 95, 97, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFE3, 0xFFFFFFF9, 0x00000000, 0xFFFFFFE3, 0xFFFFFFF9, 0x00000000, 0x00000000, 0x00000000),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
CutsceneData gAdultWarpInToTCS[] = {
CS_BEGIN_CUTSCENE(2, 118),
CS_HEADER(2, 118),
CS_CAM_EYE_SPLINE_REL_TO_PLAYER(0, 89),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, CS_FLOAT(0x428EA647, 71.32476f), 53, 53, 40, 0x010F),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, CS_FLOAT(0x42700000, 60.0f), 53, 53, 40, 0x0120),
@ -20,6 +20,6 @@ CutsceneData gAdultWarpInToTCS[] = {
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x428D3328, 70.599915f), 29, 71, 25, 0x01F6),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x428D3328, 70.599915f), 29, 71, 25, 0x0207),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x428D3328, 70.599915f), 29, 71, 25, 0x0047),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
CutsceneData gAdultWarpOutToTCS[] = {
CS_BEGIN_CUTSCENE(5, 1120),
CS_HEADER(5, 1120),
CS_TRANSITION(CS_TRANS_GRAY_FILL_OUT, 36, 46),
CS_TRANSITION(CS_TRANS_GRAY_FILL_IN, 30, 35),
CS_CAM_EYE_SPLINE_REL_TO_PLAYER(0, 1091),
@ -20,6 +20,6 @@ CutsceneData gAdultWarpOutToTCS[] = {
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x42714CA8, 60.32486f), 24, 66, 29, 0x29D0),
CS_MISC_LIST(1),
CS_MISC(CS_MISC_STOP_CUTSCENE, 95, 96, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFEE, 0xFFFFFFF3, 0x00000000, 0xFFFFFFEE, 0xFFFFFFF3, 0x00000000, 0x00000000, 0x00000000),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
CutsceneData gChildWarpInCS[] = {
CS_BEGIN_CUTSCENE(2, 1164),
CS_HEADER(2, 1164),
CS_CAM_EYE_SPLINE_REL_TO_PLAYER(0, 1135),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, CS_FLOAT(0x42714CA7, 60.324856f), 31, 68, 59, 0x010F),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, CS_FLOAT(0x42714CA7, 60.324856f), 32, 68, 60, 0x0120),
@ -22,6 +22,6 @@ CutsceneData gChildWarpInCS[] = {
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 1000, CS_FLOAT(0x42714CA7, 60.324856f), 57, 86, 21, 0x0207),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x42714CA7, 60.324856f), 57, 86, 21, 0xB46C),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x42714CA7, 60.324856f), 57, 86, 21, 0x05BC),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
CutsceneData gChildWarpOutCS[] = {
CS_BEGIN_CUTSCENE(5, 1167),
CS_HEADER(5, 1167),
CS_TRANSITION(CS_TRANS_GRAY_FILL_OUT, 36, 46),
CS_TRANSITION(CS_TRANS_GRAY_FILL_IN, 30, 35),
CS_CAM_EYE_SPLINE_REL_TO_PLAYER(0, 1138),
@ -26,6 +26,6 @@ CutsceneData gChildWarpOutCS[] = {
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x42714CA9, 60.324863f), 15, 42, 30, 0xEEC0),
CS_MISC_LIST(1),
CS_MISC(CS_MISC_STOP_CUTSCENE, 95, 96, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFEF, 0xFFFFFFCD, 0x00000000, 0xFFFFFFEF, 0xFFFFFFCD, 0x00000000, 0x00000000, 0x00000000),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
CutsceneData gChildWarpInToTCS[] = {
CS_BEGIN_CUTSCENE(2, 1118),
CS_HEADER(2, 1118),
CS_CAM_EYE_SPLINE_REL_TO_PLAYER(0, 1089),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, CS_FLOAT(0x428EA647, 71.32476f), 53, 53, 40, 0x010F),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, CS_FLOAT(0x42700000, 60.0f), 53, 53, 40, 0x0120),
@ -22,6 +22,6 @@ CutsceneData gChildWarpInToTCS[] = {
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 1000, CS_FLOAT(0x428D3328, 70.599915f), 29, 58, 25, 0x0207),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x428D3328, 70.599915f), 29, 58, 25, 0x0000),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x428D3328, 70.599915f), 29, 58, 25, 0x0000),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
CutsceneData gChildWarpOutToTCS[] = {
CS_BEGIN_CUTSCENE(5, 1120),
CS_HEADER(5, 1120),
CS_TRANSITION(CS_TRANS_GRAY_FILL_OUT, 36, 46),
CS_TRANSITION(CS_TRANS_GRAY_FILL_IN, 30, 35),
CS_CAM_EYE_SPLINE_REL_TO_PLAYER(0, 1091),
@ -20,6 +20,6 @@ CutsceneData gChildWarpOutToTCS[] = {
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x42714CAA, 60.324867f), 24, 52, 29, 0x20DC),
CS_MISC_LIST(1),
CS_MISC(CS_MISC_STOP_CUTSCENE, 95, 96, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFDF, 0x00000019, 0x00000000, 0xFFFFFFDF, 0x00000019, 0x00000000, 0x00000000, 0x00000000),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
static CutsceneData D_8099010C[] = {
CS_BEGIN_CUTSCENE(29, 3001),
CS_HEADER(29, 3001),
CS_UNK_DATA_LIST(0x00000020, 1),
CS_UNK_DATA(0x00010000, 0x0BB80000, 0x00000000, 0x00000000, 0xFFFFFFFC, 0x00000002, 0x00000000, 0xFFFFFFFC, 0x00000002, 0x00000000, 0x00000000, 0x00000000),
CS_ACTOR_CUE_LIST(31, 5),
@ -179,6 +179,6 @@ static CutsceneData D_8099010C[] = {
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 1000, CS_FLOAT(0x4289332C, 68.599945f), 0, 42, 16, 0x006F),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x4289332C, 68.599945f), 0, 42, 16, 0x006D),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x4289332C, 68.599945f), 0, 42, 16, 0x0065),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
static CutsceneData D_80A88164[] = {
CS_BEGIN_CUTSCENE(26, 1629),
CS_HEADER(26, 1629),
CS_PLAYER_CUE_LIST(4),
CS_PLAYER_CUE(PLAYER_CUEID_5, 0, 240, 0x0000, 0x4000, 0x0000, -1732, 52, -44, -1732, 52, -44, CS_FLOAT(0xF671408, 1.1393037e-29f), CS_FLOAT(0x0, 0.0f), CS_FLOAT(0x1, 1e-45f)),
CS_PLAYER_CUE(PLAYER_CUEID_3, 240, 255, 0x0000, 0x4000, 0x0000, -1732, 52, -44, -1732, 52, -44, CS_FLOAT(0xF671408, 1.1393037e-29f), CS_FLOAT(0x0, 0.0f), CS_FLOAT(0x1, 1e-45f)),
@ -153,6 +153,6 @@ static CutsceneData D_80A88164[] = {
CS_DESTINATION(CS_DEST_JABU_JABU, 345, 395),
CS_ACTOR_CUE_LIST(62, 1),
CS_ACTOR_CUE(0x0001, 305, 494, 0x0000, 0x0000, 0x0000, -1399, 452, -53, -1399, 452, -53, CS_FLOAT(0x0, 0.0f), CS_FLOAT(0x0, 0.0f), CS_FLOAT(0x0, 0.0f)),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
static CutsceneData D_80AB431C[] = {
CS_BEGIN_CUTSCENE(27, 3011),
CS_HEADER(27, 3011),
CS_UNK_DATA_LIST(0x00000020, 1),
CS_UNK_DATA(0x00010000, 0x0BB80000, 0x00000000, 0x00000000, 0xFFFFFFFC, 0x00000002, 0x00000000, 0xFFFFFFFC, 0x00000002, 0x00000000, 0x00000000, 0x00000000),
CS_ACTOR_CUE_LIST(31, 5),
@ -165,6 +165,6 @@ static CutsceneData D_80AB431C[] = {
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 1000, CS_FLOAT(0x4289332C, 68.599945f), 0, 42, 16, 0x013D),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x4289332C, 68.599945f), 0, 42, 16, 0x013F),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x4289332C, 68.599945f), 0, 42, 16, 0x002E),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
CutsceneData D_80ABF9D0[] = {
CS_BEGIN_CUTSCENE(4, 360),
CS_HEADER(4, 360),
CS_DESTINATION(CS_DEST_KAKARIKO_VILLAGE_DRAIN_WELL, 200, 201),
CS_CAM_EYE_SPLINE(0, 331),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 0, CS_FLOAT(0x42700000, 60.0f), 3100, 201, -100, 0x3235),
@ -25,11 +25,11 @@ CutsceneData D_80ABF9D0[] = {
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x42700000, 60.0f), 3118, 142, 96, 0x2C20),
CS_MISC_LIST(1),
CS_MISC(CS_MISC_SET_FLAG_FAST_WINDMILL, 30, 31, 0x0000, 0x00000000, 0xFFFFFFFE, 0x00000000, 0x00000002, 0xFFFFFFFE, 0x00000000, 0x00000002, 0x00000000, 0x00000000, 0x00000000),
CS_END(),
CS_END_OF_SCRIPT(),
};
CutsceneData D_80ABFB40[] = {
CS_BEGIN_CUTSCENE(18, 3000),
CS_HEADER(18, 3000),
CS_UNK_DATA_LIST(0x00000021, 1),
CS_UNK_DATA(0x00010000, 0x0BB80000, 0x00000000, 0x00000000, 0xFFFFFFAA, 0xFFFFFFAE, 0x00000000, 0xFFFFFFAA, 0xFFFFFFAE, 0x00000000, 0x00000000, 0x00000000),
CS_PLAYER_CUE_LIST(3),
@ -132,6 +132,6 @@ CutsceneData D_80ABFB40[] = {
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x42700000, 60.0f), 68, -2, 1424, 0xC9A5),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x42700000, 60.0f), 68, -2, 1424, 0xA5A2),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x42700000, 60.0f), 68, -2, 1424, 0xA5BB),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
static CutsceneData D_80AF0880[] = {
CS_BEGIN_CUTSCENE(15, 1306),
CS_HEADER(15, 1306),
CS_PLAYER_CUE_LIST(10),
CS_PLAYER_CUE(PLAYER_CUEID_39, 0, 50, 0x0000, 0x6C16, 0x0000, 12, -340, -2810, 12, -340, -2810, CS_FLOAT(0xF671408, 1.1393037e-29f), CS_FLOAT(0x0, 0.0f), CS_FLOAT(0x1, 1e-45f)),
CS_PLAYER_CUE(PLAYER_CUEID_3, 50, 70, 0x0000, 0x6C16, 0x0000, 12, -340, -2810, 12, -340, -2810, CS_FLOAT(0xF671408, 1.1393037e-29f), CS_FLOAT(0x0, 0.0f), CS_FLOAT(0x1, 1e-45f)),
@ -107,13 +107,13 @@ static CutsceneData D_80AF0880[] = {
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x423B3327, 46.799953f), 305, -272, -3274, 0x5B80),
CS_START_SEQ_LIST(1),
CS_START_SEQ(NA_BGM_APPEAR, 74, 75, 0x0000, 0x00000000, 0xFFFFFFF1, 0x00000000, 0x0000004E, 0xFFFFFFF1, 0x00000000, 0x0000004E),
CS_END(),
CS_END_OF_SCRIPT(),
};
static u32 D_80AF10A0 = 0;
static CutsceneData D_80AF10A4[] = {
CS_BEGIN_CUTSCENE(14, 1299),
CS_HEADER(14, 1299),
CS_PLAYER_CUE_LIST(3),
CS_PLAYER_CUE(PLAYER_CUEID_5, 0, 272, 0x0000, 0xC000, 0x0000, -1085, -1025, -3347, -1085, -1025, -3347, CS_FLOAT(0xF671408, 1.1393037e-29f), CS_FLOAT(0x0, 0.0f), CS_FLOAT(0x1, 1e-45f)),
CS_PLAYER_CUE(PLAYER_CUEID_3, 272, 292, 0x0000, 0xC000, 0x0000, -1085, -1025, -3347, -1085, -1025, -3347, CS_FLOAT(0xF671408, 1.1393037e-29f), CS_FLOAT(0x0, 0.0f), CS_FLOAT(0x1, 1e-45f)),
@ -196,13 +196,13 @@ static CutsceneData D_80AF10A4[] = {
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x41F273D3, 30.306555f), -1426, -857, -3190, 0x00D7),
CS_CAM_POINT(CS_CAM_CONTINUE, 0x00, 30, CS_FLOAT(0x41F273D3, 30.306555f), -1426, -857, -3190, 0x00E8),
CS_CAM_POINT(CS_CAM_STOP, 0x00, 30, CS_FLOAT(0x41F273D3, 30.306555f), -1426, -857, -3190, 0x00EA),
CS_END(),
CS_END_OF_SCRIPT(),
};
static u32 D_80AF1724 = 0;
static CutsceneData D_80AF1728[] = {
CS_BEGIN_CUTSCENE(7, 1160),
CS_HEADER(7, 1160),
CS_MISC_LIST(1),
CS_MISC(CS_MISC_STOP_CUTSCENE, 75, 627, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFC0, 0x00000032, 0x00000000, 0xFFFFFFC0, 0x00000032, 0x00000000, 0x00000000, 0x00000000),
CS_ACTOR_CUE_LIST(48, 1),
@ -234,6 +234,6 @@ static CutsceneData D_80AF1728[] = {
CS_TEXT_LIST(2),
CS_TEXT_NONE(0, 35),
CS_TEXT(0x404F, 35, 70, 0x0000, 0xFFFF, 0xFFFF),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
static CutsceneData D_80AF411C[] = {
CS_BEGIN_CUTSCENE(35, 3338),
CS_HEADER(35, 3338),
CS_UNK_DATA_LIST(0x00000020, 1),
CS_UNK_DATA(0x00010000, 0x0BB80000, 0x00000000, 0x00000000, 0xFFFFFFFC, 0x00000002, 0x00000000, 0xFFFFFFFC, 0x00000002, 0x00000000, 0x00000000, 0x00000000),
CS_ACTOR_CUE_LIST(31, 5),
@ -219,6 +219,6 @@ static CutsceneData D_80AF411C[] = {
CS_START_SEQ(NA_BGM_MEDALLION_GET, 900, 901, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFC7, 0x00000034, 0x00000000, 0xFFFFFFC7, 0x00000034),
CS_FADE_OUT_SEQ_LIST(1),
CS_FADE_OUT_SEQ(CS_FADE_OUT_BGM_MAIN, 800, 850, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFC6, 0x00000030, 0x00000000, 0xFFFFFFC6, 0x00000030),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -3,7 +3,7 @@
// clang-format off
CutsceneData D_80B4C5D0[] = {
CS_BEGIN_CUTSCENE(28, 3000),
CS_HEADER(28, 3000),
CS_PLAYER_CUE_LIST(3),
CS_PLAYER_CUE(PLAYER_CUEID_5, 400, 1211, 0x0000, 0xC000, 0x0000, -422, 84, 1, -422, 84, 1, CS_FLOAT(0xF6484E4, 1.1266862e-29f), CS_FLOAT(0x0, 0.0f), CS_FLOAT(0x1, 1e-45f)),
CS_PLAYER_CUE(PLAYER_CUEID_1, 1211, 1241, 0x0000, 0xC000, 0x0000, -422, 84, 1, -483, 84, 0, CS_FLOAT(0xF6484E4, 1.1266862e-29f), CS_FLOAT(0x0, 0.0f), CS_FLOAT(0x1, 1e-45f)),
@ -243,6 +243,6 @@ CutsceneData D_80B4C5D0[] = {
CS_START_SEQ(NA_BGM_ZELDA_THEME, 870, 871, 0x0000, 0x00000000, 0xFFFFFFFE, 0x00000000, 0xFFFFFFFD, 0xFFFFFFFE, 0x00000000, 0xFFFFFFFD),
CS_STOP_SEQ_LIST(1),
CS_STOP_SEQ(NA_BGM_GENERAL_SFX, 110, 111, 0x0000, 0x00000000, 0xFFFFFFFE, 0x00000000, 0x00000001, 0xFFFFFFFE, 0x00000000, 0x00000001),
CS_END(),
CS_END_OF_SCRIPT(),
};
// clang-format on

View file

@ -6,7 +6,7 @@
[subrepo]
remote = https://github.com/zeldaret/ZAPD.git
branch = master
commit = 0285e11f0a5937f60db023bfe5db273f2223fcf4
parent = afd82230e1bd6e043eabe613f5b31f6e96f0f88c
commit = c04562d30aae565e98d538fd4c1e5c08699c8d48
parent = cfe1e4db6e1a4b561ac1ed0e87f250c83b5a3c69
method = merge
cmdver = 0.4.6
cmdver = 0.4.9

View file

@ -130,7 +130,17 @@ size_t ZKeyFrameSkel::GetRawDataSize() const
std::string ZKeyFrameSkel::GetSourceTypeName() const
{
return "KeyFrameSkeleton";
switch (limbType)
{
case ZKeyframeSkelType::Normal:
return "KeyFrameSkeleton";
case ZKeyframeSkelType::Flex:
return "KeyFrameFlexSkeleton";
default:
return "KeyFrameSkeleton";
}
}
ZResourceType ZKeyFrameSkel::GetResourceType() const

View file

@ -24,7 +24,7 @@ std::string ZCutscene::GetBodySourceCode() const
{
std::string output = "";
output += StringHelper::Sprintf(" CS_BEGIN_CUTSCENE(%i, %i),\n", numCommands, endFrame);
output += StringHelper::Sprintf(" CS_HEADER(%i, %i),\n", numCommands, endFrame);
for (size_t i = 0; i < commands.size(); i++)
{
@ -32,7 +32,7 @@ std::string ZCutscene::GetBodySourceCode() const
output += " " + cmd->GenerateSourceCode();
}
output += StringHelper::Sprintf(" CS_END(),");
output += StringHelper::Sprintf(" CS_END_OF_SCRIPT(),");
return output;
}

View file

@ -148,7 +148,7 @@
<Item Key="actor_cue_9_0" ID="CS_CMD_ACTOR_CUE_9_0" Index="143"/>
<Item Key="actor_cue_0_17" ID="CS_CMD_ACTOR_CUE_0_17" Index="144"/>
<Item Key="destination" ID="CS_CMD_DESTINATION" Index="1000"/>
<Item Key="end" ID="CS_CMD_END" Index="65535"/>
<Item Key="end" ID="CS_CMD_END_OF_SCRIPT" Index="65535"/>
</Enum>
<Enum Games="OoTMqDbg" Key="miscType" ID="CutsceneMiscType">
<!-- https://github.com/zeldaret/oot/blob/823e47a0f8e9fb9fab89bc61b57f45488ff6debe/include/z64cutscene.h#L167-L204 -->

View file

@ -484,7 +484,7 @@ Argument format:
"""
cutscene_command_macros = {
-1:
("CS_END()", 1, None, None,
("CS_END_OF_SCRIPT()", 1, None, None,
None, None),
3:
("CS_MISC_LIST(%w1:1:s)", 2, None, 0,
@ -551,7 +551,7 @@ cutscene_command_macros = {
None, None),
}
begin_cutscene_entry = ("CS_BEGIN_CUTSCENE(%w1:0:s, %w1:1:s)", 2, None, None,
begin_cutscene_entry = ("CS_HEADER(%w1:0:s, %w1:1:s)", 2, None, None,
None, None)
unk_data_entry = ("CS_UNK_DATA_LIST(%w1:0:x, %w1:1:s)", 2, None, 0,
@ -757,7 +757,7 @@ def disassemble_cutscene(cs_in):
i += n_words_list_item
else:
i += n_words
print("Warning: cutscene reached maximum entries without encountering a CS_END command")
print("Warning: cutscene reached maximum entries without encountering a CS_END_SCRIPT command")
return macros
def hex_parse(s):