public void SerializeObjects(string filename, ObjectsToSerialize objectsToSerialize) { Stream stream = File.Open(filename, FileMode.Create); BinaryFormatter bFormatter = new BinaryFormatter(); bFormatter.Serialize(stream, objectsToSerialize); stream.Close(); }
public SurvivalGameScene(Game game, GraphicsDeviceManager graphic, ContentManager content, GraphicsDevice GraphicsDevice, SpriteBatch spriteBatch, Vector2 pausePosition, Rectangle pauseRect, Texture2D actionTexture, CutSceneDialog cutSceneDialog, Radar radar, Texture2D stunnedTexture) : base(game) { graphics = graphic; Content = content; GraphicDevice = GraphicsDevice; this.spriteBatch = spriteBatch; this.pausePosition = pausePosition; this.pauseRect = pauseRect; this.actionTexture = actionTexture; this.game = game; this.radar = radar; this.stunnedIconTexture = stunnedTexture; roundTime = TimeSpan.FromSeconds(2592000); random = new Random(); gameCamera = new Camera(GameMode.SurvivalMode); boundingSphere = new GameObject(); hydroBot = new HydroBot(GameConstants.MainGameMaxRangeX, GameConstants.MainGameMaxRangeZ, GameConstants.MainGameFloatHeight, GameMode.SurvivalMode); if (File.Exists("SurvivalMode")) { ObjectsToSerialize objectsToSerialize = new ObjectsToSerialize(); Serializer serializer = new Serializer(); string SavedFile = "SurvivalMode"; objectsToSerialize = serializer.DeSerializeObjects(SavedFile); hydroBot = objectsToSerialize.hydrobot; } //stop spinning the bar IngamePresentation.StopSpinning(); HydroBot.gamePlusLevel = 0; HydroBot.gameMode = GameMode.SurvivalMode; for (int index = 0; index < GameConstants.numberOfSkills; index++) { HydroBot.skills[index] = true; } skillTextures = new Texture2D[GameConstants.numberOfSkills]; bulletTypeTextures = new Texture2D[GameConstants.numBulletTypes]; // for the mouse or touch cursor = new Cursor(game, spriteBatch); //Components.Add(cursor); bubbles = new List<Bubble>(); points = new List<Point>(); //loading winning, losing textures winningTexture = IngamePresentation.winningTexture; losingTexture = IngamePresentation.losingTexture; scaredIconTexture = IngamePresentation.scaredIconTexture; isAncientKilled = false; // Instantiate the factory Button float buttonScale = 1.0f; if (game.Window.ClientBounds.Width <= 900) { buttonScale = 0.8f; // scale the factory panel icons a bit smaller in small window mode } factoryButtonPanel = new ButtonPanel(4, buttonScale); this.Load(); gameBoundary = new GameBoundary(); gameBoundary.LoadGraphicsContent(GraphicDevice); }