Add enter tourian cutscene data

This commit is contained in:
YohannDR 2023-03-14 14:21:20 +01:00
parent 477ada52ad
commit 476c14d4f9
7 changed files with 108 additions and 6 deletions

View File

@ -891,6 +891,18 @@ cutscenes/StatueOpening/Room.gfx.lz;2357;0x3ed5fc;4
cutscenes/StatueOpening/Room.tt;318;0x3efad0;4
cutscenes/StatueOpening/3effc8.tt;242;0x3effc8;4
# Enter tourian
cutscenes/EnterTourian/Background.pal;160;0x3f0410;2
cutscenes/EnterTourian/Metroid.pal;96;0x3f0550;2
cutscenes/EnterTourian/Background.gfx.lz;3110;0x3f0610;4
cutscenes/EnterTourian/Foreground.gfx.lz;2483;0x3f36a8;4
cutscenes/EnterTourian/DeadSpacePirate_1.gfx.lz;55;0x3f5d74;4
cutscenes/EnterTourian/DeadSpacePirate_2.gfx.lz;77;0x3f5e50;4
cutscenes/EnterTourian/DeadSpacePirate_3.gfx.lz;32;0x3f5f84;4
cutscenes/EnterTourian/Background.tt;385;0x3f6004;4
cutscenes/EnterTourian/Foreground.tt;385;0x3f6608;4
## Menus
# Title screen
@ -969,7 +981,7 @@ Blob_2ceaa8_2cfd9f.bin;4856;0x2ceaa8;1
Blob_2d5ba0_2d7ae7.bin;7988;0x2d5ba0;1
Blob_34099c_345868.bin;20172;0x34099c;1
Blob_375cc4_386f60.bin;70300;0x375cc4;1
Blob_3f0390_411400.bin;135280;0x3f0390;1
Blob_3f6c0c_411400.bin;108532;0x3f6c0c;1
Blob_415460_446d68.bin;203016;0x415460;1
Blob_44f11c_45f45c.bin;66368;0x44f11c;1
Blob_479400_4bfee4.bin;289508;0x479400;1

View File

@ -3,7 +3,7 @@
#include "structs/cutscene.h"
extern const struct CutscenePageData sEnterTourianPageData[9];
extern const struct CutscenePageData sEnterTourianPageData[2];
extern const struct OamArray sEnterTourianOam[7];
extern const u16 sEnterTourianBackgroundPAL[10 * 16];

View File

@ -6,7 +6,7 @@
// Temp place
struct OamArray {
const struct FrameData* pOam;
const struct FrameData* const pOam;
u8 preAction;
};

View File

@ -656,7 +656,8 @@ SECTIONS {
src/data/cutscenes/getting_fully_powered_suit_data.o(.rodata);
src/data/cutscenes/before_charlie_data.o(.rodata);
src/data/cutscenes/statue_opening_data.o(.rodata);
/* 3f0390-411400 */
src/data/cutscenes/enter_tourian_data.o(.rodata);
/* 3f6c0c-411400 */
src/data/save_file_data.o(.rodata);
src/data/menus/erase_sram_data.o(.rodata);
/* 415460-446d68 */

View File

@ -0,0 +1,90 @@
#include "data/cutscenes/enter_tourian_data.h"
#include "macros.h"
#include "gba.h"
#include "data/sprites/metroid.h"
const struct CutscenePageData sEnterTourianPageData[2] = {
[0] = {
.graphicsPage = 0,
.tiletablePage = 0x1E,
.priority = 3,
.bg = DCNT_BG3,
.screenSize = 0
},
[1] = {
.graphicsPage = 2,
.tiletablePage = 0x1C,
.priority = 1,
.bg = DCNT_BG1,
.screenSize = 0x4000
}
};
extern const u16 sEnterTourianOAM_SpacePirate_Frame0[16];
extern const struct FrameData sEnterTourianOAM_Empty[1];
static const struct FrameData sEnterTourianOAM_SpacePirate[2] = {
sEnterTourianOAM_SpacePirate_Frame0,
128,
NULL,
0
};
const struct OamArray sEnterTourianOam[7] = {
[0] = {
.pOam = sEnterTourianOAM_Empty,
.preAction = OAM_ARRAY_PRE_ACTION_NONE
},
[1] = {
.pOam = sEnterTourianOAM_SpacePirate,
.preAction = OAM_ARRAY_PRE_ACTION_RESET_FRAME
},
[2] = {
.pOam = sMetroidShellOAM_Idle,
.preAction = OAM_ARRAY_PRE_ACTION_CHANGE_FRAME
},
[3] = {
.pOam = sMetroidOAM_Moving,
.preAction = OAM_ARRAY_PRE_ACTION_CHANGE_FRAME
},
[4] = {
.pOam = sMetroidOAM_Moving,
.preAction = OAM_ARRAY_PRE_ACTION_LOOP_ON_LAST_FRAME
},
[5] = {
.pOam = sMetroidOAM_Moving,
.preAction = OAM_ARRAY_PRE_ACTION_RESET_FRAME
},
[6] = {
.pOam = sMetroidOAM_SamusGrabbed,
.preAction = OAM_ARRAY_PRE_ACTION_CHANGE_FRAME
}
};
const u16 sEnterTourianOAM_SpacePirate_Frame0[16] = {
0x5,
OBJ_SHAPE_HORIZONTAL | 0xf8, OBJ_SIZE_32x16 | 0x1d8, 0x4000,
OBJ_SHAPE_HORIZONTAL | 0xf8, OBJ_SIZE_32x16 | 0x1f8, 0x4004,
0xf8, OBJ_SIZE_16x16 | 0x18, 0x4008,
OBJ_SHAPE_HORIZONTAL | 0x8, OBJ_SIZE_32x8 | 0x1d8, 0x4040,
OBJ_SHAPE_HORIZONTAL | 0x8, OBJ_SIZE_32x8 | 0x1f8, 0x4044
};
const struct FrameData sEnterTourianOAM_Empty[1] = {
NULL,
0
};
const u16 sEnterTourianBackgroundPAL[10 * 16] = INCBIN_U16("data/cutscenes/EnterTourian/Background.pal");
const u16 sEnterTourianMetroidPAL[6 * 16] = INCBIN_U16("data/cutscenes/EnterTourian/Metroid.pal");
const u32 sEnterTourianBackgroundGFX[3110] = INCBIN_U32("data/cutscenes/EnterTourian/Background.gfx.lz");
const u32 sEnterTourianForegroundGFX[2483] = INCBIN_U32("data/cutscenes/EnterTourian/Foreground.gfx.lz");
const u32 sEnterTourianDeadSpacePirateGFX_1[55] = INCBIN_U32("data/cutscenes/EnterTourian/DeadSpacePirate_1.gfx.lz");
const u32 sEnterTourianDeadSpacePirateGFX_2[77] = INCBIN_U32("data/cutscenes/EnterTourian/DeadSpacePirate_2.gfx.lz");
const u32 sEnterTourianDeadSpacePirateGFX_3[32] = INCBIN_U32("data/cutscenes/EnterTourian/DeadSpacePirate_3.gfx.lz");
const u32 sEnterTourianBackgroundTileTable[385] = INCBIN_U32("data/cutscenes/EnterTourian/Background.tt");
const u32 sEnterTourianForegroundTileTable[385] = INCBIN_U32("data/cutscenes/EnterTourian/Foreground.tt");
const u8 sTempArray_3f6c0c[0x1a7f4] = INCBIN_U8("data/Blob_3f6c0c_411400.bin");

View File

@ -76,5 +76,3 @@ const u16 sStatueOpeningPAL[8 * 16] = INCBIN_U16("data/cutscenes/StatueOpening/P
const u32 sStatueOpeningRoomGFX[2357] = INCBIN_U32("data/cutscenes/StatueOpening/Room.gfx.lz");
const u32 sStatueOpeningRoomTileTable[318] = INCBIN_U32("data/cutscenes/StatueOpening/Room.tt");
const u32 sStatueOpening_3effc8[242] = INCBIN_U32("data/cutscenes/StatueOpening/3effc8.tt");
const u8 sTempArray_3f0390[0x21070] = INCBIN_U8("data/Blob_3f0390_411400.bin");

View File

@ -23,6 +23,7 @@ subDirs: array = [
"cutscenes/GettingFullyPoweredSuit/",
"cutscenes/BeforeCharlie/",
"cutscenes/StatueOpening/",
"cutscenes/EnterTourian/",
"menus/",
"menus/TitleScreen/",
"menus/EraseSram/",