public void Init(Image unhighli, Image highli, Vector2 position, ButtonEffect effect)//Button without text { unhighlightedButton = unhighli; highlightedButton = highli; this.position = position; Effect = effect; }
public void Init(Image unhighli, Image highli, Vector2 position, ButtonEffect effect, string text)//Button with text { unhighlightedButton = unhighli; highlightedButton = highli; this.position = position; Effect = effect; buttonFont = null; //fix this buttonText = text; }
//On creation generates the button effect by dictionary, little janky but this works public void Run() { if (nextScreen != null) { Effects.Add("ChangeScreen", new ChangeScreen(nextScreen)); } Effect = Effects[buttonType]; Effect.Run(); }
public Button CreateChangeScreenButton(Image image, string text, SpriteFont font, Vector2 pos, GameScreen nextScreen) { effect = new ChangeScreen(nextScreen); if (text == null || font == null) { button = new Button(image, image, pos, effect); } else button = new Button(image, image, pos, effect, text, font); return button; }