branchrust_reboot/main/world_update_2/radioactive_watercancel
81 Commits over 31 Days - 0.11cph!
Radioactive water:
- Apply radiation from spinklers in the same way as wetness (more reliable and easily adjustable)
- Improved the abilities of TriggerRadiation (LOS Support, Height Check Support and Collider Radius Support)
- Balanced sprinkler damage
Backpack contents NRE fix
world_update_2 -> radioactive_water
Dont override onItemAddedRemoved delegate
Ensure upper bound clamp of the method version of AfterProtection is set to a large enough value so the value doesnt incorrectly clamp to the radiaition amount itself
Bubble up rads called on server only
Prevent bubble up from throwing an NRE
Radioactive water is finally supported in backpacks:
- Radioactive poll requests 'bubble' up through children to parents
- ItemModContainerRads now looks at parent changes as well as item parent changes
- Huge amount of debugging and messing around
- Ensure containerWear is properly added to calculate inventory radioactivity
- Ensure ItemModContainerRads goes through every item in its contents
- Added extra profiling to ItemModContainerRads
- Added backpack contents to player inventory rad damage
- Swapped backpack to use ItemModContainerRads to ensure its radioactivity levels are performantly calculated
world_update_2 -> radioactive_water
Water purifier no longer purifies radioactive water
Ensure throwing out water forces a rad count on the vessel
world_update_2 -> radioactive_water
Increased buffer on water body physics check
Remove a bunch of the buggy water check logic. Just parse radioactive status of water on drink/fill requests
Radtown:
Enabled mesh collider on toxic water surface
Raised second radioactive water source to extend higher up
S2P
Some changes on the new radioactive body drinking detection. Closer.
Fixed radioactive water poisoning sound trying to access a higher index by accident
Added null check in CalculateInventoryRadioactivity to prevent NRE when updating player inventory radioactivity
Fixed broken bota bag prefab
Ensured it has correct container to support rad water
world_update_2 -> radioactive_water
Remove the old way to find out if a water body is radioactive.
New way doesn't require a texture map.
world_update_2 -> radioactive_water
world_update_2 -> radioactive_water
Fixed radiation triggers returning minimal/no rads
Attempt to fix an incorrect GUID error
Ensured belt and main inventory on the player do the correct checks.
A container filled or refilled in inventory should now correctly notify the rad check system.
Made new method called on containers when a child changes radioactive amounts
Ensures containerBelt and containerMain do rad checks at the correct times.
Ensured radioactive water uses the correct values to irradiate players. This might be too high now.
- Radioactive water now inflicts damage on the person carrying it.
- Fixed uncessesary send update rad checks
Fixed GUID error when dropping an item with ItemModContainerRads
world_update_2 -> radioactive_water
Radioactive water~
- Ensure base radioactivity is always set on object init
- Ensure base radioactivity is always set on object load
- Added profiling to item container rad count
- Move radiation map creation to just happen when the first radioactive body tries to add anything
Ensure current serialized map data is updated with the new radiation map each time set radiation body is called
Ensure water radiation map persists between saves
Cleaned up and streamlined onItemAddedToStack calls from base liquid vessel
ItemModContainerRads now listens for a bunch more ItemContainer changes
Much more accurate rad count for a vessel
Swapped radioactive water icon
Added generalised Radioactive flag to item
Flag is set true/false by static general radioactivity
Flag is also set true/false by the new item container (that supports rads)
Play some rad noises at appropriate levels for a few seconds should the player be inflicted with rads through poisoning rather than exposure
Huge reword and restructure to radioactive items~
Any item can now be radioactive
Added new flag on containers to check if any radioactive material is inside before they end up having to count up all their rads. Only used on the ItemModContainerRads for the moment
BaseRadioactiveMaterial now declared
Extra comments
Huge code cleanup with clearer method names
Poll rad amount inside container when opening
Centralised MaterialToRadsRatio inside Radiation.cs
Buffed radioactive water.
Hazmat still more than enough protection
Reworked ItemModContainerRads to only cache rad updates on item added/removed
Should improve reliability whilst also preventing checks on OnDirty providing a decent performance increase
Ensure ItemModConsumeContents also calls onItemAddedRemove
Drinking from a vessel now calls onItemAddedRemoved
Added static WaterTypes class. Swapped water Item Definition string lookup to a centralised set of definitions. Eg:
ItemManager.FindItemDefinition( "water" ) -> WaterTypes.WaterItemDef
Remove weird ass Visual Studio Code formatting
Can no longer splash players with radioactive water who are in safe zones
Vehicle fuel tank now supports radioactive water