Gives Atmos-Traitors a new fireaxe.

Give Atmos-traitors a unique 10TC axe to buy.

This axe starts with a single charge and can gain more charges over time
by destroying windows and grilles. Each grille or window destroyed has a
4% chance of giving another charge to the axe. On a charged hit the axe
will hit for 30 brute and 30 burn. It will otherwise function as a
normal fireaxe if out of charges.

![nknwxga](https://cloud.githubusercontent.com/assets/6348574/17047510/9ab3c986-4f93-11e6-83b8-c3e4598704eb.gif)

Sprites courtesy of Fullofskittles
🆑 IcyV
add: Adds a unique axe for Atmos-traitors
/🆑
This commit is contained in:
IcyV
2016-07-29 21:08:50 -07:00
parent d12d78871d
commit da360c8703
5 changed files with 60 additions and 0 deletions
+8
View File
@@ -309,6 +309,14 @@ var/list/uplink_items = list()
item = /obj/item/clothing/under/contortionist
cost = 6
job = list("Life Support Specialist")
/datum/uplink_item/dangerous/energizedfireaxe
name = "Energized Fire Axe"
desc = "A fire axe with a massive electrical charge built into it. It can release this charge on its first victim and will be rather plain after that."
reference = "EFA"
item = /obj/item/weapon/twohanded/energizedfireaxe
cost = 10
job = list("Life Support Specialist")
//Stimulants
@@ -693,3 +693,55 @@
Z.ex_act(2)
charged = 3
playsound(user, 'sound/weapons/marauder.ogg', 50, 1)
// Energized Fire axe
/obj/item/weapon/twohanded/energizedfireaxe
name = "energized fire axe"
desc = "Someone with a love for fire axes decided to turn one into a single-charge energy weapon. Seems excessive."
icon_state = "fireaxe0"
force = 5
throwforce = 15
sharp = 1
edge = 1
w_class = 5
armour_penetration = 20
slot_flags = SLOT_BACK
force_unwielded = 5
force_wielded = 30
attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut")
hitsound = 'sound/weapons/bladeslice.ogg'
var/charged = 1
/obj/item/weapon/twohanded/energizedfireaxe/update_icon()
if(wielded)
icon_state = "fireaxe2"
else
icon_state = "fireaxe0"
/obj/item/weapon/twohanded/energizedfireaxe/afterattack(atom/A, mob/user, proximity)
if(!proximity)
return
if(wielded)
if(istype(A, /mob/living))
var/mob/living/Z = A
if(charged)
charged--
Z.take_organ_damage(0,30)
user.visible_message("<span class='danger'>[user] slams the charged axe into [Z.name] with all their might!</span>")
playsound(loc, 'sound/magic/lightningbolt.ogg', 5, 1)
var/datum/effect/system/spark_spread/sparks = new /datum/effect/system/spark_spread
sparks.set_up(1, 1, src)
sparks.start()
if(A && wielded && (istype(A, /obj/structure/window) || istype(A, /obj/structure/grille)))
if(istype(A, /obj/structure/window))
var/obj/structure/window/W = A
W.destroy()
if(prob(4))
charged++
user.visible_message("<span class='notice'>The axe starts to emit an electric buzz!</span>")
else
qdel(A)
if(prob(4))
charged++
user.visible_message("<span class='notice'>The axe starts to emit an electric buzz!</span>")