This commit is contained in:
silicons
2021-06-28 13:17:14 -07:00
parent a5a476f457
commit 0069f12c6f
9 changed files with 32 additions and 39 deletions
@@ -13,5 +13,5 @@
//Recover from stuns.
/obj/effect/proc_holder/changeling/adrenaline/sting_action(mob/living/user)
user.do_adrenaline(0, FALSE, 70, 0, TRUE, list(/datum/reagent/medicine/epinephrine = 3, /datum/reagent/drug/methamphetamine/changeling = 10, /datum/reagent/medicine/changelingadrenaline = 5), "<span class='notice'>Energy rushes through us.</span>", 0, 0.75, 0)
user.do_adrenaline(0, FALSE, 70, 0, TRUE, list(/datum/reagent/medicine/epinephrine = 3, /datum/reagent/medicine/changelinghaste = 10, /datum/reagent/medicine/changelingadrenaline = 5), "<span class='notice'>Energy rushes through us.</span>", 0, 0.75, 0)
return TRUE
@@ -433,7 +433,7 @@
var/list/danger = list()
for(var/id in air_contents.get_gases())
var/gas = air_contents.get_moles(id)
if(!GLOB.gas_data.flags[id] & GAS_FLAG_DANGEROUS)
if(!(GLOB.gas_data.flags[id] & GAS_FLAG_DANGEROUS))
continue
if(gas > (GLOB.gas_data.visibility[id] || MOLES_GAS_VISIBLE)) //if moles_visible is undefined, default to default visibility
danger[GLOB.gas_data.names[id]] = gas //ex. "plasma" = 20
@@ -966,7 +966,8 @@
upgrades.Cut()
speed = 0
vtec = 0
vtec_disabled = FALSE
ionpulse = FALSE
revert_shell()
@@ -49,3 +49,6 @@
/datum/movespeed_modifier/reagent/nooartrium
multiplicative_slowdown = 2
/datum/movespeed_modifier/reagent/skooma
multiplicative_slowdown = -1
+15 -15
View File
@@ -300,26 +300,26 @@
if(can_overdose)
if(addiction_tick == 6)
addiction_tick = 1
for(var/addiction in cached_addictions)
for(var/addiction in addiction_list)
var/datum/reagent/R = addiction
if(C && R)
if(owner && R)
R.addiction_stage++
if(1 <= R.addiction_stage && R.addiction_stage <= R.addiction_stage1_end)
need_mob_update += R.addiction_act_stage1(C)
need_mob_update += R.addiction_act_stage1(owner)
else if(R.addiction_stage1_end < R.addiction_stage && R.addiction_stage <= R.addiction_stage2_end)
need_mob_update += R.addiction_act_stage2(C)
need_mob_update += R.addiction_act_stage2(owner)
else if(R.addiction_stage2_end < R.addiction_stage && R.addiction_stage <= R.addiction_stage3_end)
need_mob_update += R.addiction_act_stage3(C)
need_mob_update += R.addiction_act_stage3(owner)
else if(R.addiction_stage3_end < R.addiction_stage && R.addiction_stage <= R.addiction_stage4_end)
need_mob_update += R.addiction_act_stage4(C)
need_mob_update += R.addiction_act_stage4(owner)
else if(R.addiction_stage4_end < R.addiction_stage)
remove_addiction(R)
else
SEND_SIGNAL(C, COMSIG_CLEAR_MOOD_EVENT, "[R.type]_overdose")
SEND_SIGNAL(owner, COMSIG_CLEAR_MOOD_EVENT, "[R.type]_overdose")
addiction_tick++
if(owner && need_mob_update) //some of the metabolized reagents had effects on the mob that requires some updates.
owner.updatehealth()
owner.update_mobility
owner.update_mobility()
owner.update_stamina()
update_total()
@@ -358,14 +358,14 @@
// for(var/addiction in reagent.addiction_types)
// owner.mind?.add_addiction_points(addiction, reagent.addiction_types[addiction] * REAGENTS_METABOLISM)
if(R.addiction_threshold)
if(R.volume > R.addiction_threshold && !is_type_in_list(R, cached_addictions))
var/datum/reagent/new_reagent = new R.type()
cached_addictions.Add(new_reagent)
if(is_type_in_list(R,cached_addictions))
for(var/addiction in cached_addictions)
if(reagent.addiction_threshold)
if(reagent.volume > reagent.addiction_threshold && !is_type_in_list(reagent, addiction_list))
var/datum/reagent/new_reagent = new reagent.type()
addiction_list.Add(new_reagent)
if(is_type_in_list(reagent, addiction_list))
for(var/addiction in addiction_list)
var/datum/reagent/A = addiction
if(istype(R, A))
if(istype(reagent, A))
A.addiction_stage = -15 // you're satisfied for a good while.
if(reagent.overdosed)
@@ -505,11 +505,11 @@
value = REAGENT_VALUE_COMMON
/datum/reagent/consumable/nuka_cola/on_mob_metabolize(mob/living/carbon/M)
M.add_movespeed_modifier(/datum/movespeed_modifier/reagent/meth)
M.add_movespeed_modifier(/datum/movespeed_modifier/reagent/methamphetamine)
return ..()
/datum/reagent/consumable/nuka_cola/on_mob_end_metabolize(mob/living/carbon/M)
M.remove_movespeed_modifier(/datum/movespeed_modifier/reagent/meth)
M.remove_movespeed_modifier(/datum/movespeed_modifier/reagent/methamphetamine)
return ..()
/datum/reagent/consumable/nuka_cola/on_mob_life(mob/living/carbon/M)
@@ -170,16 +170,15 @@
overdose_threshold = 20
metabolization_rate = 0.75 * REAGENTS_METABOLISM
ph = 5
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
addiction_threshold = 10
value = REAGENT_VALUE_UNCOMMON
/datum/reagent/drug/methamphetamine/on_mob_metabolize(mob/living/L)
..()
L.add_movespeed_modifier(/datum/movespeed_modifier/reagent/meth)
L.add_movespeed_modifier(/datum/movespeed_modifier/reagent/methamphetamine)
/datum/reagent/drug/methamphetamine/on_mob_end_metabolize(mob/living/L)
L.remove_movespeed_modifier(/datum/movespeed_modifier/reagent/meth)
L.remove_movespeed_modifier(/datum/movespeed_modifier/reagent/methamphetamine)
..()
/datum/reagent/drug/methamphetamine/on_mob_life(mob/living/carbon/M, delta_time, times_fired)
@@ -201,7 +200,7 @@
. = TRUE
/datum/reagent/drug/methamphetamine/overdose_process(mob/living/M, delta_time, times_fired)
if(!HAS_TRAIT(M, TRAIT_IMMOBILIZED) && !ismovable(M.loc))
if(CHECK_MOBILITY(M, MOBILITY_MOVE) && !ismovable(M.loc))
for(var/i in 1 to round(4 * REM * delta_time, 1))
step(M, pick(GLOB.cardinals))
if(DT_PROB(10, delta_time))
@@ -249,14 +248,6 @@
..()
. = 1
/datum/reagent/drug/methamphetamine/changeling
name = "Changeling Adrenaline"
addiction_threshold = 35
overdose_threshold = 35
jitter = FALSE
brain_damage = FALSE
value = REAGENT_VALUE_RARE
/datum/reagent/drug/bath_salts
name = "Bath Salts"
description = "Makes you impervious to stuns and grants a stamina regeneration buff, but you will be a nearly uncontrollable tramp-bearded raving lunatic."
@@ -723,8 +723,8 @@
// to_chat(M, span_notice("Your hands spaz out and you drop what you were holding!"))
// M.Jitter(10)
M.AdjustAllImmobility(-20 * REM * delta_time * normalise_creation_purity())
M.adjustStaminaLoss(-1 * REM * delta_time * normalise_creation_purity(), FALSE)
M.AdjustAllImmobility(-20 * REM * delta_time)
M.adjustStaminaLoss(-1 * REM * delta_time, FALSE)
..()
return TRUE
@@ -735,10 +735,10 @@
to_chat(M, span_userdanger("You're pretty sure you just felt your heart stop for a second there.."))
M.playsound_local(M, 'sound/effects/singlebeat.ogg', 100, 0)
if(DT_PROB(3.5 * normalise_creation_purity(), delta_time))
if(DT_PROB(3.5, delta_time))
to_chat(M, span_notice("[pick("Your head pounds.", "You feel a tight pain in your chest.", "You find it hard to stay still.", "You feel your heart practically beating out of your chest.")]"))
if(DT_PROB(18 * normalise_creation_purity(), delta_time))
if(DT_PROB(18, delta_time))
M.adjustToxLoss(1, 0)
M.losebreath++
. = TRUE
@@ -1438,7 +1438,6 @@
description = "Reduces the duration of unconciousness, knockdown and stuns. Restores stamina, but deals toxin damage when overdosed."
color = "#C1151D"
overdose_threshold = 30
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
value = REAGENT_VALUE_VERY_RARE
/datum/reagent/medicine/changelingadrenaline/on_mob_life(mob/living/carbon/metabolizer, delta_time, times_fired)
@@ -1473,7 +1472,6 @@
description = "Drastically increases movement speed, but deals toxin damage."
color = "#AE151D"
metabolization_rate = 2.5 * REAGENTS_METABOLISM
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
/datum/reagent/medicine/changelinghaste/on_mob_metabolize(mob/living/L)
..()