mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-25 14:08:31 +01:00
wew (#14671)
This commit is contained in:
@@ -51,3 +51,32 @@
|
||||
/datum/status_effect/freon/watcher
|
||||
duration = 8
|
||||
can_melt = FALSE
|
||||
|
||||
/datum/status_effect/hypernob_protection
|
||||
id = "hypernob_protection"
|
||||
duration = 10 SECONDS
|
||||
alert_type = /atom/movable/screen/alert/status_effect/hypernob_protection
|
||||
|
||||
/datum/status_effect/hypernob_protection/on_creation(mob/living/new_owner, duration = 10 SECONDS)
|
||||
src.duration = duration
|
||||
return ..()
|
||||
|
||||
/atom/movable/screen/alert/status_effect/hypernob_protection
|
||||
name = "Hyper-Noblium Protection"
|
||||
desc = "The Hyper-Noblium around your body is protecting it from self-combustion and fires, but you feel sluggish..."
|
||||
icon_state = "hypernob_protection"
|
||||
|
||||
/datum/status_effect/hypernob_protection/on_apply()
|
||||
if(!ishuman(owner))
|
||||
CRASH("[type] status effect added to non-human owner: [owner ? owner.type : "null owner"]")
|
||||
var/mob/living/carbon/human/human_owner = owner
|
||||
human_owner.add_movespeed_modifier(/datum/movespeed_modifier/reagent/hypernoblium) //small slowdown as a tradeoff
|
||||
ADD_TRAIT(human_owner, TRAIT_NOFIRE, type)
|
||||
return TRUE
|
||||
|
||||
/datum/status_effect/hypernob_protection/on_remove()
|
||||
if(!ishuman(owner))
|
||||
stack_trace("[type] status effect being removed from non-human owner: [owner ? owner.type : "null owner"]")
|
||||
var/mob/living/carbon/human/human_owner = owner
|
||||
human_owner.remove_movespeed_modifier(/datum/movespeed_modifier/reagent/hypernoblium)
|
||||
REMOVE_TRAIT(human_owner, TRAIT_NOFIRE, type)
|
||||
|
||||
@@ -31,6 +31,9 @@
|
||||
/datum/movespeed_modifier/reagent/halon
|
||||
multiplicative_slowdown = 1.8
|
||||
|
||||
/datum/movespeed_modifier/reagent/hypernoblium
|
||||
multiplicative_slowdown = 0.5
|
||||
|
||||
/datum/movespeed_modifier/reagent/lenturi
|
||||
multiplicative_slowdown = 1.5
|
||||
|
||||
|
||||
@@ -1506,15 +1506,10 @@
|
||||
taste_description = "searingly cold"
|
||||
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED|REAGENT_NO_RANDOM_RECIPE
|
||||
|
||||
/datum/reagent/hypernoblium/on_mob_metabolize(mob/living/L)
|
||||
. = ..()
|
||||
if(isplasmaman(L))
|
||||
ADD_TRAIT(L, TRAIT_NOFIRE, type)
|
||||
|
||||
/datum/reagent/hypernoblium/on_mob_end_metabolize(mob/living/L)
|
||||
if(isplasmaman(L))
|
||||
REMOVE_TRAIT(L, TRAIT_NOFIRE, type)
|
||||
return ..()
|
||||
/datum/reagent/hypernoblium/on_mob_life(mob/living/carbon/M, delta_time, times_fired)
|
||||
if(isplasmaman(M))
|
||||
M.set_timed_status_effect(10 SECONDS * REM * delta_time, /datum/status_effect/hypernob_protection)
|
||||
..()
|
||||
|
||||
/datum/reagent/healium
|
||||
name = "Healium"
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 117 KiB After Width: | Height: | Size: 117 KiB |
Reference in New Issue
Block a user