diff options
author | F1F7Y <64418963+F1F7Y@users.noreply.github.com> | 2022-01-09 15:45:58 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-09 11:45:58 -0300 |
commit | 974134d142e54f650cfa3c8e46e0d58542a39fb1 (patch) | |
tree | 03d07ffc61091b717ae084a8341d0230b33fb62b /Northstar.Client/mod/scripts/vscripts/sh_menu_models.gnut | |
parent | a9e1b4fa8558ee07732c0f60a935980fd15d4e44 (diff) | |
download | NorthstarMods-974134d142e54f650cfa3c8e46e0d58542a39fb1.tar.gz NorthstarMods-974134d142e54f650cfa3c8e46e0d58542a39fb1.zip |
Improve server browser backend; fix error (#58)
Improves sort backend
Fixes crash when TAB is pressed while console is open
Improves MouseDelta handler logic
Increases doubleclick from 0.2 to 0.3
Fixes issue
Pasting does not work for server passwords #91
Fix issue #91
Diffstat (limited to 'Northstar.Client/mod/scripts/vscripts/sh_menu_models.gnut')
-rw-r--r-- | Northstar.Client/mod/scripts/vscripts/sh_menu_models.gnut | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/Northstar.Client/mod/scripts/vscripts/sh_menu_models.gnut b/Northstar.Client/mod/scripts/vscripts/sh_menu_models.gnut index cd663a06b..b1b97bc93 100644 --- a/Northstar.Client/mod/scripts/vscripts/sh_menu_models.gnut +++ b/Northstar.Client/mod/scripts/vscripts/sh_menu_models.gnut @@ -2,9 +2,9 @@ // Model tracking and save/Clear functions are temp. We already update the client knowledge of loadouts. Derive from that. // Move the struct off the player? -#if CLIENT && MP +//#if CLIENT && MP untyped -#endif //client && MP +//#endif //client && MP #if CLIENT const float CARD_TAG_SCALE = 0.0 // update to match same const in hud_defs.rui @@ -207,12 +207,18 @@ #endif // CLIENT && MP #if UI + struct + { + table MouseMovementCaptureFunctionsTable = {} + } file + const MOUSE_ROTATE_MULTIPLIER = 25.0 global function UpdateUIMapSupportsMenuModels global function RunMenuClientFunction global function UI_SetPresentationType + global function AddMouseMovementCaptureHandler global function UICodeCallback_MouseMovementCapture #endif // UI @@ -2892,6 +2898,18 @@ } } + void function AddMouseMovementCaptureHandler( var menu, void functionref( int, int ) func ) + { + file.MouseMovementCaptureFunctionsTable.rawset( menu, func ) + } + + void function UpdateMouseMovementCaptureFunctions( int deltaX, int deltaY ) + { + var activeMenu = GetActiveMenu() + if ( file.MouseMovementCaptureFunctionsTable.rawin( activeMenu ) ) + file.MouseMovementCaptureFunctionsTable.rawget( activeMenu )(deltaX, deltaY) + } + void function UICodeCallback_MouseMovementCapture( var capturePanel, int deltaX, int deltaY ) { float screenScaleXModifier = 1920.0 / GetScreenSize()[0] // 1920 is base screen width @@ -2901,7 +2919,7 @@ float screenScaleYModifier = 1080.0 / GetScreenSize()[1] // 1920 is base screen width float mouseYRotationDelta = deltaY * screenScaleYModifier * MOUSE_ROTATE_MULTIPLIER - UpdateMouseDeltaBuffer( deltaX, deltaY ) + UpdateMouseMovementCaptureFunctions( deltaX, deltaY ) RunMenuClientFunction( "UpdateMouseRotateDelta", mouseXRotateDelta, mouseYRotationDelta ) } |