diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 2c23c6ae2b0..4979b94eb92 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -209,6 +209,7 @@ force_wielded = 0 origin_tech = null attack_verb = list("attacked", "struck", "hit") + brightness_on = 0 /obj/item/weapon/twohanded/dualsaber/toy/hit_reaction() return 0 diff --git a/code/game/objects/items/weapons/melee/energy.dm b/code/game/objects/items/weapons/melee/energy.dm index 1c4ff92708a..16b8d302c7f 100644 --- a/code/game/objects/items/weapons/melee/energy.dm +++ b/code/game/objects/items/weapons/melee/energy.dm @@ -9,7 +9,10 @@ hitsound = 'sound/weapons/blade1.ogg' // Probably more appropriate than the previous hitsound. -- Dave usesound = 'sound/weapons/blade1.ogg' toolspeed = 1 - + light_power = 2 + var/brightness_on = 2 + var/colormap = list(red=LIGHT_COLOR_RED, blue=LIGHT_COLOR_LIGHTBLUE, green=LIGHT_COLOR_GREEN, purple=LIGHT_COLOR_PURPLE, rainbow=LIGHT_COLOR_WHITE) + /obj/item/weapon/melee/energy/suicide_act(mob/user) user.visible_message(pick("[user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku.", \ "[user] is falling on the [src.name]! It looks like \he's trying to commit suicide.")) @@ -29,8 +32,10 @@ attack_verb = attack_verb_on if(!item_color) icon_state = icon_state_on + set_light(brightness_on) else icon_state = "sword[item_color]" + set_light(brightness_on, l_color=colormap[item_color]) w_class = w_class_on playsound(user, 'sound/weapons/saberon.ogg', 35, 1) //changed it from 50% volume to 35% because deafness to_chat(user, "[src] is now active.") @@ -44,6 +49,7 @@ icon_state = initial(icon_state) w_class = initial(w_class) playsound(user, 'sound/weapons/saberoff.ogg', 35, 1) //changed it from 50% volume to 35% because deafness + set_light(0) to_chat(user, "[src] can now be concealed.") if(istype(user,/mob/living/carbon/human)) var/mob/living/carbon/human/H = user @@ -71,6 +77,7 @@ attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut") attack_verb_on = list() sharp = 1 + light_color = LIGHT_COLOR_WHITE /obj/item/weapon/melee/energy/axe/suicide_act(mob/user) user.visible_message("[user] swings the [src.name] towards /his head! It looks like \he's trying to commit suicide.") @@ -92,7 +99,6 @@ block_chance = 50 sharp = 1 var/hacked = 0 - var/blade_color /obj/item/weapon/melee/energy/sword/New() if(item_color == null) @@ -129,6 +135,7 @@ hitcost = 75 //Costs more than a standard cyborg esword item_color = null w_class = WEIGHT_CLASS_NORMAL + light_color = LIGHT_COLOR_WHITE /obj/item/weapon/melee/energy/sword/cyborg/saw/New() ..() @@ -192,6 +199,7 @@ desc = "Arrrr matey." icon_state = "cutlass0" icon_state_on = "cutlass1" + light_color = LIGHT_COLOR_RED /obj/item/weapon/melee/energy/sword/pirate/New() return @@ -224,4 +232,4 @@ name = "hardlight blade" desc = "An extremely sharp blade made out of hard light. Packs quite a punch." icon_state = "lightblade" - item_state = "lightblade" \ No newline at end of file + item_state = "lightblade" diff --git a/code/game/objects/items/weapons/twohanded.dm b/code/game/objects/items/weapons/twohanded.dm index 5d1755dc9d3..96628da9a26 100644 --- a/code/game/objects/items/weapons/twohanded.dm +++ b/code/game/objects/items/weapons/twohanded.dm @@ -208,15 +208,21 @@ attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") block_chance = 75 sharp = 1 + light_power = 2 + var/brightness_on = 2 + var/colormap = list(red=LIGHT_COLOR_RED, blue=LIGHT_COLOR_LIGHTBLUE, green=LIGHT_COLOR_GREEN, purple=LIGHT_COLOR_PURPLE, rainbow=LIGHT_COLOR_WHITE) /obj/item/weapon/twohanded/dualsaber/New() - blade_color = pick("red", "blue", "green", "purple") + if(!blade_color) + blade_color = pick("red", "blue", "green", "purple") /obj/item/weapon/twohanded/dualsaber/update_icon() if(wielded) icon_state = "dualsaber[blade_color][wielded]" + set_light(brightness_on, l_color=colormap[blade_color]) else icon_state = "dualsaber0" + set_light(0) /obj/item/weapon/twohanded/dualsaber/attack(target as mob, mob/living/user as mob) if(HULK in user.mutations) @@ -239,16 +245,16 @@ return ..() return 0 -/obj/item/weapon/twohanded/dualsaber/green/New() +/obj/item/weapon/twohanded/dualsaber/green blade_color = "green" -/obj/item/weapon/twohanded/dualsaber/red/New() +/obj/item/weapon/twohanded/dualsaber/red blade_color = "red" -/obj/item/weapon/twohanded/dualsaber/purple/New() +/obj/item/weapon/twohanded/dualsaber/purple blade_color = "purple" -/obj/item/weapon/twohanded/dualsaber/blue/New() +/obj/item/weapon/twohanded/dualsaber/blue blade_color = "blue" /obj/item/weapon/twohanded/dualsaber/unwield() diff --git a/code/modules/paperwork/pen.dm b/code/modules/paperwork/pen.dm index d93281f2468..1523f241e69 100644 --- a/code/modules/paperwork/pen.dm +++ b/code/modules/paperwork/pen.dm @@ -149,6 +149,8 @@ origin_tech = "combat=3;syndicate=1" attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") //these wont show up if the pen is off var/on = 0 + var/brightness_on = 2 + light_color = LIGHT_COLOR_RED /obj/item/weapon/pen/edagger/attack_self(mob/living/user) if(on) @@ -162,6 +164,7 @@ throwforce = initial(throwforce) playsound(user, 'sound/weapons/saberoff.ogg', 5, 1) to_chat(user, "[src] can now be concealed.") + set_light(0) else on = 1 force = 18 @@ -173,6 +176,7 @@ throwforce = 35 playsound(user, 'sound/weapons/saberon.ogg', 5, 1) to_chat(user, "[src] is now active.") + set_light(brightness_on, 1) update_icon() /obj/item/weapon/pen/edagger/update_icon() diff --git a/icons/mob/inhands/items_lefthand.dmi b/icons/mob/inhands/items_lefthand.dmi index f356242fe67..bc282c185d8 100644 Binary files a/icons/mob/inhands/items_lefthand.dmi and b/icons/mob/inhands/items_lefthand.dmi differ diff --git a/icons/mob/inhands/items_righthand.dmi b/icons/mob/inhands/items_righthand.dmi index 44e4fa580bd..8b41a0ec07d 100644 Binary files a/icons/mob/inhands/items_righthand.dmi and b/icons/mob/inhands/items_righthand.dmi differ diff --git a/icons/obj/weapons.dmi b/icons/obj/weapons.dmi index 98d2d4bdd27..3e415202e7a 100644 Binary files a/icons/obj/weapons.dmi and b/icons/obj/weapons.dmi differ