static void EditLevel() { Print.Reset(); string PATH = Print.Prompt("Path to level file:"); LevelAssetBINARY level = LevelFactory.ReadLevel(PATH); if (Print.YesOrNo("Change level name?")) { level.name = Print.Prompt("Level name:"); } if (Print.YesOrNo("Change level difficulty?")) { level.difficulty = int.Parse(Print.Prompt(difficultylevel, "Enter a number:")); } if (Print.YesOrNo("Change level map?")) { string image = Print.Prompt("Path to image:"); level.image = LevelFactory.GetImageBytes(image); } if (Print.Prompt("Confirm changes Y/N?").ToLower() == "y") { LevelFactory.WriteLevel(PATH, level); } }
public static void WriteLevel(string PATH, LevelAssetBINARY level) { XmlSerializer serializer = new XmlSerializer(typeof(LevelAssetBINARY)); using (Stream stream = new FileStream(PATH, FileMode.Create, FileAccess.Write, FileShare.None)) { serializer.Serialize(stream, level); } }
public static LevelAssetBINARY ReadLevel(string PATH) { XmlSerializer serializer = new XmlSerializer(typeof(LevelAssetBINARY)); using (Stream stream = new FileStream(PATH, FileMode.Open, FileAccess.Read, FileShare.Read)) { LevelAssetBINARY level = (LevelAssetBINARY)serializer.Deserialize(stream); return(level); } }
static void CreateLevel() { Print.Reset(); LevelAssetBINARY level = new LevelAssetBINARY { name = Print.Prompt("Level name:"), difficulty = int.Parse(Print.Prompt(difficultylevel, "Enter a number:")), PublicKey = Print.Prompt("Public Key: "), PrivateKey = Print.Prompt("Private Key: "), Savekey = Print.Prompt("Save Key: ") }; string PATH = WD + "/Textures/" + Print.Prompt("Name of image (include the file extension):"); level.image = LevelFactory.GetImageBytes(PATH); string saveName = Print.Prompt("file name:"); LevelFactory.WriteLevel(WD + saveName + ".level", level); }