ААААА; Чёрт побери;
Jsовским же языком написано:
if (key == direct)
Если нажатая стрелочка совпадает с направлением переместить перса.
else
В противном случае повернуть перса. Вот этот код и поворачивает перса.
player.row(2); speed = 10; prop = 'left'
А Нам нужно другое.
player.next();
var nextPos = parseInt(player.css(prop),10) + speed;
if (prop == 'top') {
if(nextPos < 0) nextPos = BOARD_HEIGHT - 1;
player.css(prop, nextPos % BOARD_HEIGHT);
} else if (prop == 'left') {
if(nextPos < 0) nextPos = BOARD_WIDTH - 1;
player.css(prop, nextPos % BOARD_WIDTH);
}
Дельше убираем всё лишнее и оборачиваем задержкой.
setTimeout(function() {
//speed = ; //Можно попробовать поиграться со скоростью. И посмотреть что из этого выйдет. Видимо по структуре кода, игра пошаговая. И зажатия клавиш в принципе нет.
player.next();
var nextPos = parseInt(player.css(prop),10) + speed;
if(nextPos < 0) nextPos = BOARD_WIDTH - 1; //Не знаю зачем этот if, оставлю его на всякий случай;
player.css(prop, nextPos % BOARD_WIDTH);
}, 3000);