public static byte[] GetTileData(Dictionary <string, Dictionary <string, ArrayList> > layerData, short gridX, short gridY) { if (!LevelContent.VerifyTiles(layerData, gridX, gridY)) { return(null); } ArrayList tileList = layerData[gridY.ToString()][gridX.ToString()]; return(new byte[] { byte.Parse(tileList[0].ToString()), byte.Parse(tileList[1].ToString()) }); }
public static ArrayList GetTileDataWithParams(Dictionary <string, Dictionary <string, ArrayList> > layerData, short gridX, short gridY) { if (!LevelContent.VerifyTiles(layerData, gridX, gridY)) { return(null); } ArrayList tileObj = layerData[gridY.ToString()][gridX.ToString()]; // Convert the parameter list from JObject to Dictionary<string, short> if (tileObj.Count > 2) { // If the parameter list is already a Dictionary<string, short>, we don't need to convert it. // This can occur if we recently edited the data in the editor. if (tileObj[2] is Dictionary <string, short> == false) { tileObj[2] = JsonConvert.DeserializeObject <Dictionary <string, short> >(tileObj[2].ToString()); } } return(tileObj); }