4,685 Commits over 976 Days - 0.20cph!
Fix NRE for weapons that don't have shooting
Add WeaponData.Price
Add basic idea of teams, hide non-friendly player markers for now
Disallow unequipping current weapon, add run hint
Add knife weapon (can't hit with it yet)
Fixed not being able to inflict player damage
Normalize WishMove so moving diagonally isn't faster
Adjusted player movement speeds
Expose some player properties for designers
Cleanup, remove sprint
Add slow walk, no footsteps if slow walking
FOV offset is too much when aiming, reduce it
Add GameEventSystem
Temporarily turn off impact particles
Don't show player marker if they're dead
Implement hitmarkers
Ricochet, object penetration
Hook aim inertia values up for viewmodels (https://files.facepunch.com/tony/1b2511b1/sbox-dev_2sW0LA4PSo.mp4)
Fixed MP5 irons
Bind Slot3, add USP to default loadout
Use new M4 sound, don't render player marker if behind
Added Marker.IsOffScreen, Marker.IsBehind, Marker.ClampToScreen, screen safezone
Added chevron that points towards the target while it's off screen (https://files.facepunch.com/tony/1b2511b1/sbox-dev_8FvXZNa3to.mp4)
Start framing out a hud marker system
Don't display markers that are behind the player by default
Code cleanup, docs, hud adjustments
Demonstrate world input issue
menu: Only create the VR player when we're running in VR
Add button for toggling hold manually in the editor (outside of VR)
https://files.facepunch.com/tony/1b2211b1/sbox-dev_HsOtOwwohC.mp4
If a player fails a serve, reset the state back to serving
Kick off the game loop, place ball in player's hand accordingly
Ball hit loop
Create PlayArea utility component to dictate who owns the area where the ball is bouncing (https://files.facepunch.com/tony/1b2211b1/sbox-dev_qfxGhcSR1G.jpg)
Ball bouncing game loop
Minor refactors to holdable/hand placement
Some boilerplate on game loop, add TeamComponent, Team enum
Add global events for when the ball is hit, ball bounces
Refactor a bit
Team changed events
Add InteractionRange to WorldPanel component (resolves sbox-issues/issues/5550)
Added HandMenuPointer, use the hand's index finger to cast a ray forward for WorldInput, use RayToLocalPosition to grab transformed ray distance (feel like we could expose this in a better way)
Use particle for menu pointer
Add DisableIfInVR component, good to get rid of useless flatscreen cameras
Simple main menu (https://files.facepunch.com/tony/1b2111b1/sbox-dev_dYwBHI94uZ.mp4)
The ball is a global instance stored by GameManager
Add PlayerBallManager, can spawn ball, recall ball to hand
Added super basic paddle ball test (https://files.facepunch.com/tony/1b2011b1/sbox-dev_jUVBNTwkXj.mp4)
Give ball and paddle suitable triggers
Refactor controller input, add InputState
Bunch of work all around, code to plant a paddle and ball in the player's hands, start designing hold types
Add Hand, HandPreset system from Gunbuilder
Create Player Prefab
Create other needed prefabs (Ball, Paddle)
Start designing player class
Fixed barrier prefab being movable
Start writing a bunch of code for holding objects w/ hands (based off Gunbuilder, goal of cleaning it up for a lib)
Scene Project Start - move all code to another folder for reference, create a basic scene map (https://files.facepunch.com/tony/1b2011b1/sbox-dev_0EoXrWDBgh.png)
Fix Project.HasCompiler logic to look for any compiler (resolves sbox-issues/issues/5531)
Mark a door as technically open if the starting rotation is non-zero, means you can push preset ajar doors
Minor adjustments to door to match design
Adjust base door rotate speed
Make doors behave as we wanted them to
Revert "Don't create control widgets if their type doesn't have a default constructor (resolves sbox-issues/issues/4732)"
This was breaking certain types that are created from native
Don't create control widgets if their type doesn't have a default constructor (resolves sbox-issues/issues/4732)
GetButtonOrigin tries to grab collection bind in first slot before falling back to input action default (resolves sbox-issues/issues/5526)
Add "Reset to Default" menu option to ControlLabel
Fixed input rebinding not working when running a local game / in the editor
Fixed GameInstance.TrapButtons not trapping when we don't have a menu