大まかな流れ
ボールとブロックがぶつかる
↓
カウント値が1減少
↓
カウント値が0になったら、ブロックの保管場所に移動
複数回ぶつけたら壊れるブロックのクラスファイルに、count変数を設定。
他に設定する事
ぶつかった時に、カウント値が減るメソッドの作成
カウント値が0になったらtrueを返すメソッド
SurfaceViewを設定しているクラスファイルでは、
交差判定処理内に、まず、カウント値を減らす処理を記述し、
また、カウント値が0になった場合に保管場所に移動する処理と、
点数加算の処理を記述しておく。
こんな感じ
※ブロックは複数処理を設定しているものとする
for(int i=0;i<NUM_BLOCK;i++) {
if(block[i].collideWith(ball)) {
//ボールの移動方向を反転させる
省略
//カウント値を減らす
block[i].down_Count;
//ブロックのカウント値が0だった場合
if(block[i].isCount()) {
//ブロックを保管場所に移動させる
block[i].die();
//点数を加算
count.count(5);
}
//1つ壊したら抜ける
break;
}
}
その他のブロック崩し関連
0 件のコメント:
コメントを投稿