hold the phone

This commit is contained in:
TalkingCactus
2016-08-23 10:08:44 -04:00
parent 61fe43d366
commit 5af0b6825f
4 changed files with 67 additions and 17 deletions
@@ -14,6 +14,9 @@
bloodiness = MAX_SHOE_BLOODINESS
blood_state = BLOOD_STATE_XENO
/obj/effect/decal/cleanable/xenoblood/can_bloodcrawl_in()
return 1
/obj/effect/decal/cleanable/xenoblood/Destroy()
for(var/datum/disease/D in viruses)
D.cure(0)
@@ -37,6 +40,9 @@
/obj/effect/decal/cleanable/xenoblood/xsplatter
random_icon_states = list("xgibbl1", "xgibbl2", "xgibbl3", "xgibbl4", "xgibbl5")
/obj/effect/decal/cleanable/xsplatter/can_bloodcrawl_in()
return 1
/obj/effect/decal/cleanable/xenoblood/xgibs
name = "xeno gibs"
desc = "Gnarly..."
@@ -45,6 +51,10 @@
icon_state = "xgib1"
random_icon_states = list("xgib1", "xgib2", "xgib3", "xgib4", "xgib5", "xgib6")
/obj/effect/decal/cleanable/xgibs/can_bloodcrawl_in()
return 1
/obj/effect/decal/cleanable/xenoblood/xgibs/ex_act()
return
@@ -67,3 +77,15 @@
icon_state = "xtracks"
random_icon_states = null
blood_DNA = list("UNKNOWN DNA" = "X*")
/obj/effect/decal/cleanable/xdrip
name = "drips of blood"
desc = "It's green."
gender = PLURAL
icon_state = "1"
random_icon_states = list("xdrip1","xdrip2","xdrip3","xdrip4","xdrip5")
bloodiness = 0
var/drips = 1
/obj/effect/decal/cleanable/xdrip/can_bloodcrawl_in()
return 1
+44 -17
View File
@@ -216,37 +216,64 @@
return list("O-", "O+")
if("L")
return list("L")
if("X")
return list("X")
//to add a splatter of blood or other mob liquid.
/mob/living/proc/add_splatter_floor(turf/T, small_drip)
if(get_blood_id() != "blood")
if(get_blood_id() != "blood" && get_blood_id() != "xblood")
return
if(!T)
T = get_turf(src)
var/list/temp_blood_DNA
if(small_drip)
// Only a certain number of drips (or one large splatter) can be on a given turf.
var/obj/effect/decal/cleanable/blood/drip/drop = locate() in T
if(drop)
if(drop.drips < 3)
drop.drips++
drop.overlays |= pick(drop.random_icon_states)
if(ishuman(src))
var/mob/living/carbon/human/H = src
if(H.dna.species == "xeno")
var/obj/effect/decal/cleanable/xdrip/xdrop = locate() in T
if(xdrop)
if(xdrop.drips < 3)
xdrop.drips++
xdrop.overlays |= pick(xdrop.random_icon_states)
xdrop.transfer_mob_blood_dna(src)
return
else
temp_blood_DNA = list()
temp_blood_DNA |= xdrop.blood_DNA.Copy() //we transfer the dna from the drip to the splatter
qdel(xdrop)//the drip is replaced by a bigger splatter
else
xdrop = new(T)
xdrop.transfer_mob_blood_dna(src)
return
else
var/obj/effect/decal/cleanable/blood/drip/drop = locate() in T
if(drop)
if(drop.drips < 3)
drop.drips++
drop.overlays |= pick(drop.random_icon_states)
drop.transfer_mob_blood_dna(src)
return
else
temp_blood_DNA = list()
temp_blood_DNA |= drop.blood_DNA.Copy() //we transfer the dna from the drip to the splatter
qdel(drop)//the drip is replaced by a bigger splatter
else
drop = new(T)
drop.transfer_mob_blood_dna(src)
return
else
temp_blood_DNA = list()
temp_blood_DNA |= drop.blood_DNA.Copy() //we transfer the dna from the drip to the splatter
qdel(drop)//the drip is replaced by a bigger splatter
else
drop = new(T)
drop.transfer_mob_blood_dna(src)
return
// Find a blood decal or create a new one.
var/obj/effect/decal/cleanable/blood/B = locate() in T
if(!B)
B = new /obj/effect/decal/cleanable/blood/splatter(T)
if(ishuman(src))
var/mob/living/carbon/human/H = src
if(H.dna.species == "xeno")
B = new /obj/effect/decal/cleanable/xenoblood(T)
else
B = new /obj/effect/decal/cleanable/blood/splatter(T)
else
B = new /obj/effect/decal/cleanable/blood/splatter(T)
B.transfer_mob_blood_dna(src) //give blood info to the blood decal.
if(temp_blood_DNA)
B.blood_DNA |= temp_blood_DNA
@@ -268,4 +295,4 @@
T = get_turf(src)
var/obj/effect/decal/cleanable/oil/B = locate() in T.contents
if(!B)
B = new(T)
B = new(T)
@@ -300,6 +300,7 @@
var/datum/action/innate/split_body/slime_split
var/list/mob/living/carbon/bodies
var/datum/action/innate/swap_body/swap_body
roundstart = 1
/datum/species/jelly/slime/on_species_loss(mob/living/carbon/C)
if(slime_split)
Binary file not shown.

Before

Width:  |  Height:  |  Size: 101 KiB

After

Width:  |  Height:  |  Size: 101 KiB