public void Refresh()
    {
        //Check if opening inventory
        if (Input.GetKeyDown(KeyCode.I))
        {
            IsInventoryActive = !IsInventoryActive;
            InvPanel.gameObject.SetActive(IsInventoryActive);
        }
        //Check if opening character panel
        if (Input.GetKeyDown(KeyCode.C))
        {
            IsCharPanelActive = !IsCharPanelActive;
            CharPanel.gameObject.SetActive(IsCharPanelActive);
        }

        //Update the inventory
        if (IsInventoryActive)
        {
            InvPanel.Refresh();
        }

        //Update the character panel
        if (IsCharPanelActive)
        {
            CharPanel.Refresh();
        }
    }
    public Script_UIManager()
    {
        //Create character panel
        Canvas         = GameObject.Find("Canvas");
        CharacterPanel = GameObject.Instantiate(Resources.Load <Script_CharacterPanel>("Prefabs/UI/CharacterPanel"));
        CharacterPanel.Initialise();
        CharacterPanel.transform.SetParent(Canvas.transform);
        CharacterPanel.transform.localPosition = Vector3.zero;
        CharacterPanel.Refresh();
        CharacterPanel.Hide();

        //Create inventory panel
        InventoryPanel = GameObject.Instantiate(Resources.Load <Script_InventoryPanel>("Prefabs/UI/InventoryPanel"));
        InventoryPanel.Initialise();
        InventoryPanel.transform.SetParent(Canvas.transform);
        InventoryPanel.transform.localPosition = Vector3.zero;
        InventoryPanel.Refresh();
        InventoryPanel.Hide();

        //Create shop panel
        ShopPanel = GameObject.Instantiate(Resources.Load <Script_ShopPanel>("Prefabs/UI/ShopPanel"));
        ShopPanel.Initialise();
        ShopPanel.transform.SetParent(Canvas.transform);
        ShopPanel.transform.localPosition = Vector3.zero;
        ShopPanel.Refresh();
        ShopPanel.Hide();
    }