public static void Init(UIPaletteBlockSelect palette)
        {
            blockPalette = palette;
            var inputFieldGo = DefaultControls.CreateInputField(new DefaultControls.Resources()
            {
                inputField = Options_Unticked
            });

            inputField = inputFieldGo.GetComponent <InputField>();
            inputField.onValueChanged.AddListener(OnTextChanged);

            foreach (var text in inputFieldGo.GetComponentsInChildren <Text>())
            {
                text.text        = "";
                text.alignment   = TextAnchor.MiddleLeft;
                text.font        = ExoRegular;
                text.fontSize    = 20;
                text.fontStyle   = FontStyle.Normal;
                text.color       = Color.white;
                text.lineSpacing = 1;
            }

            inputField.placeholder.enabled = true;
            var placeholderText = inputField.placeholder.GetComponent <Text>();

            placeholderText.fontStyle = FontStyle.Italic;
            placeholderText.text      = "Block name";

            inputField.transform.SetParent(blockPalette.transform.Find("HUD_BlockPainting_BG"), false);
            var rect = inputFieldGo.GetComponent <RectTransform>();

            rect.pivot = rect.anchorMax = rect.anchorMin = new Vector2(1, 1);
            rect.anchoredPosition3D = new Vector3(-5, -5, 77);
            rect.sizeDelta          = new Vector2(210, 40);

            var scrollviewRect     = blockPalette.transform.Find("HUD_BlockPainting_BG/Scroll View") as RectTransform;
            var anchoredPosition3D = scrollviewRect.anchoredPosition3D;

            anchoredPosition3D.y -= 40;
            scrollviewRect.anchoredPosition3D = anchoredPosition3D;
            var sizeDelta = scrollviewRect.sizeDelta;

            sizeDelta.y -= 40;
            scrollviewRect.sizeDelta = sizeDelta;

            var scrollbarRect = blockPalette.transform.Find("HUD_BlockPainting_BG/Scrollbar") as RectTransform;

            anchoredPosition3D               = scrollbarRect.anchoredPosition3D;
            anchoredPosition3D.y            -= 40;
            scrollbarRect.anchoredPosition3D = anchoredPosition3D;
            sizeDelta               = scrollbarRect.sizeDelta;
            sizeDelta.y            -= 40;
            scrollbarRect.sizeDelta = sizeDelta;

            inputFieldRect = rect;

            Singleton.Manager <ManGameMode> .inst.ModeSwitchEvent.Subscribe(OnModeChange);
        }
 static void Postfix(ref UIPaletteBlockSelect __instance)
 {
     PaletteTextFilter.Init(__instance);
 }
Beispiel #3
0
        void Update()
        {
            if (Input.GetMouseButtonDown(0) && Input.GetKey(block_picker_key) && ManPlayer.inst.PaletteUnlocked)
            {
                UIPaletteBlockSelect palette = Singleton.Manager <ManHUD> .inst.GetHudElement(ManHUD.HUDElementType.BlockPalette) as UIPaletteBlockSelect;

                if (!palette.IsExpanded && open_inventory)
                {
                    var blockMenuSelection = Singleton.Manager <ManHUD> .inst.GetHudElement(ManHUD.HUDElementType.BlockMenuSelection) as UIBlockMenuSelection;

                    blockMenuSelection.Hide(new UIBlockMenuSelection.Context()
                    {
                        targetMode = UIBlockMenuSelection.ModeMask.BlockPaletteAndTechs
                    });
                    blockMenuSelection.Show(new UIBlockMenuSelection.Context()
                    {
                        targetMode = UIBlockMenuSelection.ModeMask.BlockPalette
                    });
                    palette.Expand(new UIShopBlockSelect.ExpandContext()
                    {
                        expandReason = UIShopBlockSelect.ExpandReason.Button
                    });

                    try
                    {
                        Singleton.Manager <ManHUD> .inst.HideHudElement(ManHUD.HUDElementType.TechLoader);
                    }
                    catch { }
                }

                if (palette.IsExpanded)
                {
                    var temp_block = Singleton.Manager <ManPointer> .inst.targetVisible?.block;
                    if (temp_block)
                    {
                        var grid = m_Grid.GetValue(palette) as UIBlockSelectGrid;
                        grid.PreventSelection = false;

                        var catToggles  = m_CategoryToggles.GetValue(palette) as UICategoryToggles;
                        var corpToggles = m_CorpToggles.GetValue(palette) as UICorpToggles;
                        var controller  = m_Controller.GetValue(corpToggles) as UITogglesController;

                        if (global_filters)
                        {
                            catToggles.ToggleAllOn();
                            corpToggles.ToggleAllOn();
                        }
                        else
                        {
                            catToggles.SetToggleSelected((int)temp_block.BlockCategory, true);
                            controller.SetToggleSelected((int)Singleton.Manager <ManSpawn> .inst.GetCorporation(temp_block.BlockType), true);
                        }

                        grid.Repopulate();


                        palette.TrySelectBlockType(temp_block.BlockType);
                    }
                }
                Singleton.Manager <ManPointer> .inst.ChangeBuildMode(ManPointer.BuildingMode.PaintBlock);
            }
        }