Some dislocation fixes/adjustments.

This commit is contained in:
Zuhayr
2015-04-07 19:50:26 -07:00
parent cee229733e
commit fe0185697e
4 changed files with 14 additions and 9 deletions
@@ -308,7 +308,7 @@
if(!target_zone)
return null
var/obj/item/organ/external/organ = get_organ(check_zone(target_zone))
if(!organ || organ.is_dislocated() || organ.dislocated == -1)
if(!organ || (organ.dislocated == 2) || (organ.dislocated == -1))
return null
var/dislocation_str
if(prob(W.force))
@@ -70,12 +70,12 @@
for(var/limb_tag in list("l_leg","r_leg","l_foot","r_foot"))
var/obj/item/organ/external/E = organs_by_name[limb_tag]
if(!E)
stance_damage += 2
else if (E.status & ORGAN_DESTROYED)
if(!E || (E.status & (ORGAN_DESTROYED|ORGAN_DEAD)))
stance_damage += 2 // let it fail even if just foot&leg
else if (E.is_malfunctioning() || (E.is_broken() && !(E.status & ORGAN_SPLINTED)) || !E.is_usable())
else if (E.is_malfunctioning() || (E.is_broken() && !(E.status & ORGAN_SPLINTED)) || (E.status & ORGAN_MUTATED))
stance_damage += 1
else if (E.is_dislocated())
stance_damage += 0.5
// Canes and crutches help you stand (if the latter is ever added)
// One cane mitigates a broken leg+foot, or a missing foot.
@@ -102,7 +102,7 @@
if(!E || !E.can_grasp || (E.status & ORGAN_SPLINTED))
continue
if(E.is_broken())
if(E.is_broken() || E.is_dislocated())
if(E.body_part == HAND_LEFT)
if(!l_hand)
continue
+1 -1
View File
@@ -389,7 +389,7 @@
// Lung damage increases the minimum safe pressure.
if(species.has_organ["lungs"])
var/obj/item/organ/lungs/L = internal_organs_by_name["lungs"]
if(!L)
if(isnull(L))
safe_pressure_min = INFINITY //No lungs, how are you breathing?
else if(L.is_broken())
safe_pressure_min *= 1.5