diff --git a/code/game/objects/items/robot/cyborg_gripper.dm b/code/game/objects/items/robot/cyborg_gripper.dm index de971761a72..70c60ffc723 100644 --- a/code/game/objects/items/robot/cyborg_gripper.dm +++ b/code/game/objects/items/robot/cyborg_gripper.dm @@ -106,6 +106,10 @@ // Is the gripper interacting with an item? if(isitem(target)) var/obj/item/I = target + if(I.is_robot_module()) + to_chat(user, SPAN_WARNING("You can't grab your own modules!")) + return ITEM_INTERACT_COMPLETE + // Make sure the item is something the gripper can hold if(can_hold_all_items || is_type_in_typecache(I, can_hold)) to_chat(user, SPAN_NOTICE("You collect [I].")) diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index e4d01704874..837380fb0ad 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -2,7 +2,7 @@ name = "robot module" icon = 'icons/obj/module.dmi' icon_state = "std_mod" - w_class = 100 + w_class = WEIGHT_CLASS_GIGANTIC flags = CONDUCT var/module_armor = list(MELEE = 0, BULLET = 0, LASER = 0, ENERGY = 0, BOMB = 0, RAD = 0, FIRE = 0, ACID = 0) @@ -950,6 +950,9 @@ /// Checks whether this item is a module of the robot it is located in. /obj/item/proc/is_robot_module() + if(istype(loc, /obj/item/robot_module)) + return TRUE + if(!isrobot(loc)) return FALSE