2016-08-30 6 views
0

タイルセットのタイルセットからタイルのTextureRegionにアクセスしようとしています。私は私のTiledMap上のタイルセットにアクセスしていますが 方法は次のとおりです。タイルセットのタイルセットからタイルにアクセスする

TiledMapTileSet tileset = tiledMap.getTileSets().getTileSet("Tiles").getTile(0).getTextureRegion(); 

これは限りタイルセットはマップで参照される最初の1であるとして、正常に動作します。 「Tiles2」と呼ばれる別のタイルセットを追加して同じことを行う場合:

TiledMapTileSet tileset = tiledMap.getTileSets().getTileSet("Tiles2").getTile(0).getTextureRegion(); 

返されるのはnullです。

代わりにインデックスとしよう:

TiledMapTileSet tileset = tiledMap.getTileSets().getTileSet(0).getTile(0).getTextureRegion(); 

はまた、唯一の最初のタイルセットで動作します。

これはバグですか?意図どおりに働く?それとも間違っているのですか? インデックス/名前でタイルセットを取得する機能を持つのは奇妙に思えますが、アクセスできるのはあなただけです。

答えて

0

ここでの答えは実際に働くことです。 2番目のタイルセットのタイルはキー付きのマップに入れられます。だから、あなたがタイルをインデックスではなくキーでアサインするとき。
したがって、タイルセット2の最初のタイルのキーは次のとおりです。

[key of last tile in tileset1] + 1 
関連する問題