# Description
I made this entirely on a whim to prove a point in the middle of a
conversation. I have not tested this code, but I'm confident that it
will work as advertised.
This refactors the public KickCamera function so that it no longer:
Divides by 1, divides by 1 again, multiplies by 1, normalizes a
vector(turning its A value to 1), and then divides said vector by 1
again for good measure.
Instead 1 has been replaced by MassContest, wooh! I also got rid of
redundant steps. The effect of this is that characters with greater than
human-standard mass are slightly more resistant to all sources of camera
shake(Explosions, gravity generator turning off, gunfire, being hit by
flying objects, etc), while characters with less than standard human
mass experience a greater amount of camera shake.
You're welcome. Now go find a Felinid to shake vigorously.
# Changelog
🆑
- add: Camera Shake is now affected by character mass. Small characters
experience more camera shake. Large characters experience less.
* Use new Subs.CVar helper
Removes manual config OnValueChanged calls, removes need to remember to manually unsubscribe.
This both reduces boilerplate and fixes many issues where subscriptions weren't removed on entity system shutdown.
* Fix a bunch of warnings
* More warning fixes
* Use new DateTime serializer to get rid of ISerializationHooks in changelog code.
* Get rid of some more ISerializationHooks for enums
* And a little more
* Apply suggestions from code review
Co-authored-by: 0x6273 <0x40@keemail.me>
---------
Co-authored-by: 0x6273 <0x40@keemail.me>
(cherry picked from commit 68ce53ae17985876d6d112b764b2144964a9f42e)