diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm
index f3defa341e4..c1ccb4aa6ca 100644
--- a/code/game/objects/items/devices/flashlight.dm
+++ b/code/game/objects/items/devices/flashlight.dm
@@ -39,10 +39,10 @@
/obj/item/device/flashlight/attack_self(mob/user)
if(!isturf(user.loc))
user << "You cannot turn the light on while in this [user.loc]." //To prevent some lighting anomalities.
- return
+ return 0
on = !on
update_brightness(user)
- return
+ return 1
/obj/item/device/flashlight/attack(mob/living/M as mob, mob/living/user as mob)
@@ -153,12 +153,13 @@
var/produce_heat = 1500
/obj/item/device/flashlight/flare/New()
- fuel = rand(1500, 2000) // Last 10 to 15 minutes.
+ fuel = rand(800, 1000) // Sorry for changing this so much but I keep under-estimating how long X number of ticks last in seconds.
..()
/obj/item/device/flashlight/flare/process()
var/turf/pos = get_turf(src)
- pos.hotspot_expose(produce_heat, 5)
+ if(pos)
+ pos.hotspot_expose(produce_heat, 5)
fuel = max(fuel - 1, 0)
if(!fuel || !on)
turn_off()
@@ -177,19 +178,18 @@
update_brightness(null)
/obj/item/device/flashlight/flare/attack_self(mob/user)
+
// Usual checks
- if(loc != usr)
- return
if(!fuel)
user << "It's out of fuel."
return
- if(!on)
- user.visible_message("[user] activates the flare.", "You pull the cord on the flare, activating it!")
- else
+ if(on)
return
+
+ . = ..()
// All good, turn it on.
- on = 1
- update_brightness(user)
- src.force = on_damage
- src.damtype = "fire"
- processing_objects += src
\ No newline at end of file
+ if(.)
+ user.visible_message("[user] activates the flare.", "You pull the cord on the flare, activating it!")
+ src.force = on_damage
+ src.damtype = "fire"
+ processing_objects += src
\ No newline at end of file
diff --git a/maps/tgstation.2.0.9.dmm b/maps/tgstation.2.0.9.dmm
index 793a13067f9..cc9eb59d7c5 100644
--- a/maps/tgstation.2.0.9.dmm
+++ b/maps/tgstation.2.0.9.dmm
@@ -4969,7 +4969,7 @@
"bRC" = (/turf/simulated/floor/plating,/area/toxins/misc_lab)
"bRD" = (/obj/item/device/radio/beacon,/turf/simulated/floor/plating,/area/toxins/misc_lab)
"bRE" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "misclab"; name = "Test Chamber Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/toxins/misc_lab)
-"bRF" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/obj/machinery/computer/security/telescreen{desc = "Used for watching the test chamber."; layer = 4; name = "Test Chamber Telescreen"; network = "misc"; pixel_x = -32; pixel_y = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/misc_lab)
+"bRF" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/obj/machinery/computer/security/telescreen{desc = "Used for watching the test chamber."; layer = 4; name = "Test Chamber Telescreen"; network = "Misc. Research"; pixel_x = -32; pixel_y = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/misc_lab)
"bRG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/stool,/obj/effect/landmark/start{name = "Scientist"},/turf/simulated/floor,/area/toxins/misc_lab)
"bRH" = (/turf/simulated/floor,/area/toxins/misc_lab)
"bRI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/simulated/floor,/area/toxins/misc_lab)
@@ -5123,7 +5123,7 @@
"bUA" = (/obj/machinery/door/airlock/medical{name = "Virology Access"; req_access_txt = "39"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/medical/medbay)
"bUB" = (/obj/machinery/door/airlock/maintenance{name = "Medical Maintenance"; req_access_txt = "5"},/turf/simulated/floor/plating,/area/medical/surgery)
"bUC" = (/obj/structure/table,/obj/item/device/assembly/igniter{pixel_x = -5; pixel_y = 3},/obj/item/device/assembly/igniter{pixel_x = 5; pixel_y = -4},/obj/item/device/assembly/igniter{pixel_x = 2; pixel_y = 6},/obj/item/device/assembly/igniter{pixel_x = 2; pixel_y = -1},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/misc_lab)
-"bUD" = (/obj/machinery/camera{c_tag = "Misc Test Chamber"; dir = 1; network = "SS13"; pixel_x = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/misc_lab)
+"bUD" = (/obj/machinery/camera{c_tag = "Misc Test Chamber"; dir = 1; network = "Misc. Research"; pixel_x = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/misc_lab)
"bUE" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/misc_lab)
"bUF" = (/obj/machinery/door_control{id = "misclab"; name = "Test Chamber Blast Doors"; pixel_x = 6; pixel_y = -24; req_access_txt = "7"},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/misc_lab)
"bUG" = (/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/item/weapon/crowbar/red,/obj/item/weapon/wrench,/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/misc_lab)