a 2D Java game  -  tile based movement