Мяч и бита
Функция movePaddle идентична одноименной функции предыдущей игры. Однако необходимо добавить функцию moveComputerPaddle, управляющую правой битой, которая будет перемещать биту только в том случае, если мяч летит вправо. Бита будет перемещаться вверх, если мяч расположен выше нее, и вниз, если ниже.
Скорость передвижения биты устанавливается в начале функции. Чем выше это значение, тем быстрее бита будет реагировать на перемещения мяча.
function moveComputerPaddle() { // Устанавливаем скорость биты, управляемой компьютером. moveAmount = 8; // Выясняем, движется ли мяч в этом направлении, if (dx > 0) { // Перемещаем биту вверх. if (y < computerPaddle._y - moveAmount) { computerPaddle._y -= moveAmount; // Перемещаем биту вниз. } else if (y > computerPaddle._y + moveAmount) { computerPaddle._y += moveAmount; } } }Еще один важный фрагмент кода входит в кадр "start game" и устанавливает исходные значения количества мячей и очков. Эти переменные не могут быть вставлены в функцию startLevel, так как они должны быть установлены только в начале игры, а не перед тем, как подается мяч.
numBalls = 7; computerScore = 0; playerScore = 0; stop();К сведению
В дополнение к уже описанным элементам необходимо создать текстовые поля playerScore и computerScore и поместить их на рабочее поле. Они должны быть расположены во всех кадрах, кроме "start game", таким образом, чтобы были видны между подачами мяча и в конце игры.
Другие возможности
Изменить количество мячей просто: достаточно изменить только одно значение в кадре "start game". Изменяя другие параметры, можно продлить или усложнить игру. Есть и другие варианты усовершенствования игры – например, увеличить скорость биты компьютера, поменяв одно значение в функции moveComputerPaddle.
Также можно сделать компьютер "умнее". Например, написать код, который будет предугадывать место, куда прилетит мяч, и передвигать туда биту вместо того, чтобы просто перемешать ее вслед за мячом. При пересечении границ игрового поля мяч будет ударяться о верхнюю или нижнюю стенку только один раз, так что определить предполагаемое место можно с помощью простых математических расчетов, если вы хорошо владеете математикой.
