From a553f412da020c0ff05a551af34c2e96c9c254a8 Mon Sep 17 00:00:00 2001 From: Chinsky Date: Thu, 11 Sep 2014 05:41:31 +0400 Subject: [PATCH] Fixes #6307 Now organ not having an object organ won't prevent it from falling off, just no item would appear. --- code/modules/organs/organ_external.dm | 47 ++++++++++++++------------- 1 file changed, 24 insertions(+), 23 deletions(-) diff --git a/code/modules/organs/organ_external.dm b/code/modules/organs/organ_external.dm index bf5307cc3c0..5ae6d8c2274 100644 --- a/code/modules/organs/organ_external.dm +++ b/code/modules/organs/organ_external.dm @@ -624,36 +624,37 @@ Note that amputating the affected organ does in fact remove the infection from t if(!(status & ORGAN_ROBOT)) organ = new /obj/item/weapon/organ/l_foot(owner.loc, owner) owner.u_equip(owner.shoes) + + destspawn = 1 + //Robotic limbs explode if sabotaged. + if(status & ORGAN_ROBOT && !no_explode && sabotaged) + owner.visible_message("\red \The [owner]'s [display_name] explodes violently!",\ + "\red Your [display_name] explodes!",\ + "You hear an explosion followed by a scream!") + explosion(get_turf(owner),-1,-1,2,3) + var/datum/effect/effect/system/spark_spread/spark_system = new /datum/effect/effect/system/spark_spread() + spark_system.set_up(5, 0, owner) + spark_system.attach(owner) + spark_system.start() + spawn(10) + del(spark_system) + + owner.visible_message("\red [owner.name]'s [display_name] flies off in an arc.",\ + "Your [display_name] goes flying off!",\ + "You hear a terrible sound of ripping tendons and flesh.") + if(organ) - destspawn = 1 - //Robotic limbs explode if sabotaged. - if(status & ORGAN_ROBOT && !no_explode && sabotaged) - owner.visible_message("\red \The [owner]'s [display_name] explodes violently!",\ - "\red Your [display_name] explodes!",\ - "You hear an explosion followed by a scream!") - explosion(get_turf(owner),-1,-1,2,3) - var/datum/effect/effect/system/spark_spread/spark_system = new /datum/effect/effect/system/spark_spread() - spark_system.set_up(5, 0, owner) - spark_system.attach(owner) - spark_system.start() - spawn(10) - del(spark_system) - - owner.visible_message("\red [owner.name]'s [display_name] flies off in an arc.",\ - "Your [display_name] goes flying off!",\ - "You hear a terrible sound of ripping tendons and flesh.") - //Throw organs around var/lol = pick(cardinal) step(organ,lol) - owner.update_body(1) + owner.update_body(1) - // OK so maybe your limb just flew off, but if it was attached to a pair of cuffs then hooray! Freedom! - release_restraints() + // OK so maybe your limb just flew off, but if it was attached to a pair of cuffs then hooray! Freedom! + release_restraints() - if(vital) - owner.death() + if(vital) + owner.death() /**************************************************** HELPERS