/obj/item/implant/radio name = "internal radio implant" activated = TRUE var/obj/item/radio/internal/radio var/radio_key var/subspace_transmission = FALSE icon = 'icons/obj/radio.dmi' icon_state = "walkietalkie" /obj/item/implant/radio/activate() . = ..() // needs to be GLOB.deep_inventory_state otherwise it won't open radio.ui_interact(usr, "main", null, FALSE, null, GLOB.deep_inventory_state) /obj/item/implant/radio/implant(mob/living/target, mob/user, silent = FALSE) . = ..() if(!.) return if(radio) radio.forceMove(target) return radio = new(target) // almost like an internal headset, but without the // "must be in ears to hear" restriction. radio.name = "internal radio" radio.subspace_transmission = subspace_transmission radio.canhear_range = 0 if(radio_key) radio.keyslot = new radio_key radio.recalculateChannels() /obj/item/implant/radio/removed(mob/target, silent = FALSE, special = 0) . = ..() if(!.) return if(!special) qdel(radio) else radio?.moveToNullspace() /obj/item/implant/radio/mining radio_key = /obj/item/encryptionkey/headset_cargo /obj/item/implant/radio/syndicate desc = "Are you there God? It's me, Syndicate Comms Agent." radio_key = /obj/item/encryptionkey/syndicate subspace_transmission = TRUE /obj/item/implant/radio/slime name = "slime radio" icon = 'icons/obj/surgery.dmi' icon_state = "adamantine_resonator" radio_key = /obj/item/encryptionkey/headset_sci subspace_transmission = TRUE /obj/item/implant/radio/get_data() var/dat = {"Implant Specifications:
Name: Internal Radio Implant
Life: 24 hours
Implant Details: Allows user to use an internal radio, useful if user expects equipment loss, or cannot equip conventional radios."} return dat /obj/item/implanter/radio name = "implanter (internal radio)" imp_type = /obj/item/implant/radio /obj/item/implanter/radio/syndicate name = "implanter (internal syndicate radio)" imp_type = /obj/item/implant/radio/syndicate