private void Update()
        {
            PaletteTextFilter.HandleInputFieldFocus();

            if (block && !block.gameObject.activeInHierarchy || module && !module.block.gameObject.activeInHierarchy)
            {
                Clean();
            }
            if (Input.GetMouseButtonDown(2))
            {
                if (block)
                {
                    block.visible.EnableOutlineGlow(false, cakeslice.Outline.OutlineEnableReason.ScriptHighlight);
                }

                try
                {
                    Tank tank = null;
                    if (block && module)
                    {
                        tank = block.tank;
                    }
                    var temp_block = Singleton.Manager <ManPointer> .inst.targetVisible.block;
                    if (tank && temp_block.tank && tank != temp_block.tank)
                    {
                        Clean();
                    }
                    block = temp_block;
                    block.visible.EnableOutlineGlow(true, cakeslice.Outline.OutlineEnableReason.ScriptHighlight);
                }
                catch
                {
                    Clean();
                }

                if (block && block.tank && block.tank.GetComponentInChildren <ModuleOffgridStore>())
                {
                    module = block.tank.GetComponentInChildren <ModuleOffgridStore>();
                    targets.Clear();
                    AdvancedBuildingMod.transformGizmo.ClearTargets();
                    AdvancedBuildingMod.transformGizmo.AddTarget(block.trans);
                    position = block.trans.localPosition;
                    rotation = block.trans.localEulerAngles;
                    scale    = block.trans.localScale;
                }
                if (!block)
                {
                    AdvancedBuildingMod.transformGizmo.enabled = false;
                }

                useGUILayout = block;
            }
        }
        private void Clean()
        {
            if (block)
            {
                block.visible.EnableOutlineGlow(false, cakeslice.Outline.OutlineEnableReason.ScriptHighlight);
            }
            block        = null;
            module       = null;
            useGUILayout = false;
            Singleton.Manager <ManPointer> .inst.ChangeBuildMode(ManPointer.BuildingMode.Grab);

            AdvancedBuildingMod.transformGizmo.transformType = RuntimeGizmos.TransformType.Move;
            AdvancedBuildingMod.transformGizmo.enabled       = false;
            SaveConfig();
        }