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