From e5db535056ad38e91716892ac3aa1a9d7e02478b Mon Sep 17 00:00:00 2001 From: Kyep Date: Sun, 26 Nov 2017 12:28:47 -0800 Subject: [PATCH] Tiger requests --- code/_onclick/hud/robot.dm | 2 +- .../objects/items/robot/robot_upgrades.dm | 4 +- .../modules/mob/living/silicon/robot/robot.dm | 37 ++++++++++++------- 3 files changed, 26 insertions(+), 17 deletions(-) diff --git a/code/_onclick/hud/robot.dm b/code/_onclick/hud/robot.dm index f76d480bc48..a542c0345fd 100644 --- a/code/_onclick/hud/robot.dm +++ b/code/_onclick/hud/robot.dm @@ -211,7 +211,7 @@ //Unfortunately adding the emag module to the list of modules has to be here. This is because a borg can //be emagged before they actually select a module. - or some situation can cause them to get a new module // - or some situation might cause them to get de-emagged or something. - if(R.emagged || R.ert_upgrade) + if(R.emagged || R.weapons_unlock) if(!(R.module.emag in R.module.modules)) R.module.modules.Add(R.module.emag) else diff --git a/code/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm index 2e9889327ea..4c9bbb38747 100644 --- a/code/game/objects/items/robot/robot_upgrades.dm +++ b/code/game/objects/items/robot/robot_upgrades.dm @@ -68,7 +68,7 @@ /obj/item/borg/upgrade/rename/action(var/mob/living/silicon/robot/R) if(..()) return - if(R.ert_upgrade) + if(!R.allow_rename) to_chat(R, "Internal diagnostic error: incompatible upgrade module detected."); return 0 R.notify_ai(3, R.name, heldname) @@ -218,7 +218,7 @@ if(R.emagged) return - if(R.ert_upgrade) + if(R.weapons_unlock) to_chat(R, "Internal diagnostic error: incompatible upgrade module detected."); return diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 8a972b0b549..4b83bd69788 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -50,7 +50,12 @@ var/list/robot_verbs_default = list( var/opened = 0 var/emagged = 0 - var/ert_upgrade = 0 + + var/list/force_modules = list() + var/allow_rename = TRUE + var/weapons_unlock = FALSE + var/static_radio_channels = FALSE + var/wiresexposed = 0 var/locked = 1 var/list/req_access = list(access_robotics) @@ -216,8 +221,8 @@ var/list/robot_verbs_default = list( set category = "Robot Commands" if(custom_name) return 0 - if(ert_upgrade) - to_chat(src, "ERT borgs cannot change their designation whilst on-mission."); + if(!allow_rename) + to_chat(src, "Rename functionality is not enabled on this unit."); return 0 rename_self(braintype, 1) @@ -270,13 +275,12 @@ var/list/robot_verbs_default = list( if(module) return var/list/modules = list("Standard", "Engineering", "Medical", "Miner", "Janitor", "Service") - if(ert_upgrade) - modules = list("Engineering", "Medical", "Security") - else - if(!config.forbid_secborg) - modules += "Security" - if(!config.forbid_peaceborg) - modules += "Peacekeeper" + if(!config.forbid_secborg) + modules += "Security" + if(!config.forbid_peaceborg) + modules += "Peacekeeper" + if(islist(force_modules) && force_modules.len) + modules = force_modules.Copy() if(security_level == (SEC_LEVEL_GAMMA || SEC_LEVEL_EPSILON) || crisis) to_chat(src, "Crisis mode active. Combat module available.") modules += "Combat" @@ -411,9 +415,9 @@ var/list/robot_verbs_default = list( status_flags &= ~CANPUSH choose_icon(6,module_sprites) - if(!ert_upgrade) + if(!static_radio_channels) radio.config(module.channels) - notify_ai(2) + notify_ai(2) //for borg hotkeys, here module refers to borg inv slot, not core module /mob/living/silicon/robot/verb/cmd_toggle_module(module as num) @@ -1019,7 +1023,7 @@ var/list/robot_verbs_default = list( dat += text("[obj]Activated") else dat += text("[obj]Activate") - if(emagged || ert_upgrade) + if(emagged || weapons_unlock) if(activated(module.emag)) dat += text("[module.emag]Activated") else @@ -1467,7 +1471,12 @@ var/list/robot_verbs_default = list( scrambledcodes = 1 req_access = list(access_cent_specops) ionpulse = 1 - ert_upgrade = 1 + + force_modules = list("Engineering", "Medical", "Security") + static_radio_channels = 1 + allow_rename = FALSE + weapons_unlock = TRUE + /mob/living/silicon/robot/ert/init() laws = new /datum/ai_laws/ert_override