From eb5bcfc98cb3839fae359515a284b32338d9b132 Mon Sep 17 00:00:00 2001 From: Qwertytoforty Date: Sun, 30 Aug 2020 11:19:56 -0400 Subject: [PATCH 1/4] Makes gygax take damage from mecha overload again --- code/game/mecha/mecha.dm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 69f70207452..72c7e69092b 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -331,6 +331,8 @@ else occupant.clear_alert("mechaport") if(leg_overload_mode) + log_message("Leg Overload damage.") + take_damage(1, BRUTE, 0, 0) if(obj_integrity < max_integrity - max_integrity / 3) leg_overload_mode = FALSE step_in = initial(step_in) @@ -502,7 +504,7 @@ check_for_internal_damage(list(MECHA_INT_TEMP_CONTROL,MECHA_INT_TANK_BREACH,MECHA_INT_CONTROL_LOST)) else check_for_internal_damage(list(MECHA_INT_FIRE,MECHA_INT_TEMP_CONTROL,MECHA_INT_TANK_BREACH,MECHA_INT_CONTROL_LOST,MECHA_INT_SHORT_CIRCUIT)) - if(. >= 5 || prob(33)) + if((. != 1 && leg_overload_mode) && (. >= 5 || prob(33))) //If it takes 1 damage and leg_overload_mode is true, do not say TAKING DAMAGE! to the user several times a second. occupant_message("Taking damage!") log_message("Took [damage_amount] points of damage. Damage type: [damage_type]") From 2fad14d7878e730b51e79f68d6056d2efee30873 Mon Sep 17 00:00:00 2001 From: Qwertytoforty <52090703+Qwertytoforty@users.noreply.github.com> Date: Mon, 31 Aug 2020 09:08:26 -0400 Subject: [PATCH 2/4] Update code/game/mecha/mecha.dm Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com> --- code/game/mecha/mecha.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 72c7e69092b..9bbc20190d8 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -332,7 +332,7 @@ occupant.clear_alert("mechaport") if(leg_overload_mode) log_message("Leg Overload damage.") - take_damage(1, BRUTE, 0, 0) + take_damage(1, BRUTE, FALSE, FALSE) if(obj_integrity < max_integrity - max_integrity / 3) leg_overload_mode = FALSE step_in = initial(step_in) From 8fdcd25ac8956c2d07794fbba62d513669fd997f Mon Sep 17 00:00:00 2001 From: Qwertytoforty Date: Mon, 31 Aug 2020 14:00:35 -0400 Subject: [PATCH 3/4] If true and false, send message. If true and true, do not --- code/game/mecha/mecha.dm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 9bbc20190d8..ed377035380 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -504,8 +504,9 @@ check_for_internal_damage(list(MECHA_INT_TEMP_CONTROL,MECHA_INT_TANK_BREACH,MECHA_INT_CONTROL_LOST)) else check_for_internal_damage(list(MECHA_INT_FIRE,MECHA_INT_TEMP_CONTROL,MECHA_INT_TANK_BREACH,MECHA_INT_CONTROL_LOST,MECHA_INT_SHORT_CIRCUIT)) - if((. != 1 && leg_overload_mode) && (. >= 5 || prob(33))) //If it takes 1 damage and leg_overload_mode is true, do not say TAKING DAMAGE! to the user several times a second. - occupant_message("Taking damage!") + if(. >= 5 || prob(33)) //If it takes 1 damage and leg_overload_mode is true, do not say TAKING DAMAGE! to the user several times a second. + if(!(. != 1 && leg_overload_mode)) + occupant_message("Taking damage!") log_message("Took [damage_amount] points of damage. Damage type: [damage_type]") /obj/mecha/run_obj_armor(damage_amount, damage_type, damage_flag = 0, attack_dir) From c2103f8d4d71badffd8a984350bdd438e82bd99b Mon Sep 17 00:00:00 2001 From: Qwertytoforty Date: Mon, 31 Aug 2020 14:34:09 -0400 Subject: [PATCH 4/4] Hopefully final changes since I suck at logic --- code/game/mecha/mecha.dm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index ed377035380..eb80d9732b8 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -504,9 +504,8 @@ check_for_internal_damage(list(MECHA_INT_TEMP_CONTROL,MECHA_INT_TANK_BREACH,MECHA_INT_CONTROL_LOST)) else check_for_internal_damage(list(MECHA_INT_FIRE,MECHA_INT_TEMP_CONTROL,MECHA_INT_TANK_BREACH,MECHA_INT_CONTROL_LOST,MECHA_INT_SHORT_CIRCUIT)) - if(. >= 5 || prob(33)) //If it takes 1 damage and leg_overload_mode is true, do not say TAKING DAMAGE! to the user several times a second. - if(!(. != 1 && leg_overload_mode)) - occupant_message("Taking damage!") + if((. >= 5 || prob(33)) && !(. == 1 && leg_overload_mode)) //If it takes 1 damage and leg_overload_mode is true, do not say TAKING DAMAGE! to the user several times a second. + occupant_message("Taking damage!") log_message("Took [damage_amount] points of damage. Damage type: [damage_type]") /obj/mecha/run_obj_armor(damage_amount, damage_type, damage_flag = 0, attack_dir)