diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm index 6b42ef30733..ba5825a084e 100644 --- a/code/game/mecha/mech_fabricator.dm +++ b/code/game/mecha/mech_fabricator.dm @@ -129,6 +129,7 @@ /obj/item/borg/upgrade/vtec, /obj/item/borg/upgrade/tasercooler, /obj/item/robot_parts/robot_component/jetpack, + /obj/item/borg/upgrade/combat, ), diff --git a/code/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm index 70f5d7e226f..13868eb68e4 100644 --- a/code/game/objects/items/robot/robot_upgrades.dm +++ b/code/game/objects/items/robot/robot_upgrades.dm @@ -149,4 +149,20 @@ return 0 R.emagged = 1 - return 1 \ No newline at end of file + return 1 + +/obj/item/borg/upgrade/combat + name = "combat cyborg module" + desc = "Unlocks the combat cyborg module" + construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"glass"=15000,"gold"= 5000,"diamond" = 1000) + icon_state = "cyborg_upgrade3" + require_module = 0 + +/obj/item/borg/upgrade/combat/action(var/mob/living/silicon/robot/R) + if(..()) return 0 + + if(R.crisis_override == 1) + return 0 + + R.crisis_override = 1 + return 1 diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index a9b464129e5..dd5e2a37002 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -233,7 +233,7 @@ return var/list/modules = list() modules.Add(robot_module_types) - if(security_level == (SEC_LEVEL_RED || SEC_LEVEL_DELTA)) //There are no brakes in the combat module train. + if((crisis_override && security_level == SEC_LEVEL_RED) || security_level == SEC_LEVEL_DELTA) //no fun allowed anymore. src << "\red Crisis mode active. Combat module available." modules+="Combat" modtype = input("Please, select a module!", "Robot", null, null) in modules diff --git a/code/modules/security levels/keycard authentication.dm b/code/modules/security levels/keycard authentication.dm index 87514a5473b..ca096c11f00 100644 --- a/code/modules/security levels/keycard authentication.dm +++ b/code/modules/security levels/keycard authentication.dm @@ -70,6 +70,8 @@ dat += "