ポンクソフト

当たり判定(敵と弾)・スコア - Javaでシューティングゲームを作ろう

前ページ Javaでシューティングゲームを作ろう TOP 次ページ

目次

  1. Javaでシューティングゲームを作ろう
  2. 自機の左右移動
  3. 弾発射・はみ出しチェック
  4. 敵登場・仮想画面
  5. 当たり判定(敵と弾)・スコア
  6. 当たり判定(自機と敵)・シーン切り替え
  7. クラス化
  8. 継承・Vectorによるキャラ管理・サウンド
  9. パワーアップ・複数種類の敵
  10. ペンギンシューティング

今回の題材

プレイしてみる
一式ダウンロード

ソースの解説

Shooting4クラス フィールド

int score;
scoreには得点が入ります。

Shooting4クラス initメソッド

score = 0;
得点を0点にクリアしています。Javaではint型の変数は宣言したときに0が入るので、無駄といえば無駄な処理なのですが。

Shooting4クラス runメソッド

if (tflag) {
  if (tx + 8 > ex && tx < ex + 32 &&
    ty + 8 > ey && ty < ey + 32) {
    score += 100;
    ex = (int)(Math.random() * (300 - 32));
    ey = -32;
    tflag = false;
  }
}
弾が発射されていれば、弾と敵との当たり判定を行います。条件が複雑ですが、ようするに弾と敵が一部分でも重なったときに当たったと見なしています。当たった場合は、得点を100点加算し、敵を消して画面最上部に戻し、弾を消します。

Shooting4クラス paintメソッド

gv.drawString("SCORE : " + String.valueOf(score), 10, 20);
得点を画面上部左に表示します。
drawStringはGraphicsオブジェクトのメソッドで文字列を描画します。描画座標は(10,20)ですが、y座標は文字の上ではなく下なので注意してください。
valueOfはjava.lang.Stringクラスのクラスメソッドで、引数を文字列にして返します。
前ページ Javaでシューティングゲームを作ろう TOP 次ページ
このエントリーをはてなブックマークに追加 そっか0

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

お名前:


dead ライジング
javaってなに?
2017/01/24 14:29

すみませんが…
tflagの初期がfalseの状態で!tflagがfalseにあたるのがわかりません。
2017/01/05 11:35

missiy
ゲーム制作始めますか
2016/11/04 20:32

デトロイト
おーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
2016/10/12 17:56

デトロイト
日本太郎 YouTube見てください
2016/10/12 17:55

デトロイト
日本太郎 YouTube見てください
2016/10/12 17:41

Rising Star
おーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
2016/10/12 17:40


おーーーーーーーーーーーーー
2016/10/12 17:39


おーーーーーーーーーーーーーーーーーーーーーーーーーーーー
2016/10/12 17:39


ナナシノゴンベ
2016/10/12 17:38

残りを読む »