public Level Clone() { Level clone = new Level(); clone.Name = Name; foreach (var item in Waves) { clone.Waves.Add(item.Clone()); } return clone; }
public void initLevel() { Stream docs = getXml(level_config); IDeserializer deser = XmlSerialization.Instance.Deserialize(docs); var levelDers = deser.DeserializeAll("Level"); foreach (var levelDer in levelDers) { Level.Level level = new Level.Level(); level.Deserialize(levelDer); _listLevel.Add(level); } }
public GamePlayScreen(IGameScreenManager screenManager, IGestureManager gm, PvZGrowSystem growSys) : base(screenManager, "PlayScreen") { gameBoard = new PZBoard(9, 4, objectManager); gameBoard.Board = new int[,] { {0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0} }; this.gm = gm; level = PZLevelManager.Instance.GetLevel(); level.OnBeginWave += level_OnBeginWave; this.playBacground = new PlayBackground(this.Game, SCSServices.Instance.ResourceManager.GetResource<Texture2D>(level.Background)); this.playBacground.Initialize(); this.playBacground.OnAnimatingCompleted += this.OnBackgroundAnimatingCompleted; this.playBacground.StartAnimate(); _messageCenter = new MessageCenter(this.Game); this.growSystem = growSys; }
private void InitGamePlayAtLevel() { level = PZLevelManager.Instance.GetLevel(m_level); IGestureDispatcher dp = DefaultGestureHandlingFactory.Instance.CreateDispatcher(); gm.AddDispatcher(dp); this.uiControlManager = new UIControlManager(this.Game, DefaultGestureHandlingFactory.Instance); gm.AddDispatcher(this.uiControlManager); this.Components.Add(this.uiControlManager); // // Sun system _sunSystem = new PvZSunSystem(this.Game, 50, dp); SCSServices.Instance.Game.Services.RemoveService(typeof(PvZSunSystem)); SCSServices.Instance.Game.Services.AddService(typeof(PvZSunSystem), _sunSystem); this.Components.Add(_sunSystem); this.growSystem = new PvZGrowSystem(this.Game, new PvZGameGrow(gameBoard)); this.growSystem.Deserialize(XmlSerialization.Instance.Deserialize(new FileStream(@"Xml\PlantGrowButtons.xml", FileMode.Open, FileAccess.Read))); var chooseSys = new PvZChooseSystem(this.Game, this.growSystem.ButtonFactoryBank, this.uiControlManager, _sunSystem); chooseSys.Initialize(); chooseSys.OnCameOut += this.OnChooseSystemCompleted; this.Components.Add(chooseSys); chooseSys.ComeIn(); }