Fixing merge errors.
Testmerge ready.
This commit is contained in:
@@ -31,7 +31,7 @@
|
||||
|
||||
/datum/brain_trauma/mild/phobia/on_life()
|
||||
..()
|
||||
if(owner.has_trait(TRAIT_FEARLESS))
|
||||
if(HAS_TRAIT(owner, TRAIT_FEARLESS))
|
||||
return
|
||||
if(is_blind(owner))
|
||||
return
|
||||
@@ -72,7 +72,7 @@
|
||||
/datum/brain_trauma/mild/phobia/on_hear(message, speaker, message_language, raw_message, radio_freq)
|
||||
if(!owner.can_hear() || world.time < next_scare) //words can't trigger you if you can't hear them *taps head*
|
||||
return message
|
||||
if(owner.has_trait(TRAIT_FEARLESS))
|
||||
if(HAS_TRAIT(owner, TRAIT_FEARLESS))
|
||||
return message
|
||||
for(var/word in trigger_words)
|
||||
var/reg = regex("(\\b|\\A)[REGEX_QUOTE(word)]'?s*(\\b|\\Z)", "i")
|
||||
@@ -83,7 +83,7 @@
|
||||
return message
|
||||
|
||||
/datum/brain_trauma/mild/phobia/on_say(message)
|
||||
if(owner.has_trait(TRAIT_FEARLESS))
|
||||
if(HAS_TRAIT(owner, TRAIT_FEARLESS))
|
||||
return message
|
||||
for(var/word in trigger_words)
|
||||
var/reg = regex("(\\b|\\A)[REGEX_QUOTE(word)]'?s*(\\b|\\Z)", "i")
|
||||
|
||||
@@ -179,7 +179,7 @@
|
||||
amount = sanity - 0.5
|
||||
|
||||
// Disturbed stops you from getting any more sane
|
||||
if(master.has_trait(TRAIT_UNSTABLE))
|
||||
if(HAS_TRAIT(master, TRAIT_UNSTABLE))
|
||||
sanity = min(amount,sanity)
|
||||
else
|
||||
sanity = amount
|
||||
@@ -232,7 +232,7 @@
|
||||
/datum/component/mood/proc/IncreaseSanity(amount, maximum = SANITY_NEUTRAL)
|
||||
// Disturbed stops you from getting any more sane - I'm just gonna bung this in here
|
||||
var/mob/living/owner = parent
|
||||
if(owner.has_trait(TRAIT_UNSTABLE))
|
||||
if(HAS_TRAIT(owner, TRAIT_UNSTABLE))
|
||||
return
|
||||
if(sanity > maximum)
|
||||
DecreaseSanity(0.5) //Removes some sanity to go back to our current limit.
|
||||
|
||||
@@ -521,11 +521,11 @@ datum/status_effect/pacify
|
||||
. = ..()
|
||||
|
||||
/datum/status_effect/pacify/on_apply()
|
||||
owner.add_trait(TRAIT_PACIFISM, "status_effect")
|
||||
ADD_TRAIT(owner, TRAIT_PACIFISM, "status_effect")
|
||||
return ..()
|
||||
|
||||
/datum/status_effect/pacify/on_remove()
|
||||
owner.remove_trait(TRAIT_PACIFISM, "status_effect")
|
||||
REMOVE_TRAIT(owner, TRAIT_PACIFISM, "status_effect")
|
||||
|
||||
/datum/status_effect/trance
|
||||
id = "trance"
|
||||
@@ -550,7 +550,7 @@ datum/status_effect/pacify
|
||||
if(!iscarbon(owner))
|
||||
return FALSE
|
||||
RegisterSignal(owner, COMSIG_MOVABLE_HEAR, .proc/hypnotize)
|
||||
owner.add_trait(TRAIT_MUTE, "trance")
|
||||
ADD_TRAIT(owner, TRAIT_MUTE, "trance")
|
||||
if(!owner.has_quirk(/datum/quirk/monochromatic))
|
||||
owner.add_client_colour(/datum/client_colour/monochrome)
|
||||
owner.visible_message("[stun ? "<span class='warning'>[owner] stands still as [owner.p_their()] eyes seem to focus on a distant point.</span>" : ""]", \
|
||||
@@ -564,7 +564,7 @@ datum/status_effect/pacify
|
||||
|
||||
/datum/status_effect/trance/on_remove()
|
||||
UnregisterSignal(owner, COMSIG_MOVABLE_HEAR)
|
||||
owner.remove_trait(TRAIT_MUTE, "trance")
|
||||
REMOVE_TRAIT(owner, TRAIT_MUTE, "trance")
|
||||
owner.dizziness = 0
|
||||
if(!owner.has_quirk(/datum/quirk/monochromatic))
|
||||
owner.remove_client_colour(/datum/client_colour/monochrome)
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
nutrition_ratio = 0.8
|
||||
else
|
||||
nutrition_ratio = 1
|
||||
if(has_trait(TRAIT_HIGH_BLOOD))
|
||||
if(HAS_TRAIT(src, TRAIT_HIGH_BLOOD))
|
||||
nutrition_ratio *= 1.2
|
||||
if(satiety > 80)
|
||||
nutrition_ratio *= 1.25
|
||||
@@ -322,7 +322,7 @@
|
||||
/mob/living/proc/ResetBloodVol()
|
||||
if(ishuman(src))
|
||||
var/mob/living/carbon/human/H = src
|
||||
if (src.has_trait(TRAIT_HIGH_BLOOD))
|
||||
if (HAS_TRAIT(src, TRAIT_HIGH_BLOOD))
|
||||
blood_ratio = 1.2
|
||||
H.handle_blood()
|
||||
return
|
||||
|
||||
@@ -913,13 +913,13 @@
|
||||
return bodyparts.len > 2 && ..()
|
||||
|
||||
/mob/living/carbon/proc/hypnosis_vulnerable()//unused atm, but added in case
|
||||
if(src.has_trait(TRAIT_MINDSHIELD))
|
||||
if(HAS_TRAIT(src, TRAIT_MINDSHIELD))
|
||||
return FALSE
|
||||
if(hallucinating())
|
||||
return TRUE
|
||||
if(IsSleeping())
|
||||
return TRUE
|
||||
if(src.has_trait(TRAIT_DUMB))
|
||||
if(HAS_TRAIT(src, TRAIT_DUMB))
|
||||
return TRUE
|
||||
GET_COMPONENT_FROM(mood, /datum/component/mood, src)
|
||||
if(mood)
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
to_chat(src, "<span class='notice'>Your tongue moves on it's own in response to the liquid.</span>")
|
||||
say("The pH is appropriately [round(from.pH, 1)].")
|
||||
return
|
||||
if (!has_trait(TRAIT_AGEUSIA)) //I'll let you get away with not having 1 damage.
|
||||
if (!HAS_TRAIT(src, TRAIT_AGEUSIA)) //I'll let you get away with not having 1 damage.
|
||||
switch(from.pH)
|
||||
if(11.5 to INFINITY)
|
||||
to_chat(src, "<span class='warning'>You taste a strong alkaline flavour!</span>")
|
||||
|
||||
@@ -347,8 +347,6 @@
|
||||
var/list/cached_reagents = reagent_list
|
||||
var/list/cached_reactions = GLOB.chemical_reactions_list
|
||||
var/datum/cached_my_atom = my_atom
|
||||
if(reagents_holder_flags & REAGENT_NOREACT)
|
||||
return
|
||||
|
||||
var/reaction_occurred = 0 // checks if reaction, binary variable
|
||||
var/continue_reacting = FALSE //Helps keep track what kind of reaction is occuring; standard or fermi.
|
||||
|
||||
@@ -389,11 +389,11 @@
|
||||
|
||||
/datum/reagent/drug/happiness/on_mob_add(mob/living/L)
|
||||
..()
|
||||
L.add_trait(TRAIT_FEARLESS, id)
|
||||
ADD_TRAIT(L, TRAIT_FEARLESS, id)
|
||||
SEND_SIGNAL(L, COMSIG_ADD_MOOD_EVENT, "happiness_drug", /datum/mood_event/happiness_drug)
|
||||
|
||||
/datum/reagent/drug/happiness/on_mob_delete(mob/living/L)
|
||||
L.remove_trait(TRAIT_FEARLESS, id)
|
||||
REMOVE_TRAIT(L, TRAIT_FEARLESS, id)
|
||||
SEND_SIGNAL(L, COMSIG_CLEAR_MOOD_EVENT, "happiness_drug")
|
||||
..()
|
||||
|
||||
|
||||
@@ -1377,10 +1377,10 @@
|
||||
|
||||
/datum/reagent/medicine/psicodine/on_mob_add(mob/living/L)
|
||||
..()
|
||||
L.add_trait(TRAIT_FEARLESS, id)
|
||||
ADD_TRAIT(L, TRAIT_FEARLESS, id)
|
||||
|
||||
/datum/reagent/medicine/psicodine/on_mob_delete(mob/living/L)
|
||||
L.remove_trait(TRAIT_FEARLESS, id)
|
||||
REMOVE_TRAIT(L, TRAIT_FEARLESS, id)
|
||||
..()
|
||||
|
||||
/datum/reagent/medicine/psicodine/on_mob_life(mob/living/carbon/M)
|
||||
|
||||
@@ -211,7 +211,7 @@
|
||||
/obj/item/reagent_containers/glass/beaker/noreact/Initialize()
|
||||
beaker_weakness_bitflag &= ~PH_WEAK
|
||||
. = ..()
|
||||
reagents.set_reacting(FALSE)
|
||||
//reagents.set_reacting(FALSE) was this removed in a recent pr?
|
||||
|
||||
/obj/item/reagent_containers/glass/beaker/bluespace
|
||||
name = "bluespace beaker"
|
||||
|
||||
@@ -575,7 +575,7 @@
|
||||
cooldown = COOLDOWN_MEME
|
||||
for(var/V in listeners)
|
||||
var/mob/living/carbon/human/H = V
|
||||
if(H.canbearoused && H.has_dna() && H.has_trait(TRAIT_NYMPHO)) // probably a redundant check but for good measure
|
||||
if(H.canbearoused && H.has_dna() && HAS_TRAIT(H, TRAIT_NYMPHO)) // probably a redundant check but for good measure
|
||||
H.mob_climax(forced_climax=TRUE)
|
||||
|
||||
//DAB
|
||||
@@ -803,9 +803,9 @@
|
||||
continue
|
||||
if (L.lewd)
|
||||
addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "<span class='love'>[E.enthrallGender] has praised me!!</b></span>"), 5)
|
||||
if(L.has_trait(TRAIT_NYMPHO))
|
||||
if(HAS_TRAIT(L, TRAIT_NYMPHO))
|
||||
L.adjustArousalLoss(2*power_multiplier)
|
||||
if(L.has_trait(TRAIT_MASO))
|
||||
if(HAS_TRAIT(L, TRAIT_MASO))
|
||||
E.enthrallTally -= power_multiplier
|
||||
E.resistanceTally += power_multiplier
|
||||
E.cooldown += 1
|
||||
@@ -826,7 +826,7 @@
|
||||
if(L == user)
|
||||
continue
|
||||
if (L.lewd)
|
||||
if(L.has_trait(TRAIT_MASO))
|
||||
if(HAS_TRAIT(L, TRAIT_MASO))
|
||||
L.adjustArousalLoss(3*power_multiplier)
|
||||
descmessage += "And yet, it feels so good..!</span>" //I don't really understand masco, is this the right sort of thing they like?
|
||||
E.enthrallTally += power_multiplier
|
||||
@@ -848,7 +848,7 @@
|
||||
for(var/V in listeners)
|
||||
var/mob/living/carbon/C = V
|
||||
var/datum/status_effect/chem/enthrall/E = C.has_status_effect(/datum/status_effect/chem/enthrall)
|
||||
C.remove_trait(TRAIT_MUTE, "enthrall")
|
||||
REMOVE_TRAIT(C, TRAIT_MUTE, "enthrall")
|
||||
if(C.lewd)
|
||||
addtimer(CALLBACK(C, /atom/movable/proc/say, "[E.enthrallGender]"), 5)
|
||||
else
|
||||
@@ -878,7 +878,7 @@
|
||||
var/datum/status_effect/chem/enthrall/E = C.has_status_effect(/datum/status_effect/chem/enthrall)
|
||||
power_multiplier *= distancelist[get_dist(user, C)+1]
|
||||
if (E.phase == 3) //If target is fully enthralled,
|
||||
C.add_trait(TRAIT_MUTE, "enthrall")
|
||||
ADD_TRAIT(C, TRAIT_MUTE, "enthrall")
|
||||
else
|
||||
C.silent += ((10 * power_multiplier) * E.phase)
|
||||
E.cooldown += 3
|
||||
@@ -887,7 +887,7 @@
|
||||
else if((findtext(message, silence_words)))
|
||||
for(var/mob/living/carbon/C in listeners)
|
||||
var/datum/status_effect/chem/enthrall/E = C.has_status_effect(/datum/status_effect/chem/enthrall)
|
||||
C.remove_trait(TRAIT_MUTE, "enthrall")
|
||||
REMOVE_TRAIT(C, TRAIT_MUTE, "enthrall")
|
||||
E.cooldown += 3
|
||||
|
||||
|
||||
@@ -948,7 +948,7 @@
|
||||
var/mob/living/carbon/human/H = V
|
||||
var/datum/status_effect/chem/enthrall/E = H.has_status_effect(/datum/status_effect/chem/enthrall)
|
||||
if(E.phase > 1)
|
||||
if(H.has_trait(TRAIT_NYMPHO) && H.canbearoused) // probably a redundant check but for good measure
|
||||
if(HAS_TRAIT(H, TRAIT_NYMPHO) && H.canbearoused) // probably a redundant check but for good measure
|
||||
addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, H, "<span class='love'>Your [E.enthrallGender] pushes you over the limit, overwhelming your body with pleasure.</b></span>"), 5)
|
||||
H.mob_climax(forced_climax=TRUE)
|
||||
H.SetStun(20)
|
||||
@@ -1061,9 +1061,9 @@
|
||||
if (E.phase > 2)
|
||||
for (var/trigger in E.customTriggers)
|
||||
speaktrigger += "[trigger], "
|
||||
C.add_trait(TRAIT_DEAF, "Triggers") //So you don't trigger yourself! Actually this will trigger yourself oops.
|
||||
ADD_TRAIT(C, TRAIT_DEAF, "Triggers") //So you don't trigger yourself! Actually this will trigger yourself oops.
|
||||
addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, C, /atom/movable/proc/say, "[speaktrigger]"), 5)
|
||||
C.remove_trait(TRAIT_DEAF, "Triggers")
|
||||
REMOVE_TRAIT(C, TRAIT_DEAF, "Triggers")
|
||||
|
||||
|
||||
//CUSTOM TRIGGERS
|
||||
|
||||
@@ -256,7 +256,7 @@
|
||||
mental_capacity += 10
|
||||
|
||||
//mindshield check
|
||||
if(M.has_trait(TRAIT_MINDSHIELD))//If you manage to enrapture a head, wow, GJ. (resisting gives a bigger bonus with a mindshield)
|
||||
if(HAS_TRAIT(M, TRAIT_MINDSHIELD))//If you manage to enrapture a head, wow, GJ. (resisting gives a bigger bonus with a mindshield)
|
||||
resistanceTally += 2
|
||||
if(prob(10))
|
||||
to_chat(owner, "<span class='notice'><i>You feel lucidity returning to your mind as the mindshield buzzes, attempting to return your brain to normal function.</i></span>")
|
||||
@@ -303,7 +303,7 @@
|
||||
to_chat(owner, "<span class='big warning'><b>You are now fully enthralled to [master], and eager to follow their commands. However you find that in your intoxicated state you are unable to resort to violence. Equally you are unable to commit suicide, even if ordered to, as you cannot serve your [enthrallGender] in death. </i></span>")//If people start using this as an excuse to be violent I'll just make them all pacifists so it's not OP.
|
||||
else
|
||||
to_chat(owner, "<span class='big nicegreen'><i>You are unable to put up a resistance any longer, and now are under the control of [master]. However you find that in your intoxicated state you are unable to resort to violence. Equally you are unable to commit suicide, even if ordered to, as you cannot serve your [master] in death. </i></span>")
|
||||
owner.add_trait(TRAIT_PACIFISM, "MKUltra") //IMPORTANT
|
||||
ADD_TRAIT(owner, TRAIT_PACIFISM, "MKUltra") //IMPORTANT
|
||||
log_game("FERMICHEM: MKULTRA: Status on [owner] ckey: [owner.key] has been fully entrhalled (state 3) with a master of [master] ckey: [enthrallID].")
|
||||
else if (resistanceTally > 200)
|
||||
enthrallTally *= 0.5
|
||||
@@ -315,18 +315,18 @@
|
||||
if(owner.lewd)
|
||||
to_chat(owner, "<span class='hypnophrase'><i>[pick("It feels so good to listen to [enthrallGender].", "You can't keep your eyes off [enthrallGender].", "[enthrallGender]'s voice is making you feel so sleepy.", "You feel so comfortable with [enthrallGender]", "[enthrallGender] is so dominant, it feels right to obey them.")].</i></span>")
|
||||
if (3)//fully entranced
|
||||
if ((resistanceTally >= 200 && withdrawalTick >= 150) || (M.has_trait(TRAIT_MINDSHIELD) && (resistanceTally >= 100)))
|
||||
if ((resistanceTally >= 200 && withdrawalTick >= 150) || (HAS_TRAIT(M, TRAIT_MINDSHIELD) && (resistanceTally >= 100)))
|
||||
enthrallTally = 0
|
||||
phase -= 1
|
||||
resistanceTally = 0
|
||||
resistGrowth = 0
|
||||
to_chat(owner, "<span class='notice'><i>The separation from [(owner.lewd?"your [enthrallGender]":"[master]")] sparks a small flame of resistance in yourself, as your mind slowly starts to return to normal.</i></span>")
|
||||
owner.remove_trait(TRAIT_PACIFISM, "MKUltra")
|
||||
REMOVE_TRAIT(owner, TRAIT_PACIFISM, "MKUltra")
|
||||
if(prob(2))
|
||||
if(owner.lewd)
|
||||
to_chat(owner, "<span class='love'><i>[pick("I belong to [enthrallGender].", "[enthrallGender] knows whats best for me.", "Obedence is pleasure.", "I exist to serve [enthrallGender].", "[enthrallGender] is so dominant, it feels right to obey them.")].</i></span>")
|
||||
if (4) //mindbroken
|
||||
if (mental_capacity >= 499 && (owner.getBrainLoss() >=20 || M.has_trait(TRAIT_MINDSHIELD)) && !owner.reagents.has_reagent("MKUltra"))
|
||||
if (mental_capacity >= 499 && (owner.getBrainLoss() >=20 || HAS_TRAIT(M, TRAIT_MINDSHIELD)) && !owner.reagents.has_reagent("MKUltra"))
|
||||
phase = 2
|
||||
mental_capacity = 500
|
||||
customTriggers = list()
|
||||
@@ -471,7 +471,7 @@
|
||||
cooldown += 1 //Cooldown doesn't process till status is done
|
||||
|
||||
else if(status == "charge")
|
||||
owner.add_trait(TRAIT_GOTTAGOFAST, "MKUltra")
|
||||
ADD_TRAIT(owner, TRAIT_GOTTAGOFAST, "MKUltra")
|
||||
status = "charged"
|
||||
if(master.lewd)
|
||||
to_chat(owner, "<span class='notice'><i>Your [enthrallGender]'s order fills you with a burst of speed!</i></span>")
|
||||
@@ -481,7 +481,7 @@
|
||||
else if (status == "charged")
|
||||
if (statusStrength < 0)
|
||||
status = null
|
||||
owner.remove_trait(TRAIT_GOTTAGOFAST, "MKUltra")
|
||||
REMOVE_TRAIT(owner, TRAIT_GOTTAGOFAST, "MKUltra")
|
||||
owner.Knockdown(50)
|
||||
to_chat(owner, "<span class='notice'><i>Your body gives out as the adrenaline in your system runs out.</i></span>")
|
||||
else
|
||||
@@ -489,7 +489,7 @@
|
||||
cooldown += 1 //Cooldown doesn't process till status is done
|
||||
|
||||
else if (status == "pacify")
|
||||
owner.add_trait(TRAIT_PACIFISM, "MKUltraStatus")
|
||||
ADD_TRAIT(owner, TRAIT_PACIFISM, "MKUltraStatus")
|
||||
status = null
|
||||
|
||||
//Truth serum?
|
||||
@@ -530,7 +530,7 @@
|
||||
qdel(redirect_component.resolve())
|
||||
redirect_component = null
|
||||
UnregisterSignal(owner, COMSIG_MOVABLE_HEAR)
|
||||
owner.remove_trait(TRAIT_PACIFISM, "MKUltra")
|
||||
REMOVE_TRAIT(owner, TRAIT_PACIFISM, "MKUltra")
|
||||
to_chat(owner, "<span class='big redtext'><i>You're now free of [master]'s influence, and fully independant oncemore!'</i></span>")
|
||||
//UnregisterSignal(owner, COMSIG_GLOB_LIVING_SAY_SPECIAL) //Should still make custom commands work after freedom, need to check.
|
||||
|
||||
@@ -549,7 +549,7 @@
|
||||
//Speak (Forces player to talk) works
|
||||
if (lowertext(customTriggers[trigger][1]) == "speak")//trigger2
|
||||
var/saytext = "Your mouth moves on it's own before you can even catch it."
|
||||
if(C.has_trait(TRAIT_NYMPHO))
|
||||
if(HAS_TRAIT(C, TRAIT_NYMPHO))
|
||||
saytext += " You find yourself fully believing in the validity of what you just said and don't think to question it."
|
||||
to_chat(C, "<span class='notice'><i>[saytext]</i></span>")
|
||||
(C.say(customTriggers[trigger][2]))//trigger3
|
||||
@@ -571,7 +571,7 @@
|
||||
|
||||
//wah intensifies wah-rks
|
||||
else if (lowertext(customTriggers[trigger]) == "cum")//aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
if (C.has_trait(TRAIT_NYMPHO))
|
||||
if (HAS_TRAIT(C, TRAIT_NYMPHO))
|
||||
if (C.getArousalLoss() > 80)
|
||||
C.mob_climax(forced_climax=TRUE)
|
||||
C.SetStun(10)//We got your stun effects in somewhere, Kev.
|
||||
@@ -659,7 +659,7 @@
|
||||
deltaResist *= 1.5
|
||||
to_chat(owner, "You attempt to shake the mental cobwebs from your mind!")
|
||||
//nymphomania
|
||||
if (M.canbearoused && M.has_trait(TRAIT_NYMPHO))//I'm okay with this being removed.
|
||||
if (M.canbearoused && HAS_TRAIT(M, TRAIT_NYMPHO))//I'm okay with this being removed.
|
||||
deltaResist*= 0.5-(((2/200)*M.arousalloss)/1)//more aroused you are, the weaker resistance you can give, the less you are, the more you gain. (+/- 0.5)
|
||||
|
||||
//chemical resistance, brain and annaphros are the key to undoing, but the subject has to to be willing to resist.
|
||||
@@ -667,7 +667,7 @@
|
||||
deltaResist *= 1.25
|
||||
if (owner.reagents.has_reagent("neurine"))
|
||||
deltaResist *= 1.5
|
||||
if (!owner.has_trait(TRAIT_CROCRIN_IMMUNE) && M.canbearoused)
|
||||
if (!HAS_TRAIT(owner, TRAIT_CROCRIN_IMMUNE) && M.canbearoused)
|
||||
if (owner.reagents.has_reagent("anaphro"))
|
||||
deltaResist *= 1.5
|
||||
if (owner.reagents.has_reagent("anaphro+"))
|
||||
@@ -711,7 +711,7 @@
|
||||
//If you've a collar, you get a sense of pride
|
||||
if(istype(M.wear_neck, /obj/item/clothing/neck/petcollar))
|
||||
deltaResist *= 0.5
|
||||
if(M.has_trait(TRAIT_MINDSHIELD))
|
||||
if(HAS_TRAIT(M, TRAIT_MINDSHIELD))
|
||||
deltaResist += 5//even faster!
|
||||
|
||||
return
|
||||
|
||||
@@ -304,7 +304,7 @@
|
||||
var/breastCheck = FALSE
|
||||
var/willyCheck = FALSE
|
||||
if(!canbearoused)
|
||||
add_trait(TRAIT_PHARMA)//Prefs prevent unwanted organs.
|
||||
ADD_TRAIT(src, TRAIT_PHARMA, "pharma")//Prefs prevent unwanted organs.
|
||||
return
|
||||
for(var/obj/item/organ/O in internal_organs)
|
||||
if(istype(O, /obj/item/organ/genital))
|
||||
|
||||
@@ -264,7 +264,7 @@ Creating a chem with a low purity will make you permanently fall in love with so
|
||||
creatorName = chosen.real_name
|
||||
creator = get_mob_by_key(creatorID)
|
||||
*/
|
||||
M.add_trait(TRAIT_PACIFISM, "MKUltra")
|
||||
ADD_TRAIT(M, TRAIT_PACIFISM, "MKUltra")
|
||||
var/datum/status_effect/chem/enthrall/E
|
||||
if (!M.has_status_effect(/datum/status_effect/chem/enthrall))
|
||||
M.apply_status_effect(/datum/status_effect/chem/enthrall)
|
||||
@@ -313,7 +313,7 @@ Creating a chem with a low purity will make you permanently fall in love with so
|
||||
log_game("FERMICHEM: [M] ckey: [M.key] has temporarily fallen for [love] ckey: [love.key]")
|
||||
else
|
||||
if(get_dist(M, love) < 8)
|
||||
if(M.has_trait(TRAIT_NYMPHO)) //Add this back when merged/updated.
|
||||
if(HAS_TRAIT(M, TRAIT_NYMPHO)) //Add this back when merged/updated.
|
||||
M.adjustArousalLoss(5)
|
||||
SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, "InLove", /datum/mood_event/InLove)
|
||||
SEND_SIGNAL(M, COMSIG_CLEAR_MOOD_EVENT, "MissingLove")
|
||||
|
||||
@@ -125,7 +125,7 @@ IMPORTANT FACTORS TO CONSIDER WHILE BALANCING
|
||||
switch(current_cycle)
|
||||
if(21)
|
||||
to_chat(M, "<span class='notice'>The cells fail to catalyse around a nucleation event, instead merging with your cells.</span>") //This stuff is hard enough to make to rob a user of some benefit. Shouldn't replace Rezadone as it requires the user to not only risk making a player controlled clone, but also requires them to have split in two (which also requires 30u of SGDF).
|
||||
M.remove_trait(TRAIT_DISFIGURED, TRAIT_GENERIC)
|
||||
REMOVE_TRAIT(M, TRAIT_DISFIGURED, TRAIT_GENERIC)
|
||||
log_game("FERMICHEM: [M] ckey: [M.key] is being healed by SDGF")
|
||||
if(22 to INFINITY)
|
||||
M.adjustCloneLoss(-1, 0)
|
||||
|
||||
@@ -64,10 +64,10 @@ I'd like to point out from my calculations it'll take about 60-80 minutes to die
|
||||
antiGenetics = 255
|
||||
..()
|
||||
|
||||
//Okay so, this might seem a bit too good, but my counterargument is that it'll likely take all round to eventually kill you this way, then you have to be revived without a body. It takes approximately 60-80 minutes to die from this.
|
||||
//Okay so, this might seem a bit too good, but my counterargument is that it'll likely take all round to eventually kill you this way, then you have to be revived without a body. It takes approximately 50-80 minutes to die from this.
|
||||
/datum/reagent/fermi/astral/addiction_act_stage1(mob/living/carbon/M)
|
||||
if(addiction_stage < 2)
|
||||
antiGenetics = 255//Doesn't reset when you take more, which is weird for me, it should.
|
||||
antiGenetics = 255
|
||||
M.alpha = 255 //Antigenetics is to do with stopping geneticists from turning people invisible to kill them.
|
||||
if(prob(65))
|
||||
M.alpha--
|
||||
@@ -94,7 +94,7 @@ I'd like to point out from my calculations it'll take about 60-80 minutes to die
|
||||
to_chat(M, "<span class='notice'>You feel a substantial part of your soul flake off into the ethereal world, rendering yourself unclonable.</b></span>")
|
||||
M.alpha--
|
||||
antiGenetics--
|
||||
M.add_trait(TRAIT_NOCLONE) //So you can't scan yourself, then die, to metacomm. You can only use your memories if you come back as something else.
|
||||
ADD_TRAIT(M, TRAIT_NOCLONE, "astral") //So you can't scan yourself, then die, to metacomm. You can only use your memories if you come back as something else.
|
||||
if(80)
|
||||
to_chat(M, "<span class='notice'>You feel a thrill shoot through your body as what's left of your mind contemplates your forthcoming oblivion.</b></span>")
|
||||
M.alpha--
|
||||
|
||||
@@ -68,7 +68,7 @@
|
||||
if(!B) //If they don't have breasts, give them breasts.
|
||||
|
||||
//If they have Acute hepatic pharmacokinesis, then route processing though liver.
|
||||
if(M.has_trait(TRAIT_PHARMA))
|
||||
if(HAS_TRAIT(M, TRAIT_PHARMA))
|
||||
var/obj/item/organ/liver/L = M.getorganslot("liver")
|
||||
L.swelling+= 0.05
|
||||
return..()
|
||||
@@ -103,7 +103,7 @@
|
||||
/datum/reagent/fermi/breast_enlarger/overdose_process(mob/living/carbon/M) //Turns you into a female if male and ODing, doesn't touch nonbinary and object genders.
|
||||
|
||||
//Acute hepatic pharmacokinesis.
|
||||
if(M.has_trait(TRAIT_PHARMA))
|
||||
if(HAS_TRAIT(M, TRAIT_PHARMA))
|
||||
var/obj/item/organ/liver/L = M.getorganslot("liver")
|
||||
L.swelling+= 0.05
|
||||
return ..()
|
||||
@@ -144,7 +144,7 @@
|
||||
var/obj/item/organ/genital/breasts/B = M.getorganslot("breasts")
|
||||
if(!B)
|
||||
//Acute hepatic pharmacokinesis.
|
||||
if(M.has_trait(TRAIT_PHARMA))
|
||||
if(HAS_TRAIT(M, TRAIT_PHARMA))
|
||||
var/obj/item/organ/liver/L = M.getorganslot("liver")
|
||||
L.swelling-= 0.05
|
||||
return ..()
|
||||
@@ -207,7 +207,7 @@
|
||||
if(!P)//They do have a preponderance for escapism, or so I've heard.
|
||||
|
||||
//If they have Acute hepatic pharmacokinesis, then route processing though liver.
|
||||
if(M.has_trait(TRAIT_PHARMA))
|
||||
if(HAS_TRAIT(M, TRAIT_PHARMA))
|
||||
var/obj/item/organ/liver/L = M.getorganslot("liver")
|
||||
L.swelling+= 0.05
|
||||
return..()
|
||||
@@ -235,7 +235,7 @@
|
||||
|
||||
/datum/reagent/fermi/penis_enlarger/overdose_process(mob/living/carbon/M) //Turns you into a male if female and ODing, doesn't touch nonbinary and object genders.
|
||||
//Acute hepatic pharmacokinesis.
|
||||
if(M.has_trait(TRAIT_PHARMA))
|
||||
if(HAS_TRAIT(M, TRAIT_PHARMA))
|
||||
var/obj/item/organ/liver/L = M.getorganslot("liver")
|
||||
L.swelling+= 0.05
|
||||
return..()
|
||||
@@ -275,7 +275,7 @@
|
||||
var/obj/item/organ/genital/penis/P = H.getorganslot("penis")
|
||||
if(!P)
|
||||
//Acute hepatic pharmacokinesis.
|
||||
if(M.has_trait(TRAIT_PHARMA))
|
||||
if(HAS_TRAIT(M, TRAIT_PHARMA))
|
||||
var/obj/item/organ/liver/L = M.getorganslot("liver")
|
||||
L.swelling-= 0.05
|
||||
return..()
|
||||
|
||||
@@ -401,7 +401,7 @@
|
||||
H.moveToNullspace()
|
||||
log_game("FERMICHEM: [H] ckey: [H.key] has been made into a cute catto.")
|
||||
//Just to deal with rascally ghosts
|
||||
catto.add_trait(TRAIT_NODEATH, "catto")
|
||||
ADD_TRAIT(catto, TRAIT_NODEATH, "catto")
|
||||
|
||||
/datum/reagent/fermi/secretcatchem/on_mob_life(mob/living/carbon/H)
|
||||
if(catto.health <= 50)
|
||||
|
||||
Reference in New Issue
Block a user