peaceful mode, loot rework, hand tele respect areas, AI

This commit is contained in:
Kyep
2018-01-07 01:12:12 -08:00
parent da710c363e
commit 83192c3678
10 changed files with 400 additions and 310 deletions
@@ -121,26 +121,25 @@
if(!(opened ? close() : open()))
to_chat(user, "<span class='notice'>It won't budge!</span>")
// this should probably use dump_contents()
/obj/structure/closet/ex_act(severity)
switch(severity)
if(1)
for(var/atom/movable/A in src)//pulls everything out of the locker and hits it with an explosion
A.forceMove(loc)
A.ex_act(severity++)
dump_contents()
qdel(src)
if(2)
if(prob(50))
for(var/atom/movable/A in src)
A.forceMove(loc)
A.ex_act(severity++)
dump_contents()
new /obj/item/stack/sheet/metal(loc)
qdel(src)
if(3)
if(prob(5))
for(var/atom/movable/A in src)
A.forceMove(loc)
A.ex_act(severity++)
dump_contents()
new /obj/item/stack/sheet/metal(loc)
qdel(src)
@@ -149,23 +148,20 @@
if((Proj.damage_type == BRUTE || Proj.damage_type == BURN))
health -= Proj.damage
if(health <= 0)
for(var/atom/movable/A in src)
A.forceMove(loc)
dump_contents()
qdel(src)
/obj/structure/closet/attack_animal(mob/living/simple_animal/user)
if(user.environment_smash)
user.do_attack_animation(src)
visible_message("<span class='warning'>[user] destroys the [src].</span>")
for(var/atom/movable/A in src)
A.forceMove(loc)
dump_contents()
qdel(src)
// this should probably use dump_contents()
/obj/structure/closet/blob_act()
if(prob(75))
for(var/atom/movable/A in src)
A.forceMove(loc)
dump_contents()
qdel(src)
/obj/structure/closet/attackby(obj/item/weapon/W, mob/user, params)
@@ -0,0 +1,39 @@
/obj/structure/closet/secure_closet/syndicate/depot
name = "depot supply closet"
desc = ""
anchored = 1
health = 200
req_access = list()
/obj/structure/closet/secure_closet/syndicate/depot/emag_act()
. = ..()
loot_pickup()
/obj/structure/closet/secure_closet/syndicate/depot/open()
. = ..()
if(opened)
loot_pickup()
/obj/structure/closet/secure_closet/syndicate/depot/dump_contents()
loot_pickup()
. = ..()
/obj/structure/closet/secure_closet/syndicate/depot/proc/loot_pickup()
var/area/syndicate_depot/depotarea = areaMaster
if(depotarea)
depotarea.locker_looted()
/obj/structure/closet/secure_closet/syndicate/depot/attack_animal(mob/M)
if(isanimal(M) && "syndicate" in M.faction)
to_chat(M, "<span class='warning'>The [src] resists your attack!</span>")
return
return ..(M)
/obj/structure/closet/secure_closet/syndicate/depot/emp_act(severity)
return
/obj/structure/closet/secure_closet/syndicate/depot/togglelock(mob/user)
. = ..()
if(!locked)
loot_pickup()