mirror of
https://github.com/coop-deluxe/sm64coopdx.git
synced 2025-12-11 02:22:58 +00:00
Fixed crash in reset_camera()
This commit is contained in:
parent
3a807bee06
commit
fadb568519
1 changed files with 15 additions and 11 deletions
|
|
@ -3297,11 +3297,6 @@ void soft_reset_camera(struct Camera* c) {
|
||||||
* Reset all the camera variables to their arcane defaults
|
* Reset all the camera variables to their arcane defaults
|
||||||
*/
|
*/
|
||||||
void reset_camera(struct Camera *c) {
|
void reset_camera(struct Camera *c) {
|
||||||
UNUSED s32 unused = 0;
|
|
||||||
UNUSED u8 unused1[16];
|
|
||||||
UNUSED struct LinearTransitionPoint *start = &sModeInfo.transitionStart;
|
|
||||||
UNUSED struct LinearTransitionPoint *end = &sModeInfo.transitionEnd;
|
|
||||||
|
|
||||||
gCamera = c;
|
gCamera = c;
|
||||||
gCameraMovementFlags = 0;
|
gCameraMovementFlags = 0;
|
||||||
s2ndRotateFlags = 0;
|
s2ndRotateFlags = 0;
|
||||||
|
|
@ -3315,7 +3310,6 @@ void reset_camera(struct Camera *c) {
|
||||||
unused8032CFCC = 0;
|
unused8032CFCC = 0;
|
||||||
gSecondCameraFocus = NULL;
|
gSecondCameraFocus = NULL;
|
||||||
sCButtonsPressed = 0;
|
sCButtonsPressed = 0;
|
||||||
vec3f_copy(sModeTransition.marioPos, sMarioCamState->pos);
|
|
||||||
sModeTransition.framesLeft = 0;
|
sModeTransition.framesLeft = 0;
|
||||||
unused8032CFCC = -1;
|
unused8032CFCC = -1;
|
||||||
unused8032CFC8 = -1;
|
unused8032CFC8 = -1;
|
||||||
|
|
@ -3340,11 +3334,19 @@ void reset_camera(struct Camera *c) {
|
||||||
sCSideButtonYaw = 0;
|
sCSideButtonYaw = 0;
|
||||||
s8DirModeBaseYaw = 0;
|
s8DirModeBaseYaw = 0;
|
||||||
s8DirModeYawOffset = 0;
|
s8DirModeYawOffset = 0;
|
||||||
|
|
||||||
|
if (c) {
|
||||||
c->doorStatus = DOOR_DEFAULT;
|
c->doorStatus = DOOR_DEFAULT;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (sMarioCamState) {
|
||||||
|
vec3f_copy(sModeTransition.marioPos, sMarioCamState->pos);
|
||||||
sMarioCamState->headRotation[0] = 0;
|
sMarioCamState->headRotation[0] = 0;
|
||||||
sMarioCamState->headRotation[1] = 0;
|
sMarioCamState->headRotation[1] = 0;
|
||||||
sMarioCamState->cameraEvent = 0;
|
sMarioCamState->cameraEvent = 0;
|
||||||
sMarioCamState->usedObj = NULL;
|
sMarioCamState->usedObj = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
gLakituState.shakeMagnitude[0] = 0;
|
gLakituState.shakeMagnitude[0] = 0;
|
||||||
gLakituState.shakeMagnitude[1] = 0;
|
gLakituState.shakeMagnitude[1] = 0;
|
||||||
gLakituState.shakeMagnitude[2] = 0;
|
gLakituState.shakeMagnitude[2] = 0;
|
||||||
|
|
@ -3355,12 +3357,14 @@ void reset_camera(struct Camera *c) {
|
||||||
gLakituState.unusedVec1[1] = 0.f;
|
gLakituState.unusedVec1[1] = 0.f;
|
||||||
gLakituState.unusedVec1[2] = 0.f;
|
gLakituState.unusedVec1[2] = 0.f;
|
||||||
gLakituState.lastFrameAction = 0;
|
gLakituState.lastFrameAction = 0;
|
||||||
|
|
||||||
set_fov_function(CAM_FOV_DEFAULT);
|
set_fov_function(CAM_FOV_DEFAULT);
|
||||||
sFOVState.fov = 45.f;
|
sFOVState.fov = 45.f;
|
||||||
sFOVState.fovOffset = 0.f;
|
sFOVState.fovOffset = 0.f;
|
||||||
sFOVState.unusedIsSleeping = 0;
|
sFOVState.unusedIsSleeping = 0;
|
||||||
sFOVState.shakeAmplitude = 0.f;
|
sFOVState.shakeAmplitude = 0.f;
|
||||||
sFOVState.shakePhase = 0;
|
sFOVState.shakePhase = 0;
|
||||||
|
|
||||||
sObjectCutscene = 0;
|
sObjectCutscene = 0;
|
||||||
gRecentCutscene = 0;
|
gRecentCutscene = 0;
|
||||||
unused8033B30C = 0;
|
unused8033B30C = 0;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue