diff --git a/code/_onclick/hud/_defines.dm b/code/_onclick/hud/_defines.dm index 9342f948daf..b8bfb039ab3 100644 --- a/code/_onclick/hud/_defines.dm +++ b/code/_onclick/hud/_defines.dm @@ -115,6 +115,10 @@ #define ui_borg_camera "CENTER+3:21,SOUTH:5" #define ui_borg_alerts "CENTER+4:21,SOUTH:5" #define ui_borg_language_menu "CENTER+4:21,SOUTH+1:5" +// SKYRAT EDIT ADDITION BEGIN - Cyborg PDA +#define ui_borg_pda_send "CENTER+5:21,SOUTH:5" // To the right of the alert panel +#define ui_borg_pda_log "CENTER+6:21,SOUTH:5" +// SKYRAT EDIT ADDITION END //Aliens #define ui_alien_health "EAST,CENTER-1:15" diff --git a/code/_onclick/hud/robot.dm b/code/_onclick/hud/robot.dm index 7c10db2b5db..103b24400a6 100644 --- a/code/_onclick/hud/robot.dm +++ b/code/_onclick/hud/robot.dm @@ -177,6 +177,20 @@ zone_select.update_icon() static_inventory += zone_select +// SKYRAT EDIT ADDITION BEGIN: Cyborg PDA +//PDA message + using = new /atom/movable/screen/robot/pda_msg_send + using.screen_loc = ui_borg_pda_send + using.hud = src + static_inventory += using + +//PDA log + using = new /atom/movable/screen/robot/pda_msg_show + using.screen_loc = ui_borg_pda_log + using.hud = src + static_inventory += using +// SKYRAT EDIT ADDITION END + /datum/hud/proc/toggle_show_robot_modules() if(!iscyborg(mymob)) diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 0061c11c1ea..f02c81c9a40 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -180,6 +180,14 @@ diag_hud_set_borgcell() logevent("System brought online.") + // SKYRAT EDIT ADDITION BEGIN - Cyborg PDA + if(!shell) + aiPDA = new/obj/item/pda/ai(src) + aiPDA.owner = real_name + aiPDA.ownjob = "Cyborg" + aiPDA.name = real_name + " (" + aiPDA.ownjob + ")" + //SKYRAT EDIT ADDITION END + /mob/living/silicon/robot/proc/create_modularInterface() if(!modularInterface) modularInterface = new /obj/item/modular_computer/tablet/integrated(src) @@ -1157,3 +1165,10 @@ var/datum/computer_file/program/robotact/program = modularInterface.get_robotact() if(program) program.force_full_update() + +// SKYRAT EDIT ADDITION BEGIN - Cyborg PDA +/mob/living/silicon/robot/replace_identification_name(oldname,newname) + if(aiPDA && !shell) + aiPDA.owner = newname + aiPDA.name = newname + " (" + aiPDA.ownjob + ")" +// SKYRAT EDIT ADDITION END diff --git a/modular_skyrat/modules/cyborgpda/code/_onclick/hud/robot.dm b/modular_skyrat/modules/cyborgpda/code/_onclick/hud/robot.dm new file mode 100644 index 00000000000..6a3f5b6eea4 --- /dev/null +++ b/modular_skyrat/modules/cyborgpda/code/_onclick/hud/robot.dm @@ -0,0 +1,23 @@ + +/atom/movable/screen/robot/pda_msg_send + name = "PDA - Send Message" + icon = 'icons/hud/screen_ai.dmi' + icon_state = "pda_send" + +/atom/movable/screen/robot/pda_msg_send/Click() + if(..()) + return + var/mob/living/silicon/robot/R = usr + R.cmd_send_pdamesg(usr) + +/atom/movable/screen/robot/pda_msg_show + name = "PDA - Show Message Log" + icon = 'icons/hud/screen_ai.dmi' + icon_state = "pda_receive" + +/atom/movable/screen/robot/pda_msg_show/Click() + if(..()) + return + var/mob/living/silicon/robot/R = usr + R.cmd_show_message_log(usr) + diff --git a/modular_skyrat/modules/cyborgpda/readme.md b/modular_skyrat/modules/cyborgpda/readme.md new file mode 100644 index 00000000000..4b62ea8c60f --- /dev/null +++ b/modular_skyrat/modules/cyborgpda/readme.md @@ -0,0 +1,30 @@ +https://github.com/Skyrat-SS13/Skyrat-tg/pull/241 + +## Title: Changeling Horror Form + +MODULE ID: CYBORG_PDA + +### Description: + +Adds PDA functionality to all cyborgs, similar to that which AIs have. + +### TG Proc Changes: + +\code\_onclick\hud\robot.dm - added 2 HUD objects to New(), the HUD objects themselves are stored within this folder +\code\_onclick\hud\_defines.dm - added 2 defines for said HUD objects +\code\modules\mob\living\silicon\robot\robot.dm - added PDA to initialize() and a required proc for updating PDA info + +### Defines: + +- N/A + +### Master file additions + +- N/A + +### Included files that are not contained in this module: + +- N/A + +### Credits: +Ranged66 - Code diff --git a/tgstation.dme b/tgstation.dme index ae69f9da068..f692ec941e2 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -3558,6 +3558,7 @@ #include "modular_skyrat\modules\customization\modules\surgery\organs\tails.dm" #include "modular_skyrat\modules\customization\modules\surgery\organs\vox.dm" #include "modular_skyrat\modules\customization\modules\surgery\organs\wings.dm" +#include "modular_skyrat\modules\cyborgpda\code\_onclick\hud\robot.dm" #include "modular_skyrat\modules\cyborg\code\mechafabricator_designs.dm" #include "modular_skyrat\modules\cyborg\code\robot_upgrades.dm" #include "modular_skyrat\modules\emotes\code\dna_screams.dm"