You can’t read the values of multiple objects through GD without Javascript or some other function because you can only read the values of 1 object at a time. Otherwise it just gets the values from the oldest or first instance of the object. You need to pick them individually or store the values in a scene or global array.
If your objects already have X, Y variables then you can pick the objects by checking for objects with the X, Y plus or minus the current values. You can save the current values in variables.
I used the Create multiple copies of an object extension to test this. It automatically adds a row and column ID.
I’m assuming the Land objects are placed adjacent to each other with no gaps, like a grid. In which case, this works for me (Land object has 4 animations to it).