diff --git a/code/game/gamemodes/shadowling/shadowling.dm b/code/game/gamemodes/shadowling/shadowling.dm
index ccdfed9baec..308e893cda6 100644
--- a/code/game/gamemodes/shadowling/shadowling.dm
+++ b/code/game/gamemodes/shadowling/shadowling.dm
@@ -225,12 +225,16 @@ Made by Xhuis
*/
-/datum/species/shadowling
+/datum/species/shadow/ling
//Normal shadowpeople but with enhanced effects
name = "Shadowling"
- flags = NO_BREATHE | NO_BLOOD | RAD_IMMUNE | REQUIRE_DARK
+
+ icobase = 'icons/mob/human_races/r_shadowling.dmi'
+ deform = 'icons/mob/human_races/r_shadowling.dmi'
+
+ light_effect_amp = 1
+ blood_color = "#AAAAAA"
+ flesh_color = "#777777"
+
+ flags = NO_BLOOD | NO_BREATHE | NO_SCAN | NO_INTORGANS
burn_mod = 2 //2x burn damage
- //heatmod = 2
- blood_color = "#000000"
- flesh_color = "#000000"
- darksight = 8
diff --git a/code/game/gamemodes/shadowling/shadowling_items.dm b/code/game/gamemodes/shadowling/shadowling_items.dm
index e717bb8d6bb..8b3bc073991 100644
--- a/code/game/gamemodes/shadowling/shadowling_items.dm
+++ b/code/game/gamemodes/shadowling/shadowling_items.dm
@@ -76,6 +76,7 @@
darkness_view = 3
invisa_view = 2
unacidable = 1
+ flash_protect = -1
flags = ABSTRACT | NODROP
/obj/structure/shadow_vortex
diff --git a/code/game/gamemodes/shadowling/special_shadowling_abilities.dm b/code/game/gamemodes/shadowling/special_shadowling_abilities.dm
index b8c106149bc..0444d1ea422 100644
--- a/code/game/gamemodes/shadowling/special_shadowling_abilities.dm
+++ b/code/game/gamemodes/shadowling/special_shadowling_abilities.dm
@@ -64,8 +64,8 @@
qdel(N)
usr.visible_message("The chrysalis explodes in a shower of purple flesh and fluid!")
var/mob/living/carbon/human/M = usr
- M.underwear = "Nude"
- M.undershirt = "Nude"
+ M.underwear = "None"
+ M.undershirt = "None"
M.faction |= "faithless"
usr.equip_to_slot_or_del(new /obj/item/clothing/under/shadowling(usr), slot_w_uniform)
diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm
index ae93410656a..f7087f64690 100644
--- a/code/modules/mob/living/carbon/human/life.dm
+++ b/code/modules/mob/living/carbon/human/life.dm
@@ -260,7 +260,7 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
if (radiation)
if (radiation > 100)
radiation = 100
- if(!(species.flags & RAD_ABSORB) && !(species.flags & RAD_IMMUNE))
+ if(!(species.flags & RAD_ABSORB))
Weaken(10)
if(!lying)
src << "\red You feel weak."
@@ -280,8 +280,6 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
adjustToxLoss(-(rads))
updatehealth()
return
- if(species.flags & RAD_IMMUNE)
- return
var/damage = 0
switch(radiation)
@@ -758,24 +756,6 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
//adjustToxLoss(-(light_amount))
adjustOxyLoss(-(light_amount))
//TODO: heal wounds, heal broken limbs.
- if(species.flags & REQUIRE_DARK)
- var/light_amount = 0
- nutrition = 450 //i aint never get hongry
- if(isturf(src.loc)) //Copypasta
- var/turf/T = loc
- var/area/A = T.loc
- if(A)
- if(A.lighting_use_dynamic) light_amount = T.lighting_lumcount
- else light_amount = 10
- if(light_amount > 2) //Rapid death while in the light, countered by...
- take_overall_damage(0,6)
- src << "The light burns you!"
- src << 'sound/weapons/sear.ogg'
- else if (light_amount < 2) //...extreme benefits while in the dark
- heal_overall_damage(5,3)
- adjustToxLoss(-3)
- SetWeakened(0)
- SetStunned(0)
if(species.light_dam)
var/light_amount = 0
@@ -786,9 +766,24 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
if(A.lighting_use_dynamic) light_amount = T.lighting_lumcount
else light_amount = 10
if(light_amount > species.light_dam) //if there's enough light, start dying
- take_overall_damage(1,1)
+ if(species.light_effect_amp)
+ adjustFireLoss(10)
+ else
+ adjustFireLoss(1)
+ adjustBruteLoss(1)
+ src << "The light burns you!"
+ src << 'sound/weapons/sear.ogg'
else //heal in the dark
- heal_overall_damage(1,1)
+ if(species.light_effect_amp)
+ adjustFireLoss(-5)
+ adjustBruteLoss(-5)
+ adjustBrainLoss(-25) //gibbering shadowlings are hilarious but also bad to have
+ adjustCloneLoss(-1)
+ SetWeakened(0)
+ SetStunned(0)
+ else
+ adjustFireLoss(-1)
+ adjustBruteLoss(-1)
//The fucking FAT mutation is the greatest shit ever. It makes everyone so hot and bothered.
diff --git a/code/modules/mob/living/carbon/species.dm b/code/modules/mob/living/carbon/species.dm
index ed59445f8b4..fa020cd646b 100644
--- a/code/modules/mob/living/carbon/species.dm
+++ b/code/modules/mob/living/carbon/species.dm
@@ -41,7 +41,8 @@
var/brute_mod = null // Physical damage reduction/malus.
var/burn_mod = null // Burn damage reduction/malus.
- var/light_dam
+ var/light_dam //Light level above which species takes damage, and below which it heals.
+ var/light_effect_amp //If 0, takes/heals 1 burn and brute per tick. Otherwise, both healing and damage effects are amplified.
var/max_hurt_damage = 9 // Max melee damage dealt + 5 if hulk
var/list/default_genes = list()
diff --git a/icons/mob/human.dmi b/icons/mob/human.dmi
index cfa4fbee5e4..de5f30e018b 100644
Binary files a/icons/mob/human.dmi and b/icons/mob/human.dmi differ