diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm
index f0f01f421bd..377b39bf425 100644
--- a/code/__HELPERS/unsorted.dm
+++ b/code/__HELPERS/unsorted.dm
@@ -1306,7 +1306,7 @@ var/global/list/common_tools = list(
return 0
if(istype(W, /obj/item/weapon/match))
var/obj/item/weapon/match/O = W
- if(O.lit)
+ if(O.lit == 1)
return 1000
else
return 0
diff --git a/code/modules/food&drinks/drinks/drinks.dm b/code/modules/food&drinks/drinks/drinks.dm
index 9e98ef77fa3..064d649254a 100644
--- a/code/modules/food&drinks/drinks/drinks.dm
+++ b/code/modules/food&drinks/drinks/drinks.dm
@@ -95,6 +95,16 @@
return
+/obj/item/weapon/reagent_containers/food/drinks/attackby(var/obj/item/I, mob/user as mob, params)
+ if(istype(I, /obj/item/clothing/mask/cigarette)) //ciggies are weird
+ return
+ if(is_hot(I))
+ var/added_heat = (is_hot(I) / 100) //ishot returns a temperature
+ if(src.reagents)
+ src.reagents.chem_temp += added_heat
+ user << "You heat [src] with [I]."
+ src.reagents.handle_reactions()
+
////////////////////////////////////////////////////////////////////////////////
/// Drinks. END
////////////////////////////////////////////////////////////////////////////////
diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm
index 540db68b85c..8e3156f91e3 100644
--- a/code/modules/reagents/reagent_containers/glass.dm
+++ b/code/modules/reagents/reagent_containers/glass.dm
@@ -88,6 +88,15 @@
reagents.reaction(target, TOUCH)
reagents.clear_reagents()
+/obj/item/weapon/reagent_containers/glass/attackby(var/obj/item/I, mob/user as mob, params)
+ if(istype(I, /obj/item/clothing/mask/cigarette)) //ciggies are weird
+ return
+ if(is_hot(I))
+ var/added_heat = (is_hot(I) / 100) //ishot returns a temperature
+ if(src.reagents)
+ src.reagents.chem_temp += added_heat
+ user << "You heat [src] with [I]."
+ src.reagents.handle_reactions()
/obj/item/weapon/reagent_containers/glass/beaker
name = "beaker"
@@ -211,3 +220,5 @@
user.put_in_hands(new /obj/item/weapon/bucket_sensor)
user.unEquip(src)
qdel(src)
+ else
+ ..()
diff --git a/html/changelogs/Delimusca-8083.yml b/html/changelogs/Delimusca-8083.yml
new file mode 100644
index 00000000000..05a6d9ba10e
--- /dev/null
+++ b/html/changelogs/Delimusca-8083.yml
@@ -0,0 +1,5 @@
+author: Delimusca
+
+delete-after: True
+
+ - rscadd: "Improvised heating! use lighters or other heat sources to heat beakers, bottles, etc."
\ No newline at end of file