static TileMaterials() { TileMaterial tileMaterial = TileMaterials._materialsByName["Default"]; for (int index = 0; index < TileMaterials.MaterialsByTileId.Length; ++index) { TileMaterials.MaterialsByTileId[index] = tileMaterial; } foreach (KeyValuePair <string, string> keyValuePair in TileMaterials.DeserializeEmbeddedResource <Dictionary <string, string> >("Terraria.GameContent.Metadata.MaterialData.Tiles.json")) { string key = keyValuePair.Key; string index = keyValuePair.Value; TileMaterials.SetForTileId((ushort)TileID.Search.GetId(key), TileMaterials._materialsByName[index]); } }
static TileMaterials() { MaterialsByTileId = new TileMaterial[623]; _materialsByName = DeserializeEmbeddedResource <Dictionary <string, TileMaterial> >("Terraria.GameContent.Metadata.MaterialData.Materials.json"); TileMaterial tileMaterial = _materialsByName["Default"]; for (int i = 0; i < MaterialsByTileId.Length; i++) { MaterialsByTileId[i] = tileMaterial; } foreach (KeyValuePair <string, string> item in DeserializeEmbeddedResource <Dictionary <string, string> >("Terraria.GameContent.Metadata.MaterialData.Tiles.json")) { string key = item.Key; string value = item.Value; SetForTileId((ushort)TileID.Search.GetId(key), _materialsByName[value]); } }
public static void SetForTileId(ushort tileId, TileMaterial material) { MaterialsByTileId[tileId] = material; }