diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index 85560bda98..f8ce872378 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -933,8 +933,10 @@ icon_deny = "tool-deny" //req_access = list(access_maint_tunnels) //Maintenance access products = list(/obj/item/stack/cable_coil/random = 10,/obj/item/weapon/crowbar = 5,/obj/item/weapon/weldingtool = 3,/obj/item/weapon/wirecutters = 5, - /obj/item/weapon/wrench = 5,/obj/item/device/analyzer = 5,/obj/item/device/t_scanner = 5,/obj/item/weapon/screwdriver = 5) - contraband = list(/obj/item/weapon/weldingtool/hugetank = 2,/obj/item/clothing/gloves/fyellow = 2) + /obj/item/weapon/wrench = 5,/obj/item/device/analyzer = 5,/obj/item/device/t_scanner = 5,/obj/item/weapon/screwdriver = 5, + /obj/item/device/flashlight/glowstick = 3, /obj/item/device/flashlight/glowstick/red = 3, /obj/item/device/flashlight/glowstick/blue = 3, + /obj/item/device/flashlight/glowstick/orange =3, /obj/item/device/flashlight/glowstick/yellow = 3) + contraband = list(/obj/item/weapon/weldingtool/hugetank = 2,/obj/item/clothing/gloves/fyellow = 2, ) premium = list(/obj/item/clothing/gloves/yellow = 1) /obj/machinery/vending/engivend diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm index c7f90e9746..83ac8851dd 100644 --- a/code/game/objects/items/devices/flashlight.dm +++ b/code/game/objects/items/devices/flashlight.dm @@ -199,7 +199,7 @@ src.force = on_damage src.damtype = "fire" processing_objects += src - + /obj/item/device/flashlight/flare/proc/ignite() //Used for flare launchers. on = !on update_icon() @@ -208,6 +208,76 @@ processing_objects += src return 1 +//Glowsticks + +/obj/item/device/flashlight/glowstick + name = "green glowstick" + desc = "A green military-grade glowstick." + w_class = 2.0 + brightness_on = 4 + light_power = 2 + light_color = "#49F37C" + icon_state = "glowstick" + item_state = "glowstick" + var/fuel = 0 + +/obj/item/device/flashlight/glowstick/New() + fuel = rand(1600, 2000) + ..() + +/obj/item/device/flashlight/glowstick/process() + fuel = max(fuel - 1, 0) + if(!fuel || !on) + turn_off() + if(!fuel) + src.icon_state = "[initial(icon_state)]-empty" + processing_objects -= src + +/obj/item/device/flashlight/glowstick/proc/turn_off() + on = 0 + update_icon() + +/obj/item/device/flashlight/glowstick/attack_self(mob/user) + + if(!fuel) + user << "The glowstick has already been turned on." + return + if(on) + return + + . = ..() + if(.) + user.visible_message("[user] cracks and shakes the glowstick.", "You crack and shake the glowstick, turning it on!") + processing_objects += src + +/obj/item/device/flashlight/glowstick/red + name = "red glowstick" + desc = "A red military-grade glowstick." + light_color = "#FC0F29" + icon_state = "glowstick_red" + item_state = "glowstick_red" + +/obj/item/device/flashlight/glowstick/blue + name = "blue glowstick" + desc = "A blue military-grade glowstick." + light_color = "#599DFF" + icon_state = "glowstick_blue" + item_state = "glowstick_blue" + +/obj/item/device/flashlight/glowstick/orange + name = "orange glowstick" + desc = "A orange military-grade glowstick." + light_color = "#FA7C0B" + icon_state = "glowstick_orange" + item_state = "glowstick_orange" + +/obj/item/device/flashlight/glowstick/yellow + name = "yellow glowstick" + desc = "A yellow military-grade glowstick." + light_color = "#FEF923" + icon_state = "glowstick_yellow" + item_state = "glowstick_yellow" + /obj/item/device/flashlight/slime gender = PLURAL name = "glowing slime extract" diff --git a/icons/mob/items/lefthand.dmi b/icons/mob/items/lefthand.dmi index f8d3c1c23f..b3f56e6ab3 100644 Binary files a/icons/mob/items/lefthand.dmi and b/icons/mob/items/lefthand.dmi differ diff --git a/icons/mob/items/righthand.dmi b/icons/mob/items/righthand.dmi index 265df7a2ad..cc0895827a 100644 Binary files a/icons/mob/items/righthand.dmi and b/icons/mob/items/righthand.dmi differ diff --git a/icons/obj/lighting.dmi b/icons/obj/lighting.dmi index c5f91d2ab2..5b453fbfb4 100644 Binary files a/icons/obj/lighting.dmi and b/icons/obj/lighting.dmi differ