Linux で ActionScript3

Linux上で、actionscript3を使って Adobe Flash のコンテンツを開発する方法をまとめてみました。この方法を使えば、無料のツールのみで flash のゲームなどが作成できます。

開発用ソフトウェアの準備

Adobe FLEX 3.0 SDK のインストール

http://www.adobe.com/go/flex3_sdk から "The Adobe Flex 3 Software Development Kit (SDK)" をdownloadします

具体的には、ページ下部にあるライセンスを読んで、ライセンスに同意できる場合は

I have read the Adobe Flex 3.0 SDK License, and by downloading the software listed below I agree to the terms of the agreement.

をチェックし、

Download the Flex 3.0 SDK for all Platforms (ZIP, 38 MB)

から flex_sdk_3.zip を downloadします。

downloadした flex_sdk_3 は、適当なディレクトリにインストールします。

たとえば /tmp/flex 以下にインストールする場合は

$ cd /tmp
$ mkdir flex
$ cd flex
$ unzip flex_sdk_3.zip

とします。これで、 /tmp/flex/bin 以下に必要なコンパイラなどが展開されます

JDKのインストール

sun のページから javaJDK を持ってきて、インストールします。

redhat系なら rpm コマンド一発でインストールできるので、方法は省略。

Hello ActionScript3 を動かしてみる。

早速、サンプルコードを用意して、コンパイル&実行してみます。まずは、サンプルコード。以下の内容のテキストファイルを作成して、 ファイル名を hello.as として保存します。

package {
    import flash.display.*;
    import flash.text.*;
    public class hello extends Sprite{
        public function hello (){
            var t:TextField = new TextField();
            t.text = "hello actionscript 3";
            t.width = 300;
            t.height = 200;
            t.x = 50;
            t.y = 20;
            addChild(t); 
        }
    }
}

actionscript3はかなりjavaに似せて設計されています。とりあえずここでのポイントは、ファイル名とクラス名は同じ名前にすることです。上記の例では class hello を作成しているのでsource codeは hello.as として保存します。大文字小文字も区別します

次にコンパイルします。

$ /tmp/flex/bin/mxmlc  hello.as

コンパイルに成功すると hello.swf が生成されます。ブラウザで開いて動作を確認します。

$ firefox hello.swf

"hello actionscript 3"と出力されていれば、成功です。

Makefile の作成

毎回コマンドを入力して、コンパイルするのは面倒なので、Makefile を作成しておきます。

MXMLC = /tmp/flex/bin/mxmlc
MFLAGS = 

TARGETS  = hello.swf

all: $(TARGETS)

clean:
	$(RM) $(TARGETS)

.SUFFIXES:	.as .swf
.as.swf:
	$(MXMLC) $(MFLAGS) $<

これで、

$ make

で、hello.as から hello.swf が生成できます