More dionaea tweaks, NO_PAIN, IS_PLANT and IS_SLOW specifically.

Conflicts:
	code/modules/mob/living/carbon/species.dm
This commit is contained in:
Zuhayr
2014-01-07 00:04:27 -05:00
committed by ZomgPonies
parent ab6fb88bf5
commit d856157f26
6 changed files with 23 additions and 15 deletions
@@ -2,7 +2,7 @@
var/tally = 0
if(species && species.flags & IS_SLOW)
tally = 10
tally = 7
if (istype(loc, /turf/space)) return -1 // It's hard to be slowed down in space by... anything
+9 -6
View File
@@ -914,12 +914,15 @@
nutrition += light_amount
traumatic_shock -= light_amount
if(nutrition > 500)
nutrition = 500
if(light_amount > 5) //if there's enough light, heal
adjustBruteLoss(-1)
adjustToxLoss(-1)
adjustOxyLoss(-1)
if(species.flags & IS_PLANT)
if(nutrition > 500)
nutrition = 500
if(light_amount >= 3) //if there's enough light, heal
adjustBruteLoss(-(light_amount))
adjustToxLoss(-(light_amount))
adjustOxyLoss(-(light_amount))
//TODO: heal wounds, heal broken limbs.
if(dna && dna.mutantrace == "shadow")
var/light_amount = 0
if(isturf(loc))
@@ -454,7 +454,7 @@
if(nutrition > 500)
nutrition = 500
if(light_amount > 2) //if there's enough light, heal
heal_overall_damage(1,1)
adjustBruteLoss(-1)
adjustToxLoss(-1)
adjustOxyLoss(-1)
@@ -679,4 +679,4 @@
return
adjustFireLoss(6)
return
//END FIRE CODE
//END FIRE CODE
+3 -2
View File
@@ -107,6 +107,7 @@
primitive = /mob/living/carbon/monkey/skrell
flags = HAS_LIPS | HAS_UNDERWEAR
bloodflags = BLOOD_GREEN
/datum/species/vox
name = "Vox"
@@ -125,7 +126,7 @@
eyes = "vox_eyes_s"
breath_type = "nitrogen"
flags = NO_SCAN | IS_WHITELISTED
flags = NO_SCAN | IS_WHITELISTED | NO_BLOOD
/datum/species/diona
name = "Diona"
@@ -148,7 +149,7 @@
heat_level_3 = 700
flags = NO_BREATHE | REQUIRE_LIGHT | NO_SCAN | IS_PLANT | RAD_ABSORB | NO_BLOOD | IS_SLOW | NO_PAIN
bloodflags = BLOOD_GREEN
/datum/species/kidan
+4 -3
View File
@@ -105,7 +105,7 @@
u_equip(c_hand)
if(broken)
emote("me", 1, "screams in pain and drops what they were holding in their [E.display_name?"[E.display_name]":"[E]"]!")
emote("me", 1, "[(species && species.flags & NO_PAIN) ? "" : "screams in pain and"] drops what they were holding in their [E.display_name?"[E.display_name]":"[E]"]!")
if(malfunction)
emote("me", 1, "drops what they were holding, their [E.display_name?"[E.display_name]":"[E]"] malfunctioning!")
var/datum/effect/effect/system/spark_spread/spark_system = new /datum/effect/effect/system/spark_spread()
@@ -121,7 +121,8 @@
// standing is poor
if(leg_tally <= 0 && !paralysis && !(lying || resting) && prob(5))
emote("scream")
if(species && species.flags & NO_PAIN)
emote("scream")
emote("collapse")
paralysis = 10
@@ -133,4 +134,4 @@
E = organs_by_name["r_foot"]
if(E.status & ORGAN_DESTROYED)
can_stand--
can_stand--
+4 -1
View File
@@ -608,7 +608,10 @@ This function completely restores a damaged organ to perfect condition.
if(status & ORGAN_BROKEN)
return
owner.visible_message("\red You hear a loud cracking sound coming from \the [owner].","\red <b>Something feels like it shattered in your [display_name]!</b>","You hear a sickening crack.")
owner.emote("scream")
if(owner.species && !(owner.species.flags & NO_PAIN))
owner.emote("scream")
status |= ORGAN_BROKEN
broken_description = pick("broken","fracture","hairline fracture")
perma_injury = brute_dam