Adds strobe shields

This commit is contained in:
KorPhaeron
2016-12-08 01:05:22 -06:00
parent d854909e0f
commit fa3d8e086c
5 changed files with 68 additions and 0 deletions
+59
View File
@@ -220,3 +220,62 @@
/obj/item/device/assembly/flash/armimplant/proc/cooldown()
overheat = FALSE
/obj/item/device/assembly/flash/shield
name = "strobe shield"
desc = "A shield with a built in, high intensity light capable of blinding and disorienting suspects. Takes regular handheld flashes as bulbs."
icon = 'icons/obj/weapons.dmi'
icon_state = "flashshield"
item_state = "flashshield"
slot_flags = SLOT_BACK
force = 10
throwforce = 5
throw_speed = 2
throw_range = 3
w_class = WEIGHT_CLASS_BULKY
materials = list(MAT_GLASS=7500, MAT_METAL=1000)
origin_tech = "materials=3;combat=4"
attack_verb = list("shoved", "bashed")
block_chance = 50
armor = list(melee = 50, bullet = 50, laser = 50, energy = 0, bomb = 30, bio = 0, rad = 0, fire = 80, acid = 70)
/obj/item/device/assembly/flash/shield/flash_recharge(interval=10)
if(times_used >= 4)
burn_out()
return 0
return 1
/obj/item/device/assembly/flash/shield/attackby(obj/item/weapon/W, mob/user)
if(istype(W, /obj/item/device/assembly/flash/handheld))
var/obj/item/device/assembly/flash/handheld/flash = W
if(flash.crit_fail)
user << "No sense replacing it with a broken bulb."
return
else
user << "You begin to replace the bulb."
if(do_after(user, 20, target = src))
if(flash.crit_fail || !flash || qdeleted(flash))
return
crit_fail = FALSE
times_used = 0
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
update_icon()
flash.crit_fail = TRUE
flash.update_icon()
return
..()
/obj/item/device/assembly/flash/shield/update_icon(flash = 0)
item_state = "flashshield"
item_state = "flashshield"
if(crit_fail)
icon_state = "riot"
item_state = "riot"
else if(flash)
item_state = "flashshield_flash"
item_state = "flashshield_flash"
addtimer(src, "update_icon", 5)
if(holder)
holder.update_icon()
+9
View File
@@ -39,6 +39,15 @@
time = 15
category = CAT_WEAPON
/datum/crafting_recipe/strobeshield
name = "strobe shield"
result = /obj/item/device/assembly/flash/shield
reqs = list(/obj/item/wallframe/flasher = 1,
/obj/item/device/assembly/flash/handheld = 1,
/obj/item/weapon/shield/riot = 1)
time = 40
category = CAT_WEAPON
/datum/crafting_recipe/molotov
name = "Molotov"
result = /obj/item/weapon/reagent_containers/food/drinks/bottle/molotov