If players recover from being wounded, they can't get wounded again within one minute; if they get wounded again they go straight to being dead. That's intentional, but the one minute timeout was being applied even after death and respawn. This is now fixed.
Removed the diesAtZeroHealth bool that I added some time ago for vehicle modules. Use a system similat to BasePlayer instead, just overriding the Die() method to not die.
Everything that was currently using diesAtZeroHealth = false:
- BaseVehicleModule now uses a blank Die() method instead.
- computerstation.static, ReclaimBackpack, ReclaimTerminal, StaticRespawnZoneBandit, StaticRespawnZoneCompound, microphonestandio, and elevatorioentity were immortal so wouldn't take damage already.
- StorageMonitor.deployed has been changed from DeployableGeneric protection to Immortal.
Wounded system changes:
- The player is only incapacitated when looted, falling, or in deep water
- Crawling: The player goes straight to dead state and ragdoll when 0 HP, no more going into incapacitated.
New, axis-rotated capsule for PlayerWalkMovement when crawling. Rotating the axis was the only way to have the player be able to crawl under half-walls without also being able to see through walls at their head position. PlayerWalkMovement now also sets its rotation based on the player model's rotation, instead of staying at Quaternion.identity (since the capsule was always the same all the way around, it never needed to actually rotate before).
If there are UI actions on the thing being looked at, but none of them are currently available to be shown, don't return any of them. Previously if no options were available, the first option would be returned.