Esword update

This commit is contained in:
SamCroswell
2014-11-12 17:52:00 -05:00
parent 46793a2c04
commit a59a535a0e
5 changed files with 53 additions and 13 deletions
@@ -30,10 +30,13 @@
return (BRUTELOSS|FIRELOSS)
/obj/item/weapon/melee/energy/sword
var/hacked = 0
var/blade_color
color
name = "energy sword"
desc = "May the force be within you."
icon_state = "sword0"
icon_override = 'icons/mob/in-hand/swords.dmi'
force = 3.0
throwforce = 5.0
throw_speed = 1
@@ -24,7 +24,7 @@
return 0
/obj/item/weapon/melee/energy/sword/New()
_color = pick("red","blue","green","purple")
blade_color = pick("red","blue","green","purple")
/obj/item/weapon/melee/energy/sword/attack_self(mob/living/user as mob)
if ((M_CLUMSY in user.mutations) && prob(50))
@@ -36,7 +36,7 @@
if(istype(src,/obj/item/weapon/melee/energy/sword/pirate))
icon_state = "cutlass1"
else
icon_state = "sword[_color]"
icon_state = "sword[blade_color]"
w_class = 4
playsound(user, 'sound/weapons/saberon.ogg', 50, 1)
hitsound = 'sound/weapons/blade1.ogg'
@@ -67,9 +67,29 @@
user.adjustBrainLoss(10)
else
user << "<span class='notice'>You attach the ends of the two energy swords, making a single double-bladed weapon! You're cool.</span>"
new /obj/item/weapon/twohanded/dualsaber(user.loc)
var/obj/item/weapon/twohanded/dualsaber/newSaber = new /obj/item/weapon/twohanded/dualsaber(user.loc)
if(src.hacked) // That's right, we'll only check the "original" esword.
newSaber.hacked = 1
newSaber.blade_color = "rainbow"
del(W)
del(src)
else if(istype(W, /obj/item/device/multitool))
if(hacked == 0)
hacked = 1
blade_color = "rainbow"
user << "<span class='warning'>RNBW_ENGAGE</span>"
if(active)
icon_state = "swordrainbow"
// Updating overlays, copied from welder code.
// I tried calling attack_self twice, which looked cool, except it somehow didn't update the overlays!!
if(user.r_hand == src)
user.update_inv_r_hand(0)
else if(user.l_hand == src)
user.update_inv_l_hand(0)
else
user << "<span class='warning'>It's already fabulous!</span>"
/*
* Classic Baton
*/
+27 -10
View File
@@ -191,6 +191,9 @@ obj/item/weapon/twohanded/
* Double-Bladed Energy Swords - Cheridan
*/
/obj/item/weapon/twohanded/dualsaber
var/hacked = 0
var/blade_color
icon_override = 'icons/mob/in-hand/swords.dmi'
icon_state = "dualsaber0"
name = "double-bladed energy sword"
desc = "Handle with care."
@@ -210,20 +213,14 @@ obj/item/weapon/twohanded/
edge = 1
no_embed = 1 // Like with the single-handed esword, this shouldn't be embedding in people.
/* Here for when we can add items to left and right hands again, but currently this cannot be done due to the lack of in-hand icons for dual eswords aside from the green one.
/obj/item/weapon/twohanded/dualsaber/New()
item_color = pick("red", "blue", "green", "purple")
blade_color = pick("red", "blue", "green", "purple")
/obj/item/weapon/twohanded/dualsaber/update_icon()
if(wielded)
icon_state = "dualsaber[item_color][wielded]"
icon_state = "dualsaber[blade_color][wielded]"
else
icon_state = "dualsaber0"
*/
/obj/item/weapon/twohanded/dualsaber/update_icon()
icon_state = "dualsaber[wielded]"
return
/obj/item/weapon/twohanded/dualsaber/attack(target as mob, mob/living/user as mob)
..()
@@ -245,11 +242,19 @@ obj/item/weapon/twohanded/
/obj/item/weapon/twohanded/dualsaber/green
New()
color = "green"
blade_color = "green"
/obj/item/weapon/twohanded/dualsaber/red
New()
color = "red"
blade_color = "red"
/obj/item/weapon/twohanded/dualsaber/purple
New()
blade_color = "purple"
/obj/item/weapon/twohanded/dualsaber/blue
New()
blade_color = "blue"
/obj/item/weapon/twohanded/dualsaber/unwield()
..()
@@ -259,6 +264,18 @@ obj/item/weapon/twohanded/
..()
hitsound = 'sound/weapons/blade1.ogg'
/obj/item/weapon/twohanded/dualsaber/attackby(obj/item/weapon/W as obj, mob/user as mob)
..()
if(istype(W, /obj/item/device/multitool))
if(hacked == 0)
hacked = 1
user << "<span class='warning'>2XRNBW_ENGAGE</span>"
blade_color = "rainbow"
update_icon()
else
user << "<span class='warning'>It's starting to look like a triple rainbow - no, nevermind.</span>"
//spears
/obj/item/weapon/twohanded/spear
icon_state = "spearglass0"