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

Дедукция

Когда игрок проигрывает, функция showSolution создает пять новых экземпляров клипа и с их помощью отображает правильный вариант. В ролике, это решение располагается в нижней части игрового поля.

function showSolution() {
    // Размещаем правильный вариант внизу экрана.
    for (i = 0; i < 5; i++) {
        attachMovie("rock", "solution" + i, 1001 + i);
        clip = _root["solution" + i];
        clip._x = solutionx + i * horizSpace;
        clip._y = solutiony;
        clip.foroAndStop(solution[i] + 2);
    }
}

На рис. 14.6 показан фрагмент ролика, когда игра уже проиграна. Функция showSolution поместила правильную последовательность (решение) внизу экрана.

Иллюстрированный самоучитель по созданию Flash-игр › Головоломки › Дедукция
Рис. 14.6. Игра проиграна, код поместил правильную последовательность решения внизу экрана

Единственный оставшийся фрагмент кода – небольшой сценарий, прикрепленный к кнопке в каждом клипе "rock". Его задача состоит в том, чтобы переключать цвета один за другим и возвращаться к первому кадру (пустому месту), если пользователь щелкнул определенное число раз. Этот код также проверяет свойство active, чтобы убедиться, что ряд – текущий.

on(press) {
    if (active) {
        f = _currentFrame + 1;
        if (f > 6)
            f = 1;
        gotoAndStop(f);
    }
}

К сведению

He забудьте присвоить последним двум кадрам клипа "rock" метки "white” и "black". Также обязательно поместите кнопку Done внутрь клипа "done", которому потом необходимо присвоить имя "done" в панели Linkage Properties. К сожалению, это необходимо, так как ActionScript не может динамически создавать кнопки сами по себе. Считайте, что клип "done" – это просто "обертка" для кнопки Done.

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

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

Чтобы изменить уровень сложности игры попробуйте изменить количество попыток угадать решение. Также можно увеличить или уменьшить число цветов и мест для них.

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