diff --git a/code/game/machinery/camera/camera_assembly.dm b/code/game/machinery/camera/camera_assembly.dm index b120720992c..588c8f916a4 100644 --- a/code/game/machinery/camera/camera_assembly.dm +++ b/code/game/machinery/camera/camera_assembly.dm @@ -65,18 +65,18 @@ setAnchored(TRUE) return - // Upgrades! - if(is_type_in_typecache(W, possible_upgrades) && !is_type_in_list(W, upgrades)) // Is a possible upgrade and isn't in the camera already. - if(!user.transferItemToLoc(W, src)) - return - to_chat(user, "You attach \the [W] into the assembly inner circuits.") - upgrades += W - return + if(3) // Upgrades! + if(is_type_in_typecache(W, possible_upgrades) && !is_type_in_list(W, upgrades)) // Is a possible upgrade and isn't in the camera already. + if(!user.transferItemToLoc(W, src)) + return + to_chat(user, "You attach \the [W] into the assembly inner circuits.") + upgrades += W + return return ..() /obj/structure/camera_assembly/crowbar_act(mob/user, obj/item/tool) - if(!upgrades.len) + if(state != 3 || !upgrades.len) return FALSE var/obj/U = locate(/obj) in upgrades if(U)