I spent a good part of my day trying to understand this weird edge case where floor() seemed to give me the wrong result. TLDR, x and y are float32s (opposed to user-defined instance variables being float64s) and can sometimes give you unexpected results when working with them.
#gamemaker #gamedev