mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-26 21:48:21 +01:00
Added bloody footprints.
This commit is contained in:
@@ -27,15 +27,40 @@
|
||||
if(src.loc && isturf(src.loc))
|
||||
for(var/obj/effect/decal/cleanable/blood/B in src.loc)
|
||||
if(B != src)
|
||||
if (B.blood_DNA)
|
||||
blood_DNA |= B.blood_DNA.Copy()
|
||||
del(B)
|
||||
spawn(DRYING_TIME * (amount+1))
|
||||
dry()
|
||||
|
||||
/obj/effect/decal/cleanable/blood/HasEntered(mob/living/carbon/human/perp)
|
||||
if (!istype(perp))
|
||||
return
|
||||
if(amount < 1)
|
||||
return
|
||||
|
||||
if(perp.shoes)
|
||||
perp.shoes:track_blood = max(amount,perp.shoes:track_blood) //Adding blood to shoes
|
||||
if(!perp.shoes.blood_overlay)
|
||||
perp.shoes.generate_blood_overlay()
|
||||
if(!perp.shoes.blood_DNA)
|
||||
perp.shoes.blood_DNA = list()
|
||||
perp.shoes.overlays += perp.shoes.blood_overlay
|
||||
perp.update_inv_shoes(1)
|
||||
perp.shoes.blood_DNA |= blood_DNA.Copy()
|
||||
else
|
||||
perp.track_blood = max(amount,perp.track_blood) //Or feet
|
||||
if(!perp.feet_blood_DNA)
|
||||
perp.feet_blood_DNA = list()
|
||||
perp.feet_blood_DNA |= blood_DNA.Copy()
|
||||
|
||||
amount--
|
||||
|
||||
/obj/effect/decal/cleanable/blood/proc/dry()
|
||||
name = "dried [src]"
|
||||
desc = "It's dark red and crusty. Someone is not doing their job."
|
||||
var/icon/I = icon(icon,icon_state)
|
||||
I.SetIntensity(0.5)
|
||||
I.SetIntensity(0.7)
|
||||
icon = I
|
||||
amount = 0
|
||||
|
||||
@@ -43,11 +68,20 @@
|
||||
random_icon_states = list("gibbl1", "gibbl2", "gibbl3", "gibbl4", "gibbl5")
|
||||
amount = 2
|
||||
|
||||
/obj/effect/decal/cleanable/blood/footprints
|
||||
name = "bloody footprints"
|
||||
desc = "Whoops..."
|
||||
icon='icons/effects/footprints.dmi'
|
||||
icon_state = "blood1"
|
||||
amount = 0
|
||||
random_icon_states = null
|
||||
|
||||
/obj/effect/decal/cleanable/blood/tracks
|
||||
icon_state = "tracks"
|
||||
desc = "They look like tracks left by wheels."
|
||||
gender = PLURAL
|
||||
random_icon_states = null
|
||||
amount = 0
|
||||
|
||||
/obj/effect/decal/cleanable/blood/drip
|
||||
name = "drips of blood"
|
||||
@@ -55,6 +89,7 @@
|
||||
gender = PLURAL
|
||||
icon = 'drip.dmi'
|
||||
icon_state = "1"
|
||||
amount = 0
|
||||
|
||||
/obj/effect/decal/cleanable/blood/gibs
|
||||
name = "gibs"
|
||||
|
||||
@@ -34,6 +34,31 @@
|
||||
else
|
||||
playsound(src, "clownstep", 20, 1)
|
||||
|
||||
var/list/bloodDNA = null
|
||||
if(H.shoes)
|
||||
var/obj/item/clothing/shoes/S = H.shoes
|
||||
if(S.track_blood && S.blood_DNA)
|
||||
bloodDNA = S.blood_DNA
|
||||
S.track_blood--
|
||||
else
|
||||
if(H.track_blood && H.feet_blood_DNA)
|
||||
bloodDNA = H.feet_blood_DNA
|
||||
H.track_blood--
|
||||
|
||||
if (bloodDNA)
|
||||
var/obj/effect/decal/cleanable/blood/footprints/here = new(src)
|
||||
here.icon_state = "blood1"
|
||||
here.dir = H.dir
|
||||
here.blood_DNA |= bloodDNA.Copy()
|
||||
var/turf/simulated/from = get_step(H,reverse_direction(H.dir))
|
||||
if(from)
|
||||
var/obj/effect/decal/cleanable/blood/footprints/there = new(from)
|
||||
there.icon_state = "blood2"
|
||||
there.dir = H.dir
|
||||
there.blood_DNA |= bloodDNA.Copy()
|
||||
|
||||
bloodDNA = null
|
||||
|
||||
switch (src.wet)
|
||||
if(1)
|
||||
if(istype(M, /mob/living/carbon/human)) // Added check since monkeys don't have shoes
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
/mob
|
||||
|
||||
var/bloody_hands = 0
|
||||
var/mob/living/carbon/human/bloody_hands_mob
|
||||
var/track_blood
|
||||
var/mob/living/carbon/human/track_blood_mob
|
||||
var/track_blood = 0
|
||||
var/list/feet_blood_DNA
|
||||
var/track_blood_type
|
||||
|
||||
/obj/item/clothing/gloves
|
||||
var/transfer_blood = 0
|
||||
var/mob/living/carbon/human/bloody_hands_mob
|
||||
|
||||
/obj/item/clothing/shoes/
|
||||
var/track_blood = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/glass/rag
|
||||
name = "damp rag"
|
||||
|
||||
@@ -1095,4 +1095,10 @@
|
||||
return 0 //already bloodied with this blood. Cannot add more.
|
||||
blood_DNA[M.dna.unique_enzymes] = M.dna.b_type
|
||||
src.update_inv_gloves() //handles bloody hands overlays and updating
|
||||
return 1 //we applied blood to the item
|
||||
return 1 //we applied blood to the item
|
||||
|
||||
/mob/living/carbon/human/clean_blood()
|
||||
.=..()
|
||||
if(istype(feet_blood_DNA, /list) && feet_blood_DNA.len)
|
||||
del(feet_blood_DNA)
|
||||
return 1
|
||||
Reference in New Issue
Block a user