diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm index 8a8b1836eae..30b3f246671 100644 --- a/code/game/machinery/camera/camera.dm +++ b/code/game/machinery/camera/camera.dm @@ -214,15 +214,6 @@ user << "Camera bugged." src.bug = W src.bug.bugged_cameras[src.c_tag] = src - else if(istype(W, /obj/item/weapon/melee/energy/blade))//Putting it here last since it's a special case. I wonder if there is a better way to do these than type casting. - deactivate(user,2)//Here so that you can disconnect anyone viewing the camera, regardless if it's on or off. - var/datum/effect/effect/system/spark_spread/spark_system = new /datum/effect/effect/system/spark_spread() - spark_system.set_up(5, 0, loc) - spark_system.start() - playsound(loc, 'sound/weapons/blade1.ogg', 50, 1) - playsound(loc, "sparks", 50, 1) - visible_message("[user] has sliced the camera apart with an energy blade!") - qdel(src) else if(istype(W, /obj/item/device/laser_pointer)) var/obj/item/device/laser_pointer/L = W L.laser_act(src, user) diff --git a/code/game/machinery/doors/unpowered.dm b/code/game/machinery/doors/unpowered.dm index c0da7ec0dba..df94284c2c5 100644 --- a/code/game/machinery/doors/unpowered.dm +++ b/code/game/machinery/doors/unpowered.dm @@ -9,7 +9,6 @@ /obj/machinery/door/unpowered/attackby(obj/item/I as obj, mob/user as mob, params) - if(istype(I, /obj/item/weapon/melee/energy/blade)) return if(src.locked) return ..() return diff --git a/code/game/objects/items/weapons/storage/lockbox.dm b/code/game/objects/items/weapons/storage/lockbox.dm index a8cbcbcb282..9b7d8f19952 100644 --- a/code/game/objects/items/weapons/storage/lockbox.dm +++ b/code/game/objects/items/weapons/storage/lockbox.dm @@ -35,18 +35,6 @@ else user << "Access Denied." return - else if(istype(W, /obj/item/weapon/melee/energy/blade) && !src.broken) - broken = 1 - locked = 0 - desc = "It appears to be broken." - icon_state = src.icon_broken - var/datum/effect/effect/system/spark_spread/spark_system = new /datum/effect/effect/system/spark_spread() - spark_system.set_up(5, 0, src.loc) - spark_system.start() - playsound(src.loc, 'sound/weapons/blade1.ogg', 50, 1) - playsound(src.loc, "sparks", 50, 1) - visible_message("[user] has sliced open \the [src] with an energy blade!", "You hear metal being sliced and sparks flying.") - return if(!locked) ..() else diff --git a/code/game/objects/items/weapons/storage/secure.dm b/code/game/objects/items/weapons/storage/secure.dm index f39e702b365..a92d674a6e9 100644 --- a/code/game/objects/items/weapons/storage/secure.dm +++ b/code/game/objects/items/weapons/storage/secure.dm @@ -33,21 +33,6 @@ /obj/item/weapon/storage/secure/attackby(obj/item/weapon/W as obj, mob/user as mob, params) if(locked) - if (istype(W, /obj/item/weapon/melee/energy/blade) && !emagged) - emagged = 1 - src.overlays += image('icons/obj/storage.dmi', icon_sparking) - sleep(6) - src.overlays = null - overlays += image('icons/obj/storage.dmi', icon_locking) - locked = 0 - var/datum/effect/effect/system/spark_spread/spark_system = new /datum/effect/effect/system/spark_spread() - spark_system.set_up(5, 0, src.loc) - spark_system.start() - playsound(src.loc, 'sound/weapons/blade1.ogg', 50, 1) - playsound(src.loc, "sparks", 50, 1) - user << "You slice through the lock on [src]." - return - if (istype(W, /obj/item/weapon/screwdriver)) if (do_after(user, 20)) src.open =! src.open diff --git a/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm b/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm index c117504b4ea..4c9095fb4df 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm @@ -65,18 +65,6 @@ if(!src.opened && src.broken) user << "The locker appears to be broken." return - else if(istype(W, /obj/item/weapon/melee/energy/blade) && !broken) - broken = 1 - locked = 0 - desc = "It appears to be broken." - icon_state = icon_off - flick(icon_broken, src) - var/datum/effect/effect/system/spark_spread/spark_system = new /datum/effect/effect/system/spark_spread() - spark_system.set_up(5, 0, src.loc) - spark_system.start() - playsound(src.loc, 'sound/weapons/blade1.ogg', 50, 1) - playsound(src.loc, "sparks", 50, 1) - visible_message("[user] has sliced the locker open with an energy blade!", "You hear metal being sliced and sparks flying.") else ..(W, user) diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index f6aa7b779b2..f64395b7f24 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -307,17 +307,6 @@ overlays += redlight add_fingerprint(user) return - else if (istype(W, /obj/item/weapon/melee/energy/blade) && locked && !broken) - overlays.Cut() - overlays += emag - overlays += sparks - spawn(6) overlays -= sparks //Tried lots of stuff but nothing works right. so i have to use this *sadface* - playsound(src.loc, "sparks", 60, 1) - src.locked = 0 - src.broken = 1 - user << "You unlock \the [src]." - add_fingerprint(user) - return return ..() diff --git a/code/game/objects/structures/false_walls.dm b/code/game/objects/structures/false_walls.dm index 08123b5fec1..ee5684c24c6 100644 --- a/code/game/objects/structures/false_walls.dm +++ b/code/game/objects/structures/false_walls.dm @@ -118,7 +118,7 @@ else user << "You can't reach, close it first!" - if(istype(W, /obj/item/weapon/pickaxe/plasmacutter) || istype(W, /obj/item/weapon/melee/energy/blade)) + if(istype(W, /obj/item/weapon/pickaxe/plasmacutter)) dismantle(user) if(istype(W, /obj/item/weapon/pickaxe/drill/jackhammer)) diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index 196ce0cbb0b..da22c57e321 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -314,16 +314,6 @@ if(isrobot(user)) return - if(istype(I, /obj/item/weapon/melee/energy/blade)) - var/datum/effect/effect/system/spark_spread/SS = new /datum/effect/effect/system/spark_spread() - SS.set_up(5, 0, src.loc) - SS.start() - playsound(src.loc, 'sound/weapons/blade1.ogg', 50, 1) - playsound(src.loc, "sparks", 50, 1) - user.visible_message("The [src.name] was sliced apart by [user]!") - table_destroy(1) - return - if(!(I.flags & ABSTRACT)) //rip more parems rip in peace ;_; if(user.drop_item()) I.Move(loc) diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index bd54b2067b9..2c88719d4b9 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -136,13 +136,6 @@ if( thermite ) if(is_hot(W)) thermitemelt(user) - - if( istype(W, /obj/item/weapon/melee/energy/blade) ) - var/obj/item/weapon/melee/energy/blade/EB = W - EB.spark_system.start() - user << "You slash \the [src] with \the [EB]; the thermite ignites!" - playsound(src, "sparks", 50, 1) - playsound(src, 'sound/weapons/blade1.ogg', 50, 1) return var/turf/T = user.loc //get user's location for delay checks @@ -225,21 +218,6 @@ dismantle_wall() visible_message("[user] smashes through the [name] with the [W.name]!", "You hear the grinding of metal.") return 1 - else if( istype(W, /obj/item/weapon/melee/energy/blade) ) - var/obj/item/weapon/melee/energy/blade/EB = W - EB.spark_system.start() - user << "You stab \the [EB] into the wall and begin to slice it apart." - playsound(src, "sparks", 50, 1) - if(do_after(user, slicing_duration*0.7)) //energy blade slicing is faster than welding tool slicing - if( !istype(src, /turf/simulated/wall) || !user || !EB || !T ) - return 1 - if( user.loc == T && user.get_active_hand() == W ) - EB.spark_system.start() - playsound(src, "sparks", 50, 1) - playsound(src, 'sound/weapons/blade1.ogg', 50, 1) - dismantle_wall(1) - visible_message("The wall was sliced apart by [user]!", "You hear metal being sliced apart and sparks flying.") - return 1 return 0 diff --git a/code/game/turfs/simulated/walls_reinforced.dm b/code/game/turfs/simulated/walls_reinforced.dm index c66d1061e50..b7e71d69e0b 100644 --- a/code/game/turfs/simulated/walls_reinforced.dm +++ b/code/game/turfs/simulated/walls_reinforced.dm @@ -29,10 +29,7 @@ M << "This wall is far too strong for you to destroy." /turf/simulated/wall/r_wall/try_destroy(obj/item/weapon/W as obj, mob/user as mob, turf/T as turf) - if(istype(W, /obj/item/weapon/melee/energy/blade)) - user << "This wall is too thick to slice through. You will need to find a different path." - return 1 - else if(istype(W, /obj/item/weapon/pickaxe/drill/jackhammer)) + if(istype(W, /obj/item/weapon/pickaxe/drill/jackhammer)) var/obj/item/weapon/pickaxe/drill/jackhammer/D = W if(!D.bcell.use(800)) user << "Your [D.name] doesn't have enough power to break through the [name]." diff --git a/code/modules/ninja/energy_katana.dm b/code/modules/ninja/energy_katana.dm index fba0963d57e..0a398a7ba27 100644 --- a/code/modules/ninja/energy_katana.dm +++ b/code/modules/ninja/energy_katana.dm @@ -7,4 +7,14 @@ item_state = "energy_katana" force = 40 throwforce = 20 - slot_flags = SLOT_BELT + +/obj/item/weapon/katana/energy/afterattack(atom/target, mob/user, proximity_flag, click_parameters) + if(!user || !target) + return + + if(proximity_flag) + target.emag_act() + user.visible_message("[user] masterfully slices [target]!", "You masterfully slice [target]!") + playsound(user, "sparks", 50, 1) + playsound(user, 'sound/weapons/blade1.ogg', 50, 1) + diff --git a/code/modules/recycling/disposal.dm b/code/modules/recycling/disposal.dm index ef4b2049d97..b4d951cc78e 100644 --- a/code/modules/recycling/disposal.dm +++ b/code/modules/recycling/disposal.dm @@ -115,10 +115,6 @@ else return - if(istype(I, /obj/item/weapon/melee/energy/blade)) - user << "You can't place \the [I] into \the [src]." - return - if(istype(I, /obj/item/weapon/storage/bag/trash)) var/obj/item/weapon/storage/bag/trash/T = I user << " You empty the bag." diff --git a/icons/mob/back.dmi b/icons/mob/back.dmi index af975d079e4..fbcfe4414ab 100644 Binary files a/icons/mob/back.dmi and b/icons/mob/back.dmi differ