mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-21 03:59:59 +01:00
Disposal bins can now hold a destination tagger, and adds a few throughout maps. (#81991)
## About The Pull Request  _Pictured, a disposal bin with a mounted destination tagger._ Disposal bins now have a dedicated mount where they can hold a destination tagger, allowing for crewmates to more easily send items through disposals to other departments. This can be especially useful when on larger maps, or when cooperating on larger maps with remote resources like on viro/xenobio. All disposal bins can hold a destination tagger, but select ones on maps have one pre-loaded. Disposal bins can be removed with an empty hand and right click, and re-attached with right click as well. ## Why It's Good For The Game This helps assist with crew cooperation on maps where remote or otherwise inaccessible departments have to really work to cooperate and send resources, this chips away at the barrier of entry by giving most departments a way to send resources back and forth as necessary through the disposals network. It ALSO allows for additional opportunities for players to send dangerous items like bombs or grenades through disposals using destination taggers indirectly 👍 ## Changelog 🆑 add: Disposal bins can now hold destination taggers using right click, and can be removed the same way. Some disposal bins should have some pre-loaded as well. /🆑 --------- Co-authored-by: san7890 <the@san7890.com> Co-authored-by: Jordan Dominion <Cyberboss@users.noreply.github.com>
This commit is contained in:
co-authored by
san7890
Jordan Dominion
parent
34b9af5358
commit
c3d3d92eea
@@ -1466,8 +1466,8 @@
|
||||
dir = 1
|
||||
},
|
||||
/obj/effect/turf_decal/tile/neutral/fourcorners,
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/effect/turf_decal/bot,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/smooth,
|
||||
/area/station/command/bridge)
|
||||
"aEl" = (
|
||||
@@ -11922,7 +11922,6 @@
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 4
|
||||
},
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/railing{
|
||||
dir = 10
|
||||
},
|
||||
@@ -11931,6 +11930,7 @@
|
||||
dir = 10
|
||||
},
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/plating,
|
||||
/area/station/engineering/break_room)
|
||||
"ewi" = (
|
||||
@@ -24766,9 +24766,9 @@
|
||||
/area/station/construction/mining/aux_base)
|
||||
"iUN" = (
|
||||
/obj/structure/disposalpipe/trunk,
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/effect/turf_decal/bot,
|
||||
/obj/machinery/airalarm/directional/north,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/cargo/storage)
|
||||
"iVq" = (
|
||||
@@ -57432,8 +57432,8 @@
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 8
|
||||
},
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/effect/turf_decal/bot,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/white/side{
|
||||
dir = 4
|
||||
},
|
||||
@@ -63470,10 +63470,7 @@
|
||||
dir = 8
|
||||
},
|
||||
/obj/effect/turf_decal/stripes/box,
|
||||
/obj/machinery/disposal/bin{
|
||||
desc = "A pneumatic waste disposal unit. This one leads to the morgue.";
|
||||
name = "corpse disposal"
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/dark,
|
||||
/area/station/medical/medbay/central)
|
||||
"vLT" = (
|
||||
@@ -65229,8 +65226,8 @@
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 8
|
||||
},
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/sign/poster/official/random/directional/north,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/dark,
|
||||
/area/station/security/office)
|
||||
"woT" = (
|
||||
|
||||
@@ -7668,7 +7668,6 @@
|
||||
/area/station/maintenance/port)
|
||||
"bRw" = (
|
||||
/obj/structure/sign/warning/deathsposal/directional/east,
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 8
|
||||
},
|
||||
@@ -7680,6 +7679,7 @@
|
||||
/obj/effect/turf_decal/tile/purple/half/contrasted{
|
||||
dir = 8
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/science/xenobiology)
|
||||
"bRy" = (
|
||||
@@ -17952,7 +17952,7 @@
|
||||
},
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/effect/turf_decal/bot,
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/engineering/storage)
|
||||
"eua" = (
|
||||
@@ -22027,7 +22027,6 @@
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/status_display/evac/directional/south,
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/effect/turf_decal/bot,
|
||||
/obj/structure/sign/directions/arrival{
|
||||
dir = 1;
|
||||
@@ -22037,6 +22036,7 @@
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 4
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/hallway/secondary/entry)
|
||||
"fux" = (
|
||||
@@ -27314,7 +27314,6 @@
|
||||
/turf/open/floor/plating,
|
||||
/area/station/maintenance/department/engine/atmos)
|
||||
"gIa" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/machinery/light/small/directional/north,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 8
|
||||
@@ -27323,6 +27322,7 @@
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 4
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/security/brig)
|
||||
"gIc" = (
|
||||
@@ -38975,7 +38975,6 @@
|
||||
/turf/open/floor/iron/dark,
|
||||
/area/station/engineering/transit_tube)
|
||||
"jFa" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/effect/turf_decal/bot,
|
||||
/obj/machinery/status_display/evac/directional/west,
|
||||
/obj/effect/turf_decal/siding/purple{
|
||||
@@ -38985,6 +38984,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/obj/machinery/light/directional/west,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/science/lab)
|
||||
"jFb" = (
|
||||
@@ -51496,16 +51496,13 @@
|
||||
/turf/open/floor/iron,
|
||||
/area/station/medical/virology)
|
||||
"mNL" = (
|
||||
/obj/machinery/disposal/bin{
|
||||
desc = "A pneumatic waste disposal unit. This one leads to the morgue.";
|
||||
name = "corpse disposal"
|
||||
},
|
||||
/obj/effect/turf_decal/bot,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 8
|
||||
},
|
||||
/obj/effect/turf_decal/tile/blue/fourcorners,
|
||||
/obj/machinery/light/directional/east,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/medical/medbay)
|
||||
"mNX" = (
|
||||
@@ -60184,7 +60181,6 @@
|
||||
},
|
||||
/area/station/commons/fitness/recreation)
|
||||
"pen" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/effect/turf_decal/bot,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 1
|
||||
@@ -60193,6 +60189,7 @@
|
||||
/obj/effect/turf_decal/tile/neutral/anticorner/contrasted{
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/science/xenobiology)
|
||||
"peo" = (
|
||||
@@ -70545,7 +70542,6 @@
|
||||
/turf/open/floor/iron,
|
||||
/area/station/engineering/atmos/storage)
|
||||
"rFV" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/effect/turf_decal/bot,
|
||||
/obj/structure/disposalpipe/trunk,
|
||||
/obj/machinery/camera/directional/north{
|
||||
@@ -70555,6 +70551,7 @@
|
||||
/obj/machinery/airalarm/directional/north,
|
||||
/obj/effect/turf_decal/tile/neutral/fourcorners,
|
||||
/obj/machinery/light/directional/north,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/dark,
|
||||
/area/station/security/office)
|
||||
"rFZ" = (
|
||||
|
||||
@@ -11420,8 +11420,8 @@
|
||||
/turf/open/floor/iron,
|
||||
/area/station/commons/storage/mining)
|
||||
"drG" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/disposalpipe/trunk,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/cargo/office)
|
||||
"drH" = (
|
||||
@@ -19049,8 +19049,8 @@
|
||||
/area/station/science/explab)
|
||||
"fOR" = (
|
||||
/obj/structure/disposalpipe/trunk,
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/machinery/airalarm/directional/east,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/white/side{
|
||||
dir = 9
|
||||
},
|
||||
@@ -60408,9 +60408,9 @@
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/machinery/computer/security/telescreen/entertainment/directional/south,
|
||||
/obj/machinery/light/small/directional/east,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/dark,
|
||||
/area/station/engineering/storage)
|
||||
"sto" = (
|
||||
@@ -61419,7 +61419,7 @@
|
||||
dir = 5
|
||||
},
|
||||
/obj/structure/disposalpipe/trunk,
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/white,
|
||||
/area/station/medical/medbay/aft)
|
||||
"sHh" = (
|
||||
@@ -74205,8 +74205,8 @@
|
||||
/turf/open/floor/plating,
|
||||
/area/station/maintenance/port/aft)
|
||||
"wMV" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/disposalpipe/trunk,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/dark/textured_half{
|
||||
dir = 1
|
||||
},
|
||||
|
||||
@@ -1389,10 +1389,10 @@
|
||||
/turf/open/floor/plating,
|
||||
/area/station/engineering/supermatter/room)
|
||||
"aBJ" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/effect/turf_decal/delivery,
|
||||
/obj/effect/turf_decal/siding,
|
||||
/obj/structure/disposalpipe/trunk,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/science/lab)
|
||||
"aBL" = (
|
||||
@@ -3254,13 +3254,13 @@
|
||||
network = list("ss13","medbay")
|
||||
},
|
||||
/obj/item/radio/intercom/directional/west,
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 4
|
||||
},
|
||||
/obj/effect/turf_decal/tile/blue/anticorner/contrasted{
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/white,
|
||||
/area/station/medical/medbay/central)
|
||||
"bgV" = (
|
||||
@@ -6857,7 +6857,6 @@
|
||||
/turf/open/space,
|
||||
/area/space/nearstation)
|
||||
"cxq" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 1
|
||||
},
|
||||
@@ -6869,6 +6868,7 @@
|
||||
name = "Labor Camp Shuttle Lockdown";
|
||||
req_access = list("brig")
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/security/brig)
|
||||
"cxt" = (
|
||||
@@ -9560,7 +9560,6 @@
|
||||
/turf/open/floor/iron,
|
||||
/area/station/science/research)
|
||||
"dBv" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/machinery/airalarm/directional/east,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 1
|
||||
@@ -9569,6 +9568,7 @@
|
||||
dir = 8
|
||||
},
|
||||
/obj/machinery/light/small/directional/east,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/cargo/storage)
|
||||
"dBV" = (
|
||||
@@ -43745,11 +43745,11 @@
|
||||
/turf/open/floor/iron,
|
||||
/area/station/engineering/atmos/storage/gas)
|
||||
"pIz" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/effect/turf_decal/bot,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 8
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/wood,
|
||||
/area/station/commons/lounge)
|
||||
"pID" = (
|
||||
@@ -59390,11 +59390,11 @@
|
||||
/turf/open/floor/iron/dark,
|
||||
/area/station/security/courtroom)
|
||||
"vfO" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 8
|
||||
},
|
||||
/obj/effect/turf_decal/tile/yellow/half/contrasted,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/engineering/break_room)
|
||||
"vfU" = (
|
||||
|
||||
@@ -7372,8 +7372,8 @@
|
||||
/obj/effect/turf_decal/trimline/green/filled/line{
|
||||
dir = 5
|
||||
},
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/disposalpipe/trunk,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/hallway/floor3/aft)
|
||||
"bPq" = (
|
||||
@@ -8715,10 +8715,10 @@
|
||||
/turf/open/floor/iron/white,
|
||||
/area/station/medical/storage)
|
||||
"cgv" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/dark/side{
|
||||
dir = 10
|
||||
},
|
||||
@@ -16918,11 +16918,11 @@
|
||||
/area/station/maintenance/floor4/starboard/aft)
|
||||
"enl" = (
|
||||
/obj/effect/turf_decal/delivery,
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 8
|
||||
},
|
||||
/obj/machinery/airalarm/directional/east,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/dark,
|
||||
/area/station/hallway/secondary/service)
|
||||
"enp" = (
|
||||
@@ -34335,7 +34335,6 @@
|
||||
/turf/open/floor/iron/grimy,
|
||||
/area/station/security/detectives_office)
|
||||
"iUP" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 1
|
||||
},
|
||||
@@ -34343,6 +34342,7 @@
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/newscaster/directional/south,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/dark/side{
|
||||
dir = 10
|
||||
},
|
||||
@@ -50730,10 +50730,10 @@
|
||||
/area/station/holodeck/rec_center)
|
||||
"mZS" = (
|
||||
/obj/structure/disposalpipe/trunk,
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/effect/turf_decal/trimline/blue/filled/line{
|
||||
dir = 9
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/white,
|
||||
/area/station/medical/medbay/central)
|
||||
"mZT" = (
|
||||
@@ -73774,8 +73774,8 @@
|
||||
/area/station/commons/toilet)
|
||||
"sZb" = (
|
||||
/obj/structure/disposalpipe/trunk,
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/machinery/firealarm/directional/north,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/corner{
|
||||
dir = 8
|
||||
},
|
||||
@@ -79640,10 +79640,10 @@
|
||||
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
|
||||
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
|
||||
/obj/structure/cable,
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 4
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/dark/side{
|
||||
dir = 4
|
||||
},
|
||||
@@ -87390,9 +87390,9 @@
|
||||
/obj/effect/turf_decal/trimline/purple/filled/corner{
|
||||
dir = 4
|
||||
},
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/disposalpipe/trunk,
|
||||
/obj/machinery/light/cold/no_nightlight/directional/west,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/white,
|
||||
/area/station/science/lobby)
|
||||
"wvw" = (
|
||||
|
||||
@@ -3636,11 +3636,11 @@
|
||||
/obj/effect/turf_decal/trimline/neutral/filled/line{
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/machinery/status_display/evac/directional/north,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 2
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/commons/dorms)
|
||||
"awi" = (
|
||||
@@ -8051,7 +8051,6 @@
|
||||
/turf/open/floor/iron/dark,
|
||||
/area/station/security/courtroom/holding)
|
||||
"bLr" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/effect/turf_decal/trimline/red/filled/line{
|
||||
dir = 5
|
||||
},
|
||||
@@ -8062,6 +8061,7 @@
|
||||
dir = 8
|
||||
},
|
||||
/obj/structure/window/reinforced/spawner/directional/south,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/security/office)
|
||||
"bLA" = (
|
||||
@@ -19128,10 +19128,10 @@
|
||||
dir = 9
|
||||
},
|
||||
/obj/machinery/newscaster/directional/north,
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 4
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/white,
|
||||
/area/station/science/lab)
|
||||
"fKg" = (
|
||||
@@ -21222,11 +21222,11 @@
|
||||
/obj/effect/turf_decal/trimline/yellow/filled/line{
|
||||
dir = 9
|
||||
},
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/machinery/newscaster/directional/north,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 4
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/engineering/main)
|
||||
"gxV" = (
|
||||
@@ -47013,7 +47013,7 @@
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/dark,
|
||||
/area/station/command/bridge)
|
||||
"pGS" = (
|
||||
@@ -54298,13 +54298,13 @@
|
||||
/turf/open/floor/iron/white,
|
||||
/area/station/science/xenobiology)
|
||||
"skb" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/effect/turf_decal/trimline/brown/filled/line{
|
||||
dir = 10
|
||||
},
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron,
|
||||
/area/station/cargo/storage)
|
||||
"ski" = (
|
||||
@@ -70456,13 +70456,13 @@
|
||||
/turf/open/floor/iron/white,
|
||||
/area/station/medical/medbay/central)
|
||||
"xSz" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/effect/turf_decal/trimline/blue/filled/line{
|
||||
dir = 4
|
||||
},
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 2
|
||||
},
|
||||
/obj/machinery/disposal/bin/tagger,
|
||||
/turf/open/floor/iron/white,
|
||||
/area/station/medical/treatment_center)
|
||||
"xSD" = (
|
||||
|
||||
@@ -131,7 +131,7 @@
|
||||
return
|
||||
place_item_in_disposal(I, user)
|
||||
update_appearance()
|
||||
return 1 //no afterattack
|
||||
return TRUE //no afterattack
|
||||
else
|
||||
return ..()
|
||||
|
||||
@@ -327,19 +327,73 @@
|
||||
desc = "A pneumatic waste disposal unit."
|
||||
icon_state = "disposal"
|
||||
interaction_flags_atom = parent_type::interaction_flags_atom | INTERACT_ATOM_IGNORE_MOBILITY
|
||||
/// Reference to the mounted destination tagger for disposal bins with one mounted.
|
||||
var/obj/item/dest_tagger/mounted_tagger
|
||||
|
||||
// attack by item places it in to disposal
|
||||
/obj/machinery/disposal/bin/attackby(obj/item/I, mob/user, params)
|
||||
if(istype(I, /obj/item/storage/bag/trash)) //Not doing component overrides because this is a specific type.
|
||||
var/obj/item/storage/bag/trash/bag = I
|
||||
/obj/machinery/disposal/bin/attackby(obj/item/weapon, mob/user, params)
|
||||
if(istype(weapon, /obj/item/storage/bag/trash)) //Not doing component overrides because this is a specific type.
|
||||
var/obj/item/storage/bag/trash/bag = weapon
|
||||
to_chat(user, span_warning("You empty the bag."))
|
||||
bag.atom_storage.remove_all(src)
|
||||
update_appearance()
|
||||
else
|
||||
return ..()
|
||||
|
||||
// handle machine interaction
|
||||
|
||||
/obj/machinery/disposal/bin/attackby_secondary(obj/item/weapon, mob/user, params)
|
||||
if(istype(weapon, /obj/item/dest_tagger))
|
||||
var/obj/item/dest_tagger/new_tagger = weapon
|
||||
if(mounted_tagger)
|
||||
balloon_alert(user, "already has a tagger!")
|
||||
return
|
||||
if(HAS_TRAIT(new_tagger, TRAIT_NODROP) || !user.transferItemToLoc(new_tagger, src))
|
||||
balloon_alert(user, "stuck to your hand!")
|
||||
return
|
||||
new_tagger.moveToNullspace()
|
||||
user.visible_message(span_notice("[user] snaps \the [new_tagger] onto [src]!"))
|
||||
balloon_alert(user, "tagger returned")
|
||||
playsound(src, 'sound/machines/click.ogg', 50, TRUE)
|
||||
mounted_tagger = new_tagger
|
||||
update_appearance()
|
||||
return
|
||||
else
|
||||
return ..()
|
||||
|
||||
/obj/machinery/disposal/bin/attack_hand_secondary(mob/user, list/modifiers)
|
||||
. = ..()
|
||||
if(!mounted_tagger)
|
||||
balloon_alert(user, "no destination tagger!")
|
||||
return SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN
|
||||
if(!user.put_in_hands(mounted_tagger))
|
||||
balloon_alert(user, "destination tagger falls!")
|
||||
mounted_tagger = null
|
||||
return SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN
|
||||
user.visible_message(span_notice("[user] unhooks the [mounted_tagger] from [src]."))
|
||||
balloon_alert(user, "tagger pulled")
|
||||
playsound(src, 'sound/machines/click.ogg', 60, TRUE)
|
||||
mounted_tagger = null
|
||||
update_appearance(UPDATE_OVERLAYS)
|
||||
return SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN
|
||||
|
||||
/obj/machinery/disposal/bin/examine(mob/user)
|
||||
. = ..()
|
||||
if(isnull(mounted_tagger))
|
||||
. += span_notice("The destination tagger mount is empty.")
|
||||
else
|
||||
. += span_notice("\The [mounted_tagger] is hanging on the side. Right Click to remove.")
|
||||
|
||||
/obj/machinery/disposal/bin/Destroy()
|
||||
if(!isnull(mounted_tagger))
|
||||
QDEL_NULL(mounted_tagger)
|
||||
return ..()
|
||||
|
||||
/obj/machinery/disposal/bin/on_deconstruction(disassembled)
|
||||
. = ..()
|
||||
if(!isnull(mounted_tagger))
|
||||
mounted_tagger.forceMove(drop_location())
|
||||
mounted_tagger = null
|
||||
|
||||
/obj/machinery/disposal/bin/ui_state(mob/user)
|
||||
return GLOB.notcontained_state
|
||||
|
||||
@@ -419,6 +473,9 @@
|
||||
if(flush)
|
||||
. += "dispover-handle"
|
||||
|
||||
if(mounted_tagger)
|
||||
. += "tagger_mount"
|
||||
|
||||
//only handle is shown if no power
|
||||
if(machine_stat & NOPOWER || panel_open)
|
||||
return
|
||||
@@ -493,6 +550,10 @@
|
||||
if(user.stat == DEAD || !(user.sight & (SEEOBJS|SEEMOBS)))
|
||||
user.overlay_fullscreen("remote_view", /atom/movable/screen/fullscreen/impaired, 2)
|
||||
|
||||
/obj/machinery/disposal/bin/tagger/Initialize(mapload, obj/structure/disposalconstruct/make_from)
|
||||
mounted_tagger = new /obj/item/dest_tagger(null)
|
||||
return ..()
|
||||
|
||||
//Delivery Chute
|
||||
|
||||
/obj/machinery/disposal/delivery_chute
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 126 KiB After Width: | Height: | Size: 120 KiB |
Reference in New Issue
Block a user