userCarson Komponcancel

1,017 Commits over 183 Days - 0.23cph!

4 Months Ago
Remove optional argument from GetMethodsWithAttribute and instead have an overload with the parameter required. This should solve tests failing.
4 Months Ago
Unify the names of all tool shortcuts Rebuild Keybind List widget on hotload (when Shortcuts are added/removed). Order Shortcuts alphabetically so list order isn't random
4 Months Ago
Add Shortcut for Object Tool, and only allow Subtool Shortcuts if proper parent Tool
4 Months Ago
Created EditorKeybinds.cs with a few starting keybinds Move Keybinds into EditorPreferences since that makes more sense Add RegisterShortcuts() function whenever shortcuts are registered and use the EditorPreferences keybind instead of hardcoded string Added Editor Keybinds page to EditorPreferencesWindow Subscribe all RegisterShortcut voids to keybinds.update EditorEvent https://files.facepunch.com/CarsonKompon/2024/July/10_21-46-TautDuck.mp4 Create shortcut for EditorCycleViewMode Make Keybinds page scrollable, add Reset to Default button, and add Are You Sure popup to Reset button Use TitleAttribute for keybind names https://files.facepunch.com/CarsonKompon/2024/July/10_22-23-FakeGourami.png Add AllowModifiers to KeyBind widget, set to true for Editor Keybinds Page (Allows you to bind CTRL+SHIFT+ALT+Whatever) Some FileOption binds, but they dont auto-update yet. Will need to find a good way to do that for Option entries Call keybinds.update EditorEvent on Reset to Default Created EditorShortcuts.cs to eventually replace EditorPreferences.Keybinds Need to call this after EditorTypeLibrary is created Register shortcuts elsewhere and remove some option shortcuts Change default shortcut type Register shortcuts on hotload Convert some older shortcuts into the new [Shortcut] attribute Change shortcut defaults Update EditorShortcuts to include Identifier and Keys, including method to get current keys from overrides (player defined overrides) Display [Shortcut] shortcuts in Editor Keybinds page instead of EditorPreferences.Keybinds EditorShortcuts rebinding actually works now, much more lightweight than prior version Make user overrides save properly Get Name and Group properly, allow attributes to override. Get keys from shortcut name in Option.cs Allow non-static method shortcuts since there seems to be a good chunk of those Stop feeding shortcut to Options for now Fix size of Editor Keybinds page Fix using the wrong widget for non-static shortcuts Move EditorPreferences.Keybinds over to new [Shortcut] attribute system on each function Completely remove EditorPreferences.Keybinds Change name/groups for a few shortcuts Order categories by name in PageKeybinds Remove some debug logs Create Texture Editor and Actiongraph shortcuts Create ShaderGraph, Hotspot Editor and some more scene shortcuts Add GameObject/Transform shortcuts and fix static method issues. Made grid size shortcuts Window type instead of Widget type Make all the different editors share a few binds (So there's not a Copy,Cut,Paste,Undo,Redo,ect. per-editor) Make classes with [Shortcut] attribute properly rebindable (used for editortools) Cleanup shortcut groups Added individual Revert button when bind is different from the default https://files.facepunch.com/CarsonKompon/2024/July/12_08-54-UnimportantTarantula.mp4 Qt Option now takes shortcut ident (eg. "editor.undo") and internally resolves bind (eg. "CTRL+Z"), updating when changed. No longer registers shortcut internally when set. Shortcuts with Function Keys are always to editor even when Game Frame is in focus F3 and F5 editor commands are now Shortcuts like everything else Fix shortcut not displaying on Align To View option Fix SaveMixer being static Change "F5" -> "editor.toggle-play" on Play menu option Cache the overrides so we don't have to keep checking against EditorCookie Super minor cleanup Rename Name -> DisplayName so there's no conflict on KeybindPanel Fix ShortcutOverrides not loading properly Use CodeToString(ButtonCode) instead of the weird enum parsing I was doing. Remove `Editor.Option.ShortcutContext` Strip native shortcuts from `Editor.Shortcut` class. Make class internal. Documentation cleanup Update Shortcut.Invoke so it handles Mode logic EditorShortcut.Invoke is now a bool returning whether or not a shortcut was invoked from the pressed keys Shortcuts are now invoked from Sandbox.Tools instead of thru native QT shortcut. Make `scene.fullscreen` (F4) bind static. Fixes rebuilding issue. Fix Function Keys not being sent when in-game since it was checking for a console bind instead of keybind Fix number keys not working Create keybinds for the different Tools now that Editor.Shortcut is internal Create keybinds for the different subtools for the same reason Mark `MenuAttribute.Shortcut` as Obsolete. Get identifier from `[Shortcut]` attribute if one exists. Update Shortcut value in AssetInspector Display shortcuts on Tool and Subtool buttons without need for ShortcutAttribute on the class Mark Editor.Option.Shortcut as [Obsolete], telling users to use Editor.Option.ShortcutName instead GlobalKeyPressed now passes KeyEvent instead of key int Added KeyEvent.Name which returns the name of the key pressed based on it's KeyCode and NativeKeyCode Strip the Shortcut class from EditorShortcuts altogether, reducing bloat and fixing widget focus issues. Pulled ShortcutType enum outside of ShortcutAttribute class. Added `Widget.IsDescendantOf` and `Widget.IsAscenstorOf` Check if widget is a descendant of the focused widget when invoking shortcuts NRE fixes Don't invoke shortcuts if the focused widget is an input field Remove hack to call F1-F12 binds in the editor. Make F6 Editor Shortcut to replace F6 bind. Merge pull request #1624 from Facepunch/editor-keybinds Editor Keybinds
4 Months Ago
Created EditorKeybinds.cs with a few starting keybinds Move Keybinds into EditorPreferences since that makes more sense Add RegisterShortcuts() function whenever shortcuts are registered and use the EditorPreferences keybind instead of hardcoded string Added Editor Keybinds page to EditorPreferencesWindow Subscribe all RegisterShortcut voids to keybinds.update EditorEvent https://files.facepunch.com/CarsonKompon/2024/July/10_21-46-TautDuck.mp4 Create shortcut for EditorCycleViewMode Make Keybinds page scrollable, add Reset to Default button, and add Are You Sure popup to Reset button Use TitleAttribute for keybind names https://files.facepunch.com/CarsonKompon/2024/July/10_22-23-FakeGourami.png Add AllowModifiers to KeyBind widget, set to true for Editor Keybinds Page (Allows you to bind CTRL+SHIFT+ALT+Whatever) Some FileOption binds, but they dont auto-update yet. Will need to find a good way to do that for Option entries Call keybinds.update EditorEvent on Reset to Default Created EditorShortcuts.cs to eventually replace EditorPreferences.Keybinds Need to call this after EditorTypeLibrary is created Register shortcuts elsewhere and remove some option shortcuts Change default shortcut type Register shortcuts on hotload Convert some older shortcuts into the new [Shortcut] attribute Change shortcut defaults Update EditorShortcuts to include Identifier and Keys, including method to get current keys from overrides (player defined overrides) Display [Shortcut] shortcuts in Editor Keybinds page instead of EditorPreferences.Keybinds EditorShortcuts rebinding actually works now, much more lightweight than prior version Make user overrides save properly Get Name and Group properly, allow attributes to override. Get keys from shortcut name in Option.cs Allow non-static method shortcuts since there seems to be a good chunk of those Stop feeding shortcut to Options for now Fix size of Editor Keybinds page Fix using the wrong widget for non-static shortcuts Move EditorPreferences.Keybinds over to new [Shortcut] attribute system on each function Completely remove EditorPreferences.Keybinds Change name/groups for a few shortcuts Order categories by name in PageKeybinds Remove some debug logs Create Texture Editor and Actiongraph shortcuts Create ShaderGraph, Hotspot Editor and some more scene shortcuts Add GameObject/Transform shortcuts and fix static method issues. Made grid size shortcuts Window type instead of Widget type Make all the different editors share a few binds (So there's not a Copy,Cut,Paste,Undo,Redo,ect. per-editor) Make classes with [Shortcut] attribute properly rebindable (used for editortools) Cleanup shortcut groups Added individual Revert button when bind is different from the default https://files.facepunch.com/CarsonKompon/2024/July/12_08-54-UnimportantTarantula.mp4 Qt Option now takes shortcut ident (eg. "editor.undo") and internally resolves bind (eg. "CTRL+Z"), updating when changed. No longer registers shortcut internally when set. Shortcuts with Function Keys are always to editor even when Game Frame is in focus F3 and F5 editor commands are now Shortcuts like everything else Fix shortcut not displaying on Align To View option Fix SaveMixer being static Change "F5" -> "editor.toggle-play" on Play menu option Cache the overrides so we don't have to keep checking against EditorCookie Super minor cleanup Rename Name -> DisplayName so there's no conflict on KeybindPanel Fix ShortcutOverrides not loading properly Use CodeToString(ButtonCode) instead of the weird enum parsing I was doing. Remove `Editor.Option.ShortcutContext` Strip native shortcuts from `Editor.Shortcut` class. Make class internal. Documentation cleanup Update Shortcut.Invoke so it handles Mode logic EditorShortcut.Invoke is now a bool returning whether or not a shortcut was invoked from the pressed keys Shortcuts are now invoked from Sandbox.Tools instead of thru native QT shortcut. Make `scene.fullscreen` (F4) bind static. Fixes rebuilding issue. Fix Function Keys not being sent when in-game since it was checking for a console bind instead of keybind Fix number keys not working Create keybinds for the different Tools now that Editor.Shortcut is internal Create keybinds for the different subtools for the same reason Mark `MenuAttribute.Shortcut` as Obsolete. Get identifier from `[Shortcut]` attribute if one exists. Update Shortcut value in AssetInspector Display shortcuts on Tool and Subtool buttons without need for ShortcutAttribute on the class Mark Editor.Option.Shortcut as [Obsolete], telling users to use Editor.Option.ShortcutName instead GlobalKeyPressed now passes KeyEvent instead of key int Added KeyEvent.Name which returns the name of the key pressed based on it's KeyCode and NativeKeyCode Strip the Shortcut class from EditorShortcuts altogether, reducing bloat and fixing widget focus issues. Pulled ShortcutType enum outside of ShortcutAttribute class. Added `Widget.IsDescendantOf` and `Widget.IsAscenstorOf` Check if widget is a descendant of the focused widget when invoking shortcuts NRE fixes Don't invoke shortcuts if the focused widget is an input field Remove hack to call F1-F12 binds in the editor. Make F6 Editor Shortcut to replace F6 bind.
4 Months Ago
Added `Widget.IsDescendantOf` and `Widget.IsAscenstorOf` Check if widget is a descendant of the focused widget when invoking shortcuts NRE fixes Don't invoke shortcuts if the focused widget is an input field Remove hack to call F1-F12 binds in the editor. Make F6 Editor Shortcut to replace F6 bind.
4 Months Ago
Strip the Shortcut class from EditorShortcuts altogether, reducing bloat and fixing widget focus issues. Pulled ShortcutType enum outside of ShortcutAttribute class.
4 Months Ago
Mark Editor.Option.Shortcut as [Obsolete], telling users to use Editor.Option.ShortcutName instead GlobalKeyPressed now passes KeyEvent instead of key int Added KeyEvent.Name which returns the name of the key pressed based on it's KeyCode and NativeKeyCode
4 Months Ago
Update TilesetComponent.Tile and UVs on drawing Fix TilesetTool NRE Setup BaseTileTool for Tileset Subtools Added PaintTileTool for painting tiles Fix tile drawing so higher layers are drawn above lower ones.
4 Months Ago
Fix errors when first creating terrain, make sure it's all updated, don't render without storage Only recreate clipmap if we have to, this takes time to build Support more than 1 gamepad input action with the same button Add ParticleVector3 Add LargeNetworkFiles table Respect JsonIgnoreAttribute when serializing component properties We were already checking it for fields Revert "Add LargeNetworkFiles table" This reverts commit 7365c616af37ef1665abe4961344013815e89b70. Accidentally rebased master onto a branch - Metapyziks Fix warnings in ParticleVector3ControlWidget Fix some download toasts sticking around forever, and incorrectly displaying as cancelled Populate Json reflection cache in Json.Initialize We were seeing some long frame times during first-time prefab instantiation caused by this Do panel bind/parameter events when things change even if tree is empty, Facepunch/sbox-issues#5908 Custom panels that do stuff/populate from attributes etc should work again now, incl settings page Don't use internal message type for changing level Fixed retry logic Docs Download from server (#1632) Download game asset files from the server, when not using a package. This allows people to make "local only" games and test them locally and multiplayer. In the future we can change the download method to upload and download from our backend instead of over network. Tidy and make some context menus more consistent, prevent selecting unworkable options, add hierarchal path support to create asset menus Fix for AO outline AO moved in PP to post-transparent to ensure that sky-dome is rendered before AO Merge branch 'master' of sbox Add serialization_warn_time con var https://files.facepunch.com/ziks/2024-07-24/sbox-dev_0DtqgKK1dt.png Better particle randoms Fix Json.PopulateReflectionCache JsonTypeInfos would only be stored if the JsonSerializerOptions is immutable LineRenderer has a UseVectorPoints option Don't implicitly set zfar as infinity, if we want to do so we can do from C# side, but make it respect what we pass as zfar Fix IBL not working, Transparency in AmbientColor is used to lerp between artist's decided flat color and IBL/GI, defaults to GI AmbientLight component defaults to Gray color Fix bug in capsule tracing, fixes picker in modeldoc when using capsules Fix LineRenderer bug ParticleFloat, ParticleGradient have evaluations where you pass in the particle , which reduces the risk of fucking up the parameters Move ParticleRenderer's into own folder ParticleController has OnParticleCreated Add Particle.BaseListener - allows creating of classes that run on particle create, update and destroy - with instance data and guaranteed destroy Add ParticleLightRenderer Restore skeleton compile to how it used to be, we're missing optimizations by just keeping every bone no matter what Add ParticleModelRenderer Fix new game objects created thru heirarchy context menu always spawning at 0,0,0 Fix Vector2.Json serialization only loading x value when supplying string as json object and not number array. Also updated function summaries that said "vector4" instead of "vector2" Vector2Int and Vector3Int values now serialize to/from JSON properly. Resolves Facepunch/sbox-issues#5821 Created Vector2Int/Vector3Int ControlWidgets. Resolves Facepunch/sbox-issues#5606 Expose particle DeathTime, so effects can use it to do calculations Fix ParticleSpriteRenderer error when no texture defined Add ParticleEmitter.RateOverDistance , overrides for manipulating burst count, rate count Asset picker: will now grab/install remote cloud assets when selected (fixes Facepunch/sbox-issues#5904), improved validation so you can only select resource types you're supposed to Stop prefab source widget changing value and closing picker before a selection has been submitted Added a lot more functionality to Vector2Int and Vector3Int. Much more in line with their floating-point counterparts now, only including what makes the most sense for integer values. Also added documentation/summaries to everything. Resolves Facepunch/sbox-issues#5254 Fix Vector3Int converter error Asset picker: only allow multi selection if we want that Don't make VectorInt properties readonly since some games set them already (fixes tests failing) VectorInts are fields instead of properies (like they used to) with [JsonInclude] fields Added OnOrg to PackageCard and PackageList. Added basic Org Page when clicking org on Main Menu. Helps users find games made by the same creator(s). https://files.facepunch.com/CarsonKompon/2024/July/26_01-31-CuddlyCaracal.mp4 Disable AssertNoGraphErrorsInScene test temporarily AssertNoGraphErrorsInScene: assert downloaded package version Package.FetchAsync: allow fetching specific version Cache versioned packages separately Reference package.base from libraries when publishing Fixes Facepunch/sbox-issues#5899 Use same asset picker size/location cookie regardless of what control created it Get rid of special case map picker Don't set active scene on tab hover but still do gizmo hover interactions, drag drop etc. Avoid needing awkward 2nd input, Facepunch/sbox-issues#5728 CRenderDeviceBase::AsyncSetTextureData2: Fix nullptr crash with invalid rects Don't completely fail to start with an invalid controller plugged in, needs to be properly fixed in C++ though Disallow np2 textures, crashes the DXT compressor we use, plus disables mips etc. Expose BlendMode Move D_BLENDMODE to common/blendmode.hlsl - so we can pull it into other shaders easy SceneLineObject supports texture + uvs Autoswitch to game tab when going into playmode again (oops) UI: Do not render invalid texture background images Fix missing map select button Make sure directory tree exists when downloading from server Stick verbose network files messages behind 'debug_network_files' convar, print elapsed time Facepunch/sbox-issues#5912 Stop big server lists squashing the rows, styling tweaks Facepunch/sbox-issues#5943 Set collision attributes on map instance collision shapes, I missed this out when switching from native aggregate instances Add ParticleTrailRenderer, TrailRenderer components Add a margin to the right of component sheet, to accommodate the scrollbar Fix NRE in SceneNetworkSystem.OnLeave PhysicsGroupDescription grabs physics tags from aggregate backing data so they can be string token cached. This allows trace result tags to be valid because they'll be reversable by string token Apply aggregate tags in C# instead of this massive inline bind function Fix index out of range accessing backing data collision attributes Use is valid checks in rigidbody Fix possible project startup NREs Move all terrain attributes into 1 structured buffer, create a Terrain class any shader can use to provide things like Terrain::GetHeight( worldPos ) Use an AssetPicker for browsing terrain materials instead Running out of video and system memory is a fatal error Some error reporting breadcrumbs/tag for identifying game package Breadcrumb pipeline creation to see what shaders crashing us Fix exception with no camera Fix steam callback crash Fix text cannot be empty exception Remove Compiler.OnCompilePartialSuccess , don't load assemblies on compile fail, fixes BadImageFormatException Promote task exceptions to errors, instead of warnings Fix WorldPanel NRE (if the underlying panel gets deleted, somehow) Don't report TargetInvocationException, report its InnerException Tag map for sentry too (if launched with a map) Validate descriptor bindings of a shader (for real this time, not in a dead method) - prevent crashing by not loading these invalid shaders Fix error when map couldn't be downloaded Less simultaneous downloads Add some high level sentry breadcrumbs Fix possible NRE in network connect Add commented out DSN for testing sentry un-rate-limited Fix NRE in Prop Add breadcrumb for failed downloads, let us diagnose why it's happening Don't let OnNetworkSpawn errors break everything Tweak how httpimages are loaded to make errors more obvious Wrap RPC resume so things don't fall to bits if it errors Fix NRE in Rigidbody.OnDisabledInternal Another out of memory fatal error Only show lobbies of the same game build Fix open_asset crashing in non-tools Don't show lobby cards for games marked as hidden (unless you're in that org) Protect against host being null when downloading network files Keep a count of the number of hosts a lobby has had Mark lobby as toxic if became owner while joining LargeNetworkFiles output num files Tweak JoinBestLobby logic Don't show toxic lobbies Fix RunDownloadQueue using wrong connection Don't disconnect from own server and mark it as toxic! Disconnect from active lobby if it becomes toxic Fix NRE in TickSceneStats Fix NRE in ReceiveMessagesOnChannel Check there's an active scene when calling ISerializer on GameObject/Component SerializerPacker wraps reader/writer and prints errors Handle inability to save cookies Ship with pdb's to our managed dlls Fix NRE in SoundEvent.GetNextSound Retry download after a HttpRequestException Diagnose NRE in ProcessIncomingMessages Socket iteration error Fix MapInstance NRE, add breadcrumbs Fix NRE in Package.FindAsync SceneObject: If the model is bad, just use an error model Nicer exception when __sync_SetValue exceptions Enable indirect lighting from IBL in volumetric fog shader, can be toggled with volume_fog_ibl_indirect https://files.facepunch.com/sam/1b2711b1/PIwbCCNGYB.png Terrain_Normal calculates world space normals properly now, remove sobel filter to just a simple bilinear https://files.facepunch.com/sam/1b2711b1/qNolcysYRH.png Reenable terrain specular and recompile it with normal fixes Terrain_Normal: dY was inverted Fix mesh trace fraction, causing incorrect best result when tracing render meshes and physics world at same time Fix scene mesh block tool not working on terrain, just ignore box drag when bounding box gizmo is pressed Add twist/pull forces to particle effect https://files.facepunch.com/garry/9f0a0575-f148-46d6-8f1f-75cdb8d1b8aa.mp4 Fix NRE in VrHand.cs Fix NRE in Terrain.UpdateMaterialsBuffer - @handsomematt might wanna check this Ignore packaged message deserialize errors - assume they're happening while we're joining and don't have the types yet Diagnose sockets[i] somehow being null Fix NRE in Input.Process Ignore NaN positions with a warning instead of an exception Fix being able to double destroy components Make CallbackBatch 'safer' by making it always require a scene Remove max thread count from pooled dynamic vb/ib, fixing crash when used from too many threads (.net threads with unreliable ids) Report native library not loading as a special exception SystemInfo has StorageSizeAvailable, StorageSizeTotal Rename ErrorReports to NativeErrorReporter to create a distinction Load version info as soon as possible Move error reporting out of Bootstrap Catch startup errors Allow traces to ignore static/dynamic/keyframed bodies Reset error report counters between games Better fingerprinting Error report unit test Diagnose startup problems by testing individual assemblies before launching Fix NRE in LibraryDetail Fix NRE in EnumControlWidget More missing dependancy diagnostics Fucked it Create a CallbackBatch around Udpate/FixedUpdate/Start, so inner calls don't create their own, and callbacks all get called at the end Make LobbyCards look different from PackageCards so it's a bit more obvious that they are lobbies and not the games themselves. Add Gizmo.Draw.Grid(GridAxis, Vector2) to draw a grid of non-square size Added Vector2Int * Vector2Int operator since I forgot it Update sentry sdk from 0.5.2 to 0.7.7, build targeting lowest windows 8 Fix Component.Destroy CallBacth error Component.Task returns a cancelled TaskSource if no GameObject Fix little mistake in FindInPhysics Fix Save All Scenes only saving the current scene Add support for number pairs in `aspect-ratio`. Can supply as `16/9`, `4:3` or `2 1`. Resolves Facepunch/sbox-issues#5975 Don't need to change ext here, it's done in CreateWorld Map objects grab scale from "scales" keyvalue Merge branch 'master' into editor-keybinds
4 Months Ago
Add support for number pairs in `aspect-ratio`. Can supply as `16/9`, `4:3` or `2 1`. Resolves Facepunch/sbox-issues#5975
4 Months Ago
Fix Save All Scenes only saving the current scene
4 Months Ago
Added Click and Drag to move tiles in Tileset Editor https://files.facepunch.com/CarsonKompon/2024/July/28_16-49-VibrantIvorybilledwoodpecker.mp4
4 Months Ago
Added Vector2Int * Vector2Int operator since I forgot it
4 Months Ago
Fix divide by zero error when dragging sprite with single frame in first animation Support TileSize of non-square size. Draw grid accordingly. Push the example assets for now since old ones are ancient
4 Months Ago
Add Gizmo.Draw.Grid(GridAxis, Vector2) to draw a grid of non-square size
4 Months Ago
Make LobbyCards look different from PackageCards so it's a bit more obvious that they are lobbies and not the games themselves.
4 Months Ago
Fix divide by zero error when dragging sprite with single frame in first animation
4 Months Ago
Add leaderboard support
4 Months Ago
Update SpriteTools Move Player Nametags code into its own razor panel so it can update with Time.Now without updating everything else Hopefully fix most of the animation networking issues. Also fix sounds for other players not playing
4 Months Ago
Remove cooldown on resize so it's snappier Added Multi-Select to Tiles List and supported MultiEdit in the Selected Tile Inspector. Adding/Removing tiles no longer rebuilds entire list, only makes necessary changes. Also fixed a few NREs from previous commit Can remove from selection when CTRL selecting in tile list Can now MultiSelect from gizmos directly https://files.facepunch.com/CarsonKompon/2024/July/26_20-12-InsidiousChinchilla.mp4 Can now create new tile even if tiles have yet to be generated. Will use current settings from Setup tab. Updated warning box text in Tiles tab to fit. Update inspector when adding first tile/removing last.
4 Months Ago
Adding/Removing tiles by clicking on gizmos are part of the undo stack Tiles have their own Guid now. This does not get serialized and are assigned on load Don't allow to box to resize into others. Prevent deselecting gizmo when resizing up-left LabelTextEntry text now updates when property updates (if it was edited elsewhere) Added "Selected Tile" section to Tileset Editor Inspector Put Selected Tile section in an Expand Group so we can have ControlSheet groups within that are less confusing Display [ReadOnly] Index in Selected Tile group Removed TilesetResource.SheetRect and replaced it with two Vector2Ints (Position and Size). Fixed can drag logic on Corners
4 Months Ago
Draw selected widget above others Add CornerDrag Gizmos to Selected Tile. Change cursor when hovering based on direction. Show as hidden when movement is invalid. Can click and drag Corners to resize the tile. Bunch of updates to invalid resize checks https://files.facepunch.com/CarsonKompon/2024/July/26_14-08-PlainArmednylonshrimp.mp4
4 Months Ago
Move Editor Controls to Controls folder Clean up some tile control styling Added SelectedTile to Tileset Editor. Can select from list. Deleted tiles show as ghost tiles, selected tile is highlighted and is a different colour. Can click on Tile Gizmo to select it, right click to delete. Deleting selected tile will select first tile it can. Clicking on ghost tile creates tile at that position. Make necessary fixes to allow swapping out sheets https://files.facepunch.com/CarsonKompon/2024/July/26_12-06-NextMealworm.mp4
4 Months Ago
Organized Editor folder and made LabelTextEntry agnostic with OnStopEditing action Add Name to TileResource.Tile Fix not used warning Add EmptyValue to LabelTextEntry Add PixmapCache for creating cropped pixmaps from textures Use PixmapCache in SpriteEditor Created TileListControl and TileControl for TilesetEditor. Shows list of all created tiles. Shows preview icon. Can be renamed/reordered/ect. https://files.facepunch.com/CarsonKompon/2024/July/26_10-38-TrickyHellbender.mp4
4 Months Ago
Added OnOrg to PackageCard and PackageList. Added basic Org Page when clicking org on Main Menu. Helps users find games made by the same creator(s). https://files.facepunch.com/CarsonKompon/2024/July/26_01-31-CuddlyCaracal.mp4
4 Months Ago
Add Regenerate Tiles button with warning beneath explaining what it will do Only show warning when tiles already exist Display image in Preview when set/updated. Show import gizmos when in setup tab. Show WarningBox with a different message when trying to view Tiles tab with no Tiles Generate Tiles button generates tiles from shown import gizmos. Doesnt display in Tiles tab yet Start on Tiles tab if Tileset already has Tiles Onlyu display new import gizmos when no tiles exist or when hovering the Regenerate Button Added "Delete All Tiles" button when resource has tiles. When undoing/redoing an action the inspector will rebuild appropriately Added Tile Gizmos. Hovering over a Tile Gizmo will highlight it. Implemented TilesetResource.CurrentTileSize so Setup variable can affect current tiles (with optional regeneration button) https://files.facepunch.com/CarsonKompon/2024/July/26_00-18-MadeupHoneybee.mp4
4 Months Ago
MultiPick -> MultiSelect Add SegmentedControl to Tileset Editor with Setup and Tiles tabs Tileset Editor undo/redo works properly now and has undo steps for properties changing
4 Months Ago
Add Inspector to Tileset Editor Add RenderingWidget/Preview to Tileset Editor Add base settings to TilesetEditor Inspector. Minor changes to TilesetResource
4 Months Ago
VectorInts are fields instead of properies (like they used to) with [JsonInclude] fields
4 Months Ago
Don't make VectorInt properties readonly since some games set them already (fixes tests failing)
4 Months Ago
Added a lot more functionality to Vector2Int and Vector3Int. Much more in line with their floating-point counterparts now, only including what makes the most sense for integer values. Also added documentation/summaries to everything. Resolves Facepunch/sbox-issues#5254 Fix Vector3Int converter error
4 Months Ago
Fix Vector2.Json serialization only loading x value when supplying string as json object and not number array. Also updated function summaries that said "vector4" instead of "vector2" Vector2Int and Vector3Int values now serialize to/from JSON properly. Resolves Facepunch/sbox-issues#5821 Created Vector2Int/Vector3Int ControlWidgets. Resolves Facepunch/sbox-issues#5606
4 Months Ago
Move SpriteRenderingWidget up to SpriteTools namespace Move SpritesheetImporter from SpriteTools.SpriteEditor namespace to SpriteTools namespace and make import an Action that SpriteEditor hooks into. Hook up SpritesheetImporter to TilesetEditor window
4 Months Ago
Updated TileResource structure and prepared for creating Tileset Editor Move UndoStack from SpriteTools.SpriteEditor to SpriteTools namespace Removed AllWindows from SpriteEditor. Removed some debug logs from SpriteEditor. StateCookie is based on resource opened More updates to TilesetResource. TilesetResource is titled "2D Tileset" and Tileset Component is "2D Tileset component". Added SpriteComponent and TilesetComponent to "2D" category Basic TilesetEditor (Empty Window for now. Fitted with asset saving/loading, toolbars, undostack, ect.
4 Months Ago
Mark `MenuAttribute.Shortcut` as Obsolete. Get identifier from `[Shortcut]` attribute if one exists. Update Shortcut value in AssetInspector Display shortcuts on Tool and Subtool buttons without need for ShortcutAttribute on the class
4 Months Ago
Fix number keys not working Create keybinds for the different Tools now that Editor.Shortcut is internal Create keybinds for the different subtools for the same reason
4 Months Ago
Fix Function Keys not being sent when in-game since it was checking for a console bind instead of keybind
4 Months Ago
Remove `Editor.Option.ShortcutContext` Strip native shortcuts from `Editor.Shortcut` class. Make class internal. Documentation cleanup Update Shortcut.Invoke so it handles Mode logic EditorShortcut.Invoke is now a bool returning whether or not a shortcut was invoked from the pressed keys Shortcuts are now invoked from Sandbox.Tools instead of thru native QT shortcut. Make `scene.fullscreen` (F4) bind static. Fixes rebuilding issue.
4 Months Ago
Created EditorKeybinds.cs with a few starting keybinds Move Keybinds into EditorPreferences since that makes more sense Add RegisterShortcuts() function whenever shortcuts are registered and use the EditorPreferences keybind instead of hardcoded string Added Editor Keybinds page to EditorPreferencesWindow Subscribe all RegisterShortcut voids to keybinds.update EditorEvent https://files.facepunch.com/CarsonKompon/2024/July/10_21-46-TautDuck.mp4 Create shortcut for EditorCycleViewMode Make Keybinds page scrollable, add Reset to Default button, and add Are You Sure popup to Reset button Use TitleAttribute for keybind names https://files.facepunch.com/CarsonKompon/2024/July/10_22-23-FakeGourami.png Add AllowModifiers to KeyBind widget, set to true for Editor Keybinds Page (Allows you to bind CTRL+SHIFT+ALT+Whatever) Some FileOption binds, but they dont auto-update yet. Will need to find a good way to do that for Option entries Call keybinds.update EditorEvent on Reset to Default Created EditorShortcuts.cs to eventually replace EditorPreferences.Keybinds Need to call this after EditorTypeLibrary is created Register shortcuts elsewhere and remove some option shortcuts Change default shortcut type Register shortcuts on hotload Convert some older shortcuts into the new [Shortcut] attribute Change shortcut defaults Update EditorShortcuts to include Identifier and Keys, including method to get current keys from overrides (player defined overrides) Display [Shortcut] shortcuts in Editor Keybinds page instead of EditorPreferences.Keybinds EditorShortcuts rebinding actually works now, much more lightweight than prior version Make user overrides save properly Get Name and Group properly, allow attributes to override. Get keys from shortcut name in Option.cs Allow non-static method shortcuts since there seems to be a good chunk of those Stop feeding shortcut to Options for now Fix size of Editor Keybinds page Fix using the wrong widget for non-static shortcuts Move EditorPreferences.Keybinds over to new [Shortcut] attribute system on each function Completely remove EditorPreferences.Keybinds Change name/groups for a few shortcuts Order categories by name in PageKeybinds Remove some debug logs Create Texture Editor and Actiongraph shortcuts Create ShaderGraph, Hotspot Editor and some more scene shortcuts Add GameObject/Transform shortcuts and fix static method issues. Made grid size shortcuts Window type instead of Widget type Make all the different editors share a few binds (So there's not a Copy,Cut,Paste,Undo,Redo,ect. per-editor) Make classes with [Shortcut] attribute properly rebindable (used for editortools) Cleanup shortcut groups Added individual Revert button when bind is different from the default https://files.facepunch.com/CarsonKompon/2024/July/12_08-54-UnimportantTarantula.mp4 Qt Option now takes shortcut ident (eg. "editor.undo") and internally resolves bind (eg. "CTRL+Z"), updating when changed. No longer registers shortcut internally when set. Shortcuts with Function Keys are always to editor even when Game Frame is in focus F3 and F5 editor commands are now Shortcuts like everything else Fix shortcut not displaying on Align To View option Fix SaveMixer being static Change "F5" -> "editor.toggle-play" on Play menu option Cache the overrides so we don't have to keep checking against EditorCookie Super minor cleanup Rename Name -> DisplayName so there's no conflict on KeybindPanel Fix ShortcutOverrides not loading properly Use CodeToString(ButtonCode) instead of the weird enum parsing I was doing.
4 Months Ago
Fix e defined but not set Removed unused variable viewerPosition Show preview tile under cursor when in Tileset Tool. Fit to Grid nicely
4 Months Ago
Import some tile assets Test Tileset Resource TilesetLayerControl deletes on right click without the additional popup Rebuild TilesetToolInspector when Selected Layer changes. Serialize Selected Layer as part of the ControlSheet Fixed TilesetComponent SceneObject vertex maths. Each layer now gets its own material, sharing materials between layers if same atlas is used. Update Grid Size to follow Tileset size Fix Selected Layer inspector update TilesetComponent NRE fixes
4 Months Ago
Sync attacking animation Broadcast Explosion animation for Exploder Fix Fade-In. Do it entirely thru CSS so UI doesnt rebuild every frame while fading.
4 Months Ago
No longer take ownership of Manager GameObject No longer take ownership of the GameObjects that shouldn't be owned by anyone Mark a bunch of client-side prefabs as Never Network Update Shadow Spawning and make them client-side. Reduces a ton of network load. Remove .wav files from ResourceFiles Move SpawnShadow from OnAwake to OnStart to ensure GameManager initializes Stop looping through every player and doing sqrt calculations for each individual sfx Don't network Current/Required Experience since it isn't shown to other players Don't run certain Spitter code on non-host EnemyBullets should only check collisions on host Don't update Hud on Time.Now, make fade in client-side Save game.scene after having it run the JsonUpgraders
4 Months Ago
Only check for StartupScene in Publish Wizard if Type == "game"
4 Months Ago
Fix error when startup scene is set but not immediately recognized
4 Months Ago
Ask for confirmation before deleting animation w/ right click Added .Copy() functions to Tile and Layer classes TilesetToolInspector NRE fix Added Context Menu to TilesetLayerControl https://files.facepunch.com/CarsonKompon/2024/July/23_07-52-ImperfectAmphibian.mp4 Fix TilesetLayerListControl Height Create TilesetSceneObject for drawing tiles in a single Graphics.Draw call. Replace Delete IconButton with Lock Button. https://files.facepunch.com/CarsonKompon/2024/July/23_08-49-GrowingMastiff.png
4 Months Ago
Fix NRE when opening PublishPage directly
4 Months Ago
Added Warning to Publishing Wizard telling you which issues need to be resolved in order to upload. Don't allow upload if startup scene is not set or is set and does not exist. https://files.facepunch.com/CarsonKompon/2024/July/23_07-24-LovablePaintedladybutterfly.png
4 Months Ago
Added Dragging to re-order Layers https://files.facepunch.com/CarsonKompon/2024/July/22_23-09-ThoughtfulNabarlek.mp4 Change Height of Layer Scroll Area Darken the layer being dragged