Implanters now work properly. This is a bugfix.

This commit is contained in:
SkyMarshal
2012-01-11 21:28:34 -07:00
parent ef45b6128c
commit 98b6019f99
3 changed files with 17 additions and 5 deletions
@@ -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)
+5 -2
View File
@@ -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()