/
githubmirror
/
vgstation13
Обзор
Документация
Войти
/
githubmirror
/
vgstation13
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
Bleeding-Edge
code/modules/research/message_server.dm
134 строки
4 KB
github-user208604
Landline Telephones Update. (#35775)
27 фев 2024, 17:02
Не верифицирован
27 фев 2024, 17:02
694ae25
Код
Авторство
О чём код?
var/global/list/obj/machinery/message_server/message_servers = list() /datum/data_pda_msg var/recipient = "Unspecified" //name of the person var/sender = "Unspecified" //name of the sender var/message = "Blank" //transferred message var/icon/img_sent = null //transferred image, if any /datum/data_pda_msg/New(var/param_rec = "",var/param_sender = "",var/param_message = "", var/icon/param_image = null) if(param_rec) recipient = param_rec if(param_sender) sender = param_sender if(param_message) message = param_message if(param_image) img_sent = param_image /datum/data_rc_msg var/rec_dpt = "Unspecified" //name of the person var/send_dpt = "Unspecified" //name of the sender var/message = "Blank" //transferred message var/stamp = "Unstamped" var/id_auth = "Unauthenticated" var/priority = "Normal" /datum/data_rc_msg/New(var/param_rec = "",var/param_sender = "",var/param_message = "",var/param_stamp = "",var/param_id_auth = "",var/param_priority) if(param_rec) rec_dpt = param_rec if(param_sender) send_dpt = param_sender if(param_message) message = param_message if(param_stamp) stamp = param_stamp if(param_id_auth) id_auth = param_id_auth if(param_priority) switch(param_priority) if(1) priority = "Normal" if(2) priority = "High" if(3) priority = "Extreme" else priority = "Undetermined" /obj/machinery/message_server icon = 'icons/obj/machines/telecomms.dmi' icon_state = "pda_server" name = "Messaging Server" density = 1 anchored = 1.0 use_power = MACHINE_POWER_USE_IDLE idle_power_usage = 10 active_power_usage = 100 ghost_read=0 ghost_write=0 // #430 var/list/datum/data_pda_msg/pda_msgs = list() var/list/datum/data_rc_msg/rc_msgs = list() var/disabled = FALSE var/automatic_landlines = TRUE var/decryptkey = "password" /obj/machinery/message_server/New() message_servers += src decryptkey = GenerateKey() send_pda_message("System Administrator", "system", "This is an automated message. The messaging system is functioning correctly.") ..() update_icon() return /obj/machinery/message_server/Destroy() message_servers -= src ..() return /obj/machinery/message_server/proc/GenerateKey() //Feel free to move to Helpers. var/newKey newKey += pick("the", "if", "of", "as", "in", "a", "you", "from", "to", "an", "too", "little", "snow", "dead", "drunk", "rosebud", "duck", "al", "le") newKey += pick("diamond", "beer", "mushroom", "assistant", "clown", "captain", "twinkie", "security", "nuke", "small", "big", "escape", "yellow", "gloves", "monkey", "engine", "nuclear", "ai") newKey += pick("1", "2", "3", "4", "5", "6", "7", "8", "9", "0") return newKey /obj/machinery/message_server/proc/is_functioning() return !disabled && !(stat & (BROKEN|NOPOWER|FORCEDISABLE)) /obj/machinery/message_server/proc/landlines_functioning() return automatic_landlines && !(stat & (BROKEN|NOPOWER|FORCEDISABLE)) /obj/machinery/message_server/proc/send_pda_message(var/recipient = "",var/sender = "",var/message = "", var/icon/img_sent = null) pda_msgs += new/datum/data_pda_msg(recipient,sender,message,img_sent) /obj/machinery/message_server/proc/send_rc_message(var/recipient = "",var/sender = "",var/message = "",var/stamp = "", var/id_auth = "", var/priority = 1) rc_msgs += new/datum/data_rc_msg(recipient,sender,message,stamp,id_auth) /obj/machinery/message_server/attack_hand(user as mob) if(isobserver(user) && !isAdminGhost(user)) return 0 // to_chat(user, "<span class='notice'>There seem to be some parts missing from this server. They should arrive on the station in a few days, give or take a few CentCom delays.</span>") to_chat(user, "You toggle PDA message passing from [disabled ? "Off" : "On"] to [disabled ? "On" : "Off"]") disabled = !disabled update_icon() return /obj/machinery/message_server/power_change() . = ..() update_icon() /obj/machinery/message_server/update_icon() if(stat & (BROKEN|NOPOWER|FORCEDISABLE)) icon_state = "pda_server-nopower" kill_moody_light() else if (disabled) icon_state = "pda_server-off" update_moody_light('icons/lighting/moody_lights.dmi', "overlay_pda_server") else icon_state = "pda_server-on" update_moody_light('icons/lighting/moody_lights.dmi', "overlay_pda_server") /obj/machinery/blackbox_recorder icon = 'icons/obj/machines/telecomms.dmi' icon_state = "blackbox" name = "Blackbox Recorder" density = 1 anchored = 1.0 use_power = MACHINE_POWER_USE_IDLE idle_power_usage = 10 active_power_usage = 100