mirror of
https://github.com/SPLURT-Station/S.P.L.U.R.T-Station-13.git
synced 2025-12-10 09:54:52 +00:00
runtime drifting
This commit is contained in:
@@ -10,7 +10,7 @@
|
|||||||
var/list/gibamounts = list() //amount to spawn for each gib decal type we'll spawn.
|
var/list/gibamounts = list() //amount to spawn for each gib decal type we'll spawn.
|
||||||
var/list/gibdirections = list() //of lists of possible directions to spread each gib decal type towards.
|
var/list/gibdirections = list() //of lists of possible directions to spread each gib decal type towards.
|
||||||
|
|
||||||
/obj/effect/gibspawner/Initialize(mapload, mob/living/source_mob, list/datum/disease/diseases)
|
/obj/effect/gibspawner/Initialize(mapload, mob/living/source_mob, list/datum/disease/diseases, list/blood_dna)
|
||||||
. = ..()
|
. = ..()
|
||||||
if(gibtypes.len != gibamounts.len)
|
if(gibtypes.len != gibamounts.len)
|
||||||
stack_trace("Gib list amount length mismatch!")
|
stack_trace("Gib list amount length mismatch!")
|
||||||
@@ -33,7 +33,7 @@
|
|||||||
var/body_coloring = ""
|
var/body_coloring = ""
|
||||||
if(source_mob)
|
if(source_mob)
|
||||||
if(!issilicon(source_mob))
|
if(!issilicon(source_mob))
|
||||||
dna_to_add = source_mob.get_blood_dna_list() //ez pz
|
dna_to_add = blood_dna || source_mob.get_blood_dna_list() //ez pz
|
||||||
if(ishuman(source_mob))
|
if(ishuman(source_mob))
|
||||||
var/mob/living/carbon/human/H = source_mob
|
var/mob/living/carbon/human/H = source_mob
|
||||||
if(H.dna.species.use_skintones)
|
if(H.dna.species.use_skintones)
|
||||||
|
|||||||
@@ -75,7 +75,7 @@
|
|||||||
message_admins("[key_name_admin(src)] decided not to answer [key_name_admin(H)]'s [sender] request.")
|
message_admins("[key_name_admin(src)] decided not to answer [key_name_admin(H)]'s [sender] request.")
|
||||||
return
|
return
|
||||||
|
|
||||||
log_directed_talk(src, H, input, LOG_ADMIN, "reply")
|
log_directed_talk(mob, H, input, LOG_ADMIN, "reply")
|
||||||
message_admins("[key_name_admin(src)] replied to [key_name_admin(H)]'s [sender] message with: \"[input]\"")
|
message_admins("[key_name_admin(src)] replied to [key_name_admin(H)]'s [sender] message with: \"[input]\"")
|
||||||
to_chat(H, "You hear something crackle in your ears for a moment before a voice speaks. \"Please stand by for a message from [sender == "Syndicate" ? "your benefactor" : "Central Command"]. Message as follows[sender == "Syndicate" ? ", agent." : ":"] <span class='bold'>[input].</span> Message ends.\"")
|
to_chat(H, "You hear something crackle in your ears for a moment before a voice speaks. \"Please stand by for a message from [sender == "Syndicate" ? "your benefactor" : "Central Command"]. Message as follows[sender == "Syndicate" ? ", agent." : ":"] <span class='bold'>[input].</span> Message ends.\"")
|
||||||
|
|
||||||
|
|||||||
@@ -300,7 +300,7 @@
|
|||||||
if(ishuman(cultist))
|
if(ishuman(cultist))
|
||||||
var/mob/living/carbon/human/H = cultist
|
var/mob/living/carbon/human/H = cultist
|
||||||
H.eye_color = "f00"
|
H.eye_color = "f00"
|
||||||
H.dna.update_ui_block(DNA_EYE_COLOR_BLOCK)
|
H.dna?.update_ui_block(DNA_EYE_COLOR_BLOCK)
|
||||||
ADD_TRAIT(H, TRAIT_CULT_EYES, "valid_cultist")
|
ADD_TRAIT(H, TRAIT_CULT_EYES, "valid_cultist")
|
||||||
H.update_body()
|
H.update_body()
|
||||||
|
|
||||||
|
|||||||
@@ -885,7 +885,7 @@ structure_check() searches for nearby cultist structures required for the invoca
|
|||||||
if(new_human)
|
if(new_human)
|
||||||
new_human.visible_message("<span class='warning'>[new_human] suddenly dissolves into bones and ashes.</span>", \
|
new_human.visible_message("<span class='warning'>[new_human] suddenly dissolves into bones and ashes.</span>", \
|
||||||
"<span class='cultlarge'>Your link to the world fades. Your form breaks apart.</span>")
|
"<span class='cultlarge'>Your link to the world fades. Your form breaks apart.</span>")
|
||||||
for(var/obj/I in new_human)
|
for(var/obj/item/I in new_human)
|
||||||
new_human.dropItemToGround(I, TRUE)
|
new_human.dropItemToGround(I, TRUE)
|
||||||
new_human.dust()
|
new_human.dust()
|
||||||
else if(choice == "Ascend as a Dark Spirit")
|
else if(choice == "Ascend as a Dark Spirit")
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
|
|
||||||
/mob/living/carbon/human/spawn_gibs(with_bodyparts, atom/loc_override)
|
/mob/living/carbon/human/spawn_gibs(with_bodyparts, atom/loc_override)
|
||||||
var/location = loc_override ? loc_override.drop_location() : drop_location()
|
var/location = loc_override ? loc_override.drop_location() : drop_location()
|
||||||
|
var/blood_dna = get_blood_dna_list()
|
||||||
if(dna?.species?.gib_types)
|
if(dna?.species?.gib_types)
|
||||||
var/datum/species/S = dna.species
|
var/datum/species/S = dna.species
|
||||||
var/length = length(S.gib_types)
|
var/length = length(S.gib_types)
|
||||||
@@ -13,7 +14,7 @@
|
|||||||
var/path = (with_bodyparts && length > 1) ? S.gib_types[2] : S.gib_types[1]
|
var/path = (with_bodyparts && length > 1) ? S.gib_types[2] : S.gib_types[1]
|
||||||
new path(location, src, get_static_viruses())
|
new path(location, src, get_static_viruses())
|
||||||
else
|
else
|
||||||
new S.gib_types(location, src, get_static_viruses())
|
new S.gib_types(location, src, get_static_viruses(), dna)
|
||||||
else
|
else
|
||||||
if(with_bodyparts)
|
if(with_bodyparts)
|
||||||
new /obj/effect/gibspawner/human(location, src, get_static_viruses())
|
new /obj/effect/gibspawner/human(location, src, get_static_viruses())
|
||||||
|
|||||||
@@ -91,7 +91,7 @@
|
|||||||
var/say_starter = "Say \"" //"
|
var/say_starter = "Say \"" //"
|
||||||
if(findtextEx(temp, say_starter, 1, length(say_starter) + 1) && length(temp) > length(say_starter)) //case sensitive means
|
if(findtextEx(temp, say_starter, 1, length(say_starter) + 1) && length(temp) > length(say_starter)) //case sensitive means
|
||||||
|
|
||||||
temp = trim_left(copytext(temp, length(say_starter + 1)))
|
temp = trim_left(copytext(temp, length(say_starter) + 1))
|
||||||
temp = replacetext(temp, ";", "", 1, 2) //general radio
|
temp = replacetext(temp, ";", "", 1, 2) //general radio
|
||||||
while(trim_left(temp)[1] == ":") //dept radio again (necessary)
|
while(trim_left(temp)[1] == ":") //dept radio again (necessary)
|
||||||
temp = copytext_char(trim_left(temp), 3)
|
temp = copytext_char(trim_left(temp), 3)
|
||||||
|
|||||||
@@ -182,8 +182,9 @@
|
|||||||
return TRUE
|
return TRUE
|
||||||
|
|
||||||
/mob/living/simple_animal/bot/death(gibbed)
|
/mob/living/simple_animal/bot/death(gibbed)
|
||||||
explode()
|
. = ..()
|
||||||
..()
|
if(!gibbed)
|
||||||
|
explode()
|
||||||
|
|
||||||
/mob/living/simple_animal/bot/proc/explode()
|
/mob/living/simple_animal/bot/proc/explode()
|
||||||
qdel(src)
|
qdel(src)
|
||||||
|
|||||||
Reference in New Issue
Block a user