4,648 Commits over 976 Days - 0.20cph!
Don't bother doing grabby input stuff if proxy
Remove unused component, cleanup
Add some gizmo handles for VR components
Make Component.Reset() reset its PropertyAttribute marked properties
Add helpers for inventory clearing/setup - reset player inventory and move to spawnpoint on Respawn
Slide mechanic takes into account ground normal, can't slide up slopes
Don't play footsteps if we're sliding
Disable player body on death, enable it on respawn
Fall back to no hold type if we don't have a weapon out
Add footstep component
Add developer menu (https://files.facepunch.com/tony/1b2711b1/sbox-dev_RNMgcIDcBP.mp4)
Expose aim offset per aim function
Work on life states, depossess player on death, add pawn possession test
https://files.facepunch.com/tony/1b2711b1/sbox-dev_9RDuMDYpfP.mp4
Made aiming a weapon function instead of being a bool on the player
Removed WeaponStatsResource, WeaponStats, useless complexity
Can't shoot gun if we have some tags
Added TagBinder for being able to bind tags nice easily, get rid of extra tag container on weapon
Field of view programmatic adjustments, force two-handedness for viewmodels, weapon function tags
Fixed a few asset references
Much faster FX decay time
UI reflects entire inventory now. Add USP, fixed bug where all weapons would be active on startup
Temporarily use batch publisher for "Upload" button in AssetPublishWidget, since it's doing nothing currently
Don't make asset metadata for cloud assets, since we're mounting downloaded cloud stuff first, asset browser tag code is generating fake metadata for all this cloud stuff and causing problems when we're wanting the real metadata
Fixed other player's HUD rendering always
More robust method of weapon equip events
Add PlayerInventory, can hold multiple weapons, and can holster current
Go from target GameObject's root downward for detecting IDamageables
Add Weapon.UpdateRenderMode, to hide the world model when locally controlling a player
Simplify damage, make it less shit
Upon changing a component type to abstract and you have component references, add it as a missing component
Use Json.Serialize/Deserialize for BaseFileSystem.WriteJson/ReadJson, instead of different serializer options which didn't support our custom converters
Fixed case where the player might not have a weapon
Create PlayerBody component, move weapon to hold bone when it's set to current
Organized some prefabs/resources
Re-implement Input.GetAnalog, respective glyph icons, moved some files into dedicated Controller directory
Localization now lives in its own folder at the root of a project, instead of "Assets\.localization"
- Publishing a project will pick up this folder automatically
- All you should need to do is move your .localization folder to the root of your project, and rename it to "Localization"
Move menu localization files
Adjustments to boost mechanic
Can't aim while sprint/sliding ("no_aiming" mechanic tag)
Add proxy update for mechanics, so we can grab tags for networked players, crouch/slide/etc sync'd this way
More work on networked players
Wrap player input around IsLocallyControlled
Code refactor, start working on pawn possession (so we can do networked spectators later)
.gitignore update, case sens changes
Adjust recoil system to be more sane
Add some UI components back, start on ammo hud. Default map facepunch.prison
Reflect real ammo counts, fixed MP5 ammo container
Fixes
Fix input to work on the controller
GameObjectControlWidget: allow opening prefabs in editor
Removed some bullshit files, compile fix
Bullets point towards lerped direction, not raw input
Fixed projectile collisions being funky, disable main collider properly
Implement haptics for shooting
Trigger haptics when taking damage
Start on pickup system, refactor shooting a bit to support haptics
Shield effects tint based on its current power
Use controller color for player's world panel
Add Rick's spaceship model