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); }
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)); }
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); } }