public UIDialog(UIDialogStyle style, bool draggable) { int dragHeight = 0; switch (style) { case UIDialogStyle.Standard: var tx = GetTexture((ulong)FileIDs.UIFileIDs.dialog_backgroundtemplate); Background = new UIImage(tx) .With9Slice(41, 41, 60, 40); break; case UIDialogStyle.StandardTall: Background = new UIImage(GetTexture((ulong)FileIDs.UIFileIDs.dialog_backgroundtemplatetall)) .With9Slice(41, 41, 66, 40); break; } Background.ID = "Background"; /** Drag area **/ if (draggable) { Background.ListenForMouse(new UIMouseEvent(DragMouseEvents)); } this.Add(Background); }
public LoginScreen() { /** * Scale the whole screen to 1024 */ BackgroundCtnr = new UIContainer(); BackgroundCtnr.ScaleX = BackgroundCtnr.ScaleY = ScreenWidth / 800.0f; /** Background image **/ Background = new UIImage(GetTexture((ulong)FileIDs.UIFileIDs.setup)); Background.ID = "Background"; BackgroundCtnr.Add(Background); var lbl = new UILabel(); lbl.Caption = "Version 1.1097.1.0"; lbl.X = 20; lbl.Y = 558; BackgroundCtnr.Add(lbl); this.Add(BackgroundCtnr); LoginProgress = new UILoginProgress(); LoginProgress.X = (ScreenWidth - (LoginProgress.Width + 20)); LoginProgress.Y = (ScreenHeight - (LoginProgress.Height + 20)); LoginProgress.Opacity = 0.9f; this.Add(LoginProgress); LoginDialog = new UILoginDialog(this); LoginDialog.Opacity = 0.9f; //Center LoginDialog.X = (ScreenWidth - LoginDialog.Width) / 2; LoginDialog.Y = (ScreenHeight - LoginDialog.Height) / 2; this.Add(LoginDialog); }
/// <summary> /// Creates a new UILotControl instance. /// </summary> /// <param name="vm">A SimAntics VM instance.</param> /// <param name="World">A World instance.</param> public UILotControl(TSO.Simantics.VM vm, World World) { this.vm = vm; this.World = World; ActiveEntity = vm.Entities.FirstOrDefault(x => x is VMAvatar); MouseEvt = this.ListenForMouse(new Microsoft.Xna.Framework.Rectangle(0, 0, GlobalSettings.Default.GraphicsWidth, GlobalSettings.Default.GraphicsHeight), OnMouse); testimg = new UIImage(); testimg.X = 20; testimg.Y = 20; this.Add(testimg); Queue = new UIInteractionQueue(ActiveEntity); this.Add(Queue); }
public UILoginProgress() : base(UIDialogStyle.Standard, false) { this.SetSize(400, 180); this.Caption = GameFacade.Strings.GetString("210", "1"); /** * Label background */ var bgImg = new UIImage(UITextBox.StandardBackground) { X = 20, Y = 120 }; bgImg.SetSize(360, 27); this.Add(bgImg); m_ProgressBar = new UIProgressBar() { X = 20, Y = 66, Value = 0 }; m_ProgressBar.SetSize(360, 27); this.Add(m_ProgressBar); this.Add(new UILabel { Caption = GameFacade.Strings.GetString("210", "2"), X = 20, Y = 44 }); this.Add(new UILabel { Caption = GameFacade.Strings.GetString("210", "3"), X = 20, Y = 97 }); m_ProgressLabel = new UILabel{ Caption = GameFacade.Strings.GetString("210", "4"), X = 31, Y = 122 }; this.Add(m_ProgressLabel); }
/// <summary> /// Creates a new CityTransitionScreen. /// </summary> /// <param name="SelectedCity">The city being transitioned to.</param> /// <param name="CharacterCreated">If transitioning from CreateASim, this should be true. /// A CharacterCreateCity packet will be sent to the CityServer. Otherwise, this should be false. /// A CityToken packet will be sent to the CityServer.</param> public CityTransitionScreen(CityInfo SelectedCity, bool CharacterCreated) { m_SelectedCity = SelectedCity; m_CharacterCreated = CharacterCreated; /** * Scale the whole screen to 1024 */ m_BackgroundCtnr = new UIContainer(); m_BackgroundCtnr.ScaleX = m_BackgroundCtnr.ScaleY = ScreenWidth / 800.0f; /** Background image **/ m_Background = new UIImage(GetTexture((ulong)FileIDs.UIFileIDs.setup)); m_Background.ID = "Background"; m_BackgroundCtnr.Add(m_Background); var lbl = new UILabel(); lbl.Caption = "Version "+GlobalSettings.Default.ClientVersion; lbl.X = 20; lbl.Y = 558; m_BackgroundCtnr.Add(lbl); this.Add(m_BackgroundCtnr); m_LoginProgress = new UILoginProgress(); m_LoginProgress.X = (ScreenWidth - (m_LoginProgress.Width + 20)); m_LoginProgress.Y = (ScreenHeight - (m_LoginProgress.Height + 20)); m_LoginProgress.Opacity = 0.9f; this.Add(m_LoginProgress); NetworkFacade.Controller.OnNetworkError += new NetworkErrorDelegate(Controller_OnNetworkError); LoginArgsContainer LoginArgs = new LoginArgsContainer(); LoginArgs.Username = NetworkFacade.Client.ClientEncryptor.Username; LoginArgs.Password = Convert.ToBase64String(PlayerAccount.Hash); LoginArgs.Enc = NetworkFacade.Client.ClientEncryptor; NetworkFacade.Client = new NetworkClient(SelectedCity.IP, SelectedCity.Port); //THIS IS IMPORTANT - THIS NEEDS TO BE COPIED AFTER IT HAS BEEN RECREATED FOR //THE RECONNECTION TO WORK! LoginArgs.Client = NetworkFacade.Client; NetworkFacade.Client.OnConnected += new OnConnectedDelegate(Client_OnConnected); NetworkFacade.Controller.Reconnect(ref NetworkFacade.Client, SelectedCity, LoginArgs); NetworkFacade.Controller.OnCharacterCreationStatus += new OnCharacterCreationStatusDelegate(Controller_OnCharacterCreationStatus); NetworkFacade.Controller.OnCityTransferProgress += new OnCityTransferProgressDelegate(Controller_OnCityTransfer); }
public MaxisLogo() : base() { /** * Scale the whole screen to 1024 */ BackgroundCtnr = new UIContainer(); BackgroundCtnr.ScaleX = BackgroundCtnr.ScaleY = GlobalSettings.Default.GraphicsWidth / 640.0f; /** Background image **/ m_MaxisLogo = new UIImage(GetTexture((ulong)FileIDs.UIFileIDs.maxislogo)); BackgroundCtnr.Add(m_MaxisLogo); this.Add(BackgroundCtnr); m_CheckProgressTimer = new Timer(); m_CheckProgressTimer.Interval = 5000; m_CheckProgressTimer.Elapsed += new ElapsedEventHandler(m_CheckProgressTimer_Elapsed); m_CheckProgressTimer.Start(); }
public LoginScreen() { /** * Scale the whole screen to 1024 */ BackgroundCtnr = new UIContainer(); BackgroundCtnr.ScaleX = BackgroundCtnr.ScaleY = ScreenWidth / 800.0f; /** Background image **/ Background = new UIImage(GetTexture((ulong)FileIDs.UIFileIDs.setup)); Background.ID = "Background"; BackgroundCtnr.Add(Background); var lbl = new UILabel(); lbl.Caption = "Version " + GlobalSettings.Default.ClientVersion; lbl.X = 20; lbl.Y = 558; BackgroundCtnr.Add(lbl); this.Add(BackgroundCtnr); LoginProgress = new UILoginProgress(); LoginProgress.X = (ScreenWidth - (LoginProgress.Width + 20)); LoginProgress.Y = (ScreenHeight - (LoginProgress.Height + 20)); LoginProgress.Opacity = 0.9f; this.Add(LoginProgress); LoginDialog = new UILoginDialog(this); LoginDialog.Opacity = 0.9f; //Center LoginDialog.X = (ScreenWidth - LoginDialog.Width) / 2; LoginDialog.Y = (ScreenHeight - LoginDialog.Height) / 2; this.Add(LoginDialog); NetworkFacade.Controller.OnNetworkError += new NetworkErrorDelegate(Controller_OnNetworkError); NetworkFacade.Controller.OnLoginProgress += new OnProgressDelegate(Controller_OnLoginProgress); NetworkFacade.Controller.OnLoginStatus += new OnLoginStatusDelegate(Controller_OnLoginStatus); }
/// <summary> /// Creates a new UILotControl instance. /// </summary> /// <param name="vm">A SimAntics VM instance.</param> /// <param name="World">A World instance.</param> public UILotControl(TSO.Simantics.VM vm, World World) { this.vm = vm; this.World = World; ActiveEntity = vm.Entities.FirstOrDefault(x => x is VMAvatar); MouseEvt = this.ListenForMouse(new Microsoft.Xna.Framework.Rectangle(0, 0, GlobalSettings.Default.GraphicsWidth, GlobalSettings.Default.GraphicsHeight), OnMouse); testimg = new UIImage(); testimg.X = 20; testimg.Y = 20; this.Add(testimg); Queue = new UIInteractionQueue(ActiveEntity); this.Add(Queue); ObjectHolder = new UIObjectHolder(vm, World, this); QueryPanel = new UIQueryPanel(World); QueryPanel.OnSellBackClicked += ObjectHolder.SellBack; QueryPanel.X = 177; QueryPanel.Y = GlobalSettings.Default.GraphicsHeight - 228; this.Add(QueryPanel); vm.OnDialog += vm_OnDialog; }
public LoadingScreen() { /** * Scale the whole screen to 1024 */ BackgroundCtnr = new UIContainer(); BackgroundCtnr.ScaleX = BackgroundCtnr.ScaleY = ScreenWidth / 800.0f; /** Background image **/ Background = new UIImage(GetTexture((ulong)FileIDs.UIFileIDs.setup)); BackgroundCtnr.Add(Background); //TODO: Letter spacing is a bit wrong on this label var lbl = new UILabel(); lbl.Caption = GameFacade.Strings.GetString("154", "5"); lbl.X = 0; lbl.Size = new Microsoft.Xna.Framework.Vector2(800, 100); lbl.Y = 508; var style = lbl.CaptionStyle.Clone(); style.Size = 17; lbl.CaptionStyle = style; BackgroundCtnr.Add(lbl); this.Add(BackgroundCtnr); ProgressLabel1 = new UILabel { X = 0, Y = 550, Size = new Microsoft.Xna.Framework.Vector2(800, 100), CaptionStyle = style }; ProgressLabel2 = new UILabel { X = 0, Y = 550, Size = new Microsoft.Xna.Framework.Vector2(800, 100), CaptionStyle = style }; BackgroundCtnr.Add(ProgressLabel1); BackgroundCtnr.Add(ProgressLabel2); PreloadLabels = new string[]{ GameFacade.Strings.GetString("155", "6"), GameFacade.Strings.GetString("155", "7"), GameFacade.Strings.GetString("155", "8"), GameFacade.Strings.GetString("155", "9") }; CurrentPreloadLabel = 0; AnimateLabel("", PreloadLabels[0]); CheckProgressTimer = new Timer(); CheckProgressTimer.Interval = 5; CheckProgressTimer.Elapsed += new ElapsedEventHandler(CheckProgressTimer_Elapsed); CheckProgressTimer.Start(); PlayBackgroundMusic(GameFacade.GameFilePath("music\\stations\\latin\\latin3_7df26b84.mp3")); //GameFacade.Screens.Tween.To(rect, 10.0f, new Dictionary<string, float>() { // {"X", 500.0f} //}, TweenQuad.EaseInOut); }