marioparty4/src/REL/staffDll/main.c
2024-05-02 08:26:48 -05:00

597 lines
18 KiB
C

#include "game/animdata.h"
#include "game/audio.h"
#include "game/hsfman.h"
#include "game/object.h"
#include "game/objsub.h"
#include "game/pad.h"
#include "game/process.h"
#include "game/sprite.h"
#include "game/window.h"
#include "game/wipe.h"
#include "REL/staffDll.h"
#include "rel_sqrt_consts.h"
static s16 imgGroup[26];
static s16 staffLogoGroup[3];
static s16 thpGroup;
static s16 thpCoverGroup;
static s32 staffSide;
static s32 currImg;
static omObjData *multiViewObj;
static UnkStaffDllStruct staffData[] = {
{ 0x00340001, 0, 0.0f, 0, 0, 0 },
{ 0x00350000, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 72.0f, 0, 0, 0 },
{ 0x00340002, 0, 0.0f, 0, 0, 0 },
{ 0x00350001, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x00340003, 0, 0.0f, 0, 0, 0 },
{ 0x00350002, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x00340004, 0, 0.0f, 0, 0, 0 },
{ 0x00350003, 2, 0.0f, 0, 0, 0 },
{ 0x00350004, 2, 0.0f, 0, 0, 0 },
{ 0x00350005, 2, 0.0f, 0, 0, 0 },
{ 0x00350006, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x00350007, 2, 0.0f, 0, 0, 0 },
{ 0x00350008, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x00340005, 0, 0.0f, 0, 0, 0 },
{ 0x00350009, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x00340006, 0, 0.0f, 0, 0, 0 },
{ 0x0035000A, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x00340007, 0, 0.0f, 0, 0, 0 },
{ 0x0034001C, 1, 0.0f, 0, 0, 0 },
{ 0x0035000B, 2, 0.0f, 0, 0, 0 },
{ 0x0035000C, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x0034001D, 1, 0.0f, 0, 0, 0 },
{ 0x0035000D, 2, 0.0f, 0, 0, 0 },
{ 0x0035000E, 2, 0.0f, 0, 0, 0 },
{ 0x0035000F, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x00350010, 2, 0.0f, 0, 0, 0 },
{ 0x00350011, 2, 0.0f, 0, 0, 0 },
{ 0x00350012, 2, 0.0f, 0, 0, 0 },
{ 0x00350013, 2, 0.0f, 0, 0, 0 },
{ 0x00350014, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x0034001E, 1, 0.0f, 0, 0, 0 },
{ 0x00350015, 2, 0.0f, 0, 0, 0 },
{ 0x00350016, 2, 0.0f, 0, 0, 0 },
{ 0x00350017, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x00340008, 0, 0.0f, 0, 0, 0 },
{ 0x00350018, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x00340009, 0, 0.0f, 0, 0, 0 },
{ 0x00350019, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x0034000A, 0, 0.0f, 0, 0, 0 },
{ 0x0034001C, 1, 0.0f, 0, 0, 0 },
{ 0x0035001A, 2, 0.0f, 0, 0, 0 },
{ 0x0035001B, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x0034001D, 1, 0.0f, 0, 0, 0 },
{ 0x0035001C, 2, 0.0f, 0, 0, 0 },
{ 0x0035001D, 2, 0.0f, 0, 0, 0 },
{ 0x0035001E, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x0034001E, 1, 0.0f, 0, 0, 0 },
{ 0x0035001F, 2, 0.0f, 0, 0, 0 },
{ 0x00350020, 2, 0.0f, 0, 0, 0 },
{ 0x00350021, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x0034000B, 0, 0.0f, 0, 0, 0 },
{ 0x0034001F, 1, 0.0f, 0, 0, 0 },
{ 0x00350022, 2, 0.0f, 0, 0, 0 },
{ 0x00350023, 2, 0.0f, 0, 0, 0 },
{ 0x00350024, 2, 0.0f, 0, 0, 0 },
{ 0x00350025, 2, 0.0f, 0, 0, 0 },
{ 0x00350026, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x00350027, 2, 0.0f, 0, 0, 0 },
{ 0x00350028, 2, 0.0f, 0, 0, 0 },
{ 0x00350029, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x0034001C, 1, 0.0f, 0, 0, 0 },
{ 0x0035002A, 2, 0.0f, 0, 0, 0 },
{ 0x0035002B, 2, 0.0f, 0, 0, 0 },
{ 0x0035002C, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x0034001D, 1, 0.0f, 0, 0, 0 },
{ 0x0035002D, 2, 0.0f, 0, 0, 0 },
{ 0x0035002E, 2, 0.0f, 0, 0, 0 },
{ 0x0035002F, 2, 0.0f, 0, 0, 0 },
{ 0x00350030, 2, 0.0f, 0, 0, 0 },
{ 0x00350031, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x00350032, 2, 0.0f, 0, 0, 0 },
{ 0x00350033, 2, 0.0f, 0, 0, 0 },
{ 0x00350034, 2, 0.0f, 0, 0, 0 },
{ 0x00350035, 2, 0.0f, 0, 0, 0 },
{ 0x00350036, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x0034000C, 0, 0.0f, 0, 0, 0 },
{ 0x00350037, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x0034000D, 0, 0.0f, 0, 0, 0 },
{ 0x00350038, 2, 0.0f, 0, 0, 0 },
{ 0x00350039, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x0034000E, 0, 0.0f, 0, 0, 0 },
{ 0x0035003A, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x0034000F, 0, 0.0f, 0, 0, 0 },
{ 0x0035003B, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x00340010, 0, 0.0f, 0, 0, 0 },
{ 0x0035003C, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x00340011, 0, 0.0f, 0, 0, 0 },
{ 0x0035003B, 2, 0.0f, 0, 0, 0 },
{ 0x0035003C, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x00340012, 0, 0.0f, 0, 0, 0 },
{ 0x0035003D, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x00340013, 0, 0.0f, 0, 0, 0 },
{ 0x0035003E, 2, 0.0f, 0, 0, 0 },
{ 0x0035003F, 2, 0.0f, 0, 0, 0 },
{ 0x00350040, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x00340014, 0, 0.0f, 0, 0, 0 },
{ 0x00350041, 2, 0.0f, 0, 0, 0 },
{ 0x00350042, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x00340015, 0, 0.0f, 0, 0, 0 },
{ 0x00350043, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x00340022, 0, 0.0f, 0, 0, 0 },
{ 0x00340024, 1, 0.0f, 0, 0, 0 },
{ 0x00350056, 2, 0.0f, 0, 0, 0 },
{ 0x00350057, 2, 0.0f, 0, 0, 0 },
{ 0x00350058, 2, 0.0f, 0, 0, 0 },
{ 0x00350059, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x00340025, 1, 0.0f, 0, 0, 0 },
{ 0x0035005A, 2, 0.0f, 0, 0, 0 },
{ 0x0035005B, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x00340023, 0, 0.0f, 0, 0, 0 },
{ 0x0035005C, 2, 0.0f, 0, 0, 0 },
{ 0x0035005D, 2, 0.0f, 0, 0, 0 },
{ 0x0035005E, 2, 0.0f, 0, 0, 0 },
{ 0x0035005F, 2, 0.0f, 0, 0, 0 },
{ 0x00350060, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x00340016, 0, 0.0f, 0, 0, 0 },
{ 0x00350044, 2, 0.0f, 0, 0, 0 },
{ 0x00350045, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x00350046, 2, 0.0f, 0, 0, 0 },
{ 0x00350047, 2, 0.0f, 0, 0, 0 },
{ 0x00350048, 2, 0.0f, 0, 0, 0 },
{ 0x00350049, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 24.0f, 0, 0, 0 },
{ 0x0035004A, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x0035004B, 2, 0.0f, 0, 0, 0 },
{ 0x0035004C, 2, 0.0f, 0, 0, 0 },
{ 0x0035004D, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x00340017, 0, 0.0f, 0, 0, 0 },
{ 0x0035004E, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 48.0f, 0, 0, 0 },
{ 0x00340018, 0, 0.0f, 0, 0, 0 },
{ 0x0035004F, 2, 0.0f, 0, 0, 0 },
{ 0x00350050, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 72.0f, 0, 0, 0 },
{ 0x00340019, 0, 0.0f, 0, 0, 0 },
{ 0x00350038, 2, 0.0f, 0, 0, 0 },
{ 0x00350051, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 72.0f, 0, 0, 0 },
{ 0x0034001A, 0, 0.0f, 0, 0, 0 },
{ 0x00350052, 2, 0.0f, 0, 0, 0 },
{ 0x00350053, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 72.0f, 0, 0, 0 },
{ 0x0034001B, 0, 0.0f, 0, 0, 0 },
{ 0x00350054, 2, 0.0f, 0, 0, 0 },
{ 0x00350055, 2, 0.0f, 0, 0, 0 },
{ -3, 0, 74.0f, 0, 0, 0 },
{ -2, 0, 0.0f, 0, 0, 0 },
{ -1, 0, 0.0f, 0, 0, 0 },
};
static float staffLogoPosTbl[] = { 460.0f, 293.0f, 293.0f };
static void MainProc(void);
static void CreateStaff(void);
static void ShowPicture(void);
void ModuleProlog(void)
{
Process *var_r31;
s32 var_lr;
var_r31 = omInitObjMan(0x32, 0x2000);
omGameSysInit(var_r31);
HuWinInit(1);
Hu3DCameraCreate(1);
Hu3DCameraPerspectiveSet(1, 20.0f, 20.0f, 10000.0f, 1.2f);
Hu3DCameraViewportSet(1, 0.0f, 0.0f, 640.0f, 480.0f, 0.0f, 1.0f);
Hu3DCameraScissorSet(1, 0, 0, 640, 480);
multiViewObj = omAddObjEx(var_r31, 0x7FDA, 0, 0, -1, omOutViewMulti);
multiViewObj->work[0] = 1;
CRotM[0].x = -35.0f;
CRotM[0].y = 0.0f;
CRotM[0].z = 0.0f;
CenterM[0].x = 0.0f;
CenterM[0].y = 0.0f;
CenterM[0].z = -250.0f;
CZoomM[0] = 4820.0f;
Hu3DBGColorSet(0, 0, 0);
CreateStaff();
HuPrcChildCreate(MainProc, 0x1000, 0x2000, 0, HuPrcCurrentGet());
WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60);
}
static void ExitProc(void)
{
while (TRUE) {
if (omSysExitReq == 1) {
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60);
HuAudFadeOut(1000);
HuPrcSleep(60);
MGSeqKillAll();
omOvlReturnEx(1, 1);
while (TRUE) {
HuPrcVSleep();
}
}
HuPrcVSleep();
}
while (!omSysExitReq) {
HuPrcVSleep();
}
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60);
HuAudFadeOut(1000);
HuPrcSleep(60);
MGSeqKillAll();
omOvlReturnEx(1, 1);
while (TRUE) {
HuPrcVSleep();
}
}
static void CreateStaff(void)
{
void *var_r29;
AnimData *var_r28;
s16 var_r30;
s32 var_r31;
staffSide = 0;
currImg = 0;
for (var_r31 = 0; var_r31 < 26; var_r31++) {
var_r29 = HuDataSelHeapReadNum(var_r31 + 0x730000, MEMORY_DEFAULT_NUM, HEAP_DATA);
var_r28 = HuSprAnimRead(var_r29);
var_r30 = HuSprCreate(var_r28, 16386, 0);
imgGroup[var_r31] = HuSprGrpCreate(1);
HuSprGrpMemberSet(imgGroup[var_r31], 0, var_r30);
if (staffSide != 0) {
HuSprGrpPosSet(imgGroup[var_r31], 380.0f, 240.0f);
} else {
HuSprGrpPosSet(imgGroup[var_r31], 200.0f, 240.0f);
}
HuSprAttrSet(imgGroup[var_r31], 0, HUSPR_ATTR_DISPOFF);
}
for (var_r31 = 0; var_r31 < 3; var_r31++) {
var_r29 = HuDataSelHeapReadNum(var_r31 + 0x73001A, MEMORY_DEFAULT_NUM, HEAP_DATA);
var_r28 = HuSprAnimRead(var_r29);
var_r30 = HuSprCreate(var_r28, 256, 0);
staffLogoGroup[var_r31] = HuSprGrpCreate(1);
HuSprGrpMemberSet(staffLogoGroup[var_r31], 0, var_r30);
HuSprAttrSet(staffLogoGroup[var_r31], 0, HUSPR_ATTR_DISPOFF);
}
thpGroup = HuSprGrpCreate(1);
var_r30 = HuTHPSprCreate("movie/stmov_a00.thp", 0, 16386);
HuSprGrpMemberSet(thpGroup, 0, var_r30);
HuSprGrpScaleSet(thpGroup, 0.65f, 0.65f);
HuSprGrpPosSet(thpGroup, 280.0f, 200.0f);
HuSprAttrSet(thpGroup, 0, HUSPR_ATTR_DISPOFF);
HuTHPStop();
var_r29 = HuDataSelHeapReadNum(0x73001D, MEMORY_DEFAULT_NUM, HEAP_DATA);
var_r28 = HuSprAnimRead(var_r29);
var_r30 = HuSprCreate(var_r28, 16385, 0);
thpCoverGroup = HuSprGrpCreate(1);
HuSprGrpMemberSet(thpCoverGroup, 0, var_r30);
HuSprGrpScaleSet(thpCoverGroup, 40.0f, 40.0f);
HuSprGrpPosSet(thpCoverGroup, 280.0f, 200.0f);
HuSprAttrSet(thpCoverGroup, 0, HUSPR_ATTR_DISPOFF);
HuPrcChildCreate(ShowPicture, 4096, 8192, 0, HuPrcCurrentGet());
HuPrcChildCreate(ExitProc, 4096, 4096, 0, HuPrcCurrentGet());
}
static void MoveStaff(void)
{
float sp8[2];
Process *temp_ret;
float var_f30;
float var_f31;
s16 var_r30;
u32 var_r29;
UnkStaffDllStruct *var_r31;
var_r31 = HuPrcCurrentGet()->user_data;
var_r31->unk_14 = 0;
switch (var_r31->unk_00) {
case -2:
HuSprAttrReset(staffLogoGroup[var_r31->unk_10], 0, HUSPR_ATTR_DISPOFF);
var_f31 = staffLogoPosTbl[var_r31->unk_10];
var_f30 = 576.0f;
break;
default:
HuWinMesMaxSizeGet(1, sp8, var_r31->unk_00);
var_r29 = 0;
switch (var_r31->unk_04) {
case 3:
var_f31 = 320.0f - (0.75f * sp8[0]) / 2;
break;
case 0:
var_f31 = 10.0f;
if (!staffSide) {
var_f31 += 240.0f;
}
break;
case 1:
var_f31 = 30.0f;
if (!staffSide) {
var_f31 += 240.0f;
}
break;
case 2:
var_f31 = 550.0f - (0.75f * sp8[0]);
if (staffSide) {
var_f31 -= 240.0f;
}
var_r29 = 0x1000;
break;
}
var_f30 = 476.0f;
var_r30 = HuWinCreate(var_f31, var_f30, sp8[0], sp8[1], 1);
HuWinAttrSet(var_r30, var_r29);
HuWinPriSet(var_r30, 256);
HuWinBGTPLvlSet(var_r30, 0.0f);
HuWinMesSpeedSet(var_r30, 0);
HuWinMesSet(var_r30, var_r31->unk_00);
HuWinScaleSet(var_r30, 0.75f, 0.75f);
switch (var_r31->unk_04) {
case 0:
case 1:
HuWinMesPalSet(var_r30, 7, 96, 240, 255);
break;
default:
HuWinMesPalSet(var_r30, 7, 255, 255, 255);
break;
}
break;
}
while (TRUE) {
var_f30 -= 0.4f;
if (var_r31->unk_00 == -2) {
if (var_f30 < -114.0f) {
break;
}
} else if (var_f30 < -24.0f) {
break;
}
if (var_r31->unk_00 == -2) {
HuSprGrpPosSet(staffLogoGroup[var_r31->unk_10], var_f31, var_f30);
} else {
HuWinPosSet(var_r30, var_f31, var_f30);
}
HuPrcVSleep();
}
var_r31->unk_14 = 1;
if (var_r31->unk_00 == -2) {
HuSprAttrSet(staffLogoGroup[var_r31->unk_10], 0, HUSPR_ATTR_DISPOFF);
} else {
HuWinKill(var_r30);
}
HuPrcVSleep();
HuPrcKill(HuPrcCurrentGet());
while (TRUE) {
HuPrcVSleep();
}
}
static void HidePicture(void)
{
s32 prevImg;
prevImg = currImg;
currImg++;
if (staffSide != 0) {
HuSprGrpPosSet(imgGroup[currImg], 380.0f, 240.0f);
} else {
HuSprGrpPosSet(imgGroup[currImg], 200.0f, 240.0f);
}
HuSprAttrSet(imgGroup[prevImg], 0, HUSPR_ATTR_DISPOFF);
HuPrcSleep(20);
HuSprAttrReset(imgGroup[currImg], 0, HUSPR_ATTR_DISPOFF);
HuPrcKill(HuPrcCurrentGet());
while (TRUE) {
HuPrcVSleep();
}
}
static void ShowPicture(void)
{
float var_f31;
s32 var_r31;
HuPrcSleep(360);
HuSprAttrReset(imgGroup[currImg], 0, HUSPR_ATTR_DISPOFF);
for (var_r31 = 0, var_f31 = 0.0f; var_r31 < 30; var_r31++, var_f31 += 1.0f / 30.0f) {
HuSprTPLvlSet(imgGroup[currImg], 0, var_f31);
HuPrcVSleep();
}
HuSprTPLvlSet(imgGroup[currImg], 0, 1.0f);
while (TRUE) {
if (currImg >= 24) {
HuPrcSleep(430);
} else {
HuPrcSleep(550);
}
if (currImg >= 25) {
break;
}
HuPrcChildCreate(HidePicture, 0x1000, 0x2000, 0, HuPrcCurrentGet());
}
for (var_r31 = 0, var_f31 = 1.0f; var_r31 < 30; var_r31++, var_f31 -= 1.0f / 30.0f) {
HuSprTPLvlSet(imgGroup[25], 0, var_f31);
HuPrcVSleep();
}
HuSprAttrSet(imgGroup[25], 0, HUSPR_ATTR_DISPOFF);
HuSprAttrSet(imgGroup[25], 0, HUSPR_ATTR_DISPOFF);
while (TRUE) {
HuPrcVSleep();
}
}
static void MainProc(void)
{
s32 var_r31;
UnkStaffDllStruct *var_r30;
s32 var_r29;
Process *var_r28;
s32 var_r27;
float var_f29;
float var_f30;
float var_f31;
HuPrcSleep(60);
var_r27 = HuAudSStreamPlay(22);
for (var_r31 = 0;; var_r31++) {
var_r30 = &staffData[var_r31];
if (var_r30->unk_00 == -1) {
break;
}
switch (var_r30->unk_00) {
case -3:
HuPrcSleep(var_r30->unk_08 / 0.4f);
break;
default:
var_r28 = HuPrcChildCreate(MoveStaff, 0x1000, 0x2000, 0, HuPrcCurrentGet());
var_r28->user_data = var_r30;
if (var_r30->unk_0C == 1) {
staffSide++;
staffSide &= 1;
HuPrcChildCreate(HidePicture, 0x1000, 0x2000, 0, HuPrcCurrentGet());
} else {
HuPrcSleep(60);
}
break;
}
}
var_r30 = &staffData[var_r31 - 1];
while (var_r30->unk_14 == 0) {
HuPrcVSleep();
}
HuPrcSleep(60);
HuSprAttrReset(staffLogoGroup[1], 0, HUSPR_ATTR_DISPOFF);
var_f29 = staffLogoPosTbl[1];
var_f30 = 526.0f;
var_r29 = 0;
while (TRUE) {
var_f30 -= 0.4f;
if (var_f30 < 400.0f) {
break;
}
if ((var_r29 == 0) && (var_f30 < 506.0f)) {
var_r29 = 1;
HuAudSStreamFadeOut(var_r27, 6000);
}
HuSprGrpPosSet(staffLogoGroup[1], var_f29, var_f30);
HuPrcVSleep();
}
HuSprGrpPosSet(staffLogoGroup[1], var_f29, 400.0f);
HuPrcSleep(240);
HuSprAttrReset(thpGroup, 0, HUSPR_ATTR_DISPOFF);
HuSprAttrReset(thpCoverGroup, 0, HUSPR_ATTR_DISPOFF);
HuTHPRestart();
for (var_r31 = 0, var_f31 = 1.0f; var_r31 < 90; var_r31++, var_f31 -= 0.1f / 9.0f) {
HuSprTPLvlSet(thpCoverGroup, 0, var_f31);
HuPrcVSleep();
}
HuSprAttrSet(thpCoverGroup, 0, HUSPR_ATTR_DISPOFF);
while (HuTHPFrameGet() < 450) {
HuPrcVSleep();
}
HuSprAttrReset(thpCoverGroup, 0, HUSPR_ATTR_DISPOFF);
for (var_r31 = 0, var_f31 = 0.0f; var_r31 < 120; var_r31++, var_f31 += 0.05f / 6.0f) {
HuSprTPLvlSet(thpCoverGroup, 0, var_f31);
HuPrcVSleep();
}
HuSprTPLvlSet(thpCoverGroup, 0, 1.0f);
HuSprAttrSet(thpGroup, 0, HUSPR_ATTR_DISPOFF);
HuTHPClose();
for (var_r31 = 0, var_f31 = 1.0f; var_r31 < 30; var_r31++, var_f31 -= 1.0f / 30.0f) {
HuSprTPLvlSet(staffLogoGroup[1], 0, var_f31);
HuPrcVSleep();
}
HuSprAttrSet(staffLogoGroup[1], 0, HUSPR_ATTR_DISPOFF);
HuPrcSleep(120);
HuSprAttrReset(staffLogoGroup[2], 0, HUSPR_ATTR_DISPOFF);
HuSprGrpPosSet(staffLogoGroup[2], 280.0f, 240.0f);
for (var_r31 = 0, var_f31 = 0.0f; var_r31 < 30; var_r31++, var_f31 += 1.0f / 30.0f) {
HuSprTPLvlSet(staffLogoGroup[2], 0, var_f31);
HuPrcVSleep();
}
HuPrcSleep(600);
while (TRUE) {
for (var_r31 = 0; var_r31 < 4; var_r31++) {
if (HuPadBtn[var_r31] & PAD_BUTTON_START) {
break;
}
}
if (var_r31 < 4) {
break;
}
HuPrcVSleep();
}
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60);
HuAudFadeOut(1000);
HuPrcSleep(60);
MGSeqKillAll();
omOvlReturnEx(1, 1);
while (TRUE) {
HuPrcVSleep();
}
}