public static void WriteActionKeyFile() { IdentifiableShapeList actionKeyList = new IdentifiableShapeList("Action Key List", Game1.actionKeyList); String locationFolder = @"My Games\The Betrayer\prefs\"; String fileName = "actionKeys.xml"; String folderLoc = Path.Combine(baseFolder, locationFolder); if (!Directory.Exists(folderLoc)) { Directory.CreateDirectory(folderLoc); } fileLoc = Path.Combine(folderLoc, fileName); if (File.Exists(fileLoc)) { File.Delete(fileLoc); } FileStream stream = File.Open(fileLoc, FileMode.OpenOrCreate); XmlSerializer xmlSer = new XmlSerializer(typeof(IdentifiableShapeList)); xmlSer.Serialize(stream, actionKeyList); stream.Close(); }
public static IdentifiableShapeList Reader(String locationFolder, String fileName) { String folderLoc = Path.Combine(baseFolder, locationFolder); fileLoc = Path.Combine(folderLoc, fileName); FileStream loadStream = File.Open(fileLoc, FileMode.OpenOrCreate, FileAccess.Read); XmlSerializer xmlSer = new XmlSerializer(typeof(IdentifiableShapeList)); IdentifiableShapeList idList = (IdentifiableShapeList)(xmlSer.Deserialize(loadStream)); loadStream.Close(); return(idList); }
public static void Writer(String locationFolder, String fileName, IdentifiableShapeList objectList) { String folderLoc = Path.Combine(baseFolder, locationFolder); if (!Directory.Exists(folderLoc)) { Directory.CreateDirectory(folderLoc); } fileLoc = Path.Combine(folderLoc, fileName); if (File.Exists(fileLoc)) { File.Delete(fileLoc); } FileStream stream = File.Open(fileLoc, FileMode.OpenOrCreate); XmlSerializer xmlSer = new XmlSerializer(typeof(IdentifiableShapeList)); xmlSer.Serialize(stream, objectList); stream.Close(); FileStream loadStream = File.Open(fileLoc, FileMode.OpenOrCreate, FileAccess.Read); IdentifiableShapeList testIDList = (IdentifiableShapeList)(xmlSer.Deserialize(loadStream)); if (testIDList.name.Equals("Controls Choice Buttons")) { foreach (InputButton item in testIDList.objectList) { Console.Out.WriteLine(item.actionIndentifierString); } } loadStream.Close(); }
private void KeyBoardControl(GameTime gametime, Game1 game) { if (!buttonControl.secondTimer(gametime, 2)) { if (KeyboardMouseUtility.AnyButtonsPressed()) { buttonControl.elapsedSeconds = 0; } } else { currentChoice = 0; } //Up Arrow Key Control if (buttonPressUtility.isPressed(Game1.moveUpString)) { buttonControl.elapsedMilliseconds = 0; if (currentChoice > 1) { currentChoice--; } else { currentChoice = mainMenuButtons.Count; } } //Down Arrow Key Control if (buttonPressUtility.isPressed(Game1.moveDownString)) { buttonControl.elapsedMilliseconds = 0; if (currentChoice < mainMenuButtons.Count) { currentChoice++; } else { currentChoice = 1; } } if (buttonPressUtility.isPressed(Game1.confirmString)) { SceneSelect(game); } if (buttonPressUtility.isPressed(Game1.debugInfoString)) { int i = 1; foreach (var item in activeSceneButtonCollections) { FileWriter.Writer(@"My Games\The Betrayer\MM\", "MMButtons" + item.name.Replace(" ", String.Empty) + ".xml", item); i++; } i = 1; foreach (var item in activeSceneShapeCollections) { FileWriter.Writer(@"My Games\The Betrayer\MM\", "MMShapes" + item.name.Replace(" ", String.Empty) + ".xml", item); i++; } i = 1; foreach (var item in activeSceneCharactersCollections) { FileWriter.Writer(@"My Games\The Betrayer\MM\", "MMCharacters" + item.name.Replace(" ", String.Empty) + ".xml", item); i++; } FileWriter.WriteActionKeyFile(); } if (Keyboard.GetState().IsKeyDown(Keys.L) && !KeyboardMouseUtility.AnyButtonsPressed()) { IdentifiableShapeList temp = FileWriter.Reader(@"My Games\The Betrayer\MM\", "MMShapes" + activeSceneShapeCollections[0].name.Replace(" ", String.Empty) + ".xml"); clouds.Clear(); foreach (Shape item in temp.objectList) { item.shapeTexture = mainMenuClouds; clouds.Add(item); } } if (buttonPressUtility.isPressed(Game1.cancelString) && !KeyboardMouseUtility.AnyButtonsPressed()) { game.Exit(); } }