這看起來確實令人困惑,但我想創建一個填充不同類作爲值的字典,然後使用字母作爲鍵。當我在該字典中調用一個鍵時,我需要它充當我鍵入「新的ClassInDictionary」的行爲。C#在字典中添加一個類並創建一個新的實例
這樣我就可以用不同的塊定義不同的符號來創建一個文本文件。
要在這裏幫助你弄明白是我當前的代碼:
blockIdentifier.Add("=", new BlockAir()); // Define which class corresponds to which letter
blockIdentifier.Add("-", new BlockDirt());
for (int mapX = 0; mapX < mapWidth; mapX++)
{
for (int mapY = 0; mapY < mapHeight; mapY++)
{
try
{
Block block = blockIdentifier[mapSplit[mapY].Substring(mapX, 1)]; // Simply find which letter to use, let's pretend it's: "="
// The line above should be creating a new instance of the class BlockAir
block.blockX = mapX * 45;
block.blockY = mapY * 45;
mapList[mapY, mapX] = block;
}
catch (Exception)
{
}
}
}
變量blockIdentifier:
public static Dictionary<string, Block> blockIdentifier = new Dictionary<string, Block>();
而且BlockDirt:
public class BlockDirt : Block
{
public int hi;
public BlockDirt()
: base("Dirt Block.png", 0, 0, true)
{
}
}
我只需要調用blockIdentifier [」 =「]並獲得類BlockDirt()的新實例,我該如何做到這一點?
而你的問題是? – Pete 2013-02-08 14:12:27
你最初如何儲存課程? – 2013-02-08 14:13:28
對不起,我真的忘了主要部分。我只需要調用blockIdentifier [「=」]並獲得BlockDirt類的新實例() – 2013-02-08 14:16:11