From 03315d1cbbaeba68c07a1e4193a762f299bda2fe Mon Sep 17 00:00:00 2001 From: Ghommie Date: Fri, 5 Jul 2019 22:29:50 +0200 Subject: [PATCH 1/4] Ports a toggleable darkmode to the game! --- code/__DEFINES/colors.dm | 25 +- code/__DEFINES/misc.dm | 4 - code/controllers/subsystem/job.dm | 2 +- code/controllers/subsystem/ticker.dm | 8 +- code/datums/components/spooky.dm | 2 +- code/datums/datumvars.dm | 4 +- .../mecha/equipment/tools/medical_tools.dm | 18 +- code/game/objects/items/devices/scanners.dm | 2 +- code/modules/admin/verbs/adminpm.dm | 56 +-- code/modules/admin/verbs/randomverbs.dm | 2 +- code/modules/client/darkmode.dm | 122 +++++ code/modules/client/preferences.dm | 10 +- code/modules/client/verbs/aooc.dm | 21 +- code/modules/client/verbs/ooc.dm | 19 +- code/modules/goonchat/browserOutput.dm | 13 + .../browserassets/css/browserOutput.css | 188 ++++---- .../browserassets/css/browserOutput_white.css | 425 ++++++++++++++++++ .../browserassets/html/browserOutput.html | 5 +- .../browserassets/js/browserOutput.js | 26 +- code/modules/shuttle/ferry.dm | 2 +- icons/member_content.dmi | Bin 2140 -> 2300 bytes modular_citadel/interface/skin.dmf | 34 +- tgstation.dme | 1 + 23 files changed, 784 insertions(+), 205 deletions(-) create mode 100644 code/modules/client/darkmode.dm create mode 100644 code/modules/goonchat/browserassets/css/browserOutput_white.css diff --git a/code/__DEFINES/colors.dm b/code/__DEFINES/colors.dm index de9c7af221..e187b85a3d 100644 --- a/code/__DEFINES/colors.dm +++ b/code/__DEFINES/colors.dm @@ -3,26 +3,27 @@ #define COLOR_INPUT_DISABLED "#F0F0F0" #define COLOR_INPUT_ENABLED "#D3B5B5" -//#define COLOR_WHITE "#EEEEEE" -//#define COLOR_SILVER "#C0C0C0" -//#define COLOR_GRAY "#808080" +#define COLOR_DARKMODE_BACKGROUND "#202020" +#define COLOR_DARKMODE_DARKBACKGROUND "#171717" +#define COLOR_DARKMODE_TEXT "#a4bad6" + #define COLOR_FLOORTILE_GRAY "#8D8B8B" #define COLOR_ALMOST_BLACK "#333333" -//#define COLOR_BLACK "#000000" +#define COLOR_BLACK "#000000" #define COLOR_RED "#FF0000" -//#define COLOR_RED_LIGHT "#FF3333" -//#define COLOR_MAROON "#800000" +#define COLOR_RED_LIGHT "#FF3333" +#define COLOR_MAROON "#800000" #define COLOR_YELLOW "#FFFF00" -//#define COLOR_OLIVE "#808000" -//#define COLOR_LIME "#32CD32" +#define COLOR_OLIVE "#808000" +#define COLOR_LIME "#32CD32" #define COLOR_GREEN "#008000" #define COLOR_CYAN "#00FFFF" -//#define COLOR_TEAL "#008080" +#define COLOR_TEAL "#008080" #define COLOR_BLUE "#0000FF" -//#define COLOR_BLUE_LIGHT "#33CCFF" -//#define COLOR_NAVY "#000080" +#define COLOR_BLUE_LIGHT "#33CCFF" +#define COLOR_NAVY "#000080" #define COLOR_PINK "#FFC0CB" -//#define COLOR_MAGENTA "#FF00FF" +#define COLOR_MAGENTA "#FF00FF" #define COLOR_PURPLE "#800080" #define COLOR_ORANGE "#FF9900" #define COLOR_BEIGE "#CEB689" diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm index fc8e7dda2f..fc651ddead 100644 --- a/code/__DEFINES/misc.dm +++ b/code/__DEFINES/misc.dm @@ -275,10 +275,6 @@ GLOBAL_LIST_INIT(pda_styles, list(MONO, VT, ORBITRON, SHARE)) GLOBAL_LIST_INIT(pda_reskins, list(PDA_SKIN_CLASSIC = 'icons/obj/pda.dmi', PDA_SKIN_ALT = 'icons/obj/pda_alt.dmi', PDA_SKIN_RUGGED = 'icons/obj/pda_rugged.dmi', PDA_SKIN_MODERN = 'icons/obj/pda_modern.dmi')) -//Color Defines -#define OOC_COLOR "#002eb8" -#define AOOC_COLOR "#b8002e" - ///////////////////////////////////// // atom.appearence_flags shortcuts // ///////////////////////////////////// diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index 5e960e0f96..4001c666ee 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -437,7 +437,7 @@ SUBSYSTEM_DEF(job) if(job.custom_spawn_text) to_chat(M, "[job.custom_spawn_text]") if(CONFIG_GET(number/minimal_access_threshold)) - to_chat(M, "As this station was initially staffed with a [CONFIG_GET(flag/jobs_have_minimal_access) ? "full crew, only your job's necessities" : "skeleton crew, additional access may"] have been added to your ID card.") + to_chat(M, "As this station was initially staffed with a [CONFIG_GET(flag/jobs_have_minimal_access) ? "full crew, only your job's necessities" : "skeleton crew, additional access may"] have been added to your ID card.") if(job && H) if(job.dresscodecompliant)// CIT CHANGE - dress code compliance diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index 4a3143da79..8e3cd5590e 100755 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -218,7 +218,7 @@ SUBSYSTEM_DEF(ticker) if(GLOB.secret_force_mode != "secret") var/datum/game_mode/smode = config.pick_mode(GLOB.secret_force_mode) if(!smode.can_start()) - message_admins("\blue Unable to force secret [GLOB.secret_force_mode]. [smode.required_players] players and [smode.required_enemies] eligible antagonists needed.") + message_admins("Unable to force secret [GLOB.secret_force_mode]. [smode.required_players] players and [smode.required_enemies] eligible antagonists needed.") else mode = smode @@ -291,14 +291,14 @@ SUBSYSTEM_DEF(ticker) round_start_time = world.time SSdbcore.SetRoundStart() - to_chat(world, "Welcome to [station_name()], enjoy your stay!") + to_chat(world, "Welcome to [station_name()], enjoy your stay!") SEND_SOUND(world, sound('sound/ai/welcome.ogg')) current_state = GAME_STATE_PLAYING Master.SetRunLevel(RUNLEVEL_GAME) if(SSevents.holidays) - to_chat(world, "and...") + to_chat(world, "and...") for(var/holidayname in SSevents.holidays) var/datum/holiday/holiday = SSevents.holidays[holidayname] to_chat(world, "

[holiday.greet()]

") @@ -414,7 +414,7 @@ SUBSYSTEM_DEF(ticker) m = pick(memetips) if(m) - to_chat(world, "Tip of the round: [html_encode(m)]") + to_chat(world, "Tip of the round: [html_encode(m)]") /datum/controller/subsystem/ticker/proc/check_queue() var/hpc = CONFIG_GET(number/hard_popcap) diff --git a/code/datums/components/spooky.dm b/code/datums/components/spooky.dm index 8989cb499d..1d5549d0fe 100644 --- a/code/datums/components/spooky.dm +++ b/code/datums/components/spooky.dm @@ -27,7 +27,7 @@ C.stuttering = 20 if((!istype(H.dna.species, /datum/species/skeleton)) && (!istype(H.dna.species, /datum/species/golem)) && (!istype(H.dna.species, /datum/species/android)) && (!istype(H.dna.species, /datum/species/jelly))) C.adjustStaminaLoss(25) //boneless humanoids don't lose the will to live - to_chat(C, "DOOT") + to_chat(C, "DOOT") spectral_change(H) else //the sound will spook monkeys. diff --git a/code/datums/datumvars.dm b/code/datums/datumvars.dm index d5c983bc39..f0fb7f6095 100644 --- a/code/datums/datumvars.dm +++ b/code/datums/datumvars.dm @@ -1351,8 +1351,8 @@ if(amount != 0) log_admin("[key_name(usr)] dealt [amount] amount of [Text] damage to [L] ") - var/msg = "[key_name(usr)] dealt [amount] amount of [Text] damage to [L] " - message_admins(msg) + var/msg = "[key_name(usr)] dealt [amount] amount of [Text] damage to [L] " + message_admins("[msg]") admin_ticket_log(L, msg) vv_update_display(L, Text, "[newamt]") else if(href_list["copyoutfit"]) diff --git a/code/game/mecha/equipment/tools/medical_tools.dm b/code/game/mecha/equipment/tools/medical_tools.dm index ba08109427..21bbdfd14b 100644 --- a/code/game/mecha/equipment/tools/medical_tools.dm +++ b/code/game/mecha/equipment/tools/medical_tools.dm @@ -159,15 +159,15 @@ t1 = "*dead*" else t1 = "Unknown" - return {"Health: [patient.stat > 1 ? "[t1]" : "[patient.health]% ([t1])"]
- Core Temperature: [patient.bodytemperature-T0C]°C ([patient.bodytemperature*1.8-459.67]°F)
- Brute Damage: [patient.getBruteLoss()]%
- Respiratory Damage: [patient.getOxyLoss()]%
- Toxin Content: [patient.getToxLoss()]%
- Burn Severity: [patient.getFireLoss()]%
- [patient.getCloneLoss() ? "Subject appears to have cellular damage." : ""]
- [patient.getBrainLoss() ? "Significant brain damage detected." : ""]
- [length(patient.get_traumas()) ? "Brain Traumas detected." : ""]
+ return {"Health: [patient.stat > 1 ? "[t1]" : "[patient.health]% ([t1])"]
+ Core Temperature: [patient.bodytemperature-T0C]°C ([patient.bodytemperature*1.8-459.67]°F)
+ Brute Damage: [patient.getBruteLoss()]%
+ Respiratory Damage: [patient.getOxyLoss()]%
+ Toxin Content: [patient.getToxLoss()]%
+ Burn Severity: [patient.getFireLoss()]%
+ [patient.getCloneLoss() ? "Subject appears to have cellular damage." : ""]
+ [patient.getBrainLoss() ? "Significant brain damage detected." : ""]
+ [length(patient.get_traumas()) ? "Brain Traumas detected." : ""]
"} /obj/item/mecha_parts/mecha_equipment/medical/sleeper/proc/get_patient_reagents() diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index 9f52b4c1ac..5d43a23b4c 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -621,7 +621,7 @@ SLIME SCANNER to_chat(user, "Growth progress: [T.amount_grown]/[SLIME_EVOLUTION_THRESHOLD]") if(T.effectmod) to_chat(user, "Core mutation in progress: [T.effectmod]") - to_chat(user, "Progress in core mutation: [T.applied] / [SLIME_EXTRACT_CROSSING_REQUIRED]") + to_chat(user, "Progress in core mutation: [T.applied] / [SLIME_EXTRACT_CROSSING_REQUIRED]") to_chat(user, "========================") diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm index 84e5ba4f82..5f3153d90f 100644 --- a/code/modules/admin/verbs/adminpm.dm +++ b/code/modules/admin/verbs/adminpm.dm @@ -6,7 +6,7 @@ set category = null set name = "Admin PM Mob" if(!holder) - to_chat(src, "Error: Admin-PM-Context: Only administrators may use this command.") + to_chat(src, "Error: Admin-PM-Context: Only administrators may use this command.") return if( !ismob(M) || !M.client ) return @@ -18,7 +18,7 @@ set category = "Admin" set name = "Admin PM" if(!holder) - to_chat(src, "Error: Admin-PM-Panel: Only administrators may use this command.") + to_chat(src, "Error: Admin-PM-Panel: Only administrators may use this command.") return var/list/client/targets[0] for(var/client/T) @@ -37,7 +37,7 @@ /client/proc/cmd_ahelp_reply(whom) if(prefs.muted & MUTE_ADMINHELP) - to_chat(src, "Error: Admin-PM: You are unable to use admin PM-s (muted).") + to_chat(src, "Error: Admin-PM: You are unable to use admin PM-s (muted).") return var/client/C if(istext(whom)) @@ -48,7 +48,7 @@ C = whom if(!C) if(holder) - to_chat(src, "Error: Admin-PM: Client not found.") + to_chat(src, "Error: Admin-PM: Client not found.") return var/datum/admin_help/AH = C.current_ticket @@ -65,12 +65,12 @@ //Fetching a message if needed. src is the sender and C is the target client /client/proc/cmd_admin_pm(whom, msg) if(prefs.muted & MUTE_ADMINHELP) - to_chat(src, "Error: Admin-PM: You are unable to use admin PM-s (muted).") + to_chat(src, "Error: Admin-PM: You are unable to use admin PM-s (muted).") return if(!holder && !current_ticket) //no ticket? https://www.youtube.com/watch?v=iHSPf6x1Fdo - to_chat(src, "You can no longer reply to this ticket, please open another one by using the Adminhelp verb if need be.") - to_chat(src, "Message: [msg]") + to_chat(src, "You can no longer reply to this ticket, please open another one by using the Adminhelp verb if need be.") + to_chat(src, "Message: [msg]") return var/client/recipient @@ -95,14 +95,14 @@ if(!msg) return if(holder) - to_chat(src, "Error: Use the admin IRC channel, nerd.") + to_chat(src, "Error: Use the admin IRC channel, nerd.") return else if(!recipient) if(holder) - to_chat(src, "Error: Admin-PM: Client not found.") + to_chat(src, "Error: Admin-PM: Client not found.") if(msg) to_chat(src, msg) return @@ -118,12 +118,12 @@ return if(prefs.muted & MUTE_ADMINHELP) - to_chat(src, "Error: Admin-PM: You are unable to use admin PM-s (muted).") + to_chat(src, "Error: Admin-PM: You are unable to use admin PM-s (muted).") return if(!recipient) if(holder) - to_chat(src, "Error: Admin-PM: Client not found.") + to_chat(src, "Error: Admin-PM: Client not found.") else current_ticket.MessageNoRecipient(msg) return @@ -145,15 +145,15 @@ var/keywordparsedmsg = keywords_lookup(msg) if(irc) - to_chat(src, "PM to-Admins: [rawmsg]") + to_chat(src, "PM to-Admins: [rawmsg]") var/datum/admin_help/AH = admin_ticket_log(src, "Reply PM from-[key_name(src, TRUE, TRUE)] to IRC: [keywordparsedmsg]") ircreplyamount-- send2irc("[AH ? "#[AH.id] " : ""]Reply: [ckey]", rawmsg) else if(recipient.holder) if(holder) //both are admins - to_chat(recipient, "Admin PM from-[key_name(src, recipient, 1)]: [keywordparsedmsg]") - to_chat(src, "Admin PM to-[key_name(recipient, src, 1)]: [keywordparsedmsg]") + to_chat(recipient, "Admin PM from-[key_name(src, recipient, 1)]: [keywordparsedmsg]") + to_chat(src, "Admin PM to-[key_name(recipient, src, 1)]: [keywordparsedmsg]") //omg this is dumb, just fill in both their tickets var/interaction_message = "PM from-[key_name(src, recipient, 1)] to-[key_name(recipient, src, 1)]: [keywordparsedmsg]" @@ -162,10 +162,10 @@ admin_ticket_log(recipient, interaction_message) else //recipient is an admin but sender is not - var/replymsg = "Reply PM from-[key_name(src, recipient, 1)]: [keywordparsedmsg]" - admin_ticket_log(src, replymsg) - to_chat(recipient, replymsg) - to_chat(src, "PM to-Admins: [msg]") + var/replymsg = "Reply PM from-[key_name(src, recipient, 1)]: [keywordparsedmsg]" + admin_ticket_log(src, "[replymsg]") + to_chat(recipient, "[replymsg]") + to_chat(src, "PM to-Admins: [msg]") //play the receiving admin the adminhelp sound (if they have them enabled) if(recipient.prefs.toggles & SOUND_ADMINHELP) @@ -177,11 +177,11 @@ new /datum/admin_help(msg, recipient, TRUE) to_chat(recipient, "-- Administrator private message --") - to_chat(recipient, "Admin PM from-[key_name(src, recipient, 0)]: [msg]") - to_chat(recipient, "Click on the administrator's name to reply.") - to_chat(src, "Admin PM to-[key_name(recipient, src, 1)]: [msg]") + to_chat(recipient, "Admin PM from-[key_name(src, recipient, 0)]: [msg]") + to_chat(recipient, "Click on the administrator's name to reply.") + to_chat(src, "Admin PM to-[key_name(recipient, src, 1)]: [msg]") - admin_ticket_log(recipient, "PM From [key_name_admin(src)]: [keywordparsedmsg]") + admin_ticket_log(recipient, "PM From [key_name_admin(src)]: [keywordparsedmsg]") //always play non-admin recipients the adminhelp sound SEND_SOUND(recipient, sound('sound/effects/adminhelp.ogg')) @@ -200,20 +200,20 @@ return else //neither are admins - to_chat(src, "Error: Admin-PM: Non-admin to non-admin PM communication is forbidden.") + to_chat(src, "Error: Admin-PM: Non-admin to non-admin PM communication is forbidden.") return if(irc) log_admin_private("PM: [key_name(src)]->IRC: [rawmsg]") for(var/client/X in GLOB.admins) - to_chat(X, "PM: [key_name(src, X, 0)]->IRC: [keywordparsedmsg]") + to_chat(X, "PM: [key_name(src, X, 0)]->IRC: [keywordparsedmsg]") else window_flash(recipient, ignorepref = TRUE) log_admin_private("PM: [key_name(src)]->[key_name(recipient)]: [rawmsg]") //we don't use message_admins here because the sender/receiver might get it too for(var/client/X in GLOB.admins) if(X.key!=key && X.key!=recipient.key) //check client/X is an admin and isn't the sender or recipient - to_chat(X, "PM: [key_name(src, X, 0)]->[key_name(recipient, X, 0)]: [keywordparsedmsg]" ) + to_chat(X, "PM: [key_name(src, X, 0)]->[key_name(recipient, X, 0)]: [keywordparsedmsg]" ) @@ -296,10 +296,10 @@ msg = emoji_parse(msg) to_chat(C, "-- Administrator private message --") - to_chat(C, "Admin PM from-[adminname]: [msg]") - to_chat(C, "Click on the administrator's name to reply.") + to_chat(C, "Admin PM from-[adminname]: [msg]") + to_chat(C, "Click on the administrator's name to reply.") - admin_ticket_log(C, "PM From [irc_tagged]: [msg]") + admin_ticket_log(C, "PM From [irc_tagged]: [msg]") window_flash(C, ignorepref = TRUE) //always play non-admin recipients the adminhelp sound diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index f74b31760d..52e76f95b6 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -298,7 +298,7 @@ if(candidates.len) ckey = input("Pick the player you want to respawn as a xeno.", "Suitable Candidates") as null|anything in candidates else - to_chat(usr, "Error: create_xeno(): no suitable candidates.") + to_chat(usr, "Error: create_xeno(): no suitable candidates.") if(!istext(ckey)) return 0 diff --git a/code/modules/client/darkmode.dm b/code/modules/client/darkmode.dm new file mode 100644 index 0000000000..52c2d02372 --- /dev/null +++ b/code/modules/client/darkmode.dm @@ -0,0 +1,122 @@ +//Darkmode preference by Kmc2000// + +/* +This lets you switch chat themes by using winset and CSS loading, you must relog to see this change (or rebuild your browseroutput datum) +Things to note: +If you change ANYTHING in interface/skin.dmf you need to change it here: +Format: +winset(src, "window as appears in skin.dmf after elem", "var to change = currentvalue;var to change = desired value") +How this works: +I've added a function to browseroutput.js which registers a cookie for darkmode and swaps the chat accordingly. You can find the button to do this under the "cog" icon next to the ping button (top right of chat) +This then swaps the window theme automatically +Thanks to spacemaniac and mcdonald for help with the JS side of this. +*/ + +/client/proc/force_white_theme() //There's no way round it. We're essentially changing the skin by hand. It's painful but it works, and is the way Lummox suggested. + //Main windows + + winset(src, "infowindow", "background-color = [COLOR_DARKMODE_DARKBACKGROUND];background-color = none") + winset(src, "infowindow", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "info", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") + winset(src, "info", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "browseroutput", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") + winset(src, "browseroutput", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "outputwindow", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") + winset(src, "outputwindow", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "mainwindow", "background-color = [COLOR_DARKMODE_DARKBACKGROUND];background-color = none") + winset(src, "split", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") + //Buttons + winset(src, "changelog", "background-color = #494949;background-color = none") + winset(src, "changelog", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "rules", "background-color = #494949;background-color = none") + winset(src, "rules", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "wiki", "background-color = #494949;background-color = none") + winset(src, "wiki", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "forum", "background-color = #494949;background-color = none") + winset(src, "forum", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "github", "background-color = #3a3a3a;background-color = none") + winset(src, "github", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "report-issue", "background-color = #492020;background-color = none") + winset(src, "report-issue", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + //Status and verb tabs + winset(src, "output", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") + winset(src, "output", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "outputwindow", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") + winset(src, "outputwindow", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "statwindow", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") + winset(src, "statwindow", "text-color = #eaeaea;text-color = #000000") + winset(src, "stat", "background-color = [COLOR_DARKMODE_DARKBACKGROUND];background-color = #FFFFFF") + winset(src, "stat", "tab-background-color = [COLOR_DARKMODE_BACKGROUND];tab-background-color = none") + winset(src, "stat", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "stat", "tab-text-color = [COLOR_DARKMODE_TEXT];tab-text-color = #000000") + winset(src, "stat", "prefix-color = [COLOR_DARKMODE_TEXT];prefix-color = #000000") + winset(src, "stat", "suffix-color = [COLOR_DARKMODE_TEXT];suffix-color = #000000") + //Say, OOC, me Buttons etc. + winset(src, "say", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") + winset(src, "say", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "asset_cache_browser", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") + winset(src, "asset_cache_browser", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "tooltip", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") + winset(src, "tooltip", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + +/client/proc/force_dark_theme() //Inversely, if theyre using white theme and want to swap to the superior dark theme, let's get WINSET() ing + //Main windows + winset(src, "infowindow", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "infowindow", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "info", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "info", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "browseroutput", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "browseroutput", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "outputwindow", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "outputwindow", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "mainwindow", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "split", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") + //Buttons + winset(src, "changelog", "background-color = none;background-color = #494949") + winset(src, "changelog", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "rules", "background-color = none;background-color = #494949") + winset(src, "rules", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "wiki", "background-color = none;background-color = #494949") + winset(src, "wiki", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "forum", "background-color = none;background-color = #494949") + winset(src, "forum", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "github", "background-color = none;background-color = #3a3a3a") + winset(src, "github", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "report-issue", "background-color = none;background-color = #492020") + winset(src, "report-issue", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + //Status and verb tabs + winset(src, "output", "background-color = none;background-color = [COLOR_DARKMODE_DARKBACKGROUND]") + winset(src, "output", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "outputwindow", "background-color = none;background-color = [COLOR_DARKMODE_DARKBACKGROUND]") + winset(src, "outputwindow", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "statwindow", "background-color = none;background-color = [COLOR_DARKMODE_DARKBACKGROUND]") + winset(src, "statwindow", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "stat", "background-color = #FFFFFF;background-color = [COLOR_DARKMODE_DARKBACKGROUND]") + winset(src, "stat", "tab-background-color = none;tab-background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "stat", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "stat", "tab-text-color = #000000;tab-text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "stat", "prefix-color = #000000;prefix-color = [COLOR_DARKMODE_TEXT]") + winset(src, "stat", "suffix-color = #000000;suffix-color = [COLOR_DARKMODE_TEXT]") + //Say, OOC, me Buttons etc. + winset(src, "say", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "say", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "asset_cache_browser", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "asset_cache_browser", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "tooltip", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "tooltip", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + + +/datum/asset/simple/goonchat + verify = FALSE + assets = list( + "json2.min.js" = 'code/modules/goonchat/browserassets/js/json2.min.js', + "errorHandler.js" = 'code/modules/goonchat/browserassets/js/errorHandler.js', + "browserOutput.js" = 'code/modules/goonchat/browserassets/js/browserOutput.js', + "fontawesome-webfont.eot" = 'tgui/assets/fonts/fontawesome-webfont.eot', + "fontawesome-webfont.svg" = 'tgui/assets/fonts/fontawesome-webfont.svg', + "fontawesome-webfont.ttf" = 'tgui/assets/fonts/fontawesome-webfont.ttf', + "fontawesome-webfont.woff" = 'tgui/assets/fonts/fontawesome-webfont.woff', + "font-awesome.css" = 'code/modules/goonchat/browserassets/css/font-awesome.css', + "browserOutput.css" = 'code/modules/goonchat/browserassets/css/browserOutput.css', + "browserOutput_white.css" = 'code/modules/goonchat/browserassets/css/browserOutput_white.css', + ) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 7a6fdad721..4bbe614c74 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -29,7 +29,8 @@ GLOBAL_LIST_EMPTY(preferences_datums) //game-preferences var/lastchangelog = "" //Saved changlog filesize to detect if there was a change - var/ooccolor = null + var/ooccolor = "#c43b23" + var/aooccolor = "#ce254f" var/enable_tips = TRUE var/tip_delay = 500 //tip delay in milliseconds @@ -765,6 +766,8 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "BYOND Membership Publicity: [(toggles & MEMBER_PUBLIC) ? "Public" : "Hidden"]
" if(unlock_content || check_rights_for(user.client, R_ADMIN)) dat += "OOC Color:     Change
" + dat += "Antag OOC Color:     Change
" + dat += "" if(user.client.holder) dat +="" @@ -1933,6 +1936,11 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(new_ooccolor) ooccolor = new_ooccolor + if("aooccolor") + var/new_aooccolor = input(user, "Choose your Antag OOC colour:", "Game Preference",ooccolor) as color|null + if(new_aooccolor) + aooccolor = new_aooccolor + if("bag") var/new_backbag = input(user, "Choose your character's style of bag:", "Character Preference") as null|anything in GLOB.backbaglist if(new_backbag) diff --git a/code/modules/client/verbs/aooc.dm b/code/modules/client/verbs/aooc.dm index 893501a852..311c22955d 100644 --- a/code/modules/client/verbs/aooc.dm +++ b/code/modules/client/verbs/aooc.dm @@ -1,3 +1,6 @@ +GLOBAL_VAR_INIT(AOOC_COLOR, null)//If this is null, use the CSS for OOC. Otherwise, use a custom colour. +GLOBAL_VAR_INIT(normal_aooc_colour, "#ce254f") + /client/verb/aooc(msg as text) set name = "AOOC" set desc = "An OOC channel exclusive to antagonists." @@ -50,7 +53,7 @@ var/keyname = key if(prefs.unlock_content) if(prefs.toggles & MEMBER_PUBLIC) - keyname = "[icon2html('icons/member_content.dmi', world, "blag")][keyname]" + keyname = "[icon2html('icons/member_content.dmi', world, "blag")][keyname]" //The linkify span classes and linkify=TRUE below make ooc text get clickable chat href links if you pass in something resembling a url var/antaglisting = list() @@ -74,23 +77,27 @@ else to_chat(C, "Antag OOC: [keyname][holder.fakekey ? "/([holder.fakekey])" : ""]: [msg]") else - to_chat(C, "Antag OOC: [holder.fakekey ? holder.fakekey : key]: [msg]") + if(GLOB.AOOC_COLOR) + to_chat(C, "Antag OOC: [holder.fakekey ? holder.fakekey : key]: [msg]") + else + to_chat(C, "Antag OOC: [holder.fakekey ? holder.fakekey : key]: [msg]") else if(!(key in C.prefs.ignoring)) - to_chat(C, "Antag OOC: [keyname]: [msg]") - -GLOBAL_VAR_INIT(antag_ooc_colour, AOOC_COLOR) + if(GLOB.AOOC_COLOR) + to_chat(C, "Antag OOC: [keyname]: [msg]") + else + to_chat(C, "Antag OOC: [keyname]: [msg]") /client/proc/set_aooc(newColor as color) set name = "Set Antag OOC Color" set desc = "Modifies antag OOC Color" set category = "Fun" - GLOB.antag_ooc_colour = sanitize_ooccolor(newColor) + GLOB.AOOC_COLOR = sanitize_ooccolor(newColor) /client/proc/reset_aooc() set name = "Reset Antag OOC Color" set desc = "Returns antag OOC Color to default" set category = "Fun" - GLOB.antag_ooc_colour = AOOC_COLOR + GLOB.AOOC_COLOR = null /proc/toggle_aooc(toggle = null) if(toggle != null) //if we're specifically en/disabling ooc diff --git a/code/modules/client/verbs/ooc.dm b/code/modules/client/verbs/ooc.dm index 5df13a1ffe..8a233025a1 100644 --- a/code/modules/client/verbs/ooc.dm +++ b/code/modules/client/verbs/ooc.dm @@ -1,3 +1,6 @@ +GLOBAL_VAR_INIT(OOC_COLOR, null)//If this is null, use the CSS for OOC. Otherwise, use a custom colour. +GLOBAL_VAR_INIT(normal_ooc_colour, "#002eb8") + /client/verb/ooc(msg as text) set name = "OOC" //Gave this shit a shorter name so you only have to time out "ooc" rather than "ooc message" to use it --NeoFite set category = "OOC" @@ -66,9 +69,15 @@ else to_chat(C, "OOC: [keyname][holder.fakekey ? "/([holder.fakekey])" : ""]: [msg]") else - to_chat(C, "OOC: [holder.fakekey ? holder.fakekey : key]: [msg]") + if(GLOB.OOC_COLOR) + to_chat(C, "OOC: [holder.fakekey ? holder.fakekey : key]: [msg]") + else + to_chat(C, "OOC: [holder.fakekey ? holder.fakekey : key]: [msg]") else if(!(key in C.prefs.ignoring)) - to_chat(C, "OOC: [keyname]: [msg]") + if(GLOB.OOC_COLOR) + to_chat(C, "OOC: [keyname]: [msg]") + else + to_chat(C, "OOC: [keyname]: [msg]") /proc/toggle_ooc(toggle = null) if(toggle != null) //if we're specifically en/disabling ooc @@ -99,19 +108,17 @@ else GLOB.dooc_allowed = !GLOB.dooc_allowed -GLOBAL_VAR_INIT(normal_ooc_colour, OOC_COLOR) - /client/proc/set_ooc(newColor as color) set name = "Set Player OOC Color" set desc = "Modifies player OOC Color" set category = "Fun" - GLOB.normal_ooc_colour = sanitize_ooccolor(newColor) + GLOB.OOC_COLOR = sanitize_ooccolor(newColor) /client/proc/reset_ooc() set name = "Reset Player OOC Color" set desc = "Returns player OOC Color to default" set category = "Fun" - GLOB.normal_ooc_colour = OOC_COLOR + GLOB.OOC_COLOR = null /client/verb/colorooc() set name = "Set Your OOC Color" diff --git a/code/modules/goonchat/browserOutput.dm b/code/modules/goonchat/browserOutput.dm index 463df71f71..082f20f524 100644 --- a/code/modules/goonchat/browserOutput.dm +++ b/code/modules/goonchat/browserOutput.dm @@ -82,6 +82,12 @@ GLOBAL_DATUM_INIT(iconCache, /savefile, new("tmp/iconCache.sav")) //Cache of ico if("setMusicVolume") data = setMusicVolume(arglist(params)) + if("swaptodarkmode") + swaptodarkmode() + + if("swaptolightmode") + swaptolightmode() + if(data) ehjax_send(data = data) @@ -240,3 +246,10 @@ GLOBAL_DATUM_INIT(iconCache, /savefile, new("tmp/iconCache.sav")) //Cache of ico // url_encode it TWICE, this way any UTF-8 characters are able to be decoded by the Javascript. C << output(url_encode(url_encode(message)), "browseroutput:output") + + +/datum/chatOutput/proc/swaptolightmode() //Dark mode light mode stuff. Yell at KMC if this breaks! (See darkmode.dm for documentation) + owner.force_white_theme() + +/datum/chatOutput/proc/swaptodarkmode() + owner.force_dark_theme() diff --git a/code/modules/goonchat/browserassets/css/browserOutput.css b/code/modules/goonchat/browserassets/css/browserOutput.css index 33884f8ef0..920087e026 100644 --- a/code/modules/goonchat/browserassets/css/browserOutput.css +++ b/code/modules/goonchat/browserassets/css/browserOutput.css @@ -7,16 +7,20 @@ html, body { padding: 0; margin: 0; height: 100%; - color: #000000; + color: #a4bad6; } body { - background: #E0E0E0; /*CIT CHANGE - darkens chatbox a lil*/ + background: #171717; font-family: Verdana, sans-serif; font-size: 9pt; + font-color: #a4bad6; line-height: 1.2; overflow-x: hidden; overflow-y: scroll; - word-wrap: break-word; + word-wrap: break-word; + scrollbar-face-color:#1A1A1A; + scrollbar-track-color:#171717; + scrollbar-highlight-color:#171717; } em { @@ -56,9 +60,9 @@ img.icon { border-radius: 10px; } -a {color: #0000ff;} -a.visited {color: #ff00ff;} -a:visited {color: #ff00ff;} +a {color: #397ea5;} +a.visited {color: #7c00e6;} +a:visited {color: #7c00e6;} a.popt {text-decoration: none;} /***************************************** @@ -89,21 +93,21 @@ a.popt {text-decoration: none;} bottom: 0; right: 0; padding: 8px; - background: #ddd; + background: #202020; text-decoration: none; font-variant: small-caps; font-size: 1.1em; font-weight: bold; - color: #333; + color: #a4bad6; } -#newMessages:hover {background: #ccc;} +#newMessages:hover {background: #171717;} #newMessages i {vertical-align: middle; padding-left: 3px;} #ping { position: fixed; top: 0; - right: 80px; + right: 115px; width: 45px; - background: #ddd; + background: #202020; height: 30px; padding: 8px 0 2px 0; } @@ -120,19 +124,19 @@ a.popt {text-decoration: none;} right: 0; } #userBar .subCell { - background: #ddd; + background: #202020; height: 30px; padding: 5px 0; display: block; - color: #333; + color: #a4bad6; text-decoration: none; line-height: 28px; - border-top: 1px solid #b4b4b4; + border-top: 1px solid #171717; } -#userBar .subCell:hover {background: #ccc;} +#userBar .subCell:hover {background: #202020;} #userBar .toggle { width: 40px; - background: #ccc; + background: #202020; border-top: 0; float: right; text-align: center; @@ -242,9 +246,9 @@ a.popt {text-decoration: none;} ******************************************/ /* MOTD */ -.motd {color: #638500; font-family: Verdana, sans-serif;} -.motd h1, .motd h2, .motd h3, .motd h4, .motd h5, .motd h6 {color: #638500; text-decoration: underline;} -.motd a, .motd a:link, .motd a:visited, .motd a:active, .motd a:hover {color: #638500;} +.motd {color: #a4bad6; font-family: Verdana, sans-serif;} +.motd h1, .motd h2, .motd h3, .motd h4, .motd h5, .motd h6 {color: #a4bad6; text-decoration: underline;} +.motd a, .motd a:link, .motd a:visited, .motd a:active, .motd a:hover {color: #a4bad6;} /* ADD HERE FOR BOLD */ .bold, .name, .prefix, .ooc, .looc, .adminooc, .admin, .medal, .yell {font-weight: bold;} @@ -255,85 +259,89 @@ a.popt {text-decoration: none;} /* OUTPUT COLORS */ .highlight {background: yellow;} -h1, h2, h3, h4, h5, h6 {color: #0000ff;font-family: Georgia, Verdana, sans-serif;} -h1.alert, h2.alert {color: #000000;} +h1, h2, h3, h4, h5, h6 {color: #a4bad6;font-family: Georgia, Verdana, sans-serif;} +h1.alert, h2.alert {color: #a4bad6;} em {font-style: normal; font-weight: bold;} -.ooc { font-weight: bold;} +.ooc {color: #cca300; font-weight: bold;} +.antagooc {color: #ce254f; font-weight: bold;} .adminobserverooc {color: #0099cc; font-weight: bold;} -.adminooc {color: #700038; font-weight: bold;} +.adminooc {color: #3d5bc3; font-weight: bold;} -.adminsay {color: #FF4500; font-weight: bold;} -.admin {color: #386aff; font-weight: bold;} +.adminsay {color: #ff4500; font-weight: bold;} +.admin {color: #5975da; font-weight: bold;} .name { font-weight: bold;} .say {} -.deadsay {color: #5c00e6;} +.deadsay {color: #e2c1ff;} .binarysay {color: #20c20e; background-color: #000000; display: block;} .binarysay a {color: #00ff00;} .binarysay a:active, .binarysay a:visited {color: #88ff88;} -.radio {color: #008000;} -.sciradio {color: #993399;} -.comradio {color: #948f02;} -.secradio {color: #a30000;} -.medradio {color: #337296;} -.engradio {color: #fb5613;} -.suppradio {color: #a8732b;} -.servradio {color: #6eaa2c;} -.syndradio {color: #6d3f40;} -.centcomradio {color: #686868;} -.aiprivradio {color: #ff00ff;} -.redteamradio {color: #ff0000;} -.blueteamradio {color: #0000ff;} +.radio {color: #1ecc43;} +.sciradio {color: #c68cfa;} +.comradio {color: #5177ff;} +.secradio {color: #dd3535;} +.medradio {color: #57b8f0;} +.engradio {color: #f37746;} +.suppradio {color: #b88646;} +.servradio {color: #6ca729;} +.syndradio {color: #8f4a4b;} +.centcomradio {color: #2681a5;} +.aiprivradio {color: #d65d95;} +.redteamradio {color: #ff4444;} +.blueteamradio {color: #3434fd;} .yell { font-weight: bold;} -.alert {color: #ff0000;} -h1.alert, h2.alert {color: #000000;} +.alert {color: #d82020;} +h1.alert, h2.alert {color: #99aab5;} .emote { font-style: italic;} .selecteddna {color: #ffffff; background-color: #001B1B} -.attack {color: #ff0000;} -.disarm {color: #990000;} -.passive {color: #660000;} +.attack {color: #e01c1c;} +.disarm {color: #b42525;} +.passive {color: #a00f0f;} -.userdanger {color: #ff0000; font-weight: bold; font-size: 24px;} -.danger {color: #ff0000;} -.warning {color: #ff0000; font-style: italic;} -.boldwarning {color: #ff0000; font-style: italic; font-weight: bold} -.announce {color: #228b22; font-weight: bold;} -.boldannounce {color: #ff0000; font-weight: bold;} -.greenannounce {color: #00ff00; font-weight: bold;} +.userdanger {color: #c51e1e; font-weight: bold; font-size: 24px;} +.danger {color: #c51e1e;} +.warning {color: #c51e1e; font-style: italic;} +.alertwarning {color: #FF0000; font-weight: bold} +.boldwarning {color: #c51e1e; font-style: italic; font-weight: bold} +.announce {color: #c51e1e; font-weight: bold;} +.boldannounce {color: #c51e1e; font-weight: bold;} +.greenannounce {color: #059223; font-weight: bold;} .rose {color: #ff5050;} -.info {color: #0000CC;} -.notice {color: #000099;} -.boldnotice {color: #000099; font-weight: bold;} -.adminnotice {color: #0000ff;} +.info {color: #6685f5;} +.notice {color: #6685f5;} +.boldnotice {color: #6685f5; font-weight: bold;} +.adminnotice {color: #6685f5;} .adminhelp {color: #ff0000; font-weight: bold;} -.unconscious {color: #0000ff; font-weight: bold;} +.unconscious {color: #a4bad6; font-weight: bold;} .suicide {color: #ff5050; font-style: italic;} -.green {color: #03ff39;} -.nicegreen {color: #14a833;} +.red {color: #FF0000} +.blue {color: #215cff} +.green {color: #059223;} +.nicegreen {color: #059223;} .userlove {color: #FF1493; font-style: italic; font-weight: bold; text-shadow: 0 0 6px #ff6dbc;} .love {color: #ff006a; font-style: italic; text-shadow: 0 0 6px #ff6d6d;} -.shadowling {color: #3b2769;} -.cult {color: #960000;} +.shadowling {color: #8e8a99;} +.cult {color: #aa1c1c;} -.cultitalic {color: #960000; font-style: italic;} -.cultbold {color: #960000; font-style: italic; font-weight: bold;} -.cultboldtalic {color: #960000; font-weight: bold; font-size: 24px;} +.cultitalic {color: #aa1c1c; font-style: italic;} +.cultbold {color: #aa1c1c; font-style: italic; font-weight: bold;} +.cultboldtalic {color: #aa1c1c; font-weight: bold; font-size: 24px;} -.cultlarge {color: #960000; font-weight: bold; font-size: 24px;} -.narsie {color: #960000; font-weight: bold; font-size: 120px;} -.narsiesmall {color: #960000; font-weight: bold; font-size: 48px;} +.cultlarge {color: #aa1c1c; font-weight: bold; font-size: 24px;} +.narsie {color: #aa1c1c; font-weight: bold; font-size: 120px;} +.narsiesmall {color: #aa1c1c; font-weight: bold; font-size: 48px;} .colossus {color: #7F282A; font-size: 40px;} -.hierophant {color: #660099; font-weight: bold; font-style: italic;} -.hierophant_warning {color: #660099; font-style: italic;} -.purple {color: #5e2d79;} -.holoparasite {color: #35333a;} +.hierophant {color: #b441ee; font-weight: bold; font-style: italic;} +.hierophant_warning {color: #c56bf1; font-style: italic;} +.purple {color: #9956d3;} +.holoparasite {color: #88809c;} .revennotice {color: #1d2953;} .revenboldnotice {color: #1d2953; font-weight: bold;} @@ -341,11 +349,11 @@ h1.alert, h2.alert {color: #000000;} .revenminor {color: #823abb} .revenwarning {color: #760fbb; font-style: italic;} .revendanger {color: #760fbb; font-weight: bold; font-size: 24px;} -.umbra {color: #5000A0;} -.umbra_emphasis {color: #5000A0; font-weight: bold; font-style: italic;} -.umbra_large {color: #5000A0; font-size: 24px; font-weight: bold; font-style: italic;} +.umbra {color: #7c00e6;} +.umbra_emphasis {color: #7c00e6; font-weight: bold; font-style: italic;} +.umbra_large {color: #7c00e6; font-size: 24px; font-weight: bold; font-style: italic;} -.deconversion_message {color: #5000A0; font-size: 24px; font-style: italic;} +.deconversion_message {color: #a947ff; font-size: 24px; font-style: italic;} .brass {color: #BE8700;} .heavy_brass {color: #BE8700; font-weight: bold; font-style: italic;} @@ -370,17 +378,17 @@ h1.alert, h2.alert {color: #000000;} .neovgre {color: #6E001A; font-weight: bold; font-style: italic;} .neovgre_small {color: #6E001A;} -.newscaster {color: #800000;} -.ghostalert {color: #5c00e6; font-style: italic; font-weight: bold;} +.newscaster {color: #c05d5d;} +.ghostalert {color: #6600ff; font-style: italic; font-weight: bold;} -.alien {color: #543354;} -.noticealien {color: #00c000;} -.alertalien {color: #00c000; font-weight: bold;} -.changeling {color: #800080; font-style: italic;} +.alien {color: #855d85;} +.noticealien {color: #059223;} +.alertalien {color: #059223; font-weight: bold;} +.changeling {color: #059223; font-style: italic;} -.spider {color: #4d004d;} +.spider {color: #8800ff;} -.interface {color: #330033;} +.interface {color: #750e75;} .sans {font-family: "Comic Sans MS", cursive, sans-serif;} .papyrus {font-family: "Papyrus", cursive, sans-serif;} @@ -391,29 +399,29 @@ h1.alert, h2.alert {color: #000000;} .big {font-size: 24px;} .reallybig {font-size: 32px;} .extremelybig {font-size: 40px;} -.greentext {color: #00FF00; font-size: 24px;} -.redtext {color: #FF0000; font-size: 24px;} -.clown {color: #FF69Bf; font-size: 24px; font-family: "Comic Sans MS", cursive, sans-serif; font-weight: bold;} +.greentext {color: #059223; font-size: 24px;} +.redtext {color: #c51e1e; font-size: 24px;} +.clown {color: #ff70c1; font-size: 24px; font-family: "Comic Sans MS", cursive, sans-serif; font-weight: bold;} .his_grace {color: #15D512; font-family: "Courier New", cursive, sans-serif; font-style: italic;} .icon {height: 1em; width: auto;} .memo {color: #638500; text-align: center;} .memoedit {text-align: center; font-size: 16px;} -.abductor {color: #800080; font-style: italic;} -.mind_control {color: #A00D6F; font-size: 3; font-weight: bold; font-style: italic;} +.abductor {color: #c204c2; font-style: italic;} +.mind_control {color: #df3da9; font-size: 3; font-weight: bold; font-style: italic;} .slime {color: #00CED1;} .drone {color: #848482;} .monkey {color: #975032;} .swarmer {color: #2C75FF;} .resonate {color: #298F85;} -.monkeyhive {color: #774704;} -.monkeylead {color: #774704; font-size: 2;} +.monkeyhive {color: #a56408;} +.monkeylead {color: #af6805; font-size: 2;} .connectionClosed, .fatalError {background: red; color: white; padding: 5px;} .connectionClosed.restored {background: green;} -.internal.boldnshit {color: blue; font-weight: bold;} +.internal.boldnshit {color: #3d5bc3; font-weight: bold;} /* HELPER CLASSES */ .text-normal {font-weight: normal; font-style: normal;} diff --git a/code/modules/goonchat/browserassets/css/browserOutput_white.css b/code/modules/goonchat/browserassets/css/browserOutput_white.css new file mode 100644 index 0000000000..337510982e --- /dev/null +++ b/code/modules/goonchat/browserassets/css/browserOutput_white.css @@ -0,0 +1,425 @@ +/***************************************** +* +* GLOBAL STYLES +* +******************************************/ +html, body { + padding: 0; + margin: 0; + height: 100%; + color: #000000; +} +body { + background: #E0E0E0; /*CIT CHANGE - darkens chatbox a lil*/ + font-family: Verdana, sans-serif; + font-size: 9pt; + line-height: 1.2; + overflow-x: hidden; + overflow-y: scroll; + word-wrap: break-word; +} + +em { + font-style: normal; + font-weight: bold; +} + +img { + margin: 0; + padding: 0; + line-height: 1; + -ms-interpolation-mode: nearest-neighbor; + image-rendering: pixelated; +} +img.icon { + height: 1em; + min-height: 16px; + width: auto; + vertical-align: bottom; +} + + +.r:before { /* "repeated" badge class for combined messages */ + content: 'x'; +} +.r { + display: inline-block; + min-width: 0.5em; + font-size: 0.7em; + padding: 0.2em 0.3em; + line-height: 1; + color: white; + text-align: center; + white-space: nowrap; + vertical-align: middle; + background-color: crimson; + border-radius: 10px; +} + +a {color: #0000ff;} +a.visited {color: #ff00ff;} +a:visited {color: #ff00ff;} +a.popt {text-decoration: none;} + +/***************************************** +* +* OUTPUT NOT RELATED TO ACTUAL MESSAGES +* +******************************************/ +#loading { + position: fixed; + width: 300px; + height: 150px; + text-align: center; + left: 50%; + top: 50%; + margin: -75px 0 0 -150px; +} +#loading i {display: block; padding-bottom: 3px;} + +#messages { + font-size: 13px; + padding: 3px; + margin: 0; + word-wrap: break-word; +} +#newMessages { + position: fixed; + display: block; + bottom: 0; + right: 0; + padding: 8px; + background: #ddd; + text-decoration: none; + font-variant: small-caps; + font-size: 1.1em; + font-weight: bold; + color: #333; +} +#newMessages:hover {background: #ccc;} +#newMessages i {vertical-align: middle; padding-left: 3px;} +#ping { + position: fixed; + top: 0; + right: 80px; + width: 45px; + background: #ddd; + height: 30px; + padding: 8px 0 2px 0; +} +#ping i {display: block; text-align: center;} +#ping .ms { + display: block; + text-align: center; + font-size: 8pt; + padding-top: 2px; +} +#userBar { + position: fixed; + top: 0; + right: 0; +} +#userBar .subCell { + background: #ddd; + height: 30px; + padding: 5px 0; + display: block; + color: #333; + text-decoration: none; + line-height: 28px; + border-top: 1px solid #b4b4b4; +} +#userBar .subCell:hover {background: #ccc;} +#userBar .toggle { + width: 40px; + background: #ccc; + border-top: 0; + float: right; + text-align: center; +} +#userBar .sub {clear: both; display: none; width: 160px;} +#userBar .sub.scroll {overflow-y: scroll;} +#userBar .sub.subCell {padding: 3px 0 3px 8px; line-height: 30px; font-size: 0.9em; clear: both;} +#userBar .sub span { + display: block; + line-height: 30px; + float: left; +} +#userBar .sub i { + display: block; + padding: 0 5px; + font-size: 1.1em; + width: 22px; + text-align: center; + line-height: 30px; + float: right; +} +#userBar .sub input { + position: absolute; + padding: 7px 5px; + width: 121px; + line-height: 30px; + float: left; +} +#userBar .topCell {border-top: 0;} + +/* POPUPS */ +.popup { + position: fixed; + top: 50%; + left: 50%; + background: #ddd; +} +.popup .close { + position: absolute; + background: #aaa; + top: 0; + right: 0; + color: #333; + text-decoration: none; + z-index: 2; + padding: 0 10px; + height: 30px; + line-height: 30px; +} +.popup .close:hover {background: #999;} +.popup .head { + background: #999; + color: #ddd; + padding: 0 10px; + height: 30px; + line-height: 30px; + text-transform: uppercase; + font-size: 0.9em; + font-weight: bold; + border-bottom: 2px solid green; +} +.popup input {border: 1px solid #999; background: #fff; margin: 0; padding: 5px; outline: none; color: #333;} +.popup input[type=text]:hover, .popup input[type=text]:active, .popup input[type=text]:focus {border-color: green;} +.popup input[type=submit] {padding: 5px 10px; background: #999; color: #ddd; text-transform: uppercase; font-size: 0.9em; font-weight: bold;} +.popup input[type=submit]:hover, .popup input[type=submit]:focus, .popup input[type=submit]:active {background: #aaa; cursor: pointer;} + +.changeFont {padding: 10px;} +.changeFont a {display: block; text-decoration: none; padding: 3px; color: #333;} +.changeFont a:hover {background: #ccc;} + +.highlightPopup {padding: 10px; text-align: center;} +.highlightPopup input[type=text] {display: block; width: 215px; text-align: left; margin-top: 5px;} +.highlightPopup input.highlightColor {background-color: #FFFF00;} +.highlightPopup input.highlightTermSubmit {margin-top: 5px;} + +/* ADMIN CONTEXT MENU */ +.contextMenu { + background-color: #ddd; + position: fixed; + margin: 2px; + width: 150px; +} +.contextMenu a { + display: block; + padding: 2px 5px; + text-decoration: none; + color: #333; +} + +.contextMenu a:hover { + background-color: #ccc; +} + +/* ADMIN FILTER MESSAGES MENU */ +.filterMessages {padding: 5px;} +.filterMessages div {padding: 2px 0;} +.filterMessages input {} +.filterMessages label {} + +.icon-stack {height: 1em; line-height: 1em; width: 1em; vertical-align: middle; margin-top: -2px;} + + +/***************************************** +* +* OUTPUT ACTUALLY RELATED TO MESSAGES +* +******************************************/ + +/* MOTD */ +.motd {color: #638500; font-family: Verdana, sans-serif;} +.motd h1, .motd h2, .motd h3, .motd h4, .motd h5, .motd h6 {color: #638500; text-decoration: underline;} +.motd a, .motd a:link, .motd a:visited, .motd a:active, .motd a:hover {color: #638500;} + +/* ADD HERE FOR BOLD */ +.bold, .name, .prefix, .ooc, .looc, .adminooc, .admin, .medal, .yell {font-weight: bold;} + +/* ADD HERE FOR ITALIC */ +.italic, .italics, .emote {font-style: italic;} + +/* OUTPUT COLORS */ +.highlight {background: yellow;} + +h1, h2, h3, h4, h5, h6 {color: #0000ff;font-family: Georgia, Verdana, sans-serif;} +h1.alert, h2.alert {color: #000000;} + +em {font-style: normal; font-weight: bold;} + +.ooc {color: #002eb8; font-weight: bold;} +.antagooc {color: #b8002e; font-weight: bold;} +.adminobserverooc {color: #0099cc; font-weight: bold;} +.adminooc {color: #700038; font-weight: bold;} + +.adminsay {color: #ff4500; font-weight: bold;} +.admin {color: #4473ff; font-weight: bold;} + +.name { font-weight: bold;} + +.say {} +.deadsay {color: #5c00e6;} +.binarysay {color: #20c20e; background-color: #000000; display: block;} +.binarysay a {color: #00ff00;} +.binarysay a:active, .binarysay a:visited {color: #88ff88;} +.radio {color: #008000;} +.sciradio {color: #993399;} +.comradio {color: #948f02;} +.secradio {color: #a30000;} +.medradio {color: #337296;} +.engradio {color: #fb5613;} +.suppradio {color: #a8732b;} +.servradio {color: #6eaa2c;} +.syndradio {color: #6d3f40;} +.centcomradio {color: #686868;} +.aiprivradio {color: #ff00ff;} +.redteamradio {color: #ff0000;} +.blueteamradio {color: #0000ff;} + +.yell { font-weight: bold;} + +.alert {color: #ff0000;} +h1.alert, h2.alert {color: #000000;} + +.emote { font-style: italic;} +.selecteddna {color: #ffffff; background-color: #001B1B} + +.attack {color: #ff0000;} +.disarm {color: #990000;} +.passive {color: #660000;} + +.userdanger {color: #ff0000; font-weight: bold; font-size: 24px;} +.danger {color: #ff0000;} +.warning {color: #ff0000; font-style: italic;} +.alertwarning {color: #FF0000; font-weight: bold} +.boldwarning {color: #ff0000; font-style: italic; font-weight: bold} +.announce {color: #228b22; font-weight: bold;} +.boldannounce {color: #ff0000; font-weight: bold;} +.greenannounce {color: #00ff00; font-weight: bold;} +.rose {color: #ff5050;} +.info {color: #0000CC;} +.notice {color: #000099;} +.boldnotice {color: #000099; font-weight: bold;} +.adminnotice {color: #0000ff;} +.adminhelp {color: #ff0000; font-weight: bold;} +.unconscious {color: #0000ff; font-weight: bold;} +.suicide {color: #ff5050; font-style: italic;} +.green {color: #03ff39;} +.red {color: #FF0000} +.blue {color: #0000FF} +.nicegreen {color: #14a833;} +.userlove {color: #FF1493; font-style: italic; font-weight: bold; text-shadow: 0 0 6px #ff6dbc;} +.love {color: #ff006a; font-style: italic; text-shadow: 0 0 6px #ff6d6d;} +.shadowling {color: #3b2769;} +.cult {color: #960000;} + +.cultitalic {color: #960000; font-style: italic;} +.cultbold {color: #960000; font-style: italic; font-weight: bold;} +.cultboldtalic {color: #960000; font-weight: bold; font-size: 24px;} + +.cultlarge {color: #960000; font-weight: bold; font-size: 24px;} +.narsie {color: #960000; font-weight: bold; font-size: 120px;} +.narsiesmall {color: #960000; font-weight: bold; font-size: 48px;} +.colossus {color: #7F282A; font-size: 40px;} +.hierophant {color: #660099; font-weight: bold; font-style: italic;} +.hierophant_warning {color: #660099; font-style: italic;} +.purple {color: #5e2d79;} +.holoparasite {color: #35333a;} + +.revennotice {color: #1d2953;} +.revenboldnotice {color: #1d2953; font-weight: bold;} +.revenbignotice {color: #1d2953; font-weight: bold; font-size: 24px;} +.revenminor {color: #823abb} +.revenwarning {color: #760fbb; font-style: italic;} +.revendanger {color: #760fbb; font-weight: bold; font-size: 24px;} +.umbra {color: #5000A0;} +.umbra_emphasis {color: #5000A0; font-weight: bold; font-style: italic;} +.umbra_large {color: #5000A0; font-size: 24px; font-weight: bold; font-style: italic;} + +.deconversion_message {color: #5000A0; font-size: 24px; font-style: italic;} + +.brass {color: #BE8700;} +.heavy_brass {color: #BE8700; font-weight: bold; font-style: italic;} +.large_brass {color: #BE8700; font-size: 24px;} +.big_brass {color: #BE8700; font-size: 24px; font-weight: bold; font-style: italic;} +.ratvar {color: #BE8700; font-size: 48px; font-weight: bold; font-style: italic;} +.alloy {color: #42474D;} +.heavy_alloy {color: #42474D; font-weight: bold; font-style: italic;} +.nezbere_large {color: #42474D; font-size: 24px; font-weight: bold; font-style: italic;} +.nezbere {color: #42474D; font-weight: bold; font-style: italic;} +.nezbere_small {color: #42474D;} +.sevtug_large {color: #AF0AAF; font-size: 24px; font-weight: bold; font-style: italic;} +.sevtug {color: #AF0AAF; font-weight: bold; font-style: italic;} +.sevtug_small {color: #AF0AAF;} +.inathneq_large {color: #1E8CE1; font-size: 24px; font-weight: bold; font-style: italic;} +.inathneq {color: #1E8CE1; font-weight: bold; font-style: italic;} +.inathneq_small {color: #1E8CE1;} +.nzcrentr_large {color: #DAAA18; font-size: 24px; font-weight: bold; font-style: italic;} +.nzcrentr {color: #DAAA18; font-weight: bold; font-style: italic;} +.nzcrentr_small {color: #DAAA18;} +.neovgre_large {color: #6E001A; font-size: 24px; font-weight: bold; font-style: italic;} +.neovgre {color: #6E001A; font-weight: bold; font-style: italic;} +.neovgre_small {color: #6E001A;} + +.newscaster {color: #800000;} +.ghostalert {color: #5c00e6; font-style: italic; font-weight: bold;} + +.alien {color: #543354;} +.noticealien {color: #00c000;} +.alertalien {color: #00c000; font-weight: bold;} +.changeling {color: #800080; font-style: italic;} + +.spider {color: #4d004d;} + +.interface {color: #330033;} + +.sans {font-family: "Comic Sans MS", cursive, sans-serif;} +.papyrus {font-family: "Papyrus", cursive, sans-serif;} +.robot {font-family: "Courier New", cursive, sans-serif;} + +.command_headset {font-weight: bold; font-size: 24px;} +.small {font-size: 8px;} +.big {font-size: 24px;} +.reallybig {font-size: 32px;} +.extremelybig {font-size: 40px;} +.greentext {color: #00FF00; font-size: 24px;} +.redtext {color: #FF0000; font-size: 24px;} +.clown {color: #FF69Bf; font-size: 24px; font-family: "Comic Sans MS", cursive, sans-serif; font-weight: bold;} +.his_grace {color: #15D512; font-family: "Courier New", cursive, sans-serif; font-style: italic;} + +.icon {height: 1em; width: auto;} + +.memo {color: #638500; text-align: center;} +.memoedit {text-align: center; font-size: 16px;} +.abductor {color: #800080; font-style: italic;} +.mind_control {color: #A00D6F; font-size: 3; font-weight: bold; font-style: italic;} +.slime {color: #00CED1;} +.drone {color: #848482;} +.monkey {color: #975032;} +.swarmer {color: #2C75FF;} +.resonate {color: #298F85;} + +.monkeyhive {color: #774704;} +.monkeylead {color: #774704; font-size: 2;} + +.connectionClosed, .fatalError {background: red; color: white; padding: 5px;} +.connectionClosed.restored {background: green;} +.internal.boldnshit {color: blue; font-weight: bold;} + +/* HELPER CLASSES */ +.text-normal {font-weight: normal; font-style: normal;} +.hidden {display: none; visibility: hidden;} + diff --git a/code/modules/goonchat/browserassets/html/browserOutput.html b/code/modules/goonchat/browserassets/html/browserOutput.html index fe3be9486c..9c6d462a85 100644 --- a/code/modules/goonchat/browserassets/html/browserOutput.html +++ b/code/modules/goonchat/browserassets/html/browserOutput.html @@ -5,7 +5,7 @@ - + @@ -28,6 +28,9 @@ --ms +
+ +
diff --git a/code/modules/goonchat/browserassets/js/browserOutput.js b/code/modules/goonchat/browserassets/js/browserOutput.js index 33553d765e..93a498fd06 100644 --- a/code/modules/goonchat/browserassets/js/browserOutput.js +++ b/code/modules/goonchat/browserassets/js/browserOutput.js @@ -35,6 +35,7 @@ var opts = { 'wasd': false, //Is the user in wasd mode? 'priorChatHeight': 0, //Thing for height-resizing detection 'restarting': false, //Is the round restarting? + 'darkmode':false, //Are we using darkmode? If not WHY ARE YOU LIVING IN 2009??? //Options menu 'selectedSubLoop': null, //Contains the interval loop for closing the selected sub menu @@ -394,6 +395,19 @@ function toHex(n) { return "0123456789ABCDEF".charAt((n-n%16)/16) + "0123456789ABCDEF".charAt(n%16); } +function swap() { //Swap to darkmode + if (opts.darkmode){ + document.getElementById("sheetofstyles").href = "browserOutput_white.css"; + opts.darkmode = false; + runByond('?_src_=chat&proc=swaptolightmode'); + } else { + document.getElementById("sheetofstyles").href = "browserOutput.css"; + opts.darkmode = true; + runByond('?_src_=chat&proc=swaptodarkmode'); + } + setCookie('darkmode', (opts.darkmode ? 'true' : 'false'), 365); +} + function handleClientData(ckey, ip, compid) { //byond sends player info to here var currentData = {'ckey': ckey, 'ip': ip, 'compid': compid}; @@ -601,6 +615,7 @@ $(function() { 'shighlightColor': getCookie('highlightcolor'), 'smusicVolume': getCookie('musicVolume'), 'smessagecombining': getCookie('messagecombining'), + 'sdarkmode': getCookie('darkmode'), }; if (savedConfig.sfontSize) { @@ -611,6 +626,9 @@ $(function() { $("body").css('line-height', savedConfig.slineHeight); internalOutput('Loaded line height setting of: '+savedConfig.slineHeight+'', 'internal'); } + if(savedConfig.sdarkmode == 'true'){ + swap(); + } if (savedConfig.spingDisabled) { if (savedConfig.spingDisabled == 'true') { opts.pingDisabled = true; @@ -655,8 +673,6 @@ $(function() { opts.messageCombining = true; } } - - (function() { var dataCookie = getCookie('connData'); if (dataCookie) { @@ -823,7 +839,9 @@ $(function() { $('#toggleOptions').click(function(e) { handleToggleClick($subOptions, $(this)); }); - + $('#darkmodetoggle').click(function(e) { + swap(); + }); $('#toggleAudio').click(function(e) { handleToggleClick($subAudio, $(this)); }); @@ -895,7 +913,7 @@ $(function() { $.ajax({ type: 'GET', - url: 'browserOutput.css', + url: 'browserOutput_white.css', success: function(styleData) { var blob = new Blob(['Chat Log', $messages.html(), '']); diff --git a/code/modules/shuttle/ferry.dm b/code/modules/shuttle/ferry.dm index eaa1f36b75..06e38bb3eb 100644 --- a/code/modules/shuttle/ferry.dm +++ b/code/modules/shuttle/ferry.dm @@ -37,4 +37,4 @@ return last_request = world.time to_chat(usr, "Your request has been received by CentCom.") - to_chat(GLOB.admins, "FERRY: [ADMIN_LOOKUPFLW(usr)] (Move Ferry) is requesting to move the transport ferry to CentCom.") + to_chat(GLOB.admins, "FERRY: [ADMIN_LOOKUPFLW(usr)] (Move Ferry) is requesting to move the transport ferry to CentCom.") diff --git a/icons/member_content.dmi b/icons/member_content.dmi index bb59764627628423b93e55a312d327170cb00f6d..77443711198c588d2802470fca5b76dc0e1515d7 100644 GIT binary patch delta 2166 zcmV-+2#NRH5d0C4oqq^PNkldvH|M9mhZSvAcJ(*({r6lZ^zD65bIcAi>~} z4LEAF^=-ka)s8YcsZ*6{>(u9ThC0OuovKx;txh}mRzzw?X_W%u{U#)lgoGeQ^4KLy zlDl{BKJKf3tY!p}_RReLIp^H(=bYc2@9+GCty{Npp%IBh1b@>s7iyaJU@DcWQ&n}` z;OWsk0fBHyAX!jQFzWGmcKZGP=XdVhx%+}*fbf05NF*X8lgS7A`UjrexV&D^ti-S z>;}mNQ5 zU4L9fDBn$OWq^yz^1%VyhE?zMVjBY2)fO>(k`K#tIDAy+vu!G^Z7CcZn(pwBIer)I z-FfVduI6{Ya^V)gyj+OK;~zZr=AN5lN+m7@6pzR)HKiynk#&cnsA&@buP9Mp737MU zg}5XE({iva(9<@Lz3>&sPh>DsAUh)W-G5nvq6n=1bCh((2H>WvWg6xWzAGArv0y0U z$1=doLONsf&VfM&M>E{La6A)&O3v^GloxsM=Slb!iHzx>r)|6*k;&x>jtvvSZdU&K zB2>-dsTT*wU;u5$9NcdALRr`KVA}LT?ziCBV95^uY#Czq_%yf9DP>Q$N^MmEet)lo zZG$9%&m+>&pCaEQ^P@#U1V`Yig#lh)7iark?OeYTA9irLTtQJ)6H3*|BRxs# zs{>@>0{i=QBs0z5o|w#;5esbCvOB?=wK3+;@^SA^L#%paJkP%tqx(d9jDJ@Ylu0Jz zx+qD~h*vPjQaR%yANMwvF*I!O%v*gN>_}pyV9NoO8|N33J|htCx7oBq#U%@PJOUlv zDI5#-wIq4`nLae#=HXw2nO3EY0mC5|x~>mPD^{#n*mH7ZW^c?()kO;TULU5dC&eot zM$wWsE<`S!=I8dSLX7jv%zvGhj|T~#*P?U#GK7IA$Yv7wLlOF;25Q1$`@RH~ z@bQ)repnym#W$mzZ2Jp;c)E%ogjD?cI+TisS$0Da1%8PU)#g7tRDY_cdAVd}9^3b7 zEMMlKwWawUdD5gwJG0rW7A{ET7Zte3b4#pVQAsjovFC`!%9r{Wh#5FGV1d^of*~-h zPbB&Iv-s$zr_al(PhwP*yQyE`=b@%j^72HIx{cc{P(4+_%Jd`_ELgBdZfxXPaiPpW)Zn2eAIFY$J~n;&^xR`IXU?1#W=@u4<%K$X4VcP?iIR3T1lxGUqiq!1O8)H!O*p`}Xa-YU|dm z&KM9No6UA6lOwnPrb%|DR0`iKa-uiGtQmO(0}_SfWZFB^=iN7Rs=_aqTh8uX&C41Z z8rr{^KdYxPO@H&f(c!OddF1Doxn!a1yh5!+eB4Wt3#pCW-T2qS-ak(tuuSp`UA^LSWx5RjrC{PxOsGJe#R7q zyOw&$Bn}U@w6rW)v}jSsx!M<{9 delta 2005 zcmV;`2P*jd5!?`voqq?ZNklj8&lY)s^$Yo?!2Q-q& zJoQ0|P3u&yy~;&PON;RP{q*+*MWFV(t8g9QyBUBflva*t%o}Np<^2foV(WuySV2EG!XE>4bpm|hW zZqVG|^~r2$_VRN7Jli`0$WA~O6fK!I`xL(aM3Mam=Sd_Iw6(Q~PXtDzQSsN__YvVUMXBk{yDg3f+}v9YmBpeumw z?d{^Nfs-7V()rs(It&|`P=+@$E$qZe+M3s$LEkJQ$bUq#_wPzQ$$iFlBpu0 zYG>&$l7B#!pt0V`jobWe+cdzT?%ibcBID!Z#N%-RAF0wzCc_)UOSCnGS(6?^%8j$W zD#3QIn|a~q@OYZMX%cj+Eai&GGAv|Gssavz=$0jpWc^#zk7D$ja zY}(iPxaPh_78XtR^`+=JltB@K7VTY%>1F=#dJ~Ur_K-*R!iOxG}o4~oU(ZOl^G5n)iDhSRcU

2;hD*_VYd~J?T31nF&olcj4g+hUpE@Nq>1j`AA0-0iw7YrY?_Jt(x zoy?slUUW9w7MP}4>O)mkaSK5qCor;tybc{}%DJ;`6~_`;9{bxlj-AQkl@-h^%qC45 zDx7q*`tW-cj-ANyqbDbL_jr~E?|)gv&DRH3xL3e0V;Ff{v~D z$>O1})U!3>WAxN1TC0CTvwRy5?;7CC+k*tlRk{!A{QNglY}@MPw(TXQt<4hIY!;u- zS5l~H8tqq>@lvP3En9-@J+wqPsPUyO6;%0E_7A4`+0zrG(iTm%E{0F#SnC_$ibe?* zY-a!Y7mDiV_~Ca#B0j zM>90lx=2hLy!Q4Y!(%yYQy^@>hUJt+z^yWPdNZAScjH%P*xh$OQ<)`Rd1INDD_lfd zJ%k&a92n5~{B=&wO$@Se(;F!5{b~& z)g`R}0`&CsNTE=OYp;@c=$i@wf61O~Q8EO}f{{^!b*nY5i+Y(`FgZ6}Tmh@9Q26ov z8svKk27_$fx|QDE-U|trj2Qj>{Zcp_rg^Q+;}5_spK+k6GJm!yAuPz{Z2FF5*mY|K zukTyFU}5eunVnxKX_`c%Q6iDZ3T2-NgwoiN%jHNU63ooZl)O-u zQ4|H+wlNF?T~61@X0v!a9-5k(2#3RXJe~`8_V4RI4#FSZ6pO`#uIr@JX>?u3vMdxu n!R>bA^Z80mt*Vy=eYpMwd_Z?GK3xw}00000NkvXXu0mjf4#?=u diff --git a/modular_citadel/interface/skin.dmf b/modular_citadel/interface/skin.dmf index e4531a24ea..21558ec230 100644 --- a/modular_citadel/interface/skin.dmf +++ b/modular_citadel/interface/skin.dmf @@ -54,7 +54,6 @@ window "mainwindow" size = 640x440 anchor1 = none anchor2 = none - background-color = #272727 is-default = true saved-params = "pos;size;is-minimized;is-maximized" icon = 'icons\\ss13_64.png' @@ -66,7 +65,6 @@ window "mainwindow" size = 637x440 anchor1 = 0,0 anchor2 = 100,100 - background-color = #272727 saved-params = "splitter" left = "mapwindow" right = "infowindow" @@ -78,7 +76,6 @@ window "mainwindow" size = 200x200 anchor1 = none anchor2 = none - background-color = #272727 is-visible = false saved-params = "" elem "tooltip" @@ -87,7 +84,6 @@ window "mainwindow" size = 999x999 anchor1 = none anchor2 = none - background-color = #272727 is-visible = false saved-params = "" @@ -98,7 +94,6 @@ window "mapwindow" size = 640x480 anchor1 = none anchor2 = none - background-color = #272727 saved-params = "pos;size;is-minimized;is-maximized" is-pane = true elem "map" @@ -120,7 +115,6 @@ window "infowindow" size = 640x480 anchor1 = none anchor2 = none - background-color = #272727 saved-params = "pos;size;is-minimized;is-maximized" is-pane = true elem "info" @@ -129,7 +123,6 @@ window "infowindow" size = 640x445 anchor1 = 0,0 anchor2 = 100,100 - background-color = #272727 saved-params = "splitter" left = "statwindow" right = "outputwindow" @@ -140,8 +133,6 @@ window "infowindow" size = 104x20 anchor1 = 3,0 anchor2 = 19,0 - text-color = #ffffff - background-color = #40628a saved-params = "is-checked" text = "Changelog" command = "changelog" @@ -151,8 +142,6 @@ window "infowindow" size = 100x20 anchor1 = 19,0 anchor2 = 34,0 - text-color = #ffffff - background-color = #40628a saved-params = "is-checked" text = "Rules" command = "rules" @@ -162,8 +151,6 @@ window "infowindow" size = 100x20 anchor1 = 34,0 anchor2 = 50,0 - text-color = #ffffff - background-color = #40628a saved-params = "is-checked" text = "Wiki" command = "wiki" @@ -173,8 +160,6 @@ window "infowindow" size = 100x20 anchor1 = 50,0 anchor2 = 66,0 - text-color = #ffffff - background-color = #40628a saved-params = "is-checked" text = "Forum" command = "forum" @@ -184,8 +169,6 @@ window "infowindow" size = 100x20 anchor1 = 66,0 anchor2 = 81,0 - text-color = #ffffff - background-color = #40628a saved-params = "is-checked" text = "GitHub" command = "github" @@ -196,8 +179,6 @@ window "infowindow" anchor1 = 81,0 anchor2 = 97,0 font-size = 8 - text-color = #ffffff - background-color = #40628a saved-params = "is-checked" text = "Report Issue" command = "report-issue" @@ -209,6 +190,7 @@ window "outputwindow" size = 640x480 anchor1 = none anchor2 = none + text-color = #99aab5 background-color = #272727 saved-params = "pos;size;is-minimized;is-maximized" titlebar = false @@ -223,7 +205,6 @@ window "outputwindow" size = 595x20 anchor1 = 0,100 anchor2 = 100,100 - font-size = 10 background-color = #d3b5b5 is-default = true saved-params = "command" @@ -233,8 +214,6 @@ window "outputwindow" size = 37x20 anchor1 = 100,100 anchor2 = none - text-color = #ffffff - background-color = #272727 saved-params = "is-checked" text = "Chat" command = ".winset \"say.is-checked=true ? input.command=\"!say \\\"\" : input.command=\"" @@ -246,7 +225,7 @@ window "outputwindow" size = 640x456 anchor1 = 0,0 anchor2 = 100,100 - background-color = #272727 + background-color = #ffffff is-visible = false is-disabled = true saved-params = "" @@ -257,8 +236,6 @@ window "outputwindow" size = 640x456 anchor1 = 0,0 anchor2 = 100,100 - text-color = #40628a - background-color = #272727 is-default = true saved-params = "" @@ -269,7 +246,6 @@ window "statwindow" size = 640x480 anchor1 = none anchor2 = none - background-color = #272727 saved-params = "pos;size;is-minimized;is-maximized" is-pane = true elem "stat" @@ -278,14 +254,8 @@ window "statwindow" size = 640x480 anchor1 = 0,0 anchor2 = 100,100 - text-color = #ffffff - background-color = #383838 is-default = true saved-params = "" - tab-text-color = #ffffff - tab-background-color = #272727 - prefix-color = #ebebeb - suffix-color = #ebebeb window "preferences_window" elem "preferences_window" diff --git a/tgstation.dme b/tgstation.dme index bb47c443ff..88cc64a64e 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -1451,6 +1451,7 @@ #include "code\modules\client\client_colour.dm" #include "code\modules\client\client_defines.dm" #include "code\modules\client\client_procs.dm" +#include "code\modules\client\darkmode.dm" #include "code\modules\client\message.dm" #include "code\modules\client\player_details.dm" #include "code\modules\client\preferences.dm" From 44390e00e40c1499599246eed687629965e11520 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sat, 6 Jul 2019 02:03:21 +0200 Subject: [PATCH 2/4] ok --- code/__DEFINES/colors.dm | 10 +++++++++- .../browserassets/css/browserOutput.css | 4 ++-- .../browserassets/css/browserOutput_white.css | 2 +- modular_citadel/interface/skin.dmf | 20 +++++++++++++++++-- 4 files changed, 30 insertions(+), 6 deletions(-) diff --git a/code/__DEFINES/colors.dm b/code/__DEFINES/colors.dm index e187b85a3d..e42b145f6d 100644 --- a/code/__DEFINES/colors.dm +++ b/code/__DEFINES/colors.dm @@ -3,9 +3,17 @@ #define COLOR_INPUT_DISABLED "#F0F0F0" #define COLOR_INPUT_ENABLED "#D3B5B5" +#define COLOR_DARKMODE_INFO_BUTTONS_BG "#40628A" +#define COLOR_DARKMODE_ISSUE_BUTTON_BG "#ce4242" #define COLOR_DARKMODE_BACKGROUND "#202020" #define COLOR_DARKMODE_DARKBACKGROUND "#171717" -#define COLOR_DARKMODE_TEXT "#a4bad6" +#define COLOR_DARKMODE_TEXT "#deebfc" + +#define COLOR_WHITEMODE_INFO_BUTTONS_BG "#90b3dd" +#define COLOR_WHITEMODE_ISSUE_BUTTON_BG "#ef7f7f" +#define COLOR_WHITEMODE_BACKGROUND "#ffffff" +#define COLOR_WHITEMODE_DARKBACKGROUND "#eeeeee" +#define COLOR_WHITEMODE_TEXT "#000000" #define COLOR_FLOORTILE_GRAY "#8D8B8B" #define COLOR_ALMOST_BLACK "#333333" diff --git a/code/modules/goonchat/browserassets/css/browserOutput.css b/code/modules/goonchat/browserassets/css/browserOutput.css index e455255eb0..5f179e453f 100644 --- a/code/modules/goonchat/browserassets/css/browserOutput.css +++ b/code/modules/goonchat/browserassets/css/browserOutput.css @@ -7,13 +7,13 @@ html, body { padding: 0; margin: 0; height: 100%; - color: #a4bad6; + color: #deebfc; } body { background: #171717; font-family: Verdana, sans-serif; font-size: 9pt; - font-color: #a4bad6; + font-color: #deebfc; line-height: 1.2; overflow-x: hidden; overflow-y: scroll; diff --git a/code/modules/goonchat/browserassets/css/browserOutput_white.css b/code/modules/goonchat/browserassets/css/browserOutput_white.css index c54f1a8573..0dc25dc664 100644 --- a/code/modules/goonchat/browserassets/css/browserOutput_white.css +++ b/code/modules/goonchat/browserassets/css/browserOutput_white.css @@ -10,7 +10,7 @@ html, body { color: #000000; } body { - background: #E0E0E0; /*CIT CHANGE - darkens chatbox a lil*/ + background: #EEEEEE font-family: Verdana, sans-serif; font-size: 9pt; line-height: 1.2; diff --git a/modular_citadel/interface/skin.dmf b/modular_citadel/interface/skin.dmf index 21558ec230..aabb71a193 100644 --- a/modular_citadel/interface/skin.dmf +++ b/modular_citadel/interface/skin.dmf @@ -54,6 +54,7 @@ window "mainwindow" size = 640x440 anchor1 = none anchor2 = none + background-color = #eeeeee is-default = true saved-params = "pos;size;is-minimized;is-maximized" icon = 'icons\\ss13_64.png' @@ -65,6 +66,7 @@ window "mainwindow" size = 637x440 anchor1 = 0,0 anchor2 = 100,100 + background-color = #eeeeee saved-params = "splitter" left = "mapwindow" right = "infowindow" @@ -76,6 +78,7 @@ window "mainwindow" size = 200x200 anchor1 = none anchor2 = none + background-color = #ffffff is-visible = false saved-params = "" elem "tooltip" @@ -84,6 +87,7 @@ window "mainwindow" size = 999x999 anchor1 = none anchor2 = none + background-color = #ffffff is-visible = false saved-params = "" @@ -115,6 +119,8 @@ window "infowindow" size = 640x480 anchor1 = none anchor2 = none + background-color = #eeeeee + background-color = none saved-params = "pos;size;is-minimized;is-maximized" is-pane = true elem "info" @@ -123,6 +129,7 @@ window "infowindow" size = 640x445 anchor1 = 0,0 anchor2 = 100,100 + background-color = none saved-params = "splitter" left = "statwindow" right = "outputwindow" @@ -133,6 +140,7 @@ window "infowindow" size = 104x20 anchor1 = 3,0 anchor2 = 19,0 + background-color = #90b3dd saved-params = "is-checked" text = "Changelog" command = "changelog" @@ -142,6 +150,7 @@ window "infowindow" size = 100x20 anchor1 = 19,0 anchor2 = 34,0 + background-color = #90b3dd saved-params = "is-checked" text = "Rules" command = "rules" @@ -151,6 +160,7 @@ window "infowindow" size = 100x20 anchor1 = 34,0 anchor2 = 50,0 + background-color = #90b3dd saved-params = "is-checked" text = "Wiki" command = "wiki" @@ -160,6 +170,7 @@ window "infowindow" size = 100x20 anchor1 = 50,0 anchor2 = 66,0 + background-color = #90b3dd saved-params = "is-checked" text = "Forum" command = "forum" @@ -169,6 +180,7 @@ window "infowindow" size = 100x20 anchor1 = 66,0 anchor2 = 81,0 + background-color = #90b3dd saved-params = "is-checked" text = "GitHub" command = "github" @@ -179,6 +191,7 @@ window "infowindow" anchor1 = 81,0 anchor2 = 97,0 font-size = 8 + background-color = #ef7f7f saved-params = "is-checked" text = "Report Issue" command = "report-issue" @@ -190,8 +203,6 @@ window "outputwindow" size = 640x480 anchor1 = none anchor2 = none - text-color = #99aab5 - background-color = #272727 saved-params = "pos;size;is-minimized;is-maximized" titlebar = false statusbar = false @@ -207,6 +218,7 @@ window "outputwindow" anchor2 = 100,100 background-color = #d3b5b5 is-default = true + border = sunken saved-params = "command" elem "say" type = BUTTON @@ -214,6 +226,7 @@ window "outputwindow" size = 37x20 anchor1 = 100,100 anchor2 = none + background-color = #eeeeee saved-params = "is-checked" text = "Chat" command = ".winset \"say.is-checked=true ? input.command=\"!say \\\"\" : input.command=\"" @@ -236,6 +249,7 @@ window "outputwindow" size = 640x456 anchor1 = 0,0 anchor2 = 100,100 + background-color = #eeeeee is-default = true saved-params = "" @@ -254,8 +268,10 @@ window "statwindow" size = 640x480 anchor1 = 0,0 anchor2 = 100,100 + background-color = #eeeeee is-default = true saved-params = "" + tab-background-color = #eeeeee window "preferences_window" elem "preferences_window" From d14b18f89a80c8f26d2d3c05965762147dd9895a Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sat, 6 Jul 2019 03:17:20 +0200 Subject: [PATCH 3/4] I hate byond dmf editor what the $&@* --- code/__DEFINES/colors.dm | 2 +- code/modules/client/darkmode.dm | 163 +++++++++--------- .../browserassets/css/browserOutput.css | 4 +- .../browserassets/css/browserOutput_white.css | 4 +- modular_citadel/interface/skin.dmf | 8 +- 5 files changed, 86 insertions(+), 95 deletions(-) diff --git a/code/__DEFINES/colors.dm b/code/__DEFINES/colors.dm index e42b145f6d..06c3c352ca 100644 --- a/code/__DEFINES/colors.dm +++ b/code/__DEFINES/colors.dm @@ -7,7 +7,7 @@ #define COLOR_DARKMODE_ISSUE_BUTTON_BG "#ce4242" #define COLOR_DARKMODE_BACKGROUND "#202020" #define COLOR_DARKMODE_DARKBACKGROUND "#171717" -#define COLOR_DARKMODE_TEXT "#deebfc" +#define COLOR_DARKMODE_TEXT "#f0f0f0" #define COLOR_WHITEMODE_INFO_BUTTONS_BG "#90b3dd" #define COLOR_WHITEMODE_ISSUE_BUTTON_BG "#ef7f7f" diff --git a/code/modules/client/darkmode.dm b/code/modules/client/darkmode.dm index 52c2d02372..9df761dd4d 100644 --- a/code/modules/client/darkmode.dm +++ b/code/modules/client/darkmode.dm @@ -14,96 +14,91 @@ Thanks to spacemaniac and mcdonald for help with the JS side of this. /client/proc/force_white_theme() //There's no way round it. We're essentially changing the skin by hand. It's painful but it works, and is the way Lummox suggested. //Main windows - - winset(src, "infowindow", "background-color = [COLOR_DARKMODE_DARKBACKGROUND];background-color = none") - winset(src, "infowindow", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") - winset(src, "info", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") - winset(src, "info", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") - winset(src, "browseroutput", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") - winset(src, "browseroutput", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") - winset(src, "outputwindow", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") - winset(src, "outputwindow", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") - winset(src, "mainwindow", "background-color = [COLOR_DARKMODE_DARKBACKGROUND];background-color = none") - winset(src, "split", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") + winset(src, "infowindow", "background-color = [COLOR_DARKMODE_DARKBACKGROUND];background-color = [COLOR_WHITEMODE_DARKBACKGROUND]") + winset(src, "infowindow", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "info", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = [COLOR_WHITEMODE_BACKGROUND]") + winset(src, "info", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "browseroutput", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = [COLOR_DARKMODE_INFO_BUTTONS_BG]") + winset(src, "browseroutput", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "outputwindow", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = [COLOR_WHITEMODE_DARKBACKGROUND]") + winset(src, "outputwindow", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "mainwindow", "background-color = [COLOR_DARKMODE_DARKBACKGROUND];background-color = [COLOR_WHITEMODE_DARKBACKGROUND]") + winset(src, "split", "background-color = [COLOR_MODE_DARKBACKGROUND];background-color = [COLOR_WHITEMODE_BACKGROUND]") //Buttons - winset(src, "changelog", "background-color = #494949;background-color = none") - winset(src, "changelog", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") - winset(src, "rules", "background-color = #494949;background-color = none") - winset(src, "rules", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") - winset(src, "wiki", "background-color = #494949;background-color = none") - winset(src, "wiki", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") - winset(src, "forum", "background-color = #494949;background-color = none") - winset(src, "forum", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") - winset(src, "github", "background-color = #3a3a3a;background-color = none") - winset(src, "github", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") - winset(src, "report-issue", "background-color = #492020;background-color = none") - winset(src, "report-issue", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "changelog", "background-color = [COLOR_DARKMODE_INFO_BUTTONS_BG];background-color = [COLOR_WHITEMODE_INFO_BUTTONS_BG]") + winset(src, "changelog", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "rules", "background-color = [COLOR_DARKMODE_INFO_BUTTONS_BG];background-color = [COLOR_WHITEMODE_INFO_BUTTONS_BG]") + winset(src, "rules", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "wiki", "background-color = [COLOR_DARKMODE_INFO_BUTTONS_BG];background-color = [COLOR_WHITEMODE_INFO_BUTTONS_BG]") + winset(src, "wiki", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "forum", "background-color = [COLOR_DARKMODE_INFO_BUTTONS_BG];background-color = [COLOR_WHITEMODE_INFO_BUTTONS_BG]") + winset(src, "forum", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "github", "background-color = [COLOR_DARKMODE_INFO_BUTTONS_BG];background-color = [COLOR_WHITEMODE_INFO_BUTTONS_BG]") + winset(src, "github", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "report-issue", "background-color = [COLOR_DARKMODE_ISSUE_BUTTON_BG];background-color = [COLOR_WHITEMODE_ISSUE_BUTTON_BG]") + winset(src, "report-issue", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") //Status and verb tabs - winset(src, "output", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") - winset(src, "output", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") - winset(src, "outputwindow", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") - winset(src, "outputwindow", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") - winset(src, "statwindow", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") - winset(src, "statwindow", "text-color = #eaeaea;text-color = #000000") - winset(src, "stat", "background-color = [COLOR_DARKMODE_DARKBACKGROUND];background-color = #FFFFFF") - winset(src, "stat", "tab-background-color = [COLOR_DARKMODE_BACKGROUND];tab-background-color = none") - winset(src, "stat", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") - winset(src, "stat", "tab-text-color = [COLOR_DARKMODE_TEXT];tab-text-color = #000000") - winset(src, "stat", "prefix-color = [COLOR_DARKMODE_TEXT];prefix-color = #000000") - winset(src, "stat", "suffix-color = [COLOR_DARKMODE_TEXT];suffix-color = #000000") - //Say, OOC, me Buttons etc. - winset(src, "say", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") - winset(src, "say", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") - winset(src, "asset_cache_browser", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") - winset(src, "asset_cache_browser", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") - winset(src, "tooltip", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = none") - winset(src, "tooltip", "text-color = [COLOR_DARKMODE_TEXT];text-color = #000000") + winset(src, "output", "background-color = [COLOR_DARKMODE_DARKBACKGROUND];background-color = [COLOR_WHITEMODE_BACKGROUND]") + winset(src, "output", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "statwindow", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = [COLOR_WHITEMODE_DARKBACKGROUND]") + winset(src, "statwindow", "text-color = #eaeaea;text-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "stat", "background-color = [COLOR_DARKMODE_DARKBACKGROUND];background-color = [COLOR_WHITEMODE_BACKGROUND]") + winset(src, "stat", "tab-background-color = [COLOR_DARKMODE_BACKGROUND];tab-background-color = [COLOR_WHITEMODE_DARKBACKGROUND]") + winset(src, "stat", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "stat", "tab-text-color = [COLOR_DARKMODE_TEXT];tab-text-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "stat", "prefix-color = [COLOR_DARKMODE_TEXT];prefix-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "stat", "suffix-color = [COLOR_DARKMODE_TEXT];suffix-color = [COLOR_WHITEMODE_TEXT]") + //Etc. + winset(src, "say", "background-color = [COLOR_DARKMODE_DARKBACKGROUND];background-color = [COLOR_WHITEMODE_DARKBACKGROUND]") + winset(src, "say", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "asset_cache_browser", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = [COLOR_WHITEMODE_DARKBACKGROUND]") + winset(src, "asset_cache_browser", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") + winset(src, "tooltip", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = [COLOR_WHITEMODE_BACKGROUND]") + winset(src, "tooltip", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") /client/proc/force_dark_theme() //Inversely, if theyre using white theme and want to swap to the superior dark theme, let's get WINSET() ing //Main windows - winset(src, "infowindow", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") - winset(src, "infowindow", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "info", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") - winset(src, "info", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "browseroutput", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") - winset(src, "browseroutput", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "outputwindow", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") - winset(src, "outputwindow", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "mainwindow", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") - winset(src, "split", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "infowindow", "background-color = [COLOR_WHITEMODE_DARKBACKGROUND];background-color = [COLOR_DARKMODE_DARKBACKGROUND]") + winset(src, "infowindow", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "info", "background-color = [COLOR_WHITEMODE_BACKGROUND];background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "info", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "browseroutput", "background-color = [COLOR_WHITEMODE_BACKGROUND];background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "browseroutput", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "outputwindow", "background-color = [COLOR_WHITEMODE_DARKBACKGROUND];background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "outputwindow", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "mainwindow", "background-color = [COLOR_WHITEMODE_DARKBACKGROUND];background-color = [COLOR_DARKMODE_DARKBACKGROUND]") + winset(src, "split", "background-color = [COLOR_WHITEMODE_BACKGROUND];background-color = [COLOR_DARKMODE_BACKGROUND]") //Buttons - winset(src, "changelog", "background-color = none;background-color = #494949") - winset(src, "changelog", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "rules", "background-color = none;background-color = #494949") - winset(src, "rules", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "wiki", "background-color = none;background-color = #494949") - winset(src, "wiki", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "forum", "background-color = none;background-color = #494949") - winset(src, "forum", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "github", "background-color = none;background-color = #3a3a3a") - winset(src, "github", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "report-issue", "background-color = none;background-color = #492020") - winset(src, "report-issue", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "changelog", "background-color = [COLOR_WHITEMODE_INFO_BUTTONS_BG];background-color = [COLOR_DARKMODE_INFO_BUTTONS_BG]") + winset(src, "changelog", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "rules", "background-color = [COLOR_WHITEMODE_INFO_BUTTONS_BG];background-color = [COLOR_DARKMODE_INFO_BUTTONS_BG]") + winset(src, "rules", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "wiki", "background-color = [COLOR_WHITEMODE_INFO_BUTTONS_BG];background-color = [COLOR_DARKMODE_INFO_BUTTONS_BG]") + winset(src, "wiki", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "forum", "background-color = [COLOR_WHITEMODE_INFO_BUTTONS_BG];background-color = [COLOR_DARKMODE_INFO_BUTTONS_BG]") + winset(src, "forum", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "github", "background-color = [COLOR_WHITEMODE_INFO_BUTTONS_BG];background-color = [COLOR_DARKMODE_INFO_BUTTONS_BG]") + winset(src, "github", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "report-issue", "background-color = [COLOR_WHITEMODE_ISSUE_BUTTON_BG];background-color = [COLOR_DARKMODE_ISSUE_BUTTON_BG]") + winset(src, "report-issue", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") //Status and verb tabs - winset(src, "output", "background-color = none;background-color = [COLOR_DARKMODE_DARKBACKGROUND]") - winset(src, "output", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "outputwindow", "background-color = none;background-color = [COLOR_DARKMODE_DARKBACKGROUND]") - winset(src, "outputwindow", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "statwindow", "background-color = none;background-color = [COLOR_DARKMODE_DARKBACKGROUND]") - winset(src, "statwindow", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "stat", "background-color = #FFFFFF;background-color = [COLOR_DARKMODE_DARKBACKGROUND]") - winset(src, "stat", "tab-background-color = none;tab-background-color = [COLOR_DARKMODE_BACKGROUND]") - winset(src, "stat", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "stat", "tab-text-color = #000000;tab-text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "stat", "prefix-color = #000000;prefix-color = [COLOR_DARKMODE_TEXT]") - winset(src, "stat", "suffix-color = #000000;suffix-color = [COLOR_DARKMODE_TEXT]") - //Say, OOC, me Buttons etc. - winset(src, "say", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") - winset(src, "say", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "asset_cache_browser", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") - winset(src, "asset_cache_browser", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") - winset(src, "tooltip", "background-color = none;background-color = [COLOR_DARKMODE_BACKGROUND]") - winset(src, "tooltip", "text-color = #000000;text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "output", "background-color = [COLOR_WHITEMODE_DARKBACKGROUND];background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "output", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "statwindow", "background-color = [COLOR_WHITEMODE_DARKBACKGROUND];background-color = [COLOR_DARKMODE_DARKBACKGROUND]") + winset(src, "statwindow", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "stat", "background-color = [COLOR_WHITEMODE_BACKGROUND];background-color = [COLOR_DARKMODE_DARKBACKGROUND]") + winset(src, "stat", "tab-background-color = [COLOR_WHITEMODE_DARKBACKGROUND];tab-background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "stat", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "stat", "tab-text-color = [COLOR_WHITEMODE_TEXT];tab-text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "stat", "prefix-color = [COLOR_WHITEMODE_TEXT];prefix-color = [COLOR_DARKMODE_TEXT]") + winset(src, "stat", "suffix-color = [COLOR_WHITEMODE_TEXT];suffix-color = [COLOR_DARKMODE_TEXT]") + //Etc. + winset(src, "say", "background-color = [COLOR_WHITEMODE_DARKBACKGROUND];background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "say", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "asset_cache_browser", "background-color = [COLOR_WHITEMODE_DARKBACKGROUND];background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "asset_cache_browser", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") + winset(src, "tooltip", "background-color = [COLOR_WHITEMODE_BACKGROUND];background-color = [COLOR_DARKMODE_BACKGROUND]") + winset(src, "tooltip", "text-color = [COLOR_WHITEMODE_TEXT];text-color = [COLOR_DARKMODE_TEXT]") /datum/asset/simple/goonchat @@ -118,5 +113,5 @@ Thanks to spacemaniac and mcdonald for help with the JS side of this. "fontawesome-webfont.woff" = 'tgui/assets/fonts/fontawesome-webfont.woff', "font-awesome.css" = 'code/modules/goonchat/browserassets/css/font-awesome.css', "browserOutput.css" = 'code/modules/goonchat/browserassets/css/browserOutput.css', - "browserOutput_white.css" = 'code/modules/goonchat/browserassets/css/browserOutput_white.css', + "browserOutput_white.css" = 'code/modules/goonchat/browserassets/css/browserOutput_white.css', ) diff --git a/code/modules/goonchat/browserassets/css/browserOutput.css b/code/modules/goonchat/browserassets/css/browserOutput.css index 5f179e453f..b6db020df0 100644 --- a/code/modules/goonchat/browserassets/css/browserOutput.css +++ b/code/modules/goonchat/browserassets/css/browserOutput.css @@ -7,13 +7,13 @@ html, body { padding: 0; margin: 0; height: 100%; - color: #deebfc; + color: #f0f0f0; } body { background: #171717; font-family: Verdana, sans-serif; font-size: 9pt; - font-color: #deebfc; + font-color: #f0f0f0; line-height: 1.2; overflow-x: hidden; overflow-y: scroll; diff --git a/code/modules/goonchat/browserassets/css/browserOutput_white.css b/code/modules/goonchat/browserassets/css/browserOutput_white.css index 0dc25dc664..e21185449b 100644 --- a/code/modules/goonchat/browserassets/css/browserOutput_white.css +++ b/code/modules/goonchat/browserassets/css/browserOutput_white.css @@ -10,7 +10,7 @@ html, body { color: #000000; } body { - background: #EEEEEE + background: #fff; font-family: Verdana, sans-serif; font-size: 9pt; line-height: 1.2; @@ -101,7 +101,7 @@ a.popt {text-decoration: none;} #ping { position: fixed; top: 0; - right: 80px; + right: 115px; width: 45px; background: #ddd; height: 30px; diff --git a/modular_citadel/interface/skin.dmf b/modular_citadel/interface/skin.dmf index aabb71a193..c5b5138609 100644 --- a/modular_citadel/interface/skin.dmf +++ b/modular_citadel/interface/skin.dmf @@ -120,7 +120,6 @@ window "infowindow" anchor1 = none anchor2 = none background-color = #eeeeee - background-color = none saved-params = "pos;size;is-minimized;is-maximized" is-pane = true elem "info" @@ -129,7 +128,6 @@ window "infowindow" size = 640x445 anchor1 = 0,0 anchor2 = 100,100 - background-color = none saved-params = "splitter" left = "statwindow" right = "outputwindow" @@ -203,6 +201,7 @@ window "outputwindow" size = 640x480 anchor1 = none anchor2 = none + background-color = #eeeeee saved-params = "pos;size;is-minimized;is-maximized" titlebar = false statusbar = false @@ -249,7 +248,6 @@ window "outputwindow" size = 640x456 anchor1 = 0,0 anchor2 = 100,100 - background-color = #eeeeee is-default = true saved-params = "" @@ -260,6 +258,7 @@ window "statwindow" size = 640x480 anchor1 = none anchor2 = none + background-color = #eeeeee saved-params = "pos;size;is-minimized;is-maximized" is-pane = true elem "stat" @@ -268,7 +267,6 @@ window "statwindow" size = 640x480 anchor1 = 0,0 anchor2 = 100,100 - background-color = #eeeeee is-default = true saved-params = "" tab-background-color = #eeeeee @@ -280,7 +278,6 @@ window "preferences_window" size = 1280x1000 anchor1 = none anchor2 = none - background-color = none is-visible = false saved-params = "pos;size;is-minimized;is-maximized" statusbar = false @@ -290,7 +287,6 @@ window "preferences_window" size = 960x1000 anchor1 = 0,0 anchor2 = 75,100 - background-color = none saved-params = "" elem "character_preview_map" type = MAP From 29dcfa11608ec2791bc1eafba29aaf43d49d1f66 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Sat, 6 Jul 2019 03:56:06 +0200 Subject: [PATCH 4/4] bluepilled. --- code/modules/client/darkmode.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/client/darkmode.dm b/code/modules/client/darkmode.dm index 9df761dd4d..9e8d136b3b 100644 --- a/code/modules/client/darkmode.dm +++ b/code/modules/client/darkmode.dm @@ -23,7 +23,7 @@ Thanks to spacemaniac and mcdonald for help with the JS side of this. winset(src, "outputwindow", "background-color = [COLOR_DARKMODE_BACKGROUND];background-color = [COLOR_WHITEMODE_DARKBACKGROUND]") winset(src, "outputwindow", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]") winset(src, "mainwindow", "background-color = [COLOR_DARKMODE_DARKBACKGROUND];background-color = [COLOR_WHITEMODE_DARKBACKGROUND]") - winset(src, "split", "background-color = [COLOR_MODE_DARKBACKGROUND];background-color = [COLOR_WHITEMODE_BACKGROUND]") + winset(src, "split", "background-color = [COLOR_DARKMODE_DARKBACKGROUND];background-color = [COLOR_WHITEMODE_BACKGROUND]") //Buttons winset(src, "changelog", "background-color = [COLOR_DARKMODE_INFO_BUTTONS_BG];background-color = [COLOR_WHITEMODE_INFO_BUTTONS_BG]") winset(src, "changelog", "text-color = [COLOR_DARKMODE_TEXT];text-color = [COLOR_WHITEMODE_TEXT]")