|
|
|
@@ -5,28 +5,25 @@
|
|
|
|
|
layer = LOW_OBJ_LAYER
|
|
|
|
|
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6")
|
|
|
|
|
mergeable_decal = FALSE
|
|
|
|
|
var/gib_overlay = FALSE
|
|
|
|
|
var/body_colors = "#e3ba84" //a default color just in case.
|
|
|
|
|
var/guts_colors = "#4c276d"
|
|
|
|
|
var/racial = "carbon"
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/Initialize(mapload, list/datum/disease/diseases)
|
|
|
|
|
. = ..()
|
|
|
|
|
if(random_icon_states && (icon_state == initial(icon_state)) && length(random_icon_states) > 0)
|
|
|
|
|
icon_state = pick(random_icon_states)
|
|
|
|
|
update_icon()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/update_icon()
|
|
|
|
|
var/list/colorlist = list()
|
|
|
|
|
colorlist.Cut()
|
|
|
|
|
colorlist += ReadRGB("[blood_DNA_to_color()]0")
|
|
|
|
|
colorlist += ReadRGB("[guts_colors]0")
|
|
|
|
|
colorlist += ReadRGB("[body_colors]0")
|
|
|
|
|
colorlist += list(0,0,0, 255)
|
|
|
|
|
for(var/index=1, index<=colorlist.len, index++)
|
|
|
|
|
colorlist[index] = colorlist[index]/255
|
|
|
|
|
add_atom_colour(blood_DNA_to_color(), FIXED_COLOUR_PRIORITY)
|
|
|
|
|
cut_overlays()
|
|
|
|
|
if(gib_overlay)
|
|
|
|
|
var/image/gibs = image(icon, "[icon_state]_[racial]_[gib_overlay]")
|
|
|
|
|
gibs.color = colorlist
|
|
|
|
|
icon_state = gibs
|
|
|
|
|
var/mutable_appearance/guts = mutable_appearance(icon, "[icon_state]_guts")
|
|
|
|
|
guts.appearance_flags = RESET_COLOR
|
|
|
|
|
add_overlay(guts)
|
|
|
|
|
var/mutable_appearance/flesh = mutable_appearance(icon, "[icon_state]_flesh")
|
|
|
|
|
flesh.appearance_flags = RESET_COLOR
|
|
|
|
|
flesh.color = body_colors
|
|
|
|
|
add_overlay(flesh)
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/ex_act(severity, target)
|
|
|
|
|
return
|
|
|
|
@@ -38,9 +35,9 @@
|
|
|
|
|
if(H.mind.assigned_role == "Detective") //Gumshoe perks yo
|
|
|
|
|
playsound(loc, 'sound/effects/gib_step.ogg', 10, 1)
|
|
|
|
|
else
|
|
|
|
|
playsound(loc, 'sound/effects/gib_step.ogg', H.has_trait(TRAIT_LIGHT_STEP) ? 20 : 50, 1)
|
|
|
|
|
playsound(loc, 'sound/effects/gib_step.ogg', !HAS_TRAIT(H,TRAIT_LIGHT_STEP) ? 20 : 50, 1)
|
|
|
|
|
else
|
|
|
|
|
playsound(loc, 'sound/effects/gib_step.ogg', L.has_trait(TRAIT_LIGHT_STEP) ? 20 : 50, 1)
|
|
|
|
|
playsound(loc, 'sound/effects/gib_step.ogg', !HAS_TRAIT(L,TRAIT_LIGHT_STEP) ? 20 : 50, 1)
|
|
|
|
|
. = ..()
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/proc/streak(list/directions)
|
|
|
|
@@ -61,27 +58,21 @@
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/up
|
|
|
|
|
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6","gibup1","gibup1","gibup1")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/down
|
|
|
|
|
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6","gibdown1","gibdown1","gibdown1")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/body
|
|
|
|
|
random_icon_states = list("gibhead", "gibtorso")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/torso
|
|
|
|
|
random_icon_states = list("gibtorso")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/limb
|
|
|
|
|
random_icon_states = list("gibleg", "gibarm")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/core
|
|
|
|
|
random_icon_states = list("gibmid1", "gibmid2", "gibmid3")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/old
|
|
|
|
|
name = "old rotting gibs"
|
|
|
|
@@ -93,6 +84,7 @@
|
|
|
|
|
setDir(pick(1,2,4,8))
|
|
|
|
|
icon_state += "-old"
|
|
|
|
|
add_blood(list("Non-human DNA" = "A+"))
|
|
|
|
|
update_icon()
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/drip
|
|
|
|
|
name = "drips of blood"
|
|
|
|
@@ -110,58 +102,57 @@
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/human/Initialize(mapload, list/datum/disease/diseases)
|
|
|
|
|
. = ..()
|
|
|
|
|
reagents.add_reagent("liquidgibs", 5)
|
|
|
|
|
if(!blood_DNA.len)
|
|
|
|
|
add_blood(list("Non-human DNA" = "A+"))
|
|
|
|
|
update_icon()
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/human/up
|
|
|
|
|
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6","gibup1","gibup1","gibup1")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/human/down
|
|
|
|
|
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6","gibdown1","gibdown1","gibdown1")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/human/body
|
|
|
|
|
random_icon_states = list("gibhead", "gibtorso")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/human/torso
|
|
|
|
|
random_icon_states = list("gibtorso")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/human/limb
|
|
|
|
|
random_icon_states = list("gibleg", "gibarm")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/human/core
|
|
|
|
|
random_icon_states = list("gibmid1", "gibmid2", "gibmid3")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//Lizards
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/human/lizard
|
|
|
|
|
body_colors = "117720"
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/human/lizard/Initialize(mapload, list/datum/disease/diseases)
|
|
|
|
|
. = ..()
|
|
|
|
|
reagents.add_reagent("liquidgibs", 5)
|
|
|
|
|
if(!blood_DNA.len)
|
|
|
|
|
add_blood(list("Non-human DNA" = "L"))
|
|
|
|
|
update_icon()
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/human/lizard/up
|
|
|
|
|
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6","gibup1","gibup1","gibup1")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/human/lizard/down
|
|
|
|
|
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6","gibdown1","gibdown1","gibdown1")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/human/lizard/body
|
|
|
|
|
random_icon_states = list("gibhead", "gibtorso")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/human/lizard/torso
|
|
|
|
|
random_icon_states = list("gibtorso")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/human/lizard/limb
|
|
|
|
|
random_icon_states = list("gibleg", "gibarm")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/human/lizard/core
|
|
|
|
|
random_icon_states = list("gibmid1", "gibmid2", "gibmid3")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
// Slime Gibs
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/slime
|
|
|
|
@@ -170,36 +161,39 @@
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/slime/Initialize(mapload, list/datum/disease/diseases)
|
|
|
|
|
. = ..()
|
|
|
|
|
reagents.add_reagent("liquidslimegibs", 5)
|
|
|
|
|
/*
|
|
|
|
|
if(!blood_DNA.len)
|
|
|
|
|
add_blood(list("Non-human DNA" = "GEL"))
|
|
|
|
|
update_icon()
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/slime/update_icon()
|
|
|
|
|
if(gib_overlay)
|
|
|
|
|
var/image/gibz = new(icon, icon_state + "c-overlay")
|
|
|
|
|
gibz.color = body_colors
|
|
|
|
|
add_overlay(gibz) */
|
|
|
|
|
add_atom_colour(body_colors, FIXED_COLOUR_PRIORITY)
|
|
|
|
|
cut_overlays()
|
|
|
|
|
var/mutable_appearance/guts = mutable_appearance(icon, "[icon_state]s_guts")
|
|
|
|
|
guts.appearance_flags = RESET_COLOR
|
|
|
|
|
guts.color = body_colors
|
|
|
|
|
add_overlay(guts)
|
|
|
|
|
var/mutable_appearance/flesh = mutable_appearance(icon, "[icon_state]_flesh")
|
|
|
|
|
flesh.appearance_flags = RESET_COLOR
|
|
|
|
|
flesh.color = body_colors
|
|
|
|
|
add_overlay(flesh)
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/slime/up
|
|
|
|
|
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6","gibup1","gibup1","gibup1")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/slime/down
|
|
|
|
|
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6","gibdown1","gibdown1","gibdown1")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/slime/body
|
|
|
|
|
random_icon_states = list("gibhead", "gibtorso")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/slime/torso
|
|
|
|
|
random_icon_states = list("gibtorso")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/slime/limb
|
|
|
|
|
random_icon_states = list("gibleg", "gibarm")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/slime/core
|
|
|
|
|
random_icon_states = list("gibmid1", "gibmid2", "gibmid3")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/synth
|
|
|
|
|
desc = "They look sludgy and disgusting."
|
|
|
|
@@ -216,35 +210,31 @@
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/ipc/Initialize(mapload, list/datum/disease/diseases)
|
|
|
|
|
. = ..()
|
|
|
|
|
reagents.add_reagent("liquidoilgibs", 5)
|
|
|
|
|
if(!blood_DNA.len)
|
|
|
|
|
add_blood(list("Non-human DNA" = "HF"))
|
|
|
|
|
update_icon()
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/ipc/update_icon()
|
|
|
|
|
if(gib_overlay)
|
|
|
|
|
var/icon/blood = new(icon,"[icon_state]",dir)
|
|
|
|
|
var/image/gibz = new(icon, icon_state + "r-overlay")
|
|
|
|
|
blood.Blend(blood_DNA_to_color(),ICON_MULTIPLY)
|
|
|
|
|
gibz.appearance_flags = RESET_COLOR
|
|
|
|
|
add_overlay(gibz)
|
|
|
|
|
add_atom_colour(blood_DNA_to_color(), FIXED_COLOUR_PRIORITY)
|
|
|
|
|
cut_overlays()
|
|
|
|
|
var/mutable_appearance/guts = mutable_appearance(icon, "[icon_state]r-overlay")
|
|
|
|
|
guts.appearance_flags = RESET_COLOR
|
|
|
|
|
add_overlay(guts)
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/ipc/up
|
|
|
|
|
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6","gibup1","gibup1","gibup1")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/ipc/down
|
|
|
|
|
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6","gibdown1","gibdown1","gibdown1")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/ipc/body
|
|
|
|
|
random_icon_states = list("gibhead", "gibtorso")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/ipc/torso
|
|
|
|
|
random_icon_states = list("gibtorso")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/ipc/limb
|
|
|
|
|
random_icon_states = list("gibleg", "gibarm")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|
|
|
|
|
|
/obj/effect/decal/cleanable/blood/gibs/ipc/core
|
|
|
|
|
random_icon_states = list("gibmid1", "gibmid2", "gibmid3")
|
|
|
|
|
gib_overlay = TRUE
|
|
|
|
|