Маленькие советы (Часть 2.)
 

Работа с ActionScript

Работа с Tell Target
Пока один совет. Не всегда удобно отсылать действия нужному таргету на уровни выше. Во-первых, не работает Traget Editor. Во-вторых, трудно сосчитать количество уровней. Но все очень просто! Нужно выйти на нулевой уровень, зайти в свойства кадра. Вызвать действие Tell Target и создать путь до нужного таргета. Дело в том, что если путь начинается на слеш (/) то Flash понимает, что путь начинается с нулевого уровня. Теперь копируете полученный путь. Выходите из свойств кадра без сохранения, заходите в нужный таргет и создаете нужное действие с готовым путем.

ActionClip
Вам не всегда будет удобно редактировать ActionScript, пользуясь встроенным редактором Flash. Например, вам нужно будет поменять название переменной во всех акциях скрипта (например, в рулетке общая длина использованного скрипта составляет 10 страниц word-а) или создать набор переменных, основываясь на готовых значениях (например, из List Variables).

Для этого воспользуйтесь простой утилитой ActionClip. Скопируйте свой ActionScript в клипборд и поместите в редактор, который вас удовлетворяет. Я, например, пользуюсь просто Word-ом. Отредактируйте как нужно. И опять скопируйте в буфер. Запустите утилиту. И конвертируйте клипборд. Теперь смело вставляйте во Flash.

Центр таргета
Для некоторых программных эффектов необходимо чтобы центр таргета был смещен на некоторую величину, а иногда этой величиной хотелось бы и управлять. Кто сталкивался с этой проблемой, сразу пытается использовать Edit Centr. Однако он придуман исключительно для Twinning. И при действиях ActionScript не работает. Синусы-косинусы не всегда хороши, так как выполняются циклами и всегда есть опасение, что при 200.000 операциях плэйер Flash зависнет.

Есть совсем простое решение. Нужно сдвинуть содержимое таргета (внутри) на некоторую величину. Если это нужно делать программно, то содержимое таргета нужно поместить еще в таргет и управлять координатами этого таргета. И все!

Программное вращение таргета
Нет ничего совершенного. И Flash в том числе. При вызове действия поворота (например, Set Property (_target, Rotation) = _rotation + 10) _xscale и _yscale уменьшаются на очень малую величину.

Поэтому мой совет. Если действие будет повторяться регулярно, обязательно поставьте действия:
Set Property (_target, X Scale) = int (_xscale)
Set Property (_target, YScale) = int (_yscale)

Регистр букв в переменных
Для поиска внутри текста необходимо сверять текстовые переменные (variables). Оператор eq предполагает точное соответствие. А иногда нужно чтобы не учитывался регистр букв. Например "переменная" eq "ПереМеннАя". Что же делать? Решение не очевидное, но опять же простое. Взгляните на этот скрипт:"

Set Variable: var1 = "Equals"
If (eval (var2) eq "Equals")
Trace ("Соответствие!")
Else
Trace ("Нет соответствия")
End If
Set Variable: var1 = ""

Принцип в том, что имя переменной может быть написано с любым регистром, но это будет одна переменная. Понятно, что вместо Trace нужно поставить нужные акции.

 
Автор: Eвгений Потапенко
 
Оригинал статьи: http://woweb.ru/publ/4-1-0-66