ポンクソフト

チュートリアル5(当たり判定) - Flash(ActionScript)でゲーム作成入門

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

目次

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

当たり判定

弾が敵に当たったときに敵がやられ、自機が敵に当たったときに自機がやられるようにし、ゲームらしくします。

敵インスタンスに当たり判定の ActionScript を割り当てる

フレーム2の敵インスタンスをクリックして、以下の太字の部分の ActionScript を追加してください。
onClipEvent(enterFrame) {
  _x -= speed;
  if (_x < 0) {
    _rotation = 0;
    _x = Stage.width;
    _y = Math.random() * Stage.height;
    speed++;
  }
  if (_rotation == 0) {
    if (hitTest(_root.tama_mc) && _root.tama_mc._visible) {
      _rotation = 90;
      _root.tama_mc._visible = false;
    } else if (hitTest(_root.jiki_mc)) {
      _root.gotoAndPlay(1);
    }
  }
}
このままではタイトル画面に戻ったときにマウスが消えたままになるので、フレーム1をクリックしてフレームアクションに以下の黒字の部分の ActionScript を追加してください。
Mouse.show();
stop();

ムービーの実行

ムービープレビューを実行してみてください。弾が敵に当たると敵が倒れ、自機が敵に当たるとタイトル画面に戻ります。

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

プログラムの説明

_rotation = 0;
_rotation はムービークリップの回転角度です。敵がやられたときに倒れるので、再度登場したときに元に戻すようにしています。
if (_rotation == 0) {
回転角が 0、つまり敵が倒れていないときだけ当たり判定を行います。
    if (hitTest(_root.tama_mc) && _root.tama_mc._visible) {
      _rotation = 90;
      _root.tama_mc._visible = false;
ムービークリップの hitTest は、他のインスタンスとの衝突判定を行い、当たっていれば true、いなければ false を返すメソッドです。敵と弾が当たっていて、なおかつ弾が画面上に出ていたなら、敵が弾に当たったと判定します。角度を 90 度にして敵を倒し、弾を消します。
    } else if (hitTest(_root.jiki_mc)) {
      _root.gotoAndPlay(1);
    }
敵と自機が当たっていれば、タイムラインを1に戻します。つまりタイトル画面に戻るわけです。フレーム3あたりにゲームオーバー画面を作ってそこへ飛ばすのも良いでしょう。
前ページ Flash(ActionScript)でゲーム作成入門 TOP 次ページ
このエントリーをはてなブックマークに追加 そっか0

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

お名前:


名無しのリーク
香川県ルー餃子のフジフーヅはバイトにパワハラの末指切断の重傷を負わせた犯罪企業
2017/01/13 17:04

名無しのリーク
香川県ルー餃子のフジフーヅはバイトにパワハラの末指切断の重傷を負わせた犯罪企業
2017/01/13 17:03

名無しのリーク
香川県さぬき市ルーちゃん餃子のフジフーヅは派遣にパワハラで指切断の重傷を負わせた糞ブラック企業
2017/01/11 00:34

名無しのリーク
香川県さぬき市ルーちゃん餃子のフジフーヅは派遣にパワハラで指切断の重傷を負わせた糞ブラック企業
2017/01/11 00:34

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


↓ここで何関係ないことつぶやいてんのやら
2016/12/02 14:55

名無しのリーク
香川県ルーちゃん餃子のフジフーヅはバイトにパワハラの末指切断の大けがを負わせた犯罪企業
2016/10/11 17:02

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

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

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

残りを読む »