diff --git a/_maps/map_files/Birdshot/birdshot.dmm b/_maps/map_files/Birdshot/birdshot.dmm index 38a00bed3e6..3d5aba40893 100644 --- a/_maps/map_files/Birdshot/birdshot.dmm +++ b/_maps/map_files/Birdshot/birdshot.dmm @@ -22713,16 +22713,8 @@ dir = 4 }, /obj/structure/rack, -/obj/item/gun/energy/laser{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/energy/laser, -/obj/item/gun/energy/laser{ - pixel_x = 3; - pixel_y = -3 - }, /obj/machinery/airalarm/directional/west, +/obj/effect/spawner/random/armory/laser_gun, /turf/open/floor/iron/dark/small, /area/station/ai_monitored/security/armory) "iAy" = ( @@ -23438,15 +23430,8 @@ /obj/structure/closet/crate{ name = "Outdated Weaponry" }, -/obj/item/gun/ballistic/shotgun/riot{ - pixel_y = 6 - }, -/obj/item/gun/ballistic/shotgun/riot{ - pixel_y = 6 - }, -/obj/item/gun/ballistic/shotgun/riot{ - pixel_y = 6 - }, +/obj/effect/spawner/random/armory/barrier_grenades, +/obj/effect/spawner/random/armory/shotgun, /turf/open/floor/plating, /area/station/ai_monitored/security/armory) "iNL" = ( @@ -41671,16 +41656,8 @@ dir = 4 }, /obj/structure/rack, -/obj/item/gun/energy/disabler{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/energy/disabler, -/obj/item/gun/energy/disabler{ - pixel_x = 3; - pixel_y = -3 - }, /obj/item/radio/intercom/directional/west, +/obj/effect/spawner/random/armory/disablers, /turf/open/floor/iron/dark/small, /area/station/ai_monitored/security/armory) "pox" = ( @@ -51144,24 +51121,10 @@ dir = 1 }, /obj/structure/rack, -/obj/item/clothing/head/helmet/toggleable/riot{ - pixel_x = 3; - pixel_y = 2 - }, -/obj/item/clothing/head/helmet/toggleable/riot{ - pixel_x = -3; - pixel_y = 2 - }, -/obj/item/clothing/head/helmet/alt{ - pixel_x = 3; - pixel_y = -2 - }, -/obj/item/clothing/head/helmet/alt{ - pixel_x = -3; - pixel_y = -2 - }, -/obj/item/gun/energy/e_gun/dragnet, /obj/machinery/light/cold/directional/south, +/obj/effect/spawner/random/armory/riot_helmet, +/obj/effect/spawner/random/armory/bulletproof_helmet, +/obj/item/gun/energy/e_gun/dragnet, /turf/open/floor/iron/dark/small, /area/station/ai_monitored/security/armory) "skP" = ( @@ -54651,15 +54614,7 @@ dir = 4 }, /obj/structure/rack, -/obj/item/gun/energy/e_gun{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/energy/e_gun, -/obj/item/gun/energy/e_gun{ - pixel_x = 3; - pixel_y = -3 - }, +/obj/effect/spawner/random/armory/e_gun, /turf/open/floor/iron/dark/small, /area/station/ai_monitored/security/armory) "trS" = ( @@ -58903,18 +58858,6 @@ /obj/effect/turf_decal/siding/dark_red/corner{ dir = 8 }, -/obj/item/grenade/barrier{ - pixel_x = 11; - pixel_y = 17 - }, -/obj/item/grenade/barrier{ - pixel_x = 2; - pixel_y = 11 - }, -/obj/item/grenade/barrier{ - pixel_x = 15; - pixel_y = 7 - }, /obj/machinery/light/cold/directional/north, /obj/effect/decal/cleanable/dirt, /obj/machinery/camera/autoname/directional/north, @@ -60711,30 +60654,9 @@ dir = 4 }, /obj/structure/rack, -/obj/item/clothing/suit/armor/riot{ - pixel_x = 3; - pixel_y = 2 - }, -/obj/item/clothing/suit/armor/riot{ - pixel_x = -3; - pixel_y = 2 - }, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = 3; - pixel_y = -2 - }, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = -3; - pixel_y = -2 - }, -/obj/item/shield/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/shield/riot{ - pixel_x = 3; - pixel_y = -3 - }, +/obj/effect/spawner/random/armory/bulletproof_armor, +/obj/effect/spawner/random/armory/riot_armor, +/obj/effect/spawner/random/armory/riot_shield, /turf/open/floor/iron/dark/small, /area/station/ai_monitored/security/armory) "vpb" = ( diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index f4c573de9bd..a2ae7ef857c 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -862,21 +862,13 @@ /area/station/security/courtroom) "alc" = ( /obj/structure/rack, -/obj/item/gun/energy/e_gun{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/energy/e_gun, -/obj/item/gun/energy/e_gun{ - pixel_x = 3; - pixel_y = -3 - }, /obj/effect/turf_decal/bot, /obj/structure/window/reinforced/spawner/directional/east{ pixel_x = 3 }, /obj/structure/window/reinforced/spawner/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/effect/spawner/random/armory/e_gun, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "ale" = ( @@ -38154,27 +38146,11 @@ /area/station/engineering/lobby) "jyx" = ( /obj/structure/rack, -/obj/item/clothing/suit/armor/vest{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/vest, -/obj/item/clothing/suit/armor/vest{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/clothing/head/helmet/sec{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet/sec, -/obj/item/clothing/head/helmet/sec{ - pixel_x = 3; - pixel_y = -3 - }, /obj/structure/window/reinforced/spawner/directional/north, /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/effect/spawner/random/armory/bulletproof_armor, +/obj/effect/spawner/random/armory/bulletproof_helmet, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "jyz" = ( @@ -49104,35 +49080,11 @@ /area/space/nearstation) "mmx" = ( /obj/structure/rack, -/obj/item/clothing/suit/armor/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/riot, -/obj/item/clothing/suit/armor/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/clothing/head/helmet/toggleable/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet/toggleable/riot, -/obj/item/clothing/head/helmet/toggleable/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/shield/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/shield/riot, -/obj/item/shield/riot{ - pixel_x = 3; - pixel_y = -3 - }, /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/effect/spawner/random/armory/riot_armor, +/obj/effect/spawner/random/armory/riot_helmet, +/obj/effect/spawner/random/armory/riot_shield, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "mmA" = ( @@ -52183,20 +52135,12 @@ /area/station/security/execution/education) "mZH" = ( /obj/structure/rack, -/obj/item/gun/energy/disabler{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/energy/disabler, -/obj/item/gun/energy/disabler{ - pixel_x = 3; - pixel_y = -3 - }, /obj/effect/turf_decal/bot, /obj/structure/window/reinforced/spawner/directional/east{ pixel_x = 3 }, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/effect/spawner/random/armory/disablers, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "mZK" = ( @@ -52990,22 +52934,10 @@ }, /area/station/security/brig) "nlZ" = ( -/obj/item/grenade/barrier{ - pixel_x = -3; - pixel_y = 1 - }, -/obj/item/grenade/barrier, -/obj/item/grenade/barrier{ - pixel_x = 3; - pixel_y = -1 - }, -/obj/item/grenade/barrier{ - pixel_x = 6; - pixel_y = -2 - }, /obj/structure/table/reinforced, /obj/item/radio/intercom/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/effect/spawner/random/armory/barrier_grenades, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "nma" = ( @@ -54412,20 +54344,12 @@ /area/space) "nEW" = ( /obj/structure/rack, -/obj/item/gun/energy/laser{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/energy/laser, -/obj/item/gun/energy/laser{ - pixel_x = 3; - pixel_y = -3 - }, /obj/effect/turf_decal/bot, /obj/structure/window/reinforced/spawner/directional/east{ pixel_x = 3 }, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/effect/spawner/random/armory/laser_gun, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "nEY" = ( @@ -89197,30 +89121,10 @@ /area/station/hallway/secondary/entry) "wow" = ( /obj/structure/rack, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/bulletproof, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001; - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001; - pixel_x = 3; - pixel_y = -3 - }, /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/effect/spawner/random/armory/bulletproof_armor, +/obj/effect/spawner/random/armory/bulletproof_helmet, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "woB" = ( @@ -95707,11 +95611,9 @@ pixel_x = 32 }, /obj/structure/closet/secure_closet/armory2, -/obj/item/storage/box/rubbershot, -/obj/item/storage/box/rubbershot, -/obj/item/storage/box/rubbershot, /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/effect/spawner/random/armory/rubbershot, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "xWJ" = ( diff --git a/_maps/map_files/IceBoxStation/IceBoxStation.dmm b/_maps/map_files/IceBoxStation/IceBoxStation.dmm index f4fc138fe88..51babd45cbf 100644 --- a/_maps/map_files/IceBoxStation/IceBoxStation.dmm +++ b/_maps/map_files/IceBoxStation/IceBoxStation.dmm @@ -854,16 +854,8 @@ /area/station/command/gateway) "apL" = ( /obj/structure/rack, -/obj/item/gun/energy/disabler{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/energy/disabler, -/obj/item/gun/energy/disabler{ - pixel_x = 3; - pixel_y = -3 - }, /obj/effect/turf_decal/tile/red/half/contrasted, +/obj/effect/spawner/random/armory/disablers, /turf/open/floor/iron/dark/textured, /area/station/ai_monitored/security/armory) "apM" = ( @@ -10924,21 +10916,13 @@ /area/station/maintenance/central/greater) "dpX" = ( /obj/structure/rack, -/obj/item/gun/ballistic/shotgun/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/ballistic/shotgun/riot, -/obj/item/gun/ballistic/shotgun/riot{ - pixel_x = 3; - pixel_y = -3 - }, /obj/structure/window/reinforced/spawner/directional/north{ layer = 2.9 }, /obj/effect/turf_decal/tile/red/anticorner/contrasted{ dir = 4 }, +/obj/effect/spawner/random/armory/shotgun, /turf/open/floor/iron/dark/textured, /area/station/ai_monitored/security/armory) "dqg" = ( @@ -15299,17 +15283,11 @@ /turf/open/floor/iron, /area/station/service/bar) "eLE" = ( -/obj/item/grenade/barrier{ - pixel_x = 4 - }, -/obj/item/grenade/barrier, -/obj/item/grenade/barrier{ - pixel_x = -4 - }, /obj/structure/table, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 }, +/obj/effect/spawner/random/armory/barrier_grenades, /turf/open/floor/iron/dark/textured, /area/station/ai_monitored/security/armory/upper) "eLS" = ( @@ -27825,35 +27803,11 @@ /area/station/security/prison) "iSd" = ( /obj/structure/rack, -/obj/item/clothing/suit/armor/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/riot, -/obj/item/clothing/suit/armor/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/clothing/head/helmet/toggleable/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet/toggleable/riot, -/obj/item/clothing/head/helmet/toggleable/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/shield/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/shield/riot, -/obj/item/shield/riot{ - pixel_x = 3; - pixel_y = -3 - }, /obj/machinery/airalarm/directional/north, /obj/effect/turf_decal/tile/red/half/contrasted, +/obj/effect/spawner/random/armory/riot_armor, +/obj/effect/spawner/random/armory/riot_helmet, +/obj/effect/spawner/random/armory/riot_shield, /turf/open/floor/iron/dark/textured, /area/station/ai_monitored/security/armory) "iSf" = ( @@ -38630,19 +38584,11 @@ req_access = list("armory") }, /obj/structure/rack, -/obj/item/gun/energy/e_gun{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/energy/e_gun, -/obj/item/gun/energy/e_gun{ - pixel_x = 3; - pixel_y = -3 - }, /obj/machinery/light/directional/north, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 4 }, +/obj/effect/spawner/random/armory/e_gun, /turf/open/floor/iron/dark/textured, /area/station/ai_monitored/security/armory/upper) "mqD" = ( @@ -41030,29 +40976,9 @@ /area/station/ai_monitored/turret_protected/ai_upload) "ngC" = ( /obj/structure/rack, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/bulletproof, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001; - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001; - pixel_x = 3; - pixel_y = -3 - }, /obj/effect/turf_decal/tile/red/half/contrasted, +/obj/effect/spawner/random/armory/bulletproof_armor, +/obj/effect/spawner/random/armory/bulletproof_helmet, /turf/open/floor/iron/dark/textured, /area/station/ai_monitored/security/armory) "ngH" = ( @@ -49277,21 +49203,13 @@ /area/station/maintenance/solars/starboard/fore) "pHi" = ( /obj/structure/rack, -/obj/item/storage/box/rubbershot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/storage/box/rubbershot, -/obj/item/storage/box/rubbershot{ - pixel_x = 3; - pixel_y = -3 - }, /obj/structure/window/reinforced/spawner/directional/north{ layer = 2.9 }, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 }, +/obj/effect/spawner/random/armory/rubbershot, /turf/open/floor/iron/dark/textured, /area/station/ai_monitored/security/armory) "pHy" = ( @@ -64573,18 +64491,10 @@ /area/station/cargo/office) "uDt" = ( /obj/structure/rack, -/obj/item/gun/energy/laser{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/energy/laser, -/obj/item/gun/energy/laser{ - pixel_x = 3; - pixel_y = -3 - }, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 4 }, +/obj/effect/spawner/random/armory/laser_gun, /turf/open/floor/iron/dark/textured, /area/station/ai_monitored/security/armory) "uDy" = ( diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index 5caf4aef70b..d5ba326b3c8 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -6315,18 +6315,10 @@ /area/station/maintenance/aft/lesser) "cuY" = ( /obj/structure/rack, -/obj/item/gun/energy/disabler{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/energy/disabler, -/obj/item/gun/energy/disabler{ - pixel_x = 3; - pixel_y = -3 - }, /obj/effect/turf_decal/tile/blue/half/contrasted{ dir = 4 }, +/obj/effect/spawner/random/armory/disablers, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "cuZ" = ( @@ -7883,16 +7875,10 @@ /area/station/service/lawoffice) "daO" = ( /obj/structure/rack, -/obj/item/gun/ballistic/shotgun/riot, -/obj/item/gun/ballistic/shotgun/riot{ - pixel_y = 6 - }, -/obj/item/gun/ballistic/shotgun/riot{ - pixel_y = 3 - }, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 }, +/obj/effect/spawner/random/armory/shotgun, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "daT" = ( @@ -20071,19 +20057,11 @@ /area/station/hallway/secondary/entry) "hxF" = ( /obj/structure/rack, -/obj/item/gun/energy/e_gun{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/energy/e_gun, -/obj/item/gun/energy/e_gun{ - pixel_x = 3; - pixel_y = -3 - }, /obj/machinery/firealarm/directional/east, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 }, +/obj/effect/spawner/random/armory/e_gun, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "hxV" = ( @@ -20322,16 +20300,8 @@ /area/station/science/ordnance/testlab) "hBR" = ( /obj/structure/rack, -/obj/item/shield/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/shield/riot, -/obj/item/shield/riot{ - pixel_x = 3; - pixel_y = -3 - }, /obj/effect/turf_decal/tile/blue/anticorner/contrasted, +/obj/effect/spawner/random/armory/riot_shield, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "hBY" = ( @@ -49396,22 +49366,10 @@ /area/station/security/brig) "rRf" = ( /obj/structure/rack, -/obj/item/grenade/barrier{ - pixel_x = -3; - pixel_y = 1 - }, -/obj/item/grenade/barrier, -/obj/item/grenade/barrier{ - pixel_x = 3; - pixel_y = -1 - }, -/obj/item/grenade/barrier{ - pixel_x = 6; - pixel_y = -2 - }, /obj/effect/turf_decal/tile/blue/half/contrasted{ dir = 4 }, +/obj/effect/spawner/random/armory/barrier_grenades, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "rRm" = ( @@ -51497,18 +51455,10 @@ /area/station/hallway/primary/starboard) "sDw" = ( /obj/structure/rack, -/obj/item/gun/energy/laser{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/energy/laser, -/obj/item/gun/energy/laser{ - pixel_x = 3; - pixel_y = -3 - }, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 }, +/obj/effect/spawner/random/armory/laser_gun, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "sDC" = ( @@ -56913,30 +56863,10 @@ "uwg" = ( /obj/structure/rack, /obj/machinery/light/directional/west, -/obj/item/clothing/head/helmet/toggleable/riot{ - pixel_x = 3; - pixel_y = 2 - }, -/obj/item/clothing/head/helmet/toggleable/riot{ - pixel_y = 2 - }, -/obj/item/clothing/head/helmet/toggleable/riot{ - pixel_x = -3; - pixel_y = 2 - }, -/obj/item/clothing/head/helmet/alt{ - pixel_x = 3; - pixel_y = -2 - }, -/obj/item/clothing/head/helmet/alt{ - pixel_y = -2 - }, -/obj/item/clothing/head/helmet/alt{ - pixel_x = -3; - pixel_y = -2 - }, /obj/structure/cable, /obj/effect/turf_decal/tile/blue/half/contrasted, +/obj/effect/spawner/random/armory/riot_helmet, +/obj/effect/spawner/random/armory/bulletproof_helmet, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "uwh" = ( @@ -62663,28 +62593,6 @@ /area/station/maintenance/aft/greater) "wya" = ( /obj/structure/rack, -/obj/item/clothing/suit/armor/riot{ - pixel_x = 3; - pixel_y = 2 - }, -/obj/item/clothing/suit/armor/riot{ - pixel_y = 2 - }, -/obj/item/clothing/suit/armor/riot{ - pixel_x = -3; - pixel_y = 2 - }, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = 3; - pixel_y = -2 - }, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_y = -2 - }, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = -3; - pixel_y = -2 - }, /obj/machinery/requests_console/directional/north{ department = "Security"; name = "Security Requests Console" @@ -62692,6 +62600,8 @@ /obj/effect/mapping_helpers/requests_console/supplies, /obj/effect/mapping_helpers/requests_console/assistance, /obj/effect/turf_decal/tile/blue/half/contrasted, +/obj/effect/spawner/random/armory/riot_armor, +/obj/effect/spawner/random/armory/bulletproof_armor, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "wyn" = ( diff --git a/_maps/map_files/NorthStar/north_star.dmm b/_maps/map_files/NorthStar/north_star.dmm index cbe4f0fc8df..b794c231fbf 100644 --- a/_maps/map_files/NorthStar/north_star.dmm +++ b/_maps/map_files/NorthStar/north_star.dmm @@ -11073,9 +11073,7 @@ /obj/effect/turf_decal/bot, /obj/structure/rack, /obj/effect/turf_decal/tile/red/fourcorners, -/obj/item/gun/energy/laser, -/obj/item/gun/energy/laser, -/obj/item/gun/energy/laser, +/obj/effect/spawner/random/armory/laser_gun, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "cJh" = ( @@ -13127,16 +13125,8 @@ /obj/structure/rack, /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/red/fourcorners, -/obj/item/gun/energy/disabler{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/gun/energy/disabler, -/obj/item/gun/energy/disabler{ - pixel_x = -3; - pixel_y = 3 - }, /obj/structure/cable, +/obj/effect/spawner/random/armory/disablers, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "dnJ" = ( @@ -27456,28 +27446,13 @@ /area/station/service/library) "hdK" = ( /obj/structure/rack, -/obj/item/clothing/suit/armor/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/riot, -/obj/item/clothing/suit/armor/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/shield/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/shield/riot, -/obj/item/shield/riot{ - pixel_x = 3; - pixel_y = -3 - }, /obj/structure/sign/nanotrasen{ pixel_x = 32 }, /obj/effect/turf_decal/tile/red/fourcorners, +/obj/effect/spawner/random/armory/riot_armor, +/obj/effect/spawner/random/armory/riot_helmet, +/obj/effect/spawner/random/armory/riot_shield, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "hdL" = ( @@ -33467,30 +33442,10 @@ /area/station/maintenance/floor2/starboard/fore) "iKy" = ( /obj/structure/rack, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/bulletproof, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001; - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001; - pixel_x = 3; - pixel_y = -3 - }, /obj/item/storage/secure/safe/directional/east, /obj/effect/turf_decal/tile/red/fourcorners, +/obj/effect/spawner/random/armory/bulletproof_armor, +/obj/effect/spawner/random/armory/bulletproof_helmet, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "iKz" = ( @@ -39967,14 +39922,8 @@ "kvk" = ( /obj/effect/turf_decal/bot, /obj/structure/rack, -/obj/item/gun/ballistic/shotgun/riot, -/obj/item/gun/ballistic/shotgun/riot{ - pixel_y = 3 - }, -/obj/item/gun/ballistic/shotgun/riot{ - pixel_y = 6 - }, /obj/effect/turf_decal/tile/red/fourcorners, +/obj/effect/spawner/random/armory/shotgun, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "kvw" = ( @@ -56328,27 +56277,11 @@ /turf/open/openspace, /area/station/medical/psychology) "ozE" = ( -/obj/item/storage/box/rubbershot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/storage/box/rubbershot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/storage/box/rubbershot, -/obj/item/storage/box/rubbershot, -/obj/item/storage/box/rubbershot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/storage/box/rubbershot{ - pixel_x = 3; - pixel_y = -3 - }, /obj/structure/table/reinforced, /obj/structure/sign/poster/official/random/directional/south, /obj/effect/turf_decal/tile/red/fourcorners, +/obj/effect/spawner/random/armory/rubbershot, +/obj/effect/spawner/random/armory/rubbershot, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "ozF" = ( @@ -57229,25 +57162,13 @@ /turf/open/floor/iron, /area/station/commons/vacant_room/commissary) "oMn" = ( -/obj/item/grenade/barrier{ - pixel_x = -3; - pixel_y = 1 - }, -/obj/item/grenade/barrier, -/obj/item/grenade/barrier{ - pixel_x = 3; - pixel_y = -1 - }, -/obj/item/grenade/barrier{ - pixel_x = 6; - pixel_y = -2 - }, /obj/structure/table/reinforced, /obj/machinery/camera/directional/south{ c_tag = "Armory - Interior" }, /obj/effect/turf_decal/tile/red/fourcorners, /obj/structure/cable, +/obj/effect/spawner/random/armory/barrier_grenades, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "oMz" = ( @@ -57665,26 +57586,10 @@ /area/station/science/lower) "oSf" = ( /obj/structure/rack, -/obj/item/clothing/suit/armor/vest{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/vest, -/obj/item/clothing/suit/armor/vest{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/clothing/head/helmet/sec{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet/sec, -/obj/item/clothing/head/helmet/sec{ - pixel_x = 3; - pixel_y = -3 - }, /obj/structure/sign/poster/official/random/directional/east, /obj/effect/turf_decal/tile/red/fourcorners, +/obj/effect/spawner/random/armory/bulletproof_armor, +/obj/effect/spawner/random/armory/bulletproof_helmet, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "oSg" = ( @@ -63108,14 +63013,8 @@ "qsN" = ( /obj/effect/turf_decal/bot, /obj/structure/rack, -/obj/item/gun/energy/e_gun, -/obj/item/gun/energy/e_gun{ - pixel_y = 3 - }, -/obj/item/gun/energy/e_gun{ - pixel_y = 6 - }, /obj/effect/turf_decal/tile/red/fourcorners, +/obj/effect/spawner/random/armory/e_gun, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "qsP" = ( diff --git a/_maps/map_files/tramstation/tramstation.dmm b/_maps/map_files/tramstation/tramstation.dmm index 59e44eccda5..34c837499b4 100644 --- a/_maps/map_files/tramstation/tramstation.dmm +++ b/_maps/map_files/tramstation/tramstation.dmm @@ -5281,16 +5281,8 @@ /area/station/security/prison) "aFA" = ( /obj/structure/table, -/obj/item/storage/box/rubbershot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/storage/box/rubbershot, -/obj/item/storage/box/rubbershot{ - pixel_x = 3; - pixel_y = -3 - }, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/effect/spawner/random/armory/rubbershot, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "aFP" = ( @@ -10045,17 +10037,9 @@ /area/station/science/lobby) "caF" = ( /obj/structure/rack, -/obj/item/gun/energy/disabler{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/energy/disabler, -/obj/item/gun/energy/disabler{ - pixel_x = 3; - pixel_y = -3 - }, /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/south, +/obj/effect/spawner/random/armory/disablers, /turf/open/floor/iron, /area/station/ai_monitored/security/armory) "caP" = ( @@ -26228,17 +26212,9 @@ /area/station/command/meeting_room) "imB" = ( /obj/structure/rack, -/obj/item/gun/ballistic/shotgun/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/ballistic/shotgun/riot, -/obj/item/gun/ballistic/shotgun/riot{ - pixel_x = 3; - pixel_y = -3 - }, /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/south, +/obj/effect/spawner/random/armory/shotgun, /turf/open/floor/iron, /area/station/ai_monitored/security/armory) "ina" = ( @@ -26973,21 +26949,13 @@ /area/station/asteroid) "iAU" = ( /obj/structure/rack, -/obj/item/gun/energy/laser{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/energy/laser, -/obj/item/gun/energy/laser{ - pixel_x = 3; - pixel_y = -3 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/cable, +/obj/effect/spawner/random/armory/laser_gun, /turf/open/floor/iron, /area/station/ai_monitored/security/armory) "iBa" = ( @@ -42874,30 +42842,10 @@ /area/station/service/library) "olh" = ( /obj/structure/rack, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/bulletproof, -/obj/item/clothing/suit/armor/bulletproof{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001; - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001 - }, -/obj/item/clothing/head/helmet/alt{ - layer = 3.00001; - pixel_x = 3; - pixel_y = -3 - }, /obj/machinery/light/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/effect/spawner/random/armory/bulletproof_armor, +/obj/effect/spawner/random/armory/bulletproof_helmet, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "olw" = ( @@ -44043,15 +43991,6 @@ /area/station/ai_monitored/turret_protected/aisat_interior) "oMM" = ( /obj/structure/rack, -/obj/item/gun/energy/e_gun{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/gun/energy/e_gun, -/obj/item/gun/energy/e_gun{ - pixel_x = 3; - pixel_y = -3 - }, /obj/machinery/camera/directional/north{ c_tag = "Security - Armory"; network = list("ss13","Security") @@ -44059,6 +43998,7 @@ /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/cable, +/obj/effect/spawner/random/armory/e_gun, /turf/open/floor/iron, /area/station/ai_monitored/security/armory) "oMU" = ( @@ -49149,34 +49089,10 @@ /area/station/solars/port) "qEM" = ( /obj/structure/rack, -/obj/item/clothing/suit/armor/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/suit/armor/riot, -/obj/item/clothing/suit/armor/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/clothing/head/helmet/toggleable/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/clothing/head/helmet/toggleable/riot, -/obj/item/clothing/head/helmet/toggleable/riot{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/shield/riot{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/shield/riot, -/obj/item/shield/riot{ - pixel_x = 3; - pixel_y = -3 - }, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/effect/spawner/random/armory/riot_armor, +/obj/effect/spawner/random/armory/riot_helmet, +/obj/effect/spawner/random/armory/riot_shield, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "qFf" = ( @@ -53006,14 +52922,8 @@ /area/station/service/hydroponics) "sab" = ( /obj/structure/table, -/obj/item/grenade/barrier{ - pixel_x = 4 - }, -/obj/item/grenade/barrier, -/obj/item/grenade/barrier{ - pixel_x = -4 - }, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/effect/spawner/random/armory/barrier_grenades, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "saj" = ( diff --git a/code/game/objects/effects/spawners/random/armory.dm b/code/game/objects/effects/spawners/random/armory.dm new file mode 100644 index 00000000000..5292ca6ad09 --- /dev/null +++ b/code/game/objects/effects/spawners/random/armory.dm @@ -0,0 +1,67 @@ +/obj/effect/spawner/random/armory + name = "generic armory spawner" + spawn_loot_split = TRUE + spawn_loot_count = 3 + spawn_loot_split_pixel_offsets = 4 + +// Misc armory stuff +/obj/effect/spawner/random/armory/barrier_grenades + name = "barrier grenade spawner" + icon_state = "barrier_grenade" + loot = list(/obj/item/grenade/barrier) + +/obj/effect/spawner/random/armory/barrier_grenades/six + name = "six barrier grenade spawner" + spawn_loot_count = 6 + +/obj/effect/spawner/random/armory/riot_shield + name = "riot shield spawner" + icon_state = "riot_shield" + loot = list(/obj/item/shield/riot) + +/obj/effect/spawner/random/armory/rubbershot + name = "rubbershot spawner" + icon_state = "rubbershot" + loot = list(/obj/item/storage/box/rubbershot) + +// Weapons +/obj/effect/spawner/random/armory/disablers + name = "disabler spawner" + icon_state = "disabler" + loot = list(/obj/item/gun/energy/disabler) + +/obj/effect/spawner/random/armory/laser_gun + name = "laser gun spawner" + icon_state = "laser_gun" + loot = list(/obj/item/gun/energy/laser) + +/obj/effect/spawner/random/armory/e_gun + name = "energy gun spawner" + icon_state = "e_gun" + loot = list(/obj/item/gun/energy/e_gun) + +/obj/effect/spawner/random/armory/shotgun + name = "shotgun spawner" + icon_state = "shotgun" + loot = list(/obj/item/gun/ballistic/shotgun/riot) + +// Armor +/obj/effect/spawner/random/armory/bulletproof_helmet + name = "bulletproof helmet spawner" + icon_state = "armor_helmet" + loot = list(/obj/item/clothing/head/helmet/alt) + +/obj/effect/spawner/random/armory/riot_helmet + name = "riot helmet spawner" + icon_state = "riot_helmet" + loot = list(/obj/item/clothing/head/helmet/toggleable/riot) + +/obj/effect/spawner/random/armory/bulletproof_armor + name = "bulletproof armor spawner" + icon_state = "bulletproof_armor" + loot = list(/obj/item/clothing/suit/armor/bulletproof) + +/obj/effect/spawner/random/armory/riot_armor + name = "riot armor spawner" + icon_state = "riot_armor" + loot = list(/obj/item/clothing/suit/armor/riot) diff --git a/code/game/objects/effects/spawners/random/random.dm b/code/game/objects/effects/spawners/random/random.dm index c17a7a45d48..e8653a30cfb 100644 --- a/code/game/objects/effects/spawners/random/random.dm +++ b/code/game/objects/effects/spawners/random/random.dm @@ -19,6 +19,8 @@ var/spawn_loot_double = TRUE /// Whether the items should be distributed to offsets 0,1,-1,2,-2,3,-3.. This overrides pixel_x/y on the spawner itself var/spawn_loot_split = FALSE + /// The pixel x/y divider offsets for spawn_loot_split (spaced 1 pixel apart by default) + var/spawn_loot_split_pixel_offsets = 2 /// Whether the spawner should spawn all the loot in the list var/spawn_all_loot = FALSE /// The chance for the spawner to create loot (ignores spawn_loot_count) @@ -52,6 +54,7 @@ if(loot?.len) var/loot_spawned = 0 + var/pixel_divider = FLOOR(16 / spawn_loot_split_pixel_offsets, 1) // 16 pixels offsets is max that should be allowed in any direction while((spawn_loot_count-loot_spawned) && loot.len) var/lootspawn = pick_weight_recursive(loot) if(!spawn_loot_double) @@ -74,7 +77,9 @@ spawned_loot.pixel_y = rand(-16, 16) else if (spawn_loot_split) if (loot_spawned) - spawned_loot.pixel_x = spawned_loot.pixel_y = ((!(loot_spawned%2)*loot_spawned/2)*-1)+((loot_spawned%2)*(loot_spawned+1)/2*1) + var/column = FLOOR(loot_spawned / pixel_divider, 1) + spawned_loot.pixel_x = spawn_loot_split_pixel_offsets * (loot_spawned % pixel_divider) + (column * spawn_loot_split_pixel_offsets) + spawned_loot.pixel_y = spawn_loot_split_pixel_offsets * (loot_spawned % pixel_divider) loot_spawned++ /** diff --git a/icons/effects/random_spawners.dmi b/icons/effects/random_spawners.dmi index 0e2dad78d74..4db2ae9d6cb 100644 Binary files a/icons/effects/random_spawners.dmi and b/icons/effects/random_spawners.dmi differ diff --git a/tgstation.dme b/tgstation.dme index 27a8d05975a..63e5121df2a 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -1816,6 +1816,7 @@ #include "code\game\objects\effects\spawners\structure.dm" #include "code\game\objects\effects\spawners\xeno_egg_delivery.dm" #include "code\game\objects\effects\spawners\random\ai_module.dm" +#include "code\game\objects\effects\spawners\random\armory.dm" #include "code\game\objects\effects\spawners\random\bureaucracy.dm" #include "code\game\objects\effects\spawners\random\clothing.dm" #include "code\game\objects\effects\spawners\random\contraband.dm"