Skip to content

Commit

Permalink
Update prop_negative.dm
Browse files Browse the repository at this point in the history
they go here, they are harmful
  • Loading branch information
Weuyn authored Jan 17, 2025
1 parent 033651d commit 4a0107c
Showing 1 changed file with 58 additions and 0 deletions.
58 changes: 58 additions & 0 deletions code/modules/reagents/chemistry_properties/prop_negative.dm
Original file line number Diff line number Diff line change
Expand Up @@ -478,6 +478,64 @@
/datum/chem_property/negative/addictive/process_critical(mob/living/M, potency = 1, delta_time)
M.disabilities |= NERVOUS

//properties with combat uses
/datum/chem_property/positive/disrupting
name = PROPERTY_DISRUPTING
code = "DSR"
description = "Disrupts certain neurological processes related to communication in animals."
rarity = PROPERTY_UNCOMMON
cost_penalty = FALSE

/datum/chem_property/positive/disrupting/process(mob/living/M, potency = 1)
to_chat(M, SPAN_NOTICE("Your mind feels oddly... quiet."))

/datum/chem_property/positive/disrupting/process_overdose(mob/living/M, potency = 1)
M.apply_internal_damage(potency, "brain")

/datum/chem_property/positive/disrupting/process_critical(mob/living/M, potency = 1)
M.apply_effect(potency, PARALYZE)

/datum/chem_property/positive/disrupting/reaction_mob(mob/M, method=TOUCH, volume, potency)
if(!isxeno(M))
return
var/mob/living/carbon/xenomorph/xeno = M
xeno.AddComponent(/datum/component/status_effect/interference, volume * potency, 90)

/datum/chem_property/positive/neutralizing
name = PROPERTY_NEUTRALIZING
code = "NEU"
description = "Neutralizes certain reactive chemicals and plasmas on contact. Unsafe to administer intravenously."
rarity = PROPERTY_UNCOMMON
category = PROPERTY_TYPE_IRRITANT
cost_penalty = FALSE

/datum/chem_property/positive/neutralizing/process(mob/living/M, potency = 1)
M.apply_damages(0, potency, potency * POTENCY_MULTIPLIER_LOW)

/datum/chem_property/positive/neutralizing/process_overdose(mob/living/M, potency = 1)
M.apply_damages(0, POTENCY_MULTIPLIER_MEDIUM * potency, potency)

/datum/chem_property/positive/neutralizing/process_critical(mob/living/M, potency = 1)
M.apply_internal_damage(potency, "liver")

/datum/chem_property/positive/neutralizing/reaction_mob(mob/M, method=TOUCH, volume, potency)
if(!isliving(M))
return
var/mob/living/L = M
L.ExtinguishMob() //Extinguishes mobs on contact
if(isxeno(L))
var/mob/living/carbon/xenomorph/xeno = M
xeno.plasma_stored = max(xeno.plasma_stored - POTENCY_MULTIPLIER_HIGH * volume * potency, 0)
to_chat(xeno, SPAN_WARNING("You feel your plasma reserves being drained!"))

/datum/chem_property/positive/neutralizing/reaction_turf(turf/T, volume, potency)
if(!istype(T))
return
for(var/obj/flamer_fire/F in T) //Extinguishes fires and acid
qdel(F)
for(var/obj/effect/xenomorph/acid/A in T)
qdel(A)

//PROPERTY_DISABLED (in generation)
/datum/chem_property/negative/hemositic
name = PROPERTY_HEMOSITIC
Expand Down

0 comments on commit 4a0107c

Please sign in to comment.