/datum/proc/nano_host() return src /datum/proc/nano_container() return src /datum/proc/CanUseTopic(var/mob/user, var/datum/topic_state/state) var/src_object = nano_host() return state.can_use_topic(src_object, user) /datum/topic_state/proc/href_list(var/mob/user) return list() /datum/topic_state/proc/can_use_topic(var/src_object, var/mob/user) return STATUS_CLOSE /mob/proc/shared_nano_interaction() if (src.stat || !client) return STATUS_CLOSE // no updates, close the interface else if (incapacitated()) return STATUS_UPDATE // update only (orange visibility) return STATUS_INTERACTIVE /mob/living/silicon/ai/shared_nano_interaction() if(lacks_power()) return STATUS_CLOSE if (check_unable(1, 0)) return STATUS_CLOSE return ..() /mob/living/silicon/robot/shared_nano_interaction() . = STATUS_INTERACTIVE if(cell.charge <= 0) return STATUS_CLOSE if(lockdown) . = STATUS_DISABLED return min(., ..())