/datum/action/changeling/linglink name = "Hivemind Link" desc = "We link our victim's mind into the hivemind for personal interrogation." helptext = "If we find a human mad enough to support our cause, this can be a helpful tool to stay in touch." button_icon_state = "hivemind_link" chemical_cost = 0 dna_cost = 0 req_human = 1 max_genetic_damage = 100 /datum/action/changeling/linglink/can_sting(mob/living/carbon/user) if(!..()) return var/datum/changeling/changeling = user.mind.changeling var/obj/item/grab/G = user.get_active_hand() if(changeling.islinking) to_chat(user, "We have already formed a link with the victim!") return if(!istype(G)) to_chat(user, "We must be tightly grabbing a creature in our active hand to link with them!") return if(G.state <= GRAB_AGGRESSIVE) to_chat(user, "We must have a tighter grip to link with this creature!") return if(iscarbon(G.affecting)) var/mob/living/carbon/target = G.affecting if(!target.mind) to_chat(user, "The victim has no mind to link to!") return if(target.stat == DEAD) to_chat(user, "The victim is dead, you cannot link to a dead mind!") return if(target.mind.changeling) to_chat(user, "The victim is already a part of the hivemind!") return return changeling.can_absorb_dna(user,target) /datum/action/changeling/linglink/sting_action(mob/user) var/datum/changeling/changeling = user.mind.changeling var/obj/item/grab/G = user.get_active_hand() var/mob/living/carbon/target = G.affecting changeling.islinking = 1 for(var/stage = 1, stage<=3, stage++) switch(stage) if(1) to_chat(user, "This creature is compatible. We must hold still...") if(2) to_chat(user, "We stealthily stab [target] with a minor proboscis...") to_chat(target, "You experience a stabbing sensation and your ears begin to ring...") if(3) to_chat(user, "You mold the [target]'s mind like clay, [target.p_they()] can now speak in the hivemind!") to_chat(target, "A migraine throbs behind your eyes, you hear yourself screaming - but your mouth has not opened!") for(var/mob/M in GLOB.mob_list) if(GLOB.all_languages["Changeling"] in M.languages) to_chat(M, "We can sense a foreign presence in the hivemind...") target.mind.linglink = 1 target.add_language("Changeling") target.say(":g AAAAARRRRGGGGGHHHHH!!") to_chat(target, "You can now communicate in the changeling hivemind, say \":g message\" to communicate!") target.reagents.add_reagent("salbutamol", 40) // So they don't choke to death while you interrogate them sleep(1800) feedback_add_details("changeling_powers","A[stage]") if(!do_mob(user, target, 20)) to_chat(user, "Our link with [target] has ended!") target.remove_language("Changeling") changeling.islinking = 0 target.mind.linglink = 0 return target.remove_language("Changeling") changeling.islinking = 0 target.mind.linglink = 0 to_chat(user, "You cannot sustain the connection any longer, your victim fades from the hivemind") to_chat(target, "The link cannot be sustained any longer, your connection to the hivemind has faded!")