mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-01-10 21:48:17 -05:00
Adds camera sensitivity option back (#1817)
* Adds camera sensitivity option * Fixes default values * Fixes default values (for real this time)
This commit is contained in:
parent
76942aeaee
commit
c914bd20b8
@ -242,6 +242,7 @@ namespace GameControlEditor {
|
|||||||
ImGui::SetCursorPosX(ImGui::GetCursorPosX() + 5);
|
ImGui::SetCursorPosX(ImGui::GetCursorPosX() + 5);
|
||||||
UIWidgets::PaddedEnhancementCheckbox("Disable Auto-Centering in First Person View", "gDisableAutoCenterView");
|
UIWidgets::PaddedEnhancementCheckbox("Disable Auto-Centering in First Person View", "gDisableAutoCenterView");
|
||||||
DrawHelpIcon("Prevents the C-Up view from auto-centering, allowing for Gyro Aiming");
|
DrawHelpIcon("Prevents the C-Up view from auto-centering, allowing for Gyro Aiming");
|
||||||
|
UIWidgets::EnhancementSliderFloat("Camera Sensitivity: %d %%", "##Sensitivity", "gCameraSensitivity", 0.01f, 5.0f, "", 1.0f, true, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DrawUI(bool& open) {
|
void DrawUI(bool& open) {
|
||||||
|
@ -1485,8 +1485,8 @@ s32 Camera_Free(Camera* camera) {
|
|||||||
|
|
||||||
camera->animState = 1;
|
camera->animState = 1;
|
||||||
|
|
||||||
f32 newCamX = -D_8015BD7C->state.input[0].cur.right_stick_x * 10.0f;
|
f32 newCamX = -D_8015BD7C->state.input[0].cur.right_stick_x * 10.0f * (CVar_GetFloat("gCameraSensitivity", 1.0f));
|
||||||
f32 newCamY = D_8015BD7C->state.input[0].cur.right_stick_y * 10.0f;
|
f32 newCamY = D_8015BD7C->state.input[0].cur.right_stick_y * 10.0f * (CVar_GetFloat("gCameraSensitivity", 1.0f));
|
||||||
|
|
||||||
camera->globalCtx->camX += newCamX * (CVar_GetS32("gInvertXAxis", 0) ? -1 : 1);
|
camera->globalCtx->camX += newCamX * (CVar_GetS32("gInvertXAxis", 0) ? -1 : 1);
|
||||||
camera->globalCtx->camY += newCamY * (CVar_GetS32("gInvertYAxis", 1) ? 1 : -1);
|
camera->globalCtx->camY += newCamY * (CVar_GetS32("gInvertYAxis", 1) ? 1 : -1);
|
||||||
|
@ -11230,17 +11230,17 @@ s16 func_8084ABD8(GlobalContext* globalCtx, Player* this, s32 arg2, s16 arg3) {
|
|||||||
|
|
||||||
if (!func_8002DD78(this) && !func_808334B4(this) && (arg2 == 0)) {
|
if (!func_8002DD78(this) && !func_808334B4(this) && (arg2 == 0)) {
|
||||||
if (!CVar_GetS32("gDisableAutoCenterView", 0)) {
|
if (!CVar_GetS32("gDisableAutoCenterView", 0)) {
|
||||||
temp2 = sControlInput->rel.stick_y * 240.0f * (CVar_GetS32("gInvertYAxis", 1) ? 1 : -1);
|
temp2 = sControlInput->rel.stick_y * 240.0f * (CVar_GetS32("gInvertYAxis", 1) ? 1 : -1); // Sensitivity not applied here because higher than default sensitivies will allow the camera to escape the autocentering, and glitch out massively
|
||||||
Math_SmoothStepToS(&this->actor.focus.rot.x, temp2, 14, 4000, 30);
|
Math_SmoothStepToS(&this->actor.focus.rot.x, temp2, 14, 4000, 30);
|
||||||
|
|
||||||
temp2 = sControlInput->rel.stick_x * -16.0f * (CVar_GetS32("gInvertXAxis", 0) ? -1 : 1);
|
temp2 = sControlInput->rel.stick_x * -16.0f * (CVar_GetS32("gInvertXAxis", 0) ? -1 : 1) * (CVar_GetFloat("gCameraSensitivity", 1.0f));
|
||||||
temp2 = CLAMP(temp2, -3000, 3000);
|
temp2 = CLAMP(temp2, -3000, 3000);
|
||||||
this->actor.focus.rot.y += temp2;
|
this->actor.focus.rot.y += temp2;
|
||||||
} else {
|
} else {
|
||||||
temp1 = (this->stateFlags1 & PLAYER_STATE1_23) ? 3500 : 14000;
|
temp1 = (this->stateFlags1 & PLAYER_STATE1_23) ? 3500 : 14000;
|
||||||
temp3 = ((sControlInput->rel.stick_y >= 0) ? 1 : -1) *
|
temp3 = ((sControlInput->rel.stick_y >= 0) ? 1 : -1) *
|
||||||
(s32)((1.0f - Math_CosS(sControlInput->rel.stick_y * 200)) * 1500.0f *
|
(s32)((1.0f - Math_CosS(sControlInput->rel.stick_y * 200)) * 1500.0f *
|
||||||
(CVar_GetS32("gInvertYAxis", 1) ? 1 : -1));
|
(CVar_GetS32("gInvertYAxis", 1) ? 1 : -1)) * (CVar_GetFloat("gCameraSensitivity", 1.0f));
|
||||||
this->actor.focus.rot.x += temp3;
|
this->actor.focus.rot.x += temp3;
|
||||||
|
|
||||||
if (fabsf(sControlInput->cur.gyro_x) > 0.01f) {
|
if (fabsf(sControlInput->cur.gyro_x) > 0.01f) {
|
||||||
@ -11249,7 +11249,7 @@ s16 func_8084ABD8(GlobalContext* globalCtx, Player* this, s32 arg2, s16 arg3) {
|
|||||||
|
|
||||||
if (fabsf(sControlInput->cur.right_stick_y) > 15.0f && CVar_GetS32("gRightStickAiming", 0) != 0) {
|
if (fabsf(sControlInput->cur.right_stick_y) > 15.0f && CVar_GetS32("gRightStickAiming", 0) != 0) {
|
||||||
this->actor.focus.rot.x -=
|
this->actor.focus.rot.x -=
|
||||||
(sControlInput->cur.right_stick_y) * 10.0f * (CVar_GetS32("gInvertYAxis", 1) ? -1 : 1);
|
(sControlInput->cur.right_stick_y) * 10.0f * (CVar_GetS32("gInvertYAxis", 1) ? -1 : 1) * (CVar_GetFloat("gCameraSensitivity", 1.0f));
|
||||||
}
|
}
|
||||||
|
|
||||||
this->actor.focus.rot.x = CLAMP(this->actor.focus.rot.x, -temp1, temp1);
|
this->actor.focus.rot.x = CLAMP(this->actor.focus.rot.x, -temp1, temp1);
|
||||||
@ -11258,7 +11258,7 @@ s16 func_8084ABD8(GlobalContext* globalCtx, Player* this, s32 arg2, s16 arg3) {
|
|||||||
temp2 = this->actor.focus.rot.y - this->actor.shape.rot.y;
|
temp2 = this->actor.focus.rot.y - this->actor.shape.rot.y;
|
||||||
temp3 = ((sControlInput->rel.stick_x >= 0) ? 1 : -1) *
|
temp3 = ((sControlInput->rel.stick_x >= 0) ? 1 : -1) *
|
||||||
(s32)((1.0f - Math_CosS(sControlInput->rel.stick_x * 200)) * -1500.0f *
|
(s32)((1.0f - Math_CosS(sControlInput->rel.stick_x * 200)) * -1500.0f *
|
||||||
(CVar_GetS32("gInvertXAxis", 0) ? -1 : 1));
|
(CVar_GetS32("gInvertXAxis", 0) ? -1 : 1)) * (CVar_GetFloat("gCameraSensitivity", 1.0f));
|
||||||
temp2 += temp3;
|
temp2 += temp3;
|
||||||
|
|
||||||
this->actor.focus.rot.y = CLAMP(temp2, -temp1, temp1) + this->actor.shape.rot.y;
|
this->actor.focus.rot.y = CLAMP(temp2, -temp1, temp1) + this->actor.shape.rot.y;
|
||||||
@ -11269,14 +11269,14 @@ s16 func_8084ABD8(GlobalContext* globalCtx, Player* this, s32 arg2, s16 arg3) {
|
|||||||
|
|
||||||
if (fabsf(sControlInput->cur.right_stick_x) > 15.0f && CVar_GetS32("gRightStickAiming", 0) != 0) {
|
if (fabsf(sControlInput->cur.right_stick_x) > 15.0f && CVar_GetS32("gRightStickAiming", 0) != 0) {
|
||||||
this->actor.focus.rot.y +=
|
this->actor.focus.rot.y +=
|
||||||
(sControlInput->cur.right_stick_x) * 10.0f * (CVar_GetS32("gInvertXAxis", 0) ? 1 : -1);
|
(sControlInput->cur.right_stick_x) * 10.0f * (CVar_GetS32("gInvertXAxis", 0) ? 1 : -1) * (CVar_GetFloat("gCameraSensitivity", 1.0f));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
temp1 = (this->stateFlags1 & PLAYER_STATE1_23) ? 3500 : 14000;
|
temp1 = (this->stateFlags1 & PLAYER_STATE1_23) ? 3500 : 14000;
|
||||||
temp3 =
|
temp3 =
|
||||||
((sControlInput->rel.stick_y >= 0) ? 1 : -1) * (s32)((1.0f - Math_CosS(sControlInput->rel.stick_y * 200)) *
|
((sControlInput->rel.stick_y >= 0) ? 1 : -1) * (s32)((1.0f - Math_CosS(sControlInput->rel.stick_y * 200)) *
|
||||||
1500.0f * (CVar_GetS32("gInvertYAxis", 1) ? 1 : -1));
|
1500.0f * (CVar_GetS32("gInvertYAxis", 1) ? 1 : -1)) * (CVar_GetFloat("gCameraSensitivity", 1.0f));
|
||||||
this->actor.focus.rot.x += temp3;
|
this->actor.focus.rot.x += temp3;
|
||||||
|
|
||||||
if (fabsf(sControlInput->cur.gyro_x) > 0.01f) {
|
if (fabsf(sControlInput->cur.gyro_x) > 0.01f) {
|
||||||
@ -11285,7 +11285,7 @@ s16 func_8084ABD8(GlobalContext* globalCtx, Player* this, s32 arg2, s16 arg3) {
|
|||||||
|
|
||||||
if (fabsf(sControlInput->cur.right_stick_y) > 15.0f && CVar_GetS32("gRightStickAiming", 0) != 0) {
|
if (fabsf(sControlInput->cur.right_stick_y) > 15.0f && CVar_GetS32("gRightStickAiming", 0) != 0) {
|
||||||
this->actor.focus.rot.x -=
|
this->actor.focus.rot.x -=
|
||||||
(sControlInput->cur.right_stick_y) * 10.0f * (CVar_GetS32("gInvertYAxis", 1) ? -1 : 1);
|
(sControlInput->cur.right_stick_y) * 10.0f * (CVar_GetS32("gInvertYAxis", 1) ? -1 : 1) * (CVar_GetFloat("gCameraSensitivity", 1.0f));
|
||||||
}
|
}
|
||||||
|
|
||||||
this->actor.focus.rot.x = CLAMP(this->actor.focus.rot.x, -temp1, temp1);
|
this->actor.focus.rot.x = CLAMP(this->actor.focus.rot.x, -temp1, temp1);
|
||||||
@ -11294,7 +11294,7 @@ s16 func_8084ABD8(GlobalContext* globalCtx, Player* this, s32 arg2, s16 arg3) {
|
|||||||
temp2 = this->actor.focus.rot.y - this->actor.shape.rot.y;
|
temp2 = this->actor.focus.rot.y - this->actor.shape.rot.y;
|
||||||
temp3 =
|
temp3 =
|
||||||
((sControlInput->rel.stick_x >= 0) ? 1 : -1) * (s32)((1.0f - Math_CosS(sControlInput->rel.stick_x * 200)) *
|
((sControlInput->rel.stick_x >= 0) ? 1 : -1) * (s32)((1.0f - Math_CosS(sControlInput->rel.stick_x * 200)) *
|
||||||
-1500.0f * (CVar_GetS32("gInvertXAxis", 0) ? -1 : 1));
|
-1500.0f * (CVar_GetS32("gInvertXAxis", 0) ? -1 : 1)) * (CVar_GetFloat("gCameraSensitivity", 1.0f));
|
||||||
temp2 += temp3;
|
temp2 += temp3;
|
||||||
|
|
||||||
this->actor.focus.rot.y = CLAMP(temp2, -temp1, temp1) + this->actor.shape.rot.y;
|
this->actor.focus.rot.y = CLAMP(temp2, -temp1, temp1) + this->actor.shape.rot.y;
|
||||||
@ -11305,7 +11305,7 @@ s16 func_8084ABD8(GlobalContext* globalCtx, Player* this, s32 arg2, s16 arg3) {
|
|||||||
|
|
||||||
if (fabsf(sControlInput->cur.right_stick_x) > 15.0f && CVar_GetS32("gRightStickAiming", 0) != 0) {
|
if (fabsf(sControlInput->cur.right_stick_x) > 15.0f && CVar_GetS32("gRightStickAiming", 0) != 0) {
|
||||||
this->actor.focus.rot.y +=
|
this->actor.focus.rot.y +=
|
||||||
(sControlInput->cur.right_stick_x) * 10.0f * (CVar_GetS32("gInvertXAxis", 0) ? 1 : -1);
|
(sControlInput->cur.right_stick_x) * 10.0f * (CVar_GetS32("gInvertXAxis", 0) ? 1 : -1) * (CVar_GetFloat("gCameraSensitivity", 1.0f));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user