public void Redraw(Frame.Minefield minefield)
 {
     this.minefield = minefield;
     minesweeperKnowledgeGrid.Children.Clear();
     DrawFieldTypes();
     DrawExplosives();
 }
Beispiel #2
0
        public Frame.Minefield generateMinefieldFrame()
        {
            Frame.Minefield minefieldFrame = new Frame.Minefield(Settings.MAP_SIZE);
            generateRadiationMap();
            for (int i = 0; i < Settings.MAP_SIZE; ++i)
            {
                for (int j = 0; j < Settings.MAP_SIZE; ++j)
                {
                    Frame.Field fieldFrame = new Frame.Field();
                    fieldFrame.type = fieldArray[i, j].type;

                    if (radiationMax != 0.0)
                    {
                        fieldFrame.radiation = radiationMap[i, j] / radiationMax;
                    }
                    else
                    {
                        fieldFrame.radiation = radiationMap[i, j];
                    }

                    minefieldFrame.fields[i, j] = fieldFrame;
                }
            }

            return(minefieldFrame);
        }
Beispiel #3
0
        private Frame.Minefield generateFakeFrame()
        {
            Frame.Minefield minefieldFrame = new Frame.Minefield(Settings.MAP_SIZE);

            for (int i = 0; i < Settings.MAP_SIZE; ++i)
            {
                for (int j = 0; j < Settings.MAP_SIZE; ++j)
                {
                    Frame.Field fieldFrame = new Frame.Field();

                    if (fieldArray[i, j].explosive == null)
                    {
                        fieldFrame.radiation = 0;
                    }
                    else
                    {
                        fieldFrame.radiation = 1;
                    }

                    minefieldFrame.fields[i, j] = fieldFrame;
                }
            }

            return(minefieldFrame);
        }
Beispiel #4
0
        public void WriteToFile(string filename)
        {
            Frame.Minefield minefieldFrame = generateFakeFrame();
            List <string>   lines          = new List <string>();

            for (int i = 0; i < Settings.MAP_SIZE; ++i)
            {
                string line = "";
                for (int j = 0; j < Settings.MAP_SIZE; ++j)
                {
                    line += minefieldFrame.fields[j, i].radiation.ToString() + " ";
                }
                lines.Add(line);
            }
            System.IO.File.WriteAllLines(@filename + ".txt", lines);
        }