Beispiel #1
0
        //-----metoda pro nakresleni a vytvoreni hraciho planu
        private void VytvorMapu(int sirka,int vyska)
        {
            int rozmer = Program.sizeOfSquare;

            //-----vytvoreni PictureBoxu
            Bitmap bmp = new Bitmap(sirka * rozmer, vyska * rozmer);
            pictureBox1.Image = bmp;
            pictureBox1.Size = bmp.Size;
            Graphics gr = Graphics.FromImage(bmp);

            //-----nakresleni mrizky-------------
            Pen pero = new Pen(Color.DarkSeaGreen, 1);
            for (int i = 0; i <= vyska; i++)
            {
                gr.DrawLine(pero, 0, i * rozmer, sirka * rozmer, i * rozmer);
            }
            for (int i = 0; i <= sirka; i++)
            {
                gr.DrawLine(pero, i * rozmer, 0, i * rozmer, vyska * rozmer);
            }

            pictureBox1.Refresh();//musime provest, pokud se zmenila bitmapa a zmenu chceme videt na obrazovce

            //stavba plotu a brany
            plot = new Plot(this);
            brana = new Brana(this);
        }
Beispiel #2
0
        private void Zacatek()
        {
            if (level != 15)
            {
                int vlevo  = 0;
                int nahoru = -50;
                Management.maxskore = 0;
                Hranice.wall.Clear();
                Vagon.SmazVse();
                Management.Pohyb = true;
                mamvagon         = false;
                vyhra            = true;
                pole.Children.Clear();
                pole.Children.Add(kroky);
                pole.Children.Add(Skore);
                krok          = 0;
                kroky.Content = "Kroky: " + krok;
                scena.Content = $"Scena " + level;

                rozlozeni = new Mapa();

                //LEVELOVÁNÍ
                if (!Management.createditor)
                {
                    if (Management.Skore == 0) //pokud přešel z editoru načte jeho skore zpátky
                    {
                        Management.maxskore += skoreV2;
                        Management.Skore     = skoreV2;
                    }

                    else
                    {
                        Management.maxskore += Management.Skore;
                    }
                    cti = new StreamReader(@"../../sceny/level" + level + ".txt");
                    string name = cti.ReadLine();
                    jmenolevelu.Content = name;
                    pole.Children.Add(jmenolevelu);
                    pole.Children.Add(scena);
                }
                else
                {
                    Management.Skore   = 0;
                    editorG.Visibility = Visibility.Hidden;
                    pole.Visibility    = Visibility.Visible;
                    paleta.Visibility  = Visibility.Hidden;
                    cti = new StreamReader(@"../../sceny/costumlevl.txt");
                }
                Skore.Content = "Skore: " + Management.Skore;
                //načítaní z textového souboru
                for (int i = 0; i < 14; i++)
                {
                    nahoru += 50;
                    vlevo   = 0;
                    string[] objekty = cti.ReadLine().Split(' ');
                    for (int j = 0; j < 21; j++)
                    {
                        switch (objekty[j])
                        {
                        case "1":
                            vagonek = new Vagon(vlevo, nahoru, "diamond");
                            rozlozeni.nastav(nahoru / 50, vlevo / 50, vagonek);
                            Management.maxskore += 10;
                            break;

                        case "2":
                            vagonek = new Vagon(vlevo, nahoru, "koruna");
                            rozlozeni.nastav(nahoru / 50, vlevo / 50, vagonek);
                            Management.maxskore += 10;
                            break;

                        case "3":
                            vagonek = new Vagon(vlevo, nahoru, "strom");
                            rozlozeni.nastav(nahoru / 50, vlevo / 50, vagonek);
                            Management.maxskore += 10;
                            break;

                        case "j":
                            vagonek = new Vagon(vlevo, nahoru, "jablko");
                            rozlozeni.nastav(nahoru / 50, vlevo / 50, vagonek);
                            Management.maxskore += 10;
                            break;

                        case "e":
                            vagonek = new Vagon(vlevo, nahoru, "emerald");
                            rozlozeni.nastav(nahoru / 50, vlevo / 50, vagonek);
                            Management.maxskore += 10;
                            break;

                        case "t":
                            vagonek = new Vagon(vlevo, nahoru, "tresen");
                            rozlozeni.nastav(nahoru / 50, vlevo / 50, vagonek);
                            Management.maxskore += 10;
                            break;

                        case "r":
                            vagonek = new Vagon(vlevo, nahoru, "redstone");
                            rozlozeni.nastav(nahoru / 50, vlevo / 50, vagonek);
                            Management.maxskore += 10;
                            break;

                        case "f":
                            vagonek = new Vagon(vlevo, nahoru, "ryba");
                            rozlozeni.nastav(nahoru / 50, vlevo / 50, vagonek);
                            Management.maxskore += 10;
                            break;

                        case "9":
                            Wall = new Hranice(vlevo, nahoru);
                            break;

                        case "B":
                            Gate = new Brana(pole, vlevo, nahoru);
                            break;

                        case "V":
                            train = new vlak(vlevo, nahoru);
                            break;

                        case "z":
                            vagonek = new Vagon(vlevo, nahoru, "zmrzlina");
                            rozlozeni.nastav(nahoru / 50, vlevo / 50, vagonek);
                            Management.maxskore += 10;
                            break;

                        case "d":
                            vagonek = new Vagon(vlevo, nahoru, "dort");
                            rozlozeni.nastav(nahoru / 50, vlevo / 50, vagonek);
                            Management.maxskore += 10;
                            break;

                        case "a":
                            vagonek = new Vagon(vlevo, nahoru, "auto");
                            rozlozeni.nastav(nahoru / 50, vlevo / 50, vagonek);
                            Management.maxskore += 10;
                            break;

                        case "p":
                            vagonek = new Vagon(vlevo, nahoru, "pc");
                            rozlozeni.nastav(nahoru / 50, vlevo / 50, vagonek);
                            Management.maxskore += 10;
                            break;
                        }
                        vlevo += 50;
                    }
                    vlevo = 0;
                    int down = 650;
                    for (int k = 0; k < 3; k++)
                    {
                        down += 50;
                        Wall  = new Hranice(0, down);
                        Wall  = new Hranice(1000, down);
                    }
                    for (int a = 0; a < 19; a++)
                    {
                        vlevo += 50;
                        Wall   = new Hranice(vlevo, 800);
                    }
                }
                cti.Close();
            }
            else
            {
                pole.Visibility   = Visibility.Hidden;
                vyhraG.Visibility = Visibility.Visible;
            }
        }