書き物

技術とか作った物の話とか愚痴文句感想など

ActionScript3 ~弄り始め~

前書き

昨日迷っていましたが、

「移行するなら早いほうがいいだろう、時間もあることやし。」

ということで、FlexBuilder2の体験版をインストールして触り始めました。

約1ヶ月という制限があるので、総合開発環境が生きている内に

できるだけActionScript3を操れるようになりたいものです。


勉強するといっても目標とかが無ければいかんと思いまして、

スクリプト面での処理速度が重要なゲームを作ろう...

と考えてみたところ、AS3版「爆裂スライムシ」が一番手ごろだろうと思います。

これを全般書き直してみます。


参考サイト

参考にさせていただいたサイト様を上げておきます。


FlexBuilder2

AS2の時、Eclipseプラグインでコード入力していたので英語表記でも結構直感的に使用できました。

しかもコードのエラーがなぜか日本語で表示されたので、まったくと言っていいほど苦労はありませんでした。

助かります。


importも勝手にやってくれるので、勉強用としてもかなり助かります。

クラスの場所とかも良く分かりませんし...。


getter、setterもコードアシストで表示されます。

あとsuper()の引数もコードアシストで表示されます。

Eclipseプラグインの時は表示されませんでしたので助かります。


今日の成果

まずはAS2で書いていた自分用ライブラリを書き直すところから始めました。

最初はしり込みしていましたが、やっぱりそれほど変っていなかったことを実感しました。

定数部分を「const」で定義しなおしたり、

整数しかなかろう部分の「Number」を「int」や「uint」に直したり、

メソッドの戻り値の「Void」を「void」に直したりと事務的な作業となりました。


ずいぶん変ったと思った部分は、これまでで言う「onEnterFrame」で、

addEventListener(Event.ENTER_FRAME, onEnterFrame);

private function onEnterFrame(event:Event)

{

// メインループ処理

}

と定義することです。

個人的にはAS3の定義方法の方が好み...。


あと、これまでムービークリップを始末する際に使用していた「removeMovieClip()」ですが、

どうやら「removeChild()」を使うようになったようです。


で、今回一番分からなかったのは、「ディスプレイオブジェクト」です。

これって、描画の基本っぽいので、きちんと理解していなければ進めません。

基本的には「addChild()」で次々追加して木構造で描画していくというイメージだと思うのですが、

これまでのムービークリップの入れ子構造とは少し違っているようです。

似たようなものだとは思うのですが、どこか違う、この理解が現段階での一番の課題です。


あとがき

全体的な印象は、

  • それほど変っていない。
  • でも便利になっている。

といった感じです。

かっちりとエラーが出てくれるので安心ですし、好印象。

体験版の有効期限が切れるころには、それなりのものが作れるようになっているでしょう。