AndEngineTMXTiledMapExtension修正

2014年2月24日月曜日

andEngine AndEngineExtention

t f B! P L
一つ前の記事で紹介したタイルテクスチャの更新をライブラリの修正で対応するやり方メモ

AndEngineTMXTiledMapExtension/src/org.andengine.extention.tmx
の中の
「TMXLayer.java」と「TMXTile.java」を修正

①TMXLayer.java
以下のメソッドを追加(readGrobalTileIDメソッドの下あたりでOK)
 /**
  * タイルテクスチャ更新用の修正プログラム追加(2014/02/24)
  * @param pTileColumn 更新するタイルの行
  * @param pTileRow 更新するタイルの列
  */
 void updateTileTexture(final int pTileColumn, final int pTileRow)
 {
         TMXTile tmxTile = mTMXTiles[pTileRow][pTileColumn];
                
         final int tileHeight = this.mTMXTiledMap.getTileHeight();
         final int tileWidth = this.mTMXTiledMap.getTileWidth();
                
         this.setIndex(this.getSpriteBatchIndex(pTileColumn, pTileRow));
         this.drawWithoutChecks(tmxTile.getTextureRegion(), tmxTile.getTileX(), tmxTile.getTileY(), tileWidth, tileHeight, Color.WHITE_ABGR_PACKED_FLOAT);
         this.submit(); // TODO Doesn't need to be called here, but should rather be called in a "init" step, when parsing the XML is complete.
 }


②TMXTile.java
setGlobalTileIDメソッドの中の一番下に追加
// タイルテクスチャ更新用の修正プログラム追加(2014/02/24)
  pTMXTiledMap.getTMXLayers().get(0).updateTileTexture(this.mTileColumn,this.mTileRow);



これでsetGlobalTileIDでID変更すると同時にテクスチャも更新されるようになります!

歩いたタイルを変更するテスト



うまいこといってますね

Translate

このブログを検索

  • ()
  • ()
もっと見る

QooQ