示例#1
0
        private void Redraw()
        {
            TechTreeBitmap = new Bitmap(TechTreeImage.Width, TechTreeImage.Height, System.Drawing.Imaging.PixelFormat.Format32bppArgb);

            Graphics g = Graphics.FromImage(TechTreeBitmap);

            centerX = TechTreeBitmap.Width / 2 / scaling;
            centerY = TechTreeBitmap.Height / 2 / scaling;

            centerX += horizontal;
            centerY += vertical;

            g.ScaleTransform(scaling, scaling);

            //чтение из фала списка технологий
            for (int i = 0; i < tech_subtech.Count; i++)
            {
                for (int z = 0; z < tech_subtech[i].Count; z++)
                {
                    for (int j = 0; j < Player.technologies.Count; j++)
                    {
                        if (i == Player.technologies[j][0] && z <= Player.technologies[j][1])
                        {
                            br = Brushes.Yellow;
                            break;
                        }
                        else
                        {
                            br = Brushes.White;
                        }
                    }
                    Font fnt           = new Font("Consolas", 10.0F);
                    Size string_lenght = TextRenderer.MeasureText(tech_subtech[i][z], fnt);
                    g.DrawString(tech_subtech[i][z], fnt, br,
                                 new PointF(centerX + 300 * z, centerY + 300 - 30 * i));

                    g.DrawRectangle(Pens.AliceBlue, centerX + 300 * z - 2,
                                    centerY + 300 - 30 * i - 2, string_lenght.Width + 2, string_lenght.Height + 2);
                }
            }


            TechTreeImage.Image = TechTreeBitmap;
            TechTreeImage.Refresh();
        }
示例#2
0
        private void Redraw()
        {
            TechTreeBitmap = new Bitmap(TechTreeImage.Width, TechTreeImage.Height, System.Drawing.Imaging.PixelFormat.Format32bppArgb);

            Graphics g = Graphics.FromImage(TechTreeBitmap);

            float centerX = TechTreeBitmap.Width / 2 / scaling;
            float centerY = TechTreeBitmap.Height / 2 / scaling;

            centerX += horizontal;
            centerY += vertical;

            g.ScaleTransform(scaling, scaling);

            g.DrawString("Обработка металлов.", new Font("Arial", 10.0F), Brushes.White, new PointF(centerX - 80, centerY + 50));
            g.DrawString("Добыча полезных\n ископаемых.", new Font("Arial", 10.0F), Brushes.White, new PointF(centerX - 120, centerY + 100));
            g.DrawString("Обработка металлов.", new Font("Arial", 10.0F), Brushes.White, new PointF(centerX + 20, centerY + 100));

            TechTreeImage.Image = TechTreeBitmap;
            TechTreeImage.Refresh();
        }
示例#3
0
        private void Redraw()
        {
            TechTreeBitmap = new Bitmap(TechTreeImage.Width, TechTreeImage.Height, System.Drawing.Imaging.PixelFormat.Format32bppArgb);

            Graphics g = Graphics.FromImage(TechTreeBitmap);

            float centerX = TechTreeBitmap.Width / 2 / scaling;
            float centerY = TechTreeBitmap.Height / 2 / scaling;

            centerX += horizontal;
            centerY += vertical;

            g.ScaleTransform(scaling, scaling);

            //чтение из фала списка технологий
            StreamReader tech_str = new StreamReader("Tech.txt");
            int          counter  = 0;
            string       line;

            while ((line = tech_str.ReadLine()) != null)
            {
                g.DrawString(line, new Font("Arial", 10.0F), Brushes.White,
                             new PointF(centerX, centerY + 30 * counter));
                counter++;
            }

            tech_str.Close();

            g.DrawString("Добыча полезных\n ископаемых.", new Font("Arial", 10.0F), Brushes.White,
                         new PointF(centerX - 170, centerY + 200));

            g.DrawString("Обработка металлов.", new Font("Arial", 10.0F), Brushes.White,
                         new PointF(centerX + 20, centerY + 200));

            TechTreeImage.Image = TechTreeBitmap;
            TechTreeImage.Refresh();
        }