public UIDialog(DialogMode mode) { m_Mode = mode; m_BackgroundImg = new UIImage(); m_Text = new UIText(); m_Block = new UIBlock(); m_Block.Rect = new Rect(0, 0, Screen.width, Screen.height); Add(m_Block); Add(m_BackgroundImg); Add(m_Text); if (m_Mode == DialogMode.YES_OR_NO) { m_YesButton = new UITextButton(); m_NoButton = new UITextButton(); m_CloseButton = new UIClickButton(); Add(m_YesButton); Add(m_NoButton); Add(m_CloseButton); } else if (m_Mode == DialogMode.TAP_TO_DISMISS) { m_TipText = new UIText(); Add(m_TipText); } SetUIHandler(this); }
public void OpenEditPanel(UIMessage message) { if (!screen.HasChild(panelEdit)) { panelEdit = new UIPanel(); panelEdit.Width.Set(0, 0.1f); panelEdit.Height.Set(0, 0.1f); panelEdit.Left.Pixels = Main.mouseX; panelEdit.Top.Pixels = Main.mouseY; panelEdit.SetPadding(0); screen.Append(panelEdit); UITextButton buttonDelete = new UITextButton("Delete"); buttonDelete.Width.Set(-16, 1); buttonDelete.Height.Set(-12, 0.5f); buttonDelete.Left.Pixels = 8; buttonDelete.Top.Pixels = 8; buttonDelete.OnClick += async delegate { if (message.message.Author.Id == DTT.Instance.currentClient.CurrentUser.Id) { gridMessages.Remove(message); gridMessages.RecalculateChildren(); screen.RemoveChild(panelEdit); await message.message.DeleteAsync(); } }; panelEdit.Append(buttonDelete); } else { screen.RemoveChild(panelEdit); } }
public TapeMeasurePanel(Items.TapeMeasure measure) : base(measure) { Width.Percent = 20; Height.Percent = 20; UIText textLabel = new UIText(Container.DisplayName.GetTranslation()) { X = { Percent = 50 }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textLabel); UITextButton buttonClose = new UITextButton("X") { Size = new Vector2(20), X = { Pixels = -20, Percent = 100 }, Padding = Padding.Zero, RenderPanel = false, HoverText = Language.GetText("Mods.BaseLibrary.UI.Close") }; buttonClose.OnClick += args => PanelUI.Instance.CloseUI(Container); Add(buttonClose); UIColorSelection wheel = new UIColorSelection(Container.Color) { Y = { Pixels = 28 }, Width = { Percent = 100 }, Height = { Pixels = -28, Percent = 100 } }; Add(wheel); }
// Use this for initialization void Start() { buttons = new List <UIButton>(); attributeViewMap = new Dictionary <AttributeType, UISkillView>(); skillViewMap = new Dictionary <SkillType, UISkillView>(); Character character = avatarController.character; listController.inputModule = avatarController.inputModule; int k = 0; foreach (JournalEntry entry in PlayerJournal.entries) { UITextButton textButton = Instantiate(journalEntryPrefab); int i = k++; textButton.transform.SetParent(journalEntryParent); textButton.text = entry.header; textButton.onClick.AddListener(() => entrySelected(entry, i)); buttons.Add(textButton); } selectedIndex = 0; }
public SimpleBloodAnalyzer(TileEntities.SimpleBloodAnalyzer analyzer) : base(analyzer) { Width.Pixels = 408; Height.Pixels = 172; UITextButton buttonClose = new UITextButton("X") { Size = new Vector2(20), X = { Percent = 100 }, Padding = Padding.Zero, RenderPanel = false }; buttonClose.OnClick += args => PanelUI.Instance.CloseUI(Container); Add(buttonClose); UIText textLabel = new UIText("Simple Blood Analyzer") { Width = { Percent = 100 }, Height = { Pixels = 20 }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textLabel); }
private void updateView(IQuickMenuInteractionCollection collection) { interactions = collection.interactions; clearIcons(); if (buttons == null) { buttons = new List <UITextButton>(); } foreach (QuickMenuInteraction interaction in interactions) { UITextButton quickMenuIcon = createQuickMenuItem(interaction); quickMenuIcon.transform.SetParent(iconParent, false); buttons.Add(quickMenuIcon); } for (int i = 0; i < buttons.Count; i++) { buttons[i].neighborTop = buttons[NeverdawnUtility.RepeatIndex(i - 1, buttons.Count)]; buttons[i].neighborBottom = buttons[NeverdawnUtility.RepeatIndex(i + 1, buttons.Count)]; } icon.sprite = collection.icon; textLabel.text = collection.label; textDescription.text = collection.description; }
public void CreateKeyboard() { string keys = "qwertyuiop"; string keys2 = "asdfghjkl"; string keys3 = "zxcvbnm"; List <UITextButton> keyList = new List <UITextButton>(); int count = 0; foreach (char c in keys) { Vector3 keyPos = new Vector3((float)(count % 10) * .6f - 2.7f, -1.8f, 0f); GameObject key = (GameObject)Instantiate(keyPrefab, transform); key.transform.localPosition = keyPos; UITextButton keyScript = key.GetComponent <UITextButton>(); keyScript.text.text = c.ToString(); keyScript.keyType = "keyboard"; keyList.Add(keyScript); keyScript.initialScale = new Vector3(.5f, .5f, .01f); keyScript.scaleSet = true; keyScript.keyName = c.ToString(); keyScript.transform.localScale = new Vector3(); count++; } count = 0; foreach (char c in keys2) { Vector3 keyPos = new Vector3((float)(count % 9) * .6f + .3f - 2.7f, -.6f - 1.8f, 0f); GameObject key = (GameObject)Instantiate(keyPrefab, transform); key.transform.localPosition = keyPos; UITextButton keyScript = key.GetComponent <UITextButton>(); keyScript.text.text = c.ToString(); keyScript.keyType = "keyboard"; keyList.Add(keyScript); keyScript.initialScale = new Vector3(.5f, .5f, .01f); keyScript.scaleSet = true; keyScript.keyName = c.ToString(); keyScript.transform.localScale = new Vector3(); count++; } count = 0; foreach (char c in keys3) { Vector3 keyPos = new Vector3((float)(count % 8) * .6f + .6f - 2.7f, -1.2f - 1.8f, 0f); GameObject key = (GameObject)Instantiate(keyPrefab, transform); key.transform.localPosition = keyPos; UITextButton keyScript = key.GetComponent <UITextButton>(); keyScript.text.text = c.ToString(); keyScript.keyType = "keyboard"; keyList.Add(keyScript); keyScript.initialScale = new Vector3(.5f, .5f, .01f); keyScript.scaleSet = true; keyScript.keyName = c.ToString(); keyScript.transform.localScale = new Vector3(); count++; } }
public UIMainMenu() { SetWidth(ScreenManager.Instance.ScreenWidth); SetHeight(ScreenManager.Instance.ScreenHeight); ConsumesMouse = false; Logo = new UIImage(new SpriteAnimation(Assets.Logo, 1, 1, true)) { HAlign = 0.5f, VAlign = 0.3f, Scale = 3.5f }; UITextButton startGame = new UITextButton("New Game", 200, 50); startGame.Text.Scale = 1f; startGame.HAlign = 0.5f; startGame.VAlign = 0.8f; startGame.TakesPriority = true; startGame.OnClick += StartGame_OnClick; UITextButton endGame = new UITextButton("Quit", 200, 50); endGame.Text.Scale = 1f; endGame.HAlign = 0.5f; endGame.VAlign = 0.9f; endGame.TakesPriority = true; endGame.OnClick += EndGame_OnClick; Append(startGame); Append(endGame); Append(Logo); UIFadeIn fadeIn = new UIFadeIn() { Opacity = 3f }; UIBKBLogo logo = new UIBKBLogo { HAlign = 0.5f, VAlign = 0.5f, Scale = 0.5f }; fadeIn.Append(logo); fadeIn.TakesPriority = true; Append(fadeIn); logoScale = 0; }
public ProviderModulePanel(ProviderModule module) : base(module) { Width.Pixels = 200; Height.Pixels = 64; UIText textLabel = new UIText("Provider Module") { Width = { Percent = 100 }, Height = { Pixels = 20 }, X = { Percent = 50 }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textLabel); UITextButton buttonClose = new UITextButton("X") { Size = new Vector2(20), X = { Percent = 100 }, Padding = Padding.Zero, RenderPanel = false }; buttonClose.OnClick += args => PanelUI.Instance.CloseUI(Container); Add(buttonClose); UIText textMode = new UIText(module.mode.ToString()) { Width = { Percent = 100 }, Height = { Pixels = 20 }, X = { Percent = 50 }, Y = { Pixels = 28 }, HorizontalAlignment = HorizontalAlignment.Center }; textMode.OnMouseDown += args => { if (args.Button != MouseButton.Left) { return; } args.Handled = true; module.mode = module.mode.NextEnum(); textMode.Text = module.mode.ToString(); }; Add(textMode); }
public BaseBagPanel(BaseBag bag) : base((T)bag) { UIText textLabel = new UIText(Container.DisplayName.GetTranslation()) { X = { Percent = 50 }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textLabel); UIButton buttonLootAll = new UIButton(PortableStorage.textureLootAll) { Size = new Vector2(20), HoverText = Language.GetText("LegacyInterface.29") }; buttonLootAll.OnClick += args => ItemUtility.LootAll(Container.Handler, Main.LocalPlayer); Add(buttonLootAll); UIButton buttonDepositAll = new UIButton(PortableStorage.textureDepositAll) { Size = new Vector2(20), X = { Pixels = 28 }, HoverText = Language.GetText("LegacyInterface.30") }; buttonDepositAll.OnClick += args => ItemUtility.DepositAll(Container.Handler, Main.LocalPlayer); Add(buttonDepositAll); buttonQuickStack = new UIButton(PortableStorage.textureQuickStack) { Size = new Vector2(20), X = { Pixels = 56 }, HoverText = Language.GetText("LegacyInterface.31") }; buttonQuickStack.OnClick += args => ItemUtility.QuickStack(Container.Handler, Main.LocalPlayer); Add(buttonQuickStack); UITextButton buttonClose = new UITextButton("X") { Size = new Vector2(20), X = { Percent = 100 }, Padding = Padding.Zero, RenderPanel = false }; buttonClose.OnClick += args => PanelUI.Instance.CloseUI(Container); Add(buttonClose); }
//private void createAngles() //{ // itemSize = iconPrefab.GetComponent<RectTransform>().sizeDelta.y / 2.0f; // angles = new float[infiniteModeTreshold + 1]; // angles[0] = angleOffset; // for (int i = 1; i < infiniteModeTreshold; i++) // { // float scalePrev = Mathf.Clamp(1f - 0.1f * (i - 1), 0.5f, 1f); // float scaleCurr = Mathf.Clamp(1f - 0.1f * i, 0.5f, 1f); // float anglePrev = ((scalePrev * itemSize) / (2.0f * Mathf.PI * (radius + itemSize * scalePrev))) * 360.0f; // float angleCurr = ((scaleCurr * itemSize) / (2.0f * Mathf.PI * (radius + itemSize * scaleCurr))) * 360.0f; // angles[i] = angles[i - 1] + anglePrev + angleCurr + angleGap; // } // angles[0] -= 2; //} private UITextButton createQuickMenuItem(QuickMenuInteraction interaction) { UITextButton button = Instantiate(buttonPrefab); button.text = interaction.label; // button.SetIconSprite(interaction.GetIcon()); //iconButton.angles = angles; //iconButton.radius = radius; //iconButton.size = itemSize; button.onClick.AddListener(() => interactionClicked(interaction)); button.onSelect.AddListener(() => updateSelection(interaction)); return(button); }
public ConsumerModulePanel(ConsumerModule module) : base(module) { Width.Pixels = 16 + (SlotSize + SlotMargin) * 9 - SlotMargin; Height.Pixels = 44 + SlotSize; UIText textLabel = new UIText("Consumer Module") { Width = { Percent = 100 }, Height = { Pixels = 20 }, X = { Percent = 50 }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textLabel); UITextButton buttonClose = new UITextButton("X") { Size = new Vector2(20), X = { Percent = 100 }, Padding = Padding.Zero, RenderPanel = false }; buttonClose.OnClick += args => PanelUI.Instance.CloseUI(Container); Add(buttonClose); UIGrid <UIConsumerSlot> gridSlots = new UIGrid <UIConsumerSlot>(9) { Y = { Pixels = 28 }, Width = { Percent = 100 }, Height = { Pixels = -28, Percent = 100 } }; Add(gridSlots); for (int i = 0; i < module.Items.Count; i++) { UIConsumerSlot slot = new UIConsumerSlot(module, i); gridSlots.Add(slot); } }
public QEChestPanel(QEChest chest) : base(chest) { Width.Pixels = 16 + (SlotSize + SlotMargin) * 9 - SlotMargin; Height.Pixels = 44 + (SlotSize + SlotMargin) * 3 - SlotMargin; UIText textLabel = new UIText(Language.GetText("Mods.QuantumStorage.MapObject.QEChest")) { X = { Percent = 50 }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textLabel); UITextButton buttonReset = new UITextButton("R") { Size = new Vector2(20), RenderPanel = false, Padding = BaseLibrary.UI.Padding.Zero, HoverText = Language.GetText("Mods.QuantumStorage.UI.Reset") }; buttonReset.OnClick += args => { if (!Container.frequency.IsSet) { for (int i = 0; i < 3; i++) { Main.LocalPlayer.PutItemInInventory(Utility.ColorToItem(Container.frequency[i])); } Container.frequency = new Frequency(); if (Main.netMode == NetmodeID.MultiplayerClient) { NetMessage.SendData(MessageID.TileEntitySharing, -1, -1, null, Container.ID, Container.Position.X, Container.Position.Y); } } else { for (int i = 0; i < 3; i++) { Main.LocalPlayer.PutItemInInventory(Utility.ColorToItem(Container.frequency[i])); } Container.frequency = new Frequency(); if (Main.netMode == NetmodeID.MultiplayerClient) { NetMessage.SendData(MessageID.TileEntitySharing, -1, -1, null, Container.ID, Container.Position.X, Container.Position.Y); } Remove(GridItems); InitializeFrequencySelection(); for (int i = 0; i < 3; i++) { Add(buttonsFrequency[i]); } Add(buttonInitialize); } }; Add(buttonReset); UITextButton buttonClose = new UITextButton("X") { Size = new Vector2(20), X = { Percent = 100 }, RenderPanel = false, Padding = BaseLibrary.UI.Padding.Zero, HoverText = Language.GetText("Mods.BaseLibrary.UI.Close") }; buttonClose.OnClick += args => PanelUI.Instance.CloseUI(Container); Add(buttonClose); if (!Container.frequency.IsSet) { InitializeFrequencySelection(); for (int i = 0; i < 3; i++) { Add(buttonsFrequency[i]); } Add(buttonInitialize); } else { Add(GridItems); } }
private void InitializeFrequencySelection() { buttonsFrequency = new UIButton[3]; for (int i = 0; i < 3; i++) { int pos = i; buttonsFrequency[i] = new UIButton(QuantumStorage.textureGemsMiddle, new Rectangle(8 * (int)Container.frequency[pos], 0, 8, 10)) { Size = new Vector2(16, 20), X = { Percent = 40 + 10 * pos }, Y = { Percent = 50 } }; buttonsFrequency[i].OnClick += args => { if (Utility.ValidItems.ContainsKey(Main.mouseItem.type)) { if (Container.frequency[pos] != Colors.None) { Main.LocalPlayer.PutItemInInventory(Utility.ColorToItem(Container.frequency[pos])); } Container.frequency[pos] = Utility.ValidItems[Main.mouseItem.type]; buttonsFrequency[pos].texture = QuantumStorage.textureGemsMiddle; buttonsFrequency[pos].sourceRectangle = new Rectangle(8 * (int)Container.frequency[pos], 0, 8, 10); if (Main.netMode == NetmodeID.MultiplayerClient) { NetMessage.SendData(MessageID.TileEntitySharing, -1, -1, null, Container.ID, Container.Position.X, Container.Position.Y); } Main.mouseItem.stack--; if (Main.mouseItem.stack <= 0) { Main.mouseItem.TurnToAir(); } if (Container.frequency.IsSet) { buttonInitialize.text = Language.GetTextValue("Mods.QuantumStorage.UI.Initialize"); } } }; } buttonInitialize = new UITextButton(Language.GetText("Mods.QuantumStorage.UI.InsertGems")) { Width = { Pixels = -64, Percent = 100 }, Height = { Pixels = 40 }, Y = { Percent = 100 }, X = { Percent = 50 } }; buttonInitialize.OnClick += args => { if (!Container.frequency.IsSet) { return; } for (int i = 0; i < 3; i++) { Remove(buttonsFrequency[i]); } Remove(buttonInitialize); Add(GridItems); }; }
public MiningLaserPanel(MiningLaser container) : base(container) { Width.Pixels = 400; Height.Pixels = 232; BackgroundColor = new Color(38, 49, 90); UIText textLabel = new UIText(Language.GetText("Mods.Gelum.MapObject.MiningLaser")) { X = { Percent = 50 }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textLabel); UIEnergyStore energy = new UIEnergyStore(container) { Width = { Pixels = 64 }, Height = { Pixels = 64 }, X = { Percent = 50 }, Y = { Pixels = 28 } }; Add(energy); UIContainerSlot slot = new UIContainerSlot(() => Handler) { X = { Percent = 50 }, Y = { Percent = 100 }, Width = { Pixels = 54 }, Height = { Pixels = 54 } }; Add(slot); #region Radius UIText textRadius = new UIText("Radius: " + container.radius) { X = { Percent = 50 }, Y = { Pixels = 105 }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textRadius); UITextButton buttonDecRadius = new UITextButton("--") { Y = { Pixels = 100 }, Width = { Pixels = 40 }, Height = { Pixels = 20 }, Padding = Padding.Zero }; buttonDecRadius.OnClick += _ => { if (container.radius > 10) { container.radius -= 10; container.CurrentTile = Point16.NegativeOne; } textRadius.Text = "Radius: " + container.radius; }; Add(buttonDecRadius); buttonDecRadius = new UITextButton("-") { X = { Pixels = 48 }, Y = { Pixels = 100 }, Width = { Pixels = 40 }, Height = { Pixels = 20 }, Padding = Padding.Zero }; buttonDecRadius.OnClick += _ => { if (container.radius > 1) { container.radius--; container.CurrentTile = Point16.NegativeOne; } textRadius.Text = "Radius: " + container.radius; }; Add(buttonDecRadius); UITextButton buttonIncRadius = new UITextButton("+") { X = { Percent = 100, Pixels = -48 }, Y = { Pixels = 100 }, Width = { Pixels = 40 }, Height = { Pixels = 20 }, Padding = Padding.Zero }; buttonIncRadius.OnClick += _ => { container.radius++; container.CurrentTile = Point16.NegativeOne; textRadius.Text = "Radius: " + container.radius; }; Add(buttonIncRadius); buttonIncRadius = new UITextButton("++") { X = { Percent = 100 }, Y = { Pixels = 100 }, Width = { Pixels = 40 }, Height = { Pixels = 20 }, Padding = Padding.Zero }; buttonIncRadius.OnClick += _ => { container.radius += 10; container.CurrentTile = Point16.NegativeOne; textRadius.Text = "Radius: " + container.radius; }; Add(buttonIncRadius); #endregion #region Depth UIText textDepth = new UIText("Depth: " + container.height) { X = { Percent = 50 }, Y = { Pixels = 128 }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textDepth); UITextButton buttonDecDepth = new UITextButton("---") { Y = { Pixels = 128 }, Width = { Pixels = 40 }, Height = { Pixels = 20 }, Padding = Padding.Zero }; buttonDecDepth.OnClick += _ => { if (container.height > 100) { container.height -= 100; container.CurrentTile = Point16.NegativeOne; } textDepth.Text = "Depth: " + container.height; }; Add(buttonDecDepth); buttonDecDepth = new UITextButton("--") { X = { Pixels = 48 }, Y = { Pixels = 128 }, Width = { Pixels = 40 }, Height = { Pixels = 20 }, Padding = Padding.Zero }; buttonDecDepth.OnClick += _ => { if (container.height > 10) { container.height -= 10; container.CurrentTile = Point16.NegativeOne; } textDepth.Text = "Depth: " + container.height; }; Add(buttonDecDepth); buttonDecDepth = new UITextButton("-") { X = { Pixels = 96 }, Y = { Pixels = 128 }, Width = { Pixels = 40 }, Height = { Pixels = 20 }, Padding = Padding.Zero }; buttonDecDepth.OnClick += _ => { if (container.height > 1) { container.height--; container.CurrentTile = Point16.NegativeOne; } textDepth.Text = "Depth: " + container.height; }; Add(buttonDecDepth); UITextButton buttonIncDepth = new UITextButton("+") { X = { Percent = 100, Pixels = -96 }, Y = { Pixels = 128 }, Width = { Pixels = 40 }, Height = { Pixels = 20 }, Padding = Padding.Zero }; buttonIncDepth.OnClick += _ => { container.height++; container.CurrentTile = Point16.NegativeOne; textDepth.Text = "Depth: " + container.height; }; Add(buttonIncDepth); buttonIncDepth = new UITextButton("++") { X = { Percent = 100, Pixels = -48 }, Y = { Pixels = 128 }, Width = { Pixels = 40 }, Height = { Pixels = 20 }, Padding = Padding.Zero }; buttonIncDepth.OnClick += _ => { container.height += 10; container.CurrentTile = Point16.NegativeOne; textDepth.Text = "Depth: " + container.height; }; Add(buttonIncDepth); buttonIncDepth = new UITextButton("+++") { X = { Percent = 100 }, Y = { Pixels = 128 }, Width = { Pixels = 40 }, Height = { Pixels = 20 }, Padding = Padding.Zero }; buttonIncDepth.OnClick += _ => { container.height += 100; container.CurrentTile = Point16.NegativeOne; textDepth.Text = "Depth: " + container.height; }; Add(buttonIncDepth); #endregion }
public TestChestUI(TestChestTE chest) : base(chest) { Width.Pixels = 408; Height.Pixels = 172; UITextButton buttonClose = new UITextButton("X") { Size = new Vector2(20), X = { Percent = 100 }, Padding = Padding.Zero, RenderPanel = false }; buttonClose.OnClick += args => PanelUI.Instance.CloseUI(Container); Add(buttonClose); UIText textLabel = new UIText("Test Chest") { Width = { Percent = 100 }, Height = { Pixels = 20 }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textLabel); UIButton buttonLootAll = new UIButton(Routed.textureLootAll) { Size = new Vector2(20), HoverText = Language.GetText("LegacyInterface.29") }; buttonLootAll.OnClick += args => ItemUtility.LootAll(Container.Handler, Main.LocalPlayer); Add(buttonLootAll); UIButton buttonDepositAll = new UIButton(Routed.textureDepositAll) { Size = new Vector2(20), X = { Pixels = 28 }, HoverText = Language.GetText("LegacyInterface.30") }; buttonDepositAll.OnClick += args => ItemUtility.DepositAll(Container.Handler, Main.LocalPlayer); Add(buttonDepositAll); UIButton buttonQuickStack = new UIButton(Routed.textureQuickStack) { Size = new Vector2(20), X = { Pixels = 56 }, HoverText = Language.GetText("LegacyInterface.31") }; buttonQuickStack.OnClick += args => ItemUtility.QuickStack(Container.Handler, Main.LocalPlayer); Add(buttonQuickStack); UIGrid <UIContainerSlot> gridItems = new UIGrid <UIContainerSlot>(9) { Width = { Percent = 100 }, Height = { Pixels = -28, Percent = 100 }, Y = { Pixels = 28 }, ItemMargin = 4 }; Add(gridItems); for (int i = 0; i < Container.Handler.Slots; i++) { UIContainerSlot slot = new UIContainerSlot(() => Container.Handler, i); gridItems.Add(slot); } }
public QEBucketPanel(QEBucket bucket) : base(bucket) { Width.Pixels = 408; Height.Pixels = 172; UIText textLabel = new UIText(Container.DisplayName.GetTranslation()) { X = { Percent = 50 }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textLabel); UITextButton buttonReset = new UITextButton("R") { Size = new Vector2(20), RenderPanel = false, Padding = Padding.Zero, HoverText = Language.GetText("Mods.QuantumStorage.UI.Reset") }; buttonReset.OnClick += args => { if (!Container.frequency.IsSet) { for (int i = 0; i < 3; i++) { Main.LocalPlayer.PutItemInInventory(Utility.ColorToItem(Container.frequency[i])); } Container.frequency = new Frequency(); if (Main.netMode == NetmodeID.MultiplayerClient) { NetMessage.SendData(MessageID.SyncItem, -1, -1, null, Container.item.whoAmI, 1f); } } else { for (int i = 0; i < 3; i++) { Main.LocalPlayer.PutItemInInventory(Utility.ColorToItem(Container.frequency[i])); } Container.frequency = new Frequency(); if (Main.netMode == NetmodeID.MultiplayerClient) { NetMessage.SendData(MessageID.SyncItem, -1, -1, null, Container.item.whoAmI, 1f); } Remove(TankFluid); InitializeFrequencySelection(); for (int i = 0; i < 3; i++) { Add(buttonsFrequency[i]); } Add(buttonInitialize); } }; Add(buttonReset); UITextButton buttonClose = new UITextButton("X") { Size = new Vector2(20), X = { Percent = 100 }, RenderPanel = false, Padding = Padding.Zero, HoverText = Language.GetText("Mods.BaseLibrary.UI.Close") }; buttonClose.OnClick += args => PanelUI.Instance.CloseUI(Container); Add(buttonClose); if (!Container.frequency.IsSet) { InitializeFrequencySelection(); for (int i = 0; i < 3; i++) { Add(buttonsFrequency[i]); } Add(buttonInitialize); } else { Add(TankFluid); } }
// Use this for initialization public GameOverUI() { uiPos = new GameOverUIPosition(); texPos = new GameOverTexturePosition(); gameState = GameApp.GetInstance().GetGameState(); selectedWeapon = gameState.GetWeapons()[0]; gameuiMaterial = UIResourceMgr.GetInstance().GetMaterial("GameUI"); Material buttonsMaterial = UIResourceMgr.GetInstance().GetMaterial("Buttons"); retryButton = new UITextButton(); retryButton.Rect = AutoRect.AutoPos(uiPos.RetryButton); retryButton.SetTexture(UIButtonBase.State.Normal, buttonsMaterial, ButtonsTexturePosition.ButtonNormal, AutoRect.AutoSize(ButtonsTexturePosition.ButtonNormal)); retryButton.SetTexture(UIButtonBase.State.Pressed, buttonsMaterial, ButtonsTexturePosition.ButtonPressed, AutoRect.AutoSize(ButtonsTexturePosition.ButtonPressed)); retryButton.SetText(ConstData.FONT_NAME1, "RETRY", ColorName.fontColor_orange); quitButton = new UITextButton(); quitButton.Rect = AutoRect.AutoPos(uiPos.QuitButton); quitButton.SetTexture(UIButtonBase.State.Normal, buttonsMaterial, ButtonsTexturePosition.ButtonNormal, AutoRect.AutoSize(ButtonsTexturePosition.ButtonNormal)); quitButton.SetTexture(UIButtonBase.State.Pressed, buttonsMaterial, ButtonsTexturePosition.ButtonPressed, AutoRect.AutoSize(ButtonsTexturePosition.ButtonPressed)); quitButton.SetText(ConstData.FONT_NAME1, "QUIT", ColorName.fontColor_orange); dialogImage = new UIImage(); dialogImage.SetTexture(gameuiMaterial, GameUITexturePosition.Dialog, AutoRect.AutoSize(GameUITexturePosition.Dialog)); dialogImage.Rect = AutoRect.AutoPos(uiPos.DialogImage); mask = new UIImage(); mask.SetTexture(gameuiMaterial, GameUITexturePosition.Mask, AutoRect.AutoSize(uiPos.Mask)); mask.Rect = AutoRect.AutoValuePos(uiPos.Mask); gameoverLabel = new UITextImage(); gameoverLabel.SetTexture(buttonsMaterial, ButtonsTexturePosition.Label, ButtonsTexturePosition.LargeLabelSize * 0.1f); gameoverLabel.Rect = AutoRect.AutoPos(uiPos.GameOverLabel); //gameoverLabel.SetText(ConstData.FONT_NAME1, " GAME OVER", ColorName.fontColor_orange); cashText = new UIText(); cashText.Set(ConstData.FONT_NAME1, "Cash", ColorName.fontColor_orange); cashText.Rect = AutoRect.AutoPos(uiPos.CashText); /* * surviveTimeText = new UIText(); * surviveTimeText.Set(ConstData.FONT_NAME2, "TIME ", ColorName.fontColor_darkorange); * surviveTimeText.Rect = uiPos.SurviveTimeText; */ firstLineText = new UIText(); firstLineText.Set(ConstData.FONT_NAME1, "GAME OVER", ColorName.fontColor_darkorange); firstLineText.AlignStyle = UIText.enAlignStyle.center; firstLineText.Rect = AutoRect.AutoPos(uiPos.FirstLineText); /* * scoreText = new UIText(); * scoreText.Set(ConstData.FONT_NAME2, "KILLS "+GameApp.GetInstance().GetGameScene().Killed, ColorName.fontColor_darkorange); * scoreText.Rect = uiPos.ScoreText; */ gameover = new UIImage(); gameover.SetTexture(gameuiMaterial, GameUITexturePosition.GameOver, AutoRect.AutoSize(GameUITexturePosition.GameOver) * 0.1f); gameover.Rect = AutoRect.AutoPos(uiPos.GameOver); gameover.Visible = false; gameover.Enable = false; retryButton.Visible = false; quitButton.Visible = false; //this.Add(dialogImage); //this.Add(gameoverLabel); this.Add(mask); //this.Add(firstLineText); //this.Add(scoreText); this.Add(retryButton); this.Add(quitButton); this.Add(gameover); this.SetUIHandler(this); uiInited = true; GameScene gameScene = GameApp.GetInstance().GetGameScene(); if (gameScene.GetQuest() != null) { surviveTimeText.SetText("SurviveTime " + gameScene.GetQuest().GetQuestInfo()); firstLineText.SetText("Kills " + gameScene.Killed); } }
// Use this for initialization public WeaponUpgradeUI() { uiPos = new WeaponUpgradeUIPosition(); GameApp.GetInstance().Init(); gameState = GameApp.GetInstance().GetGameState(); currentWeaponIndex = -1; selectedWeapon = null; weaponList = GameApp.GetInstance().GetGameState().GetWeapons(); arenaMaterial = UIResourceMgr.GetInstance().GetMaterial("ArenaMenu"); background = new UIImage(); background.SetTexture(arenaMaterial, ArenaMenuTexturePosition.Background, AutoRect.AutoSize(ArenaMenuTexturePosition.Background)); background.Rect = AutoRect.AutoPos(uiPos.Background); for (int i = 0; i < 4; i++) { upgradePanels[i] = new UpgradePanel(new Rect(500, 465 - i * 100, 424, 108), i); upgradePanels[i].Show(); } upgradePanels[0].SetButtonText("DAMAGE"); upgradePanels[1].SetButtonText("FIRE RATE"); upgradePanels[2].SetButtonText("ACCURACY"); upgradePanels[3].SetButtonText("AMMO"); returnButton = new UIClickButton(); returnButton.SetTexture(UIButtonBase.State.Normal, arenaMaterial, ArenaMenuTexturePosition.ReturnButtonNormal, AutoRect.AutoSize(ArenaMenuTexturePosition.ReturnButtonNormal)); returnButton.SetTexture(UIButtonBase.State.Pressed, arenaMaterial, ArenaMenuTexturePosition.ReturnButtonPressed, AutoRect.AutoSize(ArenaMenuTexturePosition.ReturnButtonPressed)); returnButton.Rect = AutoRect.AutoPos(uiPos.ReturnButton); Material buttonsMaterial = UIResourceMgr.GetInstance().GetMaterial("Buttons"); upgradeButton = new UITextButton(); upgradeButton.SetTexture(UIButtonBase.State.Normal, buttonsMaterial, ButtonsTexturePosition.ButtonNormal, AutoRect.AutoSize(ButtonsTexturePosition.ButtonNormal)); upgradeButton.SetTexture(UIButtonBase.State.Pressed, buttonsMaterial, ButtonsTexturePosition.ButtonPressed, AutoRect.AutoSize(ButtonsTexturePosition.ButtonPressed)); upgradeButton.Rect = AutoRect.AutoPos(uiPos.UpgradeButton); getMoreMoneyButton = new UITextButton(); getMoreMoneyButton.SetTexture(UIButtonBase.State.Normal, arenaMaterial, ArenaMenuTexturePosition.GetMoneyButtonNormal, AutoRect.AutoSize(ArenaMenuTexturePosition.GetMoneyButtonSmallSize)); getMoreMoneyButton.SetTexture(UIButtonBase.State.Pressed, arenaMaterial, ArenaMenuTexturePosition.GetMoneyButtonPressed, AutoRect.AutoSize(ArenaMenuTexturePosition.GetMoneyButtonSmallSize)); getMoreMoneyButton.Rect = AutoRect.AutoPos(uiPos.GetMoreMoneyButton); cashPanel = new CashPanel(); upgradeButton.SetText(ConstData.FONT_NAME0, " UPGRADE", ColorName.fontColor_orange); UpdateWeaponInfo(); InitSelection(); this.Add(background); this.Add(returnButton); this.Add(getMoreMoneyButton); this.Add(upgradeButton); for (int i = 0; i < 4; i++) { this.Add(upgradePanels[i]); } weaponUI = UIResourceMgr.GetInstance().GetMaterial("Weapons"); weaponUI2 = UIResourceMgr.GetInstance().GetMaterial("Weapons2"); weaponScroller = new UIImageScroller(AutoRect.AutoPos(new Rect(0, 0, 500, 640)), AutoRect.AutoPos(new Rect(10, 120, 500, 440)), 1, AutoRect.AutoSize(WeaponsLogoTexturePosition.WeaponLogoSize), ScrollerDir.Vertical, true); weaponScroller.SetImageSpacing(AutoRect.AutoSize(WeaponsLogoTexturePosition.WeaponLogoSpacing)); Material shopMaterial = UIResourceMgr.GetInstance().GetMaterial("ShopUI"); Material avatarMaterial = UIResourceMgr.GetInstance().GetMaterial("Avatar"); weaponScroller.SetCenterFrameTexture(avatarMaterial, AvatarTexturePosition.Frame); weaponScroller.AddOverlay(shopMaterial, ShopTexturePosition.LockedLogo); weaponScroller.AddOverlay(shopMaterial, ShopTexturePosition.BuyLogo); UIImage uiImage = new UIImage(); TexturePosInfo info = WeaponsLogoTexturePosition.GetWeaponTextureRect(weaponList.Count); uiImage.SetTexture(info.m_Material, info.m_TexRect, AutoRect.AutoSize(info.m_TexRect)); uiImage.Rect = info.m_TexRect; weaponScroller.Add(uiImage); for (int i = 0; i < weaponList.Count; i++) { uiImage = new UIImage(); info = WeaponsLogoTexturePosition.GetWeaponTextureRect(i); uiImage.SetTexture(info.m_Material, info.m_TexRect, AutoRect.AutoSize(info.m_TexRect)); uiImage.Rect = info.m_TexRect; weaponScroller.Add(uiImage); } this.Add(weaponScroller); weaponScroller.EnableScroll(); this.Add(cashPanel); for (int i = 0; i < weaponList.Count; i++) { if (weaponList[i].Exist == WeaponExistState.Locked) { weaponScroller.SetOverlay(i + 1, 0); } else if (weaponList[i].Exist == WeaponExistState.Unlocked) { weaponScroller.SetOverlay(i + 1, 1); } } Material avatarLogoMaterial = UIResourceMgr.GetInstance().GetMaterial("Avatar"); weaponScroller.SetMaskImage(avatarLogoMaterial, AvatarTexturePosition.Mask); weaponScroller.Show(); iapDialog = new IAPDialog(UIDialog.DialogMode.YES_OR_NO); iapDialog.SetDialogEventHandler(this); this.Add(iapDialog); cashPanel.Show(); SetUIHandler(this); uiInited = true; Hide(); }
private void InitializeFrequencySelection() { buttonsFrequency = new UIButton[3]; for (int i = 0; i < 3; i++) { int pos = i; buttonsFrequency[i] = new UIButton(QuantumStorage.textureGemsMiddle, new Rectangle(8 * (int)Container.frequency[pos], 0, 8, 10)) { Size = new Vector2(16, 20), HAlign = 0.4f + 0.1f * pos, VAlign = 0.5f }; buttonsFrequency[i].OnClick += (evt, element) => { if (Utility.ValidItems.ContainsKey(Main.mouseItem.type)) { Container.frequency[pos] = Utility.ValidItems[Main.mouseItem.type]; buttonsFrequency[pos].texture = QuantumStorage.textureGemsMiddle; buttonsFrequency[pos].sourceRectangle = new Rectangle(8 * (int)Container.frequency[pos], 0, 8, 10); if (Main.netMode == NetmodeID.MultiplayerClient) { NetMessage.SendData(MessageID.SyncItem, -1, -1, null, Container.item.whoAmI, 1f); } Main.mouseItem.stack--; if (Main.mouseItem.stack <= 0) { Main.mouseItem.TurnToAir(); } if (Container.frequency.IsSet) { buttonInitialize.text = Language.GetTextValue("Mods.QuantumStorage.UI.Initialize"); } } }; } buttonInitialize = new UITextButton(Language.GetTextValue("Mods.QuantumStorage.UI.InsertGems")) { Width = (-64, 1), Height = (40, 0), VAlign = 1, HAlign = 0.5f }; buttonInitialize.OnClick += (evt, element) => { if (!Container.frequency.IsSet) { return; } for (int i = 0; i < 3; i++) { RemoveChild(buttonsFrequency[i]); } RemoveChild(buttonInitialize); Append(GridItems); }; } }
protected override void Initialize() { Scale = 1f; ConsumesMouse = false; SetWidth(ScreenManager.Instance.ScreenWidth); SetHeight(ScreenManager.Instance.ScreenHeight); Panel = new UIElement(); Panel.SetWidth(300); Panel.SetHeight(200); Panel.HAlign = 0.015f; Panel.VAlign = 0.985f; Panel.RecalcAlignmentForChildren(); EntityButton = new UITextButton("", 100, 40); EntityButton.OnClick += EntitySelect_OnClick; EntityButton.TakesPriority = true; EntityButton.SetPosition(new Vector2(30, 10)); TileButton = new UITextButton("", 100, 40); TileButton.OnClick += TileButton_OnClick; TileButton.TakesPriority = true; TileButton.SetPosition(new Vector2(30, 60)); UITextButton leftEntity = new UITextButton("<", 16, 40) { TakesPriority = true }; leftEntity.SetPosition(new Vector2(10)); leftEntity.OnClick += delegate { GameLoop.MyPlayer.SelectedEntityType--; }; UITextButton leftTile = new UITextButton("<", 16, 40) { TakesPriority = true }; leftTile.SetPosition(new Vector2(10, 60)); leftTile.OnClick += delegate { GameLoop.MyPlayer.SelectedTile--; }; rightTile = new UITextButton(">", 16, 40) { TakesPriority = true }; rightTile.SetPosition(new Vector2(10, 60)); rightTile.OnClick += delegate { GameLoop.MyPlayer.SelectedTile++; }; rightEntity = new UITextButton(">", 16, 40) { TakesPriority = true }; rightEntity.SetPosition(new Vector2(10, 10)); rightEntity.OnClick += delegate { GameLoop.MyPlayer.SelectedEntityType++; }; UITextButton quit = new UITextButton("Quit", 60, 40) { VAlign = 0.015f, HAlign = 0.015f }; quit.OnClick += delegate { GameStateManager.Instance.SwitchState(GameState.GameMenu); }; quit.TakesPriority = true; UIElement panel = new UIElement(); panel.SetWidth(200); panel.SetHeight(100); panel.VAlign = 0.985f; panel.HAlign = 0.985f; actionText = new UIText("No Action Avaiable") { HAlign = 0.5f, VAlign = 0.5f }; panel.Append(actionText); Panel.Append(EntityButton); Panel.Append(TileButton); Panel.Append(leftTile); Panel.Append(rightTile); Panel.Append(rightEntity); Panel.Append(leftEntity); Append(panel); Append(quit); Append(Panel); Append(new UIFadeIn()); }
public ArenaMenuPanel() { uiPos = new ArenaMenuUIPosition(); BattlePressed = false; Material arenaMenuMaterial = UIResourceMgr.GetInstance().GetMaterial("ArenaMenu"); Material buttonsMaterial = UIResourceMgr.GetInstance().GetMaterial("Buttons"); background = new UIImage(); background.SetTexture(arenaMenuMaterial, ArenaMenuTexturePosition.Background, AutoRect.AutoSize(ArenaMenuTexturePosition.Background)); background.Rect = AutoRect.AutoPos(uiPos.Background); /* * avatarPanel = new UITextImage(); * avatarPanel.SetTexture(arenaMenuMaterial, * * ArenaMenuTexturePosition.AvatarImage); * avatarPanel.Rect = uiPos.AvatarPanel; * avatarPanel.SetText(ConstData.FONT_NAME1, AvatarInfo.AVATAR_NAME[(int)GameApp.GetInstance().GetGameState().Avatar], ColorName.fontColor_darkred); */ Material shopMaterial = UIResourceMgr.GetInstance().GetMaterial("ShopUI"); daysPanel = new UITextImage(); daysPanel.SetTexture(shopMaterial, ShopTexturePosition.DayLargePanel, AutoRect.AutoSize(ShopTexturePosition.DayLargePanel)); daysPanel.Rect = AutoRect.AutoPos(uiPos.DaysPanel); daysPanel.SetText(ConstData.FONT_NAME0, "DAY " + GameApp.GetInstance().GetGameState().LevelNum, ColorName.fontColor_darkred); cashPanel = new CashPanel(); upgradeButton = new UITextButton(); upgradeButton.SetTexture(UIButtonBase.State.Normal, buttonsMaterial, ButtonsTexturePosition.ButtonNormal, AutoRect.AutoSize(ButtonsTexturePosition.MiddleSizeButton)); upgradeButton.SetTexture(UIButtonBase.State.Pressed, buttonsMaterial, ButtonsTexturePosition.ButtonPressed, AutoRect.AutoSize(ButtonsTexturePosition.MiddleSizeButton)); upgradeButton.Rect = AutoRect.AutoPos(uiPos.UpgradeButton); upgradeButton.SetText(ConstData.FONT_NAME1, " ARMORY", ColorName.fontColor_orange); equipmentButton = new UITextButton(); equipmentButton.SetTexture(UIButtonBase.State.Normal, buttonsMaterial, ButtonsTexturePosition.ButtonNormal, AutoRect.AutoSize(ButtonsTexturePosition.MiddleSizeButton)); equipmentButton.SetTexture(UIButtonBase.State.Pressed, buttonsMaterial, ButtonsTexturePosition.ButtonPressed, AutoRect.AutoSize(ButtonsTexturePosition.MiddleSizeButton)); equipmentButton.Rect = AutoRect.AutoPos(uiPos.EquipmentButton); equipmentButton.SetText(ConstData.FONT_NAME1, " EQUIP", ColorName.fontColor_orange); avatarButton = new UITextButton(); avatarButton.SetTexture(UIButtonBase.State.Normal, buttonsMaterial, ButtonsTexturePosition.ButtonNormal, AutoRect.AutoSize(ButtonsTexturePosition.MiddleSizeButton)); avatarButton.SetTexture(UIButtonBase.State.Pressed, buttonsMaterial, ButtonsTexturePosition.ButtonPressed, AutoRect.AutoSize(ButtonsTexturePosition.MiddleSizeButton)); avatarButton.Rect = AutoRect.AutoPos(uiPos.AvatarButton); avatarButton.SetText(ConstData.FONT_NAME1, " CHARACTER", ColorName.fontColor_orange); battleButton = new UITextButton(); battleButton.SetTexture(UIButtonBase.State.Normal, shopMaterial, ShopTexturePosition.MapButtonNormal, AutoRect.AutoSize(ShopTexturePosition.MapButtonNormal)); battleButton.SetTexture(UIButtonBase.State.Pressed, shopMaterial, ShopTexturePosition.MapButtonPressed, AutoRect.AutoSize(ShopTexturePosition.MapButtonPressed)); battleButton.Rect = AutoRect.AutoPos(uiPos.BattleButton); battleButton.SetText(ConstData.FONT_NAME0, " MAP", ColorName.fontColor_orange); returnButton = new UIClickButton(); returnButton.SetTexture(UIButtonBase.State.Normal, arenaMenuMaterial, ArenaMenuTexturePosition.ReturnButtonNormal, AutoRect.AutoSize(ArenaMenuTexturePosition.ReturnButtonNormal)); returnButton.SetTexture(UIButtonBase.State.Pressed, arenaMenuMaterial, ArenaMenuTexturePosition.ReturnButtonPressed, AutoRect.AutoSize(ArenaMenuTexturePosition.ReturnButtonPressed)); returnButton.Rect = AutoRect.AutoPos(uiPos.ReturnButton); optionsButton = new UIClickButton(); optionsButton.SetTexture(UIButtonBase.State.Normal, arenaMenuMaterial, ArenaMenuTexturePosition.OptionsButton, AutoRect.AutoSize(ArenaMenuTexturePosition.OptionsButton)); optionsButton.SetTexture(UIButtonBase.State.Pressed, arenaMenuMaterial, ArenaMenuTexturePosition.OptionsButtonPressed, AutoRect.AutoSize(ArenaMenuTexturePosition.OptionsButtonPressed)); optionsButton.Rect = AutoRect.AutoPos(uiPos.OptionsButton); Material startMenuMaterial = UIResourceMgr.GetInstance().GetMaterial("StartMenu"); leaderButton = new UITextButton(); leaderButton.SetTexture(UIButtonBase.State.Normal, startMenuMaterial, StartMenuTexturePosition.AcheivementButtonNormal, AutoRect.AutoSize(StartMenuTexturePosition.AcheivementButtonNormal) * 1.3f); leaderButton.SetTexture(UIButtonBase.State.Pressed, startMenuMaterial, StartMenuTexturePosition.AcheivementButtonPressed, AutoRect.AutoSize(StartMenuTexturePosition.AcheivementButtonPressed) * 1.3f); leaderButton.Rect = AutoRect.AutoPos(uiPos.AchievementButton); achieveButton = new UITextButton(); achieveButton.SetTexture(UIButtonBase.State.Normal, startMenuMaterial, StartMenuTexturePosition.LeaderBoardsButtonNormal, AutoRect.AutoSize(StartMenuTexturePosition.LeaderBoardsButtonNormal) * 1.3f); achieveButton.SetTexture(UIButtonBase.State.Pressed, startMenuMaterial, StartMenuTexturePosition.LeaderBoardsButtonPressed, AutoRect.AutoSize(StartMenuTexturePosition.LeaderBoardsButtonPressed) * 1.3f); achieveButton.Rect = AutoRect.AutoPos(uiPos.LeaderBoardButton); if (AutoRect.GetPlatform() == Platform.IPad) { avatar3DFrame = new Avatar3DFrame(AutoRect.AutoPos(new Rect(0, 10, 500, 600)), new Vector3(-1.299798f * 0.9f, -0.9672753f * 1f, 3.420711f), new Vector3(1.5f, 1.5f, 1.5f) * 0.9f); } else { avatar3DFrame = new Avatar3DFrame(AutoRect.AutoPos(new Rect(0, 10, 500, 600)), new Vector3(-1.299798f, -1.0672753f, 3.420711f), new Vector3(1.5f, 1.5f, 1.5f)); } ui = GameObject.Find("ArenaMenuUI").GetComponent <ArenaMenuUI>(); this.Add(background); //this.Add(avatarPanel); this.Add(daysPanel); this.Add(cashPanel); this.Add(upgradeButton); this.Add(equipmentButton); //this.Add(optionsButton); this.Add(battleButton); this.Add(avatarButton); //this.Add(returnButton); this.Add(leaderButton); this.Add(achieveButton); this.Add(avatar3DFrame); SetUIHandler(this); startTime = Time.time; }
public PauseMenuUI() { uiPos = new PauseMenuUIPosition(); gameState = GameApp.GetInstance().GetGameState(); buttonsMaterial = UIResourceMgr.GetInstance().GetMaterial("Buttons"); gameuiMaterial = UIResourceMgr.GetInstance().GetMaterial("GameUI"); background = new UIImage(); background.SetTexture(gameuiMaterial, GameUITexturePosition.Dialog, AutoRect.AutoSize(GameUITexturePosition.DialogSize)); background.Rect = AutoRect.AutoPos(uiPos.Background); pauseLabel = new UITextImage(); pauseLabel.SetTexture(buttonsMaterial, ButtonsTexturePosition.Label, AutoRect.AutoSize(ButtonsTexturePosition.Label)); pauseLabel.Rect = AutoRect.AutoPos(uiPos.PauseLabel); pauseLabel.SetText(ConstData.FONT_NAME1, " PAUSE", ColorName.fontColor_orange); soundLabel = new UITextImage(); soundLabel.SetTexture(buttonsMaterial, ButtonsTexturePosition.Label, AutoRect.AutoSize(ButtonsTexturePosition.Label)); soundLabel.Rect = AutoRect.AutoPos(uiPos.SoundLabel); soundLabel.SetText(ConstData.FONT_NAME1, " SOUND", ColorName.fontColor_orange); resumeButton = new UITextButton(); resumeButton.SetTexture(UIButtonBase.State.Normal, buttonsMaterial, ButtonsTexturePosition.ButtonNormal, AutoRect.AutoSize(ButtonsTexturePosition.SmallSizeButton)); resumeButton.SetTexture(UIButtonBase.State.Pressed, buttonsMaterial, ButtonsTexturePosition.ButtonPressed, AutoRect.AutoSize(ButtonsTexturePosition.SmallSizeButton)); resumeButton.Rect = AutoRect.AutoPos(uiPos.ResumeButton); resumeButton.SetText(ConstData.FONT_NAME1, " RESUME", ColorName.fontColor_orange); musicButtonOff = new UITextSelectButton(); musicButtonOff.SetTexture(UIButtonBase.State.Normal, buttonsMaterial, ButtonsTexturePosition.SoundButtonNormal, AutoRect.AutoSize(ButtonsTexturePosition.SoundButtonNormal)); musicButtonOff.SetTexture(UIButtonBase.State.Pressed, buttonsMaterial, ButtonsTexturePosition.SoundButtonPressed, AutoRect.AutoSize(ButtonsTexturePosition.SoundButtonPressed)); musicButtonOff.Rect = AutoRect.AutoPos(uiPos.MusicButtonOff); musicButtonOff.SetText(ConstData.FONT_NAME1, " OFF", ColorName.fontColor_orange); musicButtonOn = new UITextSelectButton(); musicButtonOn.SetTexture(UIButtonBase.State.Normal, buttonsMaterial, ButtonsTexturePosition.SoundButtonNormal, AutoRect.AutoSize(ButtonsTexturePosition.SoundButtonNormal)); musicButtonOn.SetTexture(UIButtonBase.State.Pressed, buttonsMaterial, ButtonsTexturePosition.SoundButtonPressed, AutoRect.AutoSize(ButtonsTexturePosition.SoundButtonPressed)); musicButtonOn.Rect = AutoRect.AutoPos(uiPos.MusicButtonOn); musicButtonOn.SetText(ConstData.FONT_NAME1, " ON", ColorName.fontColor_orange); if (gameState.MusicOn) { musicButtonOn.Set(true); musicButtonOff.Set(false); } else { musicButtonOn.Set(false); musicButtonOff.Set(true); } returnButton = new UITextButton(); returnButton.SetTexture(UIButtonBase.State.Normal, buttonsMaterial, ButtonsTexturePosition.ButtonNormal, AutoRect.AutoSize(ButtonsTexturePosition.SmallSizeButton)); returnButton.SetTexture(UIButtonBase.State.Pressed, buttonsMaterial, ButtonsTexturePosition.ButtonPressed, AutoRect.AutoSize(ButtonsTexturePosition.SmallSizeButton)); returnButton.Rect = AutoRect.AutoPos(uiPos.ReturnButton); returnButton.SetText(ConstData.FONT_NAME1, " QUIT", ColorName.fontColor_orange); mask = new UIImage(); mask.SetTexture(gameuiMaterial, GameUITexturePosition.Mask, AutoRect.AutoSize(uiPos.Mask)); mask.Rect = AutoRect.AutoValuePos(uiPos.Mask); this.Add(mask); this.Add(background); //this.Add(pauseLabel); this.Add(soundLabel); this.Add(musicButtonOff); this.Add(musicButtonOn); this.Add(resumeButton); this.Add(returnButton); this.SetUIHandler(this); Hide(); }
public TeleporterPanel(TileEntities.Teleporter teleporter) : base(teleporter) { Width.Percent = 20; Height.Percent = 35; UITextInput inputName = new UITextInput(ref Container.DisplayName) { X = { Percent = 50 }, MaxLength = 24, RenderPanel = false, HintText = "Teleporter", HorizontalAlignment = HorizontalAlignment.Center, SizeToText = true }; inputName.OnTextChange += () => Net.SendTeleporterName(Container); Add(inputName); UITextButton buttonClose = new UITextButton("X") { Size = new Vector2(20), X = { Pixels = -20, Percent = 100 }, RenderPanel = false, Padding = Padding.Zero, HoverText = Language.GetText("Mods.BaseLibrary.UI.Close") }; buttonClose.OnClick += args => PanelUI.Instance.CloseUI(Container); Add(buttonClose); UITextButton buttonOptions = new UITextButton("O") { Size = new Vector2(20), RenderPanel = false, Padding = Padding.Zero, HoverText = Language.GetText("Mods.BaseLibrary.UI.Options") }; buttonOptions.OnClick += args => { Remove(currentPanel); SelectedTeleporter = null; currentPanel = currentPanel == panelSettings ? panelMain : panelSettings; Add(currentPanel); }; Add(buttonOptions); currentPanel = new BaseElement { Width = { Percent = 100 }, Height = { Pixels = -28, Percent = 100 }, Y = { Pixels = 28 } }; Add(currentPanel); SetupMainPanel(); SetupSettingsPanel(); Remove(currentPanel); currentPanel = panelMain; Add(currentPanel); }
public MarkerModulePanel(MarkerModule module) : base(module) { Width.Pixels = 16 + (SlotSize + SlotMargin) * 9 - SlotMargin; Height.Pixels = 44 + SlotSize; UITextButton buttonClose = new UITextButton("X") { Size = new Vector2(20), X = { Percent = 100 }, Padding = Padding.Zero, RenderPanel = false }; buttonClose.OnClick += args => PanelUI.Instance.CloseUI(Container); Add(buttonClose); UIText textLabel = new UIText("Marker Module") { Width = { Percent = 100 }, Height = { Pixels = 20 }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textLabel); switch (Container.Mode) { case FilteredItemsMode mode: { UIGrid <UIMarkerSlot> grid = new UIGrid <UIMarkerSlot>(9) { Width = { Percent = 100 }, Height = { Pixels = -28, Percent = 100 }, Y = { Pixels = 28 } }; Add(grid); for (int i = 0; i < mode.whitelist.Count; i++) { UIMarkerSlot slot = new UIMarkerSlot(module, i); grid.Add(slot); } break; } case ModBasedMode mode: { UIGrid <UIModItem> grid = new UIGrid <UIModItem> { Width = { Percent = 100 }, Height = { Pixels = -28, Percent = 100 }, Y = { Pixels = 28 } }; Add(grid); foreach (Mod mod in ModLoader.Mods) { if (mod.GetValue <Dictionary <string, ModItem> >("items").Count <= 0) { continue; } UIModItem item = new UIModItem(mod) { Width = { Percent = 100 }, Height = { Pixels = 24 }, TextColor = mode.mod == mod ? Color.LimeGreen : Color.White }; item.OnClick += args => { mode.mod = mod; grid.Children.ForEach(modItem => ((UIModItem)modItem).TextColor = Color.White); item.TextColor = Color.LimeGreen; }; grid.Add(item); } break; } } }
private void SetupMainPanel() { panelMain = new BaseElement { Width = { Percent = 100 }, Height = { Pixels = -28, Percent = 100 }, Y = { Pixels = 28 } }; UIPanel panelLocations = new UIPanel { Width = { Percent = 100 }, Height = { Pixels = -48, Percent = 100 } }; panelMain.Add(panelLocations); gridLocations = new UIGrid <UITeleporterItem> { Width = { Pixels = -28, Percent = 100 }, Height = { Percent = 100 } }; panelLocations.Add(gridLocations); UpdateGrid(); gridLocations.scrollbar.Height = new StyleDimension { Percent = 100 }; gridLocations.scrollbar.X.Percent = 100; panelLocations.Add(gridLocations.scrollbar); UITextButton buttonDialOnce = new UITextButton(Language.GetText("Mods.Teleportation.UI.DialOnce")) { Width = { Pixels = -4, Percent = 25 }, Height = { Pixels = 40 }, Y = { Percent = 100 } }; buttonDialOnce.OnClick += args => { if (SelectedTeleporter == null) { return; } if (SelectedTeleporter.Destination == Container) { SelectedTeleporter = null; } else { Container.Destination = SelectedTeleporter; Container.DialOnce = true; Net.SendTeleporterDestination(Container); } }; panelMain.Add(buttonDialOnce); UITextButton buttonDial = new UITextButton(Language.GetText("Mods.Teleportation.UI.Dial")) { Width = { Pixels = -4, Percent = 25 }, Height = { Pixels = 40 }, Y = { Percent = 100 }, X = { Percent = 33 } }; buttonDial.OnClick += args => { if (SelectedTeleporter == null) { return; } if (SelectedTeleporter.Destination == Container) { SelectedTeleporter = null; } else { Container.Destination = SelectedTeleporter; Container.DialOnce = false; Net.SendTeleporterDestination(Container); } }; panelMain.Add(buttonDial); UITextButton buttonInterrupt = new UITextButton(Language.GetText("Mods.Teleportation.UI.Interrupt")) { Width = { Pixels = -4, Percent = 25 }, Height = { Pixels = 40 }, X = { Percent = 50 }, Y = { Percent = 100 } }; buttonInterrupt.OnClick += args => { if (SelectedTeleporter != null) { SelectedTeleporter.Destination = null; } SelectedTeleporter = null; Container.Destination = null; Container.DialOnce = false; Net.SendTeleporterDestination(Container); }; panelMain.Add(buttonInterrupt); UIContainerSlot slotFuel = new UIContainerSlot(() => Container.Handler) { Width = { Pixels = -4, Percent = 25 }, X = { Percent = 100 }, Y = { Percent = 100 }, Padding = new Padding(0, 24, 24, 0), PreviewItem = new Item() }; slotFuel.PreviewItem.SetDefaults(ModContent.ItemType <FuelCell>()); panelMain.Add(slotFuel); }
// Use this for initialization void Start() { ResolutionConstant.R = ((float)Screen.width) / 960f; UIResourceMgr.GetInstance().LoadStartMenuUIMaterials(); //! 加载开始菜单需要的材质 uiPos = new StartMenuUIPosition(); //texPos = new StartMenuTexturePosition(); //! UIManager m_UIManager = gameObject.AddComponent <UIManager>() as UIManager; m_UIManager.SetParameter(8, 1, false); m_UIManager.SetUIHandler(this); //! HandleEvent m_UIManager.CLEAR = true; startMenuMaterial = UIResourceMgr.GetInstance().GetMaterial("StartMenu"); //! StartMenu 材质 //startMenu2Material = UIResourceMgr.GetInstance().GetMaterial("StartMenu2"); Material buttonsMaterial = UIResourceMgr.GetInstance().GetMaterial("Buttons"); //! Button材质 background = new UIImage(); background.SetTexture(startMenuMaterial, StartMenuTexturePosition.Background, AutoRect.AutoSize(StartMenuTexturePosition.Background)); background.Rect = AutoRect.AutoPos(uiPos.Background); startButton = new UITextButton(); startButton.SetTexture(UIButtonBase.State.Normal, buttonsMaterial, ButtonsTexturePosition.ButtonNormal, AutoRect.AutoSize(ButtonsTexturePosition.MiddleSizeButton)); startButton.SetTexture(UIButtonBase.State.Pressed, buttonsMaterial, ButtonsTexturePosition.ButtonPressed, AutoRect.AutoSize(ButtonsTexturePosition.MiddleSizeButton)); startButton.Rect = AutoRect.AutoPos(uiPos.StartButton); startButton.SetText(ConstData.FONT_NAME1, " NEW GAME", ColorName.fontColor_orange); continueButton = new UITextButton(); continueButton.SetTexture(UIButtonBase.State.Normal, buttonsMaterial, ButtonsTexturePosition.ButtonNormal, AutoRect.AutoSize(ButtonsTexturePosition.MiddleSizeButton)); continueButton.SetTexture(UIButtonBase.State.Pressed, buttonsMaterial, ButtonsTexturePosition.ButtonPressed, AutoRect.AutoSize(ButtonsTexturePosition.MiddleSizeButton)); continueButton.Rect = AutoRect.AutoPos(uiPos.ContinueButton); continueButton.SetText(ConstData.FONT_NAME1, " CONTINUE", ColorName.fontColor_orange); gameDialog = new GameDialog(UIDialog.DialogMode.YES_OR_NO); gameDialog.SetText(ConstData.FONT_NAME2, "\n\nAre You Sure You Want To Erase Your Progress And Start A New Game?", ColorName.fontColor_darkorange); gameDialog.SetDialogEventHandler(this); m_UIManager.Add(background); m_UIManager.Add(startButton); m_UIManager.Add(continueButton); m_UIManager.Add(gameDialog); GameApp.GetInstance().Init(); GameCenterInterface.Login(); string path = Application.dataPath + "/../../Documents/"; if (File.Exists(path + "MySavedGame.game")) { } else { continueButton.Visible = false; continueButton.Enable = false; } FlurryTAd.ShowTAd(true); }
public QEBagPanel(QEBag bag) : base(bag) { Width.Pixels = 16 + (SlotSize + SlotMargin) * 9 - SlotMargin; Height.Pixels = 44 + (SlotSize + SlotMargin) * 3 - SlotMargin; UIText textLabel = new UIText(Container.DisplayName.GetTranslation()) { X = { Percent = 50 }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textLabel); UITextButton buttonReset = new UITextButton("R") { Size = new Vector2(20), RenderPanel = false, Padding = BaseLibrary.UI.Padding.Zero, HoverText = Language.GetText("Mods.QuantumStorage.UI.Reset") }; buttonReset.OnClick += args => { if (!Container.frequency.IsSet) { for (int i = 0; i < 3; i++) { Main.LocalPlayer.PutItemInInventory(Utility.ColorToItem(Container.frequency[i])); } Container.frequency = new Frequency(); if (Main.netMode == NetmodeID.MultiplayerClient) { NetMessage.SendData(MessageID.SyncItem, -1, -1, null, Container.item.whoAmI, 1f); } } else { for (int i = 0; i < 3; i++) { Main.LocalPlayer.PutItemInInventory(Utility.ColorToItem(Container.frequency[i])); } Container.frequency = new Frequency(); if (Main.netMode == NetmodeID.MultiplayerClient) { NetMessage.SendData(MessageID.SyncItem, -1, -1, null, Container.item.whoAmI, 1f); } Remove(GridItems); InitializeFrequencySelection(); for (int i = 0; i < 3; i++) { Add(buttonsFrequency[i]); } Add(buttonInitialize); } }; Add(buttonReset); UIButton buttonLootAll = new UIButton(QuantumStorage.textureLootAll) { X = { Pixels = 28 }, Size = new Vector2(20), HoverText = Language.GetText("LegacyInterface.29") }; buttonLootAll.OnClick += args => ItemUtility.LootAll(Container.Handler, Main.LocalPlayer); Add(buttonLootAll); UIButton buttonDepositAll = new UIButton(QuantumStorage.textureDepositAll) { Size = new Vector2(20), X = { Pixels = 56 }, HoverText = Language.GetText("LegacyInterface.30") }; buttonDepositAll.OnClick += args => ItemUtility.DepositAll(Container.Handler, Main.LocalPlayer); Add(buttonDepositAll); UIButton buttonQuickStack = new UIButton(QuantumStorage.textureQuickStack) { Size = new Vector2(20), X = { Pixels = 84 }, HoverText = Language.GetText("LegacyInterface.31") }; buttonQuickStack.OnClick += args => ItemUtility.QuickStack(Container.Handler, Main.LocalPlayer); Add(buttonQuickStack); UITextButton buttonClose = new UITextButton("X") { Size = new Vector2(20), X = { Percent = 100 }, RenderPanel = false, Padding = BaseLibrary.UI.Padding.Zero, HoverText = Language.GetText("Mods.BaseLibrary.UI.Close") }; buttonClose.OnClick += args => PanelUI.Instance.CloseUI(Container); Add(buttonClose); if (!Container.frequency.IsSet) { InitializeFrequencySelection(); for (int i = 0; i < 3; i++) { Add(buttonsFrequency[i]); } Add(buttonInitialize); } else { Add(GridItems); } }
public override void OnInitialize() { Width = (408, 0); Height = (172, 0); this.Center(); UIText textLabel = new UIText(Container.DisplayName.GetTranslation()) { HAlign = 0.5f }; Append(textLabel); UITextButton buttonReset = new UITextButton("R") { Size = new Vector2(20), RenderPanel = false }; buttonReset.GetHoverText += () => Language.GetTextValue("Mods.QuantumStorage.UI.Reset"); buttonReset.OnClick += (evt, element) => { if (!Container.frequency.IsSet) { for (int i = 0; i < 3; i++) { Main.LocalPlayer.PutItemInInventory(Utility.ColorToItem(Container.frequency[i])); } Container.frequency = new Frequency(); if (Main.netMode == NetmodeID.MultiplayerClient) { NetMessage.SendData(MessageID.SyncItem, -1, -1, null, Container.item.whoAmI, 1f); } } else { for (int i = 0; i < 3; i++) { Main.LocalPlayer.PutItemInInventory(Utility.ColorToItem(Container.frequency[i])); } Container.frequency = new Frequency(); if (Main.netMode == NetmodeID.MultiplayerClient) { NetMessage.SendData(MessageID.SyncItem, -1, -1, null, Container.item.whoAmI, 1f); } RemoveChild(GridItems); InitializeFrequencySelection(); for (int i = 0; i < 3; i++) { Append(buttonsFrequency[i]); } Append(buttonInitialize); } }; Append(buttonReset); UITextButton buttonClose = new UITextButton("X") { Size = new Vector2(20), Left = (-20, 1), RenderPanel = false }; buttonClose.GetHoverText += () => Language.GetTextValue("Mods.BaseLibrary.UI.Close"); buttonClose.OnClick += (evt, element) => BaseLibrary.BaseLibrary.PanelGUI.UI.CloseUI(Container); Append(buttonClose); if (!Container.frequency.IsSet) { InitializeFrequencySelection(); for (int i = 0; i < 3; i++) { Append(buttonsFrequency[i]); } Append(buttonInitialize); } else { Append(GridItems); } }
public RequesterModulePanel(RequesterModule module) : base(module) { Width.Pixels = 60 + (SlotSize + SlotMargin) * Columns - SlotMargin; Height.Pixels = 144 + (SlotSize + SlotMargin) * (Rows + 2) - SlotMargin * 2; X.Percent = Y.Percent = 50; UITextButton buttonClose = new UITextButton("X") { Width = { Pixels = 20 }, Height = { Pixels = 20 }, X = { Percent = 100 }, RenderPanel = false, Padding = new Padding(0) }; buttonClose.OnClick += args => { if (args.Button != MouseButton.Left) { return; } PanelUI.Instance.CloseUI(Container); }; Add(buttonClose); textQueue = new UIText("Queue") { Width = { Percent = 50 }, HorizontalAlignment = HorizontalAlignment.Left }; Add(textQueue); UIText textLabel = new UIText("Requester Module") { Width = { Percent = 100 }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textLabel); UIPanel panel = new UIPanel { Y = { Pixels = 28 }, Width = { Percent = 100 }, Height = { Pixels = (SlotSize + SlotMargin) * Rows - SlotMargin }, BorderColor = Color.Transparent, BackgroundColor = Utility.ColorPanel_Selected * 0.75f }; Add(panel); gridSlots = new UIGrid <UIRequesterSlot>(Columns) { Width = { Percent = 100, Pixels = -26 }, Height = { Percent = 100 }, ItemMargin = SlotMargin }; gridSlots.SearchSelector += item => { if (string.IsNullOrWhiteSpace(search.Value)) { return(true); } string itemName = item.Item.HoverName.ToLower(); string searchName = search.Value.ToLower(); return(itemName.Contains(searchName)); }; panel.Add(gridSlots); gridSlots.scrollbar.X.Percent = 100; gridSlots.scrollbar.Y.Pixels = 0; gridSlots.scrollbar.Height.Percent = 100; panel.Add(gridSlots.scrollbar); UITextInput inputSearch = new UITextInput(ref search) { Y = { Pixels = 36 + (SlotSize + SlotMargin) * Rows - SlotMargin }, Width = { Percent = 100 }, Height = { Pixels = 40 }, RenderPanel = true, VerticalAlignment = VerticalAlignment.Center, HintText = "Search", Padding = new Padding(8) }; inputSearch.OnKeyPressed += args => { if (inputSearch.Focused && (args.Key == Keys.Enter || args.Key == Keys.Escape)) { args.Handled = true; inputSearch.Focused = false; } }; inputSearch.OnTextChange += () => gridSlots.Search(); Add(inputSearch); // requested items { UIText textRequestedItem = new UIText("Requested Items") { Width = { Pixels = (SlotSize + SlotMargin) * 10 - SlotMargin }, Margin = new Margin(8, 0, 0, 0), Y = { Pixels = 84 + (SlotSize + SlotMargin) * Rows - SlotMargin }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textRequestedItem); panel = new UIPanel { Y = { Pixels = 112 + (SlotSize + SlotMargin) * Rows - SlotMargin }, Width = { Percent = 100 }, Height = { Pixels = 16 + (SlotSize + SlotMargin) * 2 - SlotMargin }, BorderColor = Color.Transparent, BackgroundColor = Utility.ColorPanel_Selected * 0.75f }; Add(panel); UIGrid <UIContainerSlot> gridOutout = new UIGrid <UIContainerSlot>(10) { Width = { Pixels = (SlotSize + SlotMargin) * 10 }, Height = { Percent = 100 }, ItemMargin = SlotMargin }; panel.Add(gridOutout); for (int i = 0; i < Container.Handler.Slots; i++) { UIContainerSlot slot = new UIContainerSlot(() => Container.Handler, i) { Width = { Pixels = SlotSize }, Height = { Pixels = SlotSize }, Padding = new Padding(2) }; gridOutout.Add(slot); } } // return items { UIText textReturnItems = new UIText("Return") { Width = { Pixels = (SlotSize + SlotMargin) * 3 - SlotMargin }, Margin = new Margin(0, 0, 8, 0), X = { Percent = 100 }, Y = { Pixels = 84 + (SlotSize + SlotMargin) * Rows - SlotMargin }, HorizontalAlignment = HorizontalAlignment.Center }; Add(textReturnItems); UIGrid <UIContainerSlot> gridInput = new UIGrid <UIContainerSlot>(3) { Width = { Pixels = (SlotSize + SlotMargin) * 3 - SlotMargin }, Height = { Percent = 100 }, X = { Percent = 100 }, ItemMargin = SlotMargin }; panel.Add(gridInput); for (int i = 0; i < Container.ReturnHandler.Slots; i++) { UIContainerSlot slot = new UIContainerSlot(() => Container.ReturnHandler, i) { Width = { Pixels = SlotSize }, Height = { Pixels = SlotSize }, Padding = new Padding(2) }; gridInput.Add(slot); } } UIButton buttonTransfer = new UIButton(ModContent.GetTexture("BaseLibrary/Textures/UI/QuickStack")) { Y = { Percent = 50 }, X = { Pixels = 6 + (SlotSize + SlotMargin) * 10 - SlotMargin }, Width = { Pixels = 20 }, Height = { Pixels = 20 }, HoverText = "Transfer items" }; buttonTransfer.OnClick += args => { for (int i = 0; i < Container.Handler.Slots; i++) { ref Item item = ref Container.Handler.GetItemInSlotByRef(i); Container.ReturnHandler.InsertItem(ref item); if (!item.IsAir) { break; } } Recipe.FindRecipes(); };