Exploit fixes

This commit is contained in:
Markolie
2016-10-17 18:51:49 +02:00
parent 8bd79007ef
commit cf31814e80
5 changed files with 20 additions and 8 deletions
+4
View File
@@ -288,6 +288,10 @@
if((O in user) && is_type_in_list(O,own_blacklist))
continue
if(is_type_in_list(O,types_allowed))
if(isanimal(O))
var/mob/living/simple_animal/SA = O
if(!SA.gold_core_spawnable)
continue
possible_targets += O
targets += input("Choose the target of your hunger.", "Targeting") as null|anything in possible_targets
+6 -2
View File
@@ -454,8 +454,10 @@
set name = "Eject Sleeper"
set category = "Object"
set src in oview(1)
if(usr.stat != 0)
if(usr.restrained() || usr.stat || usr.weakened || usr.stunned || usr.paralysis || usr.resting) //are you cuffed, dying, lying, stunned or other
return
src.icon_state = "[base_icon]-open"
src.go_out()
add_fingerprint(usr)
@@ -465,8 +467,10 @@
set name = "Remove Beaker"
set category = "Object"
set src in oview(1)
if(usr.stat != 0)
if(usr.restrained() || usr.stat || usr.weakened || usr.stunned || usr.paralysis || usr.resting) //are you cuffed, dying, lying, stunned or other
return
if(beaker)
filtering = 0
beaker.forceMove(usr.loc)
+8 -5
View File
@@ -457,16 +457,15 @@
set name = "Eject occupant"
set category = "Object"
set src in oview(1)
if(usr == occupant)//If the user is inside the tube...
if(usr.stat == 2)//and he's not dead....
return
to_chat(usr, "\blue Release sequence activated. This will take two minutes.")
to_chat(usr, "<span class='notice'>Release sequence activated. This will take two minutes.</span>")
sleep(600)
if(!src || !usr || !occupant || (occupant != usr)) //Check if someone's released/replaced/bombed him already
return
go_out()//and release him from the eternal prison.
else
if(usr.stat != 0)
if(usr.restrained() || usr.stat || usr.weakened || usr.stunned || usr.paralysis || usr.resting) //are you cuffed, dying, lying, stunned or other
return
go_out()
add_fingerprint(usr)
@@ -476,14 +475,18 @@
set name = "Move Inside"
set category = "Object"
set src in oview(1)
for(var/mob/living/carbon/slime/M in range(1,usr))
if(M.Victim == usr)
to_chat(usr, "You're too busy getting your life sucked out of you.")
return
if(usr.stat != 0 || stat & (NOPOWER|BROKEN))
if(stat & (NOPOWER|BROKEN))
return
if(usr.restrained() || usr.stat || usr.weakened || usr.stunned || usr.paralysis || usr.resting) //are you cuffed, dying, lying, stunned or other
return
put_mob(usr)
return
@@ -254,6 +254,7 @@
src.overrides = null
P.emag_overrides = src.emag_overrides
src.emag_overrides = null
default_deconstruction_crowbar(I, 1)
return
else
..(I,user)
@@ -488,7 +488,7 @@
return 1
/obj/item/mecha_parts/mecha_equipment/medical/syringe_gun/proc/add_known_reagent(r_id,r_name)
if(!(r_id in known_reagents))
if(!(r_id in known_reagents) && (r_id in standard_medicines))
known_reagents += r_id
known_reagents[r_id] = r_name
return 1