Ты хочешь и рыбку съесть и на трамвае уехать
Для плавного передвижения с помощью кейдовн по клеточному уровню нужно написать намного более сложный код.
Просто заюзай несколько дополнительных переменных.
Контролируй нахождение игрока на клетке(центре) и введи переменные плавного набора скорости и остановки