Главная
Новости
Строительство
Ремонт
Дизайн и интерьер




22.07.2021


21.07.2021


21.07.2021


21.07.2021


20.07.2021





Яндекс.Метрика

MTASC

04.03.2021

MTASC (Motion-Twin ActionScript 2 Compiler) — компилятор ActionScript 2.0, написанный на языке программирования Objective Caml (OCaml). Является свободно распространяемым программным обеспечением с открытым исходным кодом. Может компилировать один или несколько файлов ActionScript непосредственно в SWF-байткод без использования среды разработки Flash или других приложений.

MTASC представляет собой консольное приложение, вследствие этого появились отдельные проекты для облегчения работы с ним: интеграция с Flash IDE (FLASC), добавление интерфейса пользователя (mtascGUI) и т.п.

Отличия от компилятора Macromedia (MMC)

  • Время компиляции. MTASC значительно быстрее MMC.
  • Область действия локальных переменных. В MTASC она ограничена блоком кода, в MMC — функцией.
  • Директива #include не поддерживается MTASC как соответствующая устаревшей практике программирования.
  • Локальные (вложенные) функции. MTASC поддерживает только анонимные локальные функции, в то время как MMC допускает вложения именованных функций.
  • Динамический доступ к данным и объектам. В MTASC не поддерживаются выражения типа eval("this") и eval("arguments"), свойство root клипа недоступно вне соответствующего контекста.

Дополнительные возможности и усовершенствования

  • Пользовательские функции трассировки.
  • Типизированные массивы.
  • Определение типов переменных во время компиляции.


Использование

MTASC может использоваться как для инъекции кода в существующий SWF-файл (созданный при помощи Flash IDE), так и для компиляции нового из исходных файлов.

Запуск MTASC из командной строки

mtasc [параметры] файлы

Параметры командной строки

MTASC может быть запущен из командной строки со следующими параметрами:


Пример компиляции из командной строки

Для примера возьмём простой класс ActionScript:

// Test.as class Test { static var app:Test; private var square:MovieClip; static function main() { app = new Test(); } function Test() { square = _root.createEmptyMovieClip("square", _root.getNextHighestDepth()); square._x = 150; square._y = 150; square.beginFill(0xFF9900); square.moveTo( 50, 50); square.lineTo( 50, -50); square.lineTo(-50, -50); square.lineTo(-50, 50); square.lineTo( 50, 50); square.endFill(); square.onEnterFrame = function() { this._rotation += 1; } } }

Запустите MTASC со следующими параметрами:

mtasc -v -main -swf test.swf -header 300:300:24:332525 Test.as

В результате будет скомпилирован файл test.swf с размерами сцены 300 на 300 пикселей, частотой кадров 24 и тёмно-коричневым цветом фона (#332525).