mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2026-08-21 20:27:42 +01:00
[MIRROR] More redspace modifier tweaks (#12131)
Co-authored-by: Cameron Lennox <killer65311@gmail.com>
This commit is contained in:
co-authored by
Cameron Lennox
parent
765fcd057f
commit
8fd4fe2285
@@ -49,7 +49,7 @@ BLOOD_VOLUME_SURVIVE = 40
|
||||
if(isSynthetic())
|
||||
B.data["species"] = "synthetic"
|
||||
|
||||
B.data["changeling"] = (!isnull(mind) && is_changeling(mind)) || species?.ambulant_blood
|
||||
B.data["changeling"] = (!isnull(mind) && is_changeling(mind)) || species?.ambulant_blood || HAS_TRAIT(src, TRAIT_REDSPACE_CORRUPTED)
|
||||
B.color = B.data["blood_colour"]
|
||||
B.name = B.data["blood_name"]
|
||||
|
||||
@@ -295,7 +295,7 @@ BLOOD_VOLUME_SURVIVE = 40
|
||||
B.data["resistances"] |= GetResistances()
|
||||
B.data["blood_DNA"] = copytext(src.dna.unique_enzymes,1,0)
|
||||
B.data["blood_type"] = copytext(src.dna.b_type,1,0)
|
||||
B.data["changeling"] = (!isnull(mind) && is_changeling(mind)) || species?.ambulant_blood
|
||||
B.data["changeling"] = (!isnull(mind) && is_changeling(mind)) || species?.ambulant_blood || HAS_TRAIT(src, TRAIT_REDSPACE_CORRUPTED)
|
||||
|
||||
// Putting this here due to return shenanigans.
|
||||
if(ishuman(src))
|
||||
@@ -372,7 +372,7 @@ BLOOD_VOLUME_SURVIVE = 40
|
||||
if(!our)
|
||||
log_runtime("Failed to re-initialize blood datums on [src]!")
|
||||
return
|
||||
if(is_changeling(src)) //Changelings don't reject blood!
|
||||
if((is_changeling(src) || HAS_TRAIT(src, TRAIT_REDSPACE_CORRUPTED))) //Changelings don't reject blood!
|
||||
vessel.add_reagent(REAGENT_ID_BLOOD, amount, injected.data)
|
||||
vessel.update_total()
|
||||
else if(blood_incompatible(injected.data["blood_type"],our.data["blood_type"],injected.data["species"],our.data["species"]) )
|
||||
|
||||
@@ -223,18 +223,19 @@
|
||||
decays = FALSE
|
||||
can_reject = FALSE
|
||||
meat_type = /obj/item/reagent_containers/food/snacks/meat/worm
|
||||
will_assist_languages = list(LANGUAGE_DAEMON)
|
||||
will_assist_languages = list(LANGUAGE_REDSPACE)
|
||||
var/speak_chance = 25 //25% chance to speak Daemon every 10 ticks
|
||||
var/datum/language/daemon //Storage for demon language so we don't have to constantly set it.
|
||||
var/datum/language/redspace
|
||||
mute = TRUE //You can only speak the hivemind language~
|
||||
|
||||
/obj/item/organ/internal/voicebox/horror/Initialize(mapload)
|
||||
. = ..()
|
||||
daemon = GLOB.all_languages[LANGUAGE_DAEMON]
|
||||
redspace = GLOB.all_languages[LANGUAGE_REDSPACE]
|
||||
|
||||
/obj/item/organ/internal/voicebox/horror/replaced(var/mob/living/carbon/human/target,var/obj/item/organ/external/affected)
|
||||
..()
|
||||
target.add_language(LANGUAGE_DAEMON) //Learn Daemon
|
||||
target.default_language = daemon //Begin speaking Daemon.
|
||||
target.add_language(LANGUAGE_REDSPACE)
|
||||
target.default_language = redspace
|
||||
|
||||
/obj/item/organ/internal/voicebox/horror/process()
|
||||
..()
|
||||
@@ -243,6 +244,5 @@
|
||||
if(is_bruised()) //They heal theirselves.
|
||||
damage -= 1
|
||||
if(owner.life_tick % 10 == 0 && prob(speak_chance))
|
||||
owner.default_language = daemon //Swap back to Daemon.
|
||||
if(prob(5)) //1/20 on a 1/4 chance. 1/80 chance every 10 ticks.
|
||||
owner.say(pick("Join us", "Become one with us", "Join the Flesh", "Come to us", "[owner.real_name] is just a vessel.", "You can be just like us."))
|
||||
owner.say(pick("; Accept our gift.", "; Become one with us.", "; Join our embrace.", "; Come to us.", "; We welcome all that can hear.", "; You can be just like us."))
|
||||
|
||||
Reference in New Issue
Block a user