mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-30 16:38:22 +01:00
@@ -352,13 +352,16 @@
|
||||
shield_power = 150
|
||||
can_block_bullets = 1
|
||||
active = 1
|
||||
var/datum/effect_system/sparks/spark_system
|
||||
|
||||
/obj/item/melee/energy/blade/Initialize()
|
||||
. = ..()
|
||||
spark_system = bind_spark(src, 3)
|
||||
START_PROCESSING(SSprocessing, src)
|
||||
|
||||
/obj/item/melee/energy/blade/Destroy()
|
||||
STOP_PROCESSING(SSprocessing, src)
|
||||
QDEL_NULL(spark_system)
|
||||
return ..()
|
||||
|
||||
/obj/item/melee/energy/blade/deactivate(mob/living/user)
|
||||
|
||||
@@ -35,7 +35,8 @@
|
||||
to_chat(user, "<span class='warning'>Access Denied</span>")
|
||||
else if(istype(W, /obj/item/melee/energy/blade))
|
||||
if(emag_act(INFINITY, user, W, "The locker has been sliced open by [user] with an energy blade!", "You hear metal being sliced and sparks flying."))
|
||||
W:spark_system.queue()
|
||||
var/obj/item/melee/energy/blade/blade = W
|
||||
blade.spark_system.queue()
|
||||
playsound(src.loc, 'sound/weapons/blade.ogg', 50, 1)
|
||||
playsound(src.loc, "sparks", 50, 1)
|
||||
if(!locked)
|
||||
|
||||
@@ -35,7 +35,8 @@
|
||||
attackby(obj/item/W as obj, mob/user as mob)
|
||||
if(locked)
|
||||
if (istype(W, /obj/item/melee/energy/blade) && emag_act(INFINITY, user, "You slice through the lock of \the [src]"))
|
||||
W:spark_system.queue()
|
||||
var/obj/item/melee/energy/blade/blade = W
|
||||
blade.spark_system.queue()
|
||||
playsound(src.loc, 'sound/weapons/blade.ogg', 50, 1)
|
||||
playsound(src.loc, "sparks", 50, 1)
|
||||
return
|
||||
|
||||
@@ -126,10 +126,12 @@
|
||||
stun *= 0.5
|
||||
if(status) //Checks to see if the stunbaton is on.
|
||||
agony *= 0.5 //whacking someone causes a much poorer contact than prodding them.
|
||||
if(sheathed) //however breaking the skin results in a more potent electric shock or some bullshit. im a coder, not a doctor
|
||||
L.electrocute_act(force * 2, src, def_zone = target_zone)
|
||||
else
|
||||
L.electrocute_act(force * 2, src, ground_zero = target_zone)
|
||||
if(iscarbon(L))
|
||||
var/mob/living/carbon/C = L
|
||||
if(sheathed) //however breaking the skin results in a more potent electric shock or some bullshit. im a coder, not a doctor
|
||||
C.electrocute_act(force * 2, src, def_zone = target_zone)
|
||||
else
|
||||
C.electrocute_act(force * 2, src, ground_zero = target_zone)
|
||||
else
|
||||
agony = 0
|
||||
//we can't really extract the actual hit zone from ..(), unfortunately. Just act like they attacked the area they intended to.
|
||||
|
||||
Reference in New Issue
Block a user