Ports Goonchat from Baystation. (#9635)

changes:

    rscadd: "Ported a new chat system, Goonchat, that allows for cool things like changing font style, size, spacing, highlighting up to 5 strings in the chat, and DARK MODE."
    rscadd: "Repeated chat messages can now get compacted. You can disable this in goonchat settings."
    rscadd: "You can change icon style to any font on your system."
    tweak: "The game window has been altered a bit to adjust for this."
    rscdel: "Removed skin style prefs as they are no longer used."
This commit is contained in:
Matt Atlas
2020-09-24 23:06:04 +03:00
committed by GitHub
parent a7401aeb1d
commit d4666caaac
277 changed files with 4057 additions and 2955 deletions
+2 -2
View File
@@ -33,7 +33,7 @@ var/global/list/rad_collectors = list()
if(P)
if(P.air_contents.gas[GAS_PHORON] == 0)
investigate_log("<font color='red'>out of fuel</font>.","singulo")
investigate_log("<span class='warning'>out of fuel</span>.","singulo")
eject()
else
P.air_contents.adjust_gas(GAS_PHORON, -0.001*drainratio)
@@ -46,7 +46,7 @@ var/global/list/rad_collectors = list()
toggle_power()
user.visible_message("[user.name] turns the [src.name] [active? "on":"off"].", \
"You turn the [src.name] [active? "on":"off"].")
investigate_log("turned [active?"<font color='green'>on</font>":"<font color='red'>off</font>"] by [user.key]. [P?"Fuel: [round(P.air_contents.gas[GAS_PHORON]/0.29)]%":"<font color='red'>It is empty</font>"].","singulo")
investigate_log("turned [active?"<font color='green'>on</font>":"<span class='warning'>off</span>"] by [user.key]. [P?"Fuel: [round(P.air_contents.gas[GAS_PHORON]/0.29)]%":"<span class='warning'>It is empty</span>"].","singulo")
return
else
to_chat(user, "<span class='warning'>The controls are locked!</span>")
+4 -4
View File
@@ -51,7 +51,7 @@
if(special_emitter)
message_admins("Emitter deleted at ([x],[y],[z] - <A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>)",0,1)
log_game("Emitter deleted at ([x],[y],[z])")
investigate_log("<font color='red'>deleted</font> at ([x],[y],[z])","singulo")
investigate_log("<span class='warning'>deleted</span> at ([x],[y],[z])","singulo")
QDEL_NULL(wifi_receiver)
QDEL_NULL(spark_system)
QDEL_NULL(signaler)
@@ -89,7 +89,7 @@
if(special_emitter)
message_admins("Emitter turned off by [key_name_admin(user, user.client)](<A HREF='?_src_=holder;adminmoreinfo=\ref[user]'>?</A>) in ([x],[y],[z] - <A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>)",0,1)
log_game("Emitter turned off by [user.ckey]([user]) in ([x],[y],[z])",ckey=key_name(user))
investigate_log("turned <font color='red'>off</font> by [user.key]","singulo")
investigate_log("turned <span class='warning'>off</span> by [user.key]","singulo")
else
active = TRUE
shot_number = 0
@@ -134,7 +134,7 @@
powered = FALSE
update_icon()
if(special_emitter)
investigate_log("lost power and turned <font color='red'>off</font>","singulo")
investigate_log("lost power and turned <span class='warning'>off</span>","singulo")
return
last_shot = world.time
@@ -269,4 +269,4 @@
if(!locked)
activate(null)
else
visible_message("\icon[src] [src] whines, \"Access denied!\"")
visible_message("[icon2html(src, viewers(get_turf(src)))] [src] whines, \"Access denied!\"")
@@ -199,7 +199,7 @@ field_generator power level display
else
visible_message(SPAN_ALERT("\The [src] shuts down!"))
turn_off()
investigate_log("ran out of power and <font color='red'>deactivated</font>","singulo")
investigate_log("ran out of power and <span class='warning'>deactivated</span>","singulo")
src.power = 0
return 0
@@ -317,5 +317,5 @@ field_generator power level display
if((world.time - O.last_warning) > 50) //to stop message-spam
temp = 0
message_admins("A singulo exists and a containment field has failed.",1)
investigate_log("has <font color='red'>failed</font> whilst a singulo exists.","singulo")
investigate_log("has <span class='warning'>failed</span> whilst a singulo exists.","singulo")
O.last_warning = world.time
@@ -110,7 +110,7 @@ So, hopefully this is helpful if any more icons are to be added/changed/wonderin
..()
if(master && master.active)
master.toggle_power()
investigate_log("was moved whilst active; it <font color='red'>powered down</font>.","singulo")
investigate_log("was moved whilst active; it <span class='warning'>powered down</span>.","singulo")
/obj/structure/particle_accelerator/ex_act(severity)
switch(severity)
@@ -124,7 +124,7 @@
else
message_admins("PA Control Computer increased to [strength] by [key_name(usr, usr.client)](<A HREF='?_src_=holder;adminmoreinfo=\ref[usr]'>?</A>) in ([x],[y],[z] - <A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>)",0,1)
log_game("PA Control Computer increased to [strength] by [usr.ckey]([usr]) in ([x],[y],[z])",ckey=key_name(usr))
investigate_log("increased to <font color='red'>[strength]</font> by [usr.key]","singulo")
investigate_log("increased to <span class='warning'>[strength]</span> by [usr.key]","singulo")
strength_change()
/obj/machinery/particle_accelerator/control_box/proc/remove_strength(var/s)
@@ -152,7 +152,7 @@
if(src.active)
//a part is missing!
if(length(connected_parts) < 6)
investigate_log("lost a connected part; It <font color='red'>powered down</font>.","singulo")
investigate_log("lost a connected part; It <span class='warning'>powered down</span>.","singulo")
src.toggle_power()
return
//emit some particles
@@ -213,7 +213,7 @@
/obj/machinery/particle_accelerator/control_box/proc/toggle_power(mob/user)
src.active = !src.active
investigate_log("turned [active?"<font color='red'>ON</font>":"<font color='green'>OFF</font>"] by [user ? user.key : "outside forces"]","singulo")
investigate_log("turned [active?"<span class='warning'>ON</span>":"<font color='green'>OFF</font>"] by [user ? user.key : "outside forces"]","singulo")
message_admins("PA Control Computer turned [active ?"ON":"OFF"] by [key_name(user, TRUE, highlight_special = TRUE)] in ([x],[y],[z] - <A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>)",0,1)
log_game("PA Control Computer turned [active ?"ON":"OFF"] by [key_name(user)] in ([x],[y],[z])",ckey=key_name(user))
if(src.active)
@@ -112,7 +112,7 @@
log_and_message_admins("A singulo has been created without containment fields active.", location = get_turf(src))
investigate_log("was created.[count ? "" : " <font color='red'>No containment fields were active.</font>"]. usr=[usr ? key_name(usr) : "null"]", I_SINGULO)
investigate_log("was created.[count ? "" : " <span class='warning'>No containment fields were active.</span>"]. usr=[usr ? key_name(usr) : "null"]", I_SINGULO)
/obj/singularity/proc/dissipate()
if (!dissipate)
@@ -248,7 +248,7 @@
visible_message("<span class='danger'><font size='3'>You witness the creation of a destructive force that cannot possibly be stopped by human hands.</font></span>")
if (current_size == allowed_size)
investigate_log("<font color='red'>grew to size [current_size].</font>", I_SINGULO)
investigate_log("<span class='warning'>grew to size [current_size].</span>", I_SINGULO)
return 1
else if (current_size < (--temp_allowed_size) && current_size != STAGE_SUPER)
expand(temp_allowed_size)