Modular Glow Component and a peculiar drink.

This commit is contained in:
Archie
2022-09-27 03:56:14 -03:00
parent a6ebe1ed67
commit dd84cecbee
5 changed files with 69 additions and 1 deletions
@@ -916,4 +916,11 @@
name = "Orange Creamsical"
id = /datum/reagent/consumable/orange_creamsicle
results = list(/datum/reagent/consumable/orange_creamsicle = 4)
required_reagents = list(/datum/reagent/consumable/vanilla = 1, /datum/reagent/consumable/milk = 1, /datum/reagent/consumable/ice = 1, /datum/reagent/consumable/orangejuice = 1)
required_reagents = list(/datum/reagent/consumable/vanilla = 1, /datum/reagent/consumable/milk = 1, /datum/reagent/consumable/ice = 1, /datum/reagent/consumable/orangejuice = 1)
/datum/chemical_reaction/criticality_coffee
name = "1964 Criticality Accident Leftover Coffee"
id = /datum/reagent/consumable/criticality_coffee
results = list(/datum/reagent/consumable/criticality_coffee = 4)
required_reagents = list(/datum/reagent/consumable/coffee = 1, /datum/reagent/radium = 1, /datum/reagent/iron = 1, /datum/reagent/uranium = 1)
mix_message = "All drinks inevitably come at a cost."
@@ -1002,4 +1002,28 @@
glass_name = "Orange Creamsicle"
hydration = 4
/datum/reagent/consumable/criticality_coffee
name = "1964 Criticality Accident Leftover Coffee"
description = "That thang bleedin' to the-... ya know I mean?"
color = "#4dc4be"
quality = DRINK_VERYGOOD
taste_description = "like graphite, but there's none there"
glass_icon_state = "1964"
glass_name = "1964 Criticality Accident Leftover Coffee"
glass_desc = "Vyx's special blend. In some other stations it is known as The Dyatlov Special. 'Two grains is all you need to see the thin fabric of reality.'"
hydration = 4
/datum/reagent/consumable/criticality_coffee/on_mob_life(mob/living/carbon/M)
M.dizziness = max(0,M.dizziness-5)
M.drowsyness = 0
M.AdjustSleeping(-40, FALSE)
M.Jitter(2)
//310.15 is the normal bodytemp.
M.adjust_bodytemperature(25 * TEMPERATURE_DAMAGE_COEFFICIENT, 0, BODYTEMP_NORMAL)
var/datum/component/glow_harmless/gl = M.GetComponent(/datum/component/glow_harmless)
if(!gl)
M.AddComponent(/datum/component/glow_harmless, "#37ff1438")
if(holder.has_reagent(/datum/reagent/consumable/frostoil))
holder.remove_reagent(/datum/reagent/consumable/frostoil, 5)
..()
. = 1
@@ -0,0 +1,36 @@
//Add this component to things to make them 'glowy'
//(smh my head it just gives them an outline and randomizes the shit out of its animation)
/datum/component/glow_harmless
dupe_mode = COMPONENT_DUPE_UNIQUE_PASSARGS
var/color = "#39ff1430" //Defaults to this color if a color is not given by addcomponent
/datum/component/glow_harmless/Initialize(_color)
if(!istype(parent, /atom))
CRASH("Something that wasn't an atom was given /datum/component/glow_harmless")
//Let's make er glow
//This relies on parent not being a turf or something. IF YOU CHANGE THAT, CHANGE THIS
var/atom/movable/master = parent
if(_color)
color = _color
master.add_filter("glow_harmless", 2, list("type" = "outline", "color" = color, "size" = 2))
addtimer(CALLBACK(src, .proc/glow_loop, master), rand(1,19))//Things should look uneven
START_PROCESSING(SSradiation, src)
/datum/component/glow_harmless/process()
if(!prob(50))
return
/datum/component/glow_harmless/Destroy()
STOP_PROCESSING(SSradiation, src)
var/atom/movable/master = parent
master.remove_filter("glow_harmless")
return ..()
/datum/component/glow_harmless/proc/glow_loop(atom/movable/master)
var/filter = master.get_filter("glow_harmless")
if(filter)
animate(filter, alpha = 110, time = 15, loop = -1)
animate(alpha = 40, time = 25)
addtimer(CALLBACK(src, .proc/glow_loop, master), rand(1,19))
Binary file not shown.

Before

Width:  |  Height:  |  Size: 105 KiB

After

Width:  |  Height:  |  Size: 105 KiB

+1
View File
@@ -3103,6 +3103,7 @@
#include "hyperstation\code\datums\ert_hazard_cleanup.dm"
#include "hyperstation\code\datums\actions\sysuit.dm"
#include "hyperstation\code\datums\actions\zaocorp.dm"
#include "hyperstation\code\datums\components\glow_harmless.dm"
#include "hyperstation\code\datums\components\crafting\bounties.dm"
#include "hyperstation\code\datums\components\crafting\recipes.dm"
#include "hyperstation\code\datums\elements\holder_micro.dm"