ポンクソフト

チュートリアル2(弾発射) - Flash(ActionScript)でゲーム作成入門

前ページ Flash(ActionScript)でゲーム作成入門 TOP 次ページ

目次

  1. Flash(ActionScript)でゲーム作成入門
  2. チュートリアル1(自機移動)
  3. チュートリアル2(弾発射)
  4. チュートリアル3(タイトル画面)
  5. チュートリアル4(敵移動)
  6. チュートリアル5(当たり判定)
  7. チュートリアル6(スコア)
  8. おまけ

弾を発射する

次に、弾を発射するプログラムを作成します。

弾キャラクタの作成

Flash のステージ上に適当な大きさで弾を描き、「Tama」という名前でムービークリップに変換します。ライブラリパネルにシンボルがあることを確認してください。
library_tama.gif
「プロパティ」パネルからインスタンス名に「tama_mc」と名前を付けます。

弾のインスタンスに ActionScript を割り当てる

ステージ上の弾インスタンスをクリックして、以下の ActionScript を記述します。
onClipEvent(load) {
  _visible = false;
}

onClipEvent(enterFrame) {
  if (_visible) {
    _x += 16;
    if (_x > Stage.width) _visible = false;
  }
}

onClipEvent(mouseDown) {
  if (!_visible) {
    _x = _root.jiki_mc._x;
    _y = _root.jiki_mc._y;
    _visible = true;
  }
}

ムービーの実行

ムービープレビューを実行してみてください。クリックによって弾を発射できます。

.fla ファイルダウンロード

プログラムの説明

onClipEvent(load) {
  _visible = false;
}
onClipEvent(load) はムービークリップが画面に読み込まれたときに実行されるアクションです。一度実行されたら、インスタンスが消えない限り再度実行されることは無いので、初期設定を記述するのに最適です。今回は弾の _visible プロパティに false を代入することにより、最初に実行されたときは弾を消すようにしています。
onClipEvent(enterFrame) {
  if (_visible) {
    _x += 16;
    if (_x > Stage.width) _visible = false;
  }
}
毎フレーム常に実行されるアクションです。_visible プロパティが true、つまり弾が画面上に存在するならば、弾の x 座標に 16 を加え右に移動します。次に 弾が画面外に出たら _visible プロパティを false にして弾を消しています。Stage はステージに関する情報を保持するクラスで、width プロパティによりステージの横幅を取得することができます。Stage クラスはオブジェクトを作成しなくてもプロパティ・メソッドを使用することができます。
onClipEvent(mouseDown) {
  if (!_visible) {
    _x = _root.jiki_mc._x;
    _y = _root.jiki_mc._y;
    _visible = true;
  }
}
onClipEvent(mouseDown) はマウスが押下されたときに実行されるアクションです。まず _visible プロパティをチェックし、弾が画面上になければ発射します。弾の座標を自機と同じ座標にし、弾を見えるようにします。_root は全てのムービークリップの親となるムービークリップで、要するにステージのことです。最初に見えているタイムラインが _root のタイムラインです。
前ページ Flash(ActionScript)でゲーム作成入門 TOP 次ページ
このエントリーをはてなブックマークに追加 そっか0

このページに関するコメントをどうぞ

お名前:


ポンポン
いままで、書いたのは、忍者。flaについてです。
解決しました。結局のところ、私のソフトは、挿入から新規シンボルを作る、シンボルに変換があるが、シンボルの変換のほうが効果ありでした。これで、スムーズのライブラリに入りました。(これがうまくいかなかった)ここから、リンケージを押して、解説のようになります。
今のとき、インスタンスを消します。ライブラリを広げると、書き出しTamaとかかれています。はじめて、なんとなく理解できました。ほかのゲームんもチャレンジしますね。仮想メモリは何のことだったのか?
2017/08/11 16:20

ポンポン
ライブリをあたると、Tamaのシンボルの図がないなぜ?インスタンスがドラグできない。疑問です。よろしく。
2017/08/10 20:17

ポンポン
目次を見ると、次の章にゲーム5個の作り方があった。downloadしたが、イライラ、gplfが形式があいません。なぜ?
ニンジヤ.flaに取り組んだ。問題が発生。手裏剣がとばない。そこで、メモリが不足したいる。flashの仮想メモリを増やしなさい?
c:、d:、をあけたが、だめ。仮想メモリを増やすのはどうするの。
手裏剣=temi_mcのようにインスタンス名をつけないの?
押してください。難しいね。
2017/08/10 18:13

ポンポン
このページの記事でゲームができた。
僕のflashmxは[flashムービのアイデア箱」の付録に30日限定のものでいした。ところで、7で動かしたいねですが、インストはするのでが、画面にアイコンまできます。しかし、これこれからはダメ。なんとかできないでしようか。いまうごいているのは、昔のwin-meなんです。Xpだったら動く?と思います。(先日、こわれた)
何で7は動かない?
質問でした。
2017/08/09 16:08

古羽嘉禎
ActionScript3.0出来ないな…
2016/12/05 17:33

naga3
お使いのFlashのバージョンと、
OSを教えてもらえませんか?
2013/05/25 08:50

dhipo2
度々すみません・・・
このページとは、
ゴルフゲームのページの一番上の事です。
よろしくお願いします。
2013/05/19 10:39

chipo2
このページの一番上の方の”実行画面”が、動かないのですが・・・
正確に言うと、矢印は動くのですが、
クリックしても、ボールが飛ばないのです・・・。
(ボールが飛んだような絵が一瞬出て、戻ってしまいます)
私のPCのフラッシュのバージョンが古いとかいった理由でしょうか・・・;;
すみませんが、教えてください。
2013/05/19 10:37

naga3
はいFlashないと出来ないです。
2013/04/24 08:08


何を当たり前のこと言ってるんですか?
2013/03/19 15:51

残りを読む »