mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-18 13:43:27 +00:00
* First Genetics Content in 5 Years (Adds new positive mutations!) * Update reach.dm * delete * Update adaptation.dm * Update reach.dm --------- Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com> Co-authored-by: SpaceLoveSs13 <68121607+SpaceLoveSs13@users.noreply.github.com>
50 lines
2.0 KiB
Plaintext
50 lines
2.0 KiB
Plaintext
/datum/mutation/human/adrenaline_rush
|
|
name = "Adrenaline Rush"
|
|
desc = "Allows the host to trigger their body's adrenaline response at will."
|
|
quality = POSITIVE
|
|
text_gain_indication = span_notice("You feel pumped up!")
|
|
instability = POSITIVE_INSTABILITY_MODERATE
|
|
power_path = /datum/action/cooldown/adrenaline
|
|
|
|
energy_coeff = 1
|
|
synchronizer_coeff = 1
|
|
power_coeff = 1
|
|
|
|
/datum/mutation/human/adrenaline_rush/modify()
|
|
. = ..()
|
|
var/datum/action/cooldown/adrenaline/to_modify = .
|
|
if(!istype(to_modify)) // null or invalid
|
|
return
|
|
|
|
to_modify.adrenaline_amount = 10 * GET_MUTATION_POWER(src)
|
|
to_modify.comedown_amount = 7 / GET_MUTATION_SYNCHRONIZER(src)
|
|
|
|
/datum/action/cooldown/adrenaline
|
|
name = "Adrenaline!"
|
|
desc = "Energize yourself, pushing your body to its limits!"
|
|
button_icon = 'icons/mob/actions/actions_genetic.dmi'
|
|
button_icon_state = "adrenaline"
|
|
|
|
cooldown_time = 2 MINUTES
|
|
check_flags = AB_CHECK_CONSCIOUS
|
|
/// How many units of each positive reagent injected during adrenaline.
|
|
var/adrenaline_amount = 10
|
|
/// How many units of each negative reagent injected after comedown.
|
|
var/comedown_amount = 7
|
|
|
|
|
|
/datum/action/cooldown/adrenaline/Activate(mob/living/carbon/cast_on)
|
|
. = ..()
|
|
to_chat(cast_on, span_userdanger("You feel pumped up! It's time to GO!"))
|
|
cast_on.reagents.add_reagent(/datum/reagent/drug/pumpup, adrenaline_amount)
|
|
cast_on.reagents.add_reagent(/datum/reagent/medicine/synaptizine, adrenaline_amount)
|
|
cast_on.reagents.add_reagent(/datum/reagent/determination, adrenaline_amount)
|
|
addtimer(CALLBACK(src, PROC_REF(get_tired), cast_on), 25 SECONDS, TIMER_UNIQUE|TIMER_OVERRIDE)
|
|
return TRUE
|
|
|
|
/datum/action/cooldown/adrenaline/proc/get_tired(mob/living/carbon/cast_on)
|
|
to_chat(cast_on, span_danger("Your adrenaline rush makes way for a bout of nausea and a deep feeling of exhaustion in your muscles."))
|
|
cast_on.reagents.add_reagent(/datum/reagent/peaceborg/tire, comedown_amount)
|
|
cast_on.reagents.add_reagent(/datum/reagent/peaceborg/confuse, comedown_amount)
|
|
cast_on.set_dizzy_if_lower(10 SECONDS)
|