mirror of https://github.com/zeldaret/mm.git
Struct Returns (#1466)
* change args * more funcs * cleanup * play cleanup * missed a file * weird warnings * missed some * fix func from honotrap
This commit is contained in:
parent
28e2da2a18
commit
dfb6c5b02c
|
|
@ -328,9 +328,9 @@ void Actor_UpdateBgCheckInfo(PlayState* play, Actor* actor, f32 wallCheckHeight,
|
|||
Hilite* Hilite_DrawOpa(Vec3f* object, Vec3f* eye, Vec3f* lightDir, GraphicsContext* gfxCtx);
|
||||
void func_800B8050(Actor* actor, PlayState* play, s32 flag);
|
||||
void func_800B8118(Actor* actor, PlayState* play, s32 flag);
|
||||
PosRot* Actor_GetFocus(PosRot* dest, Actor* actor);
|
||||
PosRot* Actor_GetWorld(PosRot* dest, Actor* actor);
|
||||
PosRot* Actor_GetWorldPosShapeRot(PosRot* dest, Actor* actor);
|
||||
PosRot Actor_GetFocus(Actor* actor);
|
||||
PosRot Actor_GetWorld(Actor* actor);
|
||||
PosRot Actor_GetWorldPosShapeRot(Actor* actor);
|
||||
|
||||
s32 Target_OutsideLeashRange(Actor* actor, Player* player, s32 ignoreLeash);
|
||||
s32 Actor_ProcessTalkRequest(Actor* actor, GameState* gameState);
|
||||
|
|
@ -479,10 +479,10 @@ s32 Camera_CheckValidMode(Camera* camera, s16 mode);
|
|||
s16 Camera_ChangeSettingFlags(Camera* camera, s16 setting, s16 flags);
|
||||
s32 Camera_ChangeSetting(Camera* camera, s16 setting);
|
||||
s32 Camera_ChangeActorCsCamIndex(Camera* camera, s32 bgCamIndex);
|
||||
Vec3s* Camera_GetInputDir(Vec3s* dst, Camera* camera);
|
||||
Vec3s Camera_GetInputDir(Camera* camera);
|
||||
s16 Camera_GetInputDirPitch(Camera* camera);
|
||||
s16 Camera_GetInputDirYaw(Camera* camera);
|
||||
Vec3s* Camera_GetCamDir(Vec3s* dst, Camera* camera);
|
||||
Vec3s Camera_GetCamDir(Camera* camera);
|
||||
s16 Camera_GetCamDirPitch(Camera* camera);
|
||||
s16 Camera_GetCamDirYaw(Camera* camera);
|
||||
s32 Camera_AddQuake(Camera* camera, s32 arg1, s16 y, s32 countdown);
|
||||
|
|
@ -494,7 +494,7 @@ s16 Camera_UnsetStateFlag(Camera* camera, s16 flags);
|
|||
s32 Camera_ChangeDoorCam(Camera* camera, Actor* doorActor, s16 bgCamIndex, f32 arg3, s16 timer1, s16 timer2, s16 timer3);
|
||||
s32 Camera_Copy(Camera* dstCam, Camera* srcCam);
|
||||
s32 Camera_IsDbgCamEnabled(void);
|
||||
Vec3f* Camera_GetQuakeOffset(Vec3f* quakeOffset, Camera* camera);
|
||||
Vec3f Camera_GetQuakeOffset(Camera* camera);
|
||||
void Camera_SetCameraData(Camera* camera, s16 setDataFlags, void* data0, void* data1, s16 data2, s16 data3);
|
||||
s32 Camera_GetNegOne(void);
|
||||
s16 func_800E0238(Camera* camera);
|
||||
|
|
@ -757,17 +757,17 @@ f32 OLib_Vec3fDistOutDiff(Vec3f* a, Vec3f* b, Vec3f* dest);
|
|||
f32 OLib_Vec3fDistXZ(Vec3f* a, Vec3f* b);
|
||||
f32 OLib_ClampMinDist(f32 val, f32 min);
|
||||
f32 OLib_ClampMaxDist(f32 val, f32 max);
|
||||
Vec3f* OLib_Vec3fDistNormalize(Vec3f* dest, Vec3f* a, Vec3f* b);
|
||||
Vec3f* OLib_VecSphToVec3f(Vec3f* dest, VecSph* sph);
|
||||
Vec3f* OLib_VecGeoToVec3f(Vec3f* dest, VecGeo* geo);
|
||||
VecSph* OLib_Vec3fToVecSph(VecSph* dest, Vec3f* vec);
|
||||
VecGeo* OLib_Vec3fToVecGeo(VecGeo* dest, Vec3f* vec);
|
||||
VecSph* OLib_Vec3fDiffToVecSph(VecSph* dest, Vec3f* a, Vec3f* b);
|
||||
VecGeo* OLib_Vec3fDiffToVecGeo(VecGeo* dest, Vec3f* a, Vec3f* b);
|
||||
Vec3f* OLib_AddVecGeoToVec3f(Vec3f* dest, Vec3f* a, VecGeo* geo);
|
||||
Vec3f* OLib_Vec3fDiffRad(Vec3f* dest, Vec3f* a, Vec3f* b);
|
||||
Vec3f* OLib_Vec3fDiffDegF(Vec3f* dest, Vec3f* a, Vec3f* b);
|
||||
Vec3s* OLib_Vec3fDiffBinAng(Vec3s* dest, Vec3f* a, Vec3f* b);
|
||||
Vec3f OLib_Vec3fDistNormalize(Vec3f* a, Vec3f* b);
|
||||
Vec3f OLib_VecSphToVec3f(VecSph* sph);
|
||||
Vec3f OLib_VecGeoToVec3f(VecGeo* geo);
|
||||
VecSph OLib_Vec3fToVecSph(Vec3f* vec);
|
||||
VecGeo OLib_Vec3fToVecGeo(Vec3f* vec);
|
||||
VecSph OLib_Vec3fDiffToVecSph(Vec3f* a, Vec3f* b);
|
||||
VecGeo OLib_Vec3fDiffToVecGeo(Vec3f* a, Vec3f* b);
|
||||
Vec3f OLib_AddVecGeoToVec3f(Vec3f* a, VecGeo* geo);
|
||||
Vec3f OLib_Vec3fDiffRad(Vec3f* a, Vec3f* b);
|
||||
Vec3f OLib_Vec3fDiffDegF(Vec3f* a, Vec3f* b);
|
||||
Vec3s OLib_Vec3fDiffBinAng(Vec3f* a, Vec3f* b);
|
||||
void OLib_Vec3fDiff(PosRot* a, Vec3f* b, Vec3f* dest, s16 mode);
|
||||
void OLib_Vec3fAdd(PosRot* a, Vec3f* b, Vec3f* dest, s16 mode);
|
||||
|
||||
|
|
|
|||
|
|
@ -516,9 +516,9 @@ s16 CutsceneCamera_Interp_Geo(Vec3f* camPos, f32* camFov, s16* camRoll, CsCmdCam
|
|||
interpState->curFrame++;
|
||||
|
||||
if (camPos != NULL) {
|
||||
OLib_Vec3fDiffToVecGeo(&sp40, &interpState->curPos, camPos);
|
||||
sp40 = OLib_Vec3fDiffToVecGeo(&interpState->curPos, camPos);
|
||||
sp40.r = interpState->unk_20 / Math_FTanF(DEG_TO_RAD(*camFov));
|
||||
OLib_AddVecGeoToVec3f(camPos, &interpState->curPos, &sp40);
|
||||
*camPos = OLib_AddVecGeoToVec3f(&interpState->curPos, &sp40);
|
||||
}
|
||||
|
||||
if (camFov != NULL) {
|
||||
|
|
|
|||
|
|
@ -1815,19 +1815,15 @@ void func_800B8118(Actor* actor, PlayState* play, s32 flag) {
|
|||
}
|
||||
}
|
||||
|
||||
PosRot* Actor_GetFocus(PosRot* dest, Actor* actor) {
|
||||
*dest = actor->focus;
|
||||
|
||||
return dest;
|
||||
PosRot Actor_GetFocus(Actor* actor) {
|
||||
return actor->focus;
|
||||
}
|
||||
|
||||
PosRot* Actor_GetWorld(PosRot* dest, Actor* actor) {
|
||||
*dest = actor->world;
|
||||
|
||||
return dest;
|
||||
PosRot Actor_GetWorld(Actor* actor) {
|
||||
return actor->world;
|
||||
}
|
||||
|
||||
PosRot* Actor_GetWorldPosShapeRot(PosRot* dest, Actor* actor) {
|
||||
PosRot Actor_GetWorldPosShapeRot(Actor* actor) {
|
||||
PosRot sp1C;
|
||||
|
||||
Math_Vec3f_Copy(&sp1C.pos, &actor->world.pos);
|
||||
|
|
@ -1837,9 +1833,8 @@ PosRot* Actor_GetWorldPosShapeRot(PosRot* dest, Actor* actor) {
|
|||
sp1C.pos.y += player->unk_AC0 * actor->scale.y;
|
||||
}
|
||||
sp1C.rot = actor->shape.rot;
|
||||
*dest = sp1C;
|
||||
|
||||
return dest;
|
||||
return sp1C;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -57,7 +57,7 @@ f32 OLib_ClampMaxDist(f32 val, f32 max) {
|
|||
/**
|
||||
* Takes the difference of points b and a, and creates a normal vector
|
||||
*/
|
||||
Vec3f* OLib_Vec3fDistNormalize(Vec3f* dest, Vec3f* a, Vec3f* b) {
|
||||
Vec3f OLib_Vec3fDistNormalize(Vec3f* a, Vec3f* b) {
|
||||
Vec3f v1;
|
||||
Vec3f v2;
|
||||
f32 dist;
|
||||
|
|
@ -72,15 +72,13 @@ Vec3f* OLib_Vec3fDistNormalize(Vec3f* dest, Vec3f* a, Vec3f* b) {
|
|||
v2.y = v1.y / dist;
|
||||
v2.z = v1.z / dist;
|
||||
|
||||
*dest = v2;
|
||||
|
||||
return dest;
|
||||
return v2;
|
||||
}
|
||||
|
||||
/**
|
||||
* Takes the spherical coordinate `sph`, and converts it into a x,y,z position
|
||||
*/
|
||||
Vec3f* OLib_VecSphToVec3f(Vec3f* dest, VecSph* sph) {
|
||||
Vec3f OLib_VecSphToVec3f(VecSph* sph) {
|
||||
Vec3f v;
|
||||
f32 sinPitch;
|
||||
f32 cosPitch = Math_CosS(sph->pitch);
|
||||
|
|
@ -94,28 +92,26 @@ Vec3f* OLib_VecSphToVec3f(Vec3f* dest, VecSph* sph) {
|
|||
v.y = sph->r * cosPitch;
|
||||
v.z = sph->r * sinPitch * cosYaw;
|
||||
|
||||
*dest = v;
|
||||
|
||||
return dest;
|
||||
return v;
|
||||
}
|
||||
|
||||
/**
|
||||
* Takes the geographic point `geo` and converts it into a x,y,z position
|
||||
*/
|
||||
Vec3f* OLib_VecGeoToVec3f(Vec3f* dest, VecGeo* geo) {
|
||||
Vec3f OLib_VecGeoToVec3f(VecGeo* geo) {
|
||||
VecSph sph;
|
||||
|
||||
sph.r = geo->r;
|
||||
sph.pitch = 0x4000 - geo->pitch;
|
||||
sph.yaw = geo->yaw;
|
||||
|
||||
return OLib_VecSphToVec3f(dest, &sph);
|
||||
return OLib_VecSphToVec3f(&sph);
|
||||
}
|
||||
|
||||
/**
|
||||
* Takes the point `vec`, and converts it into a spherical coordinate
|
||||
*/
|
||||
VecSph* OLib_Vec3fToVecSph(VecSph* dest, Vec3f* vec) {
|
||||
VecSph OLib_Vec3fToVecSph(Vec3f* vec) {
|
||||
VecSph sph;
|
||||
f32 distXZSq = SQ(vec->x) + SQ(vec->z);
|
||||
f32 distXZ = sqrtf(distXZSq);
|
||||
|
|
@ -133,118 +129,100 @@ VecSph* OLib_Vec3fToVecSph(VecSph* dest, Vec3f* vec) {
|
|||
sph.yaw = CAM_DEG_TO_BINANG(RAD_TO_DEG(Math_FAtan2F(vec->x, vec->z)));
|
||||
}
|
||||
|
||||
*dest = sph;
|
||||
|
||||
return dest;
|
||||
return sph;
|
||||
}
|
||||
|
||||
/**
|
||||
* Takes the point `vec`, and converts it to a geographic coordinate
|
||||
*/
|
||||
VecGeo* OLib_Vec3fToVecGeo(VecGeo* dest, Vec3f* vec) {
|
||||
VecSph sph;
|
||||
VecGeo OLib_Vec3fToVecGeo(Vec3f* vec) {
|
||||
VecSph sph = OLib_Vec3fToVecSph(vec);
|
||||
|
||||
OLib_Vec3fToVecSph(&sph, vec);
|
||||
sph.pitch = 0x4000 - sph.pitch;
|
||||
|
||||
*dest = sph;
|
||||
|
||||
return dest;
|
||||
return sph;
|
||||
}
|
||||
|
||||
/**
|
||||
* Takes the differences of positions `a` and `b`, and converts them to spherical coordinates
|
||||
*/
|
||||
VecSph* OLib_Vec3fDiffToVecSph(VecSph* dest, Vec3f* a, Vec3f* b) {
|
||||
VecSph OLib_Vec3fDiffToVecSph(Vec3f* a, Vec3f* b) {
|
||||
Vec3f diff;
|
||||
|
||||
diff.x = b->x - a->x;
|
||||
diff.y = b->y - a->y;
|
||||
diff.z = b->z - a->z;
|
||||
|
||||
return OLib_Vec3fToVecSph(dest, &diff);
|
||||
return OLib_Vec3fToVecSph(&diff);
|
||||
}
|
||||
|
||||
/**
|
||||
* Takes the difference of positions `a` and `b`, and converts them to geographic coordinates
|
||||
*/
|
||||
VecGeo* OLib_Vec3fDiffToVecGeo(VecGeo* dest, Vec3f* a, Vec3f* b) {
|
||||
VecGeo OLib_Vec3fDiffToVecGeo(Vec3f* a, Vec3f* b) {
|
||||
Vec3f diff;
|
||||
|
||||
diff.x = b->x - a->x;
|
||||
diff.y = b->y - a->y;
|
||||
diff.z = b->z - a->z;
|
||||
|
||||
return OLib_Vec3fToVecGeo(dest, &diff);
|
||||
return OLib_Vec3fToVecGeo(&diff);
|
||||
}
|
||||
|
||||
/**
|
||||
* Takes the sum of positions `a` (x,y,z coordinates) and `geo` (geographic coordinates), result is in x,y,z position
|
||||
* Identical to Quake_AddVec from OoT
|
||||
*/
|
||||
Vec3f* OLib_AddVecGeoToVec3f(Vec3f* dest, Vec3f* a, VecGeo* geo) {
|
||||
Vec3f OLib_AddVecGeoToVec3f(Vec3f* a, VecGeo* geo) {
|
||||
Vec3f sum;
|
||||
Vec3f b;
|
||||
Vec3f b = OLib_VecGeoToVec3f(geo);
|
||||
|
||||
OLib_VecGeoToVec3f(&b, geo);
|
||||
sum.x = a->x + b.x;
|
||||
sum.y = a->y + b.y;
|
||||
sum.z = a->z + b.z;
|
||||
|
||||
*dest = sum;
|
||||
|
||||
return dest;
|
||||
return sum;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the pitch/yaw of the vector formed from `b`-`a`, result is in radians
|
||||
*/
|
||||
Vec3f* OLib_Vec3fDiffRad(Vec3f* dest, Vec3f* a, Vec3f* b) {
|
||||
Vec3f OLib_Vec3fDiffRad(Vec3f* a, Vec3f* b) {
|
||||
Vec3f anglesRad;
|
||||
|
||||
anglesRad.x = Math_FAtan2F(b->z - a->z, b->y - a->y);
|
||||
anglesRad.y = Math_FAtan2F(b->x - a->x, b->z - a->z);
|
||||
anglesRad.z = 0;
|
||||
|
||||
*dest = anglesRad;
|
||||
|
||||
return dest;
|
||||
return anglesRad;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the pitch/yaw of the vector formed from `b`-`a`, result is in degrees
|
||||
*/
|
||||
Vec3f* OLib_Vec3fDiffDegF(Vec3f* dest, Vec3f* a, Vec3f* b) {
|
||||
Vec3f anglesRad;
|
||||
Vec3f OLib_Vec3fDiffDegF(Vec3f* a, Vec3f* b) {
|
||||
Vec3f anglesRad = OLib_Vec3fDiffRad(a, b);
|
||||
Vec3f anglesDegrees;
|
||||
|
||||
OLib_Vec3fDiffRad(&anglesRad, a, b);
|
||||
|
||||
anglesDegrees.x = RAD_TO_DEG(anglesRad.x);
|
||||
anglesDegrees.y = RAD_TO_DEG(anglesRad.y);
|
||||
anglesDegrees.z = 0.0f;
|
||||
|
||||
*dest = anglesDegrees;
|
||||
|
||||
return dest;
|
||||
return anglesDegrees;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the pitch/yaw of the vector formed from `b`-`a`, result is in binary degrees
|
||||
*/
|
||||
Vec3s* OLib_Vec3fDiffBinAng(Vec3s* dest, Vec3f* a, Vec3f* b) {
|
||||
Vec3f anglesRad;
|
||||
Vec3s OLib_Vec3fDiffBinAng(Vec3f* a, Vec3f* b) {
|
||||
Vec3f anglesRad = OLib_Vec3fDiffRad(a, b);
|
||||
Vec3s anglesBinAng;
|
||||
|
||||
OLib_Vec3fDiffRad(&anglesRad, a, b);
|
||||
|
||||
anglesBinAng.x = CAM_DEG_TO_BINANG(RAD_TO_DEG(anglesRad.x));
|
||||
anglesBinAng.y = CAM_DEG_TO_BINANG(RAD_TO_DEG(anglesRad.y));
|
||||
anglesBinAng.z = 0.0f;
|
||||
|
||||
*dest = anglesBinAng;
|
||||
|
||||
return dest;
|
||||
return anglesBinAng;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -255,9 +233,9 @@ void OLib_Vec3fDiff(PosRot* a, Vec3f* b, Vec3f* dest, s16 mode) {
|
|||
|
||||
switch (mode) {
|
||||
case OLIB_DIFF_OFFSET:
|
||||
OLib_Vec3fDiffToVecGeo(&geo, &a->pos, b);
|
||||
geo = OLib_Vec3fDiffToVecGeo(&a->pos, b);
|
||||
geo.yaw -= a->rot.y;
|
||||
OLib_VecGeoToVec3f(dest, &geo);
|
||||
*dest = OLib_VecGeoToVec3f(&geo);
|
||||
break;
|
||||
|
||||
case OLIB_DIFF:
|
||||
|
|
@ -280,9 +258,9 @@ void OLib_Vec3fAdd(PosRot* a, Vec3f* b, Vec3f* dest, s16 mode) {
|
|||
|
||||
switch (mode) {
|
||||
case OLIB_ADD_OFFSET:
|
||||
OLib_Vec3fToVecGeo(&geo, b);
|
||||
geo = OLib_Vec3fToVecGeo(b);
|
||||
geo.yaw += a->rot.y;
|
||||
OLib_AddVecGeoToVec3f(dest, &a->pos, &geo);
|
||||
*dest = OLib_AddVecGeoToVec3f(&a->pos, &geo);
|
||||
break;
|
||||
|
||||
case OLIB_ADD:
|
||||
|
|
|
|||
|
|
@ -1129,10 +1129,10 @@ void Play_PostWorldDraw(PlayState* this) {
|
|||
|
||||
void Play_DrawMain(PlayState* this) {
|
||||
GraphicsContext* gfxCtx = this->state.gfxCtx;
|
||||
Lights* sp268;
|
||||
Lights* lights;
|
||||
Vec3f temp;
|
||||
u8 sp25B = false;
|
||||
f32 var_fv0; // zFar
|
||||
f32 zFar;
|
||||
|
||||
if (R_PAUSE_BG_PRERENDER_STATE >= PAUSE_BG_PRERENDER_UNK4) {
|
||||
PreRender_ApplyFiltersSlowlyDestroy(&this->pauseBgPreRender);
|
||||
|
|
@ -1169,19 +1169,17 @@ void Play_DrawMain(PlayState* this) {
|
|||
gSPSegment(OVERLAY_DISP++, 0x02, this->sceneSegment);
|
||||
|
||||
if (1) {
|
||||
|
||||
ShrinkWindow_Draw(gfxCtx);
|
||||
|
||||
POLY_OPA_DISP = Play_SetFog(this, POLY_OPA_DISP);
|
||||
POLY_XLU_DISP = Play_SetFog(this, POLY_XLU_DISP);
|
||||
|
||||
// zFar
|
||||
var_fv0 = this->lightCtx.zFar;
|
||||
if (var_fv0 > 12800.0f) {
|
||||
var_fv0 = 12800.0f;
|
||||
zFar = this->lightCtx.zFar;
|
||||
if (zFar > 12800.0f) {
|
||||
zFar = 12800.0f;
|
||||
}
|
||||
|
||||
View_SetPerspective(&this->view, this->view.fovy, this->view.zNear, var_fv0);
|
||||
View_SetPerspective(&this->view, this->view.fovy, this->view.zNear, zFar);
|
||||
|
||||
View_Apply(&this->view, 0xF);
|
||||
|
||||
|
|
@ -1293,14 +1291,14 @@ void Play_DrawMain(PlayState* this) {
|
|||
Environment_Draw(this);
|
||||
}
|
||||
|
||||
sp268 = LightContext_NewLights(&this->lightCtx, gfxCtx);
|
||||
lights = LightContext_NewLights(&this->lightCtx, gfxCtx);
|
||||
|
||||
if (this->roomCtx.curRoom.enablePosLights || (MREG(93) != 0)) {
|
||||
sp268->enablePosLights = true;
|
||||
lights->enablePosLights = true;
|
||||
}
|
||||
|
||||
Lights_BindAll(sp268, this->lightCtx.listHead, NULL, this);
|
||||
Lights_Draw(sp268, gfxCtx);
|
||||
Lights_BindAll(lights, this->lightCtx.listHead, NULL, this);
|
||||
Lights_Draw(lights, gfxCtx);
|
||||
|
||||
if (1) {
|
||||
u32 roomDrawFlags = ((1) ? 1 : 0) | (((void)0, 1) ? 2 : 0); // FAKE:
|
||||
|
|
@ -1313,12 +1311,12 @@ void Play_DrawMain(PlayState* this) {
|
|||
}
|
||||
|
||||
if (this->skyboxCtx.skyboxShouldDraw) {
|
||||
Vec3f sp78;
|
||||
Vec3f quakeOffset;
|
||||
|
||||
if (1) {
|
||||
Camera_GetQuakeOffset(&sp78, GET_ACTIVE_CAM(this));
|
||||
Skybox_Draw(&this->skyboxCtx, gfxCtx, this->skyboxId, 0, this->view.eye.x + sp78.x,
|
||||
this->view.eye.y + sp78.y, this->view.eye.z + sp78.z);
|
||||
quakeOffset = Camera_GetQuakeOffset(GET_ACTIVE_CAM(this));
|
||||
Skybox_Draw(&this->skyboxCtx, gfxCtx, this->skyboxId, 0, this->view.eye.x + quakeOffset.x,
|
||||
this->view.eye.y + quakeOffset.y, this->view.eye.z + quakeOffset.z);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@ void Quake_UpdateShakeInfo(QuakeRequest* req, ShakeInfo* shake, f32 yOffset, f32
|
|||
atEyeOffset.x = 0;
|
||||
atEyeOffset.y = 0;
|
||||
atEyeOffset.z = 0;
|
||||
OLib_Vec3fDiffToVecGeo(&eyeToAtGeo, eye, at);
|
||||
eyeToAtGeo = OLib_Vec3fDiffToVecGeo(eye, at);
|
||||
|
||||
// y shake
|
||||
geo.r = req->y * yOffset;
|
||||
|
|
@ -63,7 +63,7 @@ void Quake_UpdateShakeInfo(QuakeRequest* req, ShakeInfo* shake, f32 yOffset, f32
|
|||
geo.pitch = eyeToAtGeo.pitch + req->orientation.x + 0x4000;
|
||||
geo.yaw = eyeToAtGeo.yaw + req->orientation.y;
|
||||
// apply y shake
|
||||
OLib_AddVecGeoToVec3f(&atEyeOffset, &atEyeOffset, &geo);
|
||||
atEyeOffset = OLib_AddVecGeoToVec3f(&atEyeOffset, &geo);
|
||||
|
||||
// x shake
|
||||
geo.r = req->x * xOffset;
|
||||
|
|
@ -71,7 +71,7 @@ void Quake_UpdateShakeInfo(QuakeRequest* req, ShakeInfo* shake, f32 yOffset, f32
|
|||
geo.pitch = eyeToAtGeo.pitch + req->orientation.x;
|
||||
geo.yaw = eyeToAtGeo.yaw + req->orientation.y + 0x4000;
|
||||
// apply x shake
|
||||
OLib_AddVecGeoToVec3f(&atEyeOffset, &atEyeOffset, &geo);
|
||||
atEyeOffset = OLib_AddVecGeoToVec3f(&atEyeOffset, &geo);
|
||||
} else {
|
||||
atEyeOffset.x = 0;
|
||||
atEyeOffset.y = req->y * yOffset;
|
||||
|
|
@ -81,7 +81,7 @@ void Quake_UpdateShakeInfo(QuakeRequest* req, ShakeInfo* shake, f32 yOffset, f32
|
|||
geo.pitch = req->orientation.x;
|
||||
geo.yaw = req->orientation.y;
|
||||
|
||||
OLib_AddVecGeoToVec3f(&atEyeOffset, &atEyeOffset, &geo);
|
||||
atEyeOffset = OLib_AddVecGeoToVec3f(&atEyeOffset, &geo);
|
||||
}
|
||||
|
||||
shake->atOffset = shake->eyeOffset = atEyeOffset;
|
||||
|
|
@ -752,7 +752,7 @@ void Distortion_Update(void) {
|
|||
player = GET_PLAYER(play);
|
||||
|
||||
if (player != NULL) {
|
||||
Actor_GetWorldPosShapeRot(&playerPosRot, &player->actor);
|
||||
playerPosRot = Actor_GetWorldPosShapeRot(&player->actor);
|
||||
}
|
||||
|
||||
depthPhaseStep = 359.2f;
|
||||
|
|
|
|||
|
|
@ -332,7 +332,7 @@ void Room_DrawImageSingle(PlayState* play, Room* room, u32 flags) {
|
|||
{
|
||||
Vec3f quakeOffset;
|
||||
|
||||
Camera_GetQuakeOffset(&quakeOffset, activeCam);
|
||||
quakeOffset = Camera_GetQuakeOffset(activeCam);
|
||||
|
||||
Prerender_DrawBackground2D(
|
||||
&gfx, roomShape->source, roomShape->tlut, roomShape->width, roomShape->height, roomShape->fmt,
|
||||
|
|
@ -431,7 +431,8 @@ void Room_DrawImageMulti(PlayState* play, Room* room, u32 flags) {
|
|||
{
|
||||
Vec3f quakeOffset;
|
||||
|
||||
Camera_GetQuakeOffset(&quakeOffset, activeCam);
|
||||
quakeOffset = Camera_GetQuakeOffset(activeCam);
|
||||
|
||||
Prerender_DrawBackground2D(&gfx, bgEntry->source, bgEntry->tlut, bgEntry->width, bgEntry->height,
|
||||
bgEntry->fmt, bgEntry->siz, bgEntry->tlutMode, bgEntry->tlutCount,
|
||||
(quakeOffset.x + quakeOffset.z) * 1.2f + quakeOffset.y * 0.6f,
|
||||
|
|
|
|||
|
|
@ -83,7 +83,7 @@ void EffStk_Draw(Actor* thisx, PlayState* play) {
|
|||
Vec3f eye = activeCam->eye;
|
||||
Vec3f quakeOffset;
|
||||
|
||||
Camera_GetQuakeOffset(&quakeOffset, activeCam);
|
||||
quakeOffset = Camera_GetQuakeOffset(activeCam);
|
||||
|
||||
OPEN_DISPS(play->state.gfxCtx);
|
||||
|
||||
|
|
|
|||
|
|
@ -144,7 +144,7 @@ void func_8091C178(EnButte* this, PlayState* play) {
|
|||
sp48 = Math_SinS(D_8091D3A0) * 250.0f;
|
||||
sp48 = CLAMP(sp48, 0, 255);
|
||||
|
||||
Camera_GetCamDir(&sp40, GET_ACTIVE_CAM(play));
|
||||
sp40 = Camera_GetCamDir(GET_ACTIVE_CAM(play));
|
||||
Matrix_RotateYS(sp40.y, MTXMODE_NEW);
|
||||
Matrix_RotateXS(sp40.x, MTXMODE_APPLY);
|
||||
Matrix_RotateZS(sp40.z, MTXMODE_APPLY);
|
||||
|
|
|
|||
|
|
@ -786,7 +786,7 @@ void EnHonotrap_DrawFlameGroup(Actor* thisx, PlayState* play) {
|
|||
Gfx_SetupDL25_Xlu(play->state.gfxCtx);
|
||||
gDPSetPrimColor(POLY_XLU_DISP++, 0x80, 0x80, 255, 200, 0, 255);
|
||||
gDPSetEnvColor(POLY_XLU_DISP++, 255, 0, 0, 0);
|
||||
Camera_GetCamDir(&camDir, GET_ACTIVE_CAM(play));
|
||||
camDir = Camera_GetCamDir(GET_ACTIVE_CAM(play));
|
||||
camDir.y += 0x8000;
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(flameGroup->flameList); i++) {
|
||||
|
|
|
|||
|
|
@ -71,9 +71,7 @@ void OceffWipe_Draw(Actor* thisx, PlayState* play) {
|
|||
s32 i;
|
||||
Vec3f eye = GET_ACTIVE_CAM(play)->eye;
|
||||
Vtx* vtxPtr;
|
||||
Vec3f quakeOffset;
|
||||
|
||||
Camera_GetQuakeOffset(&quakeOffset, GET_ACTIVE_CAM(play));
|
||||
Vec3f quakeOffset = Camera_GetQuakeOffset(GET_ACTIVE_CAM(play));
|
||||
|
||||
OPEN_DISPS(play->state.gfxCtx);
|
||||
|
||||
|
|
|
|||
|
|
@ -65,9 +65,7 @@ void OceffWipe2_Draw(Actor* thisx, PlayState* play) {
|
|||
s32 pad[2];
|
||||
Vec3f eye = GET_ACTIVE_CAM(play)->eye;
|
||||
Vtx* vtxPtr;
|
||||
Vec3f quakeOffset;
|
||||
|
||||
Camera_GetQuakeOffset(&quakeOffset, GET_ACTIVE_CAM(play));
|
||||
Vec3f quakeOffset = Camera_GetQuakeOffset(GET_ACTIVE_CAM(play));
|
||||
|
||||
vtxPtr = sEponaSongFrustumVtx;
|
||||
|
||||
|
|
|
|||
|
|
@ -66,9 +66,7 @@ void OceffWipe3_Draw(Actor* thisx, PlayState* play) {
|
|||
s32 pad[2];
|
||||
Vec3f eye = GET_ACTIVE_CAM(play)->eye;
|
||||
Vtx* vtxPtr;
|
||||
Vec3f quakeOffset;
|
||||
|
||||
Camera_GetQuakeOffset(&quakeOffset, GET_ACTIVE_CAM(play));
|
||||
Vec3f quakeOffset = Camera_GetQuakeOffset(GET_ACTIVE_CAM(play));
|
||||
|
||||
vtxPtr = sSariaSongFrustumVtx;
|
||||
|
||||
|
|
|
|||
|
|
@ -65,9 +65,7 @@ void OceffWipe4_Draw(Actor* thisx, PlayState* play) {
|
|||
s32 pad[2];
|
||||
Vec3f eye = GET_ACTIVE_CAM(play)->eye;
|
||||
Vtx* vtxPtr;
|
||||
Vec3f quakeOffset;
|
||||
|
||||
Camera_GetQuakeOffset(&quakeOffset, GET_ACTIVE_CAM(play));
|
||||
Vec3f quakeOffset = Camera_GetQuakeOffset(GET_ACTIVE_CAM(play));
|
||||
|
||||
if (this->counter < 16) {
|
||||
z = Math_SinS(this->counter * 0x400) * 1220.0f;
|
||||
|
|
|
|||
|
|
@ -88,7 +88,7 @@ void OceffWipe5_Draw(Actor* thisx, PlayState* play) {
|
|||
colorIndex = 0;
|
||||
}
|
||||
|
||||
Camera_GetQuakeOffset(&quakeOffset, activeCam);
|
||||
quakeOffset = Camera_GetQuakeOffset(activeCam);
|
||||
|
||||
if (this->counter < 32) {
|
||||
z = Math_SinS(this->counter << 9) * phi_fv1;
|
||||
|
|
|
|||
|
|
@ -59,14 +59,11 @@ void OceffWipe6_Draw(Actor* thisx, PlayState* play) {
|
|||
u8 alpha;
|
||||
s32 i;
|
||||
s32 counter;
|
||||
Vec3f activeCamEye;
|
||||
Vec3f activeCamEye = GET_ACTIVE_CAM(play)->eye;
|
||||
s32 pad;
|
||||
Vec3f quakeOffset;
|
||||
Vec3f quakeOffset = Camera_GetQuakeOffset(GET_ACTIVE_CAM(play));
|
||||
s32 pad2;
|
||||
|
||||
activeCamEye = GET_ACTIVE_CAM(play)->eye;
|
||||
Camera_GetQuakeOffset(&quakeOffset, GET_ACTIVE_CAM(play));
|
||||
|
||||
if (this->counter < 32) {
|
||||
counter = this->counter;
|
||||
z = Math_SinS(counter * 0x200) * 1220.0f;
|
||||
|
|
|
|||
|
|
@ -65,11 +65,9 @@ void OceffWipe7_Draw(Actor* thisx, PlayState* play) {
|
|||
s32 counter;
|
||||
Vec3f activeCamEye = GET_ACTIVE_CAM(play)->eye;
|
||||
s32 pad;
|
||||
Vec3f quakeOffset;
|
||||
Vec3f quakeOffset = Camera_GetQuakeOffset(GET_ACTIVE_CAM(play));
|
||||
s32 pad2;
|
||||
|
||||
Camera_GetQuakeOffset(&quakeOffset, GET_ACTIVE_CAM(play));
|
||||
|
||||
if (this->counter < 32) {
|
||||
z = Math_SinS(this->counter * 0x200) * 1220.0f;
|
||||
} else {
|
||||
|
|
|
|||
Loading…
Reference in New Issue