Merge branch 'master' into upstream-merge-31737
This commit is contained in:
@@ -45,6 +45,6 @@
|
||||
var/datum/personal_crafting/handcrafting
|
||||
can_buckle = TRUE
|
||||
buckle_lying = FALSE
|
||||
can_ride_typecache = list(/mob/living/carbon/human, /mob/living/simple_animal/slime, /mob/living/simple_animal/parrot)
|
||||
|
||||
var/creamed = FALSE //to use with creampie overlays
|
||||
var/static/list/can_ride_typecache = typecacheof(list(/mob/living/carbon/human, /mob/living/simple_animal/slime, /mob/living/simple_animal/parrot))
|
||||
|
||||
@@ -45,14 +45,15 @@
|
||||
return
|
||||
else
|
||||
//No oldFP or it's a different kind of blood
|
||||
S.bloody_shoes[S.blood_state] = max(0, S.bloody_shoes[S.blood_state]-BLOOD_LOSS_PER_STEP)
|
||||
var/obj/effect/decal/cleanable/blood/footprints/FP = new /obj/effect/decal/cleanable/blood/footprints(T)
|
||||
FP.blood_state = S.blood_state
|
||||
FP.entered_dirs |= dir
|
||||
FP.bloodiness = S.bloody_shoes[S.blood_state]
|
||||
if(S.blood_DNA && S.blood_DNA.len)
|
||||
FP.transfer_blood_dna(S.blood_DNA)
|
||||
FP.update_icon()
|
||||
S.bloody_shoes[S.blood_state] = max(0, S.bloody_shoes[S.blood_state] - BLOOD_LOSS_PER_STEP)
|
||||
if (S.bloody_shoes[S.blood_state] > BLOOD_LOSS_IN_SPREAD)
|
||||
var/obj/effect/decal/cleanable/blood/footprints/FP = new /obj/effect/decal/cleanable/blood/footprints(T)
|
||||
FP.blood_state = S.blood_state
|
||||
FP.entered_dirs |= dir
|
||||
FP.bloodiness = S.bloody_shoes[S.blood_state] - BLOOD_LOSS_IN_SPREAD
|
||||
if(S.blood_DNA && S.blood_DNA.len)
|
||||
FP.transfer_blood_dna(S.blood_DNA)
|
||||
FP.update_icon()
|
||||
update_inv_shoes()
|
||||
//End bloody footprints
|
||||
|
||||
|
||||
@@ -419,6 +419,7 @@
|
||||
if(ishuman(C))
|
||||
unstable_teleport = new
|
||||
unstable_teleport.Grant(C)
|
||||
last_teleport = world.time
|
||||
|
||||
/datum/species/golem/bluespace/on_species_loss(mob/living/carbon/C)
|
||||
if(unstable_teleport)
|
||||
@@ -479,6 +480,11 @@
|
||||
var/banana_cooldown = 100
|
||||
var/active = null
|
||||
|
||||
/datum/species/golem/bananium/on_species_gain(mob/living/carbon/C, datum/species/old_species)
|
||||
..()
|
||||
last_banana = world.time
|
||||
last_honk = world.time
|
||||
|
||||
/datum/species/golem/bananium/random_name(gender,unique,lastname)
|
||||
var/clown_name = pick(GLOB.clown_names)
|
||||
var/golem_name = "[uppertext(clown_name)]"
|
||||
@@ -553,10 +559,13 @@
|
||||
. = ..()
|
||||
C.faction |= "cult"
|
||||
phase_shift = new
|
||||
phase_shift.charge_counter = 0
|
||||
C.AddSpell(phase_shift)
|
||||
abyssal_gaze = new
|
||||
abyssal_gaze.charge_counter = 0
|
||||
C.AddSpell(abyssal_gaze)
|
||||
dominate = new
|
||||
dominate.charge_counter = 0
|
||||
C.AddSpell(dominate)
|
||||
|
||||
/datum/species/golem/runic/on_species_loss(mob/living/carbon/C)
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#define HEART_RESPAWN_THRESHHOLD 40
|
||||
#define HEART_SPECIAL_SHADOWIFY 2
|
||||
|
||||
/datum/species/shadow
|
||||
// Humans cursed to stay in the darkness, lest their life forces drain. They regain health in shadow and die in light.
|
||||
@@ -111,14 +112,15 @@
|
||||
|
||||
/obj/item/organ/heart/nightmare/Insert(mob/living/carbon/M, special = 0)
|
||||
..()
|
||||
blade = new/obj/item/light_eater
|
||||
M.put_in_hands(blade)
|
||||
if(special != HEART_SPECIAL_SHADOWIFY)
|
||||
blade = new/obj/item/light_eater
|
||||
M.put_in_hands(blade)
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/organ/heart/nightmare/Remove(mob/living/carbon/M, special = 0)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
respawn_progress = 0
|
||||
if(blade)
|
||||
if(blade && special != HEART_SPECIAL_SHADOWIFY)
|
||||
QDEL_NULL(blade)
|
||||
M.visible_message("<span class='warning'>\The [blade] disintegrates!</span>")
|
||||
..()
|
||||
@@ -141,6 +143,13 @@
|
||||
playsound(owner,'sound/effects/singlebeat.ogg',40,1)
|
||||
if(respawn_progress >= HEART_RESPAWN_THRESHHOLD)
|
||||
owner.revive(full_heal = TRUE)
|
||||
if(!(owner.dna.species.id == "shadow" || owner.dna.species.id == "nightmare"))
|
||||
var/mob/living/carbon/old_owner = owner
|
||||
Remove(owner, HEART_SPECIAL_SHADOWIFY)
|
||||
old_owner.set_species(/datum/species/shadow)
|
||||
Insert(old_owner, HEART_SPECIAL_SHADOWIFY)
|
||||
to_chat(owner, "<span class='userdanger'>You feel the shadows invade your skin, leaping into the center of your chest! You're alive!</span>")
|
||||
SEND_SOUND(owner, sound('sound/effects/ghost.ogg'))
|
||||
owner.visible_message("<span class='warning'>[owner] staggers to their feet!</span>")
|
||||
playsound(owner, 'sound/hallucinations/far_noise.ogg', 50, 1)
|
||||
respawn_progress = 0
|
||||
@@ -193,4 +202,5 @@
|
||||
O.burn()
|
||||
playsound(src, 'sound/items/welder.ogg', 50, 1)
|
||||
|
||||
#undef HEART_SPECIAL_SHADOWIFY
|
||||
#undef HEART_RESPAWN_THRESHHOLD
|
||||
@@ -203,6 +203,16 @@
|
||||
hallucination += 20
|
||||
else if(bz_partialpressure > 0.01)
|
||||
hallucination += 5//Removed at 2 per tick so this will slowly build up
|
||||
//TRITIUM
|
||||
if(breath_gases[/datum/gas/tritium])
|
||||
var/tritium_partialpressure = (breath_gases[/datum/gas/tritium][MOLES]/breath.total_moles())*breath_pressure
|
||||
radiation += tritium_partialpressure/10
|
||||
//Brown Gas
|
||||
if (breath_gases[/datum/gas/brown_gas])
|
||||
var/browns_partialpressure = (breath_gases[/datum/gas/brown_gas][MOLES]/breath.total_moles())*breath_pressure
|
||||
adjustFireLoss(browns_partialpressure/4)
|
||||
|
||||
|
||||
|
||||
breath.garbage_collect()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user