Словарь ActionScript. Краткий обзор

         

_Target


Синтаксис

instancename._target

Аргументы

instancename имя экземпляра муви-клипа.

Описание

Свойство (только для чтения); возвращает полный путь (target path) до экземпляра муви-клипа, указанного в аргументе instancename.

Player

Flash 4 или более новый.



TargetPath


Синтаксис



targetpath(movieClipObject);

Аргументы

movieClipObject Ссылка (например: _root или _parent) на муви-клип, до которого определяется путь (target path).

Описание

Функция; возвращает в виде строки путь (target path) до movieClipObject. Возвращаемая строка имеет дот-нотацию (разделитель параметров в виде точки - прим.перевод.). Если требуется возвращать строку в слэш-нотации, то следует использовать свойство _target.

Player

Flash 5 или более новый.

Пример

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

targetPath (Board.Block[index*2+1]) {

play();

}

Это эквивалентно:

tellTarget ("Board/Block:" + (index*2+1)) {

play();

}

См. также

eval



TellTarget


Синтаксис

tellTarget(target) {

statement;

}

Аргументы

target Строка определяющая путь (target path) до управляемой линейки (Timeline).

statement Команды, направляемые на эту линейку.

Описание

Команда; запускает команды, определенные в аргументе statements на линейке (Timeline), указанной в аргументе target. Команда tellTarget полезна для управления навигацией. Назначьте tellTarget кнопкам, которые остановят или запустят клип с какого-нибудь другого места. Можно также сделать переход на другой кадр в том клипе. Например, назначать tellTarget кнопкам, которые останавливают или запускаю воспроизведение клипа на основной линейке или указывают мувиклипам перейти на определенный кадр.

Команда tellTarget очень похожа на команду with, за исключением того, что with понимает клип или другой объект как target, а tellTarget требует указания пути до клипа и не может управлять объектами.

Player

Flash 3 или более новый. Эта команда нежелательна во Flash 5, рекомендуется использовать команду with.

Пример

Этот tellTarget управляет мувиком с именем ball, расположенном на основной линейке. Первый кадр этого мувиклипа пустой и содержит команду stop, поэтому он остается невидимым. Когда нажимается кнопка, содержащая следующую команду, tellTarget указывает мувиклипу ball перейти на второй кадр и начать воспроизводить анимацию с этого кадра.

on(release) { tellTarget("ball") { gotoAndPlay(2); } }

См. также

with



This


Синтаксис

this

Аргументы

None.

Описание

Ключевое слово; ссылается на объект или экземпляр мувиклипа. Ключевое слово this имеет ту же самую цель и функцию в ActionScript, как и в JavaScript, а так же некоторые дополнительные функциональные возможности. В ActionScript, во время его исполнения, this ссылается на образец (instance) мувиклипа, в котором выполняется скрипт. Когда используется метод вызова, this ссылается на тот объект, который содержит в себе выполненный метод.

Player

Flash 5 или более новый.

Пример

В следующем примере, this ссылается на объект Circle:

function Circle(radius){

this.radius = radius;

this.area = math.PI * radius * radius;

}

В этом выражении назначенном кадру, this ссылается на текущий мувиклип:

//установить свойство alpha текущего мувика равным 20.

this._alpha = 20;

В этом выражении, заключенном внутри обработчика onClipEvent, this ссылается на текущий мувиклип:

//когда мувик загружен, запустить для него команду startDrag.

onClipEvent (load) {

startDrag (this, true);

}

См. также

new



ToggleHighQuality


Синтаксис

toggleHighQuality();

Аргументы

Нет.

Описание

Команда; включает и выключает сглаживание (antialiasing) в флеш-плеере. Это может приводить к замедлению скорости воспроизведения клипа на слабых компьютерах. toggleHighQuality оказывает влияние сразу на весь клип.

Player

Flash 2 или более новый.

Пример

Следующий код может быть вставлен в кнопку, которая при нажатии будет включать/выключють сглаживание:

on(release) { toggleHighQuality(); }

См. также

_quality

_highquality



_Totalframes


Синтаксис

instancename._totalframes

Аргументы

instancename имя муви-клипа.

Описание

Свойство (только для чтения); возвращает общее количество кадров в клипе, заданном в аргументе instancename.

Player

Flash 4 или более новый.



Trace


Синтаксис

trace(expression);

Аргументы

expression Строка или выражение, результат обработки которого в режиме тестирования клипа выводится в окне Output.

Описание

Команда; Обрабатывает expression и отображает результаты окне Output во время тестирования клипа.

Используйте trace для создания программных меток и/или вывода в окно Output сообщений при тестировании клипа. Используйте expression параметр для проверки валидности условий или для вывода в Output каких-либо значений. Команда trace подобна функции alert в JavaScript.

Player

Flash 4 или более новый.

Пример

Этот пример взят из игры, в которой "таскаемый" мувик под названием rabbi должен находится по определенному адресу (target). Условный оператор определяет свойство _droptarget и выполняет различные действия, в зависимости от местонахождения rabbi. Команда trace, расположенная в конце скрипта, предназначена для определения местонахождения мувика rabbi и вывода результата в окно Output. Если поведение rabbi не соответствует ожидаемому (например, если указан ошибочный target), значения, выводимые в окно Output командой trace, помогут локализовать и найти ошибку в скрипте.

on(press) {

rabbi.startDrag();

}

on(release) {

if(eval(_droptarget) != target) {

rabbi._x = rabbi_x;

rabbi._y = rabbi_y;

} else {

rabbi_x = rabbi._x;

rabbi_y = rabbi._y;

target = "_root.pasture";

}

trace("rabbi_y = " + rabbi_y);

trace("rabbi_x = " + rabbi_x);

stopDrag();

}



Typeof


Синтаксис

typeof(expression);

Аргументы

expression Строка, муви-клип, объект или функция.

Описание

Оператор; унарный оператор, помещаемый перед отдельным аргументом (выражением). Результат - строка, определяющая является ли выражение строкой, муви-клипом, объектом или функцией.

Player

Flash 5 или более новый.

Пример

a = typeof ("Hello Word!!!");

Результат:

a = "string"



Unescape


Синтаксис

unescape(x);

Аргументы

x Строка с последовательностью шестнадцатеричных (НЕХ) чисел.

Описание

Высокоуровневая функция; оценивает аргумент x как строку, декодирует ее из формата URL-encoded (конвертирует все HEX-последовательности в ASCII символы) и возвращает опять в виде строки.

Player

Flash 5 или более новый.

Пример

Следующий пример иллюстрирует escape-to-unescape процесс конвертации.

escape("Hello{[World]}");

Результат будет следующим:

("Hello%7B%5BWorld%5D%7D');

Использование unescape возвращает в прежний вид:

unescape("Hello%7B%5BWorld%5D%7D")

Результат следующий:

Hello{[World]}



UnloadMovie


Синтаксис

unloadMovie(location);

Аргументы

location Значение уровня или пути (target) до выгружаемого муви-клипа.

Описание

Команда; удаляет (выгружает) из флеш-плеера клип, который до этого был загружен с использованием команды loadMovie.

Player

Flash 3 или более новый.

Пример

Следующий пример выгрузит основной клип, оставив пустым окно плеера:

unloadMovie(_root);

Следующий пример выгрузит клип с уровня 15, когда пользователь нажмет на кнопку:

on(press) {

unloadMovie(_level15);

}

См. также

loadMovie



UpdateAfterEvent


Синтаксис

updateAfterEvent(movie clip event);

Аргументы

movie clip event Событие мувиклипа. Можно определить одно из следующих его значений:

mouseMove Действие, инициализируемое при каждом перемещении мыши. Свойства _xmouse и _ymouse определяют текущую позицию мыши.
mouseDown Действие, инициализируемое при нажатии левой кнопки мыши.
mouseUp Действие, инициализируемое при отпускании (отжатии) левой кнопки мыши.
keyDown Действие, инициализируемое при нажатии клавиши клавиатуры. Использует метод Key.getCode для определения нажатой клавиши.
keyUp Действие, инициализируемое при отпускании (отжатии) клавиши клавиатуры. Использует метод key.getCode для определения нажатой клавиши.

Описание

Команда; независимо от значения частоты кадров в секунду (fps), установленной для клипа, обновляет экран после завершения события клипа, определенного в аргументе. Эта команда не указана в панели команд 1. Использование updateAfterEvent

с командой drag, определяющей свойства _x и _y в течение перемещения мыши, позволяет объектам перемещаться более гладко, без эффекта мерцающего экрана.

Player

Flash 5 или более новый.

См. также

onClipEvent

От переводчика:

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



_Url


Синтаксис

instancename._url

Аргументы

instancename имя муви-клипа.

Описание

Свойство (только для чтения); возвращает URL (адрес) SWF-файла, с которого он был загружен.

Player

Flash 4 или более новый.



Var


Синтаксис

var variableName1 [= value1] [...,variableNameN [=valueN]];

Аргументы

variableName Имя объявляемой переменной.

value Значение присваиваемое переменной.

Описание

Команда; используется для объявления локальных переменных. Если локальные переменные объявляются внутри функции, то они действуют только в ее пределах. Если переменные не объявлены внутри блока, но список команд был выполнен через вызов call, переменные являются локальными и действуют до конца текущего списка. Если переменные не объявлены внутри блока и текущий список команд не выполнялся командой call, переменные не являются локальными.

Player

Flash 5 или более новый.



_Visible


Синтаксис

instancename._visible instancename._visible = Boolean;

Аргументы

Boolean Значения true или false, определяющие будет ли клип видим или нет.

Описание

Свойство; определяет будет ли видим муви-клип, указанный в аргументе instancename. Невидимый мувик является недоступным для пользователя. Например, кнопки в муви-клипе со значением _visible равным false, не могут быть нажаты.

Player

Flash 4 или более новый.



Void


Синтаксис

void (expression);

Аргументы

expression Любое выражение.

Описание

Оператор; унарный оператор отбрасывающий значение expression и возвращающий неопределенное (undefined) значение. Оператор void часто используется для оценки URL при тестировании побочных эффектов без отображения оцениваемого выражения в окне броузера (сорри, прямее не перевелось). void также используется в операциях сравнения == для тестирования undefined (неопределенных) значений.

Player

Flash 5 или более новый.

Пример

a = void(f2+15);

Результат:

a = undefined



While


Синтаксис

while(condition) {

statement(s);

}

Аргументы

condition Условие, проверяемое каждый раз при выполнении команды while. Если результат проверки соответствует истине (true), исполняется оператор(ы), указанный(е) в statement(s).

statement(s) Оператор(ы), исполняемый(е) в том случае, если условие соответствует истине (true).

Описание

Команда; выполняет оператор или серию операторов в цикле, пока условный аргумент соответствует истине (true). В конце каждого while-блока цикл перезапускается, с предварительной проверкой условия. Если условие не соответствует истине (false) или эквивалентно нулю, происходит переходит на следующую после while команду.

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

Player

Flash 4 или более новый.

Пример

Это пример дублирования пяти мувиков, каждый из которых получает случайные координаты x и y, свойства xscale, yscale и _alpha. Переменная foo инициализируется со значения 0. Аргумент condition устанавливается таким, что while цикл будет выполнен пять раз или пока значение переменной foo будет меньше 5. Внутри while цикла мувик клонируется и через setProperty получает новые свойства. Последний оператор цикла увеличивает значение foo, и так происходит до тех пор, пока foo не достигнет значения 5, после чего при очередной проверке аргумента condition будет получено false и цикл завершит работу.

on(release) { foo = 0; while(foo < 5) { duplicateMovieClip("/flower", "mc" + foo, foo); setProperty("mc" + foo, _x, random(275)); setProperty("mc" + foo, _y, random(275)); setProperty("mc" + foo, _alpha, random(275)); setProperty("mc" + foo, _xscale, random(200)); setProperty("mc" + foo, _yscale, random(200)); foo = foo + 1; } }

См. также

do... while

continue



_Width


Синтаксис

instancename._width

instancename._width =value;

Аргументы

value Ширина клипа в пикселах.

instancename Имя муви-клипа, у которого изменяется свойство _width (ширина).

Описание

Свойство; устанавливает ширину клипа. В предыдущих версиях Flash свойства _height и _width были доступны только для чтения, во Flash 5 они могут быть заданы.

Player

Flash 4 - только для чтения. Во Flash 5 или более новом это свойство может быть задано.

Пример

Следующий код задает высоту и ширину муви-клипа когда пользователь нажимает на кнопку мыши:

onclipEvent(mouseDown) {

_width=200;

_height=200;

}

См. также

_height



With


Синтаксис

with (object) { statement(s);

}

Аргументы

object Экземпляр ActionScript объекта или мувиклипа.

statement(s) Команда или группа команд, заключенных в фигурные скобки.

Описание

Команда; временно изменяет область контекстного действия (или путь), используемые для определения выражений и команд в statement(s). После выполнения команды with, область действия восстанавливается к первоначальному значению.

Object соответствует контекстной области, в которой читаются свойства, переменные и функции. Например, если object - myArray и два его свойства определены, как length и concat, эти свойства автоматически читаются как myArray.length и myArray.concat. В другом примере, если object есть state.california, то это то же самое, как если бы любая команда или операторы внутри команды with были вызваны изнутри экземпляра california.

Для нахождения значения идентификатора в statement(s), ActionScript начинает поиск в начале контекстной области, определенной object и ищет их в каждом уровне контекста в характерном порядке.

Контекстная область, используемая командой with, определяет идентификаторы начиная с первого элемента следующего списка и до последнего:

object вызванный изнутри команды with
object вызванный наиболее удаленным местом команды with
Активированный объект (временный объект, созданный автоматически, когда функция вызвана для хранения локальных переменных.)
Мувиклип, содержащий текущий исполняемый скрипт
Глобальный объект (предопределенные объекты, такие как Math, String)

Во Flash 5 команда with заменяет нежелательную команду tellTarget. Предпочтительнее использовать with вместо tellTarget, потому что стандарт ActionScript расширен к стандарту ECMA-262. Принципиальное различие между with и tellTarget командами то, что with обращается к клипу или другим объектам как к их аргументам, в то время как tellTarget обращается к пути (target path), идентифицирующем мувиклип и не может использовать объекты.

Для установки переменной внутри команды with, она должна быть объявлена снаружи или должен быть введен полный путь до линейки (Timeline) на которой необходимо разместить переменную. Если вы установили переменную в команде with без ее объявления, команда with будет искать значение согласно контексту. Если переменная уже не существует, новое значение будет установлено на линейке, с которой команда with была вызвана.






Пример



Следующий пример устанавливает свойства x и y экземпляра someOtherMovieClip и затем командует ему перейти на третий кадр и остановиться:

with (someOtherMovieClip) { _x = 50; _y = 100; gotoAndStop(3); }

Следующий отрывок кода показывает, как можно написать предшествующий пример без использования команды with:

someOtherMovieClip._x = 50; someOtherMovieClip._y = 100; someOtherMovieClip.gotoAndStop(3);

Этот код также можно написать с использованием команды tellTarget:

tellTarget ("someOtherMovieClip") { _x = 50; _y = 100; gotoAndStop(3); }

Использование команды with полезно для одновременного вызова многих элементов в контекстном листе. В следующем примере встроенный объект Math помещен в начало объектной области (контекста). Установка Math, как объекта по умолчанию, приводит идентификаторы cos, sin и PI к Math.cos, Math.sin и Math.PI соответственно. Идентификаторы a, x, y и r - не методы или свойства объекта Math, но так как они существуют в объектной области (контексте) функции polar, они приводятся к к соответствующим локальным переменным.

function polar(r){ var a, x, y with (Math) { a = PI * r * r x = r * cos(PI) y = r * sin(PI/2) } trace("area = " +a) trace("x = " + x) trace("y = " + y) }

Возможно использование вложенных команд with для доступа к информации во многих контекстных областях. В следующем примере экземпляры fresno и salinas являются дочерними по отношению к california. Оператор устанавливает значения _alpha для fresno и salinas без изменения значения _alpha у california.

with (california){ with (fresno){ _alpha = 20; } with (salinas){ _alpha = 40; } }



См. также



tellTarget