4,766 Commits over 1,371 Days - 0.14cph!
If value is already IPingReceiver we don't need to search the hierarchy
It's possible for Components to be null if a Component is no longer valid (GameObject = null)
Only the host should handle trigger enter logic in Extractionpoint
Pass in IPingReceiver id if exists into Ping RPC - check if passed target value is valid in setter
No need to have multiple screen panels here
Initial flashbang prefabs
Flashbang Effect component stub
Basic overlay + bloom effect
Extra effects
Dsp (use weird.4 for now?)
Only apply flashbang effects if we see the flashbang
Sound effect
Explode sound
Fix resume of flashbang effect
Add freeze frame overlay to flashbang
Capsule flashbang collider
Merge pull request #128 from Facepunch/flashbang
Flashbang
Capsule flashbang collider
Fix resume of flashbang effect
Add freeze frame overlay to flashbang
Flashbang Effect component stub
Basic overlay + bloom effect
Extra effects
Dsp (use weird.4 for now?)
Only apply flashbang effects if we see the flashbang
Initial flashbang prefabs
Call TransformChanged() once again in InterpolateFixedUpdate
Clear pending updates in SceneNetworkUpdate too
Make sure we use TargetLocal in any transform changed callbacks called from within interpolation phase to fix physics bodies using wrong values. Add internal InterpolationWorld getter in GameTransform and use that in ModelRenderer OnTransformChanged for updating scene object position (fixes broken interp.)
PhysicsWorld.CollisionRules Refactor - Project Settings Small Network Files Support (#1604)
* Add PhysicsWorld.CollisionRules getter. Delete ServerConfig. Update collision rules json on world if hash changes before physics step. Project Settings (.config) are networked via Small Network Files - can react to changes
* Do GetHashCode this way
* Initialize CollisionRules
* Handle small network files from different file systems this way?
* Fix
* Fix documentation
* Reset config files
* Kind of genericize SmallNetworkFiles - push / add / remove files from it externally - mount its MemoryFileSystem externally as well to desired file system
* Fix - but obviously it can't be done this way it's absolutely awful
* Add all files from network when mounting on client side
* Method name update
* Remove some duplication
* Cleanup
* Fix inverted condition
* Unnecessary arg
* ToHashCode
* ReadWithFallback will return new T() if package is null too
* Store CollisionRules from Project Settings in ProjectSettings static class - update it when project settings change. Physics worlds using this reference should update automatically
* Call ProjectSettings.Reset in ResetEnvironment
* Clean up
* Swap these
Call ProjectSettings.Reset in ResetEnvironment
Store CollisionRules from Project Settings in ProjectSettings static class - update it when project settings change. Physics worlds using this reference should update automatically
ReadWithFallback will return new T() if package is null too
Add all files from network when mounting on client side
Fix - but obviously it can't be done this way it's absolutely awful
Kind of genericize SmallNetworkFiles - push / add / remove files from it externally - mount its MemoryFileSystem externally as well to desired file system
Do GetHashCode this way
Initialize CollisionRules
Handle small network files from different file systems this way?
When deserializing a GameObject create components in a try/catch and log an error if it fails. If no component could be created, add a missing component. Fixes not being able to open a prefab if there's an error in the constructor of a component. Closes Facepunch/sbox-issues#4397
Add Package.FileSize (MB) ( Closes Facepunch/sbox-issues#4908 )
Add PhysicsWorld.CollisionRules getter. Delete ServerConfig. Update collision rules json on world if hash changes before physics step. Project Settings (.config) are networked via Small Network Files - can react to changes
Ignore packets from non-host until we're fully connected ( Fixes Facepunch/sbox-issues#1595 )
Add Spawn Pickup Chance variable to Breakable prefab (awesome)
When calling NetworkSpawn we break from prefabs in all of our ancestors ( Fixes Facepunch/sbox-issues#5046 )
Added screen shake effect when near an explosion from a HE grenade with same falloff applied to damage for intensity
Fix merge conflict in player prefab
Unsubscribe from OnTeamChanged in PlayerId.OnDestroy
Add a priority of 10 to ChangeAttribute. Change logic will be done before Sync Var logic, ensures we can get the old value properly. This should fix recursion in change callback.
Add Priority to CodeGeneratorAttribute - allows you to specify priority. Higher priority means the target method/property is wrapped first.
Wrap SendSpawnConfirmation call in !IsProxy check so we every player doesn't confirm it
Check valid scene in SceneNetworkSystem message handlers
In OnIsDeployedPropertyChanged don't update deploy state if OnStart hasn't been called yet (be nice to have a property on Component to know if this is the case, maybe we can expose _startCalled)
Don't need to clear interpolation when cloning these prefabs in fixed update now
Don't interpolate when setting local transform within fixed update if the GameObject isn't enabled. Fixes trying to interpolate to initial position when cloning GameObjects in fixed update, but really we need a way to say "was the game object created this frame" and if it was then don't interpolate.
Clear interpolation properly and don't apply new interpolation if transform update received over network with clear interpolation flag
Another minor fix
Fix NRE when melee attacking someone due to hitbox being null