public GameScene(string id, string text, string name, SceneBehaviour t, SceneBackground bg, SceneBars br, SpriteFont f, SceneHandler.Flag flag) { Locked = false; ID = id; VALUES = new SceneValues(new InputStates( ), name, text); TYPE = t; BCKG = bg ?? t.Parent.DefaultBCKG; BARS = br ?? t.Parent.DefaultBARS; FONT = f ?? t.Parent.DefaultFONT; FLAG = flag; }
/// <summary> /// Generates new GameScene from only given parameters /// </summary> /// <param name="id">ID of a Scene</param> /// <param name="text">Text shown in text-box</param> /// <param name="name">Text shown as a Name</param> /// <param name="t">Scene Behaviour</param> /// <param name="bg">Scene Background image</param> /// <param name="br">Scene Bar image and Name/Text-Box positions</param> /// <param name="f">Text font</param> /// <param name="flag">Scene flag (only works via .FirstScene/.EndScene/.ErrorScene)</param> /// <param name="genfunc">Function that gets invoked on object after creating it.</param> /// <returns>Newly created GameScene</returns> public GameScene GenerateScene( string id, string text, string name, GameScene.SceneBehaviour t, SceneBackground bg, SceneBars br, SpriteFont f, SceneHandler.Flag flag = SceneHandler.Flag.MIDDLE, Action <GameScene> genfunc = null ) { var ngs = new GameScene(id, text, name, t, bg ?? t.Parent.DefaultBCKG, br ?? t.Parent.DefaultBARS, f ?? t.Parent.DefaultFONT, AUTH ? flag : SceneHandler.Flag.MIDDLE ); genfunc?.Invoke(ngs); return(ngs); }