7,517 Commits over 3,653 Days - 0.09cph!
Remove player_pickup, items, item_generic, physics_prop_ragdoll
Remove junk from player local data
Start cleaning out junk from baseplayer
Don't init scene file cache, we don't care about choreo, fixes warning
Don't warn about missing mapdoc helpers in tool scene vmap, this is harmless and to be expected (cos tool scene isn't hammer and some helpers only exist in hammer)
Remove all native code related to vehicles
Remove damagetypes
Remove native gamemovement code
Remove base_playeranimstate
Remove gameplay junk from gamerules (ideally we shouldn't even need a gamerules class anymore)
Remove all native team code
ModelDoc: Add angle snapping settings for model rotation https://files.facepunch.com/layla/1b1611b1/sbox-dev_cq0WOEnWhg.mp4
EditorMainWindow OnClose is getting called twice when closing game from taskbar (maybe Qt bug?), make sure RequestHS_Quit isn't called twice. Never call the base closeEvent for managed main window, we always need it valid during shutdown
Fix managed Qt dock window and window DeleteOnClose possible typo causing it to never be set to false. Don't delete on close for EditorMainWindow on shutdown, allows for proper shutdown and cleanup and fixes annoying assert we've had for ages.
Capture input device with SDL and add example tool that can start recording voice and save to WAV file
Tweak orbit camera a little bit to smooth out distance after a collision https://files.facepunch.com/layla/1b1211b1/sbox_0017.mp4
Remove all voice code (we handle this) Remove takedamageinfo (causing problems on build server)
Remove fgd unit test. Remove a bunch of legacy C++ entities (func_breakable, func_lod, func_ladder, func_dustmotes, func_dustcloud)
Add hammer input for shatter glass reset
Delete facepunch.sandbox.fgd
ModelDoc: Add window to bone merge models to the preview model https://files.facepunch.com/layla/1b1111b1/sbox-dev_f5498a5rRI.png
ModelDoc: Allow models to have a base model so that models can be extended with extra animations (experimental)
ModelDoc: Give the user a chance to copy a model into an addon dir if they try to import a model from outside an addon dir
Remake multi select combo box for enum flags in pure C# (needs styling)
Add multi select combo box, use it for enum flags in property editor https://files.facepunch.com/layla/1b0511b1/sbox-dev_bxdOgE3sui.png
Animgraph: Hook up num frames, frame rate and duration for clip properties
Animgraph: Clip drag drop creates single frame anim node for anims with 1 frame
Animgraph: Handle selection changed in anim clip widget
Animgraph: Add option for default network mode for newly created nodes https://files.facepunch.com/layla/1b0411b1/sbox-dev_jelIpRdlUW.png
Animgraph: Add animation clips window to easily drag in animation nodes https://files.facepunch.com/layla/1b0411b1/432432.mp4
Fix mistake when converting degree to radian for set float particle function
ParticleEditor: Convert from degrees to radians for attributes which are angles in C_INIT_InitFloatCollection
Unfuck the collision groups and interacts for glass shards so player can pass through broken panels
Do a plane trace to glass plane when taking explosion damage, fixes glass not shattering from explosions in dm98
Remove device_dsound and device_xaudio2
Set SDL_AUDIODRIVER to directsound for pre windows 10 (dota does this so we probably should too)
Update SDL2 to v2.0.20 - Fixes dodgy audio with some sounds
Add icon for state machine, show node icons in context menu
Convert CAddAnimNode to use output ids
Cleanup
Fix output nodes sometimes not secondary highlighting
Handle secondary highlighting of nodes that don't have a node instance (groups)
Get output node will skip other output nodes until it finds a legit node, allows chaining of groups
Reset the output id when removing connection
Change root node to use input connection instead of child id
CAnimGraphFixedData::GetUpdateNode asks the node for the actual update node when output id is valid
Never add a update node for child nodes that have a valid output id (nodes connected to groups)
Cleanup
Try to update secondary highlights for group nodes
Better way of bypassing group nodes when creating update nodes but still not ideal
Check all nodes in graph when replacing node id references from copy paste, not just the ones in the current node manager
Make sure the child node is resynced last
Resync graph nodes for parents when attribute is modified, they may have been refreshed
Refresh references to input/output node ids in group node if they're old
Fix crash in graph binding if group output isn't hooked up to anything
Delete the old output edges and recreate them with the new node
Fix output pins of group input not connecting up to input pins of group output properly
Make sure output plug edges are removed and recreated on node refresh
Add CAnimNodeBase::GetGraph so we don't always have to go through the context to grab the graph
Bypass group nodes when creating update nodes for graph binding
Get the correct child id when bypassing group nodes
Switch blend anim node to use input/output ids as a test
kv3 conversion for CBlendAnimNode
Draw node stacks differently with secondary highlight
Hooking up nodes to group node input now works
Save input connection map for group node
Generate a unique id for connection proxy output
Do the same for output node
Add util for saving/loading hash table but direct value instead of ptr value (annoying, why can't the schema shit just handle hash tables?)
Save input connection for connection proxy items