Merge pull request #205 from Splendide-Imaginarius/mkxp-z-mouse-hires

Fix mouse position in hires mode
This commit is contained in:
Splendide Imaginarius 2024-07-29 12:54:36 +00:00 committed by GitHub
commit 68a508b027
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1441,14 +1441,28 @@ int Input::mouseX()
{ {
RGSSThreadData &rtData = shState->rtData(); RGSSThreadData &rtData = shState->rtData();
return (p->mousePos[0] - rtData.screenOffset.x) * rtData.sizeResoRatio.x; int hiresResult = (p->mousePos[0] - rtData.screenOffset.x) * rtData.sizeResoRatio.x;
if (shState->config().enableHires) {
double framebufferScalingFactor = shState->config().framebufferScalingFactor;
return (int)lround(hiresResult / framebufferScalingFactor);
}
return hiresResult;
} }
int Input::mouseY() int Input::mouseY()
{ {
RGSSThreadData &rtData = shState->rtData(); RGSSThreadData &rtData = shState->rtData();
return (p->mousePos[1] - rtData.screenOffset.y) * rtData.sizeResoRatio.y; int hiresResult = (p->mousePos[1] - rtData.screenOffset.y) * rtData.sizeResoRatio.y;
if (shState->config().enableHires) {
double framebufferScalingFactor = shState->config().framebufferScalingFactor;
return (int)lround(hiresResult / framebufferScalingFactor);
}
return hiresResult;
} }
int Input::scrollV() int Input::scrollV()