Removed rel_sqrt_consts.h completely

This commit is contained in:
dbalatoni13 2024-11-10 06:57:04 +01:00
parent 7cda6af48a
commit 200d51a1b2
47 changed files with 1178 additions and 1172 deletions

View file

@ -6,7 +6,6 @@
#include "game/sprite.h"
#include "game/window.h"
#include "game/wipe.h"
#include "rel_sqrt_consts.h"
#include "REL/E3SetupDLL.h"

View file

@ -21,8 +21,6 @@
#include "ext_math.h"
#include "math.h"
#include "rel_sqrt_consts.h"
#include "REL/instDll.h"
static s16 lbl_1_data_0 = 1;

View file

@ -17,8 +17,6 @@
#include "ext_math.h"
#include "math.h"
#include "rel_sqrt_consts.h"
float lbl_2_data_0 = -7.1875f;
s16 lbl_2_data_4[] = { 0, 1, 2, 3, 4, 5, 6, 7 };

View file

@ -22,7 +22,6 @@
#include "dolphin.h"
#include "ext_math.h"
#include "rel_sqrt_consts.h"
#undef ABS
#define ABS(x) ((0 > (x)) ? -(x) : (x))

View file

@ -17,7 +17,6 @@
#include "game/wipe.h"
#include "ext_math.h"
#include "rel_sqrt_consts.h"
typedef struct {
/* 0x000 */ u8 unk00;

View file

@ -10,7 +10,7 @@
#include "game/pad.h"
#include "game/sprite.h"
#include "game/wipe.h"
#include "rel_sqrt_consts.h"
#include "string.h"
typedef struct UnkM404Struct {

View file

@ -22,7 +22,6 @@
#include "dolphin.h"
#include "ext_math.h"
#include "rel_sqrt_consts.h"
#undef ABS
#define ABS(x) ((0 > (x)) ? -(x) : (x))

View file

@ -5,7 +5,6 @@
#include "game/hsfdraw.h"
#include "game/minigame_seq.h"
#include "game/wipe.h"
#include "rel_sqrt_consts.h"
#include "REL/m406Dll.h"

View file

@ -8,8 +8,6 @@
#include "game/process.h"
#include "math.h"
#include "rel_sqrt_consts.h"
#define ARRAY_COUNT(arr) (s32)(sizeof(arr) / sizeof(arr[0]))
typedef void (*ObjFuncs)(omObjData *);

View file

@ -19,8 +19,6 @@
#include "ext_math.h"
#include "math.h"
#include "rel_sqrt_consts.h"
s32 lbl_1_data_0[] = {
DATA_MAKE_NUM(DATADIR_MGCONST, 0x00),
DATA_MAKE_NUM(DATADIR_MGCONST, 0x01),

View file

@ -11,7 +11,6 @@
#include "game/sprite.h"
#include "game/wipe.h"
#include "math.h"
#include "rel_sqrt_consts.h"
// bss
Process *lbl_1_bss_E8;

View file

@ -5,7 +5,6 @@
#include "game/minigame_seq.h"
#include "game/object.h"
#include "game/wipe.h"
#include "rel_sqrt_consts.h"
#include "REL/m410Dll.h"
@ -158,37 +157,36 @@ void fn_1_63C(omObjData *object)
return;
}
switch (var_r31->unk_00) {
case 0:
WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60);
Hu3DCameraPerspectiveSet(1, 41.5f, 5.0f, 5000.0f, 1.2f);
var_r31->unk_00 = 1;
var_r31->unk_10 = 0;
object->func = fn_1_19C8(lbl_1_bss_28, object);
break;
case 1:
var_r31->unk_00 = 2;
var_r31->unk_18 = 0;
object->func = fn_1_FF0;
break;
case 2:
var_r31->unk_00 = 3;
var_r31->unk_28 = 0;
object->func = fn_1_216C(lbl_1_bss_28, object);
break;
case 3:
case 4:
var_r31->unk_08 = 1;
var_r31->unk_00 = 5;
object->func = fn_1_ABC;
break;
case 5:
default:
var_r31->unk_00 = 5;
object->func = fn_1_DEC;
break;
case 0:
WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60);
Hu3DCameraPerspectiveSet(1, 41.5f, 5.0f, 5000.0f, 1.2f);
var_r31->unk_00 = 1;
var_r31->unk_10 = 0;
object->func = fn_1_19C8(lbl_1_bss_28, object);
break;
case 1:
var_r31->unk_00 = 2;
var_r31->unk_18 = 0;
object->func = fn_1_FF0;
break;
case 2:
var_r31->unk_00 = 3;
var_r31->unk_28 = 0;
object->func = fn_1_216C(lbl_1_bss_28, object);
break;
case 3:
case 4:
var_r31->unk_08 = 1;
var_r31->unk_00 = 5;
object->func = fn_1_ABC;
break;
case 5:
default:
var_r31->unk_00 = 5;
object->func = fn_1_DEC;
break;
}
var_r31->unk_04 = 0;
}
void fn_1_7A8(omObjData *object)
@ -233,38 +231,36 @@ void fn_1_FF0(omObjData *object)
fn_1_5A8(object);
switch (var_r29->unk_14) {
case 0:
var_r29->unk_1C = 30;
var_r29->unk_20 = 60;
lbl_1_bss_14 = MGSeqCreate(3, 0);
MGSeqPosSet(lbl_1_bss_14, 320.0f, 240.0f);
CRot.x = -11.2f;
CRot.y = CRot.z = 0.0f;
Center.x = 0.0f;
Center.y = 367.0f;
Center.z = 252.0f;
CZoom = 592.0f;
var_r29->unk_14 = 1;
var_r29->unk_18 = 0;
break;
case 1:
if (lbl_1_bss_4 < 0 && MGSeqStatGet(lbl_1_bss_14) & 16) {
lbl_1_bss_4 = HuAudSeqPlay(71);
}
if (!MGSeqStatGet(lbl_1_bss_14) && !var_r29->unk_08) {
lbl_1_bss_1C = MGSeqCreate(1, var_r29->unk_1C, -1, -1);
var_r29->unk_14 = 2;
var_r29->unk_18 = 0;
object->func = fn_1_139C;
}
break;
default:
break;
}
case 0:
var_r29->unk_1C = 30;
var_r29->unk_20 = 60;
lbl_1_bss_14 = MGSeqCreate(3, 0);
MGSeqPosSet(lbl_1_bss_14, 320.0f, 240.0f);
CRot.x = -11.2f;
CRot.y = CRot.z = 0.0f;
Center.x = 0.0f;
Center.y = 367.0f;
Center.z = 252.0f;
CZoom = 592.0f;
var_r29->unk_14 = 1;
var_r29->unk_18 = 0;
break;
case 1:
if (lbl_1_bss_4 < 0 && MGSeqStatGet(lbl_1_bss_14) & 16) {
lbl_1_bss_4 = HuAudSeqPlay(71);
}
if (!MGSeqStatGet(lbl_1_bss_14) && !var_r29->unk_08) {
lbl_1_bss_1C = MGSeqCreate(1, var_r29->unk_1C, -1, -1);
var_r29->unk_14 = 2;
var_r29->unk_18 = 0;
object->func = fn_1_139C;
}
break;
default:
break;
}
}
void fn_1_139C(omObjData *object)

View file

@ -18,7 +18,6 @@
#include "dolphin.h"
#include "ext_math.h"
#include "rel_sqrt_consts.h"
typedef struct {
/* 0x00 */ s16 unk00;

View file

@ -12,7 +12,6 @@
#include "game/sprite.h"
#include "game/wipe.h"
#include "math.h"
#include "rel_sqrt_consts.h"
// bss
s16 lbl_1_bss_7A0;

View file

@ -14,8 +14,6 @@
#include "ext_math.h"
#include "rel_sqrt_consts.h"
typedef struct struct_bss_2A6C StructBss2A6C;
typedef struct struct_sp_14C8 StructSp14C8;

View file

@ -9,7 +9,6 @@
#include "game/pad.h"
#include "game/sprite.h"
#include "game/wipe.h"
#include "rel_sqrt_consts.h"
typedef struct UnkM414Struct {
s32 unk00;

View file

@ -15,7 +15,6 @@
#include "game/sprite.h"
#include "game/wipe.h"
#include "math.h"
#include "rel_sqrt_consts.h"
// bss
unkStruct5 lbl_1_bss_36C;

View file

@ -17,8 +17,6 @@
#include "REL/m416Dll.h"
#include "rel_sqrt_consts.h"
typedef struct camera_view_params {
float zoom;
Vec pos;

View file

@ -3,7 +3,6 @@
#include "game/hsfdraw.h"
#include "game/minigame_seq.h"
#include "game/wipe.h"
#include "rel_sqrt_consts.h"
#include "REL/m417Dll.h"

View file

@ -7,7 +7,6 @@
#include "game/pad.h"
#include "game/printfunc.h"
#include "game/wipe.h"
#include "rel_sqrt_consts.h"
#include "REL/m420dll.h"

View file

@ -10,7 +10,6 @@
#include "game/pad.h"
#include "game/sprite.h"
#include "game/wipe.h"
#include "rel_sqrt_consts.h"
typedef struct UnkM426Struct {
/* 0x00 */ s32 unk_00;

View file

@ -21,7 +21,6 @@
#include "game/sprite.h"
#include "ext_math.h"
#include "rel_sqrt_consts.h"
#undef ABS
#define ABS(x) ((0 > (x)) ? -(x) : (x))

View file

@ -16,8 +16,6 @@
#include "REL/m431Dll.h"
#include "rel_sqrt_consts.h"
typedef struct bss_5C_struct {
s16 unk0[6];
s16 unkC[2];

View file

@ -6,15 +6,12 @@
#include "game/sprite.h"
#include "game/wipe.h"
#include "REL/m434Dll.h"
#include "ext_math.h"
#include "game/gamework_data.h"
#include "game/minigame_seq.h"
#include "math.h"
#include "rel_sqrt_consts.h"
typedef struct camera_view {
float zoom;
Vec pos;

File diff suppressed because it is too large Load diff

View file

@ -9,7 +9,6 @@
#include "game/pad.h"
#include "game/sprite.h"
#include "game/wipe.h"
#include "rel_sqrt_consts.h"
#include "REL/m438Dll.h"

View file

@ -20,8 +20,6 @@
#include "ext_math.h"
#include "rel_sqrt_consts.h"
#include "REL/m439data.h"
typedef struct camera_params {

View file

@ -12,7 +12,7 @@
#include "game/sprite.h"
#include "game/wipe.h"
#include "math.h"
#include "rel_sqrt_consts.h"
#include "string.h"
// bss

View file

@ -21,7 +21,6 @@
#include "game/sprite.h"
#include "ext_math.h"
#include "rel_sqrt_consts.h"
#undef ABS
#define ABS(x) ((0 > (x)) ? -(x) : (x))

View file

@ -12,7 +12,6 @@
#include "game/pad.h"
#include "game/sprite.h"
#include "game/wipe.h"
#include "rel_sqrt_consts.h"
#include "REL/m442Dll.h"

View file

@ -11,7 +11,7 @@
#include "game/sprite.h"
#include "game/wipe.h"
#include "math.h"
#include "rel_sqrt_consts.h"
#include "string.h"
#ifndef __MWERKS__

View file

@ -19,8 +19,6 @@
#include "ext_math.h"
#include "math.h"
#include "rel_sqrt_consts.h"
typedef struct camera_view_params {
Vec rot;
Vec pos;

View file

@ -18,7 +18,6 @@
#include "dolphin.h"
#include "ext_math.h"
#include "rel_sqrt_consts.h"
typedef struct {
/* 0x00 */ s16 unk00;

View file

@ -20,7 +20,6 @@
#include "dolphin.h"
#include "ext_math.h"
#include "rel_sqrt_consts.h"
typedef struct {
/* 0x00 */ s32 unk00;

View file

@ -31,7 +31,6 @@
#include "game/sprite.h"
#include "ext_math.h"
#include "rel_sqrt_consts.h"
#include "game/window.h"
#include "string.h"

View file

@ -17,8 +17,6 @@
#include "game/gamework_data.h"
#include "rel_sqrt_consts.h"
typedef struct bss_348_data {
s16 unk0[5];
s16 unkA;

View file

@ -12,7 +12,7 @@
#include "game/pad.h"
#include "game/sprite.h"
#include "game/wipe.h"
#include "rel_sqrt_consts.h"
#include "string.h"
#include "REL/m453Dll.h"

View file

@ -1,25 +1,24 @@
#include "game/hsfdraw.h"
#include "game/hsfman.h"
#include "game/object.h"
#include "game/objsub.h"
#include "game/hsfman.h"
#include "game/hsfdraw.h"
#include "game/hsfmotion.h"
#include "game/pad.h"
#include "game/wipe.h"
#include "game/frand.h"
#include "game/audio.h"
#include "game/minigame_seq.h"
#include "game/gamework_data.h"
#include "game/chrman.h"
#include "REL/m455Dll.h"
#include "game/audio.h"
#include "game/chrman.h"
#include "game/frand.h"
#include "game/gamework_data.h"
#include "game/minigame_seq.h"
#include "game/wipe.h"
#include "ext_math.h"
#include "math.h"
#include "rel_sqrt_consts.h"
typedef struct camera_view_params {
float zoom;
Vec pos;
@ -51,7 +50,6 @@ Vec lbl_1_bss_8;
s16 lbl_1_bss_4;
s32 lbl_1_bss_0;
void fn_1_330(omObjData *object);
void fn_1_B94(Process *objman);
void fn_1_2A90(Process *objman);
@ -68,9 +66,9 @@ void ObjectSetup(void)
Hu3DCameraPerspectiveSet(HU3D_CAM0, -1, 20, 25000, 1.2f);
Hu3DCameraViewportSet(HU3D_CAM0, 0, 0, 640, 480, 0, 1);
lbl_1_bss_3C = omAddObjEx(objman, 32730, 0, 0, -1, omOutView);
lbl_1_bss_8.x = lbl_1_data_44.x-lbl_1_data_38.x;
lbl_1_bss_8.y = lbl_1_data_44.y-lbl_1_data_38.y;
lbl_1_bss_8.z = lbl_1_data_44.z-lbl_1_data_38.z;
lbl_1_bss_8.x = lbl_1_data_44.x - lbl_1_data_38.x;
lbl_1_bss_8.y = lbl_1_data_44.y - lbl_1_data_38.y;
lbl_1_bss_8.z = lbl_1_data_44.z - lbl_1_data_38.z;
PSVECNormalize(&lbl_1_bss_8, &lbl_1_bss_8);
light = Hu3DGLightCreateV(&lbl_1_data_38, &lbl_1_bss_8, &lbl_1_data_50);
Hu3DGLightInfinitytSet(light);
@ -107,7 +105,7 @@ void fn_1_330(omObjData *object)
lbl_1_bss_24 = 60;
lbl_1_bss_22 = -1;
lbl_1_bss_20 = 0;
lbl_1_bss_16 = ((frand16()*270.0f)/65536.0f)+30.0f;
lbl_1_bss_16 = ((frand16() * 270.0f) / 65536.0f) + 30.0f;
WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 60);
camera->fov = 30.0f;
object->func = fn_1_478;
@ -152,115 +150,114 @@ s16 lbl_1_data_90 = -1;
s32 lbl_1_data_94 = -1;
s32 lbl_1_data_98 = -1;
void fn_1_478(omObjData *object)
{
s32 i;
omObjData **playerList;
M455Player *player;
switch(fn_1_320()) {
switch (fn_1_320()) {
case 0:
if(lbl_1_data_98 < 0) {
if (lbl_1_data_98 < 0) {
lbl_1_data_98 = HuAudFXPlay(1985);
}
if(--lbl_1_bss_2C == 0) {
if (--lbl_1_bss_2C == 0) {
fn_1_310(1);
lbl_1_bss_2C = 120;
}
break;
case 1:
if(--lbl_1_bss_2C == 0) {
if (--lbl_1_bss_2C == 0) {
fn_1_310(2);
lbl_1_bss_4 = MGSeqStartCreate();
}
break;
case 2:
if(!MGSeqStatGet(lbl_1_bss_4)) {
if (!MGSeqStatGet(lbl_1_bss_4)) {
fn_1_310(3);
}
if(lbl_1_data_94 < 0 && (MGSeqStatGet(lbl_1_bss_4) & 0x10)) {
if (lbl_1_data_94 < 0 && (MGSeqStatGet(lbl_1_bss_4) & 0x10)) {
lbl_1_data_94 = HuAudSeqPlay(60);
}
break;
case 3:
if(--lbl_1_bss_24 == 0) {
if (--lbl_1_bss_24 == 0) {
lbl_1_bss_26--;
if(lbl_1_data_90 >= 0) {
if (lbl_1_data_90 >= 0) {
MGSeqParamSet(lbl_1_data_90, 1, lbl_1_bss_26);
}
lbl_1_bss_24 = 60;
if(lbl_1_bss_26 == 10) {
if (lbl_1_bss_26 == 10) {
lbl_1_data_90 = MGSeqTimerCreate(10);
}
}
if(lbl_1_bss_16 >= 0) {
if (lbl_1_bss_16 >= 0) {
lbl_1_bss_16--;
}
if(lbl_1_bss_26 == 0 || fn_1_C90()) {
if (lbl_1_bss_26 == 0 || fn_1_C90()) {
fn_1_310(4);
lbl_1_bss_4 = MGSeqFinishCreate();
HuAudSeqFadeOut(lbl_1_data_94, 100);
}
break;
case 4:
if(lbl_1_data_90 >= 0) {
if (lbl_1_data_90 >= 0) {
MGSeqParamSet(lbl_1_data_90, 2, -1);
lbl_1_data_90 = -1;
}
if(!MGSeqStatGet(lbl_1_bss_4)) {
if (!MGSeqStatGet(lbl_1_bss_4)) {
fn_1_310(7);
lbl_1_bss_2C = 120;
}
break;
case 7:
if(--lbl_1_bss_2C == 0) {
if (--lbl_1_bss_2C == 0) {
fn_1_310(9);
if(lbl_1_bss_30 >= 0) {
if (lbl_1_bss_30 >= 0) {
HuAudSStreamPlay(1);
playerList = omGetGroupMemberListEx(HuPrcCurrentGet(), 0);
for(i=0; i<4; i++) {
for (i = 0; i < 4; i++) {
player = playerList[i]->data;
if(player->unk28 < 0) {
GWPlayerCoinWinSet(i, lbl_1_bss_22+1);
if (player->unk28 < 0) {
GWPlayerCoinWinSet(i, lbl_1_bss_22 + 1);
}
}
} else {
}
else {
HuAudSStreamPlay(4);
for(i=0; i<4; i++) {
for (i = 0; i < 4; i++) {
GWPlayerCoinWinSet(i, 3);
}
}
lbl_1_bss_2C = 210;
}
break;
case 9:
if(--lbl_1_bss_2C == 0) {
if (--lbl_1_bss_2C == 0) {
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60);
HuAudFXStop(lbl_1_data_98);
object->func = fn_1_B38;
}
break;
}
if(lbl_1_bss_20) {
if(lbl_1_bss_20 >= 2) {
for(i=0; i<100; i++){
s32 srcIdx = (frand8()*lbl_1_bss_20) >> 8;
s32 dstIdx = (frand8()*lbl_1_bss_20) >> 8;
if (lbl_1_bss_20) {
if (lbl_1_bss_20 >= 2) {
for (i = 0; i < 100; i++) {
s32 srcIdx = (frand8() * lbl_1_bss_20) >> 8;
s32 dstIdx = (frand8() * lbl_1_bss_20) >> 8;
s32 temp = lbl_1_bss_18[srcIdx];
lbl_1_bss_18[srcIdx] = lbl_1_bss_18[dstIdx];
lbl_1_bss_18[dstIdx] = temp;
}
}
playerList = omGetGroupMemberListEx(HuPrcCurrentGet(), 0);
for(i=0; i<lbl_1_bss_20; i++) {
for (i = 0; i < lbl_1_bss_20; i++) {
lbl_1_bss_22++;
GWPlayerCoinWinSet(lbl_1_bss_18[i], lbl_1_bss_22);
player = playerList[lbl_1_bss_18[i]]->data;
@ -268,7 +265,7 @@ void fn_1_478(omObjData *object)
}
lbl_1_bss_20 = 0;
}
if(omSysExitReq && !WipeStatGet()) {
if (omSysExitReq && !WipeStatGet()) {
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 60);
object->func = fn_1_B38;
}
@ -276,7 +273,7 @@ void fn_1_478(omObjData *object)
void fn_1_B38(omObjData *object)
{
if(WipeStatGet()) {
if (WipeStatGet()) {
return;
}
fn_1_C28();
@ -295,9 +292,8 @@ void fn_1_B94(Process *objman)
lbl_1_bss_28 = 0;
lbl_1_bss_14 = 3;
omMakeGroupEx(objman, 0, 4);
for(i=0; i<4; i++) {
for (i = 0; i < 4; i++) {
omAddObjEx(objman, 5, 10, 50, 0, fn_1_D14);
}
}
@ -308,10 +304,10 @@ void fn_1_C28(void)
s32 i;
omObjData **playerList;
playerList = omGetGroupMemberListEx(HuPrcCurrentGet(), 0);
if(playerList == NULL) {
if (playerList == NULL) {
return;
}
for(i=0; i<4; i++) {
for (i = 0; i < 4; i++) {
fn_1_2010(playerList[i]);
}
}
@ -321,9 +317,9 @@ s32 fn_1_C90(void)
s32 i;
omObjData **playerList;
playerList = omGetGroupMemberListEx(HuPrcCurrentGet(), 0);
for(i=0; i<4; i++) {
for (i = 0; i < 4; i++) {
M455Player *player = playerList[i]->data;
if(!player->field1) {
if (!player->field1) {
return 0;
}
}
@ -333,11 +329,16 @@ s32 fn_1_C90(void)
s32 fn_1_3214(void);
u32 lbl_1_data_E0[5][2] = {
0x5F0000, 0,
0x540024, 1,
0x54001C, 1,
0x5F0017, 0,
0x5F0018, 0,
0x5F0000,
0,
0x540024,
1,
0x54001C,
1,
0x5F0017,
0,
0x5F0018,
0,
};
Vec lbl_1_data_108[4] = {
@ -372,13 +373,14 @@ void fn_1_D14(omObjData *object)
Hu3DModelCameraSet(object->model[0], HU3D_CAM0);
object->model[1] = Hu3DModelCreateFile(0x540002);
Hu3DModelHookSet(object->model[0], "test11_tex_we-itemhook-r", object->model[1]);
Hu3DModelAttrSet(object->model[1], HU3D_MOTATTR_SHAPE_PAUSE|HU3D_MOTATTR_PAUSE);
Hu3DModelAttrSet(object->model[1], HU3D_MOTATTR_SHAPE_PAUSE | HU3D_MOTATTR_PAUSE);
player->unk1C = 1;
for(i=0; i<5; i++) {
if(lbl_1_data_E0[i][1] == 0) {
for (i = 0; i < 5; i++) {
if (lbl_1_data_E0[i][1] == 0) {
object->motion[i] = CharModelMotionCreate(player->unk10, lbl_1_data_E0[i][0]);
} else {
object->motion[i] = CharModelMotionCreate(player->unk10, player->unk10+lbl_1_data_E0[i][0]);
}
else {
object->motion[i] = CharModelMotionCreate(player->unk10, player->unk10 + lbl_1_data_E0[i][0]);
}
}
Hu3DMotionSet(object->model[0], object->motion[player->unk1C]);
@ -400,7 +402,7 @@ void fn_1_D14(omObjData *object)
Hu3DMotionSet(object->model[4], i);
Hu3DModelAttrSet(object->model[4], HU3D_MOTATTR_LOOP);
Hu3DModelAttrSet(object->model[4], HU3D_MOTATTR_PAUSE);
player->unk4C.x = object->trans.x+(50.0f*((((s32)frand() & 0x1FF)-256.0f)/256.0f));
player->unk4C.x = object->trans.x + (50.0f * ((((s32)frand() & 0x1FF) - 256.0f) / 256.0f));
player->unk4C.y = -200;
player->unk4C.z = -1500;
Hu3DModelPosSetV(object->model[4], &player->unk4C);
@ -413,13 +415,14 @@ void fn_1_D14(omObjData *object)
player->unk34[1].z = -1000;
CharModelDataClose(player->unk10);
object->rot.y = 180;
if(((s32)frand() & 0x1F) < 4-player->unk12) {
player->unk58 = lbl_1_bss_16-(60.0f*(0.05f*(4-player->unk12)))-((frand8()/256.0f)*6.0f);
if(player->unk58 < 0) {
if (((s32)frand() & 0x1F) < 4 - player->unk12) {
player->unk58 = lbl_1_bss_16 - (60.0f * (0.05f * (4 - player->unk12))) - ((frand8() / 256.0f) * 6.0f);
if (player->unk58 < 0) {
player->unk58 = 0;
}
} else {
player->unk58 = lbl_1_bss_16+(60.0f*(0.1f*(4-player->unk12)))+((frand8()/256.0f)*30.0f)+6.0f;
}
else {
player->unk58 = lbl_1_bss_16 + (60.0f * (0.1f * (4 - player->unk12))) + ((frand8() / 256.0f) * 30.0f) + 6.0f;
}
player->unk28 = -1;
object->func = fn_1_1444;
@ -428,25 +431,17 @@ void fn_1_D14(omObjData *object)
void fn_1_1400(omObjData *object)
{
M455Player *player = object->data;
if(player->unk58 != 0) {
if (player->unk58 != 0) {
player->unk58--;
} else {
}
else {
player->unkA |= PAD_BUTTON_A;
}
}
float lbl_1_data_154[4] = {
-350,
-170,
170,
350
};
float lbl_1_data_154[4] = { -350, -170, 170, 350 };
float lbl_1_data_164[3] = {
1.5f,
1.0f,
0.5f
};
float lbl_1_data_164[3] = { 1.5f, 1.0f, 0.5f };
float fn_1_2390(float arg0, float arg1, float arg2);
s32 fn_1_24F0(Vec *arg0, Vec *arg1, float arg2);
@ -461,38 +456,39 @@ void fn_1_1444(omObjData *object)
Vec spC;
float temp_f31;
temp_r31 = object->data;
temp_r29 = temp_r31->unk1C;
temp_r28 = temp_r31->unk20;
object->trans.y = fn_1_687C();
if(fn_1_320() < 3) {
if (fn_1_320() < 3) {
return;
}
switch(temp_r31->unk16) {
switch (temp_r31->unk16) {
case 0:
if(fn_1_320() == 4 || lbl_1_bss_14 == 0) {
if (fn_1_320() == 4 || lbl_1_bss_14 == 0) {
temp_r31->field1 = 1;
temp_r31->unk16 = 2;
espDispOff(temp_r31->unk2A);
return;
}
if(!GWPlayerCfg[temp_r31->unk2].iscom) {
if (!GWPlayerCfg[temp_r31->unk2].iscom) {
temp_r31->unk6 = HuPadStkX[temp_r31->unk4];
temp_r31->unk7 = HuPadStkY[temp_r31->unk4];
temp_r31->unk8 = HuPadBtn[temp_r31->unk4];
temp_r31->unkA = HuPadBtnDown[temp_r31->unk4];
} else {
}
else {
temp_r31->unk8 = temp_r31->unkA = 0;
temp_r31->unk6 = temp_r31->unk7 = 0;
fn_1_1400(object);
}
if(lbl_1_bss_16 == 0) {
if(temp_r31->unkC) {
if (lbl_1_bss_16 == 0) {
if (temp_r31->unkC) {
omVibrate(temp_r31->unk2, 12, 12, 0);
} else {
}
else {
sp18.x = object->trans.x;
sp18.y = object->trans.y+300;
sp18.y = object->trans.y + 300;
sp18.z = object->trans.z;
Hu3D3Dto2D(&sp18, HU3D_CAM0, &sp18);
espPosSet(temp_r31->unk2A, sp18.x, sp18.y);
@ -501,31 +497,30 @@ void fn_1_1444(omObjData *object)
}
temp_r31->unk2C = temp_r31->unk2E = 30;
}
if(temp_r31->unkA & PAD_BUTTON_A) {
if (temp_r31->unkA & PAD_BUTTON_A) {
temp_r31->unk16 = 1;
temp_r31->unk24 = temp_r31->unk26 = 90;
temp_r31->unk2C = -1;
if(lbl_1_bss_16 <= 0) {
if (lbl_1_bss_16 <= 0) {
lbl_1_bss_18[lbl_1_bss_20++] = temp_r31->unk2;
}
Hu3DModelAttrReset(object->model[1], HU3D_MOTATTR_SHAPE_PAUSE|HU3D_MOTATTR_PAUSE);
Hu3DModelAttrReset(object->model[1], HU3D_MOTATTR_SHAPE_PAUSE | HU3D_MOTATTR_PAUSE);
Hu3DMotionSpeedSet(object->model[1], 1.2f);
Hu3DMotionShapeSpeedSet(object->model[1], 1.2f);
HuAudFXPlay(1986);
}
temp_r29 = 1;
temp_r28 = HU3D_MOTATTR_LOOP;
break;
case 1:
temp_r29 = 2;
temp_r28 = HU3D_MOTATTR_NONE;
if(!temp_r31->field0) {
if(temp_r31->unk28 >= 0 && temp_r31->unk28 < 3) {
if (!temp_r31->field0) {
if (temp_r31->unk28 >= 0 && temp_r31->unk28 < 3) {
temp_r31->field0 = 1;
if(temp_r31->unk28 == 0) {
if (temp_r31->unk28 == 0) {
lbl_1_bss_30 = temp_r31->unk2;
}
temp_f31 = lbl_1_data_164[temp_r31->unk28];
@ -533,13 +528,13 @@ void fn_1_1444(omObjData *object)
Hu3DModelAttrReset(object->model[4], HU3D_ATTR_DISPOFF);
}
}
temp_f31 = 1.0f-((float)temp_r31->unk24/temp_r31->unk26);
temp_f31 = 1.0f - ((float)temp_r31->unk24 / temp_r31->unk26);
sp24[0].x = temp_r31->unk4C.x;
sp24[0].y = temp_r31->unk4C.y;
sp24[0].z = temp_r31->unk4C.z;
sp24[1].x = object->trans.x;
sp24[1].y = object->trans.y+1500;
sp24[1].z = object->trans.z-200;
sp24[1].y = object->trans.y + 1500;
sp24[1].z = object->trans.z - 200;
sp24[2].x = lbl_1_data_154[temp_r31->unk2];
sp24[2].y = 0;
sp24[2].z = 150;
@ -547,32 +542,32 @@ void fn_1_1444(omObjData *object)
VECSubtract(&sp18, &Hu3DData[object->model[4]].pos, &spC);
Hu3DModelRotSet(object->model[4], atan2d(-spC.y, VECMagXZ(&spC)), atan2d(spC.x, spC.z), 0);
Hu3DModelPosSetV(object->model[4], &sp18);
if(sp18.y > 0.0f) {
if(!temp_r31->field2 && temp_r31->field0) {
if (sp18.y > 0.0f) {
if (!temp_r31->field2 && temp_r31->field0) {
fn_1_6CB0(&sp18, -1);
fn_1_6698(&sp18, -1, -1, -1);
temp_r31->field2 = 1;
}
}
temp_r31->unk34[0].x = temp_f31*(2.0f*lbl_1_data_154[temp_r31->unk2]);
temp_r31->unk34[0].y = -200.0f+(-400.0f*temp_f31);
temp_r31->unk34[0].z = -500.0f+(-1500.0f*temp_f31);
temp_r31->unk34[1].x = temp_f31*lbl_1_data_154[temp_r31->unk2];
temp_r31->unk34[1].y = -200.0f+(400.0f*temp_f31);
temp_r31->unk34[1].z = -1000.0f+(750.0f*temp_f31);
if(--temp_r31->unk24 == 0) {
temp_r31->unk34[0].x = temp_f31 * (2.0f * lbl_1_data_154[temp_r31->unk2]);
temp_r31->unk34[0].y = -200.0f + (-400.0f * temp_f31);
temp_r31->unk34[0].z = -500.0f + (-1500.0f * temp_f31);
temp_r31->unk34[1].x = temp_f31 * lbl_1_data_154[temp_r31->unk2];
temp_r31->unk34[1].y = -200.0f + (400.0f * temp_f31);
temp_r31->unk34[1].z = -1000.0f + (750.0f * temp_f31);
if (--temp_r31->unk24 == 0) {
temp_r31->unk16 = 2;
temp_r31->field1 = 1;
if(temp_r31->field0) {
if (temp_r31->field0) {
Hu3DModelAttrReset(object->model[4], HU3D_MOTATTR_PAUSE);
Hu3DModelRotSet(object->model[4], 0, 0, 0);
lbl_1_bss_14--;
}
}
break;
case 2:
if(fn_1_320() == 7) {
if (fn_1_320() == 7) {
temp_r31->unk16 = 3;
Hu3DModelObjPosGet(object->model[0], "test11_tex_we-itemhook-r", &sp18);
CharModelEffectCreate(1, &sp18);
@ -580,46 +575,50 @@ void fn_1_1444(omObjData *object)
Hu3DModelAttrSet(object->model[3], HU3D_ATTR_DISPOFF);
}
break;
case 3:
if(fn_1_320() < 9) {
if (fn_1_320() < 9) {
temp_r29 = 0;
temp_r28 = HU3D_MOTATTR_LOOP;
} else {
}
else {
object->rot.y = fn_1_2390(object->rot.y, 0, 0.2f);
if(temp_r31->unk2 == lbl_1_bss_30) {
if (temp_r31->unk2 == lbl_1_bss_30) {
temp_r29 = 3;
temp_r28 = HU3D_MOTATTR_NONE;
} else {
}
else {
temp_r29 = 4;
temp_r28 = HU3D_MOTATTR_NONE;
}
}
break;
default:
break;
}
if(temp_r31->unk2C) {
if(temp_r31->unk2C >= 0) {
temp_f31 = (0.5*sind((90.0f*(float)temp_r31->unk2C)/(float)temp_r31->unk2E))+0.5;
if (temp_r31->unk2C) {
if (temp_r31->unk2C >= 0) {
temp_f31 = (0.5 * sind((90.0f * (float)temp_r31->unk2C) / (float)temp_r31->unk2E)) + 0.5;
espScaleSet(temp_r31->unk2A, temp_f31, temp_f31);
if(--temp_r31->unk2C == 0) {
if (--temp_r31->unk2C == 0) {
temp_r31->unk2C = temp_r31->unk2E;
}
temp_r31->unk30++;
} else {
if(temp_r31->unk30 > 30.0f) {
}
else {
if (temp_r31->unk30 > 30.0f) {
espDispOff(temp_r31->unk2A);
temp_r31->unk2C = 0;
} else {
}
else {
temp_r31->unk30++;
}
}
}
if(temp_r31->unk16 >= 2 && temp_r31->unk16 <= 3 && temp_r31->field0) {
if (temp_r31->unk16 >= 2 && temp_r31->unk16 <= 3 && temp_r31->field0) {
Hu3DData[object->model[4]].rot.y += 2.0f;
if(0.0f == Hu3DData[object->model[4]].unk_64) {
if (0.0f == Hu3DData[object->model[4]].unk_64) {
HuAudFXPlay(1987);
}
}
@ -633,7 +632,7 @@ void fn_1_1444(omObjData *object)
void fn_1_2010(omObjData *object)
{
M455Player *player = object->data;
if(object->data != NULL) {
if (object->data != NULL) {
HuMemDirectFree(object->data);
object->data = NULL;
}
@ -647,7 +646,7 @@ void fn_1_2060(ModelData *arg0, Mtx arg1)
{
Vec vtxPos[4];
Mtx mtxHook;
Vec pos;
Vec itemHookPos;
s32 i;
@ -666,16 +665,16 @@ void fn_1_2060(ModelData *arg0, Mtx arg1)
GXSetTevOp(GX_TEVSTAGE0, GX_PASSCLR);
GXClearVtxDesc();
GXSetVtxDesc(GX_VA_POS, GX_DIRECT);
GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0);
GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0);
Hu3DModelObjMtxGet(object->model[0], "test11_tex_we-itemhook-r", mtxHook);
Hu3DModelObjPosGet(object->model[1], "hook", &pos);
MTXMultVec(mtxHook, &pos, &vtxPos[0]);
for(i=0; i<2; i++) {
vtxPos[i+1].x = player->unk34[i].x;
vtxPos[i+1].y = player->unk34[i].y;
vtxPos[i+1].z = player->unk34[i].z;
for (i = 0; i < 2; i++) {
vtxPos[i + 1].x = player->unk34[i].x;
vtxPos[i + 1].y = player->unk34[i].y;
vtxPos[i + 1].z = player->unk34[i].z;
}
if(player->field0) {
if (player->field0) {
Mtx hookMtx;
Vec hookPos;
Hu3DModelObjMtxGet(object->model[4], "itemhook_C", hookMtx);
@ -683,14 +682,15 @@ void fn_1_2060(ModelData *arg0, Mtx arg1)
hookPos.y = -60.000004f;
hookPos.z = 35.0f;
MTXMultVec(hookMtx, &hookPos, &vtxPos[3]);
} else {
}
else {
vtxPos[3].x = modelPuku->pos.x;
vtxPos[3].y = modelPuku->pos.y;
vtxPos[3].z = modelPuku->pos.z;
}
GXBegin(GX_LINESTRIP, GX_VTXFMT0, 20);
for(i=0; i<20; i++) {
fn_1_27A0(vtxPos, &pos, i/19.0f);
for (i = 0; i < 20; i++) {
fn_1_27A0(vtxPos, &pos, i / 19.0f);
GXPosition3f32(pos.x, pos.y, pos.z);
}
GXEnd();
@ -698,16 +698,16 @@ void fn_1_2060(ModelData *arg0, Mtx arg1)
float fn_1_2390(float arg0, float arg1, float arg2)
{
float temp_f31 = fmod(arg1-arg0, 360);
float temp_f31 = fmod(arg1 - arg0, 360);
float temp_f30;
if(temp_f31 < 0) {
if (temp_f31 < 0) {
temp_f31 += 360.0f;
}
if(temp_f31 > 180) {
if (temp_f31 > 180) {
temp_f31 -= 360.0f;
}
temp_f30 = fmod(arg0+(arg2*temp_f31), 360);
if(temp_f30 < 0) {
temp_f30 = fmod(arg0 + (arg2 * temp_f31), 360);
if (temp_f30 < 0) {
temp_f30 += 360.0f;
}
return temp_f30;
@ -715,8 +715,8 @@ float fn_1_2390(float arg0, float arg1, float arg2)
float fn_1_2494(float arg0, float arg1, float arg2, float arg3)
{
float temp_f31 = 1.0f-arg3;
return (arg0*(temp_f31*temp_f31))+((2.0f*temp_f31)*arg3*arg1)+(arg2*(arg3*arg3));
float temp_f31 = 1.0f - arg3;
return (arg0 * (temp_f31 * temp_f31)) + ((2.0f * temp_f31) * arg3 * arg1) + (arg2 * (arg3 * arg3));
}
s32 fn_1_24F0(Vec *arg0, Vec *arg1, float arg2)
@ -728,9 +728,9 @@ s32 fn_1_24F0(Vec *arg0, Vec *arg1, float arg2)
float fn_1_26F8(float arg0, float arg1, float arg2, float arg3, float arg4)
{
float temp_f31 = 1.0f-arg0;
float temp_f30 = temp_f31*temp_f31;
float temp_f29 = temp_f31*temp_f31*temp_f31;
float temp_f31 = 1.0f - arg0;
float temp_f30 = temp_f31 * temp_f31;
float temp_f29 = temp_f31 * temp_f31 * temp_f31;
return (arg4 * (arg0 * (arg0 * arg0))) + ((arg3 * (arg0 * (3.0f * temp_f31 * arg0))) + ((temp_f29 * arg1) + (arg2 * (3.0f * temp_f30 * arg0))));
}
@ -755,33 +755,33 @@ void fn_1_2A90(Process *objman)
void fn_1_2AF4(s32 arg0, s32 arg1, float arg2)
{
CZoom = lbl_1_data_0[arg0].zoom+(arg2*(lbl_1_data_0[arg1].zoom-lbl_1_data_0[arg0].zoom));
Center.x = lbl_1_data_0[arg0].pos.x+(arg2*(lbl_1_data_0[arg1].pos.x-lbl_1_data_0[arg0].pos.x));
Center.y = lbl_1_data_0[arg0].pos.y+(arg2*(lbl_1_data_0[arg1].pos.y-lbl_1_data_0[arg0].pos.y));
Center.z = lbl_1_data_0[arg0].pos.z+(arg2*(lbl_1_data_0[arg1].pos.z-lbl_1_data_0[arg0].pos.z));
CRot.x = lbl_1_data_0[arg0].rot.x+(arg2*(lbl_1_data_0[arg1].rot.x-lbl_1_data_0[arg0].rot.x));
CRot.y = lbl_1_data_0[arg0].rot.y+(arg2*(lbl_1_data_0[arg1].rot.y-lbl_1_data_0[arg0].rot.y));
CRot.z = lbl_1_data_0[arg0].rot.z+(arg2*(lbl_1_data_0[arg1].rot.z-lbl_1_data_0[arg0].rot.z));
CZoom = lbl_1_data_0[arg0].zoom + (arg2 * (lbl_1_data_0[arg1].zoom - lbl_1_data_0[arg0].zoom));
Center.x = lbl_1_data_0[arg0].pos.x + (arg2 * (lbl_1_data_0[arg1].pos.x - lbl_1_data_0[arg0].pos.x));
Center.y = lbl_1_data_0[arg0].pos.y + (arg2 * (lbl_1_data_0[arg1].pos.y - lbl_1_data_0[arg0].pos.y));
Center.z = lbl_1_data_0[arg0].pos.z + (arg2 * (lbl_1_data_0[arg1].pos.z - lbl_1_data_0[arg0].pos.z));
CRot.x = lbl_1_data_0[arg0].rot.x + (arg2 * (lbl_1_data_0[arg1].rot.x - lbl_1_data_0[arg0].rot.x));
CRot.y = lbl_1_data_0[arg0].rot.y + (arg2 * (lbl_1_data_0[arg1].rot.y - lbl_1_data_0[arg0].rot.y));
CRot.z = lbl_1_data_0[arg0].rot.z + (arg2 * (lbl_1_data_0[arg1].rot.z - lbl_1_data_0[arg0].rot.z));
}
void fn_1_2D44(omObjData *object)
{
CameraData *camera = &Hu3DCamera[0];
switch(fn_1_320()) {
switch (fn_1_320()) {
case 1:
fn_1_2AF4(0, 1, sind(lbl_1_data_184[0]*90.0f));
if(lbl_1_data_184[0] < 1.0f) {
lbl_1_data_184[0] += 1.0f/60.0f;
if(lbl_1_data_184[0] > 1.0f) {
fn_1_2AF4(0, 1, sind(lbl_1_data_184[0] * 90.0f));
if (lbl_1_data_184[0] < 1.0f) {
lbl_1_data_184[0] += 1.0f / 60.0f;
if (lbl_1_data_184[0] > 1.0f) {
lbl_1_data_184[0] = 1.0f;
}
}
break;
case 6:
fn_1_2AF4(1, 1, 0);
break;
case 4:
case 5:
case 7:
@ -794,9 +794,9 @@ s32 fn_1_3214(void)
{
s32 rumble = HuPadRumbleGet();
s32 i;
for(i=0; i<4; i++) {
if(!GWPlayerCfg[i].iscom) {
if((rumble & lbl_1_data_18C[GWPlayerCfg[i].pad_idx]) == 0) {
for (i = 0; i < 4; i++) {
if (!GWPlayerCfg[i].iscom) {
if ((rumble & lbl_1_data_18C[GWPlayerCfg[i].pad_idx]) == 0) {
return 0;
}
}
@ -804,4 +804,4 @@ s32 fn_1_3214(void)
return GWGameStat.rumble;
}
float lbl_1_data_19C[] = { 0,355,0,0,0,275,128,950,6,0,0,0,190,0,550 };
float lbl_1_data_19C[] = { 0, 355, 0, 0, 0, 275, 128, 950, 6, 0, 0, 0, 190, 0, 550 };

View file

@ -22,7 +22,6 @@
#include "game/sprite.h"
#include "ext_math.h"
#include "rel_sqrt_consts.h"
#undef ABS
#define ABS(x) ((0 > (x)) ? -(x) : (x))

View file

@ -13,9 +13,6 @@
#include "game/wipe.h"
#include "math.h"
#include "rel_sqrt_consts.h"
Process *lbl_1_bss_0;
// TODO: unknown type
extern s32 lbl_1_bss_A8[];

View file

@ -9,9 +9,8 @@
#include "dolphin.h"
#include "ext_math.h"
#include "rel_sqrt_consts.h"
extern s32 sprintf(char*, const char*, s32);
extern s32 sprintf(char *, const char *, s32);
static void fn_1_2BC(omObjData *arg0);
static void fn_1_300(omObjData *arg0);
@ -27,7 +26,8 @@ static u8 lbl_1_bss_4_pad[4];
static s16 lbl_1_bss_2;
static s16 lbl_1_bss_0;
void ObjectSetup(void) {
void ObjectSetup(void)
{
OSReport("******* SAFObjectSetup *********\n");
lbl_1_bss_34 = omInitObjMan(0x32, 0x2000);
CRot.x = -20.0f;
@ -46,12 +46,14 @@ void ObjectSetup(void) {
lbl_1_bss_8 = HuPrcChildCreate(fn_1_E88, 100, 0x3000, 0, lbl_1_bss_34);
}
static void fn_1_2BC(omObjData *arg0) {
static void fn_1_2BC(omObjData *arg0)
{
WipeCreate(WIPE_MODE_IN, WIPE_TYPE_NORMAL, 10);
arg0->func = fn_1_300;
}
static void fn_1_300(omObjData *arg0) {
static void fn_1_300(omObjData *arg0)
{
Vec sp2C;
Vec sp20;
Vec sp14;
@ -79,14 +81,14 @@ static void fn_1_300(omObjData *arg0) {
sp14.z = cosd(CRot.y) * sind(CRot.x);
temp_f31 = CRot.z;
sp8.x = sp14.x * (sp20.x * sp20.x + (1.0f - sp20.x * sp20.x) * cosd(temp_f31))
+ sp14.y * (sp20.x * sp20.y * (1.0 - cosd(temp_f31)) - sp20.z * sind(temp_f31))
+ sp14.z * (sp20.x * sp20.z * (1.0 - cosd(temp_f31)) + sp20.y * sind(temp_f31));
+ sp14.y * (sp20.x * sp20.y * (1.0 - cosd(temp_f31)) - sp20.z * sind(temp_f31))
+ sp14.z * (sp20.x * sp20.z * (1.0 - cosd(temp_f31)) + sp20.y * sind(temp_f31));
sp8.y = sp14.x * (sp20.x * sp20.y * (1.0 - cosd(temp_f31)) + sp20.z * sind(temp_f31))
+ sp14.y * (sp20.y * sp20.y + (1.0f - sp20.y * sp20.y) * cosd(temp_f31))
+ sp14.z * (sp20.y * sp20.z * (1.0 - cosd(temp_f31)) - sp20.x * sind(temp_f31));
+ sp14.y * (sp20.y * sp20.y + (1.0f - sp20.y * sp20.y) * cosd(temp_f31))
+ sp14.z * (sp20.y * sp20.z * (1.0 - cosd(temp_f31)) - sp20.x * sind(temp_f31));
sp8.z = sp14.x * (sp20.x * sp20.z * (1.0 - cosd(temp_f31)) - sp20.y * sind(temp_f31))
+ sp14.y * (sp20.y * sp20.z * (1.0 - cosd(temp_f31)) + sp20.x * sind(temp_f31))
+ sp14.z * (sp20.z * sp20.z + (1.0f - sp20.z * sp20.z) * cosd(temp_f31));
+ sp14.y * (sp20.y * sp20.z * (1.0 - cosd(temp_f31)) + sp20.x * sind(temp_f31))
+ sp14.z * (sp20.z * sp20.z + (1.0f - sp20.z * sp20.z) * cosd(temp_f31));
VECCrossProduct(&sp14, &sp20, &sp20);
VECNormalize(&sp20, &sp20);
temp_r31 = HuPadSubStkX[0] & 0xF8;
@ -104,69 +106,19 @@ static void fn_1_300(omObjData *arg0) {
}
}
static char *lbl_1_data_32C[] = {
"001_Character_Name_ss",
"002_Hidden_Block",
"003_Battle_M",
"004_Bowser_M",
"005_Warp_M",
"006_Mushroom_M",
"007_Lot_house",
"008_Boo_house",
"009_ItemName",
"010_Bord",
"011_RoundItem",
"012_Spaceamida",
"013_Star_M",
"014_RollerCoaster",
"015_Last5",
"016_ItemShop",
"017_System",
"018_ModeSelect",
"019_Item",
"020_Map2_event",
"021_Lucky_Minigame",
"022_Bord_Start",
"023_Map3_event",
"024_Minigame_Name",
"025_mg_446",
"026_debugmes",
"027_Party_Mode",
"028_SETUP",
"029_Miracle",
"030_mg_kuppa",
"031_Story_Mode",
"032_Bowser_Story",
"033_Map4_event",
"034_mg_inst",
"035_E3_only",
"036_saf",
"037_Mg_inst_sys_",
"038_Bord_Results",
"039_Bord_Results2",
"040_Map5_event",
"041_Mg_Mode",
"042_mg_445",
"043_mg_447",
"044_mg_448",
"045_mg_449",
"046_mg_450",
"047_tutorial",
"048_Option_Rooml",
"049_Map6_event",
"050_charley",
"051_Present_Room",
"052_Extra_Room",
"053_Staff_Post",
"054_Staff_Name",
"055_Opening_Demo",
"056_mgex_inst",
NULL
};
static char *lbl_1_data_32C[]
= { "001_Character_Name_ss", "002_Hidden_Block", "003_Battle_M", "004_Bowser_M", "005_Warp_M", "006_Mushroom_M", "007_Lot_house", "008_Boo_house",
"009_ItemName", "010_Bord", "011_RoundItem", "012_Spaceamida", "013_Star_M", "014_RollerCoaster", "015_Last5", "016_ItemShop", "017_System",
"018_ModeSelect", "019_Item", "020_Map2_event", "021_Lucky_Minigame", "022_Bord_Start", "023_Map3_event", "024_Minigame_Name", "025_mg_446",
"026_debugmes", "027_Party_Mode", "028_SETUP", "029_Miracle", "030_mg_kuppa", "031_Story_Mode", "032_Bowser_Story", "033_Map4_event",
"034_mg_inst", "035_E3_only", "036_saf", "037_Mg_inst_sys_", "038_Bord_Results", "039_Bord_Results2", "040_Map5_event", "041_Mg_Mode",
"042_mg_445", "043_mg_447", "044_mg_448", "045_mg_449", "046_mg_450", "047_tutorial", "048_Option_Rooml", "049_Map6_event", "050_charley",
"051_Present_Room", "052_Extra_Room", "053_Staff_Post", "054_Staff_Name", "055_Opening_Demo", "056_mgex_inst", NULL };
static s16 lbl_1_data_410 = -1;
static void fn_1_E88(void) {
static void fn_1_E88(void)
{
s16 sp10[256]; // unknown size
char spC[4];
char sp8[4];
@ -192,7 +144,7 @@ static void fn_1_E88(void) {
var_r30 = (var_r28 << 16);
var_r25 = 0;
while (1) {
if ((s32) MessData_MesPtrGet(messDataPtr, var_r30 + var_r25) == 0) {
if ((s32)MessData_MesPtrGet(messDataPtr, var_r30 + var_r25) == 0) {
break;
}
sp10[var_r28]++;
@ -226,13 +178,15 @@ static void fn_1_E88(void) {
var_r31 = 0;
}
var_r30 = 0;
} else if (temp_r3_2 & 0x40) {
}
else if (temp_r3_2 & 0x40) {
var_r31--;
if (var_r31 < 0) {
var_r31 = var_r27 - 1;
}
var_r30 = 0;
} else if (temp_r3_2 & 0x200) {
}
else if (temp_r3_2 & 0x200) {
var_r30--;
if (var_r30 < 0) {
var_r31--;
@ -241,7 +195,8 @@ static void fn_1_E88(void) {
}
var_r30 = sp10[var_r31] - 1;
}
} else {
}
else {
var_r30++;
if (var_r30 >= sp10[var_r31]) {
var_r31++;
@ -255,18 +210,10 @@ static void fn_1_E88(void) {
}
}
static char *lbl_1_data_440[] = {
"]1^",
"]2^",
"]3^",
"]4^",
"]5^",
"]6^",
"]7^",
"]8^"
};
static char *lbl_1_data_440[] = { "]1^", "]2^", "]3^", "]4^", "]5^", "]6^", "]7^", "]8^" };
static s32 fn_1_11B0(s16 arg0, s16 arg1) {
static s32 fn_1_11B0(s16 arg0, s16 arg1)
{
WindowData *temp_r30;
float spC[2];
s32 temp_r28;
@ -285,7 +232,7 @@ static s32 fn_1_11B0(s16 arg0, s16 arg1) {
}
temp_r28 = MAKE_MESSID(arg0, arg1);
for (i = 0; i < 8; i++) {
HuWinInsertMesSizeGet(MAKE_MESSID_PTR(lbl_1_data_440[i]), (s16) i);
HuWinInsertMesSizeGet(MAKE_MESSID_PTR(lbl_1_data_440[i]), (s16)i);
}
HuWinMesMaxSizeGet(1, &spC[0], temp_r28);
if (spC[0] <= 16.0f) {
@ -293,7 +240,7 @@ static s32 fn_1_11B0(s16 arg0, s16 arg1) {
}
lbl_1_data_410 = HuWinCreate(-10000.0f, -10000.0f, spC[0], spC[1], 0);
for (i = 0; i < 8; i++) {
HuWinInsertMesSet(lbl_1_data_410, MAKE_MESSID_PTR(lbl_1_data_440[i]), (s16) i);
HuWinInsertMesSet(lbl_1_data_410, MAKE_MESSID_PTR(lbl_1_data_440[i]), (s16)i);
}
temp_r30 = &winData[lbl_1_data_410];
temp_r30->push_key |= 0x360;

View file

@ -6,7 +6,6 @@
#include "game/wipe.h"
#include "ext_math.h"
#include "rel_sqrt_consts.h"
typedef struct camera_view_params {
Vec rot;

View file

@ -1,26 +1,22 @@
#include "game/object.h"
#include "REL/modeseldll.h"
#include "game/audio.h"
#include "game/gamework_data.h"
#include "game/hsfman.h"
#include "game/object.h"
#include "game/objsub.h"
#include "game/pad.h"
#include "game/process.h"
#include "game/window.h"
#include "game/objsub.h"
#include "game/audio.h"
#include "game/wipe.h"
#include "game/pad.h"
#include "math.h"
#include "game/gamework_data.h"
#include "REL/modeseldll.h"
#include "rel_sqrt_consts.h"
typedef struct camera_view_params {
Vec rot;
Vec pos;
float zoom;
Vec rot;
Vec pos;
float zoom;
} CameraViewParams;
CameraViewParams lbl_1_data_0[] = {
{ { 0, 0, 0 }, { 0, 0, 0 }, 1500 },
{ { 0, 0, 0 }, { 0, 0, 0 }, 524 }
};
CameraViewParams lbl_1_data_0[] = { { { 0, 0, 0 }, { 0, 0, 0 }, 1500 }, { { 0, 0, 0 }, { 0, 0, 0 }, 524 } };
omObjData *lbl_1_bss_7C;
Process *lbl_1_bss_78;
@ -42,325 +38,332 @@ void fn_1_1B6C(void);
void ObjectSetup(void)
{
s32 light;
OSReport("******* MS ObjectSetup *********\n");
lbl_1_bss_78 = omInitObjMan(50, 8192);
omGameSysInit(lbl_1_bss_78);
lbl_1_bss_24[0].x = -70;
lbl_1_bss_24[0].y = 0;
lbl_1_bss_24[0].z = 0;
lbl_1_bss_C[0].x = 0;
lbl_1_bss_C[0].y = 130;
lbl_1_bss_C[0].z = -186;
lbl_1_bss_4[0] = 1360;
lbl_1_bss_64 = lbl_1_bss_24[0];
lbl_1_bss_58 = lbl_1_bss_C[0];
lbl_1_bss_54 = lbl_1_bss_4[0];
lbl_1_bss_70[0] = 0;
Hu3DCameraCreate(1);
Hu3DCameraPerspectiveSet(1, 30, 20, 8000, 1.2f);
Hu3DCameraViewportSet(1, 0, 0, 640, 480, 0, 1);
Hu3DCameraScissorSet(1, 0, 16, 640, 448);
light = Hu3DGLightCreate(0, 100, 1000, 0, -0.5, -1, 255, 255, 255);
Hu3DGLightInfinitytSet(light);
HuPrcChildCreate(fn_1_414, 100, 16384, 0, lbl_1_bss_78);
HuPrcChildCreate(fn_1_AF0, 200, 4096, 0, lbl_1_bss_78);
lbl_1_bss_7C = omAddObjEx(lbl_1_bss_78, 32730, 0, 0, -1, fn_1_B8C);
omAddObjEx(lbl_1_bss_78, 0, 32, 32, -1, fn_1_F40);
Hu3DBGColorSet(0, 0, 0);
mgBoardHostEnableF = 0;
HuWinInit(1);
mgPracticeEnableF = 0;
mgQuitExtraF = 0;
s32 light;
OSReport("******* MS ObjectSetup *********\n");
lbl_1_bss_78 = omInitObjMan(50, 8192);
omGameSysInit(lbl_1_bss_78);
lbl_1_bss_24[0].x = -70;
lbl_1_bss_24[0].y = 0;
lbl_1_bss_24[0].z = 0;
lbl_1_bss_C[0].x = 0;
lbl_1_bss_C[0].y = 130;
lbl_1_bss_C[0].z = -186;
lbl_1_bss_4[0] = 1360;
lbl_1_bss_64 = lbl_1_bss_24[0];
lbl_1_bss_58 = lbl_1_bss_C[0];
lbl_1_bss_54 = lbl_1_bss_4[0];
lbl_1_bss_70[0] = 0;
Hu3DCameraCreate(1);
Hu3DCameraPerspectiveSet(1, 30, 20, 8000, 1.2f);
Hu3DCameraViewportSet(1, 0, 0, 640, 480, 0, 1);
Hu3DCameraScissorSet(1, 0, 16, 640, 448);
light = Hu3DGLightCreate(0, 100, 1000, 0, -0.5, -1, 255, 255, 255);
Hu3DGLightInfinitytSet(light);
HuPrcChildCreate(fn_1_414, 100, 16384, 0, lbl_1_bss_78);
HuPrcChildCreate(fn_1_AF0, 200, 4096, 0, lbl_1_bss_78);
lbl_1_bss_7C = omAddObjEx(lbl_1_bss_78, 32730, 0, 0, -1, fn_1_B8C);
omAddObjEx(lbl_1_bss_78, 0, 32, 32, -1, fn_1_F40);
Hu3DBGColorSet(0, 0, 0);
mgBoardHostEnableF = 0;
HuWinInit(1);
mgPracticeEnableF = 0;
mgQuitExtraF = 0;
}
void fn_1_414(void)
{
fn_1_9F4();
if(omovlevtno) {
HuAudSeqPlay(43);
} else {
if(!fn_1_37DC()) {
WipeColorSet(0, 0, 0);
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 20);
HuAudSeqAllFadeOut(1000);
while(WipeStatGet()) {
HuPrcVSleep();
}
omOvlReturnEx(1, 1);
while(1) {
HuPrcVSleep();
}
} else {
s16 group = HuSprGrpCreate(1);
s16 sprite = HuTHPSprCreateVol("movie/opmov_s00.thp", 0, 3000, 70.0);
HuSprGrpMemberSet(group, 0, sprite);
HuSprPosSet(group, 0, 288, 240);
HuSprDrawNoSet(group, 0, 127);
HuPrcSleep(2);
espAttrSet(lbl_1_bss_152[0], HUSPR_ATTR_DISPOFF);
HuAudFXStop(lbl_1_data_100);
while(!HuTHPEndCheck()) {
HuPrcVSleep();
}
HuTHPClose();
HuSprGrpKill(group);
}
}
espAttrReset(lbl_1_bss_152[9], HUSPR_ATTR_DISPOFF);
espDrawNoSet(lbl_1_bss_152[9], 127);
{
s16 result = fn_1_2490();
if(result == -1) {
HuAudSeqAllFadeOut(1000);
WipeColorSet(0, 0, 0);
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 20);
while(WipeStatGet()) {
HuPrcVSleep();
}
omOvlGotoEx(OVL_MODESEL, 1, 0, 0);
while(1) {
HuPrcVSleep();
}
} else {
s16 i;
omOvlHisData *his;
for(i=0; i<4; i++) {
GWPlayerCfg[i].pad_idx = i;
if(!HuPadStatGet(i)) {
GWPlayerCfg[i].iscom = 0;
} else {
GWPlayerCfg[i].iscom = 1;
}
}
his = omOvlHisGet(0);
omOvlHisChg(0, his->overlay, 1, his->stat);
_ClearFlag(FLAG_ID_MAKE(1, 0));
_ClearFlag(FLAG_ID_MAKE(1, 8));
_ClearFlag(FLAG_ID_MAKE(1, 12));
_ClearFlag(FLAG_ID_MAKE(1, 11));
GWGameStat.sound_mode = msmSysGetOutputMode();
switch(result) {
case 0:
GWMGExplainSet(GWGameStat.party_pause.explain_mg);
GWMGShowComSet(GWGameStat.party_pause.show_com_mg);
GWMGListSet(GWGameStat.party_pause.mg_list);
GWMessSpeedSet(GWGameStat.party_pause.mess_speed);
GWSaveModeSet(GWGameStat.party_pause.save_mode);
omOvlCallEx(OVL_MENT, 1, 0, 0);
break;
case 1:
GWMGExplainSet(GWGameStat.story_pause.explain_mg);
GWMGShowComSet(GWGameStat.story_pause.show_com_mg);
GWMGListSet(GWGameStat.story_pause.mg_list);
GWMessSpeedSet(GWGameStat.story_pause.mess_speed);
GWSaveModeSet(GWGameStat.story_pause.save_mode);
omOvlCallEx(OVL_MENT, 1, 1, 0);
break;
case 2:
omOvlCallEx(OVL_MGMODE, 1, 0, 0);
break;
case 3:
omOvlCallEx(OVL_MENT, 1, 3, 0);
break;
case 4:
omOvlCallEx(OVL_MENT, 1, 4, 0);
break;
case 5:
omOvlCallEx(OVL_MPEX, 1, 0, 0);
break;
}
while(1) {
HuPrcVSleep();
}
}
}
fn_1_9F4();
if (omovlevtno) {
HuAudSeqPlay(43);
}
else {
if (!fn_1_37DC()) {
WipeColorSet(0, 0, 0);
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 20);
HuAudSeqAllFadeOut(1000);
while (WipeStatGet()) {
HuPrcVSleep();
}
omOvlReturnEx(1, 1);
while (1) {
HuPrcVSleep();
}
}
else {
s16 group = HuSprGrpCreate(1);
s16 sprite = HuTHPSprCreateVol("movie/opmov_s00.thp", 0, 3000, 70.0);
HuSprGrpMemberSet(group, 0, sprite);
HuSprPosSet(group, 0, 288, 240);
HuSprDrawNoSet(group, 0, 127);
HuPrcSleep(2);
espAttrSet(lbl_1_bss_152[0], HUSPR_ATTR_DISPOFF);
HuAudFXStop(lbl_1_data_100);
while (!HuTHPEndCheck()) {
HuPrcVSleep();
}
HuTHPClose();
HuSprGrpKill(group);
}
}
espAttrReset(lbl_1_bss_152[9], HUSPR_ATTR_DISPOFF);
espDrawNoSet(lbl_1_bss_152[9], 127);
{
s16 result = fn_1_2490();
if (result == -1) {
HuAudSeqAllFadeOut(1000);
WipeColorSet(0, 0, 0);
WipeCreate(WIPE_MODE_OUT, WIPE_TYPE_NORMAL, 20);
while (WipeStatGet()) {
HuPrcVSleep();
}
omOvlGotoEx(OVL_MODESEL, 1, 0, 0);
while (1) {
HuPrcVSleep();
}
}
else {
s16 i;
omOvlHisData *his;
for (i = 0; i < 4; i++) {
GWPlayerCfg[i].pad_idx = i;
if (!HuPadStatGet(i)) {
GWPlayerCfg[i].iscom = 0;
}
else {
GWPlayerCfg[i].iscom = 1;
}
}
his = omOvlHisGet(0);
omOvlHisChg(0, his->overlay, 1, his->stat);
_ClearFlag(FLAG_ID_MAKE(1, 0));
_ClearFlag(FLAG_ID_MAKE(1, 8));
_ClearFlag(FLAG_ID_MAKE(1, 12));
_ClearFlag(FLAG_ID_MAKE(1, 11));
GWGameStat.sound_mode = msmSysGetOutputMode();
switch (result) {
case 0:
GWMGExplainSet(GWGameStat.party_pause.explain_mg);
GWMGShowComSet(GWGameStat.party_pause.show_com_mg);
GWMGListSet(GWGameStat.party_pause.mg_list);
GWMessSpeedSet(GWGameStat.party_pause.mess_speed);
GWSaveModeSet(GWGameStat.party_pause.save_mode);
omOvlCallEx(OVL_MENT, 1, 0, 0);
break;
case 1:
GWMGExplainSet(GWGameStat.story_pause.explain_mg);
GWMGShowComSet(GWGameStat.story_pause.show_com_mg);
GWMGListSet(GWGameStat.story_pause.mg_list);
GWMessSpeedSet(GWGameStat.story_pause.mess_speed);
GWSaveModeSet(GWGameStat.story_pause.save_mode);
omOvlCallEx(OVL_MENT, 1, 1, 0);
break;
case 2:
omOvlCallEx(OVL_MGMODE, 1, 0, 0);
break;
case 3:
omOvlCallEx(OVL_MENT, 1, 3, 0);
break;
case 4:
omOvlCallEx(OVL_MENT, 1, 4, 0);
break;
case 5:
omOvlCallEx(OVL_MPEX, 1, 0, 0);
break;
}
while (1) {
HuPrcVSleep();
}
}
}
}
void fn_1_9F4(void)
{
Vec pos;
Vec target;
Vec up;
Hu3DShadowCreate(20, 100, 5000);
Hu3DShadowTPLvlSet(0.3f);
Hu3DShadowSizeSet(192);
target.x = target.y = target.z = 0;
pos.x = 500;
pos.z = 1000;
pos.y = 2000;
up.x = 0;
up.y = 1;
up.z = 0;
Hu3DShadowPosSet(&pos, &up, &target);
fn_1_BED8(lbl_1_data_428);
fn_1_C168(lbl_1_data_93C);
Vec pos;
Vec target;
Vec up;
Hu3DShadowCreate(20, 100, 5000);
Hu3DShadowTPLvlSet(0.3f);
Hu3DShadowSizeSet(192);
target.x = target.y = target.z = 0;
pos.x = 500;
pos.z = 1000;
pos.y = 2000;
up.x = 0;
up.y = 1;
up.z = 0;
Hu3DShadowPosSet(&pos, &up, &target);
fn_1_BED8(lbl_1_data_428);
fn_1_C168(lbl_1_data_93C);
}
void fn_1_AF0(void)
{
s16 i;
while(1) {
if(lbl_1_bss_70[0] || omSysExitReq) {
break;
}
HuPrcVSleep();
}
for(i=0; i<4; i++) {
GWPlayerCfg[i].character = -1;
}
BoardStatusKill();
omOvlReturnEx(1, 1);
HuPrcEnd();
s16 i;
while (1) {
if (lbl_1_bss_70[0] || omSysExitReq) {
break;
}
HuPrcVSleep();
}
for (i = 0; i < 4; i++) {
GWPlayerCfg[i].character = -1;
}
BoardStatusKill();
omOvlReturnEx(1, 1);
HuPrcEnd();
}
u16 lbl_1_data_6E[] = { 1, 2 };
void fn_1_B8C(omObjData *object)
{
s16 i;
for(i=0; i<1; i++) {
Vec pos, target, up;
float x, y, z;
x = lbl_1_bss_24[i].x;
y = lbl_1_bss_24[i].y;
z = lbl_1_bss_24[i].z;
pos.x = (((sin((M_PI*y)/180.0)*cos((M_PI*x)/180.0))*lbl_1_bss_4[i])+lbl_1_bss_C[i].x);
pos.y = (-sin((M_PI*x)/180.0)*lbl_1_bss_4[i])+lbl_1_bss_C[i].y;
pos.z = ((cos((M_PI*y)/180.0)*cos((M_PI*x)/180.0))*lbl_1_bss_4[i])+lbl_1_bss_C[i].z;
target.x = lbl_1_bss_C[i].x;
target.y = lbl_1_bss_C[i].y;
target.z = lbl_1_bss_C[i].z;
up.x = sin((M_PI*y)/180.0)*sin((M_PI*x)/180.0);
up.y = cos((M_PI*x)/180.0);
up.z = cos((M_PI*y)/180.0)*sin((M_PI*x)/180.0);
Hu3DCameraPosSet(lbl_1_data_6E[i], pos.x, pos.y, pos.z, up.x, up.y, up.z, target.x, target.y, target.z);
}
s16 i;
for (i = 0; i < 1; i++) {
Vec pos, target, up;
float x, y, z;
x = lbl_1_bss_24[i].x;
y = lbl_1_bss_24[i].y;
z = lbl_1_bss_24[i].z;
pos.x = (((sin((M_PI * y) / 180.0) * cos((M_PI * x) / 180.0)) * lbl_1_bss_4[i]) + lbl_1_bss_C[i].x);
pos.y = (-sin((M_PI * x) / 180.0) * lbl_1_bss_4[i]) + lbl_1_bss_C[i].y;
pos.z = ((cos((M_PI * y) / 180.0) * cos((M_PI * x) / 180.0)) * lbl_1_bss_4[i]) + lbl_1_bss_C[i].z;
target.x = lbl_1_bss_C[i].x;
target.y = lbl_1_bss_C[i].y;
target.z = lbl_1_bss_C[i].z;
up.x = sin((M_PI * y) / 180.0) * sin((M_PI * x) / 180.0);
up.y = cos((M_PI * x) / 180.0);
up.z = cos((M_PI * y) / 180.0) * sin((M_PI * x) / 180.0);
Hu3DCameraPosSet(lbl_1_data_6E[i], pos.x, pos.y, pos.z, up.x, up.y, up.z, target.x, target.y, target.z);
}
}
void fn_1_F40(omObjData *object)
{
Vec pos;
Vec pos;
Vec offset;
Vec dir;
Vec y_offset;
f32 z_rot;
s8 stick_pos;
if (!lbl_1_bss_0) {
fn_1_1B6C();
fn_1_1B6C();
return;
}
lbl_1_bss_24[0].y += 0.1f * HuPadStkX[0];
lbl_1_bss_24[0].x += 0.1f * HuPadStkY[0];
lbl_1_bss_4[0] += HuPadTrigL[0] / 2;
lbl_1_bss_4[0] -= HuPadTrigR[0] / 2;
if(HuPadBtnDown[0] & PAD_BUTTON_B) {
OSReport("%f,%f,%f\n", lbl_1_bss_24[0].x, lbl_1_bss_24[0].y, lbl_1_bss_24[0].z);
OSReport("%f,%f,%f\n", lbl_1_bss_C[0].x, lbl_1_bss_C[0].y, lbl_1_bss_C[0].z);
OSReport("%f\n", lbl_1_bss_4[0]);
}
if (lbl_1_bss_4[0] < 100.0f) {
lbl_1_bss_4[0] = 100.0f;
}
pos.x = lbl_1_bss_C[0].x + (lbl_1_bss_4[0] * (sin((M_PI * lbl_1_bss_24[0].y) / 180.0) * cos((M_PI * lbl_1_bss_24[0].x) / 180.0)));
pos.y = (lbl_1_bss_C[0].y + (lbl_1_bss_4[0] * -sin((M_PI * lbl_1_bss_24[0].x) / 180.0)));
pos.z = (lbl_1_bss_C[0].z + (lbl_1_bss_4[0] * (cos((M_PI * lbl_1_bss_24[0].y) / 180.0) * cos((M_PI * lbl_1_bss_24[0].x) / 180.0))));
offset.x = lbl_1_bss_C[0].x - pos.x;
offset.y = lbl_1_bss_C[0].y - pos.y;
offset.z = lbl_1_bss_C[0].z - pos.z;
dir.x = (sin((M_PI * lbl_1_bss_24[0].y) / 180.0) * sin((M_PI * lbl_1_bss_24[0].x) / 180.0));
dir.y = cos((M_PI * lbl_1_bss_24[0].x) / 180.0);
dir.z = (cos((M_PI * lbl_1_bss_24[0].y) / 180.0) * sin((M_PI * lbl_1_bss_24[0].x) / 180.0));
z_rot = lbl_1_bss_24[0].z;
y_offset.x = dir.x * (offset.x * offset.x + (1.0f - offset.x * offset.x) * cos((M_PI * z_rot) / 180.0))
+ dir.y * (offset.x * offset.y * (1.0f - cos((M_PI * z_rot) / 180.0)) - offset.z * sin((M_PI * z_rot) / 180.0))
+ dir.z * (offset.x * offset.z * (1.0f - cos((M_PI * z_rot) / 180.0)) + offset.y * sin((M_PI * z_rot) / 180.0));
lbl_1_bss_24[0].y += 0.1f * HuPadStkX[0];
lbl_1_bss_24[0].x += 0.1f * HuPadStkY[0];
lbl_1_bss_4[0] += HuPadTrigL[0] / 2;
lbl_1_bss_4[0] -= HuPadTrigR[0] / 2;
if (HuPadBtnDown[0] & PAD_BUTTON_B) {
OSReport("%f,%f,%f\n", lbl_1_bss_24[0].x, lbl_1_bss_24[0].y, lbl_1_bss_24[0].z);
OSReport("%f,%f,%f\n", lbl_1_bss_C[0].x, lbl_1_bss_C[0].y, lbl_1_bss_C[0].z);
OSReport("%f\n", lbl_1_bss_4[0]);
}
if (lbl_1_bss_4[0] < 100.0f) {
lbl_1_bss_4[0] = 100.0f;
}
pos.x = lbl_1_bss_C[0].x + (lbl_1_bss_4[0] * (sin((M_PI * lbl_1_bss_24[0].y) / 180.0) * cos((M_PI * lbl_1_bss_24[0].x) / 180.0)));
pos.y = (lbl_1_bss_C[0].y + (lbl_1_bss_4[0] * -sin((M_PI * lbl_1_bss_24[0].x) / 180.0)));
pos.z = (lbl_1_bss_C[0].z + (lbl_1_bss_4[0] * (cos((M_PI * lbl_1_bss_24[0].y) / 180.0) * cos((M_PI * lbl_1_bss_24[0].x) / 180.0))));
offset.x = lbl_1_bss_C[0].x - pos.x;
offset.y = lbl_1_bss_C[0].y - pos.y;
offset.z = lbl_1_bss_C[0].z - pos.z;
dir.x = (sin((M_PI * lbl_1_bss_24[0].y) / 180.0) * sin((M_PI * lbl_1_bss_24[0].x) / 180.0));
dir.y = cos((M_PI * lbl_1_bss_24[0].x) / 180.0);
dir.z = (cos((M_PI * lbl_1_bss_24[0].y) / 180.0) * sin((M_PI * lbl_1_bss_24[0].x) / 180.0));
z_rot = lbl_1_bss_24[0].z;
y_offset.x = dir.x * (offset.x * offset.x + (1.0f - offset.x * offset.x) * cos((M_PI * z_rot) / 180.0))
+ dir.y * (offset.x * offset.y * (1.0f - cos((M_PI * z_rot) / 180.0)) - offset.z * sin((M_PI * z_rot) / 180.0))
+ dir.z * (offset.x * offset.z * (1.0f - cos((M_PI * z_rot) / 180.0)) + offset.y * sin((M_PI * z_rot) / 180.0));
y_offset.y = dir.y * (offset.y * offset.y + (1.0f - offset.y * offset.y) * cos((M_PI * z_rot) / 180.0))
+ dir.x * (offset.x * offset.y * (1.0f - cos((M_PI * z_rot) / 180.0)) + offset.z * sin((M_PI * z_rot) / 180.0))
+ dir.z * (offset.y * offset.z * (1.0f - cos((M_PI * z_rot) / 180.0)) - offset.x * sin((M_PI * z_rot) / 180.0));
y_offset.z = dir.z * (offset.z * offset.z + (1.0f - offset.z * offset.z) * cos((M_PI * z_rot) / 180.0))
+ (dir.x * (offset.x * offset.z * (1.0 - cos((M_PI * z_rot) / 180.0)) - offset.y * sin((M_PI * z_rot) / 180.0))
+ dir.y * (offset.y * offset.z * (1.0 - cos((M_PI * z_rot) / 180.0)) + offset.x * sin((M_PI * z_rot) / 180.0)));
y_offset.y = dir.y * (offset.y * offset.y + (1.0f - offset.y * offset.y) * cos((M_PI * z_rot) / 180.0))
+ dir.x * (offset.x * offset.y * (1.0f - cos((M_PI * z_rot) / 180.0)) + offset.z * sin((M_PI * z_rot) / 180.0))
+ dir.z * (offset.y * offset.z * (1.0f - cos((M_PI * z_rot) / 180.0)) - offset.x * sin((M_PI * z_rot) / 180.0));
VECCrossProduct(&dir, &offset, &offset);
VECNormalize(&offset, &offset);
stick_pos = (HuPadSubStkX[0] & 0xF8);
if (stick_pos != 0) {
lbl_1_bss_C[0].x += 0.05f * (offset.x * stick_pos);
lbl_1_bss_C[0].y += 0.05f * (offset.y * stick_pos);
lbl_1_bss_C[0].z += 0.05f * (offset.z * stick_pos);
}
VECNormalize(&y_offset, &offset);
stick_pos = -(HuPadSubStkY[0] & 0xF8);
if (stick_pos != 0) {
lbl_1_bss_C[0].x += 0.05f * (offset.x * stick_pos);
lbl_1_bss_C[0].y += 0.05f * (offset.y * stick_pos);
lbl_1_bss_C[0].z += 0.05f * (offset.z * stick_pos);
}
y_offset.z = dir.z * (offset.z * offset.z + (1.0f - offset.z * offset.z) * cos((M_PI * z_rot) / 180.0))
+ (dir.x * (offset.x * offset.z * (1.0 - cos((M_PI * z_rot) / 180.0)) - offset.y * sin((M_PI * z_rot) / 180.0))
+ dir.y * (offset.y * offset.z * (1.0 - cos((M_PI * z_rot) / 180.0)) + offset.x * sin((M_PI * z_rot) / 180.0)));
VECCrossProduct(&dir, &offset, &offset);
VECNormalize(&offset, &offset);
stick_pos = (HuPadSubStkX[0] & 0xF8);
if (stick_pos != 0) {
lbl_1_bss_C[0].x += 0.05f * (offset.x * stick_pos);
lbl_1_bss_C[0].y += 0.05f * (offset.y * stick_pos);
lbl_1_bss_C[0].z += 0.05f * (offset.z * stick_pos);
}
VECNormalize(&y_offset, &offset);
stick_pos = -(HuPadSubStkY[0] & 0xF8);
if (stick_pos != 0) {
lbl_1_bss_C[0].x += 0.05f * (offset.x * stick_pos);
lbl_1_bss_C[0].y += 0.05f * (offset.y * stick_pos);
lbl_1_bss_C[0].z += 0.05f * (offset.z * stick_pos);
}
}
void fn_1_1B6C(void)
{
Vec delta_vec;
float delta_zoom;
if(lbl_1_bss_70[0]) {
return;
}
VECSubtract(&lbl_1_bss_64, &lbl_1_bss_24[0], &delta_vec);
if(VECMag(&delta_vec) > 0.2) {
VECScale(&delta_vec, &delta_vec, 0.05f);
VECAdd(&lbl_1_bss_24[0], &delta_vec, &lbl_1_bss_24[0]);
} else {
lbl_1_bss_24[0] = lbl_1_bss_64;
}
VECSubtract(&lbl_1_bss_58, &lbl_1_bss_C[0], &delta_vec);
if(VECMag(&delta_vec) > 0.2) {
VECScale(&delta_vec, &delta_vec, 0.05f);
VECAdd(&lbl_1_bss_C[0], &delta_vec, &lbl_1_bss_C[0]);
} else {
lbl_1_bss_C[0] = lbl_1_bss_58;
}
delta_zoom = lbl_1_bss_54-lbl_1_bss_4[0];
if(sqrtf(delta_zoom*delta_zoom) > 0.2) {
delta_zoom *= 0.05f;
lbl_1_bss_4[0] += delta_zoom;
} else {
lbl_1_bss_4[0] = lbl_1_bss_54;
}
Vec delta_vec;
float delta_zoom;
if (lbl_1_bss_70[0]) {
return;
}
VECSubtract(&lbl_1_bss_64, &lbl_1_bss_24[0], &delta_vec);
if (VECMag(&delta_vec) > 0.2) {
VECScale(&delta_vec, &delta_vec, 0.05f);
VECAdd(&lbl_1_bss_24[0], &delta_vec, &lbl_1_bss_24[0]);
}
else {
lbl_1_bss_24[0] = lbl_1_bss_64;
}
VECSubtract(&lbl_1_bss_58, &lbl_1_bss_C[0], &delta_vec);
if (VECMag(&delta_vec) > 0.2) {
VECScale(&delta_vec, &delta_vec, 0.05f);
VECAdd(&lbl_1_bss_C[0], &delta_vec, &lbl_1_bss_C[0]);
}
else {
lbl_1_bss_C[0] = lbl_1_bss_58;
}
delta_zoom = lbl_1_bss_54 - lbl_1_bss_4[0];
if (sqrtf(delta_zoom * delta_zoom) > 0.2) {
delta_zoom *= 0.05f;
lbl_1_bss_4[0] += delta_zoom;
}
else {
lbl_1_bss_4[0] = lbl_1_bss_54;
}
}
void fn_1_1E30(s16 view)
{
lbl_1_bss_64 = lbl_1_data_0[view].rot;
lbl_1_bss_58 = lbl_1_data_0[view].pos;
lbl_1_bss_54 = lbl_1_data_0[view].zoom;
lbl_1_bss_64 = lbl_1_data_0[view].rot;
lbl_1_bss_58 = lbl_1_data_0[view].pos;
lbl_1_bss_54 = lbl_1_data_0[view].zoom;
}
void fn_1_1EC0(s16 view)
{
s16 i;
lbl_1_bss_24[0] = lbl_1_data_0[view].rot;
lbl_1_bss_64 = lbl_1_bss_24[0];
lbl_1_bss_C[0] = lbl_1_data_0[view].pos;
lbl_1_bss_58 = lbl_1_bss_C[0];
lbl_1_bss_54 = lbl_1_bss_4[0] = lbl_1_data_0[view].zoom;
fn_1_B8C(NULL);
s16 i;
lbl_1_bss_24[0] = lbl_1_data_0[view].rot;
lbl_1_bss_64 = lbl_1_bss_24[0];
lbl_1_bss_C[0] = lbl_1_data_0[view].pos;
lbl_1_bss_58 = lbl_1_bss_C[0];
lbl_1_bss_54 = lbl_1_bss_4[0] = lbl_1_data_0[view].zoom;
fn_1_B8C(NULL);
}
float fn_1_2368(void)
{
float delta_zoom = lbl_1_bss_54-lbl_1_bss_4[0];
return sqrtf(delta_zoom*delta_zoom);
float delta_zoom = lbl_1_bss_54 - lbl_1_bss_4[0];
return sqrtf(delta_zoom * delta_zoom);
}

View file

@ -8,7 +8,6 @@
#include "game/pad.h"
#include "game/printfunc.h"
#include "game/wipe.h"
#include "rel_sqrt_consts.h"
#include "REL/mpexDll.h"

View file

@ -13,7 +13,6 @@
#include "game/saveload.h"
#include "game/window.h"
#include "game/wipe.h"
#include "rel_sqrt_consts.h"
#include "math.h"

View file

@ -10,7 +10,6 @@
#include "game/sprite.h"
#include "game/window.h"
#include "game/wipe.h"
#include "rel_sqrt_consts.h"
#include "REL/ztardll.h"