For whatever reason we hardcoded the health value for drills at 200 brute damage before they can gib. 200 brute damage was picked as it was double the max health of /mob/living/carbon/whatever and double the max health was like, the cap on brute damage when someone is really, really, really, really dead.
Enter simplemobs. Their max health is regularly under 100, which means a hardcoded value of 200 brute damage to trigger gibbing effects is bad. Not that it matters anyway, because simplemobs also brute damage cap at maxHealth instead of maxHealth * 2 so the only simplemobs that could be gibbed by mech drills are those with 200 or more health.
This has been changed. Simplemobs now cap out at maxHealth * 2 damage, in line with all other /mob/living while drill code has been changed to check for maxHealth * 2 when gibbing instead of a hardcoded 200.
Fixed and improved the bug report template use when the 'Report Issue' button is used in-game. It now uses the correct template location, as well as automatically filling in the round ID and testmerges.
We also now show [s] PRs that are testmerged, as ok-d by oranges, as this is an unofficial label that anyone can apply and doesn't necessitate hiding. It also makes debugging rounds where this was present but not reported more difficult.
Adds TGUI-based alerts to replace the old tgalert system. Replaces all uses of tgalert with tgui_alert except for one, the 'Report Issue' button, as people were (understandably) concerned that this button using tgui will prevent a tgui bug from being easily reported.
These windows have a nice little progress bar indicator of how much time they have left, and will automatically close themselves after this time elapses.
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
Moves the sorting of the entries within the crew console to be clientside. There's no reason to have this serverside.
I've also refactored the UI data code for the crew console in general, reduced code duplication and reduced unnecessary data transfer of nulls.
So #54797 changed addiction_list to instantiate as a null instead of a list. Turns out a few things relied on the list existing!
Things like health analyser/medical kiosk chem and addiction scans broke, and smokers would no longer get addicted!
Made a few places check if addiction_list is null before continuing.
(Lemon's note, refactored some code to make it cleaner/removed some unneeded loop typechecks)
This changes how carbon/humans stabilize body temperature, and changes how damage and wounds are applied based on temperature.
Humans now have a core body temperature along with body temperature. The core temperature is used for natural stabilization and what viruses like fever and shivers target by raising or lowing the core temperature of the mob.
The standard body temperature still exists and acts exactly the same for most items at this time but is now treated as surface temperature in humans.
Damage from body temperature for humans is now based on the core temperature instead of body temperature now.
Humans will now receive burn wounds when the body (surface) temperature is to high for to long.
This causes you to see alerts for the area temperature before you take damage in most cases improving visibility of dangerous situations.
This PR refactors safes and brings their UI from html to tgui based on the PR above.
Paradise has more features for safes than us, and these features were not ported along to accommodate feature freeze. Only our current safe features settings were refactored, for example number of tumblers stays 2, no extra safe information on examine and safe codes are not generated on paper for command.
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>