public void Reset() { Player?.Dispose(); scenes.Clear(); var param = new GameObjectParam { TypeName = "Mario", Location = new int[] { (int)Constants.MARIO_DEFAULT_LOCATION.X, (int)Constants.MARIO_DEFAULT_LOCATION.Y }, Motion = MotionEnum.Dynamic, Force = WorldForce.Gravity | WorldForce.Friction, Mass = 1, }; Player = (Mario)param.ToGameObject(); ActiveScene = null; unsubscribe = null; Constants.AVAILABLE_SCENES.ForEach(level => scenes.Add(level, new SceneData(level, Player))); scenes.ForEach((name, scene) => scene.Reset()); }
public SceneData(string level, Mario player) { this.level = level; this.player = player; }