Beginnings of Combat Changes: Ranged Weaponry (#17075)

This commit is contained in:
Fox McCloud
2021-11-11 21:24:02 +01:00
committed by GitHub
parent 6ece7187a0
commit 06df88706f
35 changed files with 128 additions and 289 deletions
@@ -1,65 +1,3 @@
/*
Miscellaneous traitor devices
BATTERER
*/
/*
The Batterer, like a flashbang but 50% chance to knock people over. Can be either very
effective or pretty fucking useless.
*/
/obj/item/batterer
name = "mind batterer"
desc = "A strange device with twin antennas."
icon = 'icons/obj/device.dmi'
icon_state = "batterer"
throwforce = 5
w_class = WEIGHT_CLASS_TINY
throw_speed = 4
throw_range = 10
flags = CONDUCT
item_state = "electronic"
origin_tech = "magnets=3;combat=3;syndicate=3"
var/times_used = 0 //Number of times it's been used.
var/max_uses = 5
/obj/item/batterer/examine(mob/user)
. = ..()
if(times_used >= max_uses)
. += "<span class='notice'>[src] is out of charge.</span>"
if(times_used < max_uses)
. += "<span class='notice'>[src] has [max_uses-times_used] charges left.</span>"
/obj/item/batterer/attack_self(mob/living/carbon/user, flag = 0, emp = 0)
if(!user)
return
if(times_used >= max_uses)
to_chat(user, "<span class='danger'>The mind batterer has been burnt out!</span>")
return
for(var/mob/living/carbon/human/M in oview(7, user))
if(prob(50))
M.Weaken(rand(4,7))
add_attack_logs(user, M, "Stunned with [src]")
to_chat(M, "<span class='danger'>You feel a tremendous, paralyzing wave flood your mind.</span>")
else
to_chat(M, "<span class='danger'>You feel a sudden, electric jolt travel through your head.</span>")
playsound(loc, 'sound/misc/interference.ogg', 50, 1)
times_used++
to_chat(user, "<span class='notice'>You trigger [src]. It has [max_uses-times_used] charges left.</span>")
if(times_used >= max_uses)
icon_state = "battererburnt"
/*
The radioactive microlaser, a device disguised as a health analyzer used to irradiate people.
@@ -233,8 +233,12 @@
/obj/item/restraints/legcuffs/bola,
/obj/item/clothing/mask/gas/sechailer)
/obj/item/storage/belt/security/sec/populate_contents()
new /obj/item/flashlight/seclite(src)
/obj/item/storage/belt/security/full/populate_contents()
new /obj/item/reagent_containers/spray/pepper(src)
new /obj/item/restraints/handcuffs(src)
new /obj/item/grenade/flashbang(src)
new /obj/item/flash(src)
new /obj/item/melee/baton/loaded(src)
update_icon()
/obj/item/storage/belt/security/response_team/populate_contents()