Fix for fingerprints. (They work right, now!)

Fixed the runtime related to brainmobs (sanity check)
do_after now works right.
Added the Decapitate objective, that is admin only ATM, which requires you remove their head and take it on the escape shuttle.
Fixes for a lot of surgery related bugs
Added a prompt to AI players when they are greeted, warning them not to stalk the traitor and so on.  Cacophony and Spaceman approved of it.
Sanity check for limb removal and blood stuff.
Added in sprites for a Syndicate statis/sleeper for a secret thing I have planned!
This commit is contained in:
SkyMarshal
2012-01-31 21:23:37 -07:00
parent 6e3aef823a
commit e7a7b8017d
12 changed files with 116 additions and 50 deletions
+3 -3
View File
@@ -207,13 +207,13 @@ MASS SPECTROMETER
if(A.fingerprints)
for(var/j = 1, j < (A.fingerprints.len + 1), j++) //Fingerprints~~~
var/list/print_test1 = params2list(A.fingerprints[j])
var/test_print1 = print_test1[1]
var/test_print1 = print_test1[num2text(1)]
var/found = 0
for(var/k = 1, k < (prints.len + 1), k++) //Lets see if the print is already in there
var/list/print_test2 = params2list(prints[k])
var/test_print2 = print_test2[1]
var/test_print2 = print_test2[num2text(1)]
if(test_print2 == test_print1) //It is! Merge!
prints[k] = test_print2 + "&" + stringmerge(print_test2[2],print_test1[2])
prints[k] = test_print2 + "&" + stringmerge(print_test2[num2text(2)],print_test1[num2text(2)])
found = 1
break //We found it, we're done here.
if(!found) //It isn't! Add!
@@ -533,8 +533,9 @@ CIRCULAR SAW
else
// bone surgery doable?
if(!try_bone_surgery(M, user))
return ..()
try_bone_surgery(M, user)
// if(!try_bone_surgery(M, user))
// return ..()
/obj/item/weapon/cautery/proc/try_bone_surgery(mob/living/carbon/human/H as mob, mob/living/user as mob)
if(!istype(H))
@@ -646,7 +647,7 @@ CIRCULAR SAW
M << "\red [user] begins to seperate your appendix with [src]!"
user << "\red You seperate [M]'s appendix with [src]!"
M:appendix_op_stage = 4.0
return
return
if(user.zone_sel.selecting == "head" || istype(M, /mob/living/carbon/metroid))
@@ -929,7 +930,7 @@ CIRCULAR SAW
return
for(var/mob/O in viewers(H, null))
O.show_message(text("\red [H] gets \his [S.display_name] sawed at with [src] by [user].... It looks like [user] is trying to cut it off!"), 1)
if(!do_after(rand(50,70)))
if(!do_after(user,rand(50,70)))
for(var/mob/O in viewers(H, null))
O.show_message(text("\red [user] tried to cut [H]'s [S.display_name] off with [src], but failed."), 1)
return
@@ -1013,14 +1014,14 @@ CIRCULAR SAW
..()
return
else if(user.zone_sel.selecting != "chest" && user.zone_sel.selecting != "groin" && istype(M, /mob/living/carbon/human))
else if(user.zone_sel.selecting != "chest" && istype(M, /mob/living/carbon/human))
var/mob/living/carbon/human/H = M
var/datum/organ/external/S = H.organs[user.zone_sel.selecting]
if(S.destroyed)
return
for(var/mob/O in viewers(H, null))
O.show_message(text("\red [H] gets \his [S.display_name] sawed at with [src] by [user].... It looks like [user] is trying to cut it off!"), 1)
if(!do_after(rand(20,80)))
if(!do_after(user, rand(20,80)))
for(var/mob/O in viewers(H, null))
O.show_message(text("\red [user] tried to cut [H]'s [S.display_name] off with [src], but failed."), 1)
return