diff --git a/code/modules/photography/photos/photo.dm b/code/modules/photography/photos/photo.dm
index 07f765c123..5c78709e9b 100644
--- a/code/modules/photography/photos/photo.dm
+++ b/code/modules/photography/photos/photo.dm
@@ -51,6 +51,8 @@
user.examinate(src)
/obj/item/photo/attackby(obj/item/P, mob/user, params)
+ if(try_burn(P, user))
+ return
if(istype(P, /obj/item/pen) || istype(P, /obj/item/toy/crayon))
if(!user.is_literate())
to_chat(user, "You scribble illegibly on [src]!")
@@ -60,6 +62,26 @@
scribble = txt
..()
+/obj/item/photo/proc/try_burn(obj/item/I, mob/living/user)
+ var/ignition_message = I.ignition_effect(src, user)
+ if(!ignition_message)
+ return
+ . = TRUE
+ if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(10) && Adjacent(user))
+ user.visible_message("[user] accidentally ignites [user.p_them()]self!", \
+ "You miss [src] and accidentally light yourself on fire!")
+ if(user.is_holding(I)) //checking if they're holding it in case TK is involved
+ user.dropItemToGround(I)
+ user.adjust_fire_stacks(1)
+ user.IgniteMob()
+ return
+
+ if(user.is_holding(src)) //no TK shit here.
+ user.dropItemToGround(src)
+ user.visible_message(ignition_message)
+ add_fingerprint(user)
+ fire_act(I.get_temperature())
+
/obj/item/photo/examine(mob/user)
. = ..()
if(in_range(src, user))