public new void Awake() { base.Awake(); //制造按钮 btnCraft = transform.FindChild("Craft").GetComponent <Button>(); btnCraft.onClick.AddListener(this.OnCraftClick); //合成类型 craftClassPanel = transform.FindChild("Bg").FindChild("ClassBg").FindChild("ClassPanel").GetComponent <UIScrollPanel>(); //合成物品 craftItemPanel = transform.FindChild("Bg").FindChild("ItemBg").FindChild("ItemPanel").GetComponent <UIScrollPanel>(); //slots for (int i = 0; i < CraftFormula.maxRawMatSorts; i++) { matSlot[i] = transform.FindChild("Bg").FindChild("MatBg").FindChild("MatSlot" + i).GetComponent <UIMatSlot>(); } productSlot = transform.FindChild("Bg").FindChild("Product").GetComponent <UIMatSlot>(); //订阅本地玩家创建事件 EventManager.AddListener(EventId.LocalPlayerCreate, this.OnLocalPlayerCreate); //订阅本地玩家销毁事件 EventManager.AddListener(EventId.LocalPlayerDestroy, this.OnLocalPlayerDestroy); //读取存档事件,背包数据会改变 EventManager.AddListener(EventId.LocalPlayerLoad, this.OnLocalPlayerLoad); }
public void create() { created = true; TooltipPanel.Instance = new TooltipPanel(); TooltipPanel.Instance.Init(); // if you set this to true, it will show up in game //visible = false; buttonPlayTexture1 = ModContent.GetTexture("LansToggleableBuffs/ui/checkbox"); buttonPlayTexture2 = ModContent.GetTexture("LansToggleableBuffs/ui/checkboxunchecked"); panel = new UIScrollPanel(); //initialize the panel // ignore these extra 0s this.Append(panel); panelwrapper = new LayoutWrapperUIElement(panel, 0, 0, 0, 0, 10, new LayoutVertical()); updateSize(); Main.OnResolutionChanged += delegate(Vector2 newSize) { updateSize(); }; }
/// <summary> /// Initializes this instance. /// </summary> /// <param name="scrollPanel">The scroll panel this scroll item is part of.</param> /// <param name="includeInactive">if set to <c>true</c> inactive objects will /// be considered in bounds calculations.</param> public void Initialize(UIScrollPanel scrollPanel, bool includeInactive) { base.InitializeElement(); m_scrollPanel = scrollPanel; UpdateBounds(includeInactive); // Set initialized flag m_isInitialized = true; }
/// <summary> /// Sets up the building scroll panel. /// </summary> /// <param name="parent"></param> /// <returns></returns> private void AddScrollPanel() { scrollPanel = buildingPanel.AddUIComponent <UIScrollPanel>(); // Basic setup. scrollPanel.name = "RICOScrollPanel"; scrollPanel.autoLayout = false; scrollPanel.autoReset = false; scrollPanel.autoSize = false; scrollPanel.template = "PlaceableItemTemplate"; scrollPanel.itemWidth = 109f; scrollPanel.itemHeight = 100f; scrollPanel.canSelect = true; // Size and position. scrollPanel.size = new Vector2(763, 100); scrollPanel.relativePosition = new Vector3(48, 5); // 'Left' and 'Right' buttons to scroll panel. scrollPanel.leftArrow = ArrowButton("ArrowLeft", 16f); scrollPanel.rightArrow = ArrowButton("ArrowRight", 812f); // Event handler on grandparent size change. buildingPanel.parent.eventSizeChanged += (control, size) => { // If we're visible, resize to match the new grandparent size. if (scrollPanel.isVisible) { // New size. scrollPanel.size = new Vector2((int)((size.x - 40f) / scrollPanel.itemWidth) * scrollPanel.itemWidth, (int)(size.y / scrollPanel.itemHeight) * scrollPanel.itemHeight); // New relative position. scrollPanel.relativePosition = new Vector3(scrollPanel.relativePosition.x, Mathf.Floor((size.y - scrollPanel.height) / 2)); // Move right arrow if it exists. if (scrollPanel.rightArrow != null) { scrollPanel.rightArrow.relativePosition = new Vector3(scrollPanel.relativePosition.x + scrollPanel.width, 0); } } }; }
public void Start() { try { GameObject gameObject = GameObject.Find("FindItMainButton"); if (gameObject != null) { return; } isRicoEnabled = IsRicoEnabled(); isPOEnabled = IsPOEnabled(); isTVPPatchEnabled = IsTVPPatchEnabled(); if (isPOEnabled) { POTool = new ProceduralObjectsTool(); } list = AssetTagList.instance; UITabstrip tabstrip = ToolsModifierControl.mainToolbar.component as UITabstrip; m_defaultXPos = tabstrip.relativePosition.x; UpdateMainToolbar(); GameObject asGameObject = UITemplateManager.GetAsGameObject("MainToolbarButtonTemplate"); GameObject asGameObject2 = UITemplateManager.GetAsGameObject("ScrollableSubPanelTemplate"); mainButton = tabstrip.AddTab("FindItMainButton", asGameObject, asGameObject2, new Type[] { typeof(UIGroupPanel) }) as UIButton; mainButton.atlas = atlas; mainButton.normalBgSprite = "ToolbarIconGroup6Normal"; mainButton.focusedBgSprite = "ToolbarIconGroup6Focused"; mainButton.hoveredBgSprite = "ToolbarIconGroup6Hovered"; mainButton.pressedBgSprite = "ToolbarIconGroup6ressed"; mainButton.disabledBgSprite = "ToolbarIconGroup6Disabled"; mainButton.normalFgSprite = "FindIt"; mainButton.focusedFgSprite = "FindItFocused"; mainButton.hoveredFgSprite = "FindItHovered"; mainButton.pressedFgSprite = "FindItPressed"; mainButton.disabledFgSprite = "FindItDisabled"; mainButton.tooltip = "Find It! " + (ModInfo.isBeta ? "[BETA] " : "") + ModInfo.version; Locale locale = (Locale)typeof(LocaleManager).GetField("m_Locale", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(LocaleManager.instance); Locale.Key key = new Locale.Key { m_Identifier = "TUTORIAL_ADVISER_TITLE", m_Key = mainButton.name }; if (!locale.Exists(key)) { locale.AddLocalizedString(key, "Find It! " + ModInfo.version); } key = new Locale.Key { m_Identifier = "TUTORIAL_ADVISER", m_Key = mainButton.name }; if (!locale.Exists(key)) { locale.AddLocalizedString(key, "Thanks for subscribing to Find It! 2.\n\nStart typing some keywords into the input field to find the desired asset.\n\nCheck the workshop page occasionally for new features or bug reports."); } FieldInfo m_ObjectIndex = typeof(MainToolbar).GetField("m_ObjectIndex", BindingFlags.Instance | BindingFlags.NonPublic); m_ObjectIndex.SetValue(ToolsModifierControl.mainToolbar, (int)m_ObjectIndex.GetValue(ToolsModifierControl.mainToolbar) + 1); mainButton.gameObject.GetComponent <TutorialUITag>().tutorialTag = name; m_groupPanel = tabstrip.GetComponentInContainer(mainButton, typeof(UIGroupPanel)) as UIGroupPanel; if (m_groupPanel != null) { m_groupPanel.name = "FindItGroupPanel"; m_groupPanel.enabled = true; m_groupPanel.component.isInteractive = true; m_groupPanel.m_OptionsBar = ToolsModifierControl.mainToolbar.m_OptionsBar; m_groupPanel.m_DefaultInfoTooltipAtlas = ToolsModifierControl.mainToolbar.m_DefaultInfoTooltipAtlas; if (ToolsModifierControl.mainToolbar.enabled) { m_groupPanel.RefreshPanel(); } scrollPanel = UIScrollPanel.Create(m_groupPanel.GetComponentInChildren <UIScrollablePanel>()); scrollPanel.eventClicked += OnButtonClicked; scrollPanel.eventVisibilityChanged += (c, p) => { HideAllOptionPanels(); if (p && scrollPanel.selectedItem != null) { // Simulate item click UIScrollPanelItem.ItemData item = scrollPanel.selectedItem; UIScrollPanelItem panelItem = scrollPanel.GetItem(0); panelItem.Display(scrollPanel.selectedItem, 0); panelItem.component.SimulateClick(); scrollPanel.selectedItem = item; scrollPanel.Refresh(); } }; scrollPanel.eventTooltipEnter += (c, p) => { UIScrollPanelItem.RefreshTooltipAltas(p.source); }; searchBox = scrollPanel.parent.AddUIComponent <UISearchBox>(); searchBox.scrollPanel = scrollPanel; searchBox.relativePosition = new Vector3(0, 0); searchBox.Search(); } else { Debugging.Message("GroupPanel not found"); } m_roadsPanel = FindObjectOfType <RoadsPanel>(); m_beautificationPanel = FindObjectOfType <BeautificationPanel>(); defaultPanel = GameObject.Find("FindItDefaultPanel").GetComponent <UIPanel>(); defaultPanelAtlas = defaultPanel.atlas; defaultPanelBackgroundSprite = defaultPanel.backgroundSprite; UpdateDefaultPanelBackground(); Debugging.Message("Initialized"); } catch (Exception e) { Debugging.Message("Start failed"); Debugging.LogException(e); enabled = false; } }
public void Start() { try { isRicoEnabled = IsRicoEnabled(); GameObject gameObject = GameObject.Find("FindItMainButton"); if (gameObject != null) { return; } list = AssetTagList.instance; UITabstrip tabstrip = ToolsModifierControl.mainToolbar.component as UITabstrip; // TODO: temporary /*tabstrip.eventComponentAdded += (c, p) => * { * foreach (UIComponent tab in tabstrip.tabPages.components) * { * DebugUtils.Log(tab.name); * * if(tab.name == "LandscapingPanel") * { * tab.components[0].relativePosition = new Vector3(0, -134); * tab.components[1].relativePosition = new Vector3(0, -109); * tab.components[1].height = 218; * foreach(UIScrollablePanel panel in tab.components[1].GetComponentsInChildren<UIScrollablePanel>()) * { * panel.autoLayoutStart = LayoutStart.TopLeft; * panel.scrollWheelDirection = UIOrientation.Vertical; * panel.scrollWheelAmount = 104; * panel.wrapLayout = true; * panel.width = 764; * } * } * } * };*/ m_defaultXPos = tabstrip.relativePosition.x; UpdateMainToolbar(); GameObject asGameObject = UITemplateManager.GetAsGameObject("MainToolbarButtonTemplate"); GameObject asGameObject2 = UITemplateManager.GetAsGameObject("ScrollableSubPanelTemplate"); mainButton = tabstrip.AddTab("FindItMainButton", asGameObject, asGameObject2, new Type[] { typeof(UIGroupPanel) }) as UIButton; mainButton.atlas = atlas; Locale locale = (Locale)typeof(LocaleManager).GetField("m_Locale", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(LocaleManager.instance); Locale.Key key = new Locale.Key { m_Identifier = "TUTORIAL_ADVISER_TITLE", m_Key = mainButton.name }; if (!locale.Exists(key)) { locale.AddLocalizedString(key, "Find It! " + ModInfo.version); } key = new Locale.Key { m_Identifier = "TUTORIAL_ADVISER", m_Key = mainButton.name }; if (!locale.Exists(key)) { locale.AddLocalizedString(key, "Thanks for subscribing to Find It!\n\nStart typing some keywords into the input field to find the desired asset.\n\nIf you like the mod please consider leaving a rating on the steam workshop."); } FieldInfo m_ObjectIndex = typeof(MainToolbar).GetField("m_ObjectIndex", BindingFlags.Instance | BindingFlags.NonPublic); m_ObjectIndex.SetValue(ToolsModifierControl.mainToolbar, (int)m_ObjectIndex.GetValue(ToolsModifierControl.mainToolbar) + 1); mainButton.gameObject.GetComponent <TutorialUITag>().tutorialTag = name; m_groupPanel = tabstrip.GetComponentInContainer(mainButton, typeof(UIGroupPanel)) as UIGroupPanel; if (m_groupPanel != null) { m_groupPanel.name = "FindItGroupPanel"; m_groupPanel.enabled = true; m_groupPanel.component.isInteractive = true; m_groupPanel.m_OptionsBar = ToolsModifierControl.mainToolbar.m_OptionsBar; m_groupPanel.m_DefaultInfoTooltipAtlas = ToolsModifierControl.mainToolbar.m_DefaultInfoTooltipAtlas; if (ToolsModifierControl.mainToolbar.enabled) { m_groupPanel.RefreshPanel(); } scrollPanel = UIScrollPanel.Create(m_groupPanel.GetComponentInChildren <UIScrollablePanel>()); scrollPanel.eventClicked += OnButtonClicked; scrollPanel.eventVisibilityChanged += (c, p) => { HideAllOptionPanels(); if (p && scrollPanel.selectedItem != null) { // Simulate item click UIScrollPanelItem.ItemData item = scrollPanel.selectedItem; UIScrollPanelItem panelItem = scrollPanel.GetItem(0); panelItem.Display(scrollPanel.selectedItem, 0); panelItem.component.SimulateClick(); scrollPanel.selectedItem = item; scrollPanel.Refresh(); } }; scrollPanel.eventTooltipEnter += (c, p) => { UIScrollPanelItem.RefreshTooltipAltas(p.source); }; searchBox = scrollPanel.parent.AddUIComponent <UISearchBox>(); searchBox.scrollPanel = scrollPanel; searchBox.relativePosition = new Vector3(0, 0); searchBox.Search(); } else { DebugUtils.Warning("GroupPanel not found"); } mainButton.normalBgSprite = "ToolbarIconGroup6Normal"; mainButton.focusedBgSprite = "ToolbarIconGroup6Focused"; mainButton.hoveredBgSprite = "ToolbarIconGroup6Hovered"; mainButton.pressedBgSprite = "ToolbarIconGroup6ressed"; mainButton.disabledBgSprite = "ToolbarIconGroup6Disabled"; mainButton.normalFgSprite = "FindIt"; mainButton.focusedFgSprite = "FindItFocused"; mainButton.hoveredFgSprite = "FindItHovered"; mainButton.pressedFgSprite = "FindItPressed"; mainButton.disabledFgSprite = "FindItDisabled"; mainButton.tooltip = "Find It! " + ModInfo.version; m_beautificationPanel = FindObjectOfType <BeautificationPanel>(); DebugUtils.Log("Initialized"); } catch (Exception e) { DebugUtils.Log("Start failed"); DebugUtils.LogException(e); enabled = false; } }
public UIScrollWindow(ScrollBarMode mode = ScrollBarMode.Vertical) { this.mode = mode; AutoSize = false; DebugColor = Color.White; ScrollPanel = new UIScrollPanel(); ScrollPanel.AutoSize = true; ScrollPanel.DrawBounds = false; ScrollPanel.AbsorbPointer = false; ScrollPanel.AllowInsideScrolling = false; ScrollPanel.ContentScrolled += scrollPanel_ContentScrolled; if (mode == ScrollBarMode.Both) { fillerPanel = new UIPanel(); fillerPanel.Color = new Color(240, 240, 240); fillerPanel.AutoSize = false; fillerPanel.Size = new Vector2(16, 16); fillerPanel.Alpha = 1f; fillerPanel.AddConstraint(Edge.BottomRight, this, Edge.BottomRight); base.AddChild(fillerPanel); } if (mode.ContainsFlag(ScrollBarMode.Vertical)) { VerticalScrollBar = new UIScrollBar(UIScrollBar.ScrollBarOrientation.Vertical); VerticalScrollBar.ValueChanged += scrollBar_ValueChanged; VerticalScrollBar.Width = 16f; VerticalScrollBar.AddConstraint(Edge.TopRight, this, Edge.TopRight); if (fillerPanel != null) { VerticalScrollBar.AddConstraint(Edge.Bottom, fillerPanel, Edge.Top); } else { VerticalScrollBar.AddConstraint(Edge.Bottom, this, Edge.Bottom, mode.ContainsFlag(ScrollBarMode.Horizontal) ? VerticalScrollBar.Width : 0); } ScrollPanel.AddConstraint(Edge.Left, this, Edge.Left, 1); ScrollPanel.AddConstraint(Edge.Right, VerticalScrollBar, Edge.Left, -1); base.AddChild(VerticalScrollBar); } else { ScrollPanel.AddConstraint(Edge.Left, this, Edge.Left, 1); ScrollPanel.AddConstraint(Edge.Right, this, Edge.Right, -1); } if (mode.ContainsFlag(ScrollBarMode.Horizontal)) { HorizontalScrollBar = new UIScrollBar(UIScrollBar.ScrollBarOrientation.Horizontal); HorizontalScrollBar.ValueChanged += scrollBar_ValueChanged; HorizontalScrollBar.Height = 16f; HorizontalScrollBar.AddConstraint(Edge.BottomLeft, this, Edge.BottomLeft); if (fillerPanel != null) { HorizontalScrollBar.AddConstraint(Edge.Right, fillerPanel, Edge.Left); } else { HorizontalScrollBar.AddConstraint(Edge.Right, this, Edge.Right, mode.ContainsFlag(ScrollBarMode.Vertical) ? HorizontalScrollBar.Height : 0); } ScrollPanel.AddConstraint(Edge.Top, this, Edge.Top, 1); ScrollPanel.AddConstraint(Edge.Bottom, HorizontalScrollBar, Edge.Top, -1); base.AddChild(HorizontalScrollBar); } else { ScrollPanel.AddConstraint(Edge.Top, this, Edge.Top, 1); ScrollPanel.AddConstraint(Edge.Bottom, this, Edge.Bottom, -1); } base.AddChild(ScrollPanel); }