FlashDevelopで開発シリーズ。
今回は「何か表示してみる」「ゲームループの作成」を行いたいと思います。
前回「【FlashDevelop】FlashDevelop+FlexSDKを使ったゲームプログラミング(環境構築編)」の続きです。
何か表示してみる
以下の手順でソースコードを変更して画面に文字を表示してみます。
- 「FlashDevelop」の左側カラム「プロジェクト」内にある「src」フォルダを開く
- 中にある「Main.as」をダブルクリック
- 16行目「else add~」という行の後に改行を追加して、以下のコードをコピー
var sp:Sprite = new Sprite();
sp.graphics.beginFill( 0x0000ff );
sp.graphics.drawRect( 100, 100, 300, 150 );
addChild(sp);
ソースコードは、以下のような感じになるはずです。
プロジェクトをテストする
コンテンツデバッガーが起動し以下のような画面が表示されれば成功です。
コンテンツデバッガーが起動する前に「FlashDevelop」にエラーが表示された場合はソースコードに入力ミスなどがないか確認してみてください。
ゲームループを作成する
とりあえず簡易的にTimerを使ったループを作ってみます。
Mainクラスに以下のコードを追加します。
var timer:Timer = new Timer( 32, 0 );
var postionX:Number = 0;
Main関数に書いた先ほどのコードは削除し、以下のコードに変更します。
timer.addEventListener( TimerEvent.TIMER, function (e:TimerEvent):void {
GameLoop( e );
});
timer.start();
init関数の後に新たに以下の関数を追加します。
public function GameLoop( e:TimerEvent ) :void {
postionX++;
var sp:Sprite = new Sprite();
sp.graphics.beginFill(0x0000ff);
sp.graphics.drawRect( postionX, 100, 200, 200 );
addChild(sp);
e.updateAfterEvent();
}
この状態でプロジェクトを実行すると、先ほど表示した青い四角形が画面右側に徐々に移動していく状態となると思います。
簡単ですが以上です。
何か不明な点等あれば、コメントください!