mirror of
https://github.com/PolarisSS13/Polaris.git
synced 2025-12-22 08:01:16 +00:00
Implanters now work properly. This is a bugfix.
This commit is contained in:
@@ -34,11 +34,13 @@
|
||||
if(istype(M, /mob/living/carbon/human))
|
||||
var/picked = 0
|
||||
var/mob/living/carbon/human/T = M
|
||||
for(var/datum/organ/external/E in T)
|
||||
var/list/datum/organ/external/E = T.GetOrgans()
|
||||
while(picked == 0 && E.len > 0)
|
||||
var/datum/organ/external/O = pick(E)
|
||||
E -= O
|
||||
if(!E.implant)
|
||||
E.implant = src.imp
|
||||
O.implant = src.imp
|
||||
picked = 1
|
||||
break
|
||||
if(picked == 0)
|
||||
for (var/mob/O in viewers(M, null))
|
||||
O.show_message(text("[user.name] can't find anywhere to implant [M.name]"), 1)
|
||||
|
||||
@@ -18,6 +18,9 @@ SYNDICATE UPLINK
|
||||
return
|
||||
|
||||
/obj/item/weapon/syndicate_uplink/attack_self(mob/user as mob)
|
||||
interact(user)
|
||||
|
||||
/obj/item/weapon/syndicate_uplink/proc/interact(mob/user as mob)
|
||||
currentUser = user
|
||||
user.machine = src
|
||||
var/dat
|
||||
@@ -220,11 +223,11 @@ SYNDICATE UPLINK
|
||||
if (href_list["temp"])
|
||||
src.temp = null
|
||||
if (istype(src.loc, /mob))
|
||||
attack_self(src.loc)
|
||||
interact(src.loc)
|
||||
else
|
||||
for(var/mob/M in viewers(1, src))
|
||||
if (M.client)
|
||||
src.attack_self(M)
|
||||
interact(M)
|
||||
return
|
||||
|
||||
/obj/item/weapon/syndicate_uplink/proc/shutdown_uplink()
|
||||
|
||||
@@ -195,3 +195,10 @@
|
||||
if(src.sleeping_willingly)
|
||||
src.sleeping = 0
|
||||
src.sleeping_willingly = 0
|
||||
|
||||
/mob/living/carbon/human/proc/GetOrgans()
|
||||
var/list/L = list( )
|
||||
for(var/t in organs)
|
||||
if (istype(organs[text("[]", t)], /datum/organ/external))
|
||||
L += organs[text("[]", t)]
|
||||
return L
|
||||
Reference in New Issue
Block a user