/obj/effect/proc_holder/changeling/linglink
name = "Hivemind Link"
desc = "Link your victim's mind into the hivemind for personal interrogation"
chemical_cost = 0
dna_cost = 0
req_human = 1
max_genetic_damage = 100
/obj/effect/proc_holder/changeling/linglink/can_sting(mob/living/carbon/user)
if(!..())
return
var/datum/changeling/changeling = user.mind.changeling
if(changeling.islinking)
to_chat(user, "We have already formed a link with the victim!")
return
if(!user.pulling)
to_chat(user, "We must be tightly grabbing a creature to link with them!")
return
if(!iscarbon(user.pulling))
to_chat(user, "We cannot link with this creature!")
return
var/mob/living/carbon/target = user.pulling
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
if(user.grab_state <= GRAB_AGGRESSIVE)
to_chat(user, "We must have a tighter grip to link with this creature!")
return
return changeling.can_absorb_dna(user,target)
/obj/effect/proc_holder/changeling/linglink/sting_action(mob/user)
var/datum/changeling/changeling = user.mind.changeling
var/mob/living/carbon/human/target = user.pulling
changeling.islinking = 1
for(var/i in 1 to 3)
switch(i)
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, "We mold the [target]'s mind like clay, granting [target.p_them()] the ability to 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(M.lingcheck() == 2)
to_chat(M, "We can sense a foreign presence in the hivemind...")
target.mind.linglink = 1
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","Hivemind Link|[i]")
if(!do_mob(user, target, 20))
to_chat(user, "Our link with [target] has ended!")
changeling.islinking = 0
target.mind.linglink = 0
return
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!")