ふと思い立ってFlash開発に挑戦してみる。

ちょっと作りたいと思うゲームがあって。

とりあえず何から始めればいいのかわからない状態。
調べてみると、Adoveから公式のゲーム開発用ツールが出てるみたい。
ただ、Flex SDKなるものは無償だけどEclipseのような開発環境となると有償な模様。
CreativeCloudの料金は個人一般で月5,000円くらい。割と高いような。

検索すると他に上がってきたのが2つ

・FlashDevelop
・Flash4J

FlashDevelopはフリーなのによくできてる、日本ではあまり聞かないけどフォーラム等を見る限り海外では人気があるみたい。
FlashJについてはFlashの基本であるアクションスクリプトではなく、Javaとして記述できるライブラリみたい。
現場でJavaに触れる機会は多いので悩むものの、調べる限り文献が非常に少ない。
あまりこだわりはないのでこちらは保留として、FlashDevelopの導入を試してみる。

さて、とりあえずHelloWorldを作ろうと調べてみると、FlashDevelop3の情報ばかり(現在は4)
コンパイルにはFlexSDKが必要で、別途インストールが必要との記述が多いがこのバージョンでは(正確には3の途中から)既に同梱されている模様。
とりあえずインストールしてみる。

起動して、Tools>ProgramSettings>左ペインFlashDevelop>SelectedLocaleを変更
再起動するとメニューが日本語になった。

HelloWorldのプロジェクトを作るのにいくつか手間取ったが、プロジェクト>新規プロジェクトから「AS3 Project」を選択
(他がどのような役割を持ってるのかよくわかりません!)

すると、bin,lib,srcのフォルダを持ったプロジェクトができ、srcの下にMain.asがある。
ここにあるfunctionの中に

var tf:TextField = new TextField();
tf.text = "Hello World!";
addChiled(tf);

などと記述。入力補完が効くのでなかなか便利。

で、ツールバーのところにある右矢印の実行ボタンをクリックすると・・・あっさりできた!
binの下にswfファイルもできています。

参考にしていたのは動画のチュートリアルだったのですが、この中でなにやら怪しい動きをしている。
何の説明もないのですがとあるサイトからサンプルソースをコピーしている・・・?

というわけでつないでみた
http://wonderfl.net

このサイトにアクションスクリプトのサンプルがたくさんあるみたい。
それではとそのうちのひとつをコピーして、先ほどのMain.asに全貼り付け・・・実行すると動かない。

Build halted with errors (fcsh).

こんなエラー。でもこれ、ビルドに失敗しましたよーってだけのエラーみたい。
本体はその上に出ていたこっち。

C:\Flash\src\Main.as: Error: A file found in a source-path 'Main' must have the same name as the class definition inside the file 'aaa'.

端的に言うと、ファイル名とクラス名が合ってませんってことみたいです。
Javaとおんなじか。
そこで合わせるとビルド通ったー!・・・が、画面が真っ白。

もしかしてと思い今度はfunctionの名前も合わせると、見事実行されました。
ここもJavaでいうmainメソッドみたいになってるのかな。

ちなみに実行したのはこれ。
http://wonderfl.net/c/an5U
こんな短いコードでこんな描画ができるのね。

ひとまず、動いたことに満足して今日は終了。