4,160 Commits over 884 Days - 0.20cph!
Don't use file scoped classes for input action cells, ends up codegenning a really shit name for them and makes stack traces worse to read
Editor: Add inline text editing for input action name and group
https://files.facepunch.com/tony/1b0911b1/sbox_Pa9V155XnL.mp4
Editor: Add "keybind" editor widget, instead of manually finding inputs, just press the button you want to use - would be good to have proper trapping in tools soon (?)
Ensure Account.Memberships is not null, cleans up having to validate it everywhere
Groundwork for starting the game without connection to steam servers / our API
AssetBrowser: Only show cloud tab if we're connected
Add a hint to editor window title to dictate if we're in offline mode
UI: Replace content on Home/GameList with a hint if we're not connected to the Api
AssetBrowser: Handle case where we don't get any account memberships (offline mode prep)
Small JumpList refactor, update JumpList when activating game project
- Removed JumpListManager
- Moved all JumpList stuff into Sandbox.Engine
Editor: Cleanup logic for opening last loaded project - remove unused code, and lastprojectopened cookie
Add adjustable analog sensitivity for UI
Kill controller input system if we run out of gamepads to use
General cleanup, remove unused ControllerOverlay panel
Remove InputManifestTemplate/GamepadManifestTemplate groups from Sandbox.Game csproj since they don't exist
Don't run ControllerInput.Tick at all if we don't have a controller
When looking for an initial panel for traversal, use the mouse position (works w/ virtual cursor)
Remove unused code, documentation pass
Only use pointer-events on elements we want to click on for SocialBar
Pass DoAnyPanelsWantMouseVisible() to ControllerInput, don't call if we don't need input
Scope UI simulation
Remove context hacks
Run Input.SetFocus( null ) on IControllerInputSystem.Destroy
Add IControllerInputSystem.Destroy
Store last mouse position, don't run in multiple contexts (sort this out in a better way next) - fixes VCS overlay lingering around
Minor cleanup
Traverse blocks relative to the screen size, instead of set pixels
When enabling VCS, use the mouse's current position
Remove PanelTraversalOverlay, it looked shit
Start drafting out UI navigation with controller, by traversing panels
Refactor so we can switch between panel traversal and virtual cursor based on input
Don't revert back to PanelTraversalSystem if analog is empty
Add basic working virtual cursor using PanelInput.UpdateMouse
Fixed calculation of virtual cursor position
Use stylesheet to style virtual cursor, add ScrollSpeed
Refactor, virtual cursor as its own rootpanel so we don't add a panel to every root panel we access
Disable system if mouse is moving at all
Make VirtualCursorOverlay a razor panel
Update SteamInput manifest to include joystick inputs for Menu action set
Hide mouse cursor while we have controller input active
Support processing any number of root panels, make it work in GameMenu
Scale ControllerInput.GetAnalog by Input.ControllerLookYaw(Pitch)Speed
Scale virtual cursor position movement by delta time, no wonder it felt different on GameMenu
Process inputs in MenuDll
Remove some direct controller access, use Input.AnalogMove/AnalogLook instead
VCS: only tick for panels that want mouse input
VCS: fix is-pressed style
Refactor, add ControllerOverlay, so we can add another overlay for panel traversal selection
Add PanelTraversalOverlay (for lack of a better name)
Work on finding panels from delta, fixed not finding an initial focused panel
Give eligible panels a score and give it some data to score by, focus the lowest scoring panel, also hook up selection and scrolling
Decrease block increment size, can get finer selections (i.e PackageCard modal button)
Fix FindPanelsAt never finding more than 1 panel
Check to see if an asset gets deleted from explorer - and mark it as deleted in the asset system
Update asset browser list on content.changed
Fix tooltips not being visible in the main menu, removed unused main menu style
Look for .sbproj in DownloadCloudProjectAsync instead of .addon
Check for valid cref attributes
Play around with inertia easing
Add ViewModelSetup.InertiaDampening property
Remove debug log :flushed:
Part of inertia w/ dampening (aim_yaw_inertia, aim_pitch_inertia)
Merge branch 'main' of sbox-gunfight
Editor: set gamemode to CurrentGame, loading map manually / from hammer should use active game
Editor: Add Min/MaxLength to ProjectConfig.Title to match asset manifest spec
Editor: Add Project.Config.Title to review wizard
Editor: check for validation attributes on review wizard page, can't continue if it fails
Set up b_sprint parameter in prep for max's sprint anims
Added Tags to Surface (HasTag, HasAnyTag, HasAllTags - define tags in resource)
Remove ClientEntity.HasPermission (unused)
Set known Game.Server fields when running Game.Menu.StartServerAsync (sboxgame/issues#3980)
Decrease block increment size, can get finer selections (i.e PackageCard modal button)
Fix FindPanelsAt never finding more than 1 panel
Give eligible panels a score and give it some data to score by, focus the lowest scoring panel, also hook up selection and scrolling
Work on finding panels from delta, fixed not finding an initial focused panel
Add PanelTraversalOverlay (for lack of a better name)
Refactor, add ControllerOverlay, so we can add another overlay for panel traversal selection
VCS: only tick for panels that want mouse input
VCS: fix is-pressed style
Start drafting out UI navigation with controller, by traversing panels
Refactor so we can switch between panel traversal and virtual cursor based on input
Don't revert back to PanelTraversalSystem if analog is empty
Add basic working virtual cursor using PanelInput.UpdateMouse
Fixed calculation of virtual cursor position
Use stylesheet to style virtual cursor, add ScrollSpeed
Refactor, virtual cursor as its own rootpanel so we don't add a panel to every root panel we access
Disable system if mouse is moving at all
Make VirtualCursorOverlay a razor panel
Update SteamInput manifest to include joystick inputs for Menu action set
Hide mouse cursor while we have controller input active
Support processing any number of root panels, make it work in GameMenu
Scale ControllerInput.GetAnalog by Input.ControllerLookYaw(Pitch)Speed
Scale virtual cursor position movement by delta time, no wonder it felt different on GameMenu
Process inputs in MenuDll
Remove some direct controller access, use Input.AnalogMove/AnalogLook instead
Don't moan about missing voice input
Process inputs in MenuDll
Remove some direct controller access, use Input.AnalogMove/AnalogLook instead
Scale ControllerInput.GetAnalog by Input.ControllerLookYaw(Pitch)Speed
Scale virtual cursor position movement by delta time, no wonder it felt different on GameMenu
Make VirtualCursorOverlay a razor panel
Update SteamInput manifest to include joystick inputs for Menu action set
Hide mouse cursor while we have controller input active
Support processing any number of root panels, make it work in GameMenu
Start drafting out UI navigation with controller, by traversing panels
Refactor so we can switch between panel traversal and virtual cursor based on input
Don't revert back to PanelTraversalSystem if analog is empty
Add basic working virtual cursor using PanelInput.UpdateMouse
Fixed calculation of virtual cursor position
Use stylesheet to style virtual cursor, add ScrollSpeed
Refactor, virtual cursor as its own rootpanel so we don't add a panel to every root panel we access
Disable system if mouse is moving at all
Refactor, virtual cursor as its own rootpanel so we don't add a panel to every root panel we access
Disable system if mouse is moving at all
Use stylesheet to style virtual cursor, add ScrollSpeed