mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-24 05:30:05 +01:00
[MIRROR] Add mapping linter to check for duplicate machinery stacked on same tile [MDB IGNORE] (#24905)
* Add mapping linter to check for duplicate machinery stacked on same tile (#79394) This has happened quite a few times in the past and it'd be a good idea to have a linter catch this common mistake. After digging through the Python code for the mapping linter, it appears the linter wasn't correctly identifying two duplicate objects. I tweaked the code to fix this. * Add mapping linter to check for duplicate machinery stacked on same tile * Fixes modular mapping errors * Missed these? * More errors --------- Co-authored-by: Tim <timothymtorres@gmail.com> Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
This commit is contained in:
@@ -2159,11 +2159,6 @@
|
||||
},
|
||||
/turf/open/floor/iron/white,
|
||||
/area/ruin/space/has_grav/cargodise_freighter/trauma)
|
||||
"IA" = (
|
||||
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
|
||||
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
|
||||
/turf/open/floor/iron/kitchen,
|
||||
/area/ruin/space/has_grav/cargodise_freighter/kitchen)
|
||||
"IP" = (
|
||||
/obj/machinery/vending/dinnerware,
|
||||
/turf/open/floor/iron/kitchen,
|
||||
@@ -3039,12 +3034,6 @@
|
||||
/obj/machinery/light/directional/south,
|
||||
/turf/open/floor/iron/kitchen,
|
||||
/area/ruin/space/has_grav/cargodise_freighter/kitchen)
|
||||
"WE" = (
|
||||
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
|
||||
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
|
||||
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
|
||||
/turf/open/floor/iron/dark,
|
||||
/area/ruin/space/has_grav/cargodise_freighter/kitchen)
|
||||
"WJ" = (
|
||||
/obj/effect/turf_decal/tile/yellow/half{
|
||||
dir = 4
|
||||
@@ -4066,7 +4055,7 @@ Ey
|
||||
WQ
|
||||
Gg
|
||||
Zq
|
||||
WE
|
||||
wd
|
||||
YY
|
||||
Gg
|
||||
UL
|
||||
@@ -4635,7 +4624,7 @@ vH
|
||||
vH
|
||||
Gg
|
||||
gc
|
||||
IA
|
||||
FT
|
||||
FT
|
||||
FT
|
||||
JC
|
||||
|
||||
@@ -7615,7 +7615,6 @@
|
||||
"Qy" = (
|
||||
/obj/machinery/firealarm/directional/west,
|
||||
/obj/machinery/suit_storage_unit/industrial/hauler,
|
||||
/obj/machinery/suit_storage_unit/industrial/hauler,
|
||||
/obj/effect/turf_decal/tile/brown/half{
|
||||
dir = 8
|
||||
},
|
||||
|
||||
@@ -7213,7 +7213,6 @@
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/machinery/firealarm/directional/west,
|
||||
/obj/machinery/suit_storage_unit/industrial/hauler,
|
||||
/obj/machinery/suit_storage_unit/industrial/hauler,
|
||||
/obj/effect/turf_decal/tile/brown/half{
|
||||
dir = 8
|
||||
},
|
||||
|
||||
@@ -6335,7 +6335,6 @@
|
||||
"Qy" = (
|
||||
/obj/machinery/firealarm/directional/west,
|
||||
/obj/machinery/suit_storage_unit/industrial/hauler,
|
||||
/obj/machinery/suit_storage_unit/industrial/hauler,
|
||||
/obj/effect/turf_decal/tile/brown/half{
|
||||
dir = 8
|
||||
},
|
||||
|
||||
@@ -6955,7 +6955,6 @@
|
||||
"Qy" = (
|
||||
/obj/machinery/firealarm/directional/west,
|
||||
/obj/machinery/suit_storage_unit/industrial/hauler,
|
||||
/obj/machinery/suit_storage_unit/industrial/hauler,
|
||||
/obj/effect/turf_decal/tile/brown/half{
|
||||
dir = 8
|
||||
},
|
||||
|
||||
@@ -5090,9 +5090,6 @@
|
||||
/turf/open/floor/iron/smooth,
|
||||
/area/awaymission/black_mesa/entrance_internal_hall)
|
||||
"cTO" = (
|
||||
/obj/machinery/power/emitter/energycannon{
|
||||
dir = 8
|
||||
},
|
||||
/obj/machinery/power/emitter/energycannon{
|
||||
dir = 8
|
||||
},
|
||||
@@ -6329,9 +6326,6 @@
|
||||
/turf/open/floor/iron/smooth_large,
|
||||
/area/awaymission/black_mesa/lambda_teleporter)
|
||||
"fjj" = (
|
||||
/obj/machinery/power/emitter/energycannon{
|
||||
dir = 4
|
||||
},
|
||||
/obj/machinery/power/emitter/energycannon{
|
||||
dir = 4
|
||||
},
|
||||
|
||||
@@ -7548,10 +7548,6 @@
|
||||
},
|
||||
/obj/effect/mapping_helpers/requests_console/information,
|
||||
/obj/effect/mapping_helpers/requests_console/assistance,
|
||||
/obj/machinery/requests_console/directional/west{
|
||||
department = "Toxins Lab";
|
||||
name = "Toxins Requests Console"
|
||||
},
|
||||
/obj/effect/mapping_helpers/requests_console/information,
|
||||
/obj/effect/mapping_helpers/requests_console/assistance,
|
||||
/obj/effect/turf_decal/bot,
|
||||
@@ -20850,7 +20846,7 @@
|
||||
/obj/structure/railing,
|
||||
/obj/machinery/elevator_control_panel/directional/south{
|
||||
linked_elevator_id = "publicElevator";
|
||||
preset_destination_names = list("2"="Lower Deck","3"="Upper Deck")
|
||||
preset_destination_names = list("2"="Lower Deck","3"="Upper Deck")
|
||||
},
|
||||
/turf/open/floor/plating/elevatorshaft,
|
||||
/area/station/hallway/primary/central)
|
||||
@@ -91796,7 +91792,6 @@
|
||||
"pnj" = (
|
||||
/obj/machinery/hydroponics/constructable,
|
||||
/obj/structure/flora/bush/sparsegrass,
|
||||
/obj/machinery/hydroponics/constructable,
|
||||
/turf/open/floor/grass,
|
||||
/area/station/security/prison/garden)
|
||||
"pnk" = (
|
||||
@@ -135000,7 +134995,6 @@
|
||||
/obj/effect/turf_decal/box/white{
|
||||
color = "#52B4E9"
|
||||
},
|
||||
/obj/machinery/portable_atmospherics/canister/anesthetic_mix,
|
||||
/obj/effect/turf_decal/tile/blue{
|
||||
dir = 4
|
||||
},
|
||||
|
||||
@@ -2144,10 +2144,6 @@
|
||||
/obj/effect/turf_decal/trimline/purple/filled/line{
|
||||
dir = 6
|
||||
},
|
||||
/obj/machinery/button/door/directional/south{
|
||||
id = "genetics_shutters";
|
||||
name = "Genetics Shutters"
|
||||
},
|
||||
/obj/item/storage/box/monkeycubes{
|
||||
pixel_x = 6;
|
||||
pixel_y = 9
|
||||
@@ -16605,7 +16601,6 @@
|
||||
/obj/effect/turf_decal/trimline/brown/filled/line{
|
||||
dir = 4
|
||||
},
|
||||
/obj/machinery/firealarm/directional/east,
|
||||
/obj/structure/bed/dogbed{
|
||||
anchored = 1;
|
||||
name = "Markus's bed"
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
/obj/machinery:
|
||||
banned_neighbors:
|
||||
/obj/machinery:
|
||||
identical: true
|
||||
@@ -66,7 +66,13 @@ class BannedNeighbor:
|
||||
|
||||
def matches(self, identified: Content, neighbor: Content):
|
||||
if self.identical:
|
||||
return neighbor == identified
|
||||
if identified.path != neighbor.path:
|
||||
return False
|
||||
|
||||
if identified.var_edits != neighbor.var_edits:
|
||||
return False
|
||||
|
||||
return True
|
||||
|
||||
if self.typepath is not None:
|
||||
if self.typepath.matches_path(neighbor.path):
|
||||
|
||||
Reference in New Issue
Block a user