mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-12 03:02:54 +00:00
Merge branch 'master' of https://github.com/PolarisSS13/Polaris into theUnboxingBegins
# Conflicts: # code/modules/mob/new_player/sprite_accessories.dm # code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm # icons/mob/human_face.dmi # icons/mob/suit.dmi
This commit is contained in:
@@ -323,13 +323,13 @@
|
||||
// This does not handle transferring reagents to things.
|
||||
// For example, splashing someone with water will get them wet and extinguish them if they are on fire,
|
||||
// even if they are wearing an impermeable suit that prevents the reagents from contacting the skin.
|
||||
/datum/reagents/proc/touch(var/atom/target)
|
||||
/datum/reagents/proc/touch(var/atom/target, var/amount)
|
||||
if(ismob(target))
|
||||
touch_mob(target)
|
||||
touch_mob(target, amount)
|
||||
if(isturf(target))
|
||||
touch_turf(target)
|
||||
touch_turf(target, amount)
|
||||
if(isobj(target))
|
||||
touch_obj(target)
|
||||
touch_obj(target, amount)
|
||||
return
|
||||
|
||||
/datum/reagents/proc/touch_mob(var/mob/target)
|
||||
@@ -341,21 +341,21 @@
|
||||
|
||||
update_total()
|
||||
|
||||
/datum/reagents/proc/touch_turf(var/turf/target)
|
||||
/datum/reagents/proc/touch_turf(var/turf/target, var/amount)
|
||||
if(!target || !istype(target))
|
||||
return
|
||||
|
||||
for(var/datum/reagent/current in reagent_list)
|
||||
current.touch_turf(target, current.volume)
|
||||
current.touch_turf(target, amount)
|
||||
|
||||
update_total()
|
||||
|
||||
/datum/reagents/proc/touch_obj(var/obj/target)
|
||||
/datum/reagents/proc/touch_obj(var/obj/target, var/amount)
|
||||
if(!target || !istype(target))
|
||||
return
|
||||
|
||||
for(var/datum/reagent/current in reagent_list)
|
||||
current.touch_obj(target, current.volume)
|
||||
current.touch_obj(target, amount)
|
||||
|
||||
update_total()
|
||||
|
||||
@@ -402,7 +402,7 @@
|
||||
|
||||
var/datum/reagents/R = new /datum/reagents(amount * multiplier)
|
||||
. = trans_to_holder(R, amount, multiplier, copy)
|
||||
R.touch_turf(target)
|
||||
R.touch_turf(target, amount)
|
||||
return
|
||||
|
||||
/datum/reagents/proc/trans_to_obj(var/obj/target, var/amount = 1, var/multiplier = 1, var/copy = 0) // Objects may or may not; if they do, it's probably a beaker or something and we need to transfer properly; otherwise, just touch.
|
||||
@@ -412,7 +412,7 @@
|
||||
if(!target.reagents)
|
||||
var/datum/reagents/R = new /datum/reagents(amount * multiplier)
|
||||
. = trans_to_holder(R, amount, multiplier, copy)
|
||||
R.touch_obj(target)
|
||||
R.touch_obj(target, amount)
|
||||
return
|
||||
|
||||
return trans_to_holder(target.reagents, amount, multiplier, copy)
|
||||
|
||||
@@ -156,9 +156,9 @@
|
||||
glass_name = "welder fuel"
|
||||
glass_desc = "Unless you are an industrial tool, this is probably not safe for consumption."
|
||||
|
||||
/datum/reagent/fuel/touch_turf(var/turf/T)
|
||||
new /obj/effect/decal/cleanable/liquid_fuel(T, volume)
|
||||
remove_self(volume)
|
||||
/datum/reagent/fuel/touch_turf(var/turf/T, var/amount)
|
||||
new /obj/effect/decal/cleanable/liquid_fuel(T, amount)
|
||||
remove_self(amount)
|
||||
return
|
||||
|
||||
/datum/reagent/fuel/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
|
||||
@@ -87,6 +87,8 @@
|
||||
var/strength_mod = 1
|
||||
if(alien == IS_SKRELL)
|
||||
strength_mod *= 5
|
||||
if(alien == IS_TAJARA)
|
||||
strength_mod *= 1.75
|
||||
if(alien == IS_DIONA)
|
||||
strength_mod = 0
|
||||
|
||||
|
||||
@@ -651,16 +651,25 @@
|
||||
if(alien == IS_DIONA)
|
||||
return
|
||||
..()
|
||||
|
||||
if(alien == IS_TAJARA)
|
||||
M.adjustToxLoss(0.5 * removed)
|
||||
M.make_jittery(4) //extra sensitive to caffine
|
||||
if(adj_temp > 0)
|
||||
holder.remove_reagent("frostoil", 10 * removed)
|
||||
|
||||
/datum/reagent/nutriment/coffee/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
..()
|
||||
if(alien == IS_TAJARA)
|
||||
M.adjustToxLoss(2 * removed)
|
||||
M.make_jittery(4)
|
||||
return
|
||||
|
||||
/datum/reagent/drink/coffee/overdose(var/mob/living/carbon/M, var/alien)
|
||||
if(alien == IS_DIONA)
|
||||
return
|
||||
if(alien == IS_TAJARA)
|
||||
M.adjustToxLoss(4 * REM)
|
||||
M.apply_effect(3, STUTTER)
|
||||
M.make_jittery(5)
|
||||
|
||||
/datum/reagent/drink/coffee/icecoffee
|
||||
@@ -1148,10 +1157,23 @@
|
||||
M.sleeping = max(0, M.sleeping - 2)
|
||||
if(M.bodytemperature > 310)
|
||||
M.bodytemperature = max(310, M.bodytemperature - (5 * TEMPERATURE_DAMAGE_COEFFICIENT))
|
||||
if(alien == IS_TAJARA)
|
||||
M.adjustToxLoss(0.5 * removed)
|
||||
M.make_jittery(4) //extra sensitive to caffine
|
||||
|
||||
/datum/reagent/ethanol/coffee/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
if(alien == IS_TAJARA)
|
||||
M.adjustToxLoss(2 * removed)
|
||||
M.make_jittery(4)
|
||||
return
|
||||
..()
|
||||
|
||||
/datum/reagent/ethanol/coffee/overdose(var/mob/living/carbon/M, var/alien)
|
||||
if(alien == IS_DIONA)
|
||||
return
|
||||
if(alien == IS_TAJARA)
|
||||
M.adjustToxLoss(4 * REM)
|
||||
M.apply_effect(3, STUTTER)
|
||||
M.make_jittery(5)
|
||||
|
||||
/datum/reagent/ethanol/coffee/kahlua
|
||||
|
||||
@@ -67,11 +67,11 @@
|
||||
return
|
||||
..()
|
||||
|
||||
/datum/reagent/toxin/phoron/touch_turf(var/turf/simulated/T)
|
||||
/datum/reagent/toxin/phoron/touch_turf(var/turf/simulated/T, var/amount)
|
||||
if(!istype(T))
|
||||
return
|
||||
T.assume_gas("volatile_fuel", volume, T20C)
|
||||
remove_self(volume)
|
||||
T.assume_gas("volatile_fuel", amount, T20C)
|
||||
remove_self(amount)
|
||||
|
||||
/datum/reagent/toxin/cyanide //Fast and Lethal
|
||||
name = "Cyanide"
|
||||
@@ -97,6 +97,8 @@
|
||||
strength = 2
|
||||
|
||||
/datum/reagent/toxin/hyperzine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
if(alien == IS_TAJARA)
|
||||
removed *= 1.25
|
||||
..()
|
||||
if(prob(5))
|
||||
M.emote(pick("twitch", "blink_r", "shiver"))
|
||||
@@ -112,6 +114,8 @@
|
||||
strength = 3
|
||||
|
||||
/datum/reagent/toxin/stimm/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
if(alien == IS_TAJARA)
|
||||
removed *= 1.25
|
||||
..()
|
||||
if(prob(15))
|
||||
M.emote(pick("twitch", "blink_r", "shiver"))
|
||||
@@ -220,17 +224,14 @@
|
||||
W.visible_message("<span class='notice'>The fungi are completely dissolved by the solution!</span>")
|
||||
|
||||
/datum/reagent/toxin/plantbgone/touch_obj(var/obj/O, var/volume)
|
||||
..()
|
||||
if(istype(O, /obj/effect/plant))
|
||||
qdel(O)
|
||||
|
||||
/datum/reagent/toxin/plantbgone/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
..()
|
||||
if(alien == IS_DIONA)
|
||||
M.adjustToxLoss(50 * removed)
|
||||
|
||||
/datum/reagent/toxin/plantbgone/affect_touch(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
..()
|
||||
if(alien == IS_DIONA)
|
||||
M.adjustToxLoss(50 * removed)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user