Files
Bubberstation/code/modules/emoji/emoji_parse.dm
Kyle Spier-Swenson e59c1308e4 makes emoji parsing return the text if they runtime
so that byond breaking icons doesn't break ooc chat or admin helps
2016-03-16 21:28:36 -07:00

34 lines
725 B
Plaintext

var/list/emojis
/proc/emoji_parse(text)
. = text
if(!config.emojis)
return
if(!emojis)
emojis = icon_states(icon('icons/emoji.dmi'))
var/parsed = ""
var/pos = 1
var/search = 0
var/emoji = ""
while(1)
search = findtext(text, ":", pos)
parsed += copytext(text, pos, search)
if(search)
pos = search
search = findtext(text, ":", pos+1)
if(search)
emoji = lowertext(copytext(text, pos+1, search))
if(emoji in emojis)
parsed += " <img class=icon src=\ref['icons/emoji.dmi'] iconstate='[emoji]'>"
pos = search + 1
else
parsed += copytext(text, pos, search)
pos = search
emoji = ""
continue
else
parsed += copytext(text, pos, search)
break
return parsed