Ports "Mime PDAs only accept emojis for messages, mime cartridge comes with an emoji guidebook"

This commit is contained in:
Ghommie
2019-11-19 00:50:18 +01:00
parent d9b24b20d1
commit f6b06a878c
9 changed files with 86 additions and 18 deletions

View File

@@ -448,7 +448,8 @@ GLOBAL_LIST_EMPTY(asset_datums)
"scanner" = 'icons/pda_icons/pda_scanner.png',
"signaler" = 'icons/pda_icons/pda_signaler.png',
"status" = 'icons/pda_icons/pda_status.png',
"dronephone" = 'icons/pda_icons/pda_dronephone.png'
"dronephone" = 'icons/pda_icons/pda_dronephone.png',
"emoji" = 'icons/pda_icons/pda_emoji.png'
)
/datum/asset/spritesheet/simple/paper

View File

@@ -1,4 +1,4 @@
/proc/emoji_parse(text)
/proc/emoji_parse(text) //turns :ai: into an emoji in text.
. = text
if(!CONFIG_GET(flag/emojis))
return
@@ -30,3 +30,24 @@
break
return parsed
/proc/emoji_sanitize(text) //cuts any text that would not be parsed as an emoji
. = text
if(!CONFIG_GET(flag/emojis))
return
var/static/list/emojis = icon_states(icon('icons/emoji.dmi'))
var/final = "" //only tags are added to this
var/pos = 1
var/search = 0
while(1)
search = findtext(text, ":", pos)
if(search)
pos = search
search = findtext(text, ":", pos+1)
if(search)
var/word = lowertext(copytext(text, pos+1, search))
if(word in emojis)
final += lowertext(copytext(text, pos, search+1))
pos = search + 1
continue
break
return final