diff options
Diffstat (limited to 'src/Pad.cpp')
-rw-r--r-- | src/Pad.cpp | 38 |
1 files changed, 35 insertions, 3 deletions
diff --git a/src/Pad.cpp b/src/Pad.cpp index f27954e8..3d2e9bce 100644 --- a/src/Pad.cpp +++ b/src/Pad.cpp @@ -4,14 +4,17 @@ CPad *CPad::Pads = (CPad*)0x6F0360; -uint16 *CPad::OldKeyState = (uint16*)0x6F1E70; -uint16 *CPad::NewKeyState = (uint16*)0x6E60D0; -uint16 *CPad::TempKeyState = (uint16*)0x774DE8; +CKeyboardState &CPad::OldKeyState = *(CKeyboardState*)0x6F1E70; +CKeyboardState &CPad::NewKeyState = *(CKeyboardState*)0x6E60D0; +CKeyboardState &CPad::TempKeyState = *(CKeyboardState*)0x774DE8; CMouseControllerState &CPad::OldMouseControllerState = *(CMouseControllerState*)0x8472A0; CMouseControllerState &CPad::NewMouseControllerState = *(CMouseControllerState*)0x8809F0; CMouseControllerState &CPad::PCTempMouseControllerState = *(CMouseControllerState*)0x6F1E60; +Bool &CPad::m_bMapPadOneToPadTwo = *(Bool *)0x95CD48; + +WRAPPER void CPad::AddToPCCheatString(Char c) { EAXJMP(0x492450); } WRAPPER void CPad::UpdatePads(void) { EAXJMP(0x492720); } WRAPPER void CPad::PrintErrorMessage(void) { EAXJMP(0x4942B0); } @@ -41,6 +44,35 @@ CControllerState::Clear(void) NetworkTalk = 0; } +void CKeyboardState::Clear() +{ + for ( Int32 i = 0; i < 12; i++ ) + F[i] = 0; + + for ( Int32 i = 0; i < 256; i++ ) + VK_KEYS[i] = 0; + + ESC = INS = DEL = HOME = END = PGUP = PGDN = 0; + + UP = DOWN = LEFT = RIGHT = 0; + + NUMLOCK = 0; + + DIV = MUL = SUB = ADD = 0; + + DECIMAL = NUM1 = NUM2 = NUM3 = NUM4 = 0; + + NUM5 = NUM6 = NUM7 = NUM8 = 0; + + NUM9 = NUM0 = SCROLLLOCK = PAUSE = 0; + + BACKSP = TAB = CAPSLOCK = EXTENTER = 0; + + LSHIFT = SHIFT = RSHIFT = LCTRL = RCTRL = LALT = RALT = 0; + + LWIN = RWIN = APPS = 0; +} + bool CPad::ForceCameraBehindPlayer(void) { |