mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-10 15:45:05 +01:00
Changes the chat to use asset caches instead of directly sending it in a
way to prevent assets not being sent in some conditions. Fixes byond donor icon in ooc. Fixes emojis not working and removes animated emojis.
This commit is contained in:
@@ -267,6 +267,19 @@ GLOBAL_LIST_EMPTY(asset_datums)
|
||||
"jquery-1.10.2.min.js" = 'html/IRV/jquery-1.10.2.min.js'
|
||||
)
|
||||
|
||||
/datum/asset/simple/chat
|
||||
assets = list(
|
||||
"jquery.min.js" = 'code/modules/html_interface/js/jquery.min.js',
|
||||
"json2.min.js" = 'goon/browserassets/js/json2.min.js',
|
||||
"browserOutput.js" = 'goon/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" = 'goon/browserassets/css/font-awesome.css',
|
||||
"browserOutput.css" = 'goon/browserassets/css/browserOutput.css'
|
||||
)
|
||||
|
||||
//Registers HTML Interface assets.
|
||||
/datum/asset/HTML_interface/register()
|
||||
for(var/path in typesof(/datum/html_interface))
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
var/keyname = key
|
||||
if(prefs.unlock_content)
|
||||
if(prefs.toggles & MEMBER_PUBLIC)
|
||||
keyname = "<font color='[prefs.ooccolor ? prefs.ooccolor : GLOB.normal_ooc_colour]'><img style='width:9px;height:9px;' class=icon src=\ref['icons/member_content.dmi'] iconstate=blag>[keyname]</font>"
|
||||
keyname = "<font color='[prefs.ooccolor ? prefs.ooccolor : GLOB.normal_ooc_colour]'>[bicon(icon('icons/member_content.dmi', "blag"))][keyname]</font>"
|
||||
|
||||
for(var/client/C in GLOB.clients)
|
||||
if(C.prefs.chat_toggles & CHAT_OOC)
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
if(search)
|
||||
emoji = lowertext(copytext(text, pos+1, search))
|
||||
if(emoji in emojis)
|
||||
parsed += " [bicon(image('icons/emoji.dmi', iconstate="[emoji]"))]"
|
||||
parsed += bicon(icon('icons/emoji.dmi', emoji))
|
||||
pos = search + 1
|
||||
else
|
||||
parsed += copytext(text, pos, search)
|
||||
|
||||
@@ -2,18 +2,6 @@
|
||||
For the main html chat area
|
||||
*********************************/
|
||||
|
||||
/var/list/chatResources = list(
|
||||
"code/modules/html_interface/jquery.min.js",
|
||||
"goon/browserassets/js/json2.min.js",
|
||||
"goon/browserassets/js/browserOutput.js",
|
||||
"tgui/assets/fonts/fontawesome-webfont.eot",
|
||||
"tgui/assets/fonts/fontawesome-webfont.svg",
|
||||
"tgui/assets/fonts/fontawesome-webfont.ttf",
|
||||
"tgui/assets/fonts/fontawesome-webfont.woff",
|
||||
"goon/browserassets/css/font-awesome.css",
|
||||
"goon/browserassets/css/browserOutput.css"
|
||||
)
|
||||
|
||||
//Precaching a bunch of shit
|
||||
var/savefile/iconCache = new /savefile("data/iconCache.sav") //Cache of icons for the browser output
|
||||
|
||||
@@ -30,7 +18,7 @@ var/savefile/iconCache = new /savefile("data/iconCache.sav") //Cache of icons fo
|
||||
. = ..()
|
||||
|
||||
owner = C
|
||||
// to_chat(world.log, "chatOutput: New()")
|
||||
// log_world("chatOutput: New()")
|
||||
|
||||
/datum/chatOutput/proc/start()
|
||||
//Check for existing chat
|
||||
@@ -57,15 +45,10 @@ var/savefile/iconCache = new /savefile("data/iconCache.sav") //Cache of icons fo
|
||||
|
||||
// to_chat(world.log, "chatOutput: load()")
|
||||
|
||||
for(var/attempts in 1 to 5)
|
||||
for(var/asset in global.chatResources) // No asset cache, just get this fucking shit SENT.
|
||||
owner << browse_rsc(file(asset))
|
||||
|
||||
//log_world("Sending main chat window to client [owner.ckey]")
|
||||
owner << browse(file("goon/browserassets/html/browserOutput.html"), "window=browseroutput")
|
||||
sleep(14 + (chatResources.len * 7))
|
||||
if(!owner || loaded)
|
||||
break
|
||||
var/datum/asset/chat = get_asset_datum(/datum/asset/simple/chat)
|
||||
chat.send(owner)
|
||||
//log_world("Sending main chat window to client [owner.ckey]")
|
||||
owner << browse(file("goon/browserassets/html/browserOutput.html"), "window=browseroutput")
|
||||
|
||||
// log_world("chatOutput: [owner.ckey] load() completed")
|
||||
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 24 KiB |
Reference in New Issue
Block a user