public void NextScene() { if (!CurrentSence.IsEndFlag) { return; } curr = (int)curr + 1 >= Setting.MaxScene ? 0 : curr + 1; ChangeScene(curr); }
public void ChangeScene(Scecne scence) { CurrentSence = scences[scence]; renderManager.ClearList(); mapManager.ClearList(); physicsManager.ClearList(); CurrentSence.Inilized(); CurrentSence.Physics(physicsManager); if (CurrentSence is GamePlay) { renderManager.MapList = mapManager.GetMap(CurrentSence.Name + ".csv"); physicsManager.MapList = renderManager.MapList; } CurrentSence.Draw(renderManager); }
public ScenceManager(Game game) : base(game) { scences = new Dictionary <Scecne, BaseScene>(); renderManager = (RenderManager)game.Components.First(b => b is RenderManager); mapManager = (MapManager)game.Components.First(b => b is MapManager); physicsManager = (PhysicsManager)game.Components.First(b => b is PhysicsManager); scences.Add(Scecne.Title, new Title(game)); scences.Add(Scecne.Ending, new Ending(game)); for (int i = 1; i < Setting.MaxScene - 1; i++) { scences.Add((Scecne)i, new GamePlay(game, ((Scecne)i).ToString())); } curr = 0; CurrentSence = scences[curr]; }