obj
Glass
icon_state="glass"
Entered(atom/O)
if(istype(O, /mob/player))
O.TakeDamage(damage=2, damagetype="piercing")
new /obj/Blood(O)
I know that it isn't because the procedure called isn't working, and if you enter the glass, you should be a /mob/player, but just to be sure, if I take it out, it still doesn't work.
Any suggestions?
One problem, though - you're not entering the glass. You're entering a turf that contains the glass. You'll have to do something like this:
If you override Entered() for any other turfs, you'll want to call the parent procedure (..()) for this to apply.