我正在製作XNA遊戲工作室的遊戲,現在我想用Java重寫它。這就像2D Minecraft克隆。對於碰撞檢測,我必須遍歷遊戲中的所有模塊以檢查玩家是否與模塊碰撞。由於數量巨大,因此無法這樣做,所以我製作了一個網格系統。我將世界劃分爲包含塊的網格,並將它們放入字典中。Java字典<String,List <Object>>
Dictionary<string, List<Block>> gameBlocks;
現在我只需要遍歷當前網格中的塊。
這是註冊一個塊的方法:
public void RegisterBlock(Block block)
{
idX = (int)(block.blockPosition.X/width);
idY = (int)(block.blockPosition.Y/height);
string id = idX.ToString() + "_" + idY.ToString();
if (gameBlocks.ContainsKey(id))
{
gameBlocks[id].Add(block);
}
else
{
gameBlocks.Add(id, new List<Block>());
gameBlocks[id].Add(block);
}
}
現在我想改寫它在Java中,但我不知道如何把東西放到一個字典。