スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

久々にflash

サンプルSTG
startボタンをクリックした後、矢印キーで三角形のものを移動できます。

たまーにAS3でSTGゲームのサンプルを求めてネットをさまよってた人がここを訪れることがあるようなので、
AS3超初心者による超初心者のためのサンプルでも用意しようかとサンプルSTGを作ることにしました。
まあ、本気で完成させるかどうかは分かりませんけどね。
完成っていうか、一通りの処理ができればそこで終わりにする予定だけど、そこまでたどり着くかどうか。

Flashを立ち上げるのはほんと久しぶり。ビリビリ魔人さん以降ろくに触ってなかったからな。
だから当然かつで自分がこのブログで書いた内容すら忘れてます。

とりあえずビリ魔のソースを見ながら必死に思い出して、とりあえず↑のとこまで。

いつもはフレームを利用してアニメーションとか画面切り替えとかをやってたんだけど、
今回はAS3の練習も兼ねてFLASH CS3のタイムラインの利用を基本的に禁止してます。
処理は全て外部のASファイルで行う、という方向で。

これが意外とムズイのね。
タイトル画面にスタートボタンを置いて、それを押したらゲーム開始、という当たり前の流れも、
タイムラインやフレームアクションを使えば簡単なんだけど、結局丸一日かかってしまった。

さらにそこから自キャラを動かすクラスがうまく機能せず。
スタートボタンを押した後、一度ステージ上をクリックしないとキー操作を受け付けてくれない。

そうか、キーイベントはstage以外にセットしたときはフォーカスしないといけないとか、そんな話があったな…。
あったのは分かるんだけど、なかなかフォーカスがうまくいかない。
stage.focusにフォーカスするものを=で結べばいいってのはわかったんだけど、
nullの参照だったり未定義のなんたらだったりで大苦戦。

結局、trace(stage.focus)で一個一個調べて、フォーカスがデフォでnullになってることを確認、
スタートボタンを押した後はスタートボタンにフォーカスがあたったままになってて、
ステージ上をクリックするとまたnullになるということがわかった。
あとはstage.focus=○○の一文を追加しても未定義のなんたらエラーが出ない無難な場所にこれを置いて、
具体的にはプレイヤーキャラのENTER_FLAMEを受けて発動するfunctionの中に、
フォーカスがstage以外のときにstageを代入するようif文の中に「stage.focus=stage;」を置く。

これでなんとか…。無理矢理だなあ。
ソースは公開する予定だけど、一通りの処理ができたらにしようと思います。
専門用語とかよく知らないからアバウトな記事で申し訳ない、というか、完成したところであまり役には立たないだろうけど。

次:http://orekoro.blog26.fc2.com/blog-entry-600.html
関連記事
スポンサーサイト

コメントの投稿

非公開コメント

プロフィール

oisu-

Author:oisu-
趣味はゲームと深夜アニメ実況。
絵を描いたりFlashゲーを作ったりもするけど、一つのことにのめり込むと他のことがおざなりになるので結局あまり成果が出ない。その上根気が続かないのですぐ飽きる人。

pixivb

FC2カウンター
検索フォーム
カレンダー
07 | 2017/08 | 09
- - 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 - -
円卓の生徒
円卓の生徒応援バナー

XBOX360用ダンジョンRPG『円卓の生徒』を全力で支援中!
Twitter

Twitter Updates

    follow me on Twitter
    広告
    円卓の生徒応援バナー


    ここからアフィ注意
    上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。