--- Daodan/src/Oni/Symbols_Var.h 2014/04/07 10:33:27 994 +++ Daodan/src/Oni/Symbols_Var.h 2021/10/24 02:50:48 1163 @@ -83,4 +83,31 @@ //#define OBJgFlag_ViewPrefix (*((void*)0x005ec650)) //#define OBJgFlag_DrawNameDistance (*((void*)0x005ec634)) +// Oni's platform input system stores the window HWND in this global +#define LIgPlatform_HWND (*((HWND *)0x0055cae8)) + +// Is Oni's input system active? True in gameplay and false in menus. +// LIrPlatform_Mode_Set gets called when this changes. +#define LIgMode_Internal (*((UUtBool *)0x0055fd40)) + +// List of bindings from Oni's internal key codes to LItActionDescriptions +#define LIgBindingArray ((LItBinding *)0x0055fa20) + +// Is "Invert Mouse" checked in the Options menu? If so, platform specific input +// code should invert the cursor's Y offset when building LItActionBuffers. +#define LIgMode_InvertMouse (*((UUtBool *)0x0052ecf4)) + +// This is a map from DirectInput scan codes to Oni's internal key codes, the +// latter of which mostly match ASCII for a US keyboard layout. DirectInput scan +// codes are mostly the same as the PS2 make codes that Windows uses in other +// APIs except that extended keys are represented by bit 0x80 being set. +#define LIgPlatform_ScanCodeToChar ((uint8_t *)0x005292b8) + +// Script variable to enable/disable centering the cursor in the window when +// processing input. On by default. +#define LIgCenterCursor (*((int *)0x0052d88d)) + +// List of bindable input actions +#define LIgActionDescriptions ((LItActionDescription*)0x0052db18) + #endif