mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-11-25 19:02:19 -05:00
Rumble and check tracker fixes (#2419)
* Fix rumble * Fix check tracker crash
This commit is contained in:
parent
544460d909
commit
44f963e310
@ -115,9 +115,10 @@ void DrawCheckTracker(bool& open) {
|
||||
|
||||
ImGui::SetNextWindowSize(ImVec2(400, 540), ImGuiCond_FirstUseEver);
|
||||
|
||||
if (doInitialize)
|
||||
if (doInitialize) {
|
||||
Teardown();
|
||||
InitializeChecks();
|
||||
else if (initialized && (gPlayState == nullptr || gSaveContext.fileNum < 0 || gSaveContext.fileNum > 2)) {
|
||||
} else if (initialized && (gPlayState == nullptr || gSaveContext.fileNum < 0 || gSaveContext.fileNum > 2)) {
|
||||
Teardown();
|
||||
return;
|
||||
}
|
||||
|
@ -3,8 +3,12 @@
|
||||
UnkRumbleStruct D_80160FD0;
|
||||
|
||||
void func_800A9F30(PadMgr* a, s32 b) {
|
||||
func_800D2E30(&D_80160FD0);
|
||||
PadMgr_RumbleSet(a, D_80160FD0.rumbleEnable);
|
||||
// TODO: Workaround for rumble being too long. Implement os thread functions.
|
||||
// Game logic runs at 20hz but input thread runs at 60 hertz, so we call this 3 times
|
||||
for (int i = 0; i < 3; i++) {
|
||||
func_800D2E30(&D_80160FD0);
|
||||
PadMgr_RumbleSet(a, D_80160FD0.rumbleEnable);
|
||||
}
|
||||
}
|
||||
|
||||
void func_800A9F6C(f32 a, u8 b, u8 c, u8 d) {
|
||||
|
@ -357,20 +357,16 @@ void PadMgr_HandleRetraceMsg(PadMgr* padMgr) {
|
||||
}
|
||||
padMgr->validCtrlrsMask = mask;
|
||||
|
||||
// TODO: Workaround for rumble being too long. Implement os thread functions.
|
||||
// Game logic runs at 20hz but input thread runs at 60 hertz, so we call this 3 times
|
||||
for (i = 0; i < 3; i++) {
|
||||
/* if (gFaultStruct.msgId) {
|
||||
PadMgr_RumbleStop(padMgr);
|
||||
} else */ if (padMgr->rumbleOffFrames > 0) {
|
||||
--padMgr->rumbleOffFrames;
|
||||
PadMgr_RumbleStop(padMgr);
|
||||
} else if (padMgr->rumbleOnFrames == 0) {
|
||||
PadMgr_RumbleStop(padMgr);
|
||||
} else if (!padMgr->preNMIShutdown) {
|
||||
PadMgr_RumbleControl(padMgr);
|
||||
--padMgr->rumbleOnFrames;
|
||||
}
|
||||
/* if (gFaultStruct.msgId) {
|
||||
PadMgr_RumbleStop(padMgr);
|
||||
} else */ if (padMgr->rumbleOffFrames > 0) {
|
||||
--padMgr->rumbleOffFrames;
|
||||
PadMgr_RumbleStop(padMgr);
|
||||
} else if (padMgr->rumbleOnFrames == 0) {
|
||||
PadMgr_RumbleStop(padMgr);
|
||||
} else if (!padMgr->preNMIShutdown) {
|
||||
PadMgr_RumbleControl(padMgr);
|
||||
--padMgr->rumbleOnFrames;
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user