Esempio n. 1
0
        public void Powerlevel()
        {
            LieroLevel level;

            using (var stream = File.OpenRead("TestData/cyber.lev"))
            {
                level = LieroLevel.LoadFromStream(stream);
            }
            Assert.IsTrue(level.IsPowerlevel);
            using (var stream = File.OpenRead("TestData/fallout2.lev"))
            {
                level = LieroLevel.LoadFromStream(stream);
            }
            Assert.IsFalse(level.IsPowerlevel);
        }
Esempio n. 2
0
        public void SetUp()
        {
            level = LieroLevel.CreateEmpty(Palette.Default.MaterialFromIndex(161));
            var content = new Material?[21, 21];

            for (int i = 0; i < content.GetLength(0); ++i)
            {
                for (int j = 0; j < content.GetLength(1); ++j)
                {
                    content[i, j] = Palette.Default.MaterialFromIndex(129);
                }
            }
            content[9, 9]   = null;
            content[9, 11]  = null;
            content[11, 9]  = null;
            content[11, 11] = null;
            content[10, 10] = Palette.Default.MaterialFromIndex(161);
            brushCenter     = new Brush(content, new Point(10, 10));
            brushLeftTop    = new Brush(content, new Point(0, 0));
        }
Esempio n. 3
0
        public void Sandbox()
        {
            var width  = 20;
            var z      = width * 250;
            var data   = new byte[504 * 350];
            var stones = Palette.Default.Select(kvp => kvp.Key).Where(material => !material.WeaponTransparent && !material.WormTransparent && !material.Destructible).ToList();

            for (int i = 0; i < 504; ++i)
            {
                for (int j = 0; j < 345; ++j)
                {
                    data[i + j * 504] = 161;
                }

                data[i + 312 * 504] = (byte)(((z / width) % 200 == 0) ? 0 : 161);
                data[i + 328 * 504] = (byte)(((z / width) % 100 == 0) ? 0 : 161);
                data[i + 336 * 504] = (byte)(((z / width) % 50 == 0) ? 0 : 161);
                data[i + 340 * 504] = (byte)(((z / width) % 25 == 0) ? 0 : 161);
                data[i + 342 * 504] = (byte)(((z / width) % 10 == 0) ? 0 : 161);
                data[i + 343 * 504] = (byte)(((z / width) % 5 == 0) ? 0 : 161);
                for (int j = 345; j < 350; ++j)
                {
                    data[i + j * 504] = (byte)(z / width);
                }

                for (int j = 0; j < 50; ++j)
                {
                    data[i + j * 504] = stones[(z / width) % stones.Count].Index;
                }
                z++;
            }
            using (var memstream = new MemoryStream(data))
                using (var stream = File.OpenWrite("/media/milleniumbug/7b99189a-98b5-49c0-ab32-5987e3642f9b/Gry/Liero/liero/levels/aaaa.lev"))
                {
                    LieroLevel.LoadFromStream(memstream).SaveToStream(stream);
                }
        }