Иллюстрированный самоучитель по созданию Flash-игр

Бита и блоки в трех измерениях

Вот еще два полезных фрагмента кода. Первый удаляет шар и биту. Если этого не сделать, они так и будут висеть, как в кадре "game over" так и в кадре "level over".

function rernoveBallAndPaddle() {
    paddle.removeMovieClip();
    ball.removeMovieClip();
}

Ну а следующая функция, removeBricks, удаляет блоки из этих же кадров. Вызывается при нажатии соответствующих кнопок.

function removeBricks() {
    for (var i = 0; i < bricks.length; i++) {
        bricks[i].removeMovieClip();
    }
}

Первый кадр ролика – "start" – присваивает переменной gameLevel значение 1 и останавливает ролик.

gameLevel = 1;
stop();

Чтобы перейти к следующему кадру, надо нажать кнопку. Вот ее код.

on(press) {
    GotoAndStop("Play");
}

Все функции, которые мы рассмотрели, находятся в кадре "Play". Еще там есть команда, вызывающая функцию initGame. Когда уровень пройден, игра переходит к кадру "level over". Так как клип "action" находится в другом кадре, то все шары автоматически останавливаются. При нажатии единственной в этом кадре кнопки все блоки удаляются, и функция initGame может расставить их заново при переходе на следующий уровень.

on(press) {
    removeBricks();
    gotoAndStop("Play");
}

При нажатии кнопки в кадре "game over" блоки тоже удаляются, но игра переходит к кадру "start".

on(press) {
    removeBricks();
    gotoAndStop("Start");
}

К сведению

Игра, в общем то, лишь приблизительно воспроизводит трехмерный мир. Например, когда мяч отлетает в угол, компонент скорости z меняется таким образом, что суммарный вектор скорости остается неизменным Вы можете попробовать спрятать курсор перед началом игры с помощью Mouse.hide (), только не забудьте вернуть его на место по окончании игры с помощью Mouse.show ().

Другие возможности

Очень простой способ внести дополнение в эту игру – поместить какой-либо рисунок за блоками. Это можно сделать вообще без использования ActionScript. Можно также сделать, чтобы в конце каждого уровня пользователь видел другую картинку.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.