/// <summary> /// This method initializes the element of the interface /// </summary> /// <param name="name"> A name to pass to generate the overaly </param> protected override void Load(string name) { base.Load(name); time = new Timer(); lives = new List <SceneNode>(); healthBar = OverlayManager.Singleton.GetOverlayElement("HealthBar"); hRatio = healthBar.Width / (float)characterStats.Health.Max; shieldBar = OverlayManager.Singleton.GetOverlayElement("ShieldBar"); sRatio = shieldBar.Width / (float)characterStats.Shield.Max; scoreText = OverlayManager.Singleton.GetOverlayElement("ScoreText"); scoreText.Caption = score; scoreText.Left = mWindow.Width * 0.5f; timeText = OverlayManager.Singleton.GetOverlayElement("TimerText"); timeText.Caption = timer; timeText.Left = mWindow.Width * 0.5f; gameOver = OverlayManager.Singleton.GetOverlayElement("GameOver"); gameOver.Caption = gover; gameOver.Left = mWindow.Width * 0.5f; gameOver.Hide(); scoreGameOver = OverlayManager.Singleton.GetOverlayElement("ScoreGameOver"); scoreGameOver.Left = mWindow.Width * 0.5f; gameOver.Hide(); levelCompleted = OverlayManager.Singleton.GetOverlayElement("LevelCompleted"); levelCompleted.Caption = levelCompletedText; levelCompleted.Left = mWindow.Width * 0.5f; levelCompleted.Hide(); newLevel = OverlayManager.Singleton.GetOverlayElement("NewLevel"); newLevel.Caption = newLevelText; newLevel.Left = mWindow.Width * 0.5f; newLevel.Hide(); panelGameMessage = (PanelOverlayElement)OverlayManager.Singleton.GetOverlayElement("GameMessage"); panelGameMessage.Width = mWindow.Width; panelGameMessage.Hide(); panel = (PanelOverlayElement)OverlayManager.Singleton.GetOverlayElement("GreenBackground"); panel.Width = mWindow.Width; LoadOverlay3D(); }
public override void Update(FrameEvent evt) { base.Update(evt); Animate(evt); if (lives.Count > characterStats.Lives.Value && characterStats.Lives.Value >= 0) { SceneNode life = lives[lives.Count - 1]; RemoveAndDestroyLife(life); } if (lives.Count < characterStats.Lives.Value) { AddHeart(characterStats.Lives.Value); } healthBar.Width = hRatio * characterStats.Health.Value; shieldBar.Width = sRatio * characterStats.Shield.Value; scoreText.Caption = score + ((PlayerStats)characterStats).Score.Value; if (Tutorial.win == true) { winText.Show(); } else if (clockText == "0:00") { //clockText = "0:00"; gameOverText.Show(); gameOver.Show(); timeText.Hide(); scoreText.Hide(); healthBar.Hide(); } else { clockText = convertTime(clock - time.Milliseconds); timeText.Caption = timer + clockText; } if (characterStats.Lives.Value == 0) { gameOverText.Show(); gameOver.Show(); timeText.Hide(); scoreText.Hide(); healthBar.Hide(); } levelText.Caption = leveltxt; }
/// <summary> /// This method disposes of the elements generated in the interface /// </summary> public override void Dispose() { base.Dispose(); List <SceneNode> toRemove = new List <SceneNode>(); foreach (SceneNode life in lives) { toRemove.Add(life); } foreach (SceneNode life in toRemove) { RemoveAndDestroyLife(life); } lifeEntity.Dispose(); toRemove.Clear(); shieldBar.Hide(); healthBar.Hide(); ammoText.Hide(); scoreText.Hide(); levelText.Hide(); timeText.Hide(); panel.Hide(); overlay3D.Hide(); shieldBar.Dispose(); healthBar.Dispose(); ammoText.Dispose(); scoreText.Dispose(); levelText.Dispose(); timeText.Dispose(); panel.Dispose(); overlay3D.Dispose(); }
//private bool dragging; public ListView(string name, float left, float top, float height, float width, List <string> columnNames) { listview = OverlayManager.Singleton.CreateOverlayElementFromTemplate("AMGE/UI/ListView", "BorderPanel", name) as OverlayContainer; scroll = listview.GetChild(name + "/ListViewScroll") as BorderPanelOverlayElement; drag = scroll.GetChild(name + "/ListViewScroll" + "/ListViewDrag") as OverlayElement; this.name = name; this.top = top; this.height = height; this.width = width; this.left = left; listview.Top = top; listview.Left = left; listview.Height = height; listview.Width = width; scroll.Height = height - 0.016f; drag.Hide(); //remove column's height maxShowItem = System.Math.Floor(Convert.ToDouble(float.Parse((height - 0.04f).ToString("0.00")) / 0.045f)); columns = new List <ListViewColumn>(); items = new List <ListViewItem>(); visibleItems = new List <ListViewItem>(); allUsedElements = new List <OverlayElement>(); mElement = listview; LoadColumns(columnNames); }
public void hideMessage() { // this.level = level; panelGameMessage.Hide(); levelCompleted.Hide(); newLevel.Hide(); }
private void CreateMessageContainer() { // BetaGUI.GUI gui = new GUI(); // Window w = gui.createWindow(); // w.createStaticImage() backgroundElement.Hide(); iconOverlay = OverlayManager.Singleton.GetByName("Wof/MessageBar"); iconElement = OverlayManager.Singleton.GetOverlayElement("Wof/MessageBarIcon"); iconElement.MetricsMode = GuiMetricsMode.GMM_RELATIVE; iconElement.SetDimensions(radioIconWidth, radioIconWidth); iconElement.Show(); iconOverlay.Hide(); // zewnetrzny kontener ukryje wszystko iconDefaultDimesions.x = Mogre.StringConverter.ParseReal(iconElement.GetParameter("width")); iconDefaultDimesions.y = Mogre.StringConverter.ParseReal(iconElement.GetParameter("height")); messageElement = OverlayManager.Singleton.CreateOverlayElement( "TextArea", "messageElement " + DateTime.Now.Ticks); messageContainer = (OverlayContainer)OverlayManager.Singleton.CreateOverlayElement( "Panel", "messageContainer " + DateTime.Now.Ticks); messageElement.SetDimensions(mainViewport.ActualWidth, mainViewport.ActualHeight); messageElement.MetricsMode = GuiMetricsMode.GMM_PIXELS; messageElement.SetParameter("font_name", FontManager.CurrentFont); messageElement.MetricsMode = GuiMetricsMode.GMM_RELATIVE; messageElement.SetParameter("char_height", StringConverter.ToString(EngineConfig.CurrentFontSize)); messageElement.SetParameter("colour_top", "0.1 0.1 0.1"); messageElement.SetParameter("colour_bottom", "0.5 0.1 0.1"); messageElement.Caption = ""; messageContainer.MetricsMode = GuiMetricsMode.GMM_RELATIVE; messageContainer.SetDimensions(1.0f, 0.05f); // messageContainer.SetPosition(0.055f, 0.015f); messageContainer.AddChild(messageElement); messageOverlay.Add2D(messageContainer); messageContainer.Show(); }
public void AddItem(List <string> item) { float left = 0.01f; ListViewItem lvi = new ListViewItem(); if (items.Count == 0) { lvi.Top = top + 0.042f; } else { ListViewItem lastLvi = items.Last(); lvi.Top = lastLvi.Top + 0.048f; } for (int i = 0; i < item.Count; i++) { PanelOverlayElement ListViewCell = OverlayManager.Singleton.CreateOverlayElementFromTemplate("ListView/ListViewCell", "Panel", "item" + Guid.NewGuid()) as PanelOverlayElement; var txtArea = ListViewCell.GetChild(ListViewCell.Name + "/ListViewCellCaption"); txtArea.Caption = item[i]; lvi.Items.Add(ListViewCell); ListViewCell.Top = lvi.Top; ListViewCell.Left = left; ListViewCell.Width = width / item.Count - 0.005f; var line = OverlayManager.Singleton.CreateOverlayElementFromTemplate("AMGE/UI/HorizalLine", "Panel", "colhorline" + Guid.NewGuid()) as PanelOverlayElement;; line.Left = 0.0f; line.Top = 0.0f; line.Width = ListViewCell.Width; line.Show(); ListViewCell.AddChild(line); left = left + ListViewCell.Width; if (items.Count >= maxShowItem) { ListViewCell.Hide(); } else { ListViewCell.Show(); } listview.AddChild(ListViewCell); } items.Add(lvi); if (items.Count >= maxShowItem) { drag.Show(); drag.Height = (float)(maxShowItem * 0.045f * Convert.ToDouble(maxShowItem / items.Count)); } else { drag.Hide(); } }
protected override void Load(string name) { base.Load(name); lives = new List <SceneNode>(); //time = new Timer(); //time = new System.Timers.Timer(10000); time = new Mogre.Timer(); //time.Milliseconds(); healthBar = OverlayManager.Singleton.GetOverlayElement("HealthBar"); hRatio = healthBar.Width / (float)characterStats.Health.Max; shieldBar = OverlayManager.Singleton.GetOverlayElement("ShieldBar"); sRatio = shieldBar.Width / (float)characterStats.Shield.Max; scoreText = OverlayManager.Singleton.GetOverlayElement("ScoreText"); scoreText.Caption = score; scoreText.Left = mWindow.Width * 0.5f; //OverlayManager.Singleton.CreateOverlayElement("timeText", "TimeText"); timeText = OverlayManager.Singleton.GetOverlayElement("TimeText"); timeText.Caption = timer; timeText.Left = mWindow.Width * 0.5f; timeText.Top = mWindow.Height * 0.05f; levelText = OverlayManager.Singleton.GetOverlayElement("LevelText"); levelText.Caption = leveltxt; levelText.Left = mWindow.Width * 0.3f; levelText.Top = mWindow.Height * 0.025f; winText = OverlayManager.Singleton.GetOverlayElement("WinText"); winText.Caption = win; winText.Left = mWindow.Width * 0.5f; winText.Top = mWindow.Height * 0.5f; winText.Hide(); gameOverText = OverlayManager.Singleton.GetOverlayElement("GameOverText"); gameOverText.Caption = gameOverTime; gameOverText.Left = mWindow.Width * 0.5f; gameOverText.Top = mWindow.Height * 0.1f; gameOverText.Hide(); gameOver = (PanelOverlayElement)OverlayManager.Singleton.GetOverlayElement("GameOver"); gameOver.Hide(); panel = (PanelOverlayElement)OverlayManager.Singleton.GetOverlayElement("GreenBackground"); panel.Width = mWindow.Width; LoadOverlay3D(); }
public void DestroyMessageContainer() { try { MaterialPtr mat = MaterialManager.Singleton.GetByName("MessageBarIcon"); mat.GetBestTechnique().GetPass(0).GetTextureUnitState(0).SetTextureName("radio.png"); } catch (Exception) { } if (messageOverlay != null) { messageOverlay.Hide(); messageOverlay.Dispose(); messageOverlay = null; } if (backgroundElement != null) { backgroundElement.Hide(); backgroundElement.Dispose(); backgroundElement = null; } messageContainer.Hide(); OverlayManager.Singleton.DestroyOverlayElement(messageElement); messageElement = null; messageContainer.Dispose(); messageContainer = null; if (iconOverlay != null) { iconElement.Hide(); iconElement.Dispose(); iconElement = null; iconOverlay.Hide(); iconOverlay.Dispose(); iconOverlay = null; } }
public GuiCursor(Panel cursor, List <string> subCursorList, int subCursorIndex) : base(cursor) { this.subCursorList = subCursorList; this.subCursorIndex = subCursorIndex; //sychronize cursors at start for (int index = 0; index < subCursorList.Count; index++) { OverlayElement subCursor = ((OverlayElementContainer)element).GetChild(subCursorList[index]); if (subCursorIndex == index) { subCursor.Show(); } else { subCursor.Hide(); } } }
public SimplePanelScrollableWidget(string name, float width = 0, float height = 0, float left = 0, float top = 0, float eachRowHeight = 0.03f, int col = 1, bool hasBorder = true) : base(name, width, height, left, top, (int)(height / eachRowHeight), col, hasBorder) { visualWidgets = new List <Widget>(); string scrollName = name + "_Scroll"; scroll = OverlayManager.Singleton.CreateOverlayElementFromTemplate("ScrollComponet", "BorderPanel", scrollName) as BorderPanelOverlayElement; drag = scroll.GetChild(scrollName + "/Drag") as OverlayElement; for (int i = 0; i < Rows.Count; i++) { Rows[i].Type = ValueType.Auto; } scroll.Left = -0.01f; scroll.Top = 0; AddChildOverlayElement(scroll); initDragTop = drag.Top; scroll.Hide(); drag.Hide(); }
/// <summary> /// This method updates the interface /// </summary> /// <param name="evt"></param> public override void Update(FrameEvent evt) ////////////Update { if (Globals.freezeGame == false) { base.Update(evt); Animate(evt); if (lives.Count > characterStats.Lives.Value && characterStats.Lives.Value >= 0) { SceneNode life = lives[lives.Count - 1]; RemoveAndDestroyLife(life); } if (lives.Count < characterStats.Lives.Value) { AddHeart(characterStats.Lives.Value); } healthBar.Width = hRatio * characterStats.Health.Value; shieldBar.Width = sRatio * characterStats.Shield.Value; scoreText.Caption = score + ((PlayerStats)characterStats).Score.Value; timeText.Caption = timer + DecreaseTime(time.Milliseconds); if (timeText.Caption.Contains("-") || (playerStats.Lives.Value == 0 && playerStats.Health.Value <= 0)) { // // timeText.Caption = "-time's up-"; timeText.Hide(); panel.Hide(); panelGameMessage.Show(); gameOver.Show(); scoreGameOver.Caption = score + ((PlayerStats)characterStats).Score.Value; scoreGameOver.Show(); Globals.freezeGame = true; } } }
/// <summary> /// This method initializes the element of the interface /// </summary> /// <param name="name"> A name to pass to generate the overaly </param> protected override void Load(string name) { base.Load(name); lives = new List <SceneNode>(); healthBar = OverlayManager.Singleton.GetOverlayElement("HealthBar"); hRatio = healthBar.Width / (float)characterStats.Health.Max; shieldBar = OverlayManager.Singleton.GetOverlayElement("ShieldBar"); //sRatio = shieldBar.Width / (float)characterStats.Shield.Max; sRatio = shieldBar.Width / (float)characterStats.Shield.Value; scoreText = OverlayManager.Singleton.GetOverlayElement("ScoreText"); scoreText.Caption = score; scoreText.Left = mWindow.Width * 0.5f; panel = (PanelOverlayElement)OverlayManager.Singleton.GetOverlayElement("GreenBackground"); panel.Width = mWindow.Width; LoadOverlay3D(); time = new Timer(); timeText = OverlayManager.Singleton.GetOverlayElement("TimeText"); timeText.Caption = timeDisplay; timeText.Left = mWindow.Width * 0.5f; gameWonText = OverlayManager.Singleton.GetOverlayElement("GameWonText"); gameWonText.Caption = wonDisplay; gameWonText.Left = mWindow.Width * 0.5f; //gameWonText.Top = mWindow.Height * 0.5f; gameWonText.Hide(); gameLostText = OverlayManager.Singleton.GetOverlayElement("GameLostText"); gameLostText.Caption = "Game Over!"; gameLostText.Left = mWindow.Width * 0.5f; //gameLostText.Top = mWindow.Height * 0.5f; gameLostText.Hide(); }
public override void Run() { meshLayer = OverlayManager.Singleton.Create("CharacterPreview"); meshLayer.ZOrder = 999; SceneManager scm = ScreenManager.Instance.Camera.SceneManager; ent = scm.CreateEntity(Guid.NewGuid().ToString(), meshName); sceneNode = scm.CreateSceneNode(); sceneNode.Translate(new Mogre.Vector3(0, 0, 0)); sceneNode.Rotate(Quaternion.IDENTITY); float lenght = ent.BoundingBox.Size.Length * 2; sceneNode.Translate(new Mogre.Vector3(-7f, 5f, -1.0f * lenght)); ent.RenderQueueGroup = (byte)RenderQueueGroupID.RENDER_QUEUE_MAX; ent.Skeleton.BlendMode = SkeletonAnimationBlendMode.ANIMBLEND_CUMULATIVE; baseAnim = ent.GetAnimationState(animNames[1]); topAnim = ent.GetAnimationState(animNames[0]); baseAnim.Enabled = true; topAnim.Enabled = true; baseAnim.Loop = true; topAnim.Loop = true; sceneNode.AttachObject(ent); meshLayer.Add3D(sceneNode); meshLayer.Show(); equipmentPanel = OverlayManager.Singleton.CreateOverlayElementFromTemplate("CharacterEquipment", "BorderPanel", "inventoryPanelLeftArea") as OverlayContainer; previewPanel = OverlayManager.Singleton.CreateOverlayElementFromTemplate("CharacterPreview", "BorderPanel", "inventoryPanelMiddleArea") as OverlayContainer; backpackPanel = OverlayManager.Singleton.CreateOverlayElementFromTemplate("CharacterBackpack", "BorderPanel", "inventoryPanelRightArea") as OverlayContainer; row = (int)System.Math.Round((backpackPanel.Height - 0.04) / INV_WIDTH); col = (int)System.Math.Round((backpackPanel.Width - 0.04) / INV_WIDTH); int row_counter = 1; int col_counter = 1; float topValue = 0.0f; float leftValue = 0.0f; for (int i = 0; i < 35; i++) { if (i == 0) { topValue = 0.02f; leftValue = 0.02f; } else if (col_counter <= col) { leftValue += INV_WIDTH; } else { topValue += INV_WIDTH; col_counter = 1; row_counter++; leftValue = 0.02f; } OverlayElement invSlotElement = OverlayManager.Singleton.CreateOverlayElementFromTemplate("InventorySlot", "BorderPanel", "INV_NO_" + i.ToString()); invSlotElement.MetricsMode = GuiMetricsMode.GMM_RELATIVE; invSlotElement.Left = leftValue; invSlotElement.Top = topValue; invSlotElement.Width = INV_WIDTH; invSlotElement.Height = INV_WIDTH; if (row_counter <= row) { backpackPanel.AddChild(invSlotElement); } else { invSlotElement.Hide(); backpackPanel.AddChild(invSlotElement); } elements.Add(invSlotElement); col_counter++; } GameManager.Instance.trayMgr.getTraysLayer().Add2D(equipmentPanel); GameManager.Instance.trayMgr.getTraysLayer().Add2D(previewPanel); GameManager.Instance.trayMgr.getTraysLayer().Add2D(backpackPanel); }
public void Hide() { element.Hide(); }
public void UpdateControl(float timeSinceLastFrame) { if (currentMessage == null) { if (messageQueue.Count != 0) { // Console.WriteLine("Enqueuing"); currentMessage = messageQueue[0]; PrepareMessage(); messageQueue.RemoveAt(0); if (currentMessage.NoBackground && messageElement != null && !messageElement.IsVisible) { ShowCurrentMessage(); } if (instantBackground && messageElement != null && !messageElement.IsVisible) { currentBgOpacity = bgAnimationMaxOpacity; SetBgOpacity(currentBgOpacity); ShowCurrentMessage(); } if (!currentMessage.NoBackground) { backgroundElement.Show(); isIncreasingBgOpacity = true; } } else { } } else { if (!currentMessage.NoBackground) { // BACKGROUND if (isIncreasingBgOpacity) { if (currentBgOpacity < bgAnimationMaxOpacity) { SetBgOpacity(currentBgOpacity); currentBgOpacity += timeSinceLastFrame / bgAnimationLength; return; } else { isIncreasingBgOpacity = false; currentBgOpacity = bgAnimationMaxOpacity; // pokaz ShowCurrentMessage(); backgroundElement.Show(); } } else if (isDecreasingBgOpacity) { if (currentBgOpacity > 0.0f) { SetBgOpacity(currentBgOpacity); currentBgOpacity -= timeSinceLastFrame / bgAnimationLength; return; } else { isDecreasingBgOpacity = false; currentBgOpacity = 0; // ukryj backgroundElement.Hide(); ClearMessage(); return; } } else { UpdateMessage(); } } else { // no background // show // Console.WriteLine("Showing"); if (messageElement != null && !messageElement.IsVisible) { ShowCurrentMessage(); } isDecreasingBgOpacity = false; isIncreasingBgOpacity = false; } TimeSpan diff = DateTime.Now.Subtract(startTime); if (!currentMessage.Permanent && diff.TotalMilliseconds > currentMessage.Time) { // Console.WriteLine("Clearing"); isDecreasingBgOpacity = true; if (messageElement != null) { messageElement.Hide(); } if (iconOverlay != null && iconOverlay.IsVisible) { iconOverlay.Hide(); } if (instantBackground) { backgroundElement.Hide(); ClearMessage(); } if (currentMessage.NoBackground) { ClearMessage(); isDecreasingBgOpacity = false; isIncreasingBgOpacity = false; } } } }