Descriptive Problem Summary:
When you Move() an obj into a non turf atom Uncrossed() is sometimes not called correctly on the things the obj Move()'d off of.
Numbered Steps to Reproduce Problem:
1.Move an obj's that loc is a turf into an obj via Move()
2.Watch as Uncrossed() is only sometimes called properly.
Code Snippet (if applicable) to Reproduce Problem:
1.Compile and run the code.
2.Click on a green apple to Move() it to the turf below the box object on your left.
This calls Uncrossed() as expected.
3.Click on a red apple to Move() it into the box object.
This will only sometimes call Uncrossed() as expected so you may have to click on several red apples.
When an obj Move()s into another obj, Uncrossed() is called on any atoms the obj was overlapping.
]obj.Move(obj) will do one of the following (seen during testing)
-Properly call Uncrossed().
-Call Uncrossed() on nearly everything between it an the right edge of the Z level.
-Call Uncrossed() on nearly everything between it and **the bottom right corner of the z level**.
-Not call Uncrossed() at all.
Does the problem occur:
Every time? Or how often?: Fairly often
In other games?: Yes
In other user accounts?: Yes
On other computers?: Yes
When does the problem NOT occur?
When you Move() an obj to a turf.
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.)
I know that this (or something similar) was around in 513 but didn't look deeper to make sure it had the same results.
Nothing comes to mind.
Oct 5 2021, 4:34 pm