Bioaug Fixes (#21361)

This PR fixes some issues with bioaugs not working as intended due to
having the wrong order and amount of arguments. It also fixes "Bad
pointer" error spam. I've also verified that it fixes the "Platelets
make you starve to death" bug.

Before:
<img width="685" height="331" alt="image"
src="https://github.com/user-attachments/assets/8d6ec19c-234a-4c1e-ab62-fc42036adacb"
/>

<img width="436" height="79" alt="image"
src="https://github.com/user-attachments/assets/2653e05b-e8cd-49b2-a86a-bc2fe4d6ded6"
/>


After:
<img width="463" height="328" alt="image"
src="https://github.com/user-attachments/assets/7e226024-88c2-45a7-b30d-22e3d4a87f35"
/>

<img width="360" height="67" alt="image"
src="https://github.com/user-attachments/assets/9d267368-94c0-4e11-b556-a72e4750613a"
/>
This commit is contained in:
VMSolidus
2025-09-15 08:15:05 -04:00
committed by GitHub
parent 0aafc46e0f
commit 2471235ca7
4 changed files with 9 additions and 5 deletions
@@ -28,7 +28,7 @@
UnregisterSignal(owner, COMSIG_HEART_PUMP_EVENT)
/obj/item/organ/internal/augment/bioaug/auxiliary_heart/proc/stabilize_circulation(var/obj/item/organ/internal/heart/heart, var/blood_volume, var/recent_pump, var/pulse_mod, var/min_efficiency)
/obj/item/organ/internal/augment/bioaug/auxiliary_heart/proc/stabilize_circulation(var/implantee, var/obj/item/organ/internal/heart/heart, var/blood_volume, var/recent_pump, var/pulse_mod, var/min_efficiency)
SIGNAL_HANDLER
*min_efficiency *= 1.5
*blood_volume += 2.5 // This doesn't affect actual blood volume, only the "effective" volume used for calculating thresholds.
@@ -27,7 +27,7 @@
UnregisterSignal(owner, COMSIG_PSI_MIND_POWER)
/obj/item/organ/internal/augment/bioaug/mind_blanker/proc/cancel_power(mob/caster, var/cancelled)
/obj/item/organ/internal/augment/bioaug/mind_blanker/proc/cancel_power(var/implantee, var/caster, var/cancelled)
SIGNAL_HANDLER
*cancelled = TRUE
@@ -60,7 +60,7 @@
UnregisterSignal(owner, COMSIG_PSI_MIND_POWER)
/obj/item/organ/internal/augment/bioaug/mind_blanker_lethal/proc/cancel_power_lethal(mob/caster, var/cancelled)
/obj/item/organ/internal/augment/bioaug/mind_blanker_lethal/proc/cancel_power_lethal(var/implantee, var/caster, var/cancelled)
SIGNAL_HANDLER
*cancelled = TRUE
if(isliving(caster))
@@ -31,12 +31,12 @@
UnregisterSignal(owner, COMSIG_HEART_PUMP_EVENT)
UnregisterSignal(owner, COMSIG_HEART_BLEED_EVENT)
/obj/item/organ/internal/augment/bioaug/platelet_factories/proc/stroke_risk(var/obj/item/organ/internal/heart/heart, var/blood_volume, var/recent_pump, var/pulse_mod, var/min_efficiency)
/obj/item/organ/internal/augment/bioaug/platelet_factories/proc/stroke_risk(var/implantee, var/obj/item/organ/internal/heart/heart, var/blood_volume, var/recent_pump, var/pulse_mod, var/min_efficiency)
SIGNAL_HANDLER
*min_efficiency *= 0.85
*pulse_mod *= 0.95
/obj/item/organ/internal/augment/bioaug/platelet_factories/proc/reduce_bloodloss(var/blood_volume, var/cut_bloodloss_modifier, var/arterial_bloodloss_modifier)
/obj/item/organ/internal/augment/bioaug/platelet_factories/proc/reduce_bloodloss(var/implantee, var/blood_volume, var/cut_bloodloss_modifier, var/arterial_bloodloss_modifier)
SIGNAL_HANDLER
*cut_bloodloss_modifier *= 0.1
*arterial_bloodloss_modifier *= 0.25