Опубликован: 04.11.2006 | Уровень: специалист | Доступ: платный
Урок 3:

Адресация

< Урок 2 || Урок 3: 1234567 || Урок 4 >

Обращение к экземпляру фильма-символа

Вы помещаете на монтажный стол экземпляр фильма-символа и присваиваете экземпляру имя. Это имя (вместе с указанием отношений с другими монтажными столами) и используется при адресации к нему. Допустим, вы поместили экземпляр фильма-символа на основной монтажный стол и присвоили экземпляру имя alien. Абсолютный путь к этому экземпляру будет выглядеть так:

_root.alien

Этот абсолютный путь вы можете использовать в скрипте на любом монтажном столе проекта для обращения к данному конкретному экземпляру.

Однако для того, чтобы обратиться к этому экземпляру с основного монтажного стола (который является родителем по отношению к этому экземпляру), достаточно указать относительный путь:

alien

Если же мы помещаем тот же экземпляр в другой экземпляр фильма-символа, с именем spaceship, который сам находится на основном монтажном столе, абсолютный путь будет таким:

_root.spaceship.alien

Теперь отношения между корневым монтажным столом и экземпляром alien иные, и для обращения к этому экземпляру с основного монтажного стола нужно указать такой относительный путь:

spaceship.alien

Поскольку экземпляр spaceship теперь является родителем экземпляра alien, то для него относительный путь к фильму-символу alien будет:

alien

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

  1. Откройте файл movieclipTarget1.fla из папки Lesson03/Assets.

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

  1. Открыв инспектор Параметры (Property), выделяйте по очереди каждый экземпляр на сцене и присваивайте ему имя, соответствующее тому, что этот экземпляр при загрузке помещает в переменную words.

Например, если вы выделили экземпляр, который при загрузке присваивает переменной words значение "I’m Derek", то этому экземпляру следует дать имя Derek. То же самое и для других экземпляров, присутствующих на сцене.


  1. Двойным щелчком откройте один из экземпляров для редактирования на месте. На его монтажном столе находится экземпляр фильма-символа Hatfield Child. Выделите этот экземпляр и присвойте ему (в инспекторе Параметры) имя myKid. Вернитесь на основной монтажный стол.

Теперь у нас шесть именованных экземпляров фильмов-символов, на которые мы можем указать с любого монтажного стола. Абсолютные пути к ним таковы:

_root.Derek
_root.derek.myKid
_root.Kathy
_root.Kathy.myKid
_root.Ashlie
_root.Ashlie.myKid
  1. Выделите экземпляр с именем Kathy и добавьте следующий скрипт к уже имеющемуся в панели Действия (после строки this._rotation = this._rotation + .5;):
myKid._rotation = myKid._rotation + 20;
  _root.Derek.myKid._xscale = _root.Derek.myKid._xscale + .5;
  _root.Derek.myKid._yscale = _root.Derek.myKid._yscale + .5;
  _root.Ashlie.myKid._y = _root.Ashlie.myKid._y - .5;

Эти строки мы вставили в обработчик события mouseMove, значит, они будут выполняться при каждом перемещении мыши. Поскольку скрипт присоединен к экземпляру с именем Kathy, в первом действии использован относительный путь для указания на экземпляр myKid, находящийся внутри экземпляра Kathy. При каждом перемещении мыши свойство "поворот" этого экземпляра myKid увеличивается на 20. В двух следующих действиях используется абсолютный путь, указывающий на экземпляр myKid внутри экземпляра Derek. Действия масштабируют экземпляр – он будет увеличиваться на 0,5 процента при каждом перемещении мыши. В последнем действии также используется абсолютный путь, на сей раз указывающий на экземпляр myKid в экземпляре Ashlie. При каждом перемещении мыши этот экземпляр должен перемещаться вверх на 0,5 пикселя.

  1. Выполните команду Управление > Проверить фильм (Control > Test Movie).

Попробуйте перемещать мышь – экземпляры фильма-символа myKid, к которым мы обратились, будут выполнять запрограммированные нами действия.

  1. Закройте окно тестирования фильма и вернитесь в среду разработки. Сохраните файл как movieclipTarget2.fla.

Упражнение закончено, как и наша работа с этим файлом.

< Урок 2 || Урок 3: 1234567 || Урок 4 >
Салтанат Бектегенова
Салтанат Бектегенова

Дострочное пересдача экзамена

 

Евгений Стародубцев
Евгений Стародубцев

Вот задание:

7. Открыв панель Действия (Actions) и установив ее в Экспертный режим(Expert Mode), выделите кадр 1 слоя Actions и введите следующий скрипт:

Евгения Дегтяренко
Евгения Дегтяренко
Украина, Запорожье
Анна Елисеева
Анна Елисеева
Россия, Великий Новгород, Ногородский государственный университет имени Ярослава Мудрого, 2003