SyntaxHighlighter

2012年1月15日日曜日

【AndEngine】TMX map を使った簡単な例 衝突判定

今回は衝突判定についてです。


以前から使っているDigitalOnScreenControlを使ってプレイヤーを移動させ、Sceneに描画した四角と衝突している間、色を変える例です。

使用している変数、DigitalOnScreenControl等は以前のコードを参考にして下さい。

final Rectangle exampleRectangle = new Rectangle(100, 100, 32, 32);  //四角を描画
exampleRectangle.setColor(0f, 0f, 1f);  //青
mScene.attachChild(exampleRectangle);

mScene.registerUpdateHandler(new IUpdateHandler(){

  public void onUpdate(float pSecondsElapsed) {
    //四角とplayerが衝突したか
    if(exampleRectangle.collidesWith(player)){
      exampleRectangle.setColor(1f, 0f, 0f);  //赤
    } else {
      exampleRectangle.setColor(0f, 0f, 1f);  //青
    }
  }

  public void reset() {
  }

});

実行結果は以下になります。
衝突前

衝突時

衝突前は青。衝突時は赤となるようにしました。

0 件のコメント:

コメントを投稿