mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-23 20:16:55 +01:00
More dionaea tweaks, NO_PAIN, IS_PLANT and IS_SLOW specifically.
Conflicts: code/modules/mob/living/carbon/species.dm
This commit is contained in:
@@ -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
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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--
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user