diff --git a/code/game/objects/items/weapons/cigs.dm b/code/game/objects/items/weapons/cigs.dm
index 810b5a95749..cf28c47a719 100644
--- a/code/game/objects/items/weapons/cigs.dm
+++ b/code/game/objects/items/weapons/cigs.dm
@@ -95,6 +95,17 @@ LIGHTERS ARE IN LIGHTERS.DM
else if(istype(W, /obj/item/device/assembly/igniter))
light("[user] fiddles with [W], and manages to light their [name].")
+ else if(istype(W, /obj/item/weapon/gun/magic/wand/fireball))
+ var/obj/item/weapon/gun/magic/wand/fireball/F = W
+ if(F.charges)
+ if(prob(50) || user.mind.assigned_role == "Wizard")
+ light("Holy shit, did [user] just manage to light their [name] with [W], with only moderate eyebrow singing?")
+ else
+ to_chat(user, "Unsure which end of the wand is which, [user] fails to light [name] with [W].")
+ explosion(user.loc, -1, 0, 2, 3, 0, flame_range = 2)
+ F.charges--
+
+
//can't think of any other way to update the overlays :<
user.update_inv_wear_mask()
user.update_inv_l_hand()