mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-21 19:17:50 +01:00
Make lockers use forceMove()
This commit is contained in:
@@ -1,89 +0,0 @@
|
||||
/obj/structure/closet/secure_closet/ert/commander
|
||||
name = "\improper ERT commander locker"
|
||||
req_access = list(ACCESS_SECURITY)
|
||||
icon_state = "capsecure1"
|
||||
icon_closed = "capsecure"
|
||||
icon_locked = "capsecure1"
|
||||
icon_opened = "capsecureopen"
|
||||
icon_broken = "capsecurebroken"
|
||||
icon_off = "capsecureoff"
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/head/helmet/space/ert/commander(src)
|
||||
new /obj/item/clothing/suit/space/ert/commander(src)
|
||||
new /obj/item/weapon/c4(src)
|
||||
new /obj/item/weapon/storage/belt/security/full(src)
|
||||
new /obj/item/weapon/gun/energy/ionrifle(src)
|
||||
new /obj/item/weapon/gun/energy/gun/nuclear(src)
|
||||
new /obj/item/clothing/glasses/thermal(src)
|
||||
new /obj/item/weapon/lighter/zippo(src)
|
||||
new /obj/item/weapon/pinpointer(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/ert/security
|
||||
name = "\improper ERT security locker"
|
||||
req_access = list(ACCESS_SECURITY)
|
||||
icon_state = "sec1"
|
||||
icon_closed = "sec"
|
||||
icon_locked = "sec1"
|
||||
icon_opened = "secopen"
|
||||
icon_broken = "secbroken"
|
||||
icon_off = "secoff"
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/head/helmet/space/ert/security(src)
|
||||
new /obj/item/clothing/suit/space/ert/security(src)
|
||||
new /obj/item/weapon/c4(src)
|
||||
new /obj/item/weapon/storage/belt/security/full(src)
|
||||
new /obj/item/weapon/gun/energy/ionrifle(src)
|
||||
new /obj/item/weapon/gun/energy/gun/nuclear(src)
|
||||
new /obj/item/clothing/glasses/thermal(src)
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/secure_closet/ert/engineer
|
||||
name = "\improper ERT engineer locker"
|
||||
req_access = list(ACCESS_ENGINE)
|
||||
icon_state = "secureeng1"
|
||||
icon_closed = "secureeng"
|
||||
icon_locked = "secureeng1"
|
||||
icon_opened = "secureengopen"
|
||||
icon_broken = "secureengbroken"
|
||||
icon_off = "secureengoff"
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/head/helmet/space/ert/engineer(src)
|
||||
new /obj/item/clothing/suit/space/ert/engineer(src)
|
||||
new /obj/item/weapon/gun/energy/taser(src)
|
||||
new /obj/item/weapon/storage/belt/utility/full(src)
|
||||
new /obj/item/weapon/storage/backpack/industrial/full(src)
|
||||
new /obj/item/device/t_scanner(src)
|
||||
new /obj/item/clothing/glasses/meson(src)
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/ert/medical
|
||||
name = "\improper ERT medical locker"
|
||||
req_access = list(ACCESS_MEDICAL)
|
||||
icon_state = "securemed1"
|
||||
icon_closed = "securemed"
|
||||
icon_locked = "securemed1"
|
||||
icon_opened = "securemedopen"
|
||||
icon_broken = "securemedbroken"
|
||||
icon_off = "securemedoff"
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/clothing/head/helmet/space/ert/medical(src)
|
||||
new /obj/item/clothing/suit/space/ert/medical(src)
|
||||
new /obj/item/weapon/gun/energy/taser(src)
|
||||
new /obj/item/weapon/storage/backpack/medic/full(src)
|
||||
new /obj/item/weapon/storage/belt/medical(src)
|
||||
new /obj/item/clothing/glasses/hud/health(src)
|
||||
return
|
||||
@@ -1,130 +0,0 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/chef_personal
|
||||
name = "Chef's Locker"
|
||||
req_access = list(ACCESS_KITCHEN)
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/wardrobe/chef(src)
|
||||
//
|
||||
var/obj/item/weapon/storage/backpack/BPK = new /obj/item/weapon/storage/backpack(src)
|
||||
var/obj/item/weapon/storage/box/B = new(BPK)
|
||||
new /obj/item/weapon/pen(B)
|
||||
new /obj/item/device/radio/headset(src)
|
||||
|
||||
/obj/structure/closet/secure_closet/bar
|
||||
name = "Booze"
|
||||
req_access = list(ACCESS_BAR)
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
new /obj/item/weapon/reagent_containers/food/drinks/cans/beer( src )
|
||||
return
|
||||
|
||||
/obj/structure/closet/secure_closet/barman_personal
|
||||
name = "Barman's Locker"
|
||||
req_access = list(ACCESS_BAR)
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/wardrobe/bartender(src)
|
||||
//
|
||||
var/obj/item/weapon/storage/backpack/BPK = new /obj/item/weapon/storage/backpack(src)
|
||||
var/obj/item/weapon/storage/box/B = new(BPK)
|
||||
new /obj/item/weapon/pen(B)
|
||||
new /obj/item/device/radio/headset(src)
|
||||
new /obj/item/ammo_casing/shotgun/beanbag(BPK)
|
||||
new /obj/item/ammo_casing/shotgun/beanbag(BPK)
|
||||
new /obj/item/ammo_casing/shotgun/beanbag(BPK)
|
||||
new /obj/item/ammo_casing/shotgun/beanbag(BPK)
|
||||
|
||||
/obj/structure/closet/secure_closet/hydro_personal
|
||||
name = "Botanist's Locker"
|
||||
req_access = list(ACCESS_HYDROPONICS)
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/wardrobe/hydro
|
||||
//
|
||||
var/obj/item/weapon/storage/backpack/BPK = new /obj/item/weapon/storage/backpack(src)
|
||||
var/obj/item/weapon/storage/box/B = new(BPK)
|
||||
new /obj/item/weapon/pen(B)
|
||||
new /obj/item/device/analyzer/plant_analyzer(src)
|
||||
new /obj/item/device/radio/headset(src)
|
||||
|
||||
/obj/structure/closet/secure_closet/janitor_personal
|
||||
name = "Janitor's Locker"
|
||||
req_access = list(ACCESS_JANITOR)
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/wardrobe/janitor(src)
|
||||
//
|
||||
var/obj/item/weapon/storage/backpack/BPK = new /obj/item/weapon/storage/backpack(src)
|
||||
var/obj/item/weapon/storage/box/B = new(BPK)
|
||||
new /obj/item/weapon/pen(B)
|
||||
new /obj/item/device/pda/janitor(src)
|
||||
|
||||
/obj/structure/closet/secure_closet/lawyer_personal
|
||||
name = "Lawyer's Locker"
|
||||
req_access = list(ACCESS_LAWYER)
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/wardrobe/lawyer(src)
|
||||
//
|
||||
var/obj/item/weapon/storage/backpack/BPK = new /obj/item/weapon/storage/backpack(src)
|
||||
var/obj/item/weapon/storage/box/B = new(BPK)
|
||||
new /obj/item/weapon/pen(B)
|
||||
new /obj/item/device/pda/lawyer(src)
|
||||
new /obj/item/device/detective_scanner(src)
|
||||
new /obj/item/weapon/storage/briefcase(src)
|
||||
|
||||
/obj/structure/closet/secure_closet/librarian_personal
|
||||
name = "Librarian's Locker"
|
||||
req_access = list(ACCESS_LIBRARY)
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/wardrobe/librarian(src)
|
||||
//
|
||||
var/obj/item/weapon/storage/backpack/BPK = new /obj/item/weapon/storage/backpack(src)
|
||||
var/obj/item/weapon/storage/box/B = new(BPK)
|
||||
new /obj/item/weapon/pen(B)
|
||||
new /obj/item/weapon/barcodescanner(src)
|
||||
|
||||
/obj/structure/closet/secure_closet/counselor_personal
|
||||
name = "Counselor's Locker"
|
||||
req_access = list(ACCESS_CHAPEL_OFFICE)
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/wardrobe/chaplain(src)
|
||||
//
|
||||
new /obj/item/weapon/storage/backpack/cultpack (src)
|
||||
var/obj/item/weapon/storage/backpack/BPK = new /obj/item/weapon/storage/backpack(src)
|
||||
var/obj/item/weapon/storage/box/B = new(BPK)
|
||||
new /obj/item/weapon/pen(B)
|
||||
new /obj/item/weapon/storage/bible(src)
|
||||
new /obj/item/device/pda/chaplain(src)
|
||||
new /obj/item/device/radio/headset(src)
|
||||
new /obj/item/weapon/candlepack(src)
|
||||
new /obj/item/weapon/candlepack(src)
|
||||
@@ -1,49 +0,0 @@
|
||||
/obj/structure/closet/secure_closet/scientist
|
||||
name = "Scientist's Locker"
|
||||
req_access = list(ACCESS_RESEARCH)
|
||||
icon_state = "secureres1"
|
||||
icon_closed = "secureres"
|
||||
icon_locked = "secureres1"
|
||||
icon_opened = "secureresopen"
|
||||
icon_broken = "secureresbroken"
|
||||
icon_off = "secureresoff"
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/wardrobe/scientist(src)
|
||||
//
|
||||
var/obj/item/weapon/storage/backpack/BPK = new /obj/item/weapon/storage/backpack(src)
|
||||
var/obj/item/weapon/storage/box/B = new(BPK)
|
||||
new /obj/item/weapon/pen(B)
|
||||
new /obj/item/device/pda/toxins(src)
|
||||
new /obj/item/weapon/tank/oxygen(src)
|
||||
new /obj/item/clothing/mask/gas(src)
|
||||
new /obj/item/device/radio/headset/headset_sci(src)
|
||||
|
||||
|
||||
|
||||
/obj/structure/closet/secure_closet/rd
|
||||
name = "Research Director's Locker"
|
||||
req_access = list(ACCESS_RD)
|
||||
icon_state = "rdsecure1"
|
||||
icon_closed = "rdsecure"
|
||||
icon_locked = "rdsecure1"
|
||||
icon_opened = "rdsecureopen"
|
||||
icon_broken = "rdsecurebroken"
|
||||
icon_off = "rdsecureoff"
|
||||
|
||||
New()
|
||||
..()
|
||||
sleep(2)
|
||||
new /obj/item/wardrobe/rd(src)
|
||||
//
|
||||
var/obj/item/weapon/storage/backpack/BPK = new /obj/item/weapon/storage/backpack(src)
|
||||
var/obj/item/weapon/storage/box/B = new(BPK)
|
||||
new /obj/item/weapon/pen(B)
|
||||
new /obj/item/weapon/clipboard(src)
|
||||
new /obj/item/weapon/tank/air(src)
|
||||
new /obj/item/clothing/mask/gas(src)
|
||||
new /obj/item/device/flash(src)
|
||||
new /obj/item/device/radio/headset/heads/rd(src)
|
||||
//
|
||||
@@ -21,7 +21,7 @@
|
||||
if(!opened) // if closed, any item at the crate's loc is put in the contents
|
||||
for(var/obj/item/I in src.loc)
|
||||
if(I.density || I.anchored || I == src) continue
|
||||
I.loc = src
|
||||
I.forceMove(src)
|
||||
|
||||
// Fix for #383 - C4 deleting fridges with corpses
|
||||
/obj/structure/closet/Destroy()
|
||||
@@ -49,13 +49,13 @@
|
||||
/obj/structure/closet/proc/dump_contents()
|
||||
//Cham Projector Exception
|
||||
for(var/obj/effect/dummy/chameleon/AD in src)
|
||||
AD.loc = src.loc
|
||||
AD.forceMove(loc)
|
||||
|
||||
for(var/obj/I in src)
|
||||
I.loc = src.loc
|
||||
I.forceMove(loc)
|
||||
|
||||
for(var/mob/M in src)
|
||||
M.loc = src.loc
|
||||
M.forceMove(loc)
|
||||
if(M.client)
|
||||
M.client.eye = M.client.mob
|
||||
M.client.perspective = MOB_PERSPECTIVE
|
||||
@@ -90,14 +90,14 @@
|
||||
for(var/obj/effect/dummy/chameleon/AD in src.loc)
|
||||
if(itemcount >= storage_capacity)
|
||||
break
|
||||
AD.loc = src
|
||||
AD.forceMove(src)
|
||||
itemcount++
|
||||
|
||||
for(var/obj/item/I in src.loc)
|
||||
if(itemcount >= storage_capacity)
|
||||
break
|
||||
if(!I.anchored)
|
||||
I.loc = src
|
||||
I.forceMove(src)
|
||||
itemcount++
|
||||
|
||||
for(var/mob/M in src.loc)
|
||||
@@ -112,7 +112,7 @@
|
||||
M.client.perspective = EYE_PERSPECTIVE
|
||||
M.client.eye = src
|
||||
|
||||
M.loc = src
|
||||
M.forceMove(src)
|
||||
itemcount++
|
||||
|
||||
src.icon_state = src.icon_closed
|
||||
@@ -134,19 +134,19 @@
|
||||
switch(severity)
|
||||
if(1)
|
||||
for(var/atom/movable/A as mob|obj in src)//pulls everything out of the locker and hits it with an explosion
|
||||
A.loc = src.loc
|
||||
A.forceMove(src.loc)
|
||||
A.ex_act(severity++)
|
||||
qdel(src)
|
||||
if(2)
|
||||
if(prob(50))
|
||||
for (var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.forceMove(loc)
|
||||
A.ex_act(severity++)
|
||||
qdel(src)
|
||||
if(3)
|
||||
if(prob(5))
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.forceMove(loc)
|
||||
A.ex_act(severity++)
|
||||
qdel(src)
|
||||
|
||||
@@ -156,7 +156,7 @@
|
||||
health -= Proj.damage
|
||||
if(health <= 0)
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.forceMove(loc)
|
||||
qdel(src)
|
||||
return
|
||||
|
||||
@@ -165,14 +165,14 @@
|
||||
user.do_attack_animation(src)
|
||||
visible_message("\red [user] destroys the [src]. ")
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.forceMove(loc)
|
||||
qdel(src)
|
||||
|
||||
// this should probably use dump_contents()
|
||||
/obj/structure/closet/blob_act()
|
||||
if(prob(75))
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.forceMove(loc)
|
||||
qdel(src)
|
||||
|
||||
/obj/structure/closet/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
|
||||
@@ -261,7 +261,7 @@
|
||||
if(!usr.drop_item())
|
||||
return
|
||||
if(W)
|
||||
W.loc = src.loc
|
||||
W.forceMove(loc)
|
||||
else if(istype(W, /obj/item/stack/packageWrap))
|
||||
return
|
||||
else if(istype(W, /obj/item/weapon/weldingtool))
|
||||
|
||||
@@ -144,7 +144,7 @@
|
||||
|
||||
attack_tk(mob/user as mob)
|
||||
if(localopened && fireaxe)
|
||||
fireaxe.loc = loc
|
||||
fireaxe.forceMove(loc)
|
||||
user << "\blue You telekinetically remove the fire axe."
|
||||
fireaxe = null
|
||||
update_icon()
|
||||
|
||||
@@ -63,7 +63,7 @@
|
||||
if (istype(W, /obj/item/weapon/grab))
|
||||
src.MouseDrop_T(W:affecting, user) //act like they were dragged onto the closet
|
||||
user.drop_item()
|
||||
if (W) W.loc = src.loc
|
||||
if (W) W.forceMove(loc)
|
||||
else if(istype(W, /obj/item/weapon/card/id))
|
||||
if(src.broken)
|
||||
user << "\red It appears to be broken."
|
||||
|
||||
@@ -76,7 +76,7 @@
|
||||
return
|
||||
user.drop_item()
|
||||
if(W)
|
||||
W.loc = src.loc
|
||||
W.forceMove(loc)
|
||||
else if((istype(W, /obj/item/weapon/card/emag)||istype(W, /obj/item/weapon/melee/energy/blade)) && !broken)
|
||||
emag_act(user)
|
||||
else if(istype(W,/obj/item/stack/packageWrap) || istype(W,/obj/item/weapon/weldingtool))
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
|
||||
playsound(src.loc, 'sound/machines/click.ogg', 15, 1, -3)
|
||||
for(var/obj/O in src)
|
||||
O.loc = get_turf(src)
|
||||
O.forceMove(loc)
|
||||
icon_state = icon_opened
|
||||
src.opened = 1
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
var/obj/structure/stool/bed/B = O
|
||||
if(B.buckled_mob)
|
||||
continue
|
||||
O.loc = src
|
||||
O.forceMove(src)
|
||||
itemcount++
|
||||
|
||||
icon_state = icon_closed
|
||||
@@ -151,7 +151,7 @@
|
||||
user << "<span class='notice'>\The [W] is stuck to your hand, you cannot put it in \the [src]!</span>"
|
||||
return
|
||||
if(W)
|
||||
W.loc = src.loc
|
||||
W.forceMove(loc)
|
||||
else if(istype(W, /obj/item/stack/packageWrap))
|
||||
return
|
||||
else if(istype(W, /obj/item/stack/cable_coil))
|
||||
@@ -167,7 +167,7 @@
|
||||
if(rigged)
|
||||
user << "<span class='notice'>You attach [W] to [src].</span>"
|
||||
user.drop_item()
|
||||
W.loc = src
|
||||
W.forceMove(src)
|
||||
return
|
||||
else if(istype(W, /obj/item/weapon/wirecutters))
|
||||
if(rigged)
|
||||
@@ -201,7 +201,7 @@
|
||||
if(manifest)
|
||||
user << "<span class='notice'>You tear the manifest off of the crate.</span>"
|
||||
playsound(src.loc, 'sound/items/poster_ripped.ogg', 75, 1)
|
||||
manifest.loc = loc
|
||||
manifest.forceMove(loc)
|
||||
if(ishuman(user))
|
||||
user.put_in_hands(manifest)
|
||||
manifest = null
|
||||
@@ -282,7 +282,7 @@
|
||||
if(manifest)
|
||||
user << "<span class='notice'>You tear the manifest off of the crate.</span>"
|
||||
playsound(src.loc, 'sound/items/poster_ripped.ogg', 75, 1)
|
||||
manifest.loc = loc
|
||||
manifest.forceMove(loc)
|
||||
if(ishuman(user))
|
||||
user.put_in_hands(manifest)
|
||||
manifest = null
|
||||
@@ -503,12 +503,12 @@
|
||||
continue
|
||||
if(!S.anchored)
|
||||
found = 1
|
||||
S.loc = src
|
||||
S.forceMove(src)
|
||||
break
|
||||
if(!found)
|
||||
for(var/obj/machinery/M in src.loc)
|
||||
if(!M.anchored)
|
||||
M.loc = src
|
||||
M.forceMove(src)
|
||||
break
|
||||
return
|
||||
|
||||
@@ -531,12 +531,12 @@
|
||||
continue
|
||||
if(!S.anchored)
|
||||
found = 1
|
||||
S.loc = src
|
||||
S.forceMove(src)
|
||||
break
|
||||
if(!found)
|
||||
for(var/obj/machinery/M in src.loc)
|
||||
if(!M.anchored)
|
||||
M.loc = src
|
||||
M.forceMove(src)
|
||||
break
|
||||
return
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
if(manifest)
|
||||
user << "<span class='notice'>You tear the manifest off of the crate.</span>"
|
||||
playsound(src.loc, 'sound/items/poster_ripped.ogg', 75, 1)
|
||||
manifest.loc = loc
|
||||
manifest.forceMove(loc)
|
||||
if(ishuman(user))
|
||||
user.put_in_hands(manifest)
|
||||
manifest = null
|
||||
@@ -33,13 +33,13 @@
|
||||
/obj/structure/largecrate/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
|
||||
if(istype(W, /obj/item/weapon/crowbar))
|
||||
if(manifest)
|
||||
manifest.loc = loc
|
||||
manifest.forceMove(loc)
|
||||
manifest = null
|
||||
update_icon()
|
||||
new /obj/item/stack/sheet/wood(src)
|
||||
var/turf/T = get_turf(src)
|
||||
for(var/obj/O in contents)
|
||||
O.loc = T
|
||||
O.forceMove(T)
|
||||
user.visible_message("<span class='notice'>[user] pries \the [src] open.</span>", \
|
||||
"<span class='notice'>You pry open \the [src].</span>", \
|
||||
"<span class='notice'>You hear splitting wood.</span>")
|
||||
|
||||
Reference in New Issue
Block a user