| ||||||||||
SWFAction(PHP 4 >= 4.0.5) SWFAction - создаёт новую Action/Акцию. Описаниеnew swfaction (string script)
swfaction() создаёт новую Action и компилирует данный скрипт в SWFAction-объект. Синтаксис скрипта основан на языке C, но большими изъятиями - машина SWF-байтокода очень сильно упрощена. К примеру, мы не может реализовать вызовы функции без большого объёма дополнительной работы, поскольку jump-байтокод имеет жёстко кодированное значение смещения. Без push вашего вызывающего адреса в стэк и возвращения - каждой функции необходимо будет знать точно, куда возвращать. Что же осталось? Компилятор распознаёт следующие лексемы:
Типизированные данные отсутствуют; все значения в SWF action-машине хранятся как строки.
Кроме того, можно использовать следующие команды:
Есть и ещё нечто сверхъестественное. Выражение frameLoaded(num) может
использоваться в операторах if и циклах while для проверки того, может ли
данный кадр с номером быть загружен. Movie-клипы (с этого момента всё это - спрайты) имеют свойства. Вы можете читать все их и устанавливать некоторые из них:
Так, можно установить позицию x спрайта как /box.x = 100;. Но почему слэш перед box? Таким способом flash отслеживает спрайты в клипе, точно как в файловой системе unix - здесь показано, что box находится на верхнем уровне. Если именованный бокс спрайта имел внутри себя другой именованный спрайт, вы можете установить его x-позицию: /box/biff.x = 100;. Как минимум, я так думаю; исправьте меня, если это не так (здесь и далее в этом файле это комментарии автора - прим. перев.). Этот простой пример перемещает красный квадрат через окно. Следующий простой пример отслеживает вашу мышь на экране.
Вот то же, что и выше, но более красиво раскрашенные шарики ...
Следующий простой пример обрабатывает акции клавиатуры. (Вам, возможно нужно щёлкнуть на окне для передачи ему фокуса. И, возможно, вы должны будете также оставить мышь в кадре. Если вы знаете, как передавать фокус кнопкам программно, это не обязательно.)
| ||||||||||
|