Чтение онлайн

на главную - закладки

Жанры

Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript

Розенцвейг Гэри

Шрифт:

Преимущество использования одной функции для контроля всей навигации заключается не только в меньшем количестве нажатий на клавиши при программировании. Предположим, что к моменту завершения программы вы 100 раз обратились к функции gotoFrame. Затем вы решили удалить окно textFrameLabel или немного изменить его. Если бы вы не использовали функцию, то вам пришлось бы удалять или изменять код в 100 местах. Но так как все ваши навигационные кнопки используют функцию gotoFrame, то для изменения их поведения достаточно изменить только ее.

Урок 14.

Массивы

Никакое введение в язык программирования не было бы полным без рассмотрения массивов. Хотя множество простых операций может быть выполнено без применения массивов, человек, не умеющий работать с массивами, не может считаться настоящим программистом.

Массив является разновидностью переменной. Переменные, которые вы использовали до сих пор, могут содержать одно значение: число или строку. Массив может содержать ни одного, одно и больше значений. Вот как выглядит массив:

myArray = ["Apple", «Orange», «Peach», «Plum»];

Для обращения к элементу массива используется специальный синтаксис:

myItem = myArray[1];

Переменная myItem будет иметь значение «Orange», так как отсчет положений в массивах, так же как и в строках, начинается с 0. Несложно догадаться, что массивы применяются для хранения множества однотипных данных. Для выполнения операций над массивами предназначено несколько функций. Прежде всего, давайте рассмотрим, как создаются массивы. Это можно сделать несколькими способами. До сих пор мы рассматривали только способ, при котором все элементы массива задаются сразу. Вы также можете создать пустой массив и добавлять в него элементы:

myArray = new Array;

myArray.push("Apple");

myArray.push("Orange");

myArray.push("Peach");

myArray.push("Plum");

Первая строка данного кода создает пустой массив. Каждая из следующих четырех строк добавляет в массив один элемент при помощи команды push. По сравнению со способом «все сразу» данный способ кажется более сложным, однако он незаменим при построении массивов, все элементы которого не известны заранее. Например, вы можете позволить пользователю ввести данные, а затем добавить их в массив. Длину массива можно узнать так же, как и длину строки:

myLength = myArray.length;

Вы уже знаете, как получить доступ к отдельному элементу массива при помощи квадратных скобок. Используя команду pop, вы сможете взять из массива значение последнего размещенного там элемента. При этом из массива он удаляется. В нашем примере мы передаем его в окно Output. Следующий сегмент кода добавляет в массив четыре элемента, а затем, используя цикл while, удаляет конечные элементы массива и перемещает их в окно Output:

myArray = new Array;

myArray.push("Apple");

myArray.push("Orange");

myArray.push("Peach");

myArray.push("Plum");

while (myArray.length>0) {

trace(myArray.pop);

}

Первой строкой в окне Output является «Plum», последней – «Apple», так как команда pop берет элементы в порядке, обратном помещению элементов массива (стековая схема: последний вошел, первый вышел – First In Last Out). Массивы можно упорядочить. В случае, если элементами массива являются числа, Flash

упорядочит их в цифровой последовательности. Если это строки, они будут упорядочены по алфавиту:

myArray = new Array;

myArray.push("Peach");

myArray.push("Orange");

myArray.push("Apple");

myArray.push("Plum");

myArray.sort;

trace(myArray.toString);

Обратите внимание на последнюю строку кода, которая содержит функцию toString для приведения массива к виду, пригодному для отображения в окне Output, то есть преобразует все элементы массива в строку. При помощи данной функции вы можете убедиться в том, что массив соответствует вашим требованиям. Наконец, функция splice позволяет удалять один или несколько элементов из массива:

myArray = [(«Apple», «Orange», «Peach» «Plum»]; myArray.splice(2,1);

Команда splice может выполнять несколько функций. В данном примере она содержит два параметра. Первый задает позицию, с которой начинается удаление элементов (считая от 0!), второй – количество удаляемых элементов. В нашем случае будет удален элемент «Peach», находящийся в позиции 2. Изменив второй параметр на 2, вы удалите и «Peach» и «Plum». Убрав второй параметр, вы удалите все элементы массива. Функция splice используется также для добавления элементов. Добавляемый элемент задается третьим параметром:

myArray = [(«Apple», «Orange», «Peach», «Plum»]; myArray.splice(2,1, "Pear");

В данном примере удаляется элемент «Peach», а его место занимает элемент «Pear». Четвертый и последующие параметры используются для добавления второго и более элементов. В случае, если значение второго параметра окажется равно 0, никакие элементы удалены не будут. Теперь, когда у вас есть представление об основах ActionScript, самое время применить эти знания для создания вполне профессиональных фрагментов Flash-роликов. В следующей главе мы создадим несколько подобных фрагментов, и затем, начиная с главы 5 "Создание визуальных эффектов", приступим к написанию целых программ.

Глава 3 Элементы ActionScript для создания игр

• Урок 15. Контроль воспроизведения клипа

• Урок 16. Управление свойствами клипа

• Урок 17. Применение метода "Перетащи и положи" к клипам

• Урок 18. Клипы и уровни

• Урок 19. Копирование клипов

• Урок 20. Управление несколькими клипами

• Урок 21. Пересечение объектов

• Урок 22. Изменения содержимого экрана с помощью клипов

• Урок 23. Ввод команд с клавиатуры

• Урок 24. Воспроизведение звука

Мы закончили изучение основ ActionScript, теперь давайте рассмотрим более сложные темы. В следующих 10 уроках обсуждаются некоторые приемы, которые используются для создания игр, описанных в данной книге.

Урок 15. Контроль воспроизведения клипа

Исходный файл: Mcplayback.fla

Клипы представляют собой как бы небольшие ролики внутри основного Flash-ролика. Они включают полноценную временную шкалу со слоями, а также большинство элементов основного ролика. И основной Flash-ролик, и клипы можно контролировать при помощи команд play и stop.

Поделиться:
Популярные книги

Черный дембель. Часть 5

Федин Андрей Анатольевич
5. Черный дембель
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Черный дембель. Часть 5

30 сребреников

Распопов Дмитрий Викторович
1. 30 сребреников
Фантастика:
попаданцы
альтернативная история
фэнтези
фантастика: прочее
5.00
рейтинг книги
30 сребреников

Жребий некроманта 2

Решетов Евгений Валерьевич
2. Жребий некроманта
Фантастика:
боевая фантастика
6.87
рейтинг книги
Жребий некроманта 2

Охота на разведенку

Зайцева Мария
Любовные романы:
современные любовные романы
эро литература
6.76
рейтинг книги
Охота на разведенку

Чужбина

Седой Василий
2. Дворянская кровь
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Чужбина

Возвышение Меркурия. Книга 4

Кронос Александр
4. Меркурий
Фантастика:
героическая фантастика
боевая фантастика
попаданцы
5.00
рейтинг книги
Возвышение Меркурия. Книга 4

Надуй щеки! Том 3

Вишневский Сергей Викторович
3. Чеболь за партой
Фантастика:
попаданцы
дорама
5.00
рейтинг книги
Надуй щеки! Том 3

Идеальный мир для Лекаря 16

Сапфир Олег
16. Лекарь
Фантастика:
боевая фантастика
юмористическая фантастика
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 16

По воле короля

Леви Кира
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
По воле короля

Он тебя не любит(?)

Тоцка Тала
Любовные романы:
современные любовные романы
7.46
рейтинг книги
Он тебя не любит(?)

Курсант: назад в СССР 9

Дамиров Рафаэль
9. Курсант
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Курсант: назад в СССР 9

Штуцер и тесак

Дроздов Анатолий Федорович
1. Штуцер и тесак
Фантастика:
боевая фантастика
альтернативная история
8.78
рейтинг книги
Штуцер и тесак

Камень Книга седьмая

Минин Станислав
7. Камень
Фантастика:
фэнтези
боевая фантастика
6.22
рейтинг книги
Камень Книга седьмая

Хозяйка дома в «Гиблых Пределах»

Нова Юлия
Любовные романы:
любовно-фантастические романы
5.75
рейтинг книги
Хозяйка дома в «Гиблых Пределах»