// Added To Scene: Initialise the button graphics public override void Added() { base.Added(); Image = new Entity_Image(0, 0, "", false); { int width = (int)(ButtonBounds.Z); int height = (int)(ButtonBounds.W); Image.NineSlice(Program.PATH_PA + "media/ui/main/shared/img/buttons/btn_lrg_std.png", 82, 50, width, height); Image.image.Color = Colour_Default; Image.SetTarget(Center + new Vector2(ButtonBounds.X, ButtonBounds.Y)); Image.image.ScrollX = Scroll.X; Image.image.ScrollY = Scroll.Y; Image.Layer = Helper.Layer_UI; } Scene.Instance.Add(Image); Text_Label = new Text(Label, Program.Font, 24); { Text_Label.CenterOrigin(); Text_Label.SetPosition(new Vector2(0, -(ButtonBounds.W / 4))); Text_Label.ScrollX = Scroll.X; Text_Label.ScrollY = Scroll.Y; } Image.AddGraphic(Text_Label); Layer = Helper.Layer_UI; }
public override void Removed() { base.Removed(); Image_SelectCircle = null; Image_Star = null; Scene.Instance.Remove(UI); }
public Entity_StarSystem(Scene scene, float x, float y, string path_pa, string path_mod) : base(x, y) { string file; file = Helper.FindFile(new string[] { "resources/selected.png" }); if (file != null) { Image_SelectCircle = new Entity_Image(x, y, file); { Image_SelectCircle.image.Scale = 0.5f; Image_SelectCircle.image.Alpha = 0; Image_SelectCircle.image.Scroll = 1; } AddGraphics(Image_SelectCircle.Graphic); } Image_Owner = new Entity_Image(x, y, "resources/owner.png"); { Image_Owner.image.Scale = 0.5f; Image_Owner.image.Color = Colour; Image_Owner.image.Scroll = 1; } AddGraphics(Image_Owner.Graphic); //Image_Owner.ClearGraphics(); Image_Star = new Entity_Image(0, 0, "resources/star.png"); { Image_Star.image.Scale = 0.5f; Image_Star.image.Alpha = 0.95f; Image_Star.image.Color = new Color(0.9f, 0.9f, 0.9f); Image_Star.image.Scroll = 1; } AddGraphics(Image_Star.Graphic); UI = new Entity_UIPanel_StarSystem(Entity_UIPanel_StarSystem.HalfWidth, Entity_UIPanel_StarSystem.HalfHeight - 8, Name, Type); { UI.System = this; } Time_Lerp = 0; // Add button press collider AddCollider <BoxCollider>(new BoxCollider(48, 48)); Collider.SetPosition(-24, -24); Visible = false; Interactable = false; Layer = Helper.Layer_Star; }
// Constructor: Initialise the individual elements public Entity_UIPanel_StarSystem(float x, float y, string name, string systemtype) { X = x; Y = y; Label = name; SystemType = systemtype; // Panel image Image_Background = new Entity_Image(X, Y, "", false); { Image_Background.NineSlice(Program.PATH_PA + "media/ui/main/shared/img/panel/img_menu_panel.png", 24, 24, Width, Height); Image_Background.image.Scroll = 0; //Image_Background.SetTarget( center ); Image_Background.Layer = Helper.Layer_UI; } // System name Text_Label = new Text(Label, Program.Font, 20); { Text_Label.CenterOrigin(); Text_Label.SetPosition(new Vector2(0, -80)); Text_Label.Scroll = 0; //Text_Label.Color = Color.Green; } Image_Background.AddGraphic(Text_Label); // System type (i.e. map) Text_SystemType = new Text("(SystemType)", Program.Font, 16); { Text_SystemType.CenterOrigin(); Text_SystemType.SetPosition(new Vector2(0, -62)); Text_SystemType.Scroll = 0; Text_SystemType.Color = Color.Gray; } Image_Background.AddGraphic(Text_SystemType); // System information (i.e. number of planets) Text_SystemInfo = new Text("(Planets: N/A)", Program.Font, 12); { Text_SystemInfo.CenterOrigin(); Text_SystemInfo.SetPosition(new Vector2(0, -48)); Text_SystemInfo.Scroll = 0; Text_SystemInfo.Color = Color.Shade(0.7f); } Image_Background.AddGraphic(Text_SystemInfo); // Button Action Button_Action = new Entity_UI_Button(); { Vector2 pos = new Vector2(X - Game.Instance.HalfWidth, Y - Game.Instance.HalfHeight + 72); Button_Action.Offset.Y = -1; Button_Action.ButtonBounds = new Vector4(pos.X, pos.Y, 128, 48); Button_Action.Scroll = new Vector2(0, 0); Button_Action.Layer = Helper.Layer_UI; } UpdateButton(); // Add ui press collider AddCollider <BoxCollider>(new BoxCollider(Width, Height)); Collider.CenterOrigin(); Collider.SetPosition(-Game.Instance.HalfWidth, -Game.Instance.HalfHeight); Layer = Helper.Layer_UI; }
// Added To Scene: Initialise individual elements public override void Added() { base.Added(); // Panel image Image_Background = new Entity_Image(X, Y, "", false); { Image_Background.NineSlice(Program.PATH_PA + "media/ui/main/shared/img/panel/img_menu_panel.png", 24, 24, 256, 364); //Image_Background.SetTarget( center ); Image_Background.Layer = Helper.Layer_UI; } Scene.Instance.Add(Image_Background); // Icon image Image_Icon = new Entity_Image(X, Y - 96, IconFile); { //Image_Icon.SetTarget( center ); } Scene.Instance.Add(Image_Icon); // Card name Text_Label = new Text(Label, Program.Font, 20); { Text_Label.CenterOrigin(); Text_Label.SetPosition(new Vector2(0, 64)); Text_Label.Color = Color.Green; } Image_Icon.AddGraphic(Text_Label); // Description Text_Description = new RichText(Description, Program.Font, 12); { Text_Description.SetPosition(new Vector2(-128 + 16, 96)); Text_Description.TextWidth = 256 - 32; Text_Description.WordWrap = true; } Image_Icon.AddGraphic(Text_Description); // Panel image Image_Button_Background = new Entity_Image(X, Y + 140, "", false); { Image_Button_Background.NineSlice(Program.PATH_PA + "media/ui/main/shared/img/panel/img_panel_std_black.png", 120, 86, 326, 156); //Image_Button_Background.SetTarget( center ); } Scene.Instance.Add(Image_Button_Background); // Button Choose Button_Choose = new Entity_UI_Button(); { Button_Choose.Label = "DOWNLOAD"; Vector2 pos = new Vector2(X, Y + 134); Button_Choose.Center = Vector2.Zero; Button_Choose.Offset.Y = -1; Button_Choose.ButtonBounds = new Vector4(pos.X, pos.Y, 196, 48); Button_Choose.Scroll = new Vector2(1, 1); Button_Choose.OnPressed = delegate(Entity_UI_Button self) { self.Image.image.Color = self.Colour_Hover * Color.Gray; AudioManager.Instance.PlaySound("resources/audio/ui_click.wav"); }; Button_Choose.OnReleased = delegate(Entity_UI_Button self) { NetworkManager.SendPickCard(Label); Helper.GetGameScene().HideCards(); AudioManager.Instance.PlaySound("resources/audio/ui_click.wav"); }; Button_Choose.Layer = Helper.Layer_UI; } Scene.Instance.Add(Button_Choose); Layer = Helper.Layer_UI; }