90% fixes, 10% skel refactoring

This commit is contained in:
eray orçunus
2020-07-24 20:43:51 +03:00
parent 53e7cbbd5a
commit ad6094ca1d
12 changed files with 104 additions and 50 deletions

View File

@ -5155,13 +5155,10 @@ CMenuManager::SwitchMenuOnAndOff()
m_bMenuActive = !m_bMenuActive;
if (m_bMenuActive) {
#if defined RW_D3D9 || defined RWLIBS
if (_InputMouseNeedsExclusive()) {
_InputShutdownMouse();
_InputInitialiseMouse(false);
}
#endif
Initialise();
LoadAllTextures();
} else {
@ -5173,12 +5170,10 @@ CMenuManager::SwitchMenuOnAndOff()
DoRWStuffEndOfFrame();
DoRWStuffStartOfFrame(0, 0, 0, 0, 0, 0, 255);
DoRWStuffEndOfFrame();
#if defined RW_D3D9 || defined RWLIBS
if (_InputMouseNeedsExclusive()) {
_InputShutdownMouse();
_InputInitialiseMouse(true);
}
#endif
#ifdef PS2_LIKE_MENU
bottomBarActive = false;
@ -5223,12 +5218,10 @@ CMenuManager::SwitchMenuOnAndOff()
m_bMenuActive = true;
m_OnlySaveMenu = true;
#if defined RW_D3D9 || defined RWLIBS
if (_InputMouseNeedsExclusive()) {
_InputShutdownMouse();
_InputInitialiseMouse(false);
}
#endif
Initialise();
LoadAllTextures();

View File

@ -722,9 +722,9 @@ CMouseControllerState CMousePointerStateHelper::GetMouseSetUp()
void CPad::UpdateMouse()
{
#if defined RW_D3D9 || defined RWLIBS
if ( IsForegroundApp() )
{
#if defined RW_D3D9 || defined RWLIBS
if ( PSGLOBAL(mouse) == nil )
_InputInitialiseMouse(!FrontEndMenuManager.m_bMenuActive && _InputMouseNeedsExclusive());
@ -761,7 +761,10 @@ void CPad::UpdateMouse()
OldMouseControllerState = NewMouseControllerState;
NewMouseControllerState = PCTempMouseControllerState;
}
}
#else
if ( IsForegroundApp() && PSGLOBAL(cursorIsInWindow) )
{
double xpos = 1.0f, ypos;
glfwGetCursorPos(PSGLOBAL(window), &xpos, &ypos);
if (xpos == 0.f)
@ -799,8 +802,8 @@ void CPad::UpdateMouse()
OldMouseControllerState = NewMouseControllerState;
NewMouseControllerState = PCTempMouseControllerState;
#endif
}
#endif
}
CControllerState CPad::ReconcileTwoControllersInput(CControllerState const &State1, CControllerState const &State2)
@ -1451,6 +1454,13 @@ void CPad::UpdatePads(void)
#else
CapturePad(0);
#endif
// Improve keyboard input latency part 1
#ifdef FIX_BUGS
OldKeyState = NewKeyState;
NewKeyState = TempKeyState;
#endif
#ifdef DETECT_PAD_INPUT_SWITCH
if (GetPad(0)->PCTempJoyState.CheckForInput())
IsAffectedByController = true;
@ -1472,7 +1482,7 @@ void CPad::UpdatePads(void)
if ( bUpdate )
{
GetPad(0)->Update(0);
GetPad(1)->Update(0);
// GetPad(1)->Update(0); // not in VC
}
#if defined(MASTER) && !defined(XINPUT)
@ -1480,8 +1490,11 @@ void CPad::UpdatePads(void)
GetPad(1)->OldState.Clear();
#endif
// Improve keyboard input latency part 2
#ifndef FIX_BUGS
OldKeyState = NewKeyState;
NewKeyState = TempKeyState;
#endif
}
void CPad::ProcessPCSpecificStuff(void)