ID:791527
 
Keywords: cross, crossed, objects, size, step
Resolved
Crossed() and Uncrossed() were not called for "traditional" objs and mobs that didn't use pixel movement and covered all of a single turf.
BYOND Version:494
Operating System:Windows 7 Ultimate 64-bit
Web Browser:Internet Explorer 9.0
Applies to:Dream Daemon
Status: Resolved (496)

This issue has been resolved.
Update: This might not be a bug, something with no step size is calling the old movement system? In this case, it's actually just a backwards compatibility thing. Someone that knows more about pixel movement as compared to older movement confirm this for me. I am leaving this post up still because using other pixel movement variables on objects still refuses to accept crossed without step_size.

Descriptive Problem Summary: If an object is created with no step sized defined, Cross is called but not Crossed. I feel this isn't what documentation states, even if the workaround is so very easy. I believe the only reason cross is called is due to compatibility behavior that calls it when you enter a turf.

Numbered Steps to Reproduce Problem:
1) Download packet: http://johngames.com/byond/crossed.zip
2) Run, walk over red squares with no step size, run over red squares with blue borders for with step size

Expected Results: Always says "RUN!"

Actual Results: Only does so for Blue borderd ones.

Does the problem occur:
Every time? Or how often? Every
In other games? Unknown
In other user accounts? Yes
On other computers? Yes

When does the problem NOT occur? When you always define step_size

Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? Tested a few versions back with similar results.

Workarounds: Always add step size.

Lummox JR resolved issue with message:
Crossed() and Uncrossed() were not called for "traditional" objs and mobs that didn't use pixel movement and covered all of a single turf.