예제 #1
0
 public planMapy(TvorbaMapy t, int x, int y, bool prazdna)
 {
     planMap = t;
     plan    = new char[sirka, vyska];
     this.x  = x;
     this.y  = y;
     inic();
     if (!prazdna)
     {
         ziskejSousedy();
         ohranicPlan();
         if (x == planMap.sx && y == planMap.sy)
         {
             plan[sirka / 2, vyska / 2] = 'H';
         }
         else if (x == planMap.cx && y == planMap.cy)
         {
             plan[sirka / 2, vyska / 2] = 'e';
         }
         else
         {
             pridejPrekazky();
         }
     }
 }
예제 #2
0
        public void NactiMapu(int lvl)
        {
            PohyblivePrvky = new List <PohyblivyPrvek>();
            Prvky          = new List <Prvek>();
            pickables      = new List <Pickable>();
            int s = 19;
            int v = 16;

            if (lvl % 3 == 0)
            {
                //načítání z předem vybrané mapy "boss"
                System.IO.StreamReader sr = new System.IO.StreamReader("mapa" + lvl + ".txt");
                int sirkaVyrezu           = int.Parse(sr.ReadLine()); //v mapách
                int vyskaVyrezu           = int.Parse(sr.ReadLine());



                sirka = sirkaVyrezu * s;
                vyska = vyskaVyrezu * v;

                int my, mx;
                plan = new char[sirka, vyska];

                for (int i = 0; i < sirkaVyrezu; i++)
                {
                    for (int j = 0; j < vyskaVyrezu; j++)
                    { //jednotlivé prvky
                        for (int y = 0; y < v; y++)
                        {
                            string radek = sr.ReadLine();
                            for (int x = 0; x < s; x++)
                            {
                                char znak = radek[x];
                                mx = x + i * s;
                                my = y + j * v;
                                nactiZnak(mx, my, znak);
                            }
                        }
                        sr.ReadLine();
                    }
                }


                sr.Close();
            }
            else
            {
                //random generovaná mapa
                TvorbaMapy t         = new TvorbaMapy(8, 8, "MyTest2.txt");
                int        sirkaMapy = 8;
                int        vyskaMapy = 8;

                sirka = sirkaMapy * s;
                vyska = vyskaMapy * v;

                int my, mx;
                plan = new char[sirka, vyska];

                for (int i = 0; i < sirkaMapy; i++)
                {
                    for (int j = 0; j < vyskaMapy; j++)
                    { //jednotlivé prvky
                        planMapy k = t.listPlanuMapy[i, j];

                        for (int y = 0; y < v; y++)
                        {
                            for (int x = 0; x < s; x++)
                            {
                                char znak = k.plan[x, y];
                                mx = x + i * s;
                                my = y + j * v;
                                nactiZnak(mx, my, znak);
                            }
                        }
                    }
                }
            }
        }