Alright, as I was going back to optimize my code, I went back to implement TilePtrMapped() for movement. I have circumvented this by creating a list with each tile "code" and used the list to detect valid moving. Obviously since TilePtrMapped() isn't working in my code, I'm using it incorrectly. I went and delved into PT's The World's Hardest Game code in ICE. When I got to his sprite movement, I had not idea what was going on:
Code: If getKey(1) and *{TilePtr(TILEMAP,X,Y+14)}plotcross*{TilePtr(TILEMAP,X+13,Y+14)}<4
Y+2->Y
End
If getKey(2) and *{TilePtr(TILEMAP,X-1,Y)}plotcross*{TilePtr(TILEMAP,X-1,Y+13)}<4
X-2->X
End
If getKey(3) and *{TilePtr(TILEMAP,X+14,Y)}plotcross*{TilePtr(TILEMAP,X+14,Y+13)}<4
X+2->X
End
If getKey(4) and *{TilePtr(TILEMAP,X,Y-1)}plotcross*{TilePtr(TILEMAP,X+13,Y-1)}<4
Y-2->Y
End
I have no idea how, say the Code: *{TilePtr(TILEMAP,X+14,Y)}plotcross*{TilePtr(TILEMAP,X+14,Y+13)}<4
works or what this saying, just that some byte is being flipped.
If someone could clarify what this means and if I can implement in my code, that would be great. Looking at PT_'s documentation and commands list isn't helping out very much.