public ButtonMenu(float menuWidth, float menuHeight, int FontSize, bool selectionMenu = false) { rows = new List <List <ButtonSprite> >(); this.MenuWidth = menuWidth; this.MenuHeight = menuHeight; this.FontSize = FontSize; this.SelectionMenu = selectionMenu; Self = this; }
public TitleScreen() { spriteBuffer.Width = App.Canvas.Width; spriteBuffer.Height = (int)(spriteBuffer.Width * App.TargetAspect); Title = new TextSprite(); Title.FontSize = (int)(spriteBuffer.Width * 0.06f); //Title.Text = "Cirno and the mysterious tower"; Title.Text = App.GameName; Title.TextColor = "#77FFFF"; Title.ShadowColor = "#000000"; Title.ShadowOffset = new Vector2(2, 2); Title.ShadowBlur = 2; CenterTextWithFloats(Title, 0.5f, 0.06f); Version = new TextSprite(); Version.FontSize = (int)(spriteBuffer.Width * 0.016f); Version.Text = "Version:" + App.GameVersion; Version.TextColor = "#FFFFFF"; Version.ShadowColor = "#000000"; Version.ShadowOffset = new Vector2(2, 2); Version.ShadowBlur = 2; CenterTextWithFloats(Version, 0.75f, 0.11f); /*Title.ForceUpdate(); * Title.Position.Y = spriteBuffer.Height * 0.01f; * Title.Position.X = (spriteBuffer.Width / 2) - (Title.spriteBuffer.Width / 2);*/ Desc = new TextSprite(); Desc.FontSize = (int)(spriteBuffer.Width * 0.030f); Desc.TextColor = "#FFFFFF"; //Desc.Text = "Cirno has found herself in a strange dungeon filled with ghosts!\nHer energy has been stolen, reclaim the energy orbs to extend your time.\nFind the big key to unlock the door."; //Desc.Text = "Cirno has found herself in a strange dungeon filled with ghosts!\nReclaim your stolen energy sealed inside the orbs to extend your time.\nFind the gold key to unlock the door."; Desc.Text = "Cirno has found herself in a strange tower filled with ghosts!\nReclaim your stolen energy sealed inside the orbs to extend your time.\nRemember the door's location and search for the gold key."; Desc.ShadowColor = "#000000"; Desc.ShadowOffset = new Vector2(2, 2); Desc.ShadowBlur = 2; CenterTextWithFloats(Desc, 0.5f, 0.2f); Controls = new TextSprite(); Controls.FontSize = (int)(spriteBuffer.Width * 0.025f); Controls.TextColor = "#FFFFFF"; Controls.Text = "Keyboard Controls:\nLeft/Right=Move\nUp/Down=Aim(Up activates chests/doors)\nZ=Shoot\nX=Jump/Mid-air jump\nA=Place block below you(costs time)\nEnter=Pause\nM=Toggle mute"; Controls.ShadowColor = "#000000"; Controls.ShadowOffset = new Vector2(2, 2); Controls.ShadowBlur = 2; CenterTextWithFloats(Controls, 0.5f, 0.4f); Controls.Position.X = Desc.Position.X; menu = new ButtonMenu(spriteBuffer.Width * 0.8f, spriteBuffer.Height * 0.5f, (int)(spriteBuffer.Width * 0.05f)); var B = menu.AddButton("Start Game"); B.OnClick = () => { game.Start(); }; //menu.Finish(); B.Position.X += spriteBuffer.Width * 0.38f; B.Position.Y = spriteBuffer.Height * 0.7f; //var CB = menu.AddButton("Controller:"+InputControllerManager._this.Controllers[0].id); var CB = menu.AddButton("Controller:" + App.IC.id); Controller = CB; CB.OnClick = () => { var ind = InputControllerManager._this.Controllers.IndexOf(App.IC); ind++; if (ind >= InputControllerManager._this.Controllers.Count) { ind -= InputControllerManager._this.Controllers.Count; } App.IC = InputControllerManager._this.Controllers[ind]; var TS = CB.Contents.As <TextSprite>(); var W = TS.spriteBuffer.Width; TS.Text = "Controller:" + App.IC.id; TS.ForceUpdate(); CB.Position.X -= ((TS.spriteBuffer.Width - W) / 2); }; CB.Position.X += spriteBuffer.Width * 0.38f;; CB.Position.Y = B.Position.Y + (spriteBuffer.Height * 0.15f); //CB.Visible = false; CB.Lock(); Credits = new TextSprite(); Credits.FontSize = (int)(spriteBuffer.Width * 0.015f); Credits.TextColor = "#77FFFF"; //Credits.Text = "Made by:RSGmaker Touhou Project and it's characters are owned by ZUN"; Credits.Text = "Made by:RSGmaker Touhou Project and it's characters are owned by ZUN"; Credits.ShadowColor = "#000000"; Credits.ShadowOffset = new Vector2(2, 2); Credits.ShadowBlur = 2; CenterTextWithFloats(Credits, 0.5f, 0.98f); }