isobj() asserts that child objects of /atom/movable are /obj. I'm unsure if this is intentional, but it seems unusual.
Numbered Steps to Reproduce Problem:
1) Declare a subtype of /atom/movable
2) Use isobj(that_object)
Code Snippet (if applicable) to Reproduce Problem:
/obj/an_object
/atom/movable/a_movable
/world/New()
var/obj/an_object/i_obj = new()
var/atom/movable/a_movable/i_am = new()
world.log << "isobj(i_obj): [isobj(i_obj)]"
world.log << "isobj(i_am): [isobj(i_am)]"
Expected Results:
isobj(i_obj): 1 isobj(i_am): 0
Actual Results:
isobj(i_obj): 1 isobj(i_am): 1
Does the problem occur:
Every time? Or how often? Every time
In other games? Yes
In other user accounts? Yes
On other computers? Yes
When does the problem NOT occur?
Always occurs
Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.)
Workarounds:
Just coding around it.