From 1befa092beeec5f0cdbd042cf3e75536d2370bb8 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Mon, 26 Aug 2019 03:21:45 -0400 Subject: [PATCH] Adds Sandbags Reworks Security Barricades --- _maps/map_files/Delta/delta.dmm | 8 +- .../MetaStation/MetaStation.v41A.II.dmm | 8 +- _maps/map_files/cyberiad/cyberiad.dmm | 8 +- code/datums/supplypacks.dm | 8 +- code/game/machinery/deployable.dm | 451 ++++++++---------- code/game/objects/items/stacks/medical.dm | 13 + .../objects/items/stacks/sheets/mineral.dm | 38 ++ .../items/stacks/sheets/sheet_types.dm | 1 + .../objects/items/weapons/storage/boxes.dm | 9 + code/game/objects/structures/bedsheet_bin.dm | 9 + code/modules/mining/mine_items.dm | 4 +- icons/obj/items.dmi | Bin 146432 -> 146701 bytes icons/obj/smooth_structures/sandbags.dmi | Bin 0 -> 993 bytes icons/obj/structures.dmi | Bin 160190 -> 165462 bytes 14 files changed, 298 insertions(+), 259 deletions(-) create mode 100644 icons/obj/smooth_structures/sandbags.dmi diff --git a/_maps/map_files/Delta/delta.dmm b/_maps/map_files/Delta/delta.dmm index fb8cbaf4304..37231b29651 100644 --- a/_maps/map_files/Delta/delta.dmm +++ b/_maps/map_files/Delta/delta.dmm @@ -49652,8 +49652,8 @@ /obj/item/radio/intercom{ pixel_y = 28 }, -/obj/machinery/deployable/barrier, -/obj/machinery/deployable/barrier, +/obj/item/grenade/barrier, +/obj/item/grenade/barrier, /turf/simulated/floor/plasteel{ icon_state = "vault"; dir = 8 @@ -49673,8 +49673,8 @@ }, /area/security/armoury) "bLK" = ( -/obj/machinery/deployable/barrier, -/obj/machinery/deployable/barrier, +/obj/item/grenade/barrier, +/obj/item/grenade/barrier, /turf/simulated/floor/plasteel{ icon_state = "vault"; dir = 8 diff --git a/_maps/map_files/MetaStation/MetaStation.v41A.II.dmm b/_maps/map_files/MetaStation/MetaStation.v41A.II.dmm index 5c09a328037..ccfadc2ab79 100644 --- a/_maps/map_files/MetaStation/MetaStation.v41A.II.dmm +++ b/_maps/map_files/MetaStation/MetaStation.v41A.II.dmm @@ -4795,10 +4795,10 @@ /obj/structure/reagent_dispensers/peppertank{ pixel_y = 29 }, -/obj/machinery/deployable/barrier, -/obj/machinery/deployable/barrier, -/obj/machinery/deployable/barrier, -/obj/machinery/deployable/barrier, +/obj/item/grenade/barrier, +/obj/item/grenade/barrier, +/obj/item/grenade/barrier, +/obj/item/grenade/barrier, /turf/simulated/floor/plasteel{ tag = "icon-vault (WEST)"; icon_state = "vault"; diff --git a/_maps/map_files/cyberiad/cyberiad.dmm b/_maps/map_files/cyberiad/cyberiad.dmm index 661dca15a0e..400641b2631 100644 --- a/_maps/map_files/cyberiad/cyberiad.dmm +++ b/_maps/map_files/cyberiad/cyberiad.dmm @@ -4055,7 +4055,7 @@ /turf/simulated/floor/plasteel, /area/security/armoury) "ahH" = ( -/obj/machinery/deployable/barrier, +/obj/item/grenade/barrier, /obj/structure/window/reinforced{ dir = 8 }, @@ -4155,7 +4155,7 @@ }, /area/security/brig) "ahR" = ( -/obj/machinery/deployable/barrier, +/obj/item/grenade/barrier, /obj/structure/window/reinforced{ dir = 4 }, @@ -4324,7 +4324,7 @@ }, /area/security/brig) "aif" = ( -/obj/machinery/deployable/barrier, +/obj/item/grenade/barrier, /obj/structure/window/reinforced{ dir = 8 }, @@ -4370,7 +4370,7 @@ }, /area/security/brig) "aij" = ( -/obj/machinery/deployable/barrier, +/obj/item/grenade/barrier, /obj/structure/window/reinforced{ dir = 4 }, diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm index 9345387e304..b540ef16be9 100644 --- a/code/datums/supplypacks.dm +++ b/code/datums/supplypacks.dm @@ -482,10 +482,10 @@ var/list/all_supply_groups = list(supply_emergency,supply_security,supply_engine /datum/supply_packs/security/securitybarriers name = "Security Barriers Crate" - contains = list(/obj/machinery/deployable/barrier, - /obj/machinery/deployable/barrier, - /obj/machinery/deployable/barrier, - /obj/machinery/deployable/barrier) + contains = list(/obj/item/grenade/barrier, + /obj/item/grenade/barrier, + /obj/item/grenade/barrier, + /obj/item/grenade/barrier) cost = 20 containername = "security barriers crate" diff --git a/code/game/machinery/deployable.dm b/code/game/machinery/deployable.dm index e0fb65787cd..af90fad77bf 100644 --- a/code/game/machinery/deployable.dm +++ b/code/game/machinery/deployable.dm @@ -1,144 +1,231 @@ -/* -CONTAINS: +#define SINGLE "single" +#define VERTICAL "vertical" +#define HORIZONTAL "horizontal" -Deployable items -Barricades +#define METAL 1 +#define WOOD 2 +#define SAND 3 -for reference: +//Barricades/cover - access_security = 1 - access_brig = 2 - access_armory = 3 - access_forensics_lockers= 4 - access_medical = 5 - access_morgue = 6 - access_tox = 7 - access_tox_storage = 8 - access_genetics = 9 - access_engine = 10 - access_engine_equip= 11 - access_maint_tunnels = 12 - access_external_airlocks = 13 - access_emergency_storage = 14 - access_change_ids = 15 - access_ai_upload = 16 - access_teleporter = 17 - access_eva = 18 - access_heads = 19 - access_captain = 20 - access_all_personal_lockers = 21 - access_chapel_office = 22 - access_tech_storage = 23 - access_atmospherics = 24 - access_bar = 25 - access_janitor = 26 - access_crematorium = 27 - access_kitchen = 28 - access_robotics = 29 - access_rd = 30 - access_cargo = 31 - access_construction = 32 - access_chemistry = 33 - access_cargo_bot = 34 - access_hydroponics = 35 - access_manufacturing = 36 - access_library = 37 - access_lawyer = 38 - access_virology = 39 - access_cmo = 40 - access_qm = 41 - access_court = 42 - access_clown = 43 - access_mime = 44 - -*/ - - -//Barricades, maybe there will be a metal one later... /obj/structure/barricade - anchored = 1.0 - density = 1.0 - var/health = 100.0 - var/maxhealth = 100.0 + name = "chest high wall" + desc = "Looks like this would make good cover." + anchored = TRUE + density = TRUE + max_integrity = 100 + var/proj_pass_rate = 50 //How many projectiles will pass the cover. Lower means stronger cover + var/bar_material = METAL + var/drop_amount = 3 var/stacktype = /obj/item/stack/sheet/metal -/obj/structure/barricade/attackby(obj/item/W as obj, mob/user as mob, params) - if(istype(W, stacktype)) - if(src.health < src.maxhealth) - visible_message("[user] begins to repair the [src]!") - if(do_after(user, 20 * W.toolspeed, target = src)) - src.health = src.maxhealth - W:use(1) - visible_message("[user] repairs the [src]!") - return - else - return - return - else if(istype(W, /obj/item/crowbar)) - user.changeNext_move(CLICK_CD_MELEE) - user.visible_message("[user] is prying apart \the [src].", "You begin to pry apart \the [src].") - playsound(src, W.usesound, 200, 1) +/obj/structure/barricade/blob_act(obj/structure/blob/B) //TO-DO-OBJECT-DAMAGE: Kill off when everything is damageable + take_damage(400, BRUTE, "melee", 0, get_dir(src, B)) - if(do_after(user, 300 * W.toolspeed, target = src) && !QDELETED(src)) - user.visible_message("[user] pries apart \the [src].", "You pry apart \the [src].") - dismantle() +/obj/structure/barricade/ex_act(severity) //TO-DO-OBJECT-DAMAGE: Kill off when everything is damageable + if(resistance_flags & INDESTRUCTIBLE) return - else - switch(W.damtype) - if("fire") - src.health -= W.force * 1 - if("brute") - src.health -= W.force * 0.75 - else - if(src.health <= 0) - visible_message("\The [src] is smashed apart!") - dismantle() - ..() - -/obj/structure/barricade/ex_act(severity) switch(severity) - if(1.0) - visible_message("\The [src] is blown apart!") + if(1) + obj_integrity = 0 qdel(src) - return - if(2.0) - src.health -= 25 - if(src.health <= 0) - visible_message("\The [src] is blown apart!") - dismantle() - return + if(2) + take_damage(rand(100, 250), BRUTE, "bomb", 0) + if(3) + take_damage(rand(10, 90), BRUTE, "bomb", 0) -/obj/structure/barricade/blob_act() - src.health -= 25 - if(src.health <= 0) - visible_message("The blob eats through \the [src]!") - qdel(src) - return - -/obj/structure/barricade/CanPass(atom/movable/mover, turf/target, height=0)//So bullets will fly over and stuff. - if(height==0) - return 1 - if(istype(mover) && mover.checkpass(PASSTABLE)) - return 1 +/obj/structure/barricade/mech_melee_attack(obj/mecha/M) //TO-DO-OBJECT-DAMAGE: Kill off when everything is damageable + M.do_attack_animation(src) + var/play_soundeffect = 0 + var/mech_damtype = M.damtype + if(M.selected) + mech_damtype = M.selected.damtype + play_soundeffect = 1 else - return 0 + switch(M.damtype) + if(BRUTE) + playsound(src, 'sound/weapons/punch4.ogg', 50, 1) + if(BURN) + playsound(src, 'sound/items/welder.ogg', 50, 1) + if(TOX) + playsound(src, 'sound/effects/spray2.ogg', 50, 1) + return 0 + else + return 0 + visible_message("[M.name] has hit [src].") + return take_damage(M.force*3, mech_damtype, "melee", play_soundeffect, get_dir(src, M)) // multiplied by 3 so we can hit objs hard but not be overpowered against mobs. -/obj/structure/barricade/proc/dismantle() - if(stacktype) - new stacktype(get_turf(src)) - new stacktype(get_turf(src)) - new stacktype(get_turf(src)) +/obj/structure/barricade/deconstruct(disassembled = TRUE) + make_debris() qdel(src) +/obj/structure/barricade/proc/make_debris() + if(stacktype) + new stacktype(get_turf(src), drop_amount) + +/obj/structure/barricade/attackby(obj/item/I, mob/user, params) + if(iswelder(I) && user.a_intent != INTENT_HARM && bar_material == METAL) + var/obj/item/weldingtool/WT = I + if(obj_integrity < max_integrity) + if(WT.remove_fuel(0, user)) + to_chat(user, "You begin repairing [src]...") + playsound(loc, WT.usesound, 40, 1) + if(do_after(user, 40 * I.toolspeed, target = src)) + obj_integrity = Clamp(obj_integrity + 20, 0, max_integrity) + else + return ..() + +/obj/structure/barricade/CanPass(atom/movable/mover, turf/target)//So bullets will fly over and stuff. + if(locate(/obj/structure/barricade) in get_turf(mover)) + return TRUE + else if(istype(mover, /obj/item/projectile)) + if(!anchored) + return TRUE + var/obj/item/projectile/proj = mover + if(proj.firer && Adjacent(proj.firer)) + return TRUE + if(prob(proj_pass_rate)) + return TRUE + return FALSE + else + return !density + + + +/////BARRICADE TYPES/////// + /obj/structure/barricade/wooden name = "wooden barricade" desc = "This space is blocked off by a wooden barricade." icon = 'icons/obj/structures.dmi' icon_state = "woodenbarricade" + bar_material = WOOD stacktype = /obj/item/stack/sheet/wood burn_state = FLAMMABLE burntime = 25 +/obj/structure/barricade/wooden/attackby(obj/item/I, mob/user) + if(istype(I,/obj/item/stack/sheet/wood)) + var/obj/item/stack/sheet/wood/W = I + if(W.amount < 5) + to_chat(user, "You need at least five wooden planks to make a wall!") + return + else + to_chat(user, "You start adding [I] to [src]...") + if(do_after(user, 50, target = src)) + W.use(5) + new /turf/simulated/wall/mineral/wood(get_turf(src)) + qdel(src) + return + return ..() + +/obj/structure/barricade/wooden/crude + name = "crude plank barricade" + desc = "This space is blocked off by a crude assortment of planks." + icon_state = "woodenbarricade-old" + drop_amount = 1 + max_integrity = 50 + proj_pass_rate = 65 + +/obj/structure/barricade/wooden/crude/snow + desc = "This space is blocked off by a crude assortment of planks. It seems to be covered in a layer of snow." + icon_state = "woodenbarricade-snow-old" + max_integrity = 75 + +/obj/structure/barricade/sandbags + name = "sandbags" + desc = "Bags of sand. Self explanatory." + icon = 'icons/obj/smooth_structures/sandbags.dmi' + icon_state = "sandbags" + max_integrity = 280 + proj_pass_rate = 20 + pass_flags = LETPASSTHROW + bar_material = SAND + climbable = TRUE + smooth = SMOOTH_TRUE + canSmoothWith = list(/obj/structure/barricade/sandbags, /turf/simulated/wall, /turf/simulated/wall/r_wall, /obj/structure/falsewall, /obj/structure/falsewall/reinforced, /turf/simulated/wall/rust, /turf/simulated/wall/r_wall/rust, /obj/structure/barricade/security) + stacktype = null + +/obj/structure/barricade/security + name = "security barrier" + desc = "A deployable barrier. Provides good cover in fire fights." + icon = 'icons/obj/objects.dmi' + icon_state = "barrier0" + density = FALSE + anchored = FALSE + max_integrity = 180 + proj_pass_rate = 20 + armor = list(melee = 10, bullet = 50, laser = 50, energy = 50, bomb = 10, bio = 100, rad = 100) + stacktype = null + var/deploy_time = 40 + var/deploy_message = TRUE + +/obj/structure/barricade/security/New() + ..() + addtimer(CALLBACK(src, .proc/deploy), deploy_time) + +/obj/structure/barricade/security/proc/deploy() + icon_state = "barrier1" + density = TRUE + anchored = TRUE + if(deploy_message) + visible_message("[src] deploys!") + + +/obj/item/grenade/barrier + name = "barrier grenade" + desc = "Instant cover." + icon = 'icons/obj/grenade.dmi' + icon_state = "flashbang" + item_state = "flashbang" + actions_types = list(/datum/action/item_action/toggle_barrier_spread) + var/mode = SINGLE + +/obj/item/grenade/barrier/examine(mob/user) + . = ..() + to_chat(user, "Alt-click to toggle modes.") + +/obj/item/grenade/barrier/AltClick(mob/living/carbon/user) + if(!istype(user) || !user.Adjacent(src) || user.incapacitated()) + return + toggle_mode(user) + +/obj/item/grenade/barrier/proc/toggle_mode(mob/user) + switch(mode) + if(SINGLE) + mode = VERTICAL + if(VERTICAL) + mode = HORIZONTAL + if(HORIZONTAL) + mode = SINGLE + + to_chat(user, "[src] is now in [mode] mode.") + +/obj/item/grenade/barrier/prime() + new /obj/structure/barricade/security(get_turf(loc)) + switch(mode) + if(VERTICAL) + var/target_turf = get_step(src, NORTH) + if(!(is_blocked_turf(target_turf))) + new /obj/structure/barricade/security(target_turf) + + var/target_turf2 = get_step(src, SOUTH) + if(!(is_blocked_turf(target_turf2))) + new /obj/structure/barricade/security(target_turf2) + if(HORIZONTAL) + var/target_turf = get_step(src, EAST) + if(!(is_blocked_turf(target_turf))) + new /obj/structure/barricade/security(target_turf) + + var/target_turf2 = get_step(src, WEST) + if(!(is_blocked_turf(target_turf2))) + new /obj/structure/barricade/security(target_turf2) + qdel(src) + +/obj/item/grenade/barrier/ui_action_click(mob/user) + toggle_mode(user) + + /obj/structure/barricade/mime name = "floor" desc = "Is... this a floor?" @@ -149,128 +236,10 @@ for reference: /obj/structure/barricade/mime/mrcd stacktype = null -//Actual Deployable machinery stuff +#undef SINGLE +#undef VERTICAL +#undef HORIZONTAL -/obj/machinery/deployable - name = "deployable" - desc = "deployable" - icon = 'icons/obj/objects.dmi' - req_access = list(access_security)//I'm changing this until these are properly tested./N - -/obj/machinery/deployable/barrier - name = "deployable barrier" - desc = "A deployable barrier. Swipe your ID card to lock/unlock it." - icon = 'icons/obj/objects.dmi' - anchored = 0.0 - density = 1.0 - icon_state = "barrier0" - var/health = 100.0 - var/maxhealth = 100.0 - var/locked = 0.0 -// req_access = list(access_maint_tunnels) - -/obj/machinery/deployable/barrier/New() - ..() - - src.icon_state = "barrier[src.locked]" - -/obj/machinery/deployable/barrier/attackby(obj/item/W as obj, mob/user as mob, params) - if(istype(W, /obj/item/card/id)) - if(src.allowed(user)) - if(src.emagged < 2.0) - src.locked = !src.locked - src.anchored = !src.anchored - src.icon_state = "barrier[src.locked]" - if((src.locked == 1.0) && (src.emagged < 2.0)) - to_chat(user, "Barrier lock toggled on.") - return - else if((src.locked == 0.0) && (src.emagged < 2.0)) - to_chat(user, "Barrier lock toggled off.") - return - else - do_sparks(2, 1, src) - visible_message("BZZzZZzZZzZT") - return - return - else if(istype(W, /obj/item/wrench)) - if(src.health < src.maxhealth) - src.health = src.maxhealth - src.emagged = 0 - src.req_access = list(access_security) - visible_message("[user] repairs the [src]!") - return - else if(src.emagged > 0) - src.emagged = 0 - src.req_access = list(access_security) - visible_message("[user] repairs the [src]!") - return - return - else - switch(W.damtype) - if("fire") - src.health -= W.force * 0.75 - if("brute") - src.health -= W.force * 0.5 - else - if(src.health <= 0) - src.explode() - ..() - -/obj/machinery/deployable/barrier/emag_act(user as mob) - if(!emagged) - emagged = 1 - req_access = null - to_chat(user, "You break the ID authentication lock on the [src].") - do_sparks(2, 1, src) - visible_message("BZZzZZzZZzZT") - else if(src.emagged == 1) - src.emagged = 2 - to_chat(user, "You short out the anchoring mechanism on the [src].") - do_sparks(2, 1, src) - visible_message("BZZzZZzZZzZT") - -/obj/machinery/deployable/barrier/ex_act(severity) - switch(severity) - if(1.0) - src.explode() - return - if(2.0) - src.health -= 25 - if(src.health <= 0) - src.explode() - return - -/obj/machinery/deployable/barrier/emp_act(severity) - if(stat & (BROKEN|NOPOWER)) - return - if(prob(50/severity)) - locked = !locked - anchored = !anchored - icon_state = "barrier[src.locked]" - -/obj/machinery/deployable/barrier/blob_act() - src.health -= 25 - if(src.health <= 0) - src.explode() - return - -/obj/machinery/deployable/barrier/CanPass(atom/movable/mover, turf/target, height=0)//So bullets will fly over and stuff. - if(height==0) - return 1 - if(istype(mover) && mover.checkpass(PASSTABLE)) - return 1 - else - return 0 - -/obj/machinery/deployable/barrier/proc/explode() - visible_message("[src] blows apart!") - var/turf/Tsec = get_turf(src) - -/* var/obj/item/stack/rods/ =*/ - new /obj/item/stack/rods(Tsec) - - do_sparks(3, 1, src) - - explosion(src.loc,-1,-1,0) - if(src) - qdel(src) +#undef METAL +#undef WOOD +#undef SAND \ No newline at end of file diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm index 0e95f509463..5decbcb7126 100644 --- a/code/game/objects/items/stacks/medical.dm +++ b/code/game/objects/items/stacks/medical.dm @@ -123,6 +123,19 @@ origin_tech = "biotech=2" stop_bleeding = 1800 +/obj/item/stack/medical/bruise_pack/attackby(obj/item/I, mob/user, params) + if(I.sharp) + if(get_amount() < 2) + to_chat(user, "You need at least two gauzes to do this!") + return + new /obj/item/stack/sheet/cloth(user.drop_location()) + user.visible_message("[user] cuts [src] into pieces of cloth with [I].", \ + "You cut [src] into pieces of cloth with [I].", \ + "You hear cutting.") + use(2) + else + return ..() + /obj/item/stack/medical/bruise_pack/attack(mob/living/M, mob/user) if(..()) return 1 diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm index 8c60bcefa11..c9099d6d38b 100644 --- a/code/game/objects/items/stacks/sheets/mineral.dm +++ b/code/game/objects/items/stacks/sheets/mineral.dm @@ -137,6 +137,44 @@ var/global/list/datum/stack_recipe/snow_recipes = list( ..() recipes = sandstone_recipes +/* + * Sandbags + */ + +/obj/item/stack/sheet/mineral/sandbags + name = "sandbags" + icon_state = "sandbags" + singular_name = "sandbag" + layer = LOW_ITEM_LAYER + merge_type = /obj/item/stack/sheet/mineral/sandbags + +GLOBAL_LIST_INIT(sandbag_recipes, list ( \ + new/datum/stack_recipe("sandbags", /obj/structure/barricade/sandbags, 1, time = 25, one_per_turf = 1, on_floor = 1), \ + )) + +/obj/item/stack/sheet/mineral/sandbags/New() + recipes = GLOB.sandbag_recipes + ..() + +/obj/item/emptysandbag + name = "empty sandbag" + desc = "A bag to be filled with sand." + icon = 'icons/obj/items.dmi' + icon_state = "sandbag" + w_class = WEIGHT_CLASS_TINY + +/obj/item/emptysandbag/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/stack/ore/glass)) + var/obj/item/stack/ore/glass/G = I + to_chat(user, "You fill the sandbag.") + var/obj/item/stack/sheet/mineral/sandbags/S = new /obj/item/stack/sheet/mineral/sandbags(drop_location()) + qdel(src) + if(Adjacent(user) && !issilicon(user)) + user.put_in_hands(S) + G.use(1) + else + return ..() + /obj/item/stack/sheet/mineral/diamond name = "diamond" icon_state = "sheet-diamond" diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index f7df69cad2f..50b81717b5f 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -218,6 +218,7 @@ var/global/list/datum/stack_recipe/cloth_recipes = list ( \ null, \ new/datum/stack_recipe("rag", /obj/item/reagent_containers/glass/rag, 1), \ new/datum/stack_recipe("bedsheet", /obj/item/bedsheet, 3), \ + new/datum/stack_recipe("empty sandbag", /obj/item/emptysandbag, 4), \ null, \ new/datum/stack_recipe("fingerless gloves", /obj/item/clothing/gloves/fingerless, 1), \ new/datum/stack_recipe("black gloves", /obj/item/clothing/gloves/color/black, 3), \ diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index 6fb552654d9..d4e1ed2d7f1 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -1059,6 +1059,15 @@ desc = "A colorful cardboard box for the clown" icon_state = "box_clown" +/obj/item/storage/box/emptysandbags + name = "box of empty sandbags" + +/obj/item/storage/box/emptysandbags/New() + ..() + contents = list() + for(var/i in 1 to 7) + new /obj/item/emptysandbag(src) + /obj/item/storage/box/rndboards name = "the Liberator's legacy" desc = "A box containing a gift for worthy golems." diff --git a/code/game/objects/structures/bedsheet_bin.dm b/code/game/objects/structures/bedsheet_bin.dm index 43f45647985..d7900d82e38 100644 --- a/code/game/objects/structures/bedsheet_bin.dm +++ b/code/game/objects/structures/bedsheet_bin.dm @@ -34,6 +34,15 @@ LINEN BINS add_fingerprint(user) return +/obj/item/bedsheet/attackby(obj/item/I, mob/user, params) + if(I.sharp) + var/obj/item/stack/sheet/cloth/C = new (get_turf(src), 3) + transfer_fingerprints_to(C) + C.add_fingerprint(user) + qdel(src) + to_chat(user, "You tear [src] up.") + else + return ..() /obj/item/bedsheet/blue icon_state = "sheetblue" diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index f350633a4c2..b85db884ef5 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -44,8 +44,8 @@ /obj/structure/closet/secure_closet/miner/New() ..() -// new /obj/item/stack/sheet/mineral/sandbags(src, 5) -// new /obj/item/storage/box/emptysandbags(src) + new /obj/item/stack/sheet/mineral/sandbags(src, 5) + new /obj/item/storage/box/emptysandbags(src) new /obj/item/shovel(src) new /obj/item/pickaxe/mini(src) new /obj/item/radio/headset/headset_cargo/mining(src) diff --git a/icons/obj/items.dmi b/icons/obj/items.dmi index 23e4928792285c242466ff72ddf6d9220bbaaeb5..ec81f363f14a31c10b9b4182a45a4b1480e7b97e 100644 GIT binary patch delta 19551 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 ZT+wA@kTGZ4<_CfA*pZWtg=Bi{e*s$!)w}=z diff --git a/icons/obj/smooth_structures/sandbags.dmi b/icons/obj/smooth_structures/sandbags.dmi new file mode 100644 index 0000000000000000000000000000000000000000..8ac099555a81b56e9f33d225565f454487bc523f GIT binary patch literal 993 zcmV<710MW|P)005u_0{{R3dEt5<0000IP)t-sz`($p zdrQ=+bifFDZ*Bkp zc$|%sK?=hl5JlH|3Q5+M8r^nN5=s`$9W0vYq81!!u3u@OyW-!?hsWnJ!}Q`h-R4D% z_nE(arua(YBFyQ`*&ba9HRyq};Nup`5vbVW>)0t7JI-9pRFmRt&GzY!`Ns?ZqXEVM zjFJiPX){_9;L~Q5+yNgC__TWr&{Ow=2qnab5G6vKRzRuEXn-*QLpHgG-Tof87t=C+ zzvTm|z1d6_me7y@00O~DL_t(&f$f@MZo?o9g_|3Ubr)!T0^}1k&Hc|bAko@{$1vFH zDh*5fV})-Cyx5P1(@7r_EjKdYJb?b{*%nA|4m{n67farBVSlv-?pN8l$sMmkIVo^r zp0isfp7}!vJnC>_=d!!;&WV9X9fkyF%RXQEEC$jMNC3$Fz^J1PcxV2S@p2u8RpNY= z8}9I^Lnur>Hv#F_gcevG5OkK!F@G&mS>-@f@Ay;v1OP~2(MSi>=roTT>vVdIs8a;& ze`Es1<03B}0Lb@zl|!z34wVIX#0YU{>Kg_s>Kg{iOa31L7wWHXFy8->rNCIWO66>q zm+CP1#w%ezxz9^=7<{Ai*iY{B(nntJgMgnr<8DGz(4e$eDykWpmP@&|Be@y@`dXjK=Hn#5SdQJ z`;J0nI<)~l=~TQKEQC)p_*C93R@pxT#T)8E#A{H!)WrC%r;o{7f7kPkpFh;V;Rp4= z;RheU;Rl7l;RkueOJ`Co9!C1LOI_hVzC3Af=va_b%Sno@#c^A)P;LIBzHchFP@yyb&9>_4g9C zJa3cwtmS!|biPn?o)7_zb;$NQWX*ZP3`ofx8x{xJ9K6{aS{K+6BO2oy(k&BM2>_sm P00000NkvXXu0mjfAehzM literal 0 HcmV?d00001 diff --git a/icons/obj/structures.dmi b/icons/obj/structures.dmi index f30ecfe94d14d5f6b53af7e984954720c16a52b5..d1b6b267f8a7eb80a06c58bd425fd4a51808b1a0 100644 GIT binary patch delta 18981 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 #{0; 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