mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-22 19:47:22 +01:00
I think I fixed everything it is possible to stuff a light source into.
Conflicts: code/game/dna/dna_modifier.dm code/game/machinery/Sleeper.dm code/game/objects/structures/transit_tubes.dm code/modules/reagents/Chemistry-Machinery.dm code/modules/recycling/disposal.dm
This commit is contained in:
@@ -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.setloc(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.setloc(src.loc)
|
||||
|
||||
for(var/obj/I in src)
|
||||
I.loc = src.loc
|
||||
I.setloc(src.loc)
|
||||
|
||||
for(var/mob/M in src)
|
||||
M.loc = src.loc
|
||||
M.setloc(src.loc)
|
||||
if(M.client)
|
||||
M.client.eye = M.client.mob
|
||||
M.client.perspective = MOB_PERSPECTIVE
|
||||
@@ -92,14 +92,14 @@
|
||||
for(var/obj/effect/dummy/chameleon/AD in src.loc)
|
||||
if(itemcount >= storage_capacity)
|
||||
break
|
||||
AD.loc = src
|
||||
AD.setloc(src)
|
||||
itemcount++
|
||||
|
||||
for(var/obj/item/I in src.loc)
|
||||
if(itemcount >= storage_capacity)
|
||||
break
|
||||
if(!I.anchored)
|
||||
I.loc = src
|
||||
I.setloc(src)
|
||||
itemcount++
|
||||
|
||||
for(var/mob/M in src.loc)
|
||||
@@ -114,7 +114,7 @@
|
||||
M.client.perspective = EYE_PERSPECTIVE
|
||||
M.client.eye = src
|
||||
|
||||
M.loc = src
|
||||
M.setloc(src)
|
||||
itemcount++
|
||||
|
||||
src.icon_state = src.icon_closed
|
||||
@@ -139,19 +139,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.setloc(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.setloc(src.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.setloc(src.loc)
|
||||
A.ex_act(severity++)
|
||||
qdel(src)
|
||||
|
||||
@@ -160,7 +160,7 @@
|
||||
..()
|
||||
if(health <= 0)
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.setloc(src.loc)
|
||||
del(src)
|
||||
|
||||
return
|
||||
@@ -169,14 +169,14 @@
|
||||
if(user.environment_smash)
|
||||
visible_message("\red [user] destroys the [src]. ")
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.setloc(src.loc)
|
||||
del(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.setloc(src.loc)
|
||||
del(src)
|
||||
|
||||
/obj/structure/closet/meteorhit(obj/O as obj)
|
||||
@@ -268,7 +268,7 @@
|
||||
return
|
||||
usr.drop_item()
|
||||
if(W)
|
||||
W.loc = src.loc
|
||||
W.setloc(src.loc)
|
||||
else if(istype(W, /obj/item/weapon/packageWrap))
|
||||
return
|
||||
else if(istype(W, /obj/item/weapon/weldingtool))
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
|
||||
playsound(src.loc, 'sound/machines/click.ogg', 15, 1, -3)
|
||||
for(var/obj/O in src)
|
||||
O.loc = get_turf(src)
|
||||
O.setloc(get_turf(src))
|
||||
icon_state = icon_opened
|
||||
src.opened = 1
|
||||
return 1
|
||||
@@ -55,7 +55,7 @@
|
||||
var/obj/structure/stool/bed/B = O
|
||||
if(B.buckled_mob)
|
||||
continue
|
||||
O.loc = src
|
||||
O.setloc(src)
|
||||
itemcount++
|
||||
|
||||
icon_state = icon_closed
|
||||
@@ -68,7 +68,7 @@
|
||||
return
|
||||
user.drop_item()
|
||||
if(W)
|
||||
W.loc = src.loc
|
||||
W.setloc(src.loc)
|
||||
else if(istype(W, /obj/item/weapon/packageWrap))
|
||||
return
|
||||
else if(istype(W, /obj/item/stack/cable_coil))
|
||||
@@ -84,7 +84,7 @@
|
||||
if(rigged)
|
||||
user << "<span class='notice'>You attach [W] to [src].</span>"
|
||||
user.drop_item()
|
||||
W.loc = src
|
||||
W.setloc(src)
|
||||
return
|
||||
else if(istype(W, /obj/item/weapon/wirecutters))
|
||||
if(rigged)
|
||||
@@ -385,12 +385,12 @@
|
||||
continue
|
||||
if(!S.anchored)
|
||||
found = 1
|
||||
S.loc = src
|
||||
S.setloc(src)
|
||||
break
|
||||
if(!found)
|
||||
for(var/obj/machinery/M in src.loc)
|
||||
if(!M.anchored)
|
||||
M.loc = src
|
||||
M.setloc(src)
|
||||
break
|
||||
return
|
||||
|
||||
@@ -413,12 +413,12 @@
|
||||
continue
|
||||
if(!S.anchored)
|
||||
found = 1
|
||||
S.loc = src
|
||||
S.setloc(src)
|
||||
break
|
||||
if(!found)
|
||||
for(var/obj/machinery/M in src.loc)
|
||||
if(!M.anchored)
|
||||
M.loc = src
|
||||
M.setloc(src)
|
||||
break
|
||||
return
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
new /obj/item/stack/sheet/wood(src)
|
||||
var/turf/T = get_turf(src)
|
||||
for(var/obj/O in contents)
|
||||
O.loc = T
|
||||
O.setloc(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>")
|
||||
@@ -84,4 +84,4 @@
|
||||
/obj/structure/largecrate/cat/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if(istype(W, /obj/item/weapon/crowbar))
|
||||
new /mob/living/simple_animal/cat(loc)
|
||||
..()
|
||||
..()
|
||||
|
||||
@@ -46,21 +46,21 @@
|
||||
switch(severity)
|
||||
if(1.0)
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.setloc(src.loc)
|
||||
ex_act(severity)
|
||||
qdel(src)
|
||||
return
|
||||
if(2.0)
|
||||
if (prob(50))
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.setloc(src.loc)
|
||||
ex_act(severity)
|
||||
qdel(src)
|
||||
return
|
||||
if(3.0)
|
||||
if (prob(5))
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.setloc(src.loc)
|
||||
ex_act(severity)
|
||||
qdel(src)
|
||||
return
|
||||
@@ -76,7 +76,7 @@
|
||||
if (src.connected)
|
||||
for(var/atom/movable/A as mob|obj in src.connected.loc)
|
||||
if (!( A.anchored ))
|
||||
A.loc = src
|
||||
A.setloc(src)
|
||||
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
|
||||
//src.connected = null
|
||||
del(src.connected)
|
||||
@@ -90,7 +90,7 @@
|
||||
src.connected.connected = src
|
||||
src.icon_state = "morgue0"
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.connected.loc
|
||||
A.setloc(src.connected.loc)
|
||||
src.connected.icon_state = "morguet"
|
||||
src.connected.dir = src.dir
|
||||
else
|
||||
@@ -126,7 +126,7 @@
|
||||
src.connected.connected = src
|
||||
src.icon_state = "morgue0"
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.connected.loc
|
||||
A.setloc(src.connected.loc)
|
||||
//Foreach goto(106)
|
||||
src.connected.icon_state = "morguet"
|
||||
else
|
||||
@@ -156,7 +156,7 @@
|
||||
if (src.connected)
|
||||
for(var/atom/movable/A as mob|obj in src.loc)
|
||||
if (!( A.anchored ))
|
||||
A.loc = src.connected
|
||||
A.setloc(src.connected)
|
||||
//Foreach goto(26)
|
||||
src.connected.connected = null
|
||||
src.connected.update()
|
||||
@@ -173,7 +173,7 @@
|
||||
return
|
||||
if (!ismob(user) || user.stat || user.lying || user.stunned)
|
||||
return
|
||||
O.loc = src.loc
|
||||
O.setloc(src.loc)
|
||||
if (user != O)
|
||||
for(var/mob/B in viewers(user, 3))
|
||||
if ((B.client && !( B.blinded )))
|
||||
@@ -211,21 +211,21 @@
|
||||
switch(severity)
|
||||
if(1.0)
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.setloc(src.loc)
|
||||
ex_act(severity)
|
||||
qdel(src)
|
||||
return
|
||||
if(2.0)
|
||||
if (prob(50))
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.setloc(src.loc)
|
||||
ex_act(severity)
|
||||
qdel(src)
|
||||
return
|
||||
if(3.0)
|
||||
if (prob(5))
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.setloc(src.loc)
|
||||
ex_act(severity)
|
||||
qdel(src)
|
||||
return
|
||||
@@ -250,7 +250,7 @@
|
||||
if ((src.connected) && (src.locked == 0))
|
||||
for(var/atom/movable/A as mob|obj in src.connected.loc)
|
||||
if (!( A.anchored ))
|
||||
A.loc = src
|
||||
A.setloc(src)
|
||||
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
|
||||
//src.connected = null
|
||||
del(src.connected)
|
||||
@@ -264,7 +264,7 @@
|
||||
src.connected.connected = src
|
||||
src.icon_state = "crema0"
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.connected.loc
|
||||
A.setloc(src.connected.loc)
|
||||
src.connected.icon_state = "cremat"
|
||||
else
|
||||
//src.connected = null
|
||||
@@ -298,7 +298,7 @@
|
||||
src.connected.connected = src
|
||||
src.icon_state = "crema0"
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.connected.loc
|
||||
A.setloc(src.connected.loc)
|
||||
//Foreach goto(106)
|
||||
src.connected.icon_state = "cremat"
|
||||
else
|
||||
@@ -374,7 +374,7 @@
|
||||
if (src.connected)
|
||||
for(var/atom/movable/A as mob|obj in src.loc)
|
||||
if (!( A.anchored ))
|
||||
A.loc = src.connected
|
||||
A.setloc(src.connected)
|
||||
//Foreach goto(26)
|
||||
src.connected.connected = null
|
||||
src.connected.update()
|
||||
@@ -391,7 +391,7 @@
|
||||
return
|
||||
if (!ismob(user) || user.stat || user.lying || user.stunned)
|
||||
return
|
||||
O.loc = src.loc
|
||||
O.setloc(src.loc)
|
||||
if (user != O)
|
||||
for(var/mob/B in viewers(user, 3))
|
||||
if ((B.client && !( B.blinded )))
|
||||
|
||||
@@ -36,7 +36,7 @@ FLOOR SAFES
|
||||
return
|
||||
if(I.w_class + space <= maxspace)
|
||||
space += I.w_class
|
||||
I.loc = src
|
||||
I.setloc(src)
|
||||
|
||||
|
||||
/obj/structure/safe/proc/check_unlocked(mob/user as mob, canhear)
|
||||
@@ -147,7 +147,7 @@ FLOOR SAFES
|
||||
if(I.w_class + space <= maxspace)
|
||||
space += I.w_class
|
||||
user.drop_item()
|
||||
I.loc = src
|
||||
I.setloc(src)
|
||||
user << "<span class='notice'>You put [I] in [src].</span>"
|
||||
updateUsrDialog()
|
||||
return
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
|
||||
/obj/structure/transit_tube_pod/Destroy()
|
||||
for(var/atom/movable/AM in contents)
|
||||
AM.loc = loc
|
||||
AM.setloc(loc)
|
||||
|
||||
..()
|
||||
|
||||
@@ -60,8 +60,7 @@ obj/structure/ex_act(severity)
|
||||
switch(severity)
|
||||
if(1.0)
|
||||
for(var/atom/movable/AM in contents)
|
||||
AM.loc = loc
|
||||
// TODO: What the fuck are you doing
|
||||
AM.setloc(loc)
|
||||
AM.ex_act(severity++)
|
||||
|
||||
qdel(src)
|
||||
@@ -69,7 +68,7 @@ obj/structure/ex_act(severity)
|
||||
if(2.0)
|
||||
if(prob(50))
|
||||
for(var/atom/movable/AM in contents)
|
||||
AM.loc = loc
|
||||
AM.setloc(loc)
|
||||
AM.ex_act(severity++)
|
||||
|
||||
qdel(src)
|
||||
@@ -104,7 +103,7 @@ obj/structure/ex_act(severity)
|
||||
AM << "<span class='warning'>The tube's support pylons block your way.</span>"
|
||||
return ..()
|
||||
else
|
||||
AM.loc = src.loc
|
||||
AM.setloc(src.loc)
|
||||
AM << "<span class='info'>You slip under the tube.</span>"
|
||||
|
||||
/obj/structure/transit_tube/station/New(loc)
|
||||
@@ -116,7 +115,7 @@ obj/structure/ex_act(severity)
|
||||
if(!pod_moving && icon_state == "open" && istype(AM, /mob))
|
||||
for(var/obj/structure/transit_tube_pod/pod in loc)
|
||||
if(!pod.moving && pod.dir in directions())
|
||||
AM.loc = pod
|
||||
AM.setloc(pod)
|
||||
return
|
||||
|
||||
|
||||
@@ -436,7 +435,7 @@ obj/structure/ex_act(severity)
|
||||
if(istype(mob, /mob) && mob.client)
|
||||
// If the pod is not in a tube at all, you can get out at any time.
|
||||
if(!(locate(/obj/structure/transit_tube) in loc))
|
||||
mob.loc = loc
|
||||
mob.setloc(loc)
|
||||
mob.client.Move(get_step(loc, direction), direction)
|
||||
|
||||
//if(moving && istype(loc, /turf/space))
|
||||
@@ -449,7 +448,7 @@ obj/structure/ex_act(severity)
|
||||
if(!station.pod_moving)
|
||||
if(direction == station.dir)
|
||||
if(station.icon_state == "open")
|
||||
mob.loc = loc
|
||||
mob.setloc(loc)
|
||||
mob.client.Move(get_step(loc, direction), direction)
|
||||
|
||||
else
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
if(ishuman(user))
|
||||
user.put_in_hands(I)
|
||||
else
|
||||
I.loc = get_turf(src)
|
||||
I.setloc(get_turf(src))
|
||||
user << "<span class='notice'>You find \an [I] in the cistern.</span>"
|
||||
w_items -= I.w_class
|
||||
return
|
||||
@@ -84,7 +84,7 @@
|
||||
user << "<span class='notice'>The cistern is full.</span>"
|
||||
return
|
||||
user.drop_item()
|
||||
I.loc = src
|
||||
I.setloc(src)
|
||||
w_items += I.w_class
|
||||
user << "You carefully place \the [I] into the cistern."
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user