Показать сообщение отдельно
  #14 (permalink)  
Старый 11.01.2011, 14:26
Аватар для Shaci
:-/
Отправить личное сообщение для Shaci Посмотреть профиль Найти все сообщения от Shaci
 
Регистрация: 28.09.2009
Сообщений: 1,126

Сообщение от B~Vladi Посмотреть сообщение
Почему бы код
//выход за пределы поля
if (snakeArray[lastI].x > 19) {
  alert("You LOSE" + " POINTS: " + POINTS);
  clearInterval(idInterval)
  return;
} else if (snakeArray[lastI].y > 19){
  alert("You LOSE" + " POINTS: " + POINTS);
  clearInterval(idInterval)
  return;
} else if (snakeArray[lastI].y < 0) {
  alert("You LOSE" + " POINTS: " + POINTS);
  clearInterval(idInterval)
  return;
} else if (snakeArray[lastI].x < 0) {
  alert("You LOSE"  + " POINTS: " + POINTS);
  clearInterval(idInterval)
  return;
}

не записать так:
if (snakeArray[lastI].x > 19 || snakeArray[lastI].y > 19 || snakeArray[lastI].y < 0 || snakeArray[lastI].x < 0) {
  alert("You LOSE POINTS: " + POINTS);
  clearInterval(idInterval)
  return;
}
да ,конечно
я просто не оптимизировал код

Цитата:
И ещё. Код в блоках if else вроде одинаковый? (строки с 189 по 240). Тогда нет смысла вообще проверять направление.
там 2 строчки разные в зависимости от направления
которые nextX и nextY вычисляют
Ответить с цитированием