New Security Tools: Rainbow 6 Edition: Unfucked Edition (#7396)

* Adds all the necessary code for breaching rounds

* Adds breaching slug boxes to maps

* Adds Breaching Tool to code and maps

* new slug design (blunt nose)

credit to Identification

* no more poop shells

* Update YogsDelta.dmm

* Update code/game/objects/items/storage/boxes.dm

Co-Authored-By: Nichlas Pihl <nichlas00100@gmail.com>

* Update code/modules/projectiles/ammunition/ballistic/shotgun.dm

Co-Authored-By: Nichlas Pihl <nichlas00100@gmail.com>

* Update code/modules/projectiles/guns/ballistic/shotgun.dm

Co-Authored-By: Nichlas Pihl <nichlas00100@gmail.com>

Co-authored-by: Nichlas Pihl <nichlas00100@gmail.com>
This commit is contained in:
Nickvr628
2019-12-29 09:55:38 -05:00
committed by Nichlas Pihl
parent f183c9eba0
commit bddbfeecdf
14 changed files with 121 additions and 52 deletions

View File

@@ -217,13 +217,13 @@
},
/obj/effect/turf_decal/bot_red,
/obj/structure/rack,
/obj/item/storage/box/teargas{
pixel_x = -3;
pixel_y = 3
},
/obj/structure/window/reinforced{
dir = 8
},
/obj/item/storage/box/breacherslug,
/obj/item/storage/box/breacherslug,
/obj/item/gun/ballistic/shotgun/automatic/breaching,
/obj/item/gun/ballistic/shotgun/automatic/breaching,
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
"aaA" = (
@@ -240,6 +240,7 @@
/obj/structure/window/reinforced{
dir = 8
},
/obj/item/gun/ballistic/shotgun/riot,
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
"aaB" = (
@@ -15061,6 +15062,10 @@
pixel_y = -3
},
/obj/item/storage/box/handcuffs,
/obj/item/storage/box/teargas{
pixel_x = -3;
pixel_y = 3
},
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
"aDK" = (

View File

@@ -44035,24 +44035,36 @@
/turf/open/floor/plasteel,
/area/hydroponics)
"bpA" = (
/obj/structure/cable/white,
/obj/machinery/camera{
c_tag = "Armory - Interior";
dir = 1
/obj/item/grenade/barrier{
pixel_x = -3;
pixel_y = 1
},
/obj/effect/turf_decal/stripes/line{
dir = 4
/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/gun/energy/e_gun/dragnet,
/obj/item/gun/energy/e_gun/dragnet,
/obj/machinery/power/apc{
areastring = "/area/ai_monitored/security/armory";
dir = 2;
name = "Armoury APC";
pixel_y = -26
/obj/item/radio/intercom{
pixel_y = 26
},
/turf/open/floor/plasteel,
/obj/effect/turf_decal/tile/neutral{
dir = 1
},
/obj/effect/turf_decal/tile/neutral,
/obj/effect/turf_decal/tile/neutral{
dir = 4
},
/obj/effect/turf_decal/tile/neutral{
dir = 8
},
/obj/item/gun/energy/e_gun/dragnet,
/obj/item/gun/energy/e_gun/dragnet,
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
"bpB" = (
/obj/machinery/door/airlock/public/glass{
@@ -60953,34 +60965,26 @@
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
"bNq" = (
/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{
pixel_y = 26
},
/obj/effect/turf_decal/tile/neutral{
/obj/structure/cable/white,
/obj/machinery/camera{
c_tag = "Armory - Interior";
dir = 1
},
/obj/effect/turf_decal/tile/neutral,
/obj/effect/turf_decal/tile/neutral{
/obj/effect/turf_decal/stripes/line{
dir = 4
},
/obj/effect/turf_decal/tile/neutral{
dir = 8
/obj/structure/table/reinforced,
/obj/machinery/power/apc{
areastring = "/area/ai_monitored/security/armory";
dir = 2;
name = "Armoury APC";
pixel_y = -26
},
/turf/open/floor/plasteel/dark,
/obj/item/storage/box/breacherslug,
/obj/item/storage/box/breacherslug,
/obj/item/gun/ballistic/shotgun/automatic/breaching,
/obj/item/gun/ballistic/shotgun/automatic/breaching,
/turf/open/floor/plasteel,
/area/ai_monitored/security/armory)
"bNr" = (
/obj/item/storage/box/chemimp{
@@ -183633,7 +183637,7 @@ bFQ
bHJ
bJD
bLs
bNq
bpA
bPx
bRt
bRt
@@ -184154,7 +184158,7 @@ bRv
bRv
bXQ
bZX
bpA
bNq
bLs
cfq
chf

View File

@@ -5597,6 +5597,8 @@
pixel_x = 3;
pixel_y = -3
},
/obj/item/gun/energy/e_gun/dragnet,
/obj/item/gun/energy/e_gun/dragnet,
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
"akM" = (
@@ -29831,8 +29833,10 @@
/area/solar/starboard)
"bcW" = (
/obj/structure/rack,
/obj/item/gun/energy/e_gun/dragnet,
/obj/item/gun/energy/e_gun/dragnet,
/obj/item/storage/box/breacherslug,
/obj/item/storage/box/breacherslug,
/obj/item/gun/ballistic/shotgun/automatic/breaching,
/obj/item/gun/ballistic/shotgun/automatic/breaching,
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
"bcX" = (

View File

@@ -8026,6 +8026,8 @@
pixel_y = -2
},
/obj/effect/turf_decal/bot,
/obj/item/storage/box/firingpins,
/obj/item/storage/box/firingpins,
/turf/open/floor/plasteel,
/area/security/warden)
"anp" = (
@@ -8042,12 +8044,11 @@
/area/crew_quarters/fitness/recreation)
"anq" = (
/obj/structure/rack,
/obj/item/storage/box/firingpins{
pixel_x = 3;
pixel_y = 3
},
/obj/item/storage/box/firingpins,
/obj/effect/turf_decal/bot,
/obj/item/storage/box/breacherslug,
/obj/item/storage/box/breacherslug,
/obj/item/gun/ballistic/shotgun/automatic/breaching,
/obj/item/gun/ballistic/shotgun/automatic/breaching,
/turf/open/floor/plasteel,
/area/security/warden)
"anr" = (

View File

@@ -797,6 +797,16 @@
for(var/i in 1 to 7)
new /obj/item/ammo_casing/shotgun/buckshot(src)
/obj/item/storage/box/breacherslug
name = "box of breaching shotgun shells"
desc = "A box full of breaching slugs, designed for rapid entry."
icon_state = "breachershot_box"
illustration = null
/obj/item/storage/box/breacherslug/PopulateContents()
for(var/i in 1 to 7)
new /obj/item/ammo_casing/shotgun/breacher(src)
/obj/item/storage/box/beanbag
name = "box of beanbags"
desc = "A box full of beanbag shells."

View File

@@ -137,3 +137,10 @@
reagents.add_reagent(/datum/reagent/toxin/mutetoxin, 6) //;HELP OPS IN MAINT
reagents.add_reagent(/datum/reagent/toxin/coniine, 6)
reagents.add_reagent(/datum/reagent/toxin/sodium_thiopental, 6)
/obj/item/ammo_casing/shotgun/breacher
name = "breaching slug"
desc = "A 12 gauge anti-material slug. Great for breaching airlocks and windows with minimal shots."
icon_state = "breacher"
projectile_type = /obj/item/projectile/bullet/shotgun_breaching
materials = list(MAT_METAL=4000)

View File

@@ -36,3 +36,8 @@
name = "riot shotgun internal magazine"
ammo_type = /obj/item/ammo_casing/shotgun/rubbershot
max_ammo = 6
/obj/item/ammo_box/magazine/internal/shot/breaching
name = "breaching shotgun internal magazine"
ammo_type = /obj/item/ammo_casing/shotgun/breacher
max_ammo = 3

View File

@@ -40,6 +40,17 @@
sawn_desc = "Come with me if you want to live."
can_be_sawn_off = TRUE
// Breaching Shotgun //
/obj/item/gun/ballistic/shotgun/automatic/breaching
name = "tactical breaching shotgun"
desc = "A compact semi-auto shotgun designed to fire breaching slugs and create rapid entry points."
icon_state = "breachingshotgun"
mag_type = /obj/item/ammo_box/magazine/internal/shot/breaching
w_class = WEIGHT_CLASS_NORMAL //compact so it fits in backpacks
can_be_sawn_off = FALSE
// Automatic Shotguns//
/obj/item/gun/ballistic/shotgun/automatic/shoot_live_shot(mob/living/user as mob|obj)
@@ -212,4 +223,3 @@
sawn_off = TRUE
slot_flags = ITEM_SLOT_BELT
can_bayonet = FALSE

View File

@@ -92,3 +92,16 @@
/obj/item/projectile/bullet/scattershot
damage = 24
//Breaching Ammo
/obj/item/projectile/bullet/shotgun_breaching
name = "12g breaching round"
desc = "A breaching round designed to destroy airlocks and windows with only a few shots, but is ineffective against other targets."
hitsound = 'sound/weapons/sonic_jackhammer.ogg'
damage = 10 //does shit damage to everything except doors and windows
/obj/item/projectile/bullet/shotgun_breaching/on_hit(atom/target)
if(istype(target, /obj/structure/window) || istype(target, /obj/machinery/door) || istype(target, /obj/structure/door_assembly))
damage = 500 //one shot to break a window or 3 shots to breach an airlock door
..()

View File

@@ -74,6 +74,16 @@
category = list("Ammo")
departmental_flags = DEPARTMENTAL_FLAG_SECURITY
/datum/design/breaching_slug/sec
name = "Breaching Slug"
desc = "A 12 gauge anti-material slug. Great for breaching airlocks and windows with minimal shots."
id = "sec_Brslug"
build_type = PROTOLATHE
materials = list(MAT_METAL = 4000)
build_path = /obj/item/ammo_casing/shotgun/breacher
category = list("Ammo")
departmental_flags = DEPARTMENTAL_FLAG_SECURITY
/datum/design/pin_testing
name = "Test-Range Firing Pin"
desc = "This safety firing pin allows firearms to be operated within proximity to a firing range."

View File

@@ -9,7 +9,7 @@
// Default research tech, prevents bricking
design_ids = list("basic_matter_bin", "basic_cell", "basic_scanning", "basic_capacitor", "basic_micro_laser", "micro_mani", "desttagger", "handlabel", "packagewrap",
"destructive_analyzer", "circuit_imprinter", "experimentor", "rdconsole", "design_disk", "tech_disk", "rdserver", "rdservercontrol", "mechfab", "paystand",
"space_heater", "beaker", "large_beaker", "bucket", "xlarge_beaker", "sec_rshot", "sec_beanbag_slug", "sec_bshot", "sec_slug", "sec_Islug", "sec_dart", "sec_38",
"space_heater", "beaker", "large_beaker", "bucket", "xlarge_beaker", "sec_rshot", "sec_beanbag_slug", "sec_bshot", "sec_slug", "sec_Islug", "sec_Brslug", "sec_dart", "sec_38",
"rglass","plasteel","plastitanium","plasmaglass","plasmareinforcedglass","titaniumglass","plastitaniumglass","wallframe/flasher")
/datum/techweb_node/mmi

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 63 KiB