From e989257deaf9dfb3477cfaaa92faead94df910d1 Mon Sep 17 00:00:00 2001 From: DragonTrance Date: Mon, 6 Jun 2022 07:03:35 -0400 Subject: [PATCH 01/12] updates weakref & documentation on it --- code/__DEFINES/vv.dm | 3 +- code/datums/weakrefs.dm | 72 +++++++++++++++++++++++++++++++++++++++-- 2 files changed, 71 insertions(+), 4 deletions(-) diff --git a/code/__DEFINES/vv.dm b/code/__DEFINES/vv.dm index f1ac56206..2b3aae449 100644 --- a/code/__DEFINES/vv.dm +++ b/code/__DEFINES/vv.dm @@ -120,7 +120,6 @@ #define VV_HK_PURRBATION "purrbation" // misc +#define VV_HK_WEAKREF_RESOLVE "weakref_resolve" #define VV_HK_SPACEVINE_PURGE "spacevine_purge" - -// paintings #define VV_HK_REMOVE_PAINTING "remove_painting" diff --git a/code/datums/weakrefs.dm b/code/datums/weakrefs.dm index fbe9036ea..e21bc9f4d 100644 --- a/code/datums/weakrefs.dm +++ b/code/datums/weakrefs.dm @@ -1,3 +1,7 @@ +/* + * Creates a weakref to the given input. + * See /datum/weakref's documentation for more information. + */ /proc/WEAKREF(datum/input) if(istype(input) && !QDELETED(input)) if(istype(input, /datum/weakref)) @@ -10,16 +14,80 @@ /datum/proc/create_weakref() //Forced creation for admin proccalls return WEAKREF(src) +/** + * A weakref holds a non-owning reference to a datum. + * The datum can be referenced again using `resolve()`. + * + * To figure out why this is important, you must understand how deletion in + * BYOND works. + * + * Imagine a datum as a TV in a living room. When one person enters to watch + * TV, they turn it on. Others can come into the room and watch the TV. + * When the last person leaves the room, they turn off the TV because it's + * no longer being used. + * + * A datum being deleted tells everyone who's watching the TV to stop. + * If everyone leaves properly (AKA cleaning up their references), then the + * last person will turn off the TV, and everything is well. + * However, if someone is resistant (holds a hard reference after deletion), + * then someone has to walk in, drag them away, and turn off the TV forecefully. + * This process is very slow, and it's known as hard deletion. + * + * This is where weak references come in. Weak references don't count as someone + * watching the TV. Thus, when what it's referencing is destroyed, it will + * hopefully clean up properly, and limit hard deletions. + * + * A common use case for weak references is holding onto what created itself. + * For example, if a machine wanted to know what its last user was, it might + * create a `var/mob/living/last_user`. However, this is a strong reference to + * the mob, and thus will force a hard deletion when that mob is deleted. + * It is often better in this case to instead create a weakref to the user, + * meaning this type definition becomes `var/datum/weakref/last_user`. + * + * A good rule of thumb is that you should hold strong references to things + * that you *own*. For example, a dog holding a chew toy would be the owner + * of that chew toy, and thus a `var/obj/item/chew_toy` reference is fine + * (as long as it is cleaned up properly). + * However, a chew toy does not own its dog, so a `var/mob/living/dog/owner` + * might be inferior to a weakref. + * This is also a good rule of thumb to avoid circular references, such as the + * chew toy example. A circular reference that doesn't clean itself up properly + * will always hard delete. + */ /datum/weakref var/reference /datum/weakref/New(datum/thing) reference = REF(thing) -/datum/weakref/Destroy() - return QDEL_HINT_LETMELIVE //Let BYOND autoGC thiswhen nothing is using it anymore. +/datum/weakref/Destroy(force) + var/datum/target = resolve() + qdel(target) + if(!force) + return QDEL_HINT_LETMELIVE //Let BYOND autoGC thiswhen nothing is using it anymore. + target?.weak_reference = null + return ..() + +/** + * Retrieves the datum that this weakref is referencing. + * + * This will return `null` if the datum was deleted. This MUST be respected. + */ /datum/weakref/proc/resolve() var/datum/D = locate(reference) return (!QDELETED(D) && D.weak_reference == src) ? D : null + +/datum/weakref/vv_get_dropdown() + . = ..() + VV_DROPDOWN_OPTION(VV_HK_WEAKREF_RESOLVE, "Go to reference") + +/datum/weakref/vv_do_topic(list/href_list) + . = ..() + if(href_list[VV_HK_WEAKREF_RESOLVE]) + if(!check_rights(NONE)) + return + var/datum/R = resolve() + if(R) + usr.client.debug_variables(R) From f3fe268d0c1f47ba16323c3eece7067774a23eb0 Mon Sep 17 00:00:00 2001 From: DragonTrance Date: Mon, 6 Jun 2022 11:58:34 -0400 Subject: [PATCH 02/12] Ports color standardization from tg/52574 --- code/__DEFINES/colors.dm | 210 +++++++++++++----- code/__DEFINES/cult.dm | 2 +- code/__DEFINES/dcs/signals.dm | 13 +- code/__DEFINES/lighting.dm | 33 +-- code/__HELPERS/_cit_helpers.dm | 4 +- code/__HELPERS/icons.dm | 14 +- code/__HELPERS/type2type.dm | 24 +- code/_onclick/hud/fullscreen.dm | 6 +- code/_onclick/hud/screen_objects.dm | 4 +- code/controllers/subsystem/air.dm | 4 +- code/datums/status_effects/buffs.dm | 2 +- code/game/atoms.dm | 13 ++ .../game/gamemodes/clown_ops/clown_weapons.dm | 2 +- code/game/machinery/computer/aifixer.dm | 4 +- code/game/machinery/computer/arcade.dm | 3 +- code/game/machinery/computer/atmos_alert.dm | 3 +- code/game/machinery/computer/atmos_control.dm | 3 +- code/game/machinery/computer/camera.dm | 3 +- .../machinery/computer/camera_advanced.dm | 3 +- code/game/machinery/computer/card.dm | 9 +- .../game/machinery/computer/communications.dm | 3 +- code/game/machinery/computer/medical.dm | 3 +- .../computer/prisoner/gulag_teleporter.dm | 3 +- .../machinery/computer/prisoner/management.dm | 5 +- code/game/machinery/computer/security.dm | 3 +- .../machinery/computer/telecrystalconsoles.dm | 2 +- code/game/machinery/dance_machine.dm | 94 ++++---- code/game/machinery/doors/airlock.dm | 4 +- code/game/machinery/doors/airlock_types.dm | 2 +- code/game/machinery/exp_cloner.dm | 3 +- code/game/machinery/firealarm.dm | 3 +- code/game/machinery/flasher.dm | 2 +- code/game/machinery/shieldgen.dm | 2 +- code/game/machinery/slotmachine.dm | 3 +- .../machinery/telecomms/computers/message.dm | 3 +- code/game/mecha/mech_bay.dm | 2 +- code/game/objects/effects/countdown.dm | 2 +- code/game/objects/effects/mines.dm | 6 +- code/game/objects/effects/misc.dm | 2 +- code/game/objects/effects/spawners/bundle.dm | 2 +- code/game/objects/items/RCD.dm | 6 +- code/game/objects/items/cards_ids.dm | 4 +- code/game/objects/items/cigs_lighters.dm | 10 +- code/game/objects/items/crayons.dm | 4 +- code/game/objects/items/devices/PDA/PDA.dm | 4 +- code/game/objects/items/devices/flashlight.dm | 23 +- .../items/devices/reverse_bear_trap.dm | 2 +- code/game/objects/items/flamethrower.dm | 2 +- code/game/objects/items/grenades/flashbang.dm | 2 +- code/game/objects/items/handcuffs.dm | 8 +- code/game/objects/items/hot_potato.dm | 2 +- code/game/objects/items/melee/energy.dm | 12 +- code/game/objects/items/religion.dm | 4 +- .../objects/items/stacks/tiles/tile_types.dm | 6 +- code/game/objects/items/tools/weldingtool.dm | 13 +- code/game/objects/items/twohanded.dm | 8 +- code/game/objects/structures/artstuff.dm | 6 +- code/game/objects/structures/flora.dm | 2 +- .../game/turfs/simulated/floor/fancy_floor.dm | 12 +- .../game/turfs/simulated/floor/light_floor.dm | 2 +- code/game/turfs/simulated/floor/misc_floor.dm | 4 +- code/modules/VR/vr_sleeper.dm | 2 +- code/modules/admin/secrets.dm | 2 +- .../antagonists/blob/blob/blobs/blob_mobs.dm | 6 +- .../bloodsucker/datum_bloodsucker.dm | 2 +- code/modules/antagonists/cult/blood_magic.dm | 4 +- code/modules/antagonists/cult/cult_items.dm | 10 +- .../antagonists/cult/cult_structures.dm | 10 +- code/modules/antagonists/cult/runes.dm | 8 +- .../nukeop/equipment/nuclearbomb.dm | 2 +- code/modules/assembly/flash.dm | 1 - .../atmospherics/machinery/airalarm.dm | 6 +- .../atmospherics/machinery/other/miner.dm | 2 +- code/modules/cargo/bounty_console.dm | 2 +- code/modules/cargo/console.dm | 3 +- code/modules/client/preferences.dm | 48 ++-- code/modules/client/preferences_savefile.dm | 2 +- code/modules/clothing/head/hardhat.dm | 16 +- code/modules/clothing/head/misc_special.dm | 2 +- code/modules/clothing/spacesuits/hardsuit.dm | 5 +- code/modules/clothing/spacesuits/plasmamen.dm | 2 +- code/modules/events/aurora_aquilae.dm | 2 +- code/modules/events/aurora_caelus.dm | 2 +- code/modules/events/pirates.dm | 2 +- code/modules/events/portal_storm.dm | 2 +- code/modules/events/spacevine.dm | 8 +- code/modules/events/wizard/greentext.dm | 8 +- code/modules/events/wizard/magicarp.dm | 2 +- .../food_and_drinks/food/customizables.dm | 4 +- code/modules/food_and_drinks/food/snacks.dm | 2 +- .../food_and_drinks/food/snacks/meat.dm | 14 +- .../food_and_drinks/food/snacks_bread.dm | 2 +- .../food_and_drinks/food/snacks_cake.dm | 16 +- .../food_and_drinks/food/snacks_meat.dm | 10 +- .../food_and_drinks/food/snacks_other.dm | 6 +- .../food_and_drinks/food/snacks_pastry.dm | 2 +- .../food_and_drinks/food/snacks_sushi.dm | 2 +- .../recipes/tablecraft/recipes_pastry.dm | 2 +- code/modules/holiday/halloween/jacqueen.dm | 23 +- code/modules/hydroponics/grown/ambrosia.dm | 2 +- code/modules/hydroponics/grown/banana.dm | 4 +- code/modules/hydroponics/grown/berries.dm | 6 +- code/modules/hydroponics/grown/cannabis.dm | 2 +- code/modules/hydroponics/grown/chili.dm | 2 +- code/modules/hydroponics/grown/citrus.dm | 2 +- code/modules/hydroponics/grown/corn.dm | 2 +- code/modules/hydroponics/grown/eggplant.dm | 2 +- .../modules/hydroponics/grown/grass_carpet.dm | 2 +- code/modules/hydroponics/grown/melon.dm | 2 +- code/modules/hydroponics/grown/misc.dm | 3 +- code/modules/hydroponics/grown/mushrooms.dm | 2 +- code/modules/hydroponics/grown/tea_coffee.dm | 2 +- code/modules/hydroponics/grown/tobacco.dm | 2 +- code/modules/hydroponics/grown/tomato.dm | 6 +- code/modules/hydroponics/plant_genes.dm | 2 +- .../integrated_electronics/subtypes/output.dm | 4 +- code/modules/library/soapstone.dm | 4 +- code/modules/lighting/lighting_atom.dm | 49 ++-- .../network_builder/power_cables.dm | 8 +- code/modules/mapping/minimaps.dm | 6 +- code/modules/mining/aux_base_camera.dm | 14 +- .../mining/equipment/kinetic_crusher.dm | 2 +- code/modules/mining/equipment/survival_pod.dm | 8 +- .../mining/lavaland/necropolis_chests.dm | 4 +- code/modules/mining/minebot.dm | 2 +- code/modules/mob/living/carbon/human/human.dm | 4 +- .../carbon/human/species_types/jellypeople.dm | 2 +- .../modules/mob/living/silicon/robot/robot.dm | 2 +- .../mob/living/simple_animal/bot/ed209bot.dm | 2 +- .../mob/living/simple_animal/bot/secbot.dm | 2 +- .../simple_animal/guardian/guardiannaming.dm | 2 +- .../hostile/megafauna/blood_drunk_miner.dm | 2 +- .../hostile/megafauna/bubblegum.dm | 2 +- .../simple_animal/hostile/megafauna/drake.dm | 2 +- .../living/simple_animal/hostile/syndicate.dm | 4 +- .../computers/item/computer.dm | 13 +- .../computers/item/computer_ui.dm | 2 +- code/modules/photography/camera/camera.dm | 2 +- code/modules/pool/pool_noodles.dm | 2 +- code/modules/power/apc.dm | 11 +- code/modules/power/cable.dm | 24 +- code/modules/power/lighting.dm | 2 +- code/modules/projectiles/pins.dm | 2 +- code/modules/projectiles/projectile/beams.dm | 6 +- .../projectiles/projectile/bullets/shotgun.dm | 2 +- code/modules/projectiles/projectile/energy.dm | 2 +- .../projectile/energy/nuclear_particle.dm | 12 +- .../projectiles/projectile/energy/stun.dm | 2 +- .../projectiles/projectile/special/gravity.dm | 2 +- .../projectile/special/hallucination.dm | 2 +- .../projectile/special/wormhole.dm | 2 +- code/modules/reagents/chemistry/reagents.dm | 2 +- .../chemistry/reagents/alcohol_reagents.dm | 8 +- .../chemistry/reagents/blob_reagents.dm | 2 +- .../chemistry/reagents/drink_reagents.dm | 4 +- .../chemistry/reagents/food_reagents.dm | 2 +- .../chemistry/reagents/medicine_reagents.dm | 8 +- .../chemistry/reagents/other_reagents.dm | 8 +- .../reagents/pyrotechnic_reagents.dm | 4 +- .../chemistry/reagents/toxin_reagents.dm | 4 +- .../reagents/reagent_containers/rags.dm | 2 +- .../xenobiology/crossbreeding/__corecross.dm | 22 +- .../crossbreeding/_status_effects.dm | 2 +- .../xenobiology/crossbreeding/charged.dm | 4 +- .../xenobiology/crossbreeding/consuming.dm | 10 +- .../xenobiology/crossbreeding/prismatic.dm | 12 +- .../xenobiology/crossbreeding/regenerative.dm | 2 +- .../research/xenobiology/xenobiology.dm | 4 +- .../ruins/objects_and_mobs/necropolis_gate.dm | 2 +- .../ruins/spaceruin_code/caravanambush.dm | 16 +- code/modules/shuttle/special.dm | 4 +- code/modules/shuttle/syndicate.dm | 2 +- code/modules/spells/spell_types/lichdom.dm | 6 +- .../surgery/organs/augments_internal.dm | 2 +- code/modules/surgery/tools.dm | 4 +- .../code/modules/hydroponics/grown/kalyna.dm | 2 +- .../code/modules/power/reactor/rbmk.dm | 10 +- hyperstation/code/obj/economy.dm | 2 +- hyperstation/code/obj/rewards.dm | 2 +- .../code/game/gamemodes/gangs/dominator.dm | 3 +- .../code/game/gamemodes/gangs/gang_datums.dm | 26 +-- .../objects/items/melee/eutactic_blades.dm | 8 +- .../citadel_ghostrole_spawners.dm | 2 +- .../projectiles/ammunition/caseless.dm | 6 +- .../projectiles/boxes_magazines/ammo_boxes.dm | 6 +- .../projectiles/guns/ballistic/magweapon.dm | 6 +- .../projectiles/projectiles/reusable.dm | 4 +- .../modules/vore/resizing/sizechemicals.dm | 6 +- 188 files changed, 713 insertions(+), 650 deletions(-) diff --git a/code/__DEFINES/colors.dm b/code/__DEFINES/colors.dm index 90c73dacf..2574bdbd4 100644 --- a/code/__DEFINES/colors.dm +++ b/code/__DEFINES/colors.dm @@ -1,67 +1,155 @@ -// This is eventually for wjohn to add more color standardization stuff like I keep asking him >:( +#define COLOR_INPUT_DISABLED "#F0F0F0" +#define COLOR_INPUT_ENABLED "#D3B5B5" -#define COLOR_INPUT_DISABLED "#F0F0F0" -#define COLOR_INPUT_ENABLED "#D3B5B5" +#define COLOR_DARKMODE_INFO_BUTTONS_BG "#40628A" +#define COLOR_DARKMODE_ISSUE_BUTTON_BG "#A92C2C" +#define COLOR_DARKMODE_BACKGROUND "#272727" +#define COLOR_DARKMODE_DARKBACKGROUND "#242424" +#define COLOR_DARKMODE_TEXT "#E0E0E0" -#define COLOR_DARKMODE_INFO_BUTTONS_BG "#40628A" -#define COLOR_DARKMODE_ISSUE_BUTTON_BG "#A92C2C" -#define COLOR_DARKMODE_BACKGROUND "#272727" -#define COLOR_DARKMODE_DARKBACKGROUND "#242424" -#define COLOR_DARKMODE_TEXT "#E0E0E0" +#define COLOR_WHITEMODE_INFO_BUTTONS_BG "#90B3DD" +#define COLOR_WHITEMODE_ISSUE_BUTTON_BG "#EF7F7F" +#define COLOR_WHITEMODE_BACKGROUND "#F0F0F0" +#define COLOR_WHITEMODE_DARKBACKGROUND "#E6E6E6" +#define COLOR_WHITEMODE_TEXT "#000000" -#define COLOR_WHITEMODE_INFO_BUTTONS_BG "#90B3DD" -#define COLOR_WHITEMODE_ISSUE_BUTTON_BG "##EF7F7F" -#define COLOR_WHITEMODE_BACKGROUND "#F0F0F0" -#define COLOR_WHITEMODE_DARKBACKGROUND "#E6E6E6" -#define COLOR_WHITEMODE_TEXT "#000000" -#define COLOR_FLOORTILE_GRAY "#8D8B8B" -#define COLOR_ALMOST_BLACK "#333333" -#define COLOR_SILVER "#C0C0C0" -#define COLOR_BLACK "#000000" -#define COLOR_RED "#FF0000" -#define COLOR_RED_LIGHT "#FF3333" -#define COLOR_MAROON "#800000" -#define COLOR_YELLOW "#FFFF00" -#define COLOR_OLIVE "#808000" -#define COLOR_LIME "#32CD32" -#define COLOR_GREEN "#008000" -#define COLOR_CYAN "#00FFFF" -#define COLOR_TEAL "#008080" -#define COLOR_BLUE "#0000FF" -#define COLOR_BLUE_LIGHT "#33CCFF" -#define COLOR_NAVY "#000080" -#define COLOR_PINK "#FFC0CB" -#define COLOR_MAGENTA "#FF00FF" -#define COLOR_PURPLE "#800080" -#define COLOR_ORANGE "#FF9900" -#define COLOR_BEIGE "#CEB689" -#define COLOR_BLUE_GRAY "#75A2BB" -#define COLOR_BROWN "#BA9F6D" -#define COLOR_DARK_BROWN "#997C4F" -#define COLOR_DARK_ORANGE "#C3630C" -#define COLOR_GREEN_GRAY "#99BB76" -#define COLOR_RED_GRAY "#B4696A" -#define COLOR_PALE_BLUE_GRAY "#98C5DF" -#define COLOR_PALE_GREEN_GRAY "#B7D993" -#define COLOR_PALE_RED_GRAY "#D59998" -#define COLOR_PALE_PURPLE_GRAY "#CBB1CA" -#define COLOR_PURPLE_GRAY "#AE8CA8" +#define COLOR_WHITE "#FFFFFF" +#define COLOR_VERY_VERY_LIGHT_GRAY "#F0F0F0" +#define COLOR_VERY_LIGHT_GRAY "#EEEEEE" +#define COLOR_SILVER "#C0C0C0" +#define COLOR_GRAY "#808080" +#define COLOR_FLOORTILE_GRAY "#8D8B8B" +#define COLOR_ALMOST_BLACK "#333333" +#define COLOR_NEARLY_BLACK "#202020" +#define COLOR_BLACK "#000000" + +#define COLOR_RED "#FF0000" +#define COLOR_MOSTLY_PURE_RED "#FF3300" +#define COLOR_DARK_RED "#A50824" +#define COLOR_RED_LIGHT "#FF3333" +#define COLOR_MAROON "#800000" +#define COLOR_VIVID_RED "#FF3232" +#define COLOR_LIGHT_GRAYISH_RED "#E4C7C5" +#define COLOR_SOFT_RED "#FA8282" + +#define COLOR_YELLOW "#FFFF00" +#define COLOR_VIVID_YELLOW "#FBFF23" +#define COLOR_VERY_SOFT_YELLOW "#FAE48E" + +#define COLOR_OLIVE "#808000" +#define COLOR_GREEN "#00FF00" +#define COLOR_LIME "#32CD32" +#define COLOR_VERY_PALE_LIME_GREEN "#DDFFD3" +#define COLOR_VERY_DARK_LIME_GREEN "#003300" +#define COLOR_DARK_GREEN "#008000" +#define COLOR_DARK_MODERATE_LIME_GREEN "#44964A" + +#define COLOR_CYAN "#00FFFF" +#define COLOR_DARK_CYAN "#00A2FF" +#define COLOR_TEAL "#008080" +#define COLOR_BLUE "#0000FF" +#define COLOR_BRIGHT_BLUE "#2CB2E8" +#define COLOR_MODERATE_BLUE "#555CC2" +#define COLOR_BLUE_LIGHT "#33CCFF" +#define COLOR_NAVY "#000080" +#define COLOR_BLUE_GRAY "#75A2BB" + +#define COLOR_PINK "#FFC0CB" +#define COLOR_MOSTLY_PURE_PINK "#E4005B" +#define COLOR_MAGENTA "#FF00FF" +#define COLOR_STRONG_MAGENTA "#B800B8" +#define COLOR_PURPLE "#800080" +#define COLOR_VIOLET "#B900F7" +#define COLOR_STRONG_VIOLET "#6927C5" + +#define COLOR_ORANGE "#FF9900" +#define COLOR_TAN_ORANGE "#FF7B00" +#define COLOR_BRIGHT_ORANGE "#E2853D" +#define COLOR_LIGHT_ORANGE "#FFC44D" +#define COLOR_CREAMY_ORANGE "#FFCC66" +#define COLOR_PALE_ORANGE "#FFBE9D" +#define COLOR_BEIGE "#CEB689" +#define COLOR_DARK_ORANGE "#C3630C" +#define COLOR_DARK_MODERATE_ORANGE "#8B633B" + +#define COLOR_BROWN "#BA9F6D" +#define COLOR_DARK_BROWN "#997C4F" + +#define COLOR_GREEN_GRAY "#99BB76" +#define COLOR_RED_GRAY "#B4696A" +#define COLOR_PALE_BLUE_GRAY "#98C5DF" +#define COLOR_PALE_GREEN_GRAY "#B7D993" +#define COLOR_PALE_RED_GRAY "#D59998" +#define COLOR_PALE_PURPLE_GRAY "#CBB1CA" +#define COLOR_PURPLE_GRAY "#AE8CA8" //Color defines used by the assembly detailer. -#define COLOR_ASSEMBLY_BLACK "#545454" -#define COLOR_ASSEMBLY_BGRAY "#9497AB" -#define COLOR_ASSEMBLY_WHITE "#E2E2E2" -#define COLOR_ASSEMBLY_RED "#CC4242" -#define COLOR_ASSEMBLY_ORANGE "#E39751" -#define COLOR_ASSEMBLY_BEIGE "#AF9366" -#define COLOR_ASSEMBLY_BROWN "#97670E" -#define COLOR_ASSEMBLY_GOLD "#AA9100" -#define COLOR_ASSEMBLY_YELLOW "#CECA2B" -#define COLOR_ASSEMBLY_GURKHA "#999875" -#define COLOR_ASSEMBLY_LGREEN "#789876" -#define COLOR_ASSEMBLY_GREEN "#44843C" -#define COLOR_ASSEMBLY_LBLUE "#5D99BE" -#define COLOR_ASSEMBLY_BLUE "#38559E" -#define COLOR_ASSEMBLY_PURPLE "#6F6192" -#define COLOR_ASSEMBLY_PINK "#ff4adc" +#define COLOR_ASSEMBLY_BLACK "#545454" +#define COLOR_ASSEMBLY_BGRAY "#9497AB" +#define COLOR_ASSEMBLY_WHITE "#E2E2E2" +#define COLOR_ASSEMBLY_RED "#CC4242" +#define COLOR_ASSEMBLY_ORANGE "#E39751" +#define COLOR_ASSEMBLY_BEIGE "#AF9366" +#define COLOR_ASSEMBLY_BROWN "#97670E" +#define COLOR_ASSEMBLY_GOLD "#AA9100" +#define COLOR_ASSEMBLY_YELLOW "#CECA2B" +#define COLOR_ASSEMBLY_GURKHA "#999875" +#define COLOR_ASSEMBLY_LGREEN "#789876" +#define COLOR_ASSEMBLY_GREEN "#44843C" +#define COLOR_ASSEMBLY_LBLUE "#5D99BE" +#define COLOR_ASSEMBLY_BLUE "#38559E" +#define COLOR_ASSEMBLY_PURPLE "#6F6192" +#define COLOR_ASSEMBLY_PINK "#FF4ADC" + +/** + * Some defines to generalise colours used in lighting. + * + * Important note: colors can end up significantly different from the basic html picture, especially when saturated + */ +/// Bright but quickly dissipating neon green. rgb(100, 200, 100) +#define LIGHT_COLOR_GREEN "#64C864" +/// Electric green. rgb(0, 255, 0) +#define LIGHT_COLOR_ELECTRIC_GREEN "#00FF00" +/// Cold, diluted blue. rgb(100, 150, 250) +#define LIGHT_COLOR_BLUE "#6496FA" +/// Light blueish green. rgb(125, 225, 175) +#define LIGHT_COLOR_BLUEGREEN "#7DE1AF" +/// Diluted cyan. rgb(125, 225, 225) +#define LIGHT_COLOR_CYAN "#7DE1E1" +/// Electric cyan rgb(0, 255, 255) +#define LIGHT_COLOR_ELECTRIC_CYAN "#00FFFF" +/// More-saturated cyan. rgb(16, 21, 22) +#define LIGHT_COLOR_LIGHT_CYAN "#40CEFF" +/// Saturated blue. rgb(51, 117, 248) +#define LIGHT_COLOR_DARK_BLUE "#6496FA" +/// Diluted, mid-warmth pink. rgb(225, 125, 225) +#define LIGHT_COLOR_PINK "#E17DE1" +/// Dimmed yellow, leaning kaki. rgb(225, 225, 125) +#define LIGHT_COLOR_YELLOW "#E1E17D" +/// Clear brown, mostly dim. rgb(150, 100, 50) +#define LIGHT_COLOR_BROWN "#966432" +/// Mostly pure orange. rgb(250, 150, 50) +#define LIGHT_COLOR_ORANGE "#FA9632" +/// Light Purple. rgb(149, 44, 244) +#define LIGHT_COLOR_PURPLE "#952CF4" +/// Less-saturated light purple. rgb(155, 81, 255) +#define LIGHT_COLOR_LAVENDER "#9B51FF" +///slightly desaturated bright yellow. +#define LIGHT_COLOR_HOLY_MAGIC "#FFF743" +/// deep crimson +#define LIGHT_COLOR_BLOOD_MAGIC "#D00000" + +/* These ones aren't a direct colour like the ones above, because nothing would fit */ +/// Warm orange color, leaning strongly towards yellow. rgb(250, 160, 25) +#define LIGHT_COLOR_FIRE "#FAA019" +/// Very warm yellow, leaning slightly towards orange. rgb(196, 138, 24) +#define LIGHT_COLOR_LAVA "#C48A18" +/// Bright, non-saturated red. Leaning slightly towards pink for visibility. rgb(250, 100, 75) +#define LIGHT_COLOR_FLARE "#FA644B" +/// Weird color, between yellow and green, very slimy. rgb(175, 200, 75) +#define LIGHT_COLOR_SLIME_LAMP "#AFC84B" +/// Extremely diluted yellow, close to skin color (for some reason). rgb(250, 225, 175) +#define LIGHT_COLOR_TUNGSTEN "#FAE1AF" +/// Barely visible cyan-ish hue, as the doctor prescribed. rgb(240, 250, 250) +#define LIGHT_COLOR_HALOGEN "#F0FAFA" diff --git a/code/__DEFINES/cult.dm b/code/__DEFINES/cult.dm index 198291f0a..c44964428 100644 --- a/code/__DEFINES/cult.dm +++ b/code/__DEFINES/cult.dm @@ -1,5 +1,5 @@ //rune colors, for easy reference -#define RUNE_COLOR_TALISMAN "#0000FF" +#define RUNE_COLOR_TALISMAN COLOR_BLUE #define RUNE_COLOR_TELEPORT "#551A8B" #define RUNE_COLOR_OFFER "#FFFFFF" #define RUNE_COLOR_DARKRED "#7D1717" diff --git a/code/__DEFINES/dcs/signals.dm b/code/__DEFINES/dcs/signals.dm index ef8fd6748..2db16b45d 100644 --- a/code/__DEFINES/dcs/signals.dm +++ b/code/__DEFINES/dcs/signals.dm @@ -112,8 +112,6 @@ ///from obj/machinery/bsa/full/proc/fire(): () #define COMSIG_ATOM_BSA_BEAM "atom_bsa_beam_pass" #define COMSIG_ATOM_BLOCKS_BSA_BEAM (1<<0) -///from base of atom/set_light(): (l_range, l_power, l_color) -#define COMSIG_ATOM_SET_LIGHT "atom_set_light" ///from base of atom/setDir(): (old_dir, new_dir) #define COMSIG_ATOM_DIR_CHANGE "atom_dir_change" ///from base of atom/handle_atom_del(): (atom/deleted) @@ -161,6 +159,17 @@ #define COMPONENT_NO_ATTACK_HAND 1 //works on all 3. ///////////////// +///from base of atom/set_light(): (l_range, l_power, l_color) +#define COMSIG_ATOM_SET_LIGHT "atom_set_light" +///Called right before the atom changes the value of light_range to a different one, from base atom/set_light_range(): (new_range) +#define COMSIG_ATOM_SET_LIGHT_RANGE "atom_set_light_range" +///Called right before the atom changes the value of light_power to a different one, from base atom/set_light_power(): (new_power) +#define COMSIG_ATOM_SET_LIGHT_POWER "atom_set_light_power" +///Called right before the atom changes the value of light_color to a different one, from base atom/set_light_color(): (new_color) +#define COMSIG_ATOM_SET_LIGHT_COLOR "atom_set_light_color" +///Called right before the atom changes the value of light_on to a different one, from base atom/set_light_on(): (new_value) +#define COMSIG_ATOM_SET_LIGHT_ON "atom_set_light_on" + //This signal return value bitflags can be found in __DEFINES/misc.dm ///called for each movable in a turf contents on /turf/zImpact(): (atom/movable/A, levels) diff --git a/code/__DEFINES/lighting.dm b/code/__DEFINES/lighting.dm index 3d67a96a2..ecd269267 100644 --- a/code/__DEFINES/lighting.dm +++ b/code/__DEFINES/lighting.dm @@ -25,37 +25,6 @@ 0, 0, 0, 1 \ ) \ - -//Some defines to generalise colours used in lighting. -//Important note on colors. Colors can end up significantly different from the basic html picture, especially when saturated -#define LIGHT_COLOR_WHITE "#FFFFFF" -#define LIGHT_COLOR_RED "#FA8282" //Warm but extremely diluted red. rgb(250, 130, 130) -#define LIGHT_COLOR_GREEN "#64C864" //Bright but quickly dissipating neon green. rgb(100, 200, 100) -#define LIGHT_COLOR_BLUE "#6496FA" //Cold, diluted blue. rgb(100, 150, 250) - -#define LIGHT_COLOR_BLUEGREEN "#7DE1AF" //Light blueish green. rgb(125, 225, 175) -#define LIGHT_COLOR_PALEBLUE "#7DAFE1" //A pale blue-ish color. rgb(125, 175, 225) -#define LIGHT_COLOR_CYAN "#7DE1E1" //Diluted cyan. rgb(125, 225, 225) -#define LIGHT_COLOR_LIGHT_CYAN "#40CEFF" //More-saturated cyan. rgb(64, 206, 255) -#define LIGHT_COLOR_DARK_BLUE "#6496FA" //Saturated blue. rgb(51, 117, 248) -#define LIGHT_COLOR_PINK "#E17DE1" //Diluted, mid-warmth pink. rgb(225, 125, 225) -#define LIGHT_COLOR_YELLOW "#E1E17D" //Dimmed yellow, leaning kaki. rgb(225, 225, 125) -#define LIGHT_COLOR_BROWN "#966432" //Clear brown, mostly dim. rgb(150, 100, 50) -#define LIGHT_COLOR_ORANGE "#FA9632" //Mostly pure orange. rgb(250, 150, 50) -#define LIGHT_COLOR_PURPLE "#952CF4" //Light Purple. rgb(149, 44, 244) -#define LIGHT_COLOR_LAVENDER "#9B51FF" //Less-saturated light purple. rgb(155, 81, 255) - -#define LIGHT_COLOR_HOLY_MAGIC "#FFF743" //slightly desaturated bright yellow. -#define LIGHT_COLOR_BLOOD_MAGIC "#D00000" //deep crimson - -//These ones aren't a direct colour like the ones above, because nothing would fit -#define LIGHT_COLOR_FIRE "#FAA019" //Warm orange color, leaning strongly towards yellow. rgb(250, 160, 25) -#define LIGHT_COLOR_LAVA "#C48A18" //Very warm yellow, leaning slightly towards orange. rgb(196, 138, 24) -#define LIGHT_COLOR_FLARE "#FA644B" //Bright, non-saturated red. Leaning slightly towards pink for visibility. rgb(250, 100, 75) -#define LIGHT_COLOR_SLIME_LAMP "#AFC84B" //Weird color, between yellow and green, very slimy. rgb(175, 200, 75) -#define LIGHT_COLOR_TUNGSTEN "#FAE1AF" //Extremely diluted yellow, close to skin color (for some reason). rgb(250, 225, 175) -#define LIGHT_COLOR_HALOGEN "#F0FAFA" //Barely visible cyan-ish hue, as the doctor prescribed. rgb(240, 250, 250) - #define LIGHT_RANGE_FIRE 3 //How many tiles standard fires glow. #define LIGHTING_PLANE_ALPHA_VISIBLE 255 @@ -94,7 +63,7 @@ /// Parse the hexadecimal color into lumcounts of each perspective. #define PARSE_LIGHT_COLOR(source) \ do { \ - if (source.light_color) { \ + if (source.light_color != COLOR_WHITE) { \ var/__light_color = source.light_color; \ source.lum_r = GETREDPART(__light_color) / 255; \ source.lum_g = GETGREENPART(__light_color) / 255; \ diff --git a/code/__HELPERS/_cit_helpers.dm b/code/__HELPERS/_cit_helpers.dm index 5ce2bd13c..639d303ca 100644 --- a/code/__HELPERS/_cit_helpers.dm +++ b/code/__HELPERS/_cit_helpers.dm @@ -90,9 +90,9 @@ GLOBAL_LIST_INIT(dildo_colors, list(//mostly neon colors "Blue" = "#00d2ff",//blue "Lime" = "#89ff00",//lime "Black" = "#101010",//black - "Red" = "#ff0000",//red + "Red" = "#FF0000",//red "Orange" = "#ff9a00",//orange - "Purple" = "#e300ff"//purple + "Purple" = "#e300ff",//purple )) //Crew objective and miscreants stuff diff --git a/code/__HELPERS/icons.dm b/code/__HELPERS/icons.dm index 291ed19c1..d98f6e642 100644 --- a/code/__HELPERS/icons.dm +++ b/code/__HELPERS/icons.dm @@ -256,8 +256,8 @@ world else // solid color I = new(src) - I.Blend("#000000", ICON_OVERLAY) - I.SwapColor("#000000", null) + I.Blend(COLOR_BLACK, ICON_OVERLAY) + I.SwapColor(COLOR_BLACK, null) I.Blend(icon, ICON_OVERLAY) var/icon/J = new(src) J.Opaque() @@ -265,7 +265,7 @@ world Blend(I, ICON_OR) // make this icon fully opaque--transparent pixels become black -/icon/proc/Opaque(background = "#000000") +/icon/proc/Opaque(background = COLOR_BLACK) SwapColor(null, background) MapColors(1,0,0,0, 0,1,0,0, 0,0,1,0, 0,0,0,0, 0,0,0,1) @@ -427,10 +427,10 @@ world /proc/HSVtoRGB(hsv) if(!hsv) - return "#000000" + return COLOR_BLACK var/list/HSV = ReadHSV(hsv) if(!HSV) - return "#000000" + return COLOR_BLACK var/hue = HSV[1] var/sat = HSV[2] @@ -682,9 +682,9 @@ world var/tone_gray = TONE[1]*0.3 + TONE[2]*0.59 + TONE[3]*0.11 if(gray <= tone_gray) - return BlendRGB("#000000", tone, gray/(tone_gray || 1)) + return BlendRGB(COLOR_BLACK, tone, gray/(tone_gray || 1)) else - return BlendRGB(tone, "#ffffff", (gray-tone_gray)/((255-tone_gray) || 1)) + return BlendRGB(tone, COLOR_WHITE, (gray-tone_gray)/((255-tone_gray) || 1)) //Used in the OLD chem colour mixing algorithm diff --git a/code/__HELPERS/type2type.dm b/code/__HELPERS/type2type.dm index 564cfe9fa..dc9bc7ff4 100644 --- a/code/__HELPERS/type2type.dm +++ b/code/__HELPERS/type2type.dm @@ -451,19 +451,19 @@ /proc/color2hex(color) //web colors if(!color) - return "#000000" + return COLOR_BLACK switch(color) if("white") - return "#FFFFFF" + return COLOR_WHITE if("black") - return "#000000" + return COLOR_BLACK if("gray") return "#808080" if("brown") return "#A52A2A" if("red") - return "#FF0000" + return COLOR_RED if("darkred") return "#8B0000" if("crimson") @@ -471,23 +471,23 @@ if("orange") return "#FFA500" if("yellow") - return "#FFFF00" + return COLOR_YELLOW if("green") - return "#008000" + return COLOR_DARK_GREEN if("lime") - return "#00FF00" + return COLOR_GREEN if("darkgreen") return "#006400" if("cyan") - return "#00FFFF" + return COLOR_CYAN if("blue") - return "#0000FF" + return COLOR_BLUE if("navy") - return "#000080" + return COLOR_NAVY if("teal") - return "#008080" + return COLOR_TEAL if("purple") - return "#800080" + return COLOR_PURPLE if("indigo") return "#4B0082" else diff --git a/code/_onclick/hud/fullscreen.dm b/code/_onclick/hud/fullscreen.dm index 3cfa71e19..136af07e4 100644 --- a/code/_onclick/hud/fullscreen.dm +++ b/code/_onclick/hud/fullscreen.dm @@ -145,13 +145,13 @@ alpha = 80 /obj/screen/fullscreen/color_vision/green - color = "#00ff00" + color = COLOR_GREEN /obj/screen/fullscreen/color_vision/red - color = "#ff0000" + color = COLOR_RED /obj/screen/fullscreen/color_vision/blue - color = "#0000ff" + color = COLOR_BLUE /obj/screen/fullscreen/lighting_backdrop icon = 'icons/mob/screen_gen.dmi' diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index 00f848512..56c9b866f 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -154,9 +154,9 @@ item_overlay.alpha = 92 if(!user.can_equip(holding, slot_id, TRUE)) - item_overlay.color = "#FF0000" + item_overlay.color = COLOR_RED else - item_overlay.color = "#00ff00" + item_overlay.color = COLOR_GREEN object_overlays += item_overlay add_overlay(object_overlays) diff --git a/code/controllers/subsystem/air.dm b/code/controllers/subsystem/air.dm index 853dae5ed..36d746c90 100644 --- a/code/controllers/subsystem/air.dm +++ b/code/controllers/subsystem/air.dm @@ -244,7 +244,7 @@ SUBSYSTEM_DEF(air) active_turfs -= T SSair_turfs.currentrun -= T #ifdef VISUALIZE_ACTIVE_TURFS - T.remove_atom_colour(TEMPORARY_COLOUR_PRIORITY, "#00ff00") + T.remove_atom_colour(TEMPORARY_COLOUR_PRIORITY, COLOR_GREEN) #endif if(istype(T)) T.excited = 0 @@ -255,7 +255,7 @@ SUBSYSTEM_DEF(air) /datum/controller/subsystem/air/proc/add_to_active(turf/open/T, blockchanges = 1) if(istype(T) && T.air) #ifdef VISUALIZE_ACTIVE_TURFS - T.add_atom_colour("#00ff00", TEMPORARY_COLOUR_PRIORITY) + T.add_atom_colour(COLOR_GREEN, TEMPORARY_COLOUR_PRIORITY) #endif T.excited = TRUE active_turfs[T] = SSair_turfs.currentrun[T] = TRUE diff --git a/code/datums/status_effects/buffs.dm b/code/datums/status_effects/buffs.dm index 77735847e..89f0f6c44 100644 --- a/code/datums/status_effects/buffs.dm +++ b/code/datums/status_effects/buffs.dm @@ -395,7 +395,7 @@ /datum/status_effect/sword_spin/on_apply() owner.visible_message("[owner] begins swinging the sword with inhuman strength!") var/oldcolor = owner.color - owner.color = "#ff0000" + owner.color = COLOR_RED owner.add_stun_absorption("bloody bastard sword", duration, 2, "doesn't even flinch as the sword's power courses through them!", "You shrug off the stun!", " glowing with a blazing red aura!") owner.spin(duration,1) animate(owner, color = oldcolor, time = duration, easing = EASE_IN) diff --git a/code/game/atoms.dm b/code/game/atoms.dm index 47d61e3a9..21e1479d0 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -13,6 +13,19 @@ //HUD images that this atom can provide. var/list/hud_possible + ///Range of the emitted light in tiles. Zero means no light. + var/light_range = 0 + ///Intensity of the light. The stronger, the less shadows you will see on the lit area. + var/light_power = 1 + ///Hexidecimal RGB string representing the colour of the light. White by default. + var/light_color = COLOR_WHITE + ///Boolean variable for togglable lights. Has no effect without the proper light_system, light_range and light_power values. + var/light_on = TRUE + ///Our light source. Don't fuck with this directly unless you have a good reason! + var/tmp/datum/light_source/light + ///Any light sources that are "inside" of us, for example, if src here was a mob that's carrying a flashlight, that flashlight's light source would be part of this list. + var/tmp/list/light_sources + /// Last name used to calculate a color for the chatmessage overlays var/chat_color_name /// Last color calculated for the the chatmessage overlays diff --git a/code/game/gamemodes/clown_ops/clown_weapons.dm b/code/game/gamemodes/clown_ops/clown_weapons.dm index 020ea95f3..3b2797209 100644 --- a/code/game/gamemodes/clown_ops/clown_weapons.dm +++ b/code/game/gamemodes/clown_ops/clown_weapons.dm @@ -67,7 +67,7 @@ sharpness = IS_BLUNT item_color = "yellow" heat = 0 - light_color = "#ffff00" + light_color = COLOR_YELLOW var/next_trombone_allowed = 0 /obj/item/melee/transforming/energy/sword/bananium/Initialize() diff --git a/code/game/machinery/computer/aifixer.dm b/code/game/machinery/computer/aifixer.dm index 8bb0894cd..a664d7af2 100644 --- a/code/game/machinery/computer/aifixer.dm +++ b/code/game/machinery/computer/aifixer.dm @@ -2,12 +2,12 @@ name = "\improper AI system integrity restorer" desc = "Used with intelliCards containing nonfunctional AIs to restore them to working order." req_access = list(ACCESS_CAPTAIN, ACCESS_ROBOTICS, ACCESS_HEADS) - var/mob/living/silicon/ai/occupier = null - var/active = 0 circuit = /obj/item/circuitboard/computer/aifixer icon_keyboard = "tech_key" icon_screen = "ai-fixer" light_color = LIGHT_COLOR_PINK + var/mob/living/silicon/ai/occupier = null + var/active = 0 /obj/machinery/computer/aifixer/attackby(obj/I, mob/user, params) if(occupier && istype(I, /obj/item/screwdriver)) diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index d04a32bc9..d1c2439c4 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -11,6 +11,7 @@ icon_keyboard = null icon_screen = "invaders" clockwork = TRUE //it'd look weird + light_color = LIGHT_COLOR_GREEN var/list/prizes = list( /obj/item/toy/balloon = ARCADE_WEIGHT_USELESS, /obj/item/toy/beach_ball = ARCADE_WEIGHT_USELESS, @@ -72,8 +73,6 @@ /obj/item/clothing/mask/fakemoustache/italian = ARCADE_WEIGHT_RARE ) - light_color = LIGHT_COLOR_GREEN - /obj/machinery/computer/arcade/proc/Reset() return diff --git a/code/game/machinery/computer/atmos_alert.dm b/code/game/machinery/computer/atmos_alert.dm index c8b027713..3addd0f66 100644 --- a/code/game/machinery/computer/atmos_alert.dm +++ b/code/game/machinery/computer/atmos_alert.dm @@ -4,13 +4,12 @@ circuit = /obj/item/circuitboard/computer/atmos_alert icon_screen = "alert:0" icon_keyboard = "atmos_key" + light_color = LIGHT_COLOR_CYAN var/list/priority_alarms = list() var/list/minor_alarms = list() var/receive_frequency = FREQ_ATMOS_ALARMS var/datum/radio_frequency/radio_connection - light_color = LIGHT_COLOR_CYAN - /obj/machinery/computer/atmos_alert/Initialize() . = ..() set_frequency(receive_frequency) diff --git a/code/game/machinery/computer/atmos_control.dm b/code/game/machinery/computer/atmos_control.dm index 46fc7db9f..7ddcc226e 100644 --- a/code/game/machinery/computer/atmos_control.dm +++ b/code/game/machinery/computer/atmos_control.dm @@ -91,6 +91,7 @@ GLOBAL_LIST_EMPTY(atmos_air_controllers) icon_screen = "tank" icon_keyboard = "atmos_key" circuit = /obj/item/circuitboard/computer/atmos_control + light_color = LIGHT_COLOR_CYAN ui_x = 400 ui_y = 925 @@ -111,8 +112,6 @@ GLOBAL_LIST_EMPTY(atmos_air_controllers) var/list/sensor_information = list() var/datum/radio_frequency/radio_connection - light_color = LIGHT_COLOR_CYAN - /obj/machinery/computer/atmos_control/Initialize() . = ..() GLOB.atmos_air_controllers += src diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm index 408c11ef6..16a3c6d30 100644 --- a/code/game/machinery/computer/camera.dm +++ b/code/game/machinery/computer/camera.dm @@ -4,12 +4,11 @@ icon_screen = "cameras" icon_keyboard = "security_key" circuit = /obj/item/circuitboard/computer/security + light_color = COLOR_SOFT_RED var/last_pic = 1 var/list/network = list("ss13") var/list/watchers = list() //who's using the console, associated with the camera they're on. - light_color = LIGHT_COLOR_RED - /obj/machinery/computer/security/Initialize() . = ..() for(var/i in network) diff --git a/code/game/machinery/computer/camera_advanced.dm b/code/game/machinery/computer/camera_advanced.dm index 320dff0db..79c19ef98 100644 --- a/code/game/machinery/computer/camera_advanced.dm +++ b/code/game/machinery/computer/camera_advanced.dm @@ -3,6 +3,7 @@ desc = "Used to access the various cameras on the station." icon_screen = "cameras" icon_keyboard = "security_key" + light_color = COLOR_SOFT_RED var/list/z_lock = list() // Lock use to these z levels var/lock_override = NONE var/mob/camera/aiEye/remote/eyeobj @@ -12,8 +13,6 @@ var/datum/action/innate/camera_jump/jump_action = new var/list/actions = list() - light_color = LIGHT_COLOR_RED - /obj/machinery/computer/camera_advanced/Initialize() . = ..() for(var/i in networks) diff --git a/code/game/machinery/computer/card.dm b/code/game/machinery/computer/card.dm index 99b7c577c..21e10ab86 100644 --- a/code/game/machinery/computer/card.dm +++ b/code/game/machinery/computer/card.dm @@ -16,6 +16,7 @@ GLOBAL_VAR_INIT(time_last_changed_position, 0) icon_keyboard = "id_key" req_one_access = list(ACCESS_HEADS, ACCESS_CHANGE_IDS) circuit = /obj/item/circuitboard/computer/card + light_color = LIGHT_COLOR_BLUE var/mode = 0 var/printing = null var/target_dept = 0 //Which department this computer has access to. 0=all departments @@ -49,8 +50,6 @@ GLOBAL_VAR_INIT(time_last_changed_position, 0) var/list/region_access = null var/list/head_subordinates = null - light_color = LIGHT_COLOR_BLUE - /obj/machinery/computer/card/proc/get_jobs() return get_all_jobs() @@ -621,8 +620,7 @@ GLOBAL_VAR_INIT(time_last_changed_position, 0) /obj/machinery/computer/card/minor/hos target_dept = 2 icon_screen = "idhos" - - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED /obj/machinery/computer/card/minor/cmo target_dept = 3 @@ -631,19 +629,16 @@ GLOBAL_VAR_INIT(time_last_changed_position, 0) /obj/machinery/computer/card/minor/rd target_dept = 4 icon_screen = "idrd" - light_color = LIGHT_COLOR_PINK /obj/machinery/computer/card/minor/ce target_dept = 5 icon_screen = "idce" - light_color = LIGHT_COLOR_YELLOW /obj/machinery/computer/card/minor/qm target_dept = 6 icon_screen = "idqm" - light_color = LIGHT_COLOR_ORANGE #undef JOB_ALLOWED diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm index 0be7986da..d5630e599 100644 --- a/code/game/machinery/computer/communications.dm +++ b/code/game/machinery/computer/communications.dm @@ -6,6 +6,7 @@ icon_keyboard = "tech_key" req_access = list(ACCESS_HEADS) circuit = /obj/item/circuitboard/computer/communications + light_color = LIGHT_COLOR_BLUE var/auth_id = "Unknown" //Who is currently logged in? var/list/datum/comm_message/messages = list() var/datum/comm_message/currmsg @@ -32,8 +33,6 @@ var/datum/lore/atc_controller/ATC - light_color = LIGHT_COLOR_BLUE - /obj/machinery/computer/communications/proc/checkCCcooldown() var/obj/item/circuitboard/computer/communications/CM = circuit if(CM.lastTimeUsed + 600 > world.time) diff --git a/code/game/machinery/computer/medical.dm b/code/game/machinery/computer/medical.dm index 425ee5e2a..4bc601d42 100644 --- a/code/game/machinery/computer/medical.dm +++ b/code/game/machinery/computer/medical.dm @@ -7,6 +7,7 @@ icon_keyboard = "med_key" req_one_access = list(ACCESS_MEDICAL, ACCESS_FORENSICS_LOCKERS) circuit = /obj/item/circuitboard/computer/med_data + light_color = LIGHT_COLOR_BLUE var/rank = null var/screen = null var/datum/data/record/active1 @@ -17,8 +18,6 @@ var/sortBy = "name" var/order = 1 // -1 = Descending - 1 = Ascending - light_color = LIGHT_COLOR_BLUE - /obj/machinery/computer/med_data/syndie icon_keyboard = "syndie_key" diff --git a/code/game/machinery/computer/prisoner/gulag_teleporter.dm b/code/game/machinery/computer/prisoner/gulag_teleporter.dm index b908d7ec7..efeb0fa97 100644 --- a/code/game/machinery/computer/prisoner/gulag_teleporter.dm +++ b/code/game/machinery/computer/prisoner/gulag_teleporter.dm @@ -6,6 +6,7 @@ icon_keyboard = "security_key" req_access = list(ACCESS_ARMORY) circuit = /obj/item/circuitboard/computer/gulag_teleporter_console + light_color = COLOR_SOFT_RED ui_x = 350 ui_y = 295 @@ -15,8 +16,6 @@ var/mob/living/carbon/human/prisoner = null var/datum/data/record/temporary_record = null - light_color = LIGHT_COLOR_RED - /obj/machinery/computer/prisoner/gulag_teleporter_computer/Initialize() . = ..() scan_machinery() diff --git a/code/game/machinery/computer/prisoner/management.dm b/code/game/machinery/computer/prisoner/management.dm index 496e14b8f..6c1e1d841 100644 --- a/code/game/machinery/computer/prisoner/management.dm +++ b/code/game/machinery/computer/prisoner/management.dm @@ -5,15 +5,14 @@ icon_screen = "explosive" icon_keyboard = "security_key" req_access = list(ACCESS_BRIG) + circuit = /obj/item/circuitboard/computer/prisoner + light_color = COLOR_SOFT_RED var/id = 0 var/temp = null var/status = 0 var/timeleft = 60 var/stop = 0 var/screen = 0 // 0 - No Access Denied, 1 - Access allowed - circuit = /obj/item/circuitboard/computer/prisoner - - light_color = LIGHT_COLOR_RED /obj/machinery/computer/prisoner/management/ui_interact(mob/user) . = ..() diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index 2ca234ce8..4847b6921 100644 --- a/code/game/machinery/computer/security.dm +++ b/code/game/machinery/computer/security.dm @@ -5,6 +5,7 @@ icon_keyboard = "security_key" req_one_access = list(ACCESS_SECURITY, ACCESS_FORENSICS_LOCKERS) circuit = /obj/item/circuitboard/computer/secure_data + light_color = COLOR_SOFT_RED var/rank = null var/screen = null var/datum/data/record/active1 = null @@ -18,8 +19,6 @@ var/sortBy = "name" var/order = 1 // -1 = Descending - 1 = Ascending - light_color = LIGHT_COLOR_RED - /obj/machinery/computer/secure_data/syndie icon_keyboard = "syndie_key" diff --git a/code/game/machinery/computer/telecrystalconsoles.dm b/code/game/machinery/computer/telecrystalconsoles.dm index f3af0f9b3..dd8eea19a 100644 --- a/code/game/machinery/computer/telecrystalconsoles.dm +++ b/code/game/machinery/computer/telecrystalconsoles.dm @@ -11,7 +11,7 @@ GLOBAL_LIST_INIT(possible_uplinker_IDs, list("Alfa","Bravo","Charlie","Delta","E clockwork = TRUE //it'd look weird, at least if ratvar ever got there resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED ///////////////////////////////////////////// /obj/machinery/computer/telecrystals/uplinker diff --git a/code/game/machinery/dance_machine.dm b/code/game/machinery/dance_machine.dm index a5365127c..93422ceff 100644 --- a/code/game/machinery/dance_machine.dm +++ b/code/game/machinery/dance_machine.dm @@ -141,58 +141,58 @@ FOR_DVIEW(var/turf/t, 3, get_turf(src),INVISIBILITY_LIGHTING) if(t.x == cen.x && t.y > cen.y) var/obj/item/flashlight/spotlight/L = new /obj/item/flashlight/spotlight(t) - L.light_color = LIGHT_COLOR_RED - L.light_power = 30-(get_dist(src,L)*8) - L.range = 1+get_dist(src, L) + L.set_light_color(COLOR_SOFT_RED) + L.set_light_power(30-(get_dist(src,L)*8)) + L.set_light_range(1+get_dist(src, L)) spotlights+=L continue if(t.x == cen.x && t.y < cen.y) var/obj/item/flashlight/spotlight/L = new /obj/item/flashlight/spotlight(t) - L.light_color = LIGHT_COLOR_PURPLE - L.light_power = 30-(get_dist(src,L)*8) - L.range = 1+get_dist(src, L) + L.set_light_color(LIGHT_COLOR_PURPLE) + L.set_light_power(30-(get_dist(src,L)*8)) + L.set_light_range(1+get_dist(src, L)) spotlights+=L continue if(t.x > cen.x && t.y == cen.y) var/obj/item/flashlight/spotlight/L = new /obj/item/flashlight/spotlight(t) - L.light_color = LIGHT_COLOR_YELLOW - L.light_power = 30-(get_dist(src,L)*8) - L.range = 1+get_dist(src, L) + L.set_light_color(LIGHT_COLOR_YELLOW) + L.set_light_power((get_dist(src,L)*8)) + L.set_light_range(1+get_dist(src, L)) spotlights+=L continue if(t.x < cen.x && t.y == cen.y) var/obj/item/flashlight/spotlight/L = new /obj/item/flashlight/spotlight(t) - L.light_color = LIGHT_COLOR_GREEN - L.light_power = 30-(get_dist(src,L)*8) - L.range = 1+get_dist(src, L) + L.set_light_color(LIGHT_COLOR_GREEN) + L.set_light_power((get_dist(src,L)*8)) + L.set_light_range(1+get_dist(src, L)) spotlights+=L continue if((t.x+1 == cen.x && t.y+1 == cen.y) || (t.x+2==cen.x && t.y+2 == cen.y)) var/obj/item/flashlight/spotlight/L = new /obj/item/flashlight/spotlight(t) - L.light_color = LIGHT_COLOR_ORANGE - L.light_power = 30-(get_dist(src,L)*8) - L.range = 1.4+get_dist(src, L) + L.set_light_color(LIGHT_COLOR_ORANGE) + L.set_light_power(30-(get_dist(src,L)*8)) + L.set_light_range(1.4+get_dist(src, L)) spotlights+=L continue if((t.x-1 == cen.x && t.y-1 == cen.y) || (t.x-2==cen.x && t.y-2 == cen.y)) var/obj/item/flashlight/spotlight/L = new /obj/item/flashlight/spotlight(t) - L.light_color = LIGHT_COLOR_CYAN - L.light_power = 30-(get_dist(src,L)*8) - L.range = 1.4+get_dist(src, L) + L.set_light_color(LIGHT_COLOR_CYAN) + L.set_light_power(30-(get_dist(src,L)*8)) + L.set_light_range(1.4+get_dist(src, L)) spotlights+=L continue if((t.x-1 == cen.x && t.y+1 == cen.y) || (t.x-2==cen.x && t.y+2 == cen.y)) var/obj/item/flashlight/spotlight/L = new /obj/item/flashlight/spotlight(t) - L.light_color = LIGHT_COLOR_BLUEGREEN - L.light_power = 30-(get_dist(src,L)*8) - L.range = 1.4+get_dist(src, L) + L.set_light_color(LIGHT_COLOR_BLUEGREEN) + L.set_light_power(30-(get_dist(src,L)*8)) + L.set_light_range(1.4+get_dist(src, L)) spotlights+=L continue if((t.x+1 == cen.x && t.y-1 == cen.y) || (t.x+2==cen.x && t.y-2 == cen.y)) var/obj/item/flashlight/spotlight/L = new /obj/item/flashlight/spotlight(t) - L.light_color = LIGHT_COLOR_BLUE - L.light_power = 30-(get_dist(src,L)*8) - L.range = 1.4+get_dist(src, L) + L.set_light_color(LIGHT_COLOR_BLUE) + L.set_light_power(30-(get_dist(src,L)*8)) + L.set_light_range(1.4+get_dist(src, L)) spotlights+=L continue continue @@ -233,50 +233,50 @@ for(var/obj/item/flashlight/spotlight/glow in spotlights) // The multiples reflects custom adjustments to each colors after dozens of tests if(QDELETED(src) || !active || QDELETED(glow)) return - if(glow.light_color == LIGHT_COLOR_RED) - glow.light_color = LIGHT_COLOR_BLUE - glow.light_power = glow.light_power * 1.48 - glow.light_range = 0 + if(glow.light_color == COLOR_SOFT_RED) + glow.set_light_color(LIGHT_COLOR_BLUE) + glow.set_light_power(glow.light_power * 1.48) + glow.set_light_range(0) glow.update_light() continue if(glow.light_color == LIGHT_COLOR_BLUE) - glow.light_color = LIGHT_COLOR_GREEN - glow.light_range = glow.range * DISCO_INFENO_RANGE - glow.light_power = glow.light_power * 2 // Any changes to power must come in pairs to neutralize it for other colors + glow.set_light_color(LIGHT_COLOR_GREEN) + glow.set_light_power(glow.light_power * 2) // Any changes to power must come in pairs to neutralize it for other colors + glow.set_light_range(glow.range * DISCO_INFENO_RANGE) glow.update_light() continue if(glow.light_color == LIGHT_COLOR_GREEN) - glow.light_color = LIGHT_COLOR_ORANGE - glow.light_power = glow.light_power * 0.5 - glow.light_range = 0 + glow.set_light_color(LIGHT_COLOR_ORANGE) + glow.set_light_power(glow.light_power * 0.5) + glow.set_light_range(0) glow.update_light() continue if(glow.light_color == LIGHT_COLOR_ORANGE) - glow.light_color = LIGHT_COLOR_PURPLE - glow.light_power = glow.light_power * 2.27 - glow.light_range = glow.range * DISCO_INFENO_RANGE + glow.set_light_color(LIGHT_COLOR_PURPLE) + glow.set_light_power(glow.light_power * 2.27) + glow.set_light_range(glow.range * DISCO_INFENO_RANGE) glow.update_light() continue if(glow.light_color == LIGHT_COLOR_PURPLE) - glow.light_color = LIGHT_COLOR_BLUEGREEN - glow.light_power = glow.light_power * 0.44 - glow.light_range = 0 + glow.set_light_color(LIGHT_COLOR_BLUEGREEN) + glow.set_light_power(glow.light_power * 0.44) + glow.set_light_range(0) glow.update_light() continue if(glow.light_color == LIGHT_COLOR_BLUEGREEN) - glow.light_color = LIGHT_COLOR_YELLOW - glow.light_range = glow.range * DISCO_INFENO_RANGE + glow.set_light_color(LIGHT_COLOR_YELLOW) + glow.set_light_power(glow.range * DISCO_INFENO_RANGE) glow.update_light() continue if(glow.light_color == LIGHT_COLOR_YELLOW) - glow.light_color = LIGHT_COLOR_CYAN - glow.light_range = 0 + glow.set_light_color(LIGHT_COLOR_CYAN) + glow.set_light_range(0) glow.update_light() continue if(glow.light_color == LIGHT_COLOR_CYAN) - glow.light_color = LIGHT_COLOR_RED - glow.light_power = glow.light_power * 0.68 - glow.light_range = glow.range * DISCO_INFENO_RANGE + glow.set_light_color(COLOR_SOFT_RED) + glow.set_light_power(glow.light_power * 0.68) + glow.set_light_range(glow.range * DISCO_INFENO_RANGE) glow.update_light() continue if(prob(2)) // Unique effects for the dance floor that show up randomly to mix things up diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 948ea78c5..63941c05e 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -671,9 +671,9 @@ else if(lights && hasPower()) if(locked) - set_light(1, 0.1, "#0000FF") + set_light(1, 0.1, COLOR_BLUE) else if(emergency) - set_light(1, 0.1, "#FFFF00") + set_light(1, 0.1, COLOR_YELLOW) else set_light(0) else diff --git a/code/game/machinery/doors/airlock_types.dm b/code/game/machinery/doors/airlock_types.dm index 7ee1519b8..29f4f9539 100644 --- a/code/game/machinery/doors/airlock_types.dm +++ b/code/game/machinery/doors/airlock_types.dm @@ -352,7 +352,7 @@ note_overlay_file = 'icons/obj/doors/airlocks/external/overlays.dmi' color_overlay_file = 'icons/obj/doors/airlocks/external/color.dmi' assemblytype = /obj/structure/door_assembly/door_assembly_ext - basecolor = "#ff0000" //red + basecolor = COLOR_RED /obj/machinery/door/airlock/external/glass diff --git a/code/game/machinery/exp_cloner.dm b/code/game/machinery/exp_cloner.dm index c5b40a468..65d5fc3df 100644 --- a/code/game/machinery/exp_cloner.dm +++ b/code/game/machinery/exp_cloner.dm @@ -81,14 +81,13 @@ icon_screen = "dna" icon_keyboard = "med_key" circuit = /obj/item/circuitboard/computer/prototype_cloning + light_color = LIGHT_COLOR_BLUE var/obj/machinery/dna_scannernew/scanner = null //Linked scanner. For scanning. var/list/pods //Linked experimental cloning pods var/temp = "Inactive" var/scantemp = "Ready to Scan" var/loading = FALSE // Nice loading text - light_color = LIGHT_COLOR_BLUE - /obj/machinery/computer/prototype_cloning/Initialize() . = ..() updatemodules(TRUE) diff --git a/code/game/machinery/firealarm.dm b/code/game/machinery/firealarm.dm index 1ef3fc0a7..7bc3248fd 100644 --- a/code/game/machinery/firealarm.dm +++ b/code/game/machinery/firealarm.dm @@ -24,10 +24,9 @@ active_power_usage = 6 power_channel = ENVIRON resistance_flags = FIRE_PROOF - light_power = 0 light_range = 7 - light_color = "#ff3232" + light_color = COLOR_VIVID_RED var/detecting = 1 var/buildstage = 2 // 2 = complete, 1 = no wires, 0 = circuit gone diff --git a/code/game/machinery/flasher.dm b/code/game/machinery/flasher.dm index 6f89ce0d4..ff277c599 100644 --- a/code/game/machinery/flasher.dm +++ b/code/game/machinery/flasher.dm @@ -7,7 +7,7 @@ icon_state = "mflash1" max_integrity = 250 integrity_failure = 100 - light_color = LIGHT_COLOR_WHITE + light_color = COLOR_WHITE light_power = FLASH_LIGHT_POWER var/obj/item/assembly/flash/handheld/bulb var/id = null diff --git a/code/game/machinery/shieldgen.dm b/code/game/machinery/shieldgen.dm index 6f6497a92..6b5e2de4b 100644 --- a/code/game/machinery/shieldgen.dm +++ b/code/game/machinery/shieldgen.dm @@ -55,7 +55,7 @@ /obj/structure/emergency_shield/invoker name = "Invoker's Shield" desc = "A weak shield summoned by cultists to protect them while they carry out delicate rituals." - color = "#FF0000" + color = COLOR_RED max_integrity = 20 mouse_opacity = MOUSE_OPACITY_TRANSPARENT layer = ABOVE_MOB_LAYER diff --git a/code/game/machinery/slotmachine.dm b/code/game/machinery/slotmachine.dm index 298587cde..dd2937caf 100644 --- a/code/game/machinery/slotmachine.dm +++ b/code/game/machinery/slotmachine.dm @@ -21,6 +21,7 @@ use_power = IDLE_POWER_USE idle_power_usage = 50 circuit = /obj/item/circuitboard/computer/slot_machine + light_color = LIGHT_COLOR_BROWN var/money = 3000 //How much money it has CONSUMED var/plays = 0 var/working = 0 @@ -30,8 +31,6 @@ var/list/reels = list(list("", "", "") = 0, list("", "", "") = 0, list("", "", "") = 0, list("", "", "") = 0, list("", "", "") = 0) var/list/symbols = list(SEVEN = 1, "&" = 2, "@" = 2, "$" = 2, "?" = 2, "#" = 2, "!" = 2, "%" = 2) //if people are winning too much, multiply every number in this list by 2 and see if they are still winning too much. - light_color = LIGHT_COLOR_BROWN - /obj/machinery/computer/slot_machine/Initialize() . = ..() jackpots = rand(1, 4) //false hope diff --git a/code/game/machinery/telecomms/computers/message.dm b/code/game/machinery/telecomms/computers/message.dm index 0bc716ec9..d9c6a9d33 100644 --- a/code/game/machinery/telecomms/computers/message.dm +++ b/code/game/machinery/telecomms/computers/message.dm @@ -9,6 +9,7 @@ desc = "Used to monitor the crew's PDA messages, as well as request console messages." icon_screen = "comm_logs" circuit = /obj/item/circuitboard/computer/message_monitor + light_color = LIGHT_COLOR_GREEN //Servers, and server linked to. var/network = "tcommsat" // the network to probe @@ -34,8 +35,6 @@ var/customjob = "Admin" var/custommessage = "This is a test, please ignore." - light_color = LIGHT_COLOR_GREEN - /obj/machinery/computer/message_monitor/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE,\ datum/tgui/master_ui = null, datum/tgui_state/state = GLOB.tgui_default_state) ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) diff --git a/code/game/mecha/mech_bay.dm b/code/game/mecha/mech_bay.dm index de4b7fa55..a47023a98 100644 --- a/code/game/mecha/mech_bay.dm +++ b/code/game/mecha/mech_bay.dm @@ -73,8 +73,8 @@ icon_screen = "recharge_comp" icon_keyboard = "rd_key" circuit = /obj/item/circuitboard/computer/mech_bay_power_console - var/obj/machinery/mech_bay_recharge_port/recharge_port light_color = LIGHT_COLOR_PINK + var/obj/machinery/mech_bay_recharge_port/recharge_port /obj/machinery/computer/mech_bay_power_console/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/tgui_state/state = GLOB.tgui_default_state) ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) diff --git a/code/game/objects/effects/countdown.dm b/code/game/objects/effects/countdown.dm index 6017e8fc0..0b315cb93 100644 --- a/code/game/objects/effects/countdown.dm +++ b/code/game/objects/effects/countdown.dm @@ -8,7 +8,7 @@ invisibility = INVISIBILITY_OBSERVER anchored = TRUE layer = GHOST_LAYER - color = "#ff0000" // text color + color = COLOR_RED // text color var/text_size = 3 // larger values clip when the displayed text is larger than 2 digits. var/started = FALSE var/displayed_text diff --git a/code/game/objects/effects/mines.dm b/code/game/objects/effects/mines.dm index 8ae6ba9c0..2866467e5 100644 --- a/code/game/objects/effects/mines.dm +++ b/code/game/objects/effects/mines.dm @@ -115,7 +115,7 @@ name = "Red Orb" desc = "You feel angry just looking at it." duration = 1200 //2min - color = "#FF0000" + color = COLOR_RED /obj/effect/mine/pickup/bloodbath/mineEffect(mob/living/carbon/victim) if(!victim.client || !istype(victim)) @@ -152,7 +152,7 @@ /obj/effect/mine/pickup/healing name = "Blue Orb" desc = "You feel better just looking at it." - color = "#0000FF" + color = COLOR_BLUE /obj/effect/mine/pickup/healing/mineEffect(mob/living/carbon/victim) if(!victim.client || !istype(victim)) @@ -163,7 +163,7 @@ /obj/effect/mine/pickup/speed name = "Yellow Orb" desc = "You feel faster just looking at it." - color = "#FFFF00" + color = COLOR_YELLOW duration = 300 /obj/effect/mine/pickup/speed/mineEffect(mob/living/carbon/victim) diff --git a/code/game/objects/effects/misc.dm b/code/game/objects/effects/misc.dm index c2cfab0f7..9fab96be3 100644 --- a/code/game/objects/effects/misc.dm +++ b/code/game/objects/effects/misc.dm @@ -75,7 +75,7 @@ name = "lighting fx obj" desc = "Tell a coder if you're seeing this." icon_state = "nothing" - light_color = "#FFFFFF" + light_color = COLOR_WHITE light_range = MINIMUM_USEFUL_LIGHT_RANGE mouse_opacity = MOUSE_OPACITY_TRANSPARENT diff --git a/code/game/objects/effects/spawners/bundle.dm b/code/game/objects/effects/spawners/bundle.dm index 2fe8d2a46..1645465af 100644 --- a/code/game/objects/effects/spawners/bundle.dm +++ b/code/game/objects/effects/spawners/bundle.dm @@ -2,7 +2,7 @@ name = "bundle spawner" icon = 'icons/mob/screen_gen.dmi' icon_state = "x2" - color = "#00FF00" + color = COLOR_GREEN var/list/items diff --git a/code/game/objects/items/RCD.dm b/code/game/objects/items/RCD.dm index 6abf34c72..93a7482e5 100644 --- a/code/game/objects/items/RCD.dm +++ b/code/game/objects/items/RCD.dm @@ -764,7 +764,7 @@ RLD var/obj/machinery/light/L = new /obj/machinery/light(light) L.setDir(align) L.color = color_choice - L.light_color = L.color + L.set_light_color(L.color) return TRUE return FALSE @@ -784,7 +784,7 @@ RLD var/destination = get_turf(A) var/obj/machinery/light/floor/FL = new /obj/machinery/light/floor(destination) FL.color = color_choice - FL.light_color = FL.color + FL.set_light_color(FL.color) return TRUE return FALSE @@ -794,7 +794,7 @@ RLD to_chat(user, "You fire a glowstick!") var/obj/item/flashlight/glowstick/G = new /obj/item/flashlight/glowstick(start) G.color = color_choice - G.light_color = G.color + G.set_light_color(G.color) G.throw_at(A, 9, 3, user) G.on = TRUE G.update_brightness() diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm index 8a9f62229..550a461ed 100644 --- a/code/game/objects/items/cards_ids.dm +++ b/code/game/objects/items/cards_ids.dm @@ -571,7 +571,7 @@ //Polychromatic Knight Badge /obj/item/card/id/knight - var/id_color = "#00FF00" //defaults to green + var/id_color = COLOR_GREEN //defaults to green name = "knight badge" icon_state = "knight" desc = "A badge denoting the owner as a knight! It has a strip for swiping like an ID" @@ -621,7 +621,7 @@ . += "Alt-click to recolor it." /obj/item/card/id/knight/blue - id_color = "#0000FF" + id_color = COLOR_BLUE /obj/item/card/id/knight/captain id_color = "#FFD700" diff --git a/code/game/objects/items/cigs_lighters.dm b/code/game/objects/items/cigs_lighters.dm index 135781f1c..f9e4d5ca3 100644 --- a/code/game/objects/items/cigs_lighters.dm +++ b/code/game/objects/items/cigs_lighters.dm @@ -502,10 +502,14 @@ CIGARETTE PACKETS ARE IN FANCY.DM icon = 'icons/obj/cigarettes.dmi' icon_state = "zippo" item_state = "zippo" + heat = 1500 + grind_results = list(/datum/reagent/iron = 1, /datum/reagent/fuel = 5, /datum/reagent/oil = 5) w_class = WEIGHT_CLASS_TINY flags_1 = CONDUCT_1 slot_flags = ITEM_SLOT_BELT + resistance_flags = FIRE_PROOF price = 1 + light_color = LIGHT_COLOR_FIRE var/lit = 0 var/fancy = TRUE var/overlay_state @@ -515,10 +519,6 @@ CIGARETTE PACKETS ARE IN FANCY.DM "thirteen", "snake" ) - heat = 1500 - resistance_flags = FIRE_PROOF - light_color = LIGHT_COLOR_FIRE - grind_results = list(/datum/reagent/iron = 1, /datum/reagent/fuel = 5, /datum/reagent/oil = 5) /obj/item/lighter/Initialize() . = ..() @@ -907,7 +907,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM icon_state = null item_state = null w_class = WEIGHT_CLASS_NORMAL - light_color = "#FFCC66" + light_color = COLOR_CREAMY_ORANGE var/icon_off = "bong" var/icon_on = "bong_lit" var/chem_volume = 100 diff --git a/code/game/objects/items/crayons.dm b/code/game/objects/items/crayons.dm index cb9f4fb50..4e436986c 100644 --- a/code/game/objects/items/crayons.dm +++ b/code/game/objects/items/crayons.dm @@ -30,7 +30,7 @@ w_class = WEIGHT_CLASS_TINY attack_verb = list("attacked", "coloured") grind_results = list() - var/paint_color = "#FF0000" //RGB + var/paint_color = COLOR_RED var/drawtype var/text_buffer = "" @@ -791,7 +791,7 @@ charges = 100 reagent_contents = list(/datum/reagent/clf3 = 1) actually_paints = FALSE - paint_color = "#000000" + paint_color = COLOR_BLACK /obj/item/toy/crayon/spraycan/lubecan name = "slippery spraycan" diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index 8f5405255..55da105c5 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -44,7 +44,7 @@ GLOBAL_LIST_EMPTY(PDAs) var/current_overlays = PDA_STANDARD_OVERLAYS var/font_index = 0 //This int tells DM which font is currently selected and lets DM know when the last font has been selected so that it can cycle back to the first font when "toggle font" is pressed again. var/font_mode = "font-family:monospace;" //The currently selected font. - var/background_color = "#808000" //The currently selected background color. + var/background_color = COLOR_OLIVE //The currently selected background color. #define FONT_MONO "font-family:monospace;" #define FONT_SHARE "font-family:\"Share Tech Mono\", monospace;letter-spacing:0px;" @@ -60,7 +60,7 @@ GLOBAL_LIST_EMPTY(PDAs) var/fon = FALSE //Is the flashlight function on? var/f_lum = 2.3 //Luminosity for the flashlight function var/f_pow = 0.6 //Power for the flashlight function - var/f_col = "#FFCC66" //Color for the flashlight function + var/f_col = COLOR_CREAMY_ORANGE //Color for the flashlight function var/silent = FALSE //To beep or not to beep, that is the question var/toff = FALSE //If TRUE, messenger disabled var/tnote = null //Current Texts diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm index 7a4b453c0..bf85d68ca 100644 --- a/code/game/objects/items/devices/flashlight.dm +++ b/code/game/objects/items/devices/flashlight.dm @@ -11,10 +11,10 @@ slot_flags = ITEM_SLOT_BELT materials = list(MAT_METAL=50, MAT_GLASS=20) actions_types = list(/datum/action/item_action/toggle_light) + light_color = COLOR_CREAMY_ORANGE var/on = FALSE var/brightness_on = 4 //range of light when on var/flashlight_power = 0.8 //strength of the light when on - light_color = "#FFCC66" /obj/item/flashlight/Initialize() . = ..() @@ -26,9 +26,10 @@ if(on) icon_state = "[initial(icon_state)]-on" if(flashlight_power) - set_light(l_range = brightness_on, l_power = flashlight_power) + set_light_range(brightness_on) + set_light_power(flashlight_power) else - set_light(brightness_on) + set_light_range(brightness_on) else icon_state = initial(icon_state) set_light(0) @@ -258,16 +259,15 @@ desc = "A red Kinaris issued flare. There are instructions on the side, it reads 'pull cord, make light'." w_class = WEIGHT_CLASS_SMALL brightness_on = 7 // Pretty bright. - light_color = "#FA421A" icon_state = "flare" item_state = "flare" actions_types = list() - var/fuel = 0 - var/on_damage = 7 - var/produce_heat = 1500 heat = 1000 light_color = LIGHT_COLOR_FLARE grind_results = list(/datum/reagent/sulfur = 15) + var/fuel = 0 + var/on_damage = 7 + var/produce_heat = 1500 /obj/item/flashlight/flare/New() fuel = rand(800, 1000) // Sorry for changing this so much but I keep under-estimating how long X number of ticks last in seconds. @@ -332,14 +332,13 @@ desc = "A torch fashioned from some leaves and a log." w_class = WEIGHT_CLASS_BULKY brightness_on = 4 - light_color = "#FAA44B" icon_state = "torch" item_state = "torch" lefthand_file = 'icons/mob/inhands/items_lefthand.dmi' righthand_file = 'icons/mob/inhands/items_righthand.dmi' - light_color = LIGHT_COLOR_ORANGE on_damage = 10 slot_flags = null + light_color = LIGHT_COLOR_FIRE /obj/item/flashlight/lantern name = "lantern" @@ -349,8 +348,8 @@ righthand_file = 'icons/mob/inhands/equipment/mining_righthand.dmi' desc = "A mining lantern." brightness_on = 6 // luminosity when on - light_color = "#FFAA44" flashlight_power = 0.75 + light_color = LIGHT_COLOR_FIRE /obj/item/flashlight/slime @@ -491,7 +490,7 @@ /obj/item/flashlight/glowstick/red name = "red glowstick" - color = LIGHT_COLOR_RED + color = COLOR_SOFT_RED /obj/item/flashlight/glowstick/blue name = "blue glowstick" @@ -517,7 +516,7 @@ name = "disco light" desc = "Groovy..." icon_state = null - light_color = null + light_color = COLOR_WHITE brightness_on = 0 flashlight_power = 1 light_range = 0 diff --git a/code/game/objects/items/devices/reverse_bear_trap.dm b/code/game/objects/items/devices/reverse_bear_trap.dm index 20107373d..9c000a7f5 100644 --- a/code/game/objects/items/devices/reverse_bear_trap.dm +++ b/code/game/objects/items/devices/reverse_bear_trap.dm @@ -112,7 +112,7 @@ playsound(src, 'sound/effects/splat.ogg', 50, TRUE, frequency = 0.5) jill.apply_damage(9999, BRUTE, BODY_ZONE_HEAD) jill.death() //just in case, for some reason, they're still alive - flash_color(jill, flash_color = "#FF0000", flash_time = 100) + flash_color(jill, flash_color = COLOR_RED, flash_time = 100) /obj/item/reverse_bear_trap/proc/reset() ticking = FALSE diff --git a/code/game/objects/items/flamethrower.dm b/code/game/objects/items/flamethrower.dm index 906572d01..828d788d6 100644 --- a/code/game/objects/items/flamethrower.dm +++ b/code/game/objects/items/flamethrower.dm @@ -14,6 +14,7 @@ w_class = WEIGHT_CLASS_NORMAL materials = list(MAT_METAL=500) resistance_flags = FIRE_PROOF + trigger_guard = TRIGGER_GUARD_NORMAL var/status = FALSE var/lit = FALSE //on or off var/operating = FALSE//cooldown @@ -25,7 +26,6 @@ var/create_full = FALSE var/create_with_tank = FALSE var/igniter_type = /obj/item/assembly/igniter - trigger_guard = TRIGGER_GUARD_NORMAL /obj/item/flamethrower/Destroy() if(weldtool) diff --git a/code/game/objects/items/grenades/flashbang.dm b/code/game/objects/items/grenades/flashbang.dm index 48ecf8273..c07d8f2fd 100644 --- a/code/game/objects/items/grenades/flashbang.dm +++ b/code/game/objects/items/grenades/flashbang.dm @@ -13,7 +13,7 @@ return do_sparks(rand(5, 9), FALSE, src) playsound(flashbang_turf, 'sound/weapons/flashbang.ogg', 100, TRUE, 8, 0.9) - new /obj/effect/dummy/lighting_obj (flashbang_turf, LIGHT_COLOR_WHITE, (flashbang_range + 2), 4, 2) + new /obj/effect/dummy/lighting_obj (flashbang_turf, COLOR_WHITE, (flashbang_range + 2), 4, 2) for(var/mob/living/M in get_hearers_in_view(flashbang_range, flashbang_turf)) bang(get_turf(M), M) qdel(src) diff --git a/code/game/objects/items/handcuffs.dm b/code/game/objects/items/handcuffs.dm index f6f14554e..953d8f7a9 100644 --- a/code/game/objects/items/handcuffs.dm +++ b/code/game/objects/items/handcuffs.dm @@ -114,7 +114,7 @@ icon_state = "cuff" item_state = "coil" item_color = "red" - color = "#ff0000" + color = COLOR_RED lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi' materials = list(MAT_METAL=150, MAT_GLASS=75) @@ -136,11 +136,11 @@ /obj/item/restraints/handcuffs/cable/red item_color = "red" - color = "#ff0000" + color = COLOR_RED /obj/item/restraints/handcuffs/cable/yellow item_color = "yellow" - color = "#ffff00" + color = COLOR_YELLOW /obj/item/restraints/handcuffs/cable/blue item_color = "blue" @@ -160,7 +160,7 @@ /obj/item/restraints/handcuffs/cable/cyan item_color = "cyan" - color = "#00ffff" + color = COLOR_CYAN /obj/item/restraints/handcuffs/cable/white item_color = "white" diff --git a/code/game/objects/items/hot_potato.dm b/code/game/objects/items/hot_potato.dm index 16ac2ad69..c5cce53af 100644 --- a/code/game/objects/items/hot_potato.dm +++ b/code/game/objects/items/hot_potato.dm @@ -46,7 +46,7 @@ color_val = !color_val if(istype(target)) current = WEAKREF(target) - target.add_atom_colour(color_val? "#ffff00" : "#00ffff", FIXED_COLOUR_PRIORITY) + target.add_atom_colour(color_val? COLOR_YELLOW : COLOR_CYAN, FIXED_COLOUR_PRIORITY) /obj/item/hot_potato/proc/detonate() var/atom/location = loc diff --git a/code/game/objects/items/melee/energy.dm b/code/game/objects/items/melee/energy.dm index 57b9973aa..1598a0654 100644 --- a/code/game/objects/items/melee/energy.dm +++ b/code/game/objects/items/melee/energy.dm @@ -81,8 +81,8 @@ armour_penetration = 100 attack_verb_off = list("attacked", "chopped", "cleaved", "torn", "cut") attack_verb_on = list() - light_color = "#40ceff" total_mass = null + light_color = LIGHT_COLOR_LIGHT_CYAN /obj/item/melee/transforming/energy/axe/suicide_act(mob/user) user.visible_message("[user] swings [src] towards [user.p_their()] head! It looks like [user.p_theyre()] trying to commit suicide!") @@ -141,15 +141,15 @@ hitcost = 75 //Costs more than a standard cyborg esword w_class = WEIGHT_CLASS_NORMAL sharpness = IS_SHARP - light_color = "#40ceff" tool_behaviour = TOOL_SAW toolspeed = 0.7 + light_color = LIGHT_COLOR_LIGHT_CYAN /obj/item/melee/transforming/energy/sword/cyborg/saw/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) return 0 /obj/item/melee/transforming/energy/sword/saber - var/list/possible_colors = list("red" = LIGHT_COLOR_RED, "blue" = LIGHT_COLOR_LIGHT_CYAN, "green" = LIGHT_COLOR_GREEN, "purple" = LIGHT_COLOR_LAVENDER) + var/list/possible_colors = list("red" = COLOR_SOFT_RED, "blue" = LIGHT_COLOR_LIGHT_CYAN, "green" = LIGHT_COLOR_GREEN, "purple" = LIGHT_COLOR_LAVENDER) var/hacked = FALSE /obj/item/melee/transforming/energy/sword/saber/Initialize(mapload) @@ -163,11 +163,11 @@ . = ..() if(hacked) var/set_color = pick(possible_colors) - light_color = possible_colors[set_color] + set_light_color(possible_colors[set_color]) update_light() /obj/item/melee/transforming/energy/sword/saber/red - possible_colors = list("red" = LIGHT_COLOR_RED) + possible_colors = list("red" = COLOR_SOFT_RED) /obj/item/melee/transforming/energy/sword/saber/blue possible_colors = list("blue" = LIGHT_COLOR_LIGHT_CYAN) @@ -200,7 +200,7 @@ lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' icon_state_on = "cutlass1" - light_color = "#ff0000" + light_color = COLOR_RED /obj/item/melee/transforming/energy/blade name = "energy blade" diff --git a/code/game/objects/items/religion.dm b/code/game/objects/items/religion.dm index 1442e1e56..1c524a9e4 100644 --- a/code/game/objects/items/religion.dm +++ b/code/game/objects/items/religion.dm @@ -249,11 +249,11 @@ /obj/item/godstaff/red icon_state = "godstaff-red" - conversion_color = "#ff0000" + conversion_color = COLOR_RED /obj/item/godstaff/blue icon_state = "godstaff-blue" - conversion_color = "#0000ff" + conversion_color = COLOR_BLUE /obj/item/clothing/gloves/plate name = "Plate Gauntlets" diff --git a/code/game/objects/items/stacks/tiles/tile_types.dm b/code/game/objects/items/stacks/tiles/tile_types.dm index d371db965..6366d6a4d 100644 --- a/code/game/objects/items/stacks/tiles/tile_types.dm +++ b/code/game/objects/items/stacks/tiles/tile_types.dm @@ -82,21 +82,21 @@ item_state = "tile-fairygrass" turf_type = /turf/open/floor/grass/fairy resistance_flags = FLAMMABLE - color = "#33CCFF" + color = COLOR_BLUE_LIGHT /obj/item/stack/tile/fairygrass/white name = "white fairygrass tile" singular_name = "white fairygrass floor tile" desc = "A patch of odd, glowing white grass." turf_type = /turf/open/floor/grass/fairy/white - color = "#FFFFFF" + color = COLOR_WHITE /obj/item/stack/tile/fairygrass/red name = "red fairygrass tile" singular_name = "red fairygrass floor tile" desc = "A patch of odd, glowing red grass." turf_type = /turf/open/floor/grass/fairy/red - color = "#FF3333" + color = COLOR_RED_LIGHT /obj/item/stack/tile/fairygrass/yellow name = "yellow fairygrass tile" diff --git a/code/game/objects/items/tools/weldingtool.dm b/code/game/objects/items/tools/weldingtool.dm index 9b43af283..876f890c5 100644 --- a/code/game/objects/items/tools/weldingtool.dm +++ b/code/game/objects/items/tools/weldingtool.dm @@ -13,14 +13,14 @@ throwforce = 5 hitsound = "swing_hit" usesound = list('sound/items/welder.ogg', 'sound/items/welder2.ogg') - var/acti_sound = 'sound/items/welderactivate.ogg' - var/deac_sound = 'sound/items/welderdeactivate.ogg' throw_speed = 3 throw_range = 5 w_class = WEIGHT_CLASS_SMALL armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 30) resistance_flags = FIRE_PROOF - + heat = 3800 + tool_behaviour = TOOL_WELDER + toolspeed = 1 materials = list(MAT_METAL=70, MAT_GLASS=30) var/welding = 0 //Whether or not the welding tool is off(0), on(1) or currently welding(2) var/status = TRUE //Whether the welder is secured or unsecured (able to attach rods to it to make a flamethrower) @@ -30,9 +30,8 @@ var/light_intensity = 2 //how powerful the emitted light is when used. var/progress_flash_divisor = 10 var/burned_fuel_for = 0 //when fuel was last removed - heat = 3800 - tool_behaviour = TOOL_WELDER - toolspeed = 1 + var/acti_sound = 'sound/items/welderactivate.ogg' + var/deac_sound = 'sound/items/welderdeactivate.ogg' drop_sound = 'sound/items/handling/weldingtool_drop.ogg' pickup_sound = 'sound/items/handling/weldingtool_pickup.ogg' @@ -353,12 +352,12 @@ item_state = "exwelder" max_fuel = 40 materials = list(MAT_METAL=70, MAT_GLASS=120) - var/last_gen = 0 change_icons = 0 can_off_process = 1 light_intensity = 1 toolspeed = 0.5 var/nextrefueltick = 0 + var/last_gen = 0 /obj/item/weldingtool/experimental/brass name = "brass welding tool" diff --git a/code/game/objects/items/twohanded.dm b/code/game/objects/items/twohanded.dm index bbfa5c29c..cda0f9fec 100644 --- a/code/game/objects/items/twohanded.dm +++ b/code/game/objects/items/twohanded.dm @@ -284,7 +284,7 @@ var/hitsound_on = 'sound/weapons/blade1.ogg' armour_penetration = 35 item_color = "green" - light_color = "#00ff00"//green + light_color = COLOR_GREEN attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") block_chance = 75 max_integrity = 200 @@ -293,7 +293,7 @@ var/hacked = FALSE var/brightness_on = 6 //TWICE AS BRIGHT AS A REGULAR ESWORD var/list/possible_colors = list("red", "blue", "green", "purple") - var/list/rainbow_colors = list(LIGHT_COLOR_RED, LIGHT_COLOR_GREEN, LIGHT_COLOR_LIGHT_CYAN, LIGHT_COLOR_LAVENDER) + var/list/rainbow_colors = list(COLOR_SOFT_RED, LIGHT_COLOR_GREEN, LIGHT_COLOR_LIGHT_CYAN, LIGHT_COLOR_LAVENDER) var/spinnable = TRUE total_mass = 0.4 //Survival flashlights typically weigh around 5 ounces. var/total_mass_on = 3.4 @@ -329,7 +329,7 @@ item_color = pick(possible_colors) switch(item_color) if("red") - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED if("green") light_color = LIGHT_COLOR_GREEN if("blue") @@ -711,7 +711,7 @@ /obj/item/twohanded/pitchfork/demonic/Initialize() . = ..() - set_light(3,6,LIGHT_COLOR_RED) + set_light(3,6,COLOR_SOFT_RED) /obj/item/twohanded/pitchfork/demonic/greater force = 24 diff --git a/code/game/objects/structures/artstuff.dm b/code/game/objects/structures/artstuff.dm index 19baed8ae..b37b37ab4 100644 --- a/code/game/objects/structures/artstuff.dm +++ b/code/game/objects/structures/artstuff.dm @@ -174,11 +174,11 @@ var/obj/item/pen/P = I switch(P.colour) if("black") - return "#000000" + return COLOR_BLACK if("blue") - return "#0000ff" + return COLOR_BLUE if("red") - return "#ff0000" + return COLOR_RED return P.colour else if(istype(I, /obj/item/soap) || istype(I, /obj/item/reagent_containers/rag)) return canvas_color diff --git a/code/game/objects/structures/flora.dm b/code/game/objects/structures/flora.dm index fa11f9da1..fca904d56 100644 --- a/code/game/objects/structures/flora.dm +++ b/code/game/objects/structures/flora.dm @@ -350,7 +350,7 @@ name = "photosynthetic potted plant" desc = "A bioluminescent plant." icon_state = "plant-09" - light_color = "#2cb2e8" + light_color = COLOR_BRIGHT_BLUE light_range = 3 diff --git a/code/game/turfs/simulated/floor/fancy_floor.dm b/code/game/turfs/simulated/floor/fancy_floor.dm index abe6c1b66..5a55d8f9a 100644 --- a/code/game/turfs/simulated/floor/fancy_floor.dm +++ b/code/game/turfs/simulated/floor/fancy_floor.dm @@ -109,19 +109,19 @@ floor_tile = /obj/item/stack/tile/fairygrass light_range = 2 light_power = 0.80 - light_color = "#33CCFF" - color = "#33CCFF" + light_color = COLOR_BLUE_LIGHT + color = COLOR_BLUE_LIGHT /turf/open/floor/grass/fairy/white name = "white fairygrass patch" - light_color = "#FFFFFF" - color = "#FFFFFF" + light_color = COLOR_WHITE + color = COLOR_WHITE floor_tile = /obj/item/stack/tile/fairygrass/white /turf/open/floor/grass/fairy/red name = "red fairygrass patch" - light_color = "#FF3333" - color = "#FF3333" + light_color = COLOR_RED_LIGHT + color = COLOR_RED_LIGHT floor_tile = /obj/item/stack/tile/fairygrass/red /turf/open/floor/grass/fairy/yellow diff --git a/code/game/turfs/simulated/floor/light_floor.dm b/code/game/turfs/simulated/floor/light_floor.dm index f9376c067..0103a765b 100644 --- a/code/game/turfs/simulated/floor/light_floor.dm +++ b/code/game/turfs/simulated/floor/light_floor.dm @@ -23,7 +23,7 @@ /turf/open/floor/light/break_tile() ..() - light_range = 0 + set_light_range(0) update_light() /turf/open/floor/light/update_icon() diff --git a/code/game/turfs/simulated/floor/misc_floor.dm b/code/game/turfs/simulated/floor/misc_floor.dm index 11850f818..8adf5e2d7 100644 --- a/code/game/turfs/simulated/floor/misc_floor.dm +++ b/code/game/turfs/simulated/floor/misc_floor.dm @@ -31,10 +31,10 @@ if(on) if(LAZYLEN(SSmapping.nuke_threats)) icon_state = "rcircuitanim" - light_color = LIGHT_COLOR_FLARE + set_light_color(LIGHT_COLOR_FLARE) else icon_state = icon_normal - light_color = initial(light_color) + set_light_color(initial(light_color)) set_light(1.4, 0.5) else icon_state = "[icon_normal]off" diff --git a/code/modules/VR/vr_sleeper.dm b/code/modules/VR/vr_sleeper.dm index e8ea46a23..125c4cf86 100644 --- a/code/modules/VR/vr_sleeper.dm +++ b/code/modules/VR/vr_sleeper.dm @@ -216,7 +216,7 @@ /obj/effect/vr_clean_master // Will keep VR areas that have this relatively clean. icon = 'icons/mob/screen_gen.dmi' icon_state = "x2" - color = "#00FF00" + color = COLOR_GREEN invisibility = INVISIBILITY_ABSTRACT var/area/vr_area diff --git a/code/modules/admin/secrets.dm b/code/modules/admin/secrets.dm index 2323de4e3..979c62fec 100644 --- a/code/modules/admin/secrets.dm +++ b/code/modules/admin/secrets.dm @@ -660,7 +660,7 @@ "playersonly" = list("desc" = "Only spawn ghost-controlled mobs", "type" = "boolean", "value" = "No"), "ghostpoll" = list("desc" = "Ghost poll question", "type" = "string", "value" = "Do you want to play as %TYPE% portal invader?"), "delay" = list("desc" = "Time between portals, in deciseconds", "type" = "number", "value" = 50), - "color" = list("desc" = "Portal color", "type" = "color", "value" = "#00FF00"), + "color" = list("desc" = "Portal color", "type" = "color", "value" = COLOR_GREEN), "playlightning" = list("desc" = "Play lightning sounds on announcement", "type" = "boolean", "value" = "Yes"), "announce_players" = list("desc" = "Make an announcement", "type" = "boolean", "value" = "Yes"), "announcement" = list("desc" = "Announcement", "type" = "string", "value" = "Massive bluespace anomaly detected en route to %STATION%. Brace for impact."), diff --git a/code/modules/antagonists/blob/blob/blobs/blob_mobs.dm b/code/modules/antagonists/blob/blob/blobs/blob_mobs.dm index a1939b13b..e4d209c98 100644 --- a/code/modules/antagonists/blob/blob/blobs/blob_mobs.dm +++ b/code/modules/antagonists/blob/blob/blobs/blob_mobs.dm @@ -36,7 +36,7 @@ if(overmind) H.color = overmind.blob_reagent_datum.complementary_color else - H.color = "#000000" + H.color = COLOR_BLACK adjustHealth(-maxHealth*0.0125) /mob/living/simple_animal/hostile/blob/fire_act(exposed_temperature, exposed_volume) @@ -240,14 +240,14 @@ if(overmind) H.color = overmind.blob_reagent_datum.complementary_color else - H.color = "#000000" + H.color = COLOR_BLACK if(locate(/obj/structure/blob/node) in blobs_in_area) adjustHealth(-maxHealth*0.05) var/obj/effect/temp_visual/heal/H = new /obj/effect/temp_visual/heal(get_turf(src)) if(overmind) H.color = overmind.blob_reagent_datum.complementary_color else - H.color = "#000000" + H.color = COLOR_BLACK if(damagesources) for(var/i in 1 to damagesources) adjustHealth(maxHealth*0.025) //take 2.5% of max health as damage when not near the blob or if the naut has no factory, 5% if both diff --git a/code/modules/antagonists/bloodsucker/datum_bloodsucker.dm b/code/modules/antagonists/bloodsucker/datum_bloodsucker.dm index 6685dc071..9315101f7 100644 --- a/code/modules/antagonists/bloodsucker/datum_bloodsucker.dm +++ b/code/modules/antagonists/bloodsucker/datum_bloodsucker.dm @@ -721,7 +721,7 @@ datum/antagonist/bloodsucker/proc/SpendRank() // Update Rank Counter if(owner.current.hud_used.vamprank_display) - var/valuecolor = vamplevel_unspent ? "#FFFF00" : "#FF0000" + var/valuecolor = vamplevel_unspent ? COLOR_YELLOW : COLOR_RED owner.current.hud_used.vamprank_display.update_counter(vamplevel, valuecolor) if(updateRank) // Only change icon on special request. owner.current.hud_used.vamprank_display.icon_state = (vamplevel_unspent > 0) ? "rank_up" : "rank" diff --git a/code/modules/antagonists/cult/blood_magic.dm b/code/modules/antagonists/cult/blood_magic.dm index 49fb67200..30d6daeeb 100644 --- a/code/modules/antagonists/cult/blood_magic.dm +++ b/code/modules/antagonists/cult/blood_magic.dm @@ -503,7 +503,7 @@ name = "Binding Aura" desc = "Allows you to bind a victim and temporarily silence them." invocation = "In'totum Lig'abis." - color = "#000000" // black + color = COLOR_BLACK /obj/item/melee/blood_magic/shackles/afterattack(atom/target, mob/living/carbon/user, proximity) if(iscultist(user) && iscarbon(target) && proximity) @@ -553,7 +553,7 @@ name = "Corrupting Aura" desc = "Corrupts metal and plasteel into more sinister forms." invocation = "Ethra p'ni dedol." - color = "#000000" // black + color = COLOR_BLACK /obj/item/melee/blood_magic/construction/afterattack(atom/target, mob/user, proximity_flag, click_parameters) if(proximity_flag && iscultist(user)) diff --git a/code/modules/antagonists/cult/cult_items.dm b/code/modules/antagonists/cult/cult_items.dm index 47e7d2019..f7e0b94c8 100644 --- a/code/modules/antagonists/cult/cult_items.dm +++ b/code/modules/antagonists/cult/cult_items.dm @@ -110,7 +110,7 @@ throw_speed = 1 throw_range = 3 sharpness = IS_SHARP - light_color = "#ff0000" + light_color = COLOR_RED attack_verb = list("cleaved", "slashed", "torn", "hacked", "ripped", "diced", "carved") icon_state = "cultbastard" item_state = "cultbastard" @@ -625,7 +625,7 @@ brightness_on = 1 icon_state = "torch" item_state = "torch" - color = "#ff0000" + color = COLOR_RED on_damage = 15 slot_flags = null on = TRUE @@ -783,7 +783,7 @@ /obj/item/gun/ballistic/shotgun/boltaction/enchanted/arcane_barrage/blood name = "blood bolt barrage" desc = "Blood for blood." - color = "#ff0000" + color = COLOR_RED guns_left = 24 mag_type = /obj/item/ammo_box/magazine/internal/boltaction/enchanted/arcane_barrage/blood fire_sound = 'sound/magic/wand_teleport.ogg' @@ -872,9 +872,9 @@ if(i > 1) sleep(15) if(i < 4) - O = new /obj/effect/temp_visual/cult/rune_spawn/rune1/inner(user.loc, 30, "#ff0000") + O = new /obj/effect/temp_visual/cult/rune_spawn/rune1/inner(user.loc, 30, COLOR_RED) else - O = new /obj/effect/temp_visual/cult/rune_spawn/rune5(user.loc, 30, "#ff0000") + O = new /obj/effect/temp_visual/cult/rune_spawn/rune5(user.loc, 30, COLOR_RED) new /obj/effect/temp_visual/dir_setting/cult/phase/out(user.loc, user.dir) if(O) qdel(O) diff --git a/code/modules/antagonists/cult/cult_structures.dm b/code/modules/antagonists/cult/cult_structures.dm index f38f379ab..30edf5e5d 100644 --- a/code/modules/antagonists/cult/cult_structures.dm +++ b/code/modules/antagonists/cult/cult_structures.dm @@ -12,8 +12,8 @@ visible_message("[src] fades away.") invisibility = INVISIBILITY_OBSERVER alpha = 100 //To help ghosts distinguish hidden runes - light_range = 0 - light_power = 0 + set_light_range(0) + set_light_range(0) update_light() STOP_PROCESSING(SSfastprocess, src) @@ -22,8 +22,8 @@ invisibility = 0 visible_message("[src] suddenly appears!") alpha = initial(alpha) - light_range = initial(light_range) - light_power = initial(light_power) + set_light_range(initial(light_range)) + set_light_power(initial(light_power)) update_light() START_PROCESSING(SSfastprocess, src) @@ -180,7 +180,7 @@ desc = "A floating crystal that slowly heals those faithful to Nar'Sie." icon_state = "pylon" light_range = 1.5 - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED break_sound = 'sound/effects/glassbr2.ogg' break_message = "The blood-red crystal falls to the floor and shatters!" var/heal_delay = 25 diff --git a/code/modules/antagonists/cult/runes.dm b/code/modules/antagonists/cult/runes.dm index 82d784803..3e61098a9 100644 --- a/code/modules/antagonists/cult/runes.dm +++ b/code/modules/antagonists/cult/runes.dm @@ -428,14 +428,14 @@ structure_check() searches for nearby cultist structures required for the invoca playsound(T, pick('sound/effects/sparks1.ogg', 'sound/effects/sparks2.ogg', 'sound/effects/sparks3.ogg', 'sound/effects/sparks4.ogg'), 100, TRUE, 14) inner_portal = new /obj/effect/temp_visual/cult/portal(T) if(portal_type == "space") - light_color = color + set_light_color(color) desc += "
A tear in reality reveals a black void interspersed with dots of light... something recently teleported here from space.
The void feels like it's trying to pull you to the [dir2text(get_dir(T, origin))]!
" else inner_portal.icon_state = "lava" - light_color = LIGHT_COLOR_FIRE + set_light_color(LIGHT_COLOR_FIRE) desc += "
A tear in reality reveals a coursing river of lava... something recently teleported here from the Lavaland Mines!" outer_portal = new(T, 600, color) - light_range = 4 + set_light_range(4) update_light() addtimer(CALLBACK(src, .proc/close_portal), 600, TIMER_UNIQUE) @@ -443,7 +443,7 @@ structure_check() searches for nearby cultist structures required for the invoca qdel(inner_portal) qdel(outer_portal) desc = initial(desc) - light_range = 0 + set_light_range(0) update_light() //Ritual of Dimensional Rending: Calls forth the avatar of Nar'Sie upon the station. diff --git a/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm b/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm index 57800e5cd..142b34c32 100644 --- a/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm +++ b/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm @@ -707,7 +707,7 @@ This is here to make the tiles around the station mininuke change when it's arme user.visible_message("[user] is going delta! It looks like [user.p_theyre()] trying to commit suicide!") playsound(src, 'sound/machines/alarm.ogg', 50, -1, 1) for(var/i in 1 to 100) - addtimer(CALLBACK(user, /atom/proc/add_atom_colour, (i % 2)? "#00FF00" : "#FF0000", ADMIN_COLOUR_PRIORITY), i) + addtimer(CALLBACK(user, /atom/proc/add_atom_colour, (i % 2)? COLOR_GREEN : COLOR_RED, ADMIN_COLOUR_PRIORITY), i) addtimer(CALLBACK(src, .proc/manual_suicide, user), 101) return MANUAL_SUICIDE diff --git a/code/modules/assembly/flash.dm b/code/modules/assembly/flash.dm index c9e0ca338..9195c2b5b 100644 --- a/code/modules/assembly/flash.dm +++ b/code/modules/assembly/flash.dm @@ -10,7 +10,6 @@ w_class = WEIGHT_CLASS_TINY materials = list(MAT_METAL = 300, MAT_GLASS = 300) crit_fail = FALSE //Is the flash burnt out? - light_color = LIGHT_COLOR_WHITE light_power = FLASH_LIGHT_POWER var/flashing_overlay = "flash-f" var/times_used = 0 //Number of times it's been used. diff --git a/code/modules/atmospherics/machinery/airalarm.dm b/code/modules/atmospherics/machinery/airalarm.dm index da47471b4..d424e9e93 100644 --- a/code/modules/atmospherics/machinery/airalarm.dm +++ b/code/modules/atmospherics/machinery/airalarm.dm @@ -652,17 +652,17 @@ if(0) add_overlay(AALARM_OVERLAY_GREEN) overlay_state = AALARM_OVERLAY_GREEN - light_color = LIGHT_COLOR_GREEN + set_light_color(LIGHT_COLOR_GREEN) set_light(brightness_on) if(1) add_overlay(AALARM_OVERLAY_WARN) overlay_state = AALARM_OVERLAY_WARN - light_color = LIGHT_COLOR_LAVA + set_light_color(LIGHT_COLOR_LAVA) set_light(brightness_on) if(2) add_overlay(AALARM_OVERLAY_DANGER) overlay_state = AALARM_OVERLAY_DANGER - light_color = LIGHT_COLOR_RED + set_light_color(COLOR_SOFT_RED) set_light(brightness_on) SSvis_overlays.add_vis_overlay(src, icon, overlay_state, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir) diff --git a/code/modules/atmospherics/machinery/other/miner.dm b/code/modules/atmospherics/machinery/other/miner.dm index c90d388a1..503f6770e 100644 --- a/code/modules/atmospherics/machinery/other/miner.dm +++ b/code/modules/atmospherics/machinery/other/miner.dm @@ -158,7 +158,7 @@ /obj/machinery/atmospherics/miner/toxins name = "\improper Plasma Gas Miner" - overlay_color = "#FF0000" + overlay_color = COLOR_RED spawn_id = /datum/gas/plasma /obj/machinery/atmospherics/miner/carbon_dioxide diff --git a/code/modules/cargo/bounty_console.dm b/code/modules/cargo/bounty_console.dm index e0f97c7c0..c91a57fdc 100644 --- a/code/modules/cargo/bounty_console.dm +++ b/code/modules/cargo/bounty_console.dm @@ -7,7 +7,7 @@ desc = "Used to check and claim bounties offered by Kinaris" icon_screen = "bounty" circuit = /obj/item/circuitboard/computer/bounty - light_color = "#E2853D"//orange + light_color = COLOR_BRIGHT_ORANGE var/printer_ready = 0 //cooldown var /obj/machinery/computer/bounty/Initialize() diff --git a/code/modules/cargo/console.dm b/code/modules/cargo/console.dm index f871517ab..ce2c51dd8 100644 --- a/code/modules/cargo/console.dm +++ b/code/modules/cargo/console.dm @@ -3,6 +3,7 @@ desc = "Used to order supplies, approve requests, and control the shuttle." icon_screen = "supply" circuit = /obj/item/circuitboard/computer/cargo + light_color = COLOR_BRIGHT_ORANGE ui_x = 780 ui_y = 750 @@ -18,8 +19,6 @@ /// var that tracks message cooldown var/message_cooldown - light_color = "#E2853D"//orange - /obj/machinery/computer/cargo/request name = "supply request console" desc = "Used to request supplies from cargo." diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index b8d8a1879..99ca11ba1 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -65,7 +65,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/allow_midround_antag = 1 var/preferred_map = null var/pda_style = MONO - var/pda_color = "#808000" + var/pda_color = COLOR_OLIVE var/pda_skin = PDA_SKIN_ALT var/list/alt_titles_preferences = list() @@ -2013,11 +2013,11 @@ GLOBAL_LIST_EMPTY(preferences_datums) //Now that we changed our species, we must verify that the mutant colour is still allowed. var/temp_hsv = RGBtoHSV(features["mcolor"]) - if(features["mcolor"] == "#000" || (!(MUTCOLORS_PARTSONLY in pref_species.species_traits) && ReadHSV(temp_hsv)[3] < ReadHSV("#202020")[3])) + if(features["mcolor"] == "#000" || (!(MUTCOLORS_PARTSONLY in pref_species.species_traits) && ReadHSV(temp_hsv)[3] < ReadHSV(COLOR_NEARLY_BLACK)[3])) features["mcolor"] = pref_species.default_color - if(features["mcolor2"] == "#000" || (!(MUTCOLORS_PARTSONLY in pref_species.species_traits) && ReadHSV(temp_hsv)[3] < ReadHSV("#202020")[3])) + if(features["mcolor2"] == "#000" || (!(MUTCOLORS_PARTSONLY in pref_species.species_traits) && ReadHSV(temp_hsv)[3] < ReadHSV(COLOR_NEARLY_BLACK)[3])) features["mcolor2"] = pref_species.default_color - if(features["mcolor3"] == "#000" || (!(MUTCOLORS_PARTSONLY in pref_species.species_traits) && ReadHSV(temp_hsv)[3] < ReadHSV("#202020")[3])) + if(features["mcolor3"] == "#000" || (!(MUTCOLORS_PARTSONLY in pref_species.species_traits) && ReadHSV(temp_hsv)[3] < ReadHSV(COLOR_NEARLY_BLACK)[3])) features["mcolor3"] = pref_species.default_color if("custom_species") @@ -2031,10 +2031,10 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/new_mutantcolor = input(user, "Choose your character's alien/mutant color:", "Character Preference","#"+features["mcolor"]) as color|null if(new_mutantcolor) var/temp_hsv = RGBtoHSV(new_mutantcolor) - if(new_mutantcolor == "#000000") + if(new_mutantcolor == COLOR_BLACK) features["mcolor"] = pref_species.default_color update_preview_icon() - else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) // mutantcolors must be bright, but only if they affect the skin + else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV(COLOR_NEARLY_BLACK)[3]) // mutantcolors must be bright, but only if they affect the skin features["mcolor"] = sanitize_hexcolor(new_mutantcolor) update_preview_icon() else @@ -2044,10 +2044,10 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/new_mutantcolor = input(user, "Choose your character's secondary alien/mutant color:", "Character Preference") as color|null if(new_mutantcolor) var/temp_hsv = RGBtoHSV(new_mutantcolor) - if(new_mutantcolor == "#000000") + if(new_mutantcolor == COLOR_BLACK) features["mcolor2"] = pref_species.default_color update_preview_icon() - else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) // mutantcolors must be bright, but only if they affect the skin + else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV(COLOR_NEARLY_BLACK)[3]) // mutantcolors must be bright, but only if they affect the skin features["mcolor2"] = sanitize_hexcolor(new_mutantcolor) update_preview_icon() else @@ -2057,10 +2057,10 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/new_mutantcolor = input(user, "Choose your character's tertiary alien/mutant color:", "Character Preference") as color|null if(new_mutantcolor) var/temp_hsv = RGBtoHSV(new_mutantcolor) - if(new_mutantcolor == "#000000") + if(new_mutantcolor == COLOR_BLACK) features["mcolor3"] = pref_species.default_color update_preview_icon() - else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) // mutantcolors must be bright, but only if they affect the skin + else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV(COLOR_NEARLY_BLACK)[3]) // mutantcolors must be bright, but only if they affect the skin features["mcolor3"] = sanitize_hexcolor(new_mutantcolor) update_preview_icon() else @@ -2187,7 +2187,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if("wings_color") var/new_wing_color = input(user, "Choose your character's wing colour:", "Character Preference","#"+wing_color) as color|null if(new_wing_color) - if (new_wing_color == "#000000") + if (new_wing_color == COLOR_BLACK) wing_color = "#FFFFFF" else wing_color = sanitize_hexcolor(new_wing_color) @@ -2423,9 +2423,9 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/new_cockcolor = input(user, "Penis color:", "Character Preference") as color|null if(new_cockcolor) var/temp_hsv = RGBtoHSV(new_cockcolor) - if(new_cockcolor == "#000000") + if(new_cockcolor == COLOR_BLACK) features["cock_color"] = pref_species.default_color - else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) + else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV(COLOR_NEARLY_BLACK)[3]) features["cock_color"] = sanitize_hexcolor(new_cockcolor) else to_chat(user,"Invalid color. Your color is not bright enough.") @@ -2455,9 +2455,9 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/new_ballscolor = input(user, "Testicle Color:", "Character Preference") as color|null if(new_ballscolor) var/temp_hsv = RGBtoHSV(new_ballscolor) - if(new_ballscolor == "#000000") + if(new_ballscolor == COLOR_BLACK) features["balls_color"] = pref_species.default_color - else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) + else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV(COLOR_NEARLY_BLACK)[3]) features["balls_color"] = sanitize_hexcolor(new_ballscolor) else to_chat(user,"Invalid color. Your color is not bright enough.") @@ -2466,9 +2466,9 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/new_bellycolor = input(user, "Belly Color:", "Character Preference") as color|null if(new_bellycolor) var/temp_hsv = RGBtoHSV(new_bellycolor) - if(new_bellycolor == "#000000") + if(new_bellycolor == COLOR_BLACK) features["belly_color"] = pref_species.default_color - else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) + else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV(COLOR_NEARLY_BLACK)[3]) features["belly_color"] = sanitize_hexcolor(new_bellycolor) else to_chat(user,"Invalid color. Your color is not bright enough.") @@ -2477,9 +2477,9 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/new_buttcolor = input(user, "Butt Color:", "Character Preference") as color|null if(new_buttcolor) var/temp_hsv = RGBtoHSV(new_buttcolor) - if(new_buttcolor == "#000000") + if(new_buttcolor == COLOR_BLACK) features["butt_color"] = pref_species.default_color - else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) + else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV(COLOR_NEARLY_BLACK)[3]) features["butt_color"] = sanitize_hexcolor(new_buttcolor) else to_chat(user,"Invalid color. Your color is not bright enough.") @@ -2516,7 +2516,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/new_egg_color = input(user, "Egg Color:", "Character Preference") as color|null if(new_egg_color) var/temp_hsv = RGBtoHSV(new_egg_color) - if(ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) + if(ReadHSV(temp_hsv)[3] >= ReadHSV(COLOR_NEARLY_BLACK)[3]) features["eggsack_egg_color"] = sanitize_hexcolor(new_egg_color) else to_chat(user,"Invalid color. Your color is not bright enough.") @@ -2552,9 +2552,9 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/new_breasts_color = input(user, "Breast Color:", "Character Preference") as color|null if(new_breasts_color) var/temp_hsv = RGBtoHSV(new_breasts_color) - if(new_breasts_color == "#000000") + if(new_breasts_color == COLOR_BLACK) features["breasts_color"] = pref_species.default_color - else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) + else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV(COLOR_NEARLY_BLACK)[3]) features["breasts_color"] = sanitize_hexcolor(new_breasts_color) else to_chat(user,"Invalid color. Your color is not bright enough.") @@ -2580,9 +2580,9 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/new_vagcolor = input(user, "Vagina color:", "Character Preference") as color|null if(new_vagcolor) var/temp_hsv = RGBtoHSV(new_vagcolor) - if(new_vagcolor == "#000000") + if(new_vagcolor == COLOR_BLACK) features["vag_color"] = pref_species.default_color - else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) + else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV(COLOR_NEARLY_BLACK)[3]) features["vag_color"] = sanitize_hexcolor(new_vagcolor) else to_chat(user,"Invalid color. Your color is not bright enough.") diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index a77f504f8..b2d55510f 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -52,7 +52,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car if(current_version < 19) pda_style = "mono" if(current_version < 20) - pda_color = "#808000" + pda_color = COLOR_OLIVE if(current_version < 22) if(features["balls_fluid"]) features["balls_fluid"] = /datum/reagent/consumable/semen diff --git a/code/modules/clothing/head/hardhat.dm b/code/modules/clothing/head/hardhat.dm index 487888420..57546d99c 100644 --- a/code/modules/clothing/head/hardhat.dm +++ b/code/modules/clothing/head/hardhat.dm @@ -3,16 +3,16 @@ desc = "A piece of headgear used in dangerous working conditions to protect the head. Comes with a built-in flashlight." icon_state = "hardhat0_yellow" item_state = "hardhat0_yellow" - var/brightness_on = 4 //luminosity when on - light_color = "#FFCC66" - var/power_on = 0.8 - var/on = FALSE + light_color = COLOR_CREAMY_ORANGE item_color = "yellow" //Determines used sprites: hardhat[on]_[item_color] and hardhat[on]_[item_color]2 (lying down sprite) armor = list("melee" = 15, "bullet" = 5, "laser" = 20,"energy" = 10, "bomb" = 20, "bio" = 10, "rad" = 20, "fire" = 100, "acid" = 50) flags_inv = 0 actions_types = list(/datum/action/item_action/toggle_helmet_light) resistance_flags = FIRE_PROOF dynamic_hair_suffix = "+generic" + light_on = FALSE + var/brightness_on = 4 //luminosity when on + var/power_on = 0.8 dog_fashion = /datum/dog_fashion/head @@ -20,16 +20,16 @@ toggle_helmet_light(user) /obj/item/clothing/head/hardhat/proc/toggle_helmet_light(mob/living/user) - on = !on - if(on) + set_light_on(!light_on) + if(light_on) turn_on(user) else turn_off(user) update_icon() /obj/item/clothing/head/hardhat/update_icon() - icon_state = "hardhat[on]_[item_color]" - item_state = "hardhat[on]_[item_color]" + icon_state = "hardhat[light_on]_[item_color]" + item_state = "hardhat[light_on]_[item_color]" if(ishuman(loc)) var/mob/living/carbon/human/H = loc H.update_inv_head() diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm index 9b63fdef4..05e1fd202 100644 --- a/code/modules/clothing/head/misc_special.dm +++ b/code/modules/clothing/head/misc_special.dm @@ -77,7 +77,7 @@ STOP_PROCESSING(SSobj, src) /obj/item/clothing/head/hardhat/cakehat/is_hot() - return on * heat + return light_on * heat /* * Ushanka */ diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index 560455b5f..5c53b1667 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -939,9 +939,8 @@ var/energy_color = "#35FFF0" /obj/item/clothing/suit/space/hardsuit/lavaknight/Initialize() - ..() - light_color = energy_color - set_light(1) + . = ..() + set_light(l_range=1, l_color = energy_color) update_icon() /obj/item/clothing/suit/space/hardsuit/lavaknight/update_icon() diff --git a/code/modules/clothing/spacesuits/plasmamen.dm b/code/modules/clothing/spacesuits/plasmamen.dm index e4ba758de..82508dc75 100644 --- a/code/modules/clothing/spacesuits/plasmamen.dm +++ b/code/modules/clothing/spacesuits/plasmamen.dm @@ -48,7 +48,7 @@ var/brightness_on = 4 //luminosity when the light is on var/on = FALSE var/smile = FALSE - var/smile_color = "#FF0000" + var/smile_color = COLOR_RED var/visor_icon = "envisor" var/smile_state = "envirohelm_smile" actions_types = list(/datum/action/item_action/toggle_helmet_light, /datum/action/item_action/toggle_welding_screen/plasmaman) diff --git a/code/modules/events/aurora_aquilae.dm b/code/modules/events/aurora_aquilae.dm index 5b04fcc72..ebfd3f40c 100644 --- a/code/modules/events/aurora_aquilae.dm +++ b/code/modules/events/aurora_aquilae.dm @@ -14,7 +14,7 @@ announceWhen = 30 startWhen = 1 endWhen = 115 - var/list/aurora_colors = list("#ffc8bc", "#ed927f", "#d5745f", "#bf3a1d", "#c71414", "#FF3131", "#ee0808", "#ff0000") + var/list/aurora_colors = list("#ffc8bc", "#ed927f", "#d5745f", "#bf3a1d", "#c71414", "#FF3131", "#ee0808", COLOR_RED) var/aurora_progress = 0 //this cycles from 1 to 8, slowly grading towards a bright red var/list/areasToFlicker = list(/area/hallway, /area/security, diff --git a/code/modules/events/aurora_caelus.dm b/code/modules/events/aurora_caelus.dm index e5f642642..6cc95e781 100644 --- a/code/modules/events/aurora_caelus.dm +++ b/code/modules/events/aurora_caelus.dm @@ -15,7 +15,7 @@ announceWhen = 1 startWhen = 8 //Delayed with sleep() endWhen = 50 - var/list/aurora_colors = list("#ffd980", "#eaff80", "#eaff80", "#ffd980", "#eaff80", "#A2FFC7", "#9400D3", "#FFC0CB") + var/list/aurora_colors = list("#ffd980", "#eaff80", "#eaff80", "#ffd980", "#eaff80", "#A2FFC7", "#9400D3", COLOR_PINK) var/aurora_progress = 0 //this cycles from 1 to 8, slowly changing colors from gentle green to gentle blue var/list/applicable_areas = list() diff --git a/code/modules/events/pirates.dm b/code/modules/events/pirates.dm index df5e85a3c..a0e5eb1f7 100644 --- a/code/modules/events/pirates.dm +++ b/code/modules/events/pirates.dm @@ -178,7 +178,7 @@ shuttleId = "pirateship" icon_screen = "syndishuttle" icon_keyboard = "syndie_key" - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED possible_destinations = "pirateship_away;pirateship_home;pirateship_custom" /obj/machinery/computer/camera_advanced/shuttle_docker/syndicate/pirate diff --git a/code/modules/events/portal_storm.dm b/code/modules/events/portal_storm.dm index b34004ee4..d3c62a532 100644 --- a/code/modules/events/portal_storm.dm +++ b/code/modules/events/portal_storm.dm @@ -64,7 +64,7 @@ /datum/round_event/portal_storm/setup() storm = mutable_appearance('icons/obj/tesla_engine/energy_ball.dmi', "energy_ball_fast", FLY_LAYER) - storm.color = "#00FF00" + storm.color = COLOR_GREEN number_of_bosses = 0 for(var/boss in boss_types) diff --git a/code/modules/events/spacevine.dm b/code/modules/events/spacevine.dm index d037adcc3..701a2d5bf 100644 --- a/code/modules/events/spacevine.dm +++ b/code/modules/events/spacevine.dm @@ -74,7 +74,7 @@ /datum/spacevine_mutation/light name = "light" - hue = "#ffff00" + hue = COLOR_YELLOW quality = POSITIVE severity = 4 @@ -84,7 +84,7 @@ /datum/spacevine_mutation/toxicity name = "toxic" - hue = "#ff00ff" + hue = COLOR_MAGENTA severity = 10 quality = NEGATIVE @@ -101,7 +101,7 @@ /datum/spacevine_mutation/explosive //OH SHIT IT CAN CHAINREACT RUN!!! name = "explosive" - hue = "#ff0000" + hue = COLOR_RED quality = NEGATIVE severity = 2 @@ -192,7 +192,7 @@ /datum/spacevine_mutation/carbondioxide_eater name = "CO2 consuming" - hue = "#00ffff" + hue = COLOR_CYAN severity = 3 quality = POSITIVE diff --git a/code/modules/events/wizard/greentext.dm b/code/modules/events/wizard/greentext.dm index 356e83757..78a65c0c3 100644 --- a/code/modules/events/wizard/greentext.dm +++ b/code/modules/events/wizard/greentext.dm @@ -47,14 +47,14 @@ last_holder = user if(!(user in color_altered_mobs)) color_altered_mobs += user - user.add_atom_colour("#00FF00", ADMIN_COLOUR_PRIORITY) + user.add_atom_colour(COLOR_GREEN, ADMIN_COLOUR_PRIORITY) START_PROCESSING(SSobj, src) ..() /obj/item/greentext/dropped(mob/living/user as mob) if(user in color_altered_mobs) to_chat(user, "A sudden wave of failure washes over you...") - user.add_atom_colour("#FF0000", ADMIN_COLOUR_PRIORITY) //ya blew it + user.add_atom_colour(COLOR_RED, ADMIN_COLOUR_PRIORITY) //ya blew it last_holder = null new_holder = null STOP_PROCESSING(SSobj, src) @@ -75,7 +75,7 @@ /obj/item/greentext/process() if(last_holder && last_holder != new_holder) //Somehow it was swiped without ever getting dropped to_chat(last_holder, "A sudden wave of failure washes over you...") - last_holder.add_atom_colour("#FF0000", ADMIN_COLOUR_PRIORITY) + last_holder.add_atom_colour(COLOR_RED, ADMIN_COLOUR_PRIORITY) last_holder = new_holder //long live the king /obj/item/greentext/Destroy(force) @@ -89,7 +89,7 @@ var/message = "A dark temptation has passed from this world" if(M in color_altered_mobs) message += " and you're finally able to forgive yourself" - if(M.color == "#FF0000" || M.color == "#00FF00") + if(M.color == COLOR_RED || M.color == COLOR_GREEN) M.remove_atom_colour(ADMIN_COLOUR_PRIORITY) message += "..." // can't skip the mob check as it also does the decolouring diff --git a/code/modules/events/wizard/magicarp.dm b/code/modules/events/wizard/magicarp.dm index ab23c30e0..97397dbb0 100644 --- a/code/modules/events/wizard/magicarp.dm +++ b/code/modules/events/wizard/magicarp.dm @@ -47,7 +47,7 @@ /mob/living/simple_animal/hostile/carp/ranged/chaos name = "chaos magicarp" desc = "50% carp, 100% magic, 150% horrible." - color = "#00FFFF" + color = COLOR_CYAN maxHealth = 75 health = 75 diff --git a/code/modules/food_and_drinks/food/customizables.dm b/code/modules/food_and_drinks/food/customizables.dm index d1d17b3d7..3e56778f0 100644 --- a/code/modules/food_and_drinks/food/customizables.dm +++ b/code/modules/food_and_drinks/food/customizables.dm @@ -103,8 +103,8 @@ /obj/item/reagent_containers/food/snacks/customizable/update_snack_overlays(obj/item/reagent_containers/food/snacks/S) var/mutable_appearance/filling = mutable_appearance(icon, "[initial(icon_state)]_filling") - if(S.filling_color == "#FFFFFF") - filling.color = pick("#FF0000","#0000FF","#008000","#FFFF00") + if(S.filling_color == COLOR_WHITE) + filling.color = pick(COLOR_RED, COLOR_BLUE, COLOR_DARK_GREEN, COLOR_YELLOW) else filling.color = S.filling_color diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm index ee7e129ae..895b51fc6 100644 --- a/code/modules/food_and_drinks/food/snacks.dm +++ b/code/modules/food_and_drinks/food/snacks.dm @@ -271,7 +271,7 @@ All foods are distributed among various categories. Use common sense. cut_overlays() var/mutable_appearance/filling = mutable_appearance(icon, "[initial(icon_state)]_filling") if(S.filling_color == "#FFFFFF") - filling.color = pick("#FF0000","#0000FF","#008000","#FFFF00") + filling.color = pick(COLOR_RED, COLOR_BLUE, COLOR_DARK_GREEN, COLOR_YELLOW) else filling.color = S.filling_color diff --git a/code/modules/food_and_drinks/food/snacks/meat.dm b/code/modules/food_and_drinks/food/snacks/meat.dm index c4e63937b..547d77f71 100644 --- a/code/modules/food_and_drinks/food/snacks/meat.dm +++ b/code/modules/food_and_drinks/food/snacks/meat.dm @@ -12,7 +12,7 @@ cooked_type = /obj/item/reagent_containers/food/snacks/meat/steak/plain slice_path = /obj/item/reagent_containers/food/snacks/meat/rawcutlet/plain slices_num = 3 - filling_color = "#FF0000" + filling_color = COLOR_RED tastes = list("meat" = 1) foodtype = MEAT | RAW @@ -90,7 +90,7 @@ icon_state = "slimemeat" desc = "Because jello wasn't offensive enough to vegans." list_reagents = list(/datum/reagent/consumable/nutriment = 3, /datum/reagent/toxin/slimejelly = 3) - filling_color = "#00FFFF" + filling_color = COLOR_CYAN tastes = list("slime" = 1, "jelly" = 1) foodtype = MEAT | RAW | TOXIC @@ -125,7 +125,7 @@ /obj/item/reagent_containers/food/snacks/meat/slab/human/mutant/shadow icon_state = "shadowmeat" desc = "Ow, the edge." - filling_color = "#202020" + filling_color = COLOR_NEARLY_BLACK tastes = list("darkness" = 1, "meat" = 1) foodtype = MEAT | RAW @@ -147,7 +147,7 @@ name = "bone" icon_state = "skeletonmeat" desc = "There's a point where this needs to stop, and clearly we have passed it." - filling_color = "#F0F0F0" + filling_color = COLOR_VERY_VERY_LIGHT_GRAY tastes = list("bone" = 1) slice_path = null //can't slice a bone into cutlets foodtype = GROSS @@ -167,7 +167,7 @@ /obj/item/reagent_containers/food/snacks/meat/slab/human/mutant/ipc icon_state = "ipcmeat" desc = "Gross robot meat." - filling_color = "#000000" + filling_color = COLOR_BLACK tastes = list("metal" = 1) /obj/item/reagent_containers/food/snacks/meat/slab/human/mutant/avian @@ -218,7 +218,7 @@ desc = "A slice from a huge tomato." icon_state = "tomatomeat" list_reagents = list(/datum/reagent/consumable/nutriment = 2) - filling_color = "#FF0000" + filling_color = COLOR_RED cooked_type = /obj/item/reagent_containers/food/snacks/meat/steak/killertomato slice_path = /obj/item/reagent_containers/food/snacks/meat/rawcutlet/killertomato tastes = list("tomato" = 1) @@ -241,7 +241,7 @@ icon_state = "xenomeat" list_reagents = list(/datum/reagent/consumable/nutriment = 3, /datum/reagent/consumable/nutriment/vitamin = 1) bitesize = 4 - filling_color = "#32CD32" + filling_color = COLOR_LIME cooked_type = /obj/item/reagent_containers/food/snacks/meat/steak/xeno slice_path = /obj/item/reagent_containers/food/snacks/meat/rawcutlet/xeno tastes = list("meat" = 1, "acid" = 1) diff --git a/code/modules/food_and_drinks/food/snacks_bread.dm b/code/modules/food_and_drinks/food/snacks_bread.dm index f756b634b..53f474817 100644 --- a/code/modules/food_and_drinks/food/snacks_bread.dm +++ b/code/modules/food_and_drinks/food/snacks_bread.dm @@ -72,7 +72,7 @@ name = "xenomeatbread slice" desc = "A slice of delicious meatbread. Extra Heretical." icon_state = "xenobreadslice" - filling_color = "#32CD32" + filling_color = COLOR_LIME list_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/nutriment/vitamin = 1) foodtype = GRAIN | MEAT diff --git a/code/modules/food_and_drinks/food/snacks_cake.dm b/code/modules/food_and_drinks/food/snacks_cake.dm index 8f56931cd..f4938ec68 100644 --- a/code/modules/food_and_drinks/food/snacks_cake.dm +++ b/code/modules/food_and_drinks/food/snacks_cake.dm @@ -125,7 +125,7 @@ name = "lime cake slice" desc = "Just a slice of cake, it is enough for everyone." icon_state = "limecake_slice" - filling_color = "#00FF00" + filling_color = COLOR_GREEN tastes = list("cake" = 5, "sweetness" = 2, "unbearable sourness" = 2) foodtype = GRAIN | DAIRY | FRUIT | SUGAR | ANTITOXIC @@ -222,7 +222,7 @@ name = "slime cake slice" desc = "A slice of slime cake." icon_state = "slimecake_slice" - filling_color = "#00FFFF" + filling_color = COLOR_CYAN tastes = list("cake" = 5, "sweetness" = 1, "slime" = 1) foodtype = GRAIN | DAIRY | SUGAR @@ -290,7 +290,7 @@ name = "angel food cake slice" desc = "A slice of heavenly cake." icon_state = "holy_cake_slice" - filling_color = "#00FFFF" + filling_color = COLOR_CYAN tastes = list("cake" = 5, "sweetness" = 1, "clouds" = 1) foodtype = GRAIN | DAIRY | SUGAR @@ -308,7 +308,7 @@ obj/item/reagent_containers/food/snacks/store/cake/pound_cake name = "pound cake slice" desc = "A slice of condensed cake made for filling people up quickly." icon_state = "pound_cake_slice" - filling_color = "#00FFFF" + filling_color = COLOR_CYAN tastes = list("cake" = 5, "sweetness" = 5, "batter" = 1) foodtype = GRAIN | DAIRY | SUGAR | JUNKFOOD @@ -325,7 +325,7 @@ obj/item/reagent_containers/food/snacks/store/cake/pound_cake name = "hardware cake slice" desc = "A slice of electronic boards and some acid." icon_state = "hardware_cake_slice" - filling_color = "#00FFFF" + filling_color = COLOR_CYAN tastes = list("acid" = 1, "metal" = 1, "regret" = 10) foodtype = GRAIN | GROSS @@ -342,7 +342,7 @@ obj/item/reagent_containers/food/snacks/store/cake/pound_cake name = "vanilla cake slice" desc = "A slice of vanilla frosted cake." icon_state = "vanillacake_slice" - filling_color = "#00FFFF" + filling_color = COLOR_CYAN tastes = list("cake" = 1, "sugar" = 1, "vanilla" = 10) foodtype = GRAIN | SUGAR | DAIRY @@ -359,7 +359,7 @@ obj/item/reagent_containers/food/snacks/store/cake/pound_cake name = "clown cake slice" desc = "A slice of bad jokes, and silly props." icon_state = "clowncake_slice" - filling_color = "#00FFFF" + filling_color = COLOR_CYAN tastes = list("cake" = 1, "sugar" = 1, "joy" = 10) foodtype = GRAIN | SUGAR | DAIRY @@ -376,7 +376,7 @@ obj/item/reagent_containers/food/snacks/store/cake/pound_cake name = "peach cake slice" desc = "A slice of peach cake." icon_state = "peach_slice" - filling_color = "#00FFFF" + filling_color = COLOR_CYAN tastes = list("cake" = 1, "sugar" = 1, "peachjuice" = 10) foodtype = GRAIN | SUGAR | DAIRY diff --git a/code/modules/food_and_drinks/food/snacks_meat.dm b/code/modules/food_and_drinks/food/snacks_meat.dm index 6f3b3b3bf..a481214c3 100644 --- a/code/modules/food_and_drinks/food/snacks_meat.dm +++ b/code/modules/food_and_drinks/food/snacks_meat.dm @@ -108,7 +108,7 @@ icon_state = "spiderleg" list_reagents = list(/datum/reagent/consumable/nutriment = 2, /datum/reagent/toxin = 2) cooked_type = /obj/item/reagent_containers/food/snacks/boiledspiderleg - filling_color = "#000000" + filling_color = COLOR_BLACK tastes = list("cobwebs" = 1) foodtype = MEAT | TOXIC @@ -137,7 +137,7 @@ desc = "A ball of meat." icon_state = "meatball" list_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/consumable/nutriment/vitamin = 1) - filling_color = "#800000" + filling_color = COLOR_RED tastes = list("meat" = 1) foodtype = MEAT @@ -207,7 +207,7 @@ icon_state = "khinkali" list_reagents = list(/datum/reagent/consumable/nutriment = 4, /datum/reagent/consumable/nutriment/vitamin = 2) bitesize = 3 - filling_color = "#F0F0F0" + filling_color = COLOR_VERY_VERY_LIGHT_GRAY tastes = list("meat" = 1, "onions" = 1, "garlic" = 1) foodtype = MEAT @@ -274,7 +274,7 @@ trash = /obj/item/trash/plate bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/capsaicin = 2, /datum/reagent/consumable/nutriment/vitamin = 2) list_reagents = list(/datum/reagent/consumable/nutriment = 3, /datum/reagent/consumable/capsaicin = 2) - filling_color = "#000000" + filling_color = COLOR_BLACK tastes = list("hot peppers" = 1, "cobwebs" = 1) foodtype = MEAT @@ -320,7 +320,7 @@ icon_state = "pigblanket" list_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/nutriment/vitamin = 1) bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/nutriment/vitamin = 1) - filling_color = "#800000" + filling_color = COLOR_RED tastes = list("meat" = 1, "butter" = 1) /obj/item/reagent_containers/food/snacks/kebab/rat diff --git a/code/modules/food_and_drinks/food/snacks_other.dm b/code/modules/food_and_drinks/food/snacks_other.dm index 30f12279c..08ff096af 100644 --- a/code/modules/food_and_drinks/food/snacks_other.dm +++ b/code/modules/food_and_drinks/food/snacks_other.dm @@ -175,7 +175,7 @@ bitesize = 1 trash = /obj/item/trash/plate list_reagents = list(/datum/reagent/toxin/minttoxin = 2) - filling_color = "#800000" + filling_color = COLOR_RED foodtype = TOXIC | SUGAR /obj/item/reagent_containers/food/snacks/eggwrap @@ -203,7 +203,7 @@ desc = "A cluster of juicy spider eggs. A great side dish for when you care not for your health." icon_state = "spidereggs" list_reagents = list(/datum/reagent/consumable/nutriment = 2, /datum/reagent/toxin = 2) - filling_color = "#008000" + filling_color = COLOR_DARK_GREEN tastes = list("cobwebs" = 1) foodtype = MEAT | TOXIC @@ -231,7 +231,7 @@ icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "sushie_egg" list_reagents = list(/datum/reagent/consumable/nutriment = 6, /datum/reagent/consumable/nutriment/vitamin = 2) - filling_color = "#FF3333" // R225 G051 B051 + filling_color = COLOR_RED_LIGHT // R225 G051 B051 tastes = list("seaweed" = 1, "cobwebs" = 1, "salty" = 2) foodtype = MEAT | VEGETABLES diff --git a/code/modules/food_and_drinks/food/snacks_pastry.dm b/code/modules/food_and_drinks/food/snacks_pastry.dm index e01b770ba..2dce843e9 100644 --- a/code/modules/food_and_drinks/food/snacks_pastry.dm +++ b/code/modules/food_and_drinks/food/snacks_pastry.dm @@ -466,7 +466,7 @@ desc = "The food of choice for the seasoned botanist." icon_state = "dankpocket" list_reagents = list(/datum/reagent/toxin/lipolicide = 3, /datum/reagent/drug/space_drugs = 3, /datum/reagent/consumable/nutriment = 4) - filling_color = "#00FF00" + filling_color = COLOR_GREEN tastes = list("meat" = 2, "dough" = 2) foodtype = GRAIN | VEGETABLES diff --git a/code/modules/food_and_drinks/food/snacks_sushi.dm b/code/modules/food_and_drinks/food/snacks_sushi.dm index d16ca7900..5f67075db 100644 --- a/code/modules/food_and_drinks/food/snacks_sushi.dm +++ b/code/modules/food_and_drinks/food/snacks_sushi.dm @@ -71,7 +71,7 @@ icon = 'modular_citadel/icons/obj/food/food.dmi' icon_state = "sushie_egg" list_reagents = list(/datum/reagent/consumable/nutriment = 3, /datum/reagent/consumable/nutriment/vitamin = 2) - filling_color = "#FF3333" // R225 G051 B051 + filling_color = COLOR_RED_LIGHT // R225 G051 B051 tastes = list("seaweed" = 1, "salty" = 2) foodtype = MEAT | VEGETABLES diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm index 7c34fc8c2..fcee83ca8 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_pastry.dm @@ -358,7 +358,7 @@ datum/crafting_recipe/food/donut/meat desc = "The food of choice for the seasoned botanist." icon_state = "dankpocket" list_reagents = list(/datum/reagent/toxin/lipolicide = 3, /datum/reagent/drug/space_drugs = 3, /datum/reagent/consumable/nutriment = 4) - filling_color = "#00FF00" + filling_color = COLOR_GREEN tastes = list("meat" = 2, "dough" = 2) foodtype = GRAIN | VEGETABLES diff --git a/code/modules/holiday/halloween/jacqueen.dm b/code/modules/holiday/halloween/jacqueen.dm index ba6412570..237ba17ba 100644 --- a/code/modules/holiday/halloween/jacqueen.dm +++ b/code/modules/holiday/halloween/jacqueen.dm @@ -48,17 +48,18 @@ var/active = TRUE //Turn this to false to keep normal mob behavour var/cached_z var/static/blacklisted_items = typecacheof(list( - /obj/singularity, - /obj/structure/destructible/clockwork/massive/ratvar, - /obj/item/projectile, - /obj/item/gun, - /obj/item/antag_spawner, - /obj/effect, - /obj/belly, - /obj/decal, - /obj/docking_port, - /obj/shapeshift_holder, - /obj/screen)) + /obj/singularity, + /obj/structure/destructible/clockwork/massive/ratvar, + /obj/item/projectile, + /obj/item/gun, + /obj/item/antag_spawner, + /obj/effect, + /obj/belly, + /obj/decal, + /obj/docking_port, + /obj/shapeshift_holder, + /obj/screen, + )) /mob/living/simple_animal/jacq/Initialize() ..() diff --git a/code/modules/hydroponics/grown/ambrosia.dm b/code/modules/hydroponics/grown/ambrosia.dm index b8480a190..713d6907d 100644 --- a/code/modules/hydroponics/grown/ambrosia.dm +++ b/code/modules/hydroponics/grown/ambrosia.dm @@ -5,7 +5,7 @@ desc = "This is a plant." icon_state = "ambrosiavulgaris" slot_flags = ITEM_SLOT_HEAD - filling_color = "#008000" + filling_color = COLOR_DARK_GREEN bitesize_mod = 2 foodtype = VEGETABLES tastes = list("ambrosia" = 1) diff --git a/code/modules/hydroponics/grown/banana.dm b/code/modules/hydroponics/grown/banana.dm index f57d69ba6..10e4a9326 100644 --- a/code/modules/hydroponics/grown/banana.dm +++ b/code/modules/hydroponics/grown/banana.dm @@ -21,7 +21,7 @@ icon_state = "banana" item_state = "banana" trash = /obj/item/grown/bananapeel - filling_color = "#FFFF00" + filling_color = COLOR_YELLOW bitesize = 5 foodtype = FRUIT juice_results = list(/datum/reagent/consumable/banana = 0) @@ -115,7 +115,7 @@ icon_state = "banana_blue" item_state = "bluespace_peel" trash = /obj/item/grown/bananapeel/bluespace - filling_color = "#0000FF" + filling_color = COLOR_BLUE tastes = list("banana" = 1) wine_power = 60 wine_flavor = "slippery hypercubes" diff --git a/code/modules/hydroponics/grown/berries.dm b/code/modules/hydroponics/grown/berries.dm index 80792538d..746058427 100644 --- a/code/modules/hydroponics/grown/berries.dm +++ b/code/modules/hydroponics/grown/berries.dm @@ -23,7 +23,7 @@ desc = "Nutritious!" icon_state = "berrypile" gender = PLURAL - filling_color = "#FF00FF" + filling_color = COLOR_MAGENTA bitesize_mod = 2 foodtype = FRUIT juice_results = list(/datum/reagent/consumable/berryjuice = 0) @@ -132,7 +132,7 @@ desc = "Great for toppings!" icon_state = "cherry" gender = PLURAL - filling_color = "#FF0000" + filling_color = COLOR_RED bitesize_mod = 2 foodtype = FRUIT grind_results = list(/datum/reagent/consumable/cherryjelly = 0) @@ -181,7 +181,7 @@ name = "cherry bulbs" desc = "They're like little Space Christmas lights!" icon_state = "cherry_bulb" - filling_color = "#FF0000" + filling_color = COLOR_RED bitesize_mod = 2 foodtype = FRUIT grind_results = list(/datum/reagent/consumable/cherryjelly = 0) diff --git a/code/modules/hydroponics/grown/cannabis.dm b/code/modules/hydroponics/grown/cannabis.dm index fcde38fd2..e5fe3738f 100644 --- a/code/modules/hydroponics/grown/cannabis.dm +++ b/code/modules/hydroponics/grown/cannabis.dm @@ -86,7 +86,7 @@ name = "cannabis leaf" desc = "Recently legalized in most galaxies." icon_state = "cannabis" - filling_color = "#00FF00" + filling_color = COLOR_GREEN bitesize_mod = 2 foodtype = VEGETABLES //i dont really know what else weed could be to be honest tastes = list("cannabis" = 1) diff --git a/code/modules/hydroponics/grown/chili.dm b/code/modules/hydroponics/grown/chili.dm index 8c34c1d36..c7293a448 100644 --- a/code/modules/hydroponics/grown/chili.dm +++ b/code/modules/hydroponics/grown/chili.dm @@ -23,7 +23,7 @@ name = "chili" desc = "It's spicy! Wait... IT'S BURNING ME!!" icon_state = "chilipepper" - filling_color = "#FF0000" + filling_color = COLOR_RED bitesize_mod = 2 foodtype = FRUIT wine_power = 20 diff --git a/code/modules/hydroponics/grown/citrus.dm b/code/modules/hydroponics/grown/citrus.dm index 18bde6e49..00f159d57 100644 --- a/code/modules/hydroponics/grown/citrus.dm +++ b/code/modules/hydroponics/grown/citrus.dm @@ -31,7 +31,7 @@ desc = "It's so sour, your face will twist." foodtype = FRUIT | ANTITOXIC icon_state = "lime" - filling_color = "#00FF00" + filling_color = COLOR_GREEN juice_results = list(/datum/reagent/consumable/limejuice = 0) // Orange diff --git a/code/modules/hydroponics/grown/corn.dm b/code/modules/hydroponics/grown/corn.dm index b9108e516..d21d25eab 100644 --- a/code/modules/hydroponics/grown/corn.dm +++ b/code/modules/hydroponics/grown/corn.dm @@ -21,7 +21,7 @@ desc = "Needs some butter!" icon_state = "corn" cooked_type = /obj/item/reagent_containers/food/snacks/popcorn - filling_color = "#FFFF00" + filling_color = COLOR_YELLOW trash = /obj/item/grown/corncob bitesize_mod = 2 foodtype = VEGETABLES diff --git a/code/modules/hydroponics/grown/eggplant.dm b/code/modules/hydroponics/grown/eggplant.dm index f893ad9e5..e41f30ba7 100644 --- a/code/modules/hydroponics/grown/eggplant.dm +++ b/code/modules/hydroponics/grown/eggplant.dm @@ -20,7 +20,7 @@ name = "eggplant" desc = "Maybe there's a chicken inside?" icon_state = "eggplant" - filling_color = "#800080" + filling_color = COLOR_PURPLE bitesize_mod = 2 foodtype = FRUIT wine_power = 20 diff --git a/code/modules/hydroponics/grown/grass_carpet.dm b/code/modules/hydroponics/grown/grass_carpet.dm index d65280a37..0e001942b 100644 --- a/code/modules/hydroponics/grown/grass_carpet.dm +++ b/code/modules/hydroponics/grown/grass_carpet.dm @@ -23,7 +23,7 @@ name = "grass" desc = "Green and lush." icon_state = "grassclump" - filling_color = "#32CD32" + filling_color = COLOR_LIME bitesize_mod = 2 var/stacktype = /obj/item/stack/tile/grass var/tile_coefficient = 0.02 // 1/50 diff --git a/code/modules/hydroponics/grown/melon.dm b/code/modules/hydroponics/grown/melon.dm index 54cfd0bd9..b795ace69 100644 --- a/code/modules/hydroponics/grown/melon.dm +++ b/code/modules/hydroponics/grown/melon.dm @@ -30,7 +30,7 @@ slices_num = 5 dried_type = null w_class = WEIGHT_CLASS_NORMAL - filling_color = "#008000" + filling_color = COLOR_DARK_GREEN bitesize_mod = 3 foodtype = FRUIT juice_results = list(/datum/reagent/consumable/watermelonjuice = 0) diff --git a/code/modules/hydroponics/grown/misc.dm b/code/modules/hydroponics/grown/misc.dm index 551e831e5..ae249f1f6 100644 --- a/code/modules/hydroponics/grown/misc.dm +++ b/code/modules/hydroponics/grown/misc.dm @@ -380,8 +380,7 @@ icon_state = "coconut_grenade_active" desc = "RUN!" if(!seed.get_gene(/datum/plant_gene/trait/glow)) - light_color = "#FFCC66" //for the fuse - set_light(3, 0.8) + set_light(3, 0.8, COLOR_CREAMY_ORANGE) return //ADDING A FUSE, NADE LOGIC diff --git a/code/modules/hydroponics/grown/mushrooms.dm b/code/modules/hydroponics/grown/mushrooms.dm index c2c29ce25..ab467b3ce 100644 --- a/code/modules/hydroponics/grown/mushrooms.dm +++ b/code/modules/hydroponics/grown/mushrooms.dm @@ -86,7 +86,7 @@ name = "fly amanita" desc = "Amanita Muscaria: Learn poisonous mushrooms by heart. Only pick mushrooms you know." icon_state = "amanita" - filling_color = "#FF0000" + filling_color = COLOR_RED // Destroying Angel /obj/item/seeds/angel diff --git a/code/modules/hydroponics/grown/tea_coffee.dm b/code/modules/hydroponics/grown/tea_coffee.dm index a1e4f3275..acfdaadac 100644 --- a/code/modules/hydroponics/grown/tea_coffee.dm +++ b/code/modules/hydroponics/grown/tea_coffee.dm @@ -21,7 +21,7 @@ name = "Tea Aspera tips" desc = "These aromatic tips of the tea plant can be dried to make tea." icon_state = "tea_aspera_leaves" - filling_color = "#008000" + filling_color = COLOR_DARK_GREEN grind_results = list(/datum/reagent/toxin/teapowder = 0) dry_grind = TRUE can_distill = FALSE diff --git a/code/modules/hydroponics/grown/tobacco.dm b/code/modules/hydroponics/grown/tobacco.dm index e785c7dce..d314e1ce7 100644 --- a/code/modules/hydroponics/grown/tobacco.dm +++ b/code/modules/hydroponics/grown/tobacco.dm @@ -20,7 +20,7 @@ name = "tobacco leaves" desc = "Dry them out to make some smokes." icon_state = "tobacco_leaves" - filling_color = "#008000" + filling_color = COLOR_DARK_GREEN distill_reagent = /datum/reagent/consumable/ethanol/creme_de_menthe //Menthol, I guess. // Space Tobacco diff --git a/code/modules/hydroponics/grown/tomato.dm b/code/modules/hydroponics/grown/tomato.dm index d3525c951..6d3a4eba0 100644 --- a/code/modules/hydroponics/grown/tomato.dm +++ b/code/modules/hydroponics/grown/tomato.dm @@ -45,7 +45,7 @@ desc = "So bloody...so...very...bloody....AHHHH!!!!" icon_state = "bloodtomato" splat_type = /obj/effect/gibspawner/generic - filling_color = "#FF0000" + filling_color = COLOR_RED foodtype = FRUIT | GROSS grind_results = list(/datum/reagent/consumable/ketchup = 0, /datum/reagent/blood/tomato = 0) distill_reagent = /datum/reagent/consumable/ethanol/bloody_mary @@ -71,7 +71,7 @@ desc = "I say blue-mah-to, you say blue-mae-to." icon_state = "bluetomato" splat_type = /obj/effect/decal/cleanable/oil - filling_color = "#0000FF" + filling_color = COLOR_BLUE distill_reagent = /datum/reagent/consumable/laughter // Bluespace Tomato @@ -119,7 +119,7 @@ desc = "I say to-mah-to, you say tom-mae-to... OH GOD IT'S EATING MY LEGS!!" icon_state = "killertomato" var/awakening = 0 - filling_color = "#FF0000" + filling_color = COLOR_RED distill_reagent = /datum/reagent/consumable/ethanol/demonsblood /obj/item/reagent_containers/food/snacks/grown/tomato/killer/attack(mob/M, mob/user, def_zone) diff --git a/code/modules/hydroponics/plant_genes.dm b/code/modules/hydroponics/plant_genes.dm index d81185e41..a3f0cac7d 100644 --- a/code/modules/hydroponics/plant_genes.dm +++ b/code/modules/hydroponics/plant_genes.dm @@ -329,7 +329,7 @@ datum/plant_gene/trait/glow/white /datum/plant_gene/trait/glow/red name = "Red Bioluminescence" - glow_color = "#FF3333" + glow_color = COLOR_RED_LIGHT /datum/plant_gene/trait/glow/yellow //not the disgusting glowshroom yellow hopefully diff --git a/code/modules/integrated_electronics/subtypes/output.dm b/code/modules/integrated_electronics/subtypes/output.dm index 96118b506..02d1e84de 100644 --- a/code/modules/integrated_electronics/subtypes/output.dm +++ b/code/modules/integrated_electronics/subtypes/output.dm @@ -298,11 +298,11 @@ outputs = list() activators = list() inputs_default = list( - "2" = "#FF0000" + "2" = COLOR_RED ) power_draw_idle = 0 // Raises to 1 when lit. spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH - var/led_color = "#FF0000" + var/led_color = COLOR_RED /obj/item/integrated_circuit/output/led/on_data_written() power_draw_idle = get_pin_data(IC_INPUT, 1) ? 1 : 0 diff --git a/code/modules/library/soapstone.dm b/code/modules/library/soapstone.dm index b88a450c1..b1b19c7d2 100644 --- a/code/modules/library/soapstone.dm +++ b/code/modules/library/soapstone.dm @@ -152,9 +152,7 @@ var/hash = md5(hidden_message) var/newcolor = copytext_char(hash, 1, 7) add_atom_colour("#[newcolor]", FIXED_COLOUR_PRIORITY) - light_color = "#[newcolor]" - light_power = 0.3 - set_light(1) + set_light(1, 0.3, "#[newcolor]") /obj/structure/chisel_message/proc/pack() var/list/data = list() diff --git a/code/modules/lighting/lighting_atom.dm b/code/modules/lighting/lighting_atom.dm index 8712a6629..7e9eb5e80 100644 --- a/code/modules/lighting/lighting_atom.dm +++ b/code/modules/lighting/lighting_atom.dm @@ -1,18 +1,8 @@ - -/atom - var/light_power = 1 // Intensity of the light. - var/light_range = 0 // Range in tiles of the light. - var/light_color // Hexadecimal RGB string representing the colour of the light. - - var/tmp/datum/light_source/light // Our light source. Don't fuck with this directly unless you have a good reason! - var/tmp/list/light_sources // Any light sources that are "inside" of us, for example, if src here was a mob that's carrying a flashlight, that flashlight's light source would be part of this list. - // The proc you should always use to set the light of this atom. // Nonesensical value for l_color default, so we can detect if it gets set to null. #define NONSENSICAL_VALUE -99999 /atom/proc/set_light(var/l_range, var/l_power, var/l_color = NONSENSICAL_VALUE) - if(l_range > 0 && l_range < MINIMUM_USEFUL_LIGHT_RANGE) - l_range = MINIMUM_USEFUL_LIGHT_RANGE //Brings the range up to 1.4, which is just barely brighter than the soft lighting that surrounds players. + l_range = max(l_range, MINIMUM_USEFUL_LIGHT_RANGE) //Brings the range up to 1.4, which is just barely brighter than the soft lighting that surrounds players. if (l_power != null) light_power = l_power @@ -107,15 +97,15 @@ return ..() -/atom/proc/flash_lighting_fx(_range = FLASH_LIGHT_RANGE, _power = FLASH_LIGHT_POWER, _color = LIGHT_COLOR_WHITE, _duration = FLASH_LIGHT_DURATION, _reset_lighting = TRUE) +/atom/proc/flash_lighting_fx(_range = FLASH_LIGHT_RANGE, _power = FLASH_LIGHT_POWER, _color = COLOR_WHITE, _duration = FLASH_LIGHT_DURATION, _reset_lighting = TRUE) return -/turf/flash_lighting_fx(_range = FLASH_LIGHT_RANGE, _power = FLASH_LIGHT_POWER, _color = LIGHT_COLOR_WHITE, _duration = FLASH_LIGHT_DURATION, _reset_lighting = TRUE) +/turf/flash_lighting_fx(_range = FLASH_LIGHT_RANGE, _power = FLASH_LIGHT_POWER, _color = COLOR_WHITE, _duration = FLASH_LIGHT_DURATION, _reset_lighting = TRUE) if(!_duration) stack_trace("Lighting FX obj created on a turf without a duration") new /obj/effect/dummy/lighting_obj (src, _color, _range, _power, _duration) -/obj/flash_lighting_fx(_range = FLASH_LIGHT_RANGE, _power = FLASH_LIGHT_POWER, _color = LIGHT_COLOR_WHITE, _duration = FLASH_LIGHT_DURATION, _reset_lighting = TRUE) +/obj/flash_lighting_fx(_range = FLASH_LIGHT_RANGE, _power = FLASH_LIGHT_POWER, _color = COLOR_WHITE, _duration = FLASH_LIGHT_DURATION, _reset_lighting = TRUE) var/temp_color var/temp_power var/temp_range @@ -126,9 +116,38 @@ set_light(_range, _power, _color) addtimer(CALLBACK(src, /atom/proc/set_light, _reset_lighting ? initial(light_range) : temp_range, _reset_lighting ? initial(light_power) : temp_power, _reset_lighting ? initial(light_color) : temp_color), _duration, TIMER_OVERRIDE|TIMER_UNIQUE) -/mob/living/flash_lighting_fx(_range = FLASH_LIGHT_RANGE, _power = FLASH_LIGHT_POWER, _color = LIGHT_COLOR_WHITE, _duration = FLASH_LIGHT_DURATION, _reset_lighting = TRUE) +/mob/living/flash_lighting_fx(_range = FLASH_LIGHT_RANGE, _power = FLASH_LIGHT_POWER, _color = COLOR_WHITE, _duration = FLASH_LIGHT_DURATION, _reset_lighting = TRUE) mob_light(_color, _range, _power, _duration) /mob/living/proc/mob_light(_color, _range, _power, _duration) var/obj/effect/dummy/lighting_obj/moblight/mob_light_obj = new (src, _color, _range, _power, _duration) return mob_light_obj + + +/atom/proc/set_light_range(new_range) + if(new_range == light_range) + return + SEND_SIGNAL(src, COMSIG_ATOM_SET_LIGHT_RANGE, new_range) + . = light_range + light_range = new_range + +/atom/proc/set_light_power(new_power) + if(new_power == light_power) + return + SEND_SIGNAL(src, COMSIG_ATOM_SET_LIGHT_POWER, new_power) + . = light_power + light_power = new_power + +/atom/proc/set_light_color(new_color) + if(new_color == light_color) + return + SEND_SIGNAL(src, COMSIG_ATOM_SET_LIGHT_COLOR, new_color) + . = light_color + light_color = new_color + +/atom/proc/set_light_on(new_value) + if(new_value == light_on) + return + SEND_SIGNAL(src, COMSIG_ATOM_SET_LIGHT_ON, new_value) + . = light_on + light_on = new_value diff --git a/code/modules/mapping/mapping_helpers/network_builder/power_cables.dm b/code/modules/mapping/mapping_helpers/network_builder/power_cables.dm index 538504561..a6269755f 100644 --- a/code/modules/mapping/mapping_helpers/network_builder/power_cables.dm +++ b/code/modules/mapping/mapping_helpers/network_builder/power_cables.dm @@ -7,7 +7,7 @@ name = "power line autobuilder" icon_state = "powerlinebuilder" - color = "#ff0000" + color = COLOR_RED /// Whether or not we forcefully make a knot var/knot = NO_KNOT @@ -82,7 +82,7 @@ // Red /obj/effect/mapping_helpers/network_builder/power_cable/red - color = "#ff0000" + color = COLOR_RED cable_color = "red" /obj/effect/mapping_helpers/network_builder/power_cable/red/knot @@ -108,7 +108,7 @@ // Cyan /obj/effect/mapping_helpers/network_builder/power_cable/cyan - color = "#00ffff" + color = COLOR_CYAN cable_color = "cyan" /obj/effect/mapping_helpers/network_builder/power_cable/cyan/knot @@ -173,7 +173,7 @@ // Yellow /obj/effect/mapping_helpers/network_builder/power_cable/yellow - color = "#ffff00" + color = COLOR_YELLOW cable_color = "yellow" /obj/effect/mapping_helpers/network_builder/power_cable/yellow/knot diff --git a/code/modules/mapping/minimaps.dm b/code/modules/mapping/minimaps.dm index 7a62e9ab4..2d21ca053 100644 --- a/code/modules/mapping/minimaps.dm +++ b/code/modules/mapping/minimaps.dm @@ -53,15 +53,15 @@ meta_icon.DrawBox(meta_color, img_x, img_y) if(istype(T, /turf/closed/wall)) - map_icon.DrawBox("#000000", img_x, img_y) + map_icon.DrawBox(COLOR_BLACK, img_x, img_y) else if(!istype(A, /area/space)) - var/color = A.minimap_color || "#FF00FF" + var/color = A.minimap_color || COLOR_MAGENTA if(locate(/obj/machinery/power/solar) in T) color = "#02026a" if((locate(/obj/effect/spawner/structure/window) in T) || (locate(/obj/structure/grille) in T)) - color = BlendRGB(color, "#000000", 0.5) + color = BlendRGB(color, COLOR_BLACK, 0.5) map_icon.DrawBox(color, img_x, img_y) map_icon.Crop(crop_x1, crop_y1, crop_x2, crop_y2) diff --git a/code/modules/mining/aux_base_camera.dm b/code/modules/mining/aux_base_camera.dm index 02c54ffbd..9275010f6 100644 --- a/code/modules/mining/aux_base_camera.dm +++ b/code/modules/mining/aux_base_camera.dm @@ -29,11 +29,14 @@ /obj/machinery/computer/camera_advanced/base_construction name = "base construction console" desc = "An industrial computer integrated with a camera-assisted rapid construction drone." + icon_screen = "mining" + icon_keyboard = "rd_key" networks = list("ss13") - var/obj/item/construction/rcd/internal/RCD //Internal RCD. The computer passes user commands to this in order to avoid massive copypaste. - circuit = /obj/item/circuitboard/computer/base_construction - off_action = new/datum/action/innate/camera_off/base_construction jump_action = null + off_action = new/datum/action/innate/camera_off/base_construction + circuit = /obj/item/circuitboard/computer/base_construction + light_color = LIGHT_COLOR_PINK + var/obj/item/construction/rcd/internal/RCD //Internal RCD. The computer passes user commands to this in order to avoid massive copypaste. var/datum/action/innate/aux_base/switch_mode/switch_mode_action = new //Action for switching the RCD's build modes var/datum/action/innate/aux_base/build/build_action = new //Action for using the RCD var/datum/action/innate/aux_base/airlock_type/airlock_mode_action = new //Action for setting the airlock type @@ -44,11 +47,6 @@ var/turret_stock = 0 //Turrets in stock var/obj/machinery/computer/auxillary_base/found_aux_console //Tracker for the Aux base console, so the eye can always find it. - icon_screen = "mining" - icon_keyboard = "rd_key" - - light_color = LIGHT_COLOR_PINK - /obj/machinery/computer/camera_advanced/base_construction/Initialize() . = ..() RCD = new(src) diff --git a/code/modules/mining/equipment/kinetic_crusher.dm b/code/modules/mining/equipment/kinetic_crusher.dm index 291db2563..7c8dd8f19 100644 --- a/code/modules/mining/equipment/kinetic_crusher.dm +++ b/code/modules/mining/equipment/kinetic_crusher.dm @@ -23,12 +23,12 @@ attack_verb = list("smashed", "crushed", "cleaved", "chopped", "pulped") sharpness = IS_SHARP actions_types = list(/datum/action/item_action/toggle_light) + light_on = FALSE var/list/trophies = list() var/charged = TRUE var/charge_time = 15 var/detonation_damage = 50 var/backstab_bonus = 30 - var/light_on = FALSE var/brightness_on = 5 //same light as a lit seclite on a PKA /obj/item/twohanded/kinetic_crusher/Initialize() diff --git a/code/modules/mining/equipment/survival_pod.dm b/code/modules/mining/equipment/survival_pod.dm index 64bff7bfe..4879c0e01 100644 --- a/code/modules/mining/equipment/survival_pod.dm +++ b/code/modules/mining/equipment/survival_pod.dm @@ -185,12 +185,12 @@ desc = "A heated storage unit." icon_state = "donkvendor" icon = 'icons/obj/lavaland/donkvendor.dmi' + pixel_y = -4 + max_n_of_items = 10 + flags_1 = NODECONSTRUCT_1 light_range = 5 light_power = 1.2 - light_color = "#DDFFD3" - max_n_of_items = 10 - pixel_y = -4 - flags_1 = NODECONSTRUCT_1 + light_color = COLOR_VERY_PALE_LIME_GREEN var/empty = FALSE /obj/machinery/smartfridge/survival_pod/update_icon() diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm index cf5b8199c..56d414ab4 100644 --- a/code/modules/mining/lavaland/necropolis_chests.dm +++ b/code/modules/mining/lavaland/necropolis_chests.dm @@ -991,7 +991,7 @@ name = "blood contract" icon = 'icons/obj/wizard.dmi' icon_state = "scroll2" - color = "#FF0000" + color = COLOR_RED desc = "Mark your target for death." var/used = FALSE @@ -1030,7 +1030,7 @@ L.mind.objectives += survive log_combat(user, L, "took out a blood contract on", src) to_chat(L, "You've been marked for death! Don't let the demons get you! KILL THEM ALL!") - L.add_atom_colour("#FF0000", ADMIN_COLOUR_PRIORITY) + L.add_atom_colour(COLOR_RED, ADMIN_COLOUR_PRIORITY) var/obj/effect/mine/pickup/bloodbath/B = new(L) INVOKE_ASYNC(B, /obj/effect/mine/pickup/bloodbath/.proc/mineEffect, L) diff --git a/code/modules/mining/minebot.dm b/code/modules/mining/minebot.dm index 6dc6dad18..56d1d4b43 100644 --- a/code/modules/mining/minebot.dm +++ b/code/modules/mining/minebot.dm @@ -34,8 +34,8 @@ healable = 0 loot = list(/obj/effect/decal/cleanable/robot_debris) del_on_death = TRUE + light_on = FALSE var/mode = MINEDRONE_COLLECT - var/light_on = 0 var/obj/item/gun/energy/kinetic_accelerator/minebot/stored_gun /mob/living/simple_animal/hostile/mining_drone/Initialize() diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 1765e6873..9ec6cf6f2 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -708,7 +708,7 @@ /mob/living/carbon/human/proc/electrocution_animation(anim_duration) //Handle mutant parts if possible if(dna && dna.species) - add_atom_colour("#000000", TEMPORARY_COLOUR_PRIORITY) + add_atom_colour(COLOR_BLACK, TEMPORARY_COLOUR_PRIORITY) var/static/mutable_appearance/electrocution_skeleton_anim if(!electrocution_skeleton_anim) electrocution_skeleton_anim = mutable_appearance(icon, "electrocuted_base") @@ -720,7 +720,7 @@ flick_overlay_view(image(icon,src,"electrocuted_generic",ABOVE_MOB_LAYER), src, anim_duration) /mob/living/carbon/human/proc/end_electrocution_animation(mutable_appearance/MA) - remove_atom_colour(TEMPORARY_COLOUR_PRIORITY, "#000000") + remove_atom_colour(TEMPORARY_COLOUR_PRIORITY, COLOR_BLACK) cut_overlay(MA) //medical scan animation diff --git a/code/modules/mob/living/carbon/human/species_types/jellypeople.dm b/code/modules/mob/living/carbon/human/species_types/jellypeople.dm index 51c355e23..102cd6919 100644 --- a/code/modules/mob/living/carbon/human/species_types/jellypeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/jellypeople.dm @@ -449,7 +449,7 @@ name = "luminescent glow" desc = "Tell a coder if you're seeing this." icon_state = "nothing" - light_color = "#FFFFFF" + light_color = COLOR_WHITE light_range = LUMINESCENT_DEFAULT_GLOW /obj/effect/dummy/luminescent_glow/Initialize() diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index b52e5c1da..7ce3ee999 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -71,7 +71,7 @@ var/lamp_max = 10 //Maximum brightness of a borg lamp. Set as a var for easy adjusting. var/lamp_intensity = 0 //Luminosity of the headlamp. 0 is off. Higher settings than the minimum require power. - light_color = "#FFCC66" + light_color = COLOR_CREAMY_ORANGE light_power = 0.8 var/lamp_cooldown = 0 //Flag for if the lamp is on cooldown after being forcibly disabled. diff --git a/code/modules/mob/living/simple_animal/bot/ed209bot.dm b/code/modules/mob/living/simple_animal/bot/ed209bot.dm index 49e75c54c..d7203c46d 100644 --- a/code/modules/mob/living/simple_animal/bot/ed209bot.dm +++ b/code/modules/mob/living/simple_animal/bot/ed209bot.dm @@ -21,7 +21,7 @@ window_name = "Automatic Security Unit v2.6" allow_pai = 0 data_hud_type = DATA_HUD_SECURITY_ADVANCED - path_image_color = "#FF0000" + path_image_color = COLOR_RED var/lastfired = 0 var/shot_delay = 15 diff --git a/code/modules/mob/living/simple_animal/bot/secbot.dm b/code/modules/mob/living/simple_animal/bot/secbot.dm index 0d1a4bda4..eaa9e54c4 100644 --- a/code/modules/mob/living/simple_animal/bot/secbot.dm +++ b/code/modules/mob/living/simple_animal/bot/secbot.dm @@ -19,7 +19,7 @@ window_name = "Automatic Security Unit v1.6" allow_pai = 0 data_hud_type = DATA_HUD_SECURITY_ADVANCED - path_image_color = "#FF0000" + path_image_color = COLOR_RED var/baton_type = /obj/item/melee/baton var/mob/living/carbon/target diff --git a/code/modules/mob/living/simple_animal/guardian/guardiannaming.dm b/code/modules/mob/living/simple_animal/guardian/guardiannaming.dm index f2e1b5725..fa1ecf100 100644 --- a/code/modules/mob/living/simple_animal/guardian/guardiannaming.dm +++ b/code/modules/mob/living/simple_animal/guardian/guardiannaming.dm @@ -55,7 +55,7 @@ /datum/guardianname/carp/aqua suffixcolour = "Aqua" - colour = "#00FFFF" + colour = COLOR_CYAN /datum/guardianname/carp/paleaqua suffixcolour = "Pale Aqua" diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm index dca96574c..d122939fa 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm @@ -29,7 +29,7 @@ Difficulty: Medium icon_living = "miner" icon = 'icons/mob/broadMobs.dmi' mob_biotypes = MOB_ORGANIC|MOB_HUMANOID - light_color = "#E4C7C5" + light_color = COLOR_LIGHT_GRAYISH_RED movement_type = GROUND speak_emote = list("roars") speed = 1 diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm index 74aa59f9d..c777e9f90 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm @@ -144,7 +144,7 @@ Difficulty: Hard walk(src, 0) setDir(get_dir(src, T)) var/obj/effect/temp_visual/decoy/D = new /obj/effect/temp_visual/decoy(loc,src) - animate(D, alpha = 0, color = "#FF0000", transform = matrix()*2, time = 5) + animate(D, alpha = 0, color = COLOR_RED, transform = matrix()*2, time = 5) sleep(5) throw_at(T, get_dist(src, T), 1, src, 0) charging = 0 diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm index 1da1c8326..c3f536f42 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm @@ -338,7 +338,7 @@ Difficulty: Medium layer = BELOW_MOB_LAYER pixel_x = -32 pixel_y = -32 - color = "#FF0000" + color = COLOR_RED duration = 5 /obj/effect/temp_visual/dragon_flight diff --git a/code/modules/mob/living/simple_animal/hostile/syndicate.dm b/code/modules/mob/living/simple_animal/hostile/syndicate.dm index 811dd2611..c4187fa0b 100644 --- a/code/modules/mob/living/simple_animal/hostile/syndicate.dm +++ b/code/modules/mob/living/simple_animal/hostile/syndicate.dm @@ -11,7 +11,7 @@ /obj/effect/light_emitter/red_energy_sword //used so there's a combination of both their head light and light coming off the energy sword set_luminosity = 2 set_cap = 2.5 - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED /mob/living/simple_animal/hostile/syndicate @@ -115,7 +115,7 @@ attacktext = "slashes" attack_sound = 'sound/weapons/blade1.ogg' armour_penetration = 35 - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED status_flags = 0 var/obj/effect/light_emitter/red_energy_sword/sord diff --git a/code/modules/modular_computers/computers/item/computer.dm b/code/modules/modular_computers/computers/item/computer.dm index 466290a52..1542b6fee 100644 --- a/code/modules/modular_computers/computers/item/computer.dm +++ b/code/modules/modular_computers/computers/item/computer.dm @@ -4,6 +4,12 @@ /obj/item/modular_computer name = "modular microcomputer" desc = "A small portable microcomputer." + icon = 'icons/obj/computer.dmi' + icon_state = "laptop-open" + light_on = FALSE + integrity_failure = 50 + max_integrity = 100 + armor = list("melee" = 0, "bullet" = 20, "laser" = 20, "energy" = 100, "bomb" = 0, "bio" = 100, "rad" = 100, "fire" = 0, "acid" = 0) var/enabled = 0 // Whether the computer is turned on. var/screen_on = 1 // Whether the computer is active/opened/it's screen is on. @@ -21,18 +27,12 @@ // must have it's own DMI file. Icon states must be called exactly the same in all files, but may look differently // If you create a program which is limited to Laptops and Consoles you don't have to add it's icon_state overlay for Tablets too, for example. - icon = 'icons/obj/computer.dmi' - icon_state = "laptop-open" var/icon_state_unpowered = null // Icon state when the computer is turned off. var/icon_state_powered = null // Icon state when the computer is turned on. var/icon_state_menu = "menu" // Icon state overlay when the computer is turned on, but no program is loaded that would override the screen. var/max_hardware_size = 0 // Maximal hardware w_class. Tablets/PDAs have 1, laptops 2, consoles 4. var/steel_sheet_cost = 5 // Amount of steel sheets refunded when disassembling an empty frame of this computer. - integrity_failure = 50 - max_integrity = 100 - armor = list("melee" = 0, "bullet" = 20, "laser" = 20, "energy" = 100, "bomb" = 0, "bio" = 100, "rad" = 100, "fire" = 0, "acid" = 0) - // Important hardware (must be installed for computer to work) // Optional hardware (improves functionality, but is not critical for computer to work) @@ -42,7 +42,6 @@ var/list/idle_threads // Idle programs on background. They still receive process calls but can't be interacted with. var/obj/physical = null // Object that represents our computer. It's used for Adjacent() and UI visibility checks. var/has_light = FALSE //If the computer has a flashlight/LED light/what-have-you installed - var/light_on = FALSE //If that light is enabled var/comp_light_luminosity = 3 //The brightness of that light var/comp_light_color //The color of that light diff --git a/code/modules/modular_computers/computers/item/computer_ui.dm b/code/modules/modular_computers/computers/item/computer_ui.dm index 517fab278..af0ebe960 100644 --- a/code/modules/modular_computers/computers/item/computer_ui.dm +++ b/code/modules/modular_computers/computers/item/computer_ui.dm @@ -155,7 +155,7 @@ to_chat(user, "That color is too dark! Choose a lighter one.") new_color = null comp_light_color = new_color - light_color = new_color + set_light_color(new_color) update_light() return TRUE else diff --git a/code/modules/photography/camera/camera.dm b/code/modules/photography/camera/camera.dm index d1e868915..26eb77619 100644 --- a/code/modules/photography/camera/camera.dm +++ b/code/modules/photography/camera/camera.dm @@ -9,7 +9,7 @@ item_state = "camera" lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi' - light_color = LIGHT_COLOR_WHITE + light_color = COLOR_WHITE light_power = FLASH_LIGHT_POWER w_class = WEIGHT_CLASS_SMALL flags_1 = CONDUCT_1 diff --git a/code/modules/pool/pool_noodles.dm b/code/modules/pool/pool_noodles.dm index 611835479..273179fd4 100644 --- a/code/modules/pool/pool_noodles.dm +++ b/code/modules/pool/pool_noodles.dm @@ -6,7 +6,7 @@ name = "pool noodle" desc = "A strange, bulky, bendable toy that can annoy people." force = 0 - color = "#000000" + color = COLOR_BLACK w_class = WEIGHT_CLASS_SMALL throwforce = 1 throw_speed = 10 //weeee diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index ac9a37eb2..8db4f43b9 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -333,16 +333,15 @@ switch(charging) if(APC_NOT_CHARGING) - light_color = LIGHT_COLOR_RED + set_light_color(COLOR_SOFT_RED) if(APC_CHARGING) - light_color = LIGHT_COLOR_BLUE + set_light_color(LIGHT_COLOR_BLUE) if(APC_FULLY_CHARGED) - light_color = LIGHT_COLOR_GREEN - set_light(lon_range) + set_light_color(LIGHT_COLOR_GREEN) + set_light(l_range=lon_range) lighteffect.color = light_color else if(update_state & UPSTATE_BLUESCREEN) - light_color = LIGHT_COLOR_BLUE - set_light(lon_range) + set_light(l_range=lon_range, l_color=LIGHT_COLOR_BLUE) else set_light(0) diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index d2f8631b1..94847b729 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -1,12 +1,12 @@ GLOBAL_LIST_INIT(cable_colors, list( - "yellow" = "#ffff00", + "yellow" = COLOR_YELLOW, "green" = "#00aa00", "blue" = "#1919c8", "pink" = "#ff3cc8", "orange" = "#ff8000", - "cyan" = "#00ffff", + "cyan" = COLOR_CYAN, "white" = "#ffffff", - "red" = "#ff0000" + "red" = COLOR_RED )) /////////////////////////////// @@ -48,11 +48,11 @@ By design, d1 is the smallest direction and d2 is the highest var/obj/item/stack/cable_coil/stored var/cable_color = "red" - color = "#ff0000" + color = COLOR_RED /obj/structure/cable/yellow cable_color = "yellow" - color = "#ffff00" + color = COLOR_YELLOW /obj/structure/cable/green cable_color = "green" @@ -72,7 +72,7 @@ By design, d1 is the smallest direction and d2 is the highest /obj/structure/cable/cyan cable_color = "cyan" - color = "#00ffff" + color = COLOR_CYAN /obj/structure/cable/white cable_color = "white" @@ -770,11 +770,11 @@ GLOBAL_LIST_INIT(cable_coil_recipes, list (new/datum/stack_recipe("cable restrai /obj/item/stack/cable_coil/red item_color = "red" - color = "#ff0000" + color = COLOR_RED /obj/item/stack/cable_coil/yellow item_color = "yellow" - color = "#ffff00" + color = COLOR_YELLOW /obj/item/stack/cable_coil/blue item_color = "blue" @@ -794,7 +794,7 @@ GLOBAL_LIST_INIT(cable_coil_recipes, list (new/datum/stack_recipe("cable restrai /obj/item/stack/cable_coil/cyan item_color = "cyan" - color = "#00ffff" + color = COLOR_CYAN /obj/item/stack/cable_coil/white item_color = "white" @@ -821,11 +821,11 @@ GLOBAL_LIST_INIT(cable_coil_recipes, list (new/datum/stack_recipe("cable restrai /obj/item/stack/cable_coil/cut/red item_color = "red" - color = "#ff0000" + color = COLOR_RED /obj/item/stack/cable_coil/cut/yellow item_color = "yellow" - color = "#ffff00" + color = COLOR_YELLOW /obj/item/stack/cable_coil/cut/blue item_color = "blue" @@ -845,7 +845,7 @@ GLOBAL_LIST_INIT(cable_coil_recipes, list (new/datum/stack_recipe("cable restrai /obj/item/stack/cable_coil/cut/cyan item_color = "cyan" - color = "#00ffff" + color = COLOR_CYAN /obj/item/stack/cable_coil/cut/white item_color = "white" diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index 0db3695fc..152ee0668 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -219,7 +219,7 @@ var/emergency_mode = FALSE // if true, the light is in emergency mode var/no_emergency = FALSE // if true, this light cannot ever have an emergency mode var/bulb_emergency_brightness_mul = 0.6 // multiplier for this light's base brightness in emergency power mode - var/bulb_emergency_colour = "#FF3232" // determines the colour of the light while it's in emergency mode + var/bulb_emergency_colour = COLOR_VIVID_RED // determines the colour of the light while it's in emergency mode var/bulb_emergency_pow_mul = 0.75 // the multiplier for determining the light's power in emergency mode var/bulb_emergency_pow_min = 0.5 // the minimum value for the light's power in emergency mode diff --git a/code/modules/projectiles/pins.dm b/code/modules/projectiles/pins.dm index 381ec09ce..a7cf466ac 100644 --- a/code/modules/projectiles/pins.dm +++ b/code/modules/projectiles/pins.dm @@ -121,7 +121,7 @@ /obj/item/firing_pin/clown name = "hilarious firing pin" desc = "Advanced clowntech that can convert any firearm into a far more useful object." - color = "#FFFF00" + color = COLOR_YELLOW fail_message = "HONK!" force_replace = TRUE diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm index 43ca5cfd5..a09ff1ff5 100644 --- a/code/modules/projectiles/projectile/beams.dm +++ b/code/modules/projectiles/projectile/beams.dm @@ -10,7 +10,7 @@ flag = "laser" eyeblur = 2 impact_effect_type = /obj/effect/temp_visual/impact_effect/red_laser - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED ricochets_max = 50 //Honk! ricochet_chance = 80 is_reflectable = TRUE @@ -143,7 +143,7 @@ icon_state = "laser" suit_types = list(/obj/item/clothing/suit/bluetag) impact_effect_type = /obj/effect/temp_visual/impact_effect/red_laser - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED tracer_type = /obj/effect/projectile/tracer/laser muzzle_type = /obj/effect/projectile/muzzle/laser impact_type = /obj/effect/projectile/impact/laser @@ -182,7 +182,7 @@ /obj/item/projectile/beam/instakill/red icon_state = "red_laser" impact_effect_type = /obj/effect/temp_visual/impact_effect/red_laser - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED /obj/item/projectile/beam/instakill/on_hit(atom/target) . = ..() diff --git a/code/modules/projectiles/projectile/bullets/shotgun.dm b/code/modules/projectiles/projectile/bullets/shotgun.dm index e7dbb75dc..8acc43411 100644 --- a/code/modules/projectiles/projectile/bullets/shotgun.dm +++ b/code/modules/projectiles/projectile/bullets/shotgun.dm @@ -24,7 +24,7 @@ jitter = 20 range = 7 icon_state = "spark" - color = "#FFFF00" + color = COLOR_YELLOW /obj/item/projectile/bullet/shotgun_meteorslug name = "meteorslug" diff --git a/code/modules/projectiles/projectile/energy.dm b/code/modules/projectiles/projectile/energy.dm index 9de878cb4..ca2d41390 100644 --- a/code/modules/projectiles/projectile/energy.dm +++ b/code/modules/projectiles/projectile/energy.dm @@ -12,7 +12,7 @@ /obj/item/projectile/energy/electrode name = "electrode" icon_state = "spark" - color = "#FFFF00" + color = COLOR_YELLOW nodamage = 1 knockdown = 100 stutter = 5 diff --git a/code/modules/projectiles/projectile/energy/nuclear_particle.dm b/code/modules/projectiles/projectile/energy/nuclear_particle.dm index 104cd6345..334489a34 100644 --- a/code/modules/projectiles/projectile/energy/nuclear_particle.dm +++ b/code/modules/projectiles/projectile/energy/nuclear_particle.dm @@ -9,12 +9,12 @@ hitsound = 'sound/weapons/emitter2.ogg' impact_type = /obj/effect/projectile/impact/xray var/static/list/particle_colors = list( - "red" = "#FF0000", - "blue" = "#00FF00", - "green" = "#0000FF", - "yellow" = "#FFFF00", - "cyan" = "#00FFFF", - "purple" = "#FF00FF" + "red" = COLOR_RED, + "blue" = COLOR_GREEN, + "green" = COLOR_BLUE, + "yellow" = COLOR_YELLOW, + "cyan" = COLOR_CYAN, + "purple" = COLOR_MAGENTA ) /obj/item/projectile/energy/nuclear_particle/Initialize() diff --git a/code/modules/projectiles/projectile/energy/stun.dm b/code/modules/projectiles/projectile/energy/stun.dm index 278356054..677154638 100644 --- a/code/modules/projectiles/projectile/energy/stun.dm +++ b/code/modules/projectiles/projectile/energy/stun.dm @@ -1,7 +1,7 @@ /obj/item/projectile/energy/electrode name = "electrode" icon_state = "spark" - color = "#FFFF00" + color = COLOR_YELLOW nodamage = 1 knockdown = 60 knockdown_stamoverride = 36 diff --git a/code/modules/projectiles/projectile/special/gravity.dm b/code/modules/projectiles/projectile/special/gravity.dm index 0ef9bc665..ae186596f 100644 --- a/code/modules/projectiles/projectile/special/gravity.dm +++ b/code/modules/projectiles/projectile/special/gravity.dm @@ -6,7 +6,7 @@ damage = 0 damage_type = BRUTE nodamage = 1 - color = "#33CCFF" + color = COLOR_BLUE_LIGHT var/turf/T var/power = 4 var/list/thrown_items = list() diff --git a/code/modules/projectiles/projectile/special/hallucination.dm b/code/modules/projectiles/projectile/special/hallucination.dm index a6da1f26b..e545452c6 100644 --- a/code/modules/projectiles/projectile/special/hallucination.dm +++ b/code/modules/projectiles/projectile/special/hallucination.dm @@ -158,7 +158,7 @@ name = "electrode" damage_type = BURN hal_icon_state = "spark" - color = "#FFFF00" + color = COLOR_YELLOW hal_fire_sound = 'sound/weapons/taser.ogg' hal_hitsound = 'sound/weapons/taserhit.ogg' hal_hitsound_wall = null diff --git a/code/modules/projectiles/projectile/special/wormhole.dm b/code/modules/projectiles/projectile/special/wormhole.dm index 0832f0cc7..e5e3f2fc0 100644 --- a/code/modules/projectiles/projectile/special/wormhole.dm +++ b/code/modules/projectiles/projectile/special/wormhole.dm @@ -6,7 +6,7 @@ nodamage = TRUE pass_flags = PASSGLASS | PASSTABLE | PASSGRILLE | PASSMOB var/obj/item/gun/energy/wormhole_projector/gun - color = "#33CCFF" + color = COLOR_BLUE_LIGHT tracer_type = /obj/effect/projectile/tracer/wormhole impact_type = /obj/effect/projectile/impact/wormhole muzzle_type = /obj/effect/projectile/muzzle/wormhole diff --git a/code/modules/reagents/chemistry/reagents.dm b/code/modules/reagents/chemistry/reagents.dm index 6c518c8e9..25866664c 100644 --- a/code/modules/reagents/chemistry/reagents.dm +++ b/code/modules/reagents/chemistry/reagents.dm @@ -27,7 +27,7 @@ GLOBAL_LIST_INIT(name2reagent, build_name2reagent()) var/list/data var/current_cycle = 0 var/volume = 0 //pretend this is moles - var/color = "#000000" // rgb: 0, 0, 0 + var/color = COLOR_BLACK var/can_synth = TRUE // can this reagent be synthesized? (for example: odysseus syringe gun) var/metabolization_rate = REAGENTS_METABOLISM //how fast the reagent is metabolized by the mob var/overrides_metab = 0 diff --git a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm index 8547e5117..c7c5a0b3c 100644 --- a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm @@ -1514,7 +1514,7 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/triple_sec name = "Triple Sec" description = "A sweet and vibrant orange liqueur." - color = "#ffcc66" + color = COLOR_CREAMY_ORANGE boozepwr = 30 taste_description = "a warm flowery orange taste which recalls the ocean air and summer wind of the caribbean" glass_icon_state = "glass_orange" @@ -1576,7 +1576,7 @@ datum/reagent/consumable/ethanol/creme_de_coconut /datum/reagent/consumable/ethanol/quintuple_sec name = "Quintuple Sec" description = "Law, Order, Alcohol, and Police Brutality distilled into one single elixir of JUSTICE." - color = "#ff3300" + color = COLOR_MOSTLY_PURE_RED boozepwr = 80 quality = DRINK_FANTASTIC taste_description = "THE LAW" @@ -1622,7 +1622,7 @@ datum/reagent/consumable/ethanol/creme_de_coconut /datum/reagent/consumable/ethanol/bastion_bourbon name = "Bastion Bourbon" description = "Soothing hot herbal brew with restorative properties. Hints of citrus and berry flavors." - color = "#00FFFF" + color = COLOR_CYAN boozepwr = 30 quality = DRINK_FANTASTIC taste_description = "hot herbal brew with a hint of fruit" @@ -1661,7 +1661,7 @@ datum/reagent/consumable/ethanol/creme_de_coconut /datum/reagent/consumable/ethanol/squirt_cider name = "Squirt Cider" description = "Fermented squirt extract with a nose of stale bread and ocean water. Whatever a squirt is." - color = "#FF0000" + color = COLOR_RED boozepwr = 40 taste_description = "stale bread with a staler aftertaste" nutriment_factor = 2 * REAGENTS_METABOLISM diff --git a/code/modules/reagents/chemistry/reagents/blob_reagents.dm b/code/modules/reagents/chemistry/reagents/blob_reagents.dm index fba0b47eb..0ea03dc1d 100644 --- a/code/modules/reagents/chemistry/reagents/blob_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/blob_reagents.dm @@ -4,7 +4,7 @@ description = "shouldn't exist and you should adminhelp immediately." color = "#FFFFFF" taste_description = "bad code and slime" - var/complementary_color = "#000000" //a color that's complementary to the normal blob color + var/complementary_color = COLOR_BLACK //a color that's complementary to the normal blob color var/shortdesc = null //just damage and on_mob effects, doesn't include special, blob-tile only effects var/effectdesc = null //any long, blob-tile specific effects var/analyzerdescdamage = "Unknown. Report this bug to a coder, or just adminhelp." diff --git a/code/modules/reagents/chemistry/reagents/drink_reagents.dm b/code/modules/reagents/chemistry/reagents/drink_reagents.dm index 2cb562cff..ee77db3a7 100644 --- a/code/modules/reagents/chemistry/reagents/drink_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drink_reagents.dm @@ -481,7 +481,7 @@ /datum/reagent/consumable/space_up name = "Space-Up" description = "Tastes like a hull breach in your mouth." - color = "#00FF00" // rgb: 0, 255, 0 + color = COLOR_GREEN // rgb: 0, 255, 0 taste_description = "cherry soda" glass_icon_state = "space-up_glass" glass_name = "glass of Space-Up" @@ -679,7 +679,7 @@ /datum/reagent/consumable/chocolatepudding name = "Chocolate Pudding" description = "A great dessert for chocolate lovers." - color = "#800000" + color = COLOR_RED quality = DRINK_VERYGOOD nutriment_factor = 4 * REAGENTS_METABOLISM taste_description = "sweet chocolate" diff --git a/code/modules/reagents/chemistry/reagents/food_reagents.dm b/code/modules/reagents/chemistry/reagents/food_reagents.dm index 36c0945f6..d701df7d7 100644 --- a/code/modules/reagents/chemistry/reagents/food_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/food_reagents.dm @@ -428,7 +428,7 @@ name = "Sprinkles" value = 3 description = "Multi-colored little bits of sugar, commonly found on donuts. Loved by cops." - color = "#FF00FF" // rgb: 255, 0, 255 + color = COLOR_MAGENTA // rgb: 255, 0, 255 taste_description = "childhood whimsy" /datum/reagent/consumable/sprinkles/on_mob_life(mob/living/carbon/M) diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index f6c1b89c3..f557a173c 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -82,7 +82,7 @@ /datum/reagent/medicine/synaptizine name = "Synaptizine" description = "Increases resistance to stuns as well as reducing drowsiness and hallucinations." - color = "#FF00FF" + color = COLOR_MAGENTA pH = 4 /datum/reagent/medicine/synaptizine/on_mob_life(mob/living/carbon/M) @@ -458,7 +458,7 @@ datum/reagent/medicine/styptic_powder/overdose_start(mob/living/M) name = "Charcoal" description = "Heals toxin damage as well as slowly removing any other chemicals the patient has in their bloodstream." reagent_state = LIQUID - color = "#000000" + color = COLOR_BLACK metabolization_rate = 0.5 * REAGENTS_METABOLISM taste_description = "ash" pH = 5 @@ -598,7 +598,7 @@ datum/reagent/medicine/styptic_powder/overdose_start(mob/living/M) name = "Salbutamol" description = "Rapidly restores oxygen deprivation as well as preventing more of it to an extent." reagent_state = LIQUID - color = "#00FFFF" + color = COLOR_CYAN metabolization_rate = 0.25 * REAGENTS_METABOLISM pH = 2 @@ -786,7 +786,7 @@ datum/reagent/medicine/styptic_powder/overdose_start(mob/living/M) name = "Atropine" description = "If a patient is in critical condition, rapidly heals all damage types as well as regulating oxygen in the body. Excellent for stabilizing wounded patients." reagent_state = LIQUID - color = "#000000" + color = COLOR_BLACK metabolization_rate = 0.25 * REAGENTS_METABOLISM overdose_threshold = 35 pH = 12 diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm index b6094aaee..bd287254f 100644 --- a/code/modules/reagents/chemistry/reagents/other_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm @@ -1584,7 +1584,7 @@ /datum/reagent/plantnutriment name = "Generic nutriment" description = "Some kind of nutriment. You can't really tell what it is. You should probably report it, along with how you obtained it." - color = "#000000" // RBG: 0, 0, 0 + color = COLOR_BLACK var/tox_prob = 0 taste_description = "plant food" pH = 3 @@ -1694,7 +1694,7 @@ name = "Colorful Reagent" description = "Thoroughly sample the rainbow." reagent_state = LIQUID - color = "#FFFF00" + color = COLOR_YELLOW var/list/random_color_list = list("#00aedb","#a200ff","#f47835","#d41243","#d11141","#00b159","#00aedb","#f37735","#ffc425","#008744","#0057e7","#d62d20","#ffa700") taste_description = "rainbows" var/no_mob_color = FALSE @@ -2020,7 +2020,7 @@ /datum/reagent/growthserum //neutered to use as a chemical base for sizecode shit name = "Growth Serum" description = "A commercial chemical designed to help older men in the bedroom."//not really it just makes you a giant - color = "#ff0000"//strong red. rgb 255, 0, 0 + color = COLOR_RED//strong red. rgb 255, 0, 0 taste_description = "bitterness" // apparently what viagra tastes like /datum/reagent/plastic_polymers @@ -2176,7 +2176,7 @@ name = "UNKNOWN" description = "404: Chemical not found." metabolization_rate = REAGENTS_METABOLISM - color = "#0000FF" + color = COLOR_BLUE can_synth = FALSE var/datum/dna/original_dna var/reagent_ticks = 0 diff --git a/code/modules/reagents/chemistry/reagents/pyrotechnic_reagents.dm b/code/modules/reagents/chemistry/reagents/pyrotechnic_reagents.dm index 5e8249009..a33d07b85 100644 --- a/code/modules/reagents/chemistry/reagents/pyrotechnic_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/pyrotechnic_reagents.dm @@ -26,7 +26,7 @@ name = "Stabilizing Agent" description = "Keeps unstable chemicals stable. This does not work on everything." reagent_state = LIQUID - color = "#FFFF00" + color = COLOR_YELLOW value = 3 taste_description = "metal" @@ -92,7 +92,7 @@ name = "Black Powder" description = "Explodes. Violently." reagent_state = LIQUID - color = "#000000" + color = COLOR_BLACK value = 5 metabolization_rate = 0.05 taste_description = "salt" diff --git a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm index 0a57d5b76..e8db201f1 100644 --- a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm @@ -27,7 +27,7 @@ /datum/reagent/toxin/mutagen name = "Unstable mutagen" description = "Might cause unpredictable mutations. Keep away from children." - color = "#00FF00" + color = COLOR_GREEN toxpwr = 0 taste_description = "slime" taste_mult = 0.9 @@ -562,7 +562,7 @@ name = "Sodium Thiopental" description = "Sodium Thiopental induces heavy weakness in its target as well as unconsciousness." reagent_state = LIQUID - color = "#6496FA" + color = LIGHT_COLOR_BLUE metabolization_rate = 0.75 * REAGENTS_METABOLISM toxpwr = 0 diff --git a/code/modules/reagents/reagent_containers/rags.dm b/code/modules/reagents/reagent_containers/rags.dm index 27bf460e8..c2a40abeb 100644 --- a/code/modules/reagents/reagent_containers/rags.dm +++ b/code/modules/reagents/reagent_containers/rags.dm @@ -174,7 +174,7 @@ force = initial(force) + round(reagents.total_volume * 0.5) /obj/item/reagent_containers/rag/towel/random - possible_colors = list("#FF0000","#FF7F00","#FFFF00","#00FF00","#0000FF","#4B0082","#8F00FF") + possible_colors = list(COLOR_RED,"#FF7F00",COLOR_YELLOW,COLOR_GREEN,COLOR_BLUE,"#4B0082","#8F00FF") /obj/item/reagent_containers/rag/towel/syndicate name = "syndicate towel" diff --git a/code/modules/research/xenobiology/crossbreeding/__corecross.dm b/code/modules/research/xenobiology/crossbreeding/__corecross.dm index 17a6b77bf..4c2f78c48 100644 --- a/code/modules/research/xenobiology/crossbreeding/__corecross.dm +++ b/code/modules/research/xenobiology/crossbreeding/__corecross.dm @@ -51,15 +51,15 @@ To add a crossbreed: if("metal") itemcolor = "#7E7E7E" if("yellow") - itemcolor = "#FFFF00" + itemcolor = COLOR_YELLOW if("dark purple") itemcolor = "#551A8B" if("dark blue") - itemcolor = "#0000FF" + itemcolor = COLOR_BLUE if("silver") itemcolor = "#D3D3D3" if("bluespace") - itemcolor = "#32CD32" + itemcolor = COLOR_LIME if("sepia") itemcolor = "#704214" if("cerulean") @@ -67,9 +67,9 @@ To add a crossbreed: if("pyrite") itemcolor = "#FAFAD2" if("red") - itemcolor = "#FF0000" + itemcolor = COLOR_RED if("green") - itemcolor = "#00FF00" + itemcolor = COLOR_GREEN if("pink") itemcolor = "#FF69B4" if("gold") @@ -77,7 +77,7 @@ To add a crossbreed: if("oil") itemcolor = "#505050" if("black") - itemcolor = "#000000" + itemcolor = COLOR_BLACK if("light pink") itemcolor = "#FFB6C1" if("adamantine") @@ -113,7 +113,7 @@ To add a crossbreed: /obj/item/slimecrossbeaker/bloodpack //Pack of 50u blood. Deletes on empty. name = "blood extract" desc = "A sphere of liquid blood, somehow managing to stay together." - color = "#FF0000" + color = COLOR_RED list_reagents = list(/datum/reagent/blood = 50) /obj/item/slimecrossbeaker/pax //5u synthpax. @@ -125,7 +125,7 @@ To add a crossbreed: /obj/item/slimecrossbeaker/omnizine //15u omnizine. name = "healing extract" desc = "A gelatinous extract of pure omnizine." - color = "#FF00FF" + color = COLOR_MAGENTA list_reagents = list(/datum/reagent/medicine/omnizine = 15) /obj/item/slimecrossbeaker/autoinjector //As with the above, but automatically injects whomever it is used on with contents. @@ -159,7 +159,7 @@ To add a crossbreed: ignore_flags = TRUE //It is, after all, intended to heal. name = "mending solution" desc = "A strange glob of sweet-smelling semifluid, which seems to stick to skin rather easily." - color = "#FF00FF" + color = COLOR_MAGENTA list_reagents = list(/datum/reagent/medicine/regen_jelly = 20) /obj/item/slimecrossbeaker/autoinjector/slimejelly //Primarily for slimepeople, but you do you. @@ -167,7 +167,7 @@ To add a crossbreed: ignore_flags = TRUE name = "slime jelly bubble" desc = "A sphere of slime jelly. It seems to stick to your skin, but avoids other surfaces." - color = "#00FF00" + color = COLOR_GREEN list_reagents = list(/datum/reagent/toxin/slimejelly = 50) /obj/item/slimecrossbeaker/autoinjector/peaceandlove @@ -183,5 +183,5 @@ To add a crossbreed: /obj/item/slimecrossbeaker/autoinjector/slimestimulant name = "invigorating gel" desc = "A bubbling purple mixture, designed to heal and boost movement." - color = "#FF00FF" + color = COLOR_MAGENTA list_reagents = list(/datum/reagent/medicine/regen_jelly = 30, /datum/reagent/drug/methamphetamine = 9) diff --git a/code/modules/research/xenobiology/crossbreeding/_status_effects.dm b/code/modules/research/xenobiology/crossbreeding/_status_effects.dm index 0bb25a4b2..53ba2a17c 100644 --- a/code/modules/research/xenobiology/crossbreeding/_status_effects.dm +++ b/code/modules/research/xenobiology/crossbreeding/_status_effects.dm @@ -502,7 +502,7 @@ datum/status_effect/rebreathing/tick() is_healing = TRUE if(is_healing) examine_text = "SUBJECTPRONOUN is regenerating slowly, purplish goo filling in small injuries!" - new /obj/effect/temp_visual/heal(get_turf(owner), "#FF0000") + new /obj/effect/temp_visual/heal(get_turf(owner), COLOR_RED) else examine_text = null ..() diff --git a/code/modules/research/xenobiology/crossbreeding/charged.dm b/code/modules/research/xenobiology/crossbreeding/charged.dm index 5dd0f5e80..147d2fa8b 100644 --- a/code/modules/research/xenobiology/crossbreeding/charged.dm +++ b/code/modules/research/xenobiology/crossbreeding/charged.dm @@ -329,7 +329,7 @@ Charged extracts: to_chat(user, "You slather the blue gunk over the [C], making it airtight.") C.name = "pressure-resistant [C.name]" C.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) - C.add_atom_colour("#000080", FIXED_COLOUR_PRIORITY) + C.add_atom_colour(COLOR_NAVY, FIXED_COLOUR_PRIORITY) C.min_cold_protection_temperature = SPACE_SUIT_MIN_TEMP_PROTECT C.cold_protection = C.body_parts_covered C.clothing_flags |= STOPSPRESSUREDAMAGE @@ -363,7 +363,7 @@ Charged extracts: to_chat(user, "You slather the red gunk over the [C], making it lavaproof.") C.name = "lavaproof [C.name]" C.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) - C.add_atom_colour("#800000", FIXED_COLOUR_PRIORITY) + C.add_atom_colour(COLOR_RED, FIXED_COLOUR_PRIORITY) C.resistance_flags |= LAVA_PROOF if (istype(C, /obj/item/clothing)) var/obj/item/clothing/CL = C diff --git a/code/modules/research/xenobiology/crossbreeding/consuming.dm b/code/modules/research/xenobiology/crossbreeding/consuming.dm index 0e8bf1e11..3e00f4e1b 100644 --- a/code/modules/research/xenobiology/crossbreeding/consuming.dm +++ b/code/modules/research/xenobiology/crossbreeding/consuming.dm @@ -283,25 +283,25 @@ Consuming extracts: switch(rand(1,7)) if(1) tastemessage = "red dye" - colour = "#FF0000" + colour = COLOR_RED if(2) tastemessage = "orange dye" colour = "#FFA500" if(3) tastemessage = "yellow dye" - colour = "#FFFF00" + colour = COLOR_YELLOW if(4) tastemessage = "green dye" - colour = "#00FF00" + colour = COLOR_GREEN if(5) tastemessage = "blue dye" - colour = "#0000FF" + colour = COLOR_BLUE if(6) tastemessage = "indigo dye" colour = "#4B0082" if(7) tastemessage = "violet dye" - colour = "#FF00FF" + colour = COLOR_MAGENTA taste += tastemessage /obj/item/slime_cookie/pyrite/do_effect(mob/living/M, mob/user) diff --git a/code/modules/research/xenobiology/crossbreeding/prismatic.dm b/code/modules/research/xenobiology/crossbreeding/prismatic.dm index 65e66aa0e..10453710b 100644 --- a/code/modules/research/xenobiology/crossbreeding/prismatic.dm +++ b/code/modules/research/xenobiology/crossbreeding/prismatic.dm @@ -46,7 +46,7 @@ Prismatic extracts: colour = "metal" /obj/item/slimecross/prismatic/yellow - paintcolor = "#FFFF00" + paintcolor = COLOR_YELLOW colour = "yellow" /obj/item/slimecross/prismatic/darkpurple @@ -54,7 +54,7 @@ Prismatic extracts: colour = "dark purple" /obj/item/slimecross/prismatic/darkblue - paintcolor = "#0000FF" + paintcolor = COLOR_BLUE colour = "dark blue" /obj/item/slimecross/prismatic/silver @@ -62,7 +62,7 @@ Prismatic extracts: colour = "silver" /obj/item/slimecross/prismatic/bluespace - paintcolor = "#32CD32" + paintcolor = COLOR_LIME colour = "bluespace" /obj/item/slimecross/prismatic/sepia @@ -78,11 +78,11 @@ Prismatic extracts: colour = "pyrite" /obj/item/slimecross/prismatic/red - paintcolor = "#FF0000" + paintcolor = COLOR_RED colour = "red" /obj/item/slimecross/prismatic/green - paintcolor = "#00FF00" + paintcolor = COLOR_GREEN colour = "green" /obj/item/slimecross/prismatic/pink @@ -98,7 +98,7 @@ Prismatic extracts: colour = "oil" /obj/item/slimecross/prismatic/black - paintcolor = "#000000" + paintcolor = COLOR_BLACK colour = "black" /obj/item/slimecross/prismatic/lightpink diff --git a/code/modules/research/xenobiology/crossbreeding/regenerative.dm b/code/modules/research/xenobiology/crossbreeding/regenerative.dm index d3f2461cb..a723af119 100644 --- a/code/modules/research/xenobiology/crossbreeding/regenerative.dm +++ b/code/modules/research/xenobiology/crossbreeding/regenerative.dm @@ -119,7 +119,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/darkblue/proc/fireproof(obj/item/clothing/C) C.name = "fireproofed [C.name]" C.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) - C.add_atom_colour("#000080", FIXED_COLOUR_PRIORITY) + C.add_atom_colour(COLOR_NAVY, FIXED_COLOUR_PRIORITY) C.max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT C.heat_protection = C.body_parts_covered C.resistance_flags |= FIRE_PROOF diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index dae73f48b..39972690f 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -861,7 +861,7 @@ to_chat(user, "You slather the red gunk over the [C], making it faster.") C.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) - C.add_atom_colour("#FF0000", FIXED_COLOUR_PRIORITY) + C.add_atom_colour(COLOR_RED, FIXED_COLOUR_PRIORITY) qdel(src) /obj/item/slimepotion/fireproof @@ -885,7 +885,7 @@ to_chat(user, "You slather the blue gunk over the [C], fireproofing it.") C.name = "fireproofed [C.name]" C.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) - C.add_atom_colour("#000080", FIXED_COLOUR_PRIORITY) + C.add_atom_colour(COLOR_NAVY, FIXED_COLOUR_PRIORITY) C.max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT C.heat_protection = C.body_parts_covered C.resistance_flags |= FIRE_PROOF diff --git a/code/modules/ruins/objects_and_mobs/necropolis_gate.dm b/code/modules/ruins/objects_and_mobs/necropolis_gate.dm index 26e5f1a9c..6d718aef4 100644 --- a/code/modules/ruins/objects_and_mobs/necropolis_gate.dm +++ b/code/modules/ruins/objects_and_mobs/necropolis_gate.dm @@ -185,7 +185,7 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate) if(M.z == z) to_chat(M, "Discordant whispers flood your mind in a thousand voices. Each one speaks your name, over and over. Something horrible has been released.") M.playsound_local(T, null, 100, FALSE, 0, FALSE, pressure_affected = FALSE, S = legion_sound) - flash_color(M, flash_color = "#FF0000", flash_time = 50) + flash_color(M, flash_color = COLOR_RED, flash_time = 50) var/mutable_appearance/release_overlay = mutable_appearance('icons/effects/effects.dmi', "legiondoor") notify_ghosts("Legion has been released in the [get_area(src)]!", source = src, alert_overlay = release_overlay, action = NOTIFY_JUMP) diff --git a/code/modules/ruins/spaceruin_code/caravanambush.dm b/code/modules/ruins/spaceruin_code/caravanambush.dm index a7d89f332..a1e8438cf 100644 --- a/code/modules/ruins/spaceruin_code/caravanambush.dm +++ b/code/modules/ruins/spaceruin_code/caravanambush.dm @@ -1,27 +1,27 @@ //caravan ambush /obj/item/wrench/caravan - color = "#ff0000" + color = COLOR_RED desc = "A prototype of a new wrench design, allegedly the red color scheme makes it go faster." name = "experimental wrench" toolspeed = 0.3 /obj/item/screwdriver/caravan - color = "#ff0000" + color = COLOR_RED desc = "A prototype of a new screwdriver design, allegedly the red color scheme makes it go faster." name = "experimental screwdriver" toolspeed = 0.3 random_color = FALSE /obj/item/wirecutters/caravan - color = "#ff0000" + color = COLOR_RED desc = "A prototype of a new wirecutter design, allegedly the red color scheme makes it go faster." name = "experimental wirecutters" toolspeed = 0.3 random_color = FALSE /obj/item/crowbar/red/caravan - color = "#ff0000" + color = COLOR_RED desc = "A prototype of a new crowbar design, allegedly the red color scheme makes it go faster." name = "experimental crowbar" toolspeed = 0.3 @@ -78,7 +78,7 @@ desc = "Used to control the Pirate Cutter." icon_screen = "syndishuttle" icon_keyboard = "syndie_key" - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED circuit = /obj/item/circuitboard/computer/caravan/pirate shuttleId = "caravanpirate" possible_destinations = "caravanpirate_custom;caravanpirate_ambush" @@ -101,7 +101,7 @@ desc = "Used to control the Syndicate Fighter." icon_screen = "syndishuttle" icon_keyboard = "syndie_key" - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED req_access = list(ACCESS_SYNDICATE) circuit = /obj/item/circuitboard/computer/caravan/syndicate1 shuttleId = "caravansyndicate1" @@ -126,7 +126,7 @@ icon_screen = "syndishuttle" icon_keyboard = "syndie_key" req_access = list(ACCESS_SYNDICATE) - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED circuit = /obj/item/circuitboard/computer/caravan/syndicate2 shuttleId = "caravansyndicate2" possible_destinations = "caravansyndicate2_custom;caravansyndicate2_ambush;caravansyndicate1_listeningpost" @@ -150,7 +150,7 @@ icon_screen = "syndishuttle" icon_keyboard = "syndie_key" req_access = list(ACCESS_SYNDICATE) - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED circuit = /obj/item/circuitboard/computer/caravan/syndicate3 shuttleId = "caravansyndicate3" possible_destinations = "caravansyndicate3_custom;caravansyndicate3_ambush;caravansyndicate3_listeningpost" diff --git a/code/modules/shuttle/special.dm b/code/modules/shuttle/special.dm index 26a49bf64..f38a76fea 100644 --- a/code/modules/shuttle/special.dm +++ b/code/modules/shuttle/special.dm @@ -90,7 +90,7 @@ // New sleepers for(var/i in found - sleepers) var/mob/living/L = i - L.add_atom_colour("#800080", TEMPORARY_COLOUR_PRIORITY) + L.add_atom_colour(COLOR_PURPLE, TEMPORARY_COLOUR_PRIORITY) L.visible_message("A strange purple glow wraps itself around [L] as [L.p_they()] suddenly fall[L.p_s()] unconscious.", "[desc]") // Don't let them sit suround unconscious forever @@ -104,7 +104,7 @@ // Missing sleepers for(var/i in sleepers - found) var/mob/living/L = i - L.remove_atom_colour(TEMPORARY_COLOUR_PRIORITY, "#800080") + L.remove_atom_colour(TEMPORARY_COLOUR_PRIORITY, COLOR_PURPLE) L.visible_message("The glow from [L] fades \ away.") L.grab_ghost() diff --git a/code/modules/shuttle/syndicate.dm b/code/modules/shuttle/syndicate.dm index bffce9e7a..0caf60367 100644 --- a/code/modules/shuttle/syndicate.dm +++ b/code/modules/shuttle/syndicate.dm @@ -6,7 +6,7 @@ circuit = /obj/item/circuitboard/computer/syndicate_shuttle icon_screen = "syndishuttle" icon_keyboard = "syndie_key" - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED req_access = list(ACCESS_SYNDICATE) shuttleId = "syndicate" possible_destinations = "syndicate_away;syndicate_z5;syndicate_ne;syndicate_nw;syndicate_n;syndicate_se;syndicate_sw;syndicate_s;syndicate_custom" diff --git a/code/modules/spells/spell_types/lichdom.dm b/code/modules/spells/spell_types/lichdom.dm index 0cbb3a827..fcf77abbd 100644 --- a/code/modules/spells/spell_types/lichdom.dm +++ b/code/modules/spells/spell_types/lichdom.dm @@ -52,7 +52,7 @@ marked_item.name = "ensouled [marked_item.name]" marked_item.desc += "\nA terrible aura surrounds this item, its very existence is offensive to life itself..." - marked_item.add_atom_colour("#003300", ADMIN_COLOUR_PRIORITY) + marked_item.add_atom_colour(COLOR_VERY_DARK_LIME_GREEN, ADMIN_COLOUR_PRIORITY) new /obj/item/phylactery(marked_item, M.mind) @@ -76,8 +76,8 @@ desc = "Stores souls. Revives liches. Also repels mosquitos." icon = 'icons/obj/projectiles.dmi' icon_state = "bluespace" - color = "#003300" - light_color = "#003300" + color = COLOR_VERY_DARK_LIME_GREEN + light_color = COLOR_VERY_DARK_LIME_GREEN var/lon_range = 3 var/resurrections = 0 var/datum/mind/mind diff --git a/code/modules/surgery/organs/augments_internal.dm b/code/modules/surgery/organs/augments_internal.dm index 114b92f10..7291ad9e5 100644 --- a/code/modules/surgery/organs/augments_internal.dm +++ b/code/modules/surgery/organs/augments_internal.dm @@ -98,7 +98,7 @@ /obj/item/organ/cyberimp/brain/anti_stun name = "CNS Rebooter implant" desc = "This implant will automatically give you back control over your central nervous system, reducing downtime when stunned." - implant_color = "#FFFF00" + implant_color = COLOR_YELLOW slot = ORGAN_SLOT_BRAIN_ANTISTUN /obj/item/organ/cyberimp/brain/anti_stun/on_life() diff --git a/code/modules/surgery/tools.dm b/code/modules/surgery/tools.dm index 909ac3f0f..993810282 100644 --- a/code/modules/surgery/tools.dm +++ b/code/modules/surgery/tools.dm @@ -436,7 +436,7 @@ icon_state = "surgicaldrill_a" hitsound = 'sound/items/welder.ogg' toolspeed = 0.7 - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED /obj/item/surgicaldrill/advanced/Initialize() . = ..() @@ -457,7 +457,7 @@ hitsound = 'sound/items/welder2.ogg' force = 15 toolspeed = 0.7 - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED /obj/item/cautery/advanced/Initialize() . = ..() diff --git a/hyperstation/code/modules/hydroponics/grown/kalyna.dm b/hyperstation/code/modules/hydroponics/grown/kalyna.dm index 55a681ab4..e34168237 100644 --- a/hyperstation/code/modules/hydroponics/grown/kalyna.dm +++ b/hyperstation/code/modules/hydroponics/grown/kalyna.dm @@ -25,7 +25,7 @@ icon = 'hyperstation/icons/obj/hydroponics/harvest.dmi' icon_state = "kalynaberries" gender = PLURAL - filling_color = "#FF0000" + filling_color = COLOR_RED bitesize_mod = 2 foodtype = FRUIT juice_results = list(/datum/reagent/consumable/kalynajuice = 1) diff --git a/hyperstation/code/modules/power/reactor/rbmk.dm b/hyperstation/code/modules/power/reactor/rbmk.dm index 51f56b47a..1da98def0 100644 --- a/hyperstation/code/modules/power/reactor/rbmk.dm +++ b/hyperstation/code/modules/power/reactor/rbmk.dm @@ -435,10 +435,8 @@ The reactor CHEWS through moderator. It does not do this slowly. Be very careful if(warning) if(!alert) //Congrats! You stopped the meltdown / blowout. stop_relay(CHANNEL_REACTOR_ALERT) - warning = FALSE - set_light(0) - light_color = LIGHT_COLOR_CYAN - set_light(10) + warning = FAILED_UNFASTEN + set_light(l_range=10, l_color=LIGHT_COLOR_CYAN) else if(!alert) return @@ -447,9 +445,7 @@ The reactor CHEWS through moderator. It does not do this slowly. Be very careful next_warning = world.time + 30 SECONDS //To avoid engis pissing people off when reaaaally trying to stop the meltdown or whatever. warning = TRUE //Start warning the crew of the imminent danger. relay('hyperstation/sound/effects/rbmk/alarm.ogg', null, loop=TRUE, channel = CHANNEL_REACTOR_ALERT) - set_light(0) - light_color = LIGHT_COLOR_RED - set_light(10) + set_light(l_range=10, l_color=COLOR_SOFT_RED) //Failure condition 1: Meltdown. Achieved by having heat go over tolerances. This is less devastating because it's easier to achieve. //Results: Engineering becomes unusable and your engine irreparable diff --git a/hyperstation/code/obj/economy.dm b/hyperstation/code/obj/economy.dm index 388fccf5e..b33e2c35b 100644 --- a/hyperstation/code/obj/economy.dm +++ b/hyperstation/code/obj/economy.dm @@ -17,7 +17,7 @@ var/user = "" light_power = 0 light_range = 7 - light_color = "#ff3232" + light_color = COLOR_VIVID_RED var/pin = 0 /obj/machinery/atm/ui_interact(mob/user) diff --git a/hyperstation/code/obj/rewards.dm b/hyperstation/code/obj/rewards.dm index 667e7e81c..7dacd8c0d 100644 --- a/hyperstation/code/obj/rewards.dm +++ b/hyperstation/code/obj/rewards.dm @@ -168,7 +168,7 @@ icon_state = null item_state = null w_class = WEIGHT_CLASS_NORMAL - light_color = "#FFCC66" + light_color = COLOR_CREAMY_ORANGE icon_off = "pipe" icon_on = "pipe_lit" diff --git a/modular_citadel/code/game/gamemodes/gangs/dominator.dm b/modular_citadel/code/game/gamemodes/gangs/dominator.dm index 38ac45676..688ca26c5 100644 --- a/modular_citadel/code/game/gamemodes/gangs/dominator.dm +++ b/modular_citadel/code/game/gamemodes/gangs/dominator.dm @@ -192,8 +192,7 @@ countdown.start() countdown.color = gang.color - set_light(l_range = 3, l_power = 0.9) - light_color = gang.color + set_light(l_range = 3, l_power = 0.9, l_color=gang.color) START_PROCESSING(SSmachines, src) gang.message_gangtools("Hostile takeover in progress: Estimated [time] minutes until victory.[gang.dom_attempts ? "" : " This is your final attempt."]") diff --git a/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm b/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm index 334d6bf42..355a51d1b 100644 --- a/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm +++ b/modular_citadel/code/game/gamemodes/gangs/gang_datums.dm @@ -8,13 +8,13 @@ /datum/team/gang/clandestine name = "Clandestine" - color = "#FF0000" + color = COLOR_RED inner_outfits = list(/obj/item/clothing/under/syndicate/combat) outer_outfits = list(/obj/item/clothing/suit/jacket) /datum/team/gang/prima name = "Prima" - color = "#FFFF00" + color = COLOR_YELLOW inner_outfits = list(/obj/item/clothing/under/color/yellow) outer_outfits = list(/obj/item/clothing/suit/hastur) @@ -26,31 +26,31 @@ /datum/team/gang/max name = "Max" - color = "#800000" + color = COLOR_RED inner_outfits = list(/obj/item/clothing/under/color/maroon) outer_outfits = list(/obj/item/clothing/suit/poncho/red) /datum/team/gang/blasto name = "Blasto" - color = "#000080" + color = COLOR_NAVY inner_outfits = list(/obj/item/clothing/under/suit_jacket/navy) outer_outfits = list(/obj/item/clothing/suit/jacket/miljacket) /datum/team/gang/waffle name = "Waffle" - color = "#808000" //shared color with cyber, but they can keep brown cause waffles. + color = COLOR_OLIVE //shared color with cyber, but they can keep brown cause waffles. inner_outfits = list(/obj/item/clothing/under/suit_jacket/green) outer_outfits = list(/obj/item/clothing/suit/poncho) /datum/team/gang/north name = "North" - color = "#00FF00" + color = COLOR_GREEN inner_outfits = list(/obj/item/clothing/under/color/green) outer_outfits = list(/obj/item/clothing/suit/poncho/green) /datum/team/gang/omni name = "Omni" - color = "#008080" + color = COLOR_TEAL inner_outfits = list(/obj/item/clothing/under/color/teal) outer_outfits = list(/obj/item/clothing/suit/studentuni) @@ -68,13 +68,13 @@ /datum/team/gang/donk name = "Donk" - color = "#0000FF" + color = COLOR_BLUE inner_outfits = list(/obj/item/clothing/under/color/darkblue) outer_outfits = list(/obj/item/clothing/suit/apron/overalls) /datum/team/gang/gene name = "Gene" - color = "#00FFFF" + color = COLOR_CYAN inner_outfits = list(/obj/item/clothing/under/color/blue) outer_outfits = list(/obj/item/clothing/suit/apron) @@ -86,13 +86,13 @@ /datum/team/gang/tunnel name = "Tunnel" - color = "#FF00FF" //Gave the leather jacket to the tunnel gang over diablo. + color = COLOR_MAGENTA //Gave the leather jacket to the tunnel gang over diablo. inner_outfits = list(/obj/item/clothing/under/villain) outer_outfits = list(/obj/item/clothing/suit/jacket/leather) /datum/team/gang/diablo name = "Diablo" - color = "#FF0000" //literal early 90s skinhead regalia. + color = COLOR_RED //literal early 90s skinhead regalia. inner_outfits = list(/obj/item/clothing/under/pants/classicjeans) outer_outfits = list(/obj/item/clothing/suit/suspenders) @@ -110,13 +110,13 @@ /datum/team/gang/sirius name = "Sirius" - color = "#FFC0CB" + color = COLOR_PINK inner_outfits = list(/obj/item/clothing/under/color/pink) outer_outfits = list(/obj/item/clothing/suit/jacket/puffer/vest) /datum/team/gang/sleepingcarp name = "Sleeping Carp" - color = "#800080" + color = COLOR_PURPLE inner_outfits = list(/obj/item/clothing/under/color/lightpurple) outer_outfits = list(/obj/item/clothing/suit/hooded/carp_costume) diff --git a/modular_citadel/code/game/objects/items/melee/eutactic_blades.dm b/modular_citadel/code/game/objects/items/melee/eutactic_blades.dm index ff0ab7df6..2a7a6c1c6 100644 --- a/modular_citadel/code/game/objects/items/melee/eutactic_blades.dm +++ b/modular_citadel/code/game/objects/items/melee/eutactic_blades.dm @@ -96,7 +96,7 @@ if(alert("Are you sure you want to recolor your blade?", "Confirm Repaint", "Yes", "No") == "Yes") var/energy_color_input = input(usr,"","Choose Energy Color",light_color) as color|null if(energy_color_input) - light_color = sanitize_hexcolor(energy_color_input, desired_format=6, include_crunch=1) + set_light_color(sanitize_hexcolor(energy_color_input, desired_format=6, include_crunch=1)) update_icon() update_light() @@ -205,7 +205,7 @@ if(alert("Are you sure you want to recolor your blade?", "Confirm Repaint", "Yes", "No") == "Yes") var/energy_color_input = input(usr,"","Choose Energy Color",light_color) as color|null if(energy_color_input) - light_color = sanitize_hexcolor(energy_color_input, desired_format=6, include_crunch=1) + set_light_color(sanitize_hexcolor(energy_color_input, desired_format=6, include_crunch=1)) update_icon() update_light() @@ -257,7 +257,7 @@ slowdown_wielded = 1 armour_penetration = 60 light_color = "#37FFF7" - rainbow_colors = list("#FF0000", "#FFFF00", "#00FF00", "#00FFFF", "#0000FF","#FF00FF", "#3399ff", "#ff9900", "#fb008b", "#9800ff", "#00ffa3", "#ccff00") + rainbow_colors = list(COLOR_RED, COLOR_YELLOW, COLOR_GREEN, COLOR_CYAN, COLOR_BLUE,COLOR_MAGENTA, "#3399ff", COLOR_ORANGE, "#fb008b", "#9800ff", "#00ffa3", "#ccff00") attack_verb = list("attacked", "slashed", "stabbed", "sliced", "destroyed", "ripped", "devastated", "shredded") spinnable = FALSE total_mass_on = 4 @@ -319,7 +319,7 @@ var/energy_color_input = input(usr,"","Choose Energy Color",light_color) as color|null if(!energy_color_input || !user.canUseTopic(src, BE_CLOSE, FALSE) || hacked) return - light_color = sanitize_hexcolor(energy_color_input, desired_format=6, include_crunch=1) + set_light_color(sanitize_hexcolor(energy_color_input, desired_format=6, include_crunch=1)) update_icon() update_light() diff --git a/modular_citadel/code/modules/awaymissions/citadel_ghostrole_spawners.dm b/modular_citadel/code/modules/awaymissions/citadel_ghostrole_spawners.dm index ccbf9a42f..37143ac1d 100644 --- a/modular_citadel/code/modules/awaymissions/citadel_ghostrole_spawners.dm +++ b/modular_citadel/code/modules/awaymissions/citadel_ghostrole_spawners.dm @@ -43,7 +43,7 @@ var/obj/item/card/id/knight/W = H.wear_id W.assignment = "Knight" W.registered_name = H.real_name - W.id_color = "#0000FF" //Regular knights get simple blue. Doesn't matter much because it's variable anyway + W.id_color = COLOR_BLUE //Regular knights get simple blue. Doesn't matter much because it's variable anyway W.update_label(H.real_name) W.update_icon() diff --git a/modular_citadel/code/modules/projectiles/ammunition/caseless.dm b/modular_citadel/code/modules/projectiles/ammunition/caseless.dm index 1a6af79c3..64d1c4e58 100644 --- a/modular_citadel/code/modules/projectiles/ammunition/caseless.dm +++ b/modular_citadel/code/modules/projectiles/ammunition/caseless.dm @@ -1,13 +1,13 @@ /obj/item/ammo_casing/caseless/foam_dart/tag name = "lastag foam dart" desc = "Foam darts fitted with special lights. Compatible with existing laser tag systems. Ages 8 and up." - color = "#FF00FF" + color = COLOR_MAGENTA projectile_type = /obj/item/projectile/bullet/reusable/foam_dart/tag /obj/item/ammo_casing/caseless/foam_dart/tag/red name = "lastag red foam dart" - color = "#FF0000" + color = COLOR_RED projectile_type = /obj/item/projectile/bullet/reusable/foam_dart/tag/red /obj/item/ammo_casing/caseless/foam_dart/tag/blue name = "lastag blue foam dart" - color = "#0000FF" + color = COLOR_BLUE projectile_type = /obj/item/projectile/bullet/reusable/foam_dart/tag/blue diff --git a/modular_citadel/code/modules/projectiles/boxes_magazines/ammo_boxes.dm b/modular_citadel/code/modules/projectiles/boxes_magazines/ammo_boxes.dm index 67bf0779e..a24d7b8c8 100644 --- a/modular_citadel/code/modules/projectiles/boxes_magazines/ammo_boxes.dm +++ b/modular_citadel/code/modules/projectiles/boxes_magazines/ammo_boxes.dm @@ -4,7 +4,7 @@ icon_state = "foambox" ammo_type = /obj/item/ammo_casing/caseless/foam_dart/tag max_ammo = 40 - color = "#FF00FF" + color = COLOR_MAGENTA /obj/item/ammo_box/foambox/tag/red name = "ammo box (Lastag Red Foam Darts)" @@ -12,7 +12,7 @@ icon_state = "foambox" ammo_type = /obj/item/ammo_casing/caseless/foam_dart/tag/red max_ammo = 40 - color = "#FF0000" + color = COLOR_RED /obj/item/ammo_box/foambox/tag/blue name = "ammo box (Lastag Blue Foam Darts)" @@ -20,4 +20,4 @@ icon_state = "foambox" ammo_type = /obj/item/ammo_casing/caseless/foam_dart/tag/blue max_ammo = 40 - color = "#0000FF" + color = COLOR_BLUE diff --git a/modular_citadel/code/modules/projectiles/guns/ballistic/magweapon.dm b/modular_citadel/code/modules/projectiles/guns/ballistic/magweapon.dm index 8ee00bef0..0f343d807 100644 --- a/modular_citadel/code/modules/projectiles/guns/ballistic/magweapon.dm +++ b/modular_citadel/code/modules/projectiles/guns/ballistic/magweapon.dm @@ -50,7 +50,7 @@ light_range = 2 speed = 0.6 range = 25 - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED /obj/item/projectile/bullet/nlmags //non-lethal boolets icon = 'modular_citadel/icons/obj/guns/cit_guns.dmi' @@ -204,7 +204,7 @@ light_range = 3 speed = 0.6 range = 35 - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED /obj/item/projectile/bullet/nlmagrifle //non-lethal boolets icon = 'modular_citadel/icons/obj/guns/cit_guns.dmi' @@ -358,7 +358,7 @@ forcedodge = TRUE range = 6 light_range = 1 - light_color = LIGHT_COLOR_RED + light_color = COLOR_SOFT_RED /obj/item/projectile/bullet/mags/hyper/inferno icon_state = "magjectile-large" diff --git a/modular_citadel/code/modules/projectiles/projectiles/reusable.dm b/modular_citadel/code/modules/projectiles/projectiles/reusable.dm index a16df93ef..7c47f25e2 100644 --- a/modular_citadel/code/modules/projectiles/projectiles/reusable.dm +++ b/modular_citadel/code/modules/projectiles/projectiles/reusable.dm @@ -12,11 +12,11 @@ /obj/item/projectile/bullet/reusable/foam_dart/tag/red name = "lastag red foam dart" - color = "#FF0000" + color = COLOR_RED suit_types = list(/obj/item/clothing/suit/bluetag) ammo_type = /obj/item/ammo_casing/caseless/foam_dart/tag/red /obj/item/projectile/bullet/reusable/foam_dart/tag/blue - color = "#0000FF" + color = COLOR_BLUE name = "lastag blue foam dart" suit_types = list(/obj/item/clothing/suit/redtag) ammo_type = /obj/item/ammo_casing/caseless/foam_dart/tag/blue diff --git a/modular_citadel/code/modules/vore/resizing/sizechemicals.dm b/modular_citadel/code/modules/vore/resizing/sizechemicals.dm index 0c53886e8..114a3df4c 100644 --- a/modular_citadel/code/modules/vore/resizing/sizechemicals.dm +++ b/modular_citadel/code/modules/vore/resizing/sizechemicals.dm @@ -7,7 +7,7 @@ name = "Macrocillin" description = "Glowing yellow liquid." reagent_state = LIQUID - color = "#FFFF00" // rgb: 255, 255, 0 + color = COLOR_YELLOW // rgb: 255, 255, 0 overdose_threshold = 20 /datum/reagent/medicine/macrocillin/on_mob_life(mob/living/M, method=INGEST) @@ -24,7 +24,7 @@ name = "Microcillin" description = "Murky purple liquid." reagent_state = LIQUID - color = "#800080" + color = COLOR_PURPLE overdose_threshold = 20 /datum/reagent/microcillin/on_mob_life(mob/living/M, method=INGEST) @@ -42,7 +42,7 @@ name = "Normalcillin" description = "Translucent cyan liquid." reagent_state = LIQUID - color = "#00FFFF" + color = COLOR_CYAN overdose_threshold = 20 /datum/reagent/medicine/normalcillin/on_mob_life(mob/living/M, method=INGEST) From 611e86ac1697e7b6e1db691ebd76301aeda91938 Mon Sep 17 00:00:00 2001 From: DragonTrance Date: Mon, 6 Jun 2022 12:14:20 -0400 Subject: [PATCH 03/12] signals in set_light --- code/modules/lighting/lighting_atom.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/lighting/lighting_atom.dm b/code/modules/lighting/lighting_atom.dm index 7e9eb5e80..8450a4b5d 100644 --- a/code/modules/lighting/lighting_atom.dm +++ b/code/modules/lighting/lighting_atom.dm @@ -4,13 +4,13 @@ /atom/proc/set_light(var/l_range, var/l_power, var/l_color = NONSENSICAL_VALUE) l_range = max(l_range, MINIMUM_USEFUL_LIGHT_RANGE) //Brings the range up to 1.4, which is just barely brighter than the soft lighting that surrounds players. if (l_power != null) - light_power = l_power + set_light_power(l_power) if (l_range != null) - light_range = l_range + set_light_range(l_range) if (l_color != NONSENSICAL_VALUE) - light_color = l_color + set_light_color(l_color) SEND_SIGNAL(src, COMSIG_ATOM_SET_LIGHT, l_range, l_power, l_color) From c6a0982efc9363c39041730943387bc6b433b8e9 Mon Sep 17 00:00:00 2001 From: DragonTrance Date: Mon, 6 Jun 2022 13:42:06 -0400 Subject: [PATCH 04/12] change verbage of savefile versions and how it notifies --- code/modules/mob/dead/new_player/login.dm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/dead/new_player/login.dm b/code/modules/mob/dead/new_player/login.dm index acd966416..393dfefc9 100644 --- a/code/modules/mob/dead/new_player/login.dm +++ b/code/modules/mob/dead/new_player/login.dm @@ -43,7 +43,13 @@ S.cd = "/" var/slot S["default_slot"] >> slot + var/differing_version_notification = 0 if(slot) S.cd = "/character[slot]" - if(S["version"] < SAVEFILE_VERSION_MAX) - to_chat(src, "Your characters are outdated from recent updates. Please make sure if everything is within reasonable levels.") + var/slot_version = S["version"] + if(slot_version < SAVEFILE_VERSION_MAX) + S.cd = "/" + S["new_differences_notification"] >> differing_version_notification + if(!differing_version_notification || differing_version_notification <= slot_version) + S["new_differences_notification"] << slot_version + to_chat(src, "There were recent changes with characters, and your savefiles are outdated.") From 11d4aa111b0f687b82d55c6cbfa85f6b290f88b1 Mon Sep 17 00:00:00 2001 From: DragonTrance Date: Mon, 6 Jun 2022 13:46:30 -0400 Subject: [PATCH 05/12] boldification --- code/modules/mob/dead/new_player/login.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/dead/new_player/login.dm b/code/modules/mob/dead/new_player/login.dm index 393dfefc9..5e836b3ae 100644 --- a/code/modules/mob/dead/new_player/login.dm +++ b/code/modules/mob/dead/new_player/login.dm @@ -52,4 +52,4 @@ S["new_differences_notification"] >> differing_version_notification if(!differing_version_notification || differing_version_notification <= slot_version) S["new_differences_notification"] << slot_version - to_chat(src, "There were recent changes with characters, and your savefiles are outdated.") + to_chat(src, "There were recent changes with characters, and your savefiles are outdated.") From 6b276a57ab8367abe068298597a0b79c0d9ad510 Mon Sep 17 00:00:00 2001 From: DragonTrance Date: Mon, 6 Jun 2022 13:49:29 -0400 Subject: [PATCH 06/12] danger will robinson --- code/modules/mob/dead/new_player/login.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/dead/new_player/login.dm b/code/modules/mob/dead/new_player/login.dm index 5e836b3ae..bbf2fe226 100644 --- a/code/modules/mob/dead/new_player/login.dm +++ b/code/modules/mob/dead/new_player/login.dm @@ -52,4 +52,4 @@ S["new_differences_notification"] >> differing_version_notification if(!differing_version_notification || differing_version_notification <= slot_version) S["new_differences_notification"] << slot_version - to_chat(src, "There were recent changes with characters, and your savefiles are outdated.") + to_chat(src, "There were recent changes with characters, and your savefiles are outdated. You are still able to play, but your characters may not look the same.") From 3de6d66ff95f3bce529b09147e6c8be4626c0b32 Mon Sep 17 00:00:00 2001 From: DragonTrance Date: Mon, 6 Jun 2022 13:49:52 -0400 Subject: [PATCH 07/12] Update login.dm --- code/modules/mob/dead/new_player/login.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/dead/new_player/login.dm b/code/modules/mob/dead/new_player/login.dm index bbf2fe226..361b0ca77 100644 --- a/code/modules/mob/dead/new_player/login.dm +++ b/code/modules/mob/dead/new_player/login.dm @@ -52,4 +52,4 @@ S["new_differences_notification"] >> differing_version_notification if(!differing_version_notification || differing_version_notification <= slot_version) S["new_differences_notification"] << slot_version - to_chat(src, "There were recent changes with characters, and your savefiles are outdated. You are still able to play, but your characters may not look the same.") + to_chat(src, "There were recent changes with characters, and your savefiles are outdated. Your characters may not look the same.") From 038dcb92a1f616887471f1e43c51c20ab596333d Mon Sep 17 00:00:00 2001 From: DragonTrance Date: Mon, 6 Jun 2022 13:50:56 -0400 Subject: [PATCH 08/12] Update login.dm --- code/modules/mob/dead/new_player/login.dm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/dead/new_player/login.dm b/code/modules/mob/dead/new_player/login.dm index 361b0ca77..45c622db1 100644 --- a/code/modules/mob/dead/new_player/login.dm +++ b/code/modules/mob/dead/new_player/login.dm @@ -46,8 +46,9 @@ var/differing_version_notification = 0 if(slot) S.cd = "/character[slot]" - var/slot_version = S["version"] - if(slot_version < SAVEFILE_VERSION_MAX) + var/slot_version = 0 + S["version"] >> slot_version + if(slot_version && slot_version < SAVEFILE_VERSION_MAX) S.cd = "/" S["new_differences_notification"] >> differing_version_notification if(!differing_version_notification || differing_version_notification <= slot_version) From f9c244a0b0097124375c92dd3dcae70657bd9284 Mon Sep 17 00:00:00 2001 From: DragonTrance Date: Mon, 6 Jun 2022 14:06:54 -0400 Subject: [PATCH 09/12] Update login.dm --- code/modules/mob/dead/new_player/login.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/dead/new_player/login.dm b/code/modules/mob/dead/new_player/login.dm index 45c622db1..c691b799d 100644 --- a/code/modules/mob/dead/new_player/login.dm +++ b/code/modules/mob/dead/new_player/login.dm @@ -53,4 +53,4 @@ S["new_differences_notification"] >> differing_version_notification if(!differing_version_notification || differing_version_notification <= slot_version) S["new_differences_notification"] << slot_version - to_chat(src, "There were recent changes with characters, and your savefiles are outdated. Your characters may not look the same.") + to_chat(src, "There were recent changes with characters, and your savefiles are outdated. Your characters may not look the same depending on what changed.") From 576b29b24cfc3acb5aa7e85a4aa92328072a2b5c Mon Sep 17 00:00:00 2001 From: DragonTrance Date: Wed, 8 Jun 2022 03:37:43 -0400 Subject: [PATCH 10/12] Makes Visual Studio insert a line at the end of each file --- .vscode/settings.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 69761b02a..af7daeb66 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -5,5 +5,7 @@ "workbench.editorAssociations": { "*.dmi": "imagePreview.previewEditor" - } -} \ No newline at end of file + }, + "files.eol": "\n", + "files.insertFinalNewline": true, +} From 26c33b24038cdd40056e274d972008c0b8f0a876 Mon Sep 17 00:00:00 2001 From: Archie <53913550+ArchieBeepBoop@users.noreply.github.com> Date: Sun, 3 Jul 2022 23:38:43 -0300 Subject: [PATCH 11/12] Fixing Poss Voidsuits --- code/modules/clothing/suits/miscellaneous.dm | 40 ------------------ code/modules/vending/autodrobe.dm | 40 +++++++++--------- code/modules/vending/wardrobes.dm | 2 +- .../code/modules/clothing/suits/misc.dm | 41 ++++++++++++++++++- 4 files changed, 61 insertions(+), 62 deletions(-) diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index 6e002119b..b56cb7a95 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -28,46 +28,6 @@ allowed = list (/obj/item/gun/energy/laser/redtag) resistance_flags = NONE -/* - * Posshim's Corpus atire - */ -/obj/item/clothing/suit/hooded/corpus/ - name = "Standard Voidsuit" - desc = "Standard issue voidsuit in the name of Grofit!" - icon_state = "corpus" - item_state = "armor" - body_parts_covered = CHEST|GROIN|LEGS|ARMS|FEET|HANDS - hoodtype = /obj/item/clothing/head/hooded/corpus - flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT //"Hide shoes" but digi shoes dont get hidden, too bad! - min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT - mutantrace_variation = NO_MUTANTRACE_VARIATION //There is no need for a digi variant, it's a costume - -/obj/item/clothing/suit/hooded/corpus/s //sec - name = "Enforcer Voidsuit" - desc = "Delux issue grofit voidsuit. Let the middle class know You're in charge." - icon_state = "corpuss" - hoodtype = /obj/item/clothing/head/hooded/corpus/s //Enjoy this nice red outfit Kinaris! There is NO NEED for a pink one! xoxo -VivI Fanteriso - -/obj/item/clothing/suit/hooded/corpus/c //command - name = "Commander Voidsuit" - desc = "Premium issue correctional worker attire. Grease the gears of production." - icon_state = "corpusc" - hoodtype = /obj/item/clothing/head/hooded/corpus/c - -/obj/item/clothing/head/hooded/corpus - name = "Voidsuit helmet" - desc = "galvanized reinforced helm to protect against the elements" - icon_state = "corpus" - body_parts_covered = HEAD - flags_inv = HIDEHAIR|HIDEEARS|HIDEFACIALHAIR|HIDEFACE|HIDEMASK|HIDESNOUT|HIDENECK //hide your ugly face with this one simple trick! - min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT - -/obj/item/clothing/head/hooded/corpus/s //sec - icon_state = "corpuss" - -/obj/item/clothing/head/hooded/corpus/c //command - icon_state = "corpusc" - /* * Costume */ diff --git a/code/modules/vending/autodrobe.dm b/code/modules/vending/autodrobe.dm index f30584f27..4d8b21ac2 100644 --- a/code/modules/vending/autodrobe.dm +++ b/code/modules/vending/autodrobe.dm @@ -8,8 +8,7 @@ vend_reply = "Thank you for using AutoDrobe!" products = list(/obj/item/clothing/suit/chickensuit = 1, /obj/item/clothing/head/chicken = 1, - /obj/item/clothing/suit/hooded/corpus = 1, - /obj/item/clothing/suit/hooded/corpus/c = 1, + /obj/item/clothing/suit/hooded/wintercoat/corpus = 1, /obj/item/clothing/under/gladiator = 1, /obj/item/clothing/head/helmet/gladiator = 1, /obj/item/clothing/under/gimmick/rank/captain/suit = 1, @@ -123,25 +122,26 @@ /obj/item/clothing/glasses/sunglasses/blindfold = 1, /obj/item/clothing/mask/muzzle = 2) premium = list(/obj/item/clothing/suit/pirate/captain = 2, - /obj/item/clothing/head/pirate/captain = 2, - /obj/item/clothing/head/helmet/roman/fake = 1, - /obj/item/clothing/head/helmet/roman/legionnaire/fake = 1, - /obj/item/clothing/under/roman = 1, - /obj/item/clothing/shoes/roman = 1, - /obj/item/shield/riot/roman/fake = 1, - /obj/item/clothing/head/delinquent = 1, // One per vendor, please dear god don't mass produce these. - /obj/item/skub = 1, - /obj/item/clothing/under/lobster = 1, // CIT CHANGES - /obj/item/clothing/head/lobsterhat = 1, - /obj/item/clothing/head/drfreezehat = 1, - /obj/item/clothing/suit/dracula = 1, - /obj/item/clothing/suit/drfreeze_coat = 1, - /obj/item/clothing/suit/gothcoat = 2, - /obj/item/clothing/under/draculass = 1, - /obj/item/clothing/under/drfreeze = 1, //End of Cit Changes + /obj/item/clothing/head/pirate/captain = 2, + /obj/item/clothing/head/helmet/roman/fake = 1, + /obj/item/clothing/head/helmet/roman/legionnaire/fake = 1, + /obj/item/clothing/under/roman = 1, + /obj/item/clothing/shoes/roman = 1, + /obj/item/shield/riot/roman/fake = 1, + /obj/item/clothing/head/delinquent = 1, // One per vendor, please dear god don't mass produce these. + /obj/item/skub = 1, + /obj/item/clothing/under/lobster = 1, // CIT CHANGES + /obj/item/clothing/head/lobsterhat = 1, + /obj/item/clothing/head/drfreezehat = 1, + /obj/item/clothing/suit/dracula = 1, + /obj/item/clothing/suit/drfreeze_coat = 1, + /obj/item/clothing/suit/gothcoat = 2, + /obj/item/clothing/under/draculass = 1, + /obj/item/clothing/under/drfreeze = 1, //End of Cit Changes /obj/item/clothing/under/wedding_dress = 1, - /obj/item/clothing/under/tuxedo = 1, - /obj/item/storage/belt/cummerbund = 1) + /obj/item/clothing/under/tuxedo = 1, + /obj/item/clothing/suit/hooded/wintercoat/corpus/command = 1, + /obj/item/storage/belt/cummerbund = 1) refill_canister = /obj/item/vending_refill/autodrobe /obj/machinery/vending/autodrobe/all_access diff --git a/code/modules/vending/wardrobes.dm b/code/modules/vending/wardrobes.dm index 0d1e1f3df..5f9dee9d4 100644 --- a/code/modules/vending/wardrobes.dm +++ b/code/modules/vending/wardrobes.dm @@ -19,7 +19,7 @@ /obj/item/clothing/under/rank/security/skirt = 5, /obj/item/clothing/under/rank/security/grey = 5, /obj/item/clothing/under/pants/khaki = 5, - /obj/item/clothing/suit/hooded/corpus/s = 5) + /obj/item/clothing/suit/hooded/wintercoat/corpus/sec = 5) premium = list(/obj/item/clothing/under/rank/security/navyblue = 5, /obj/item/clothing/suit/security/officer = 5, /obj/item/clothing/head/beret/sec/navyofficer = 5, diff --git a/hyperstation/code/modules/clothing/suits/misc.dm b/hyperstation/code/modules/clothing/suits/misc.dm index 31ef1643f..0793aaa26 100644 --- a/hyperstation/code/modules/clothing/suits/misc.dm +++ b/hyperstation/code/modules/clothing/suits/misc.dm @@ -21,4 +21,43 @@ name = "\improper Hellraider's Vest" desc = "An open leather vest with battlescarred metal shoulderpads, discovered in a dimensional anomaly. Smells of gunpowder and plasma." icon_state = "guncaster_alt" - item_state = "guncaster_alt" \ No newline at end of file + item_state = "guncaster_alt" + +/* + * Posshim's Corpus atire + */ + //Making this a subset of wintercoats/winterhoods since poss intends it to have wintercoat stats --Archie + +/obj/item/clothing/suit/hooded/wintercoat/corpus + name = "Standard Voidsuit" + desc = "Standard issue voidsuit in the name of Grofit!" + icon_state = "corpus" + item_state = "armor" + body_parts_covered = CHEST|GROIN|LEGS|ARMS|FEET|HANDS + hoodtype = /obj/item/clothing/head/hooded/winterhood/corpus + flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT //"Hide shoes" but digi shoes dont get hidden, too bad! + mutantrace_variation = NO_MUTANTRACE_VARIATION //There is no need for a digi variant, it's a costume + +/obj/item/clothing/suit/hooded/wintercoat/corpus/sec + name = "Enforcer Voidsuit" + desc = "Delux issue grofit voidsuit. Let the middle class know You're in charge." + icon_state = "corpuss" + hoodtype = /obj/item/clothing/head/hooded/winterhood/corpus/sec //Enjoy this nice red outfit Kinaris! There is NO NEED for a pink one! xoxo -VivI Fanteriso + +/obj/item/clothing/suit/hooded/wintercoat/corpus/command + name = "Commander Voidsuit" + desc = "Premium issue correctional worker attire. Grease the gears of production." + icon_state = "corpusc" + hoodtype = /obj/item/clothing/head/hooded/winterhood/corpus/command + +/obj/item/clothing/head/hooded/winterhood/corpus + name = "Voidsuit helmet" + desc = "galvanized reinforced helm to protect against the elements" + icon_state = "corpus" + flags_inv = HIDEHAIR|HIDEEARS|HIDEFACIALHAIR|HIDEFACE|HIDEMASK|HIDESNOUT|HIDENECK //hide your ugly face with this one simple trick! + +/obj/item/clothing/head/hooded/winterhood/corpus/sec + icon_state = "corpuss" + +/obj/item/clothing/head/hooded/winterhood/corpus/command + icon_state = "corpusc" \ No newline at end of file From ca592d1e1e62486a2baed0552a8059ed0b06f328 Mon Sep 17 00:00:00 2001 From: Dahlular <55758850+Dahlular@users.noreply.github.com> Date: Wed, 6 Jul 2022 15:41:37 -0600 Subject: [PATCH 12/12] I'm gonna assume this is a mistake --- hyperstation/code/modules/power/reactor/rbmk.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hyperstation/code/modules/power/reactor/rbmk.dm b/hyperstation/code/modules/power/reactor/rbmk.dm index 1da98def0..396e4a352 100644 --- a/hyperstation/code/modules/power/reactor/rbmk.dm +++ b/hyperstation/code/modules/power/reactor/rbmk.dm @@ -435,7 +435,7 @@ The reactor CHEWS through moderator. It does not do this slowly. Be very careful if(warning) if(!alert) //Congrats! You stopped the meltdown / blowout. stop_relay(CHANNEL_REACTOR_ALERT) - warning = FAILED_UNFASTEN + warning = FALSE set_light(l_range=10, l_color=LIGHT_COLOR_CYAN) else if(!alert)