public void SetSubCategory(ShopWindowScript.SubCategory subCategory)
    {
        this._subCategory = subCategory;

        switch (this._subCategory)
        {
        case ShopWindowScript.SubCategory.BARRACK:
            this.Name.text    = "BARRACK";
            this.Image.sprite = this.BarrackSprite;
            break;

        case ShopWindowScript.SubCategory.BOAT:
            this.Name.text    = "BOAT";
            this.Image.sprite = this.BoatSprite;
            break;

        case ShopWindowScript.SubCategory.BUILDER_HUT:
            this.Name.text    = "BUILDER HUT";
            this.Image.sprite = this.BuilderHutSprite;
            break;

        case ShopWindowScript.SubCategory.CAMP:
            this.Name.text    = "CAMP";
            this.Image.sprite = this.CampSprite;
            break;

        case ShopWindowScript.SubCategory.CANNON:
            this.Name.text    = "CANNON";
            this.Image.sprite = this.CannonSprite;
            break;

        case ShopWindowScript.SubCategory.ELIXIR_COLLECTOR:
            this.Name.text    = "ELIXIR COLLECTOR";
            this.Image.sprite = this.ElixirCollectorSprite;
            break;

        case ShopWindowScript.SubCategory.ELIXIR_STORAGE:
            this.Name.text    = "ELIXIR STORAGE";
            this.Image.sprite = this.ElixirStorageSprite;
            break;

        case ShopWindowScript.SubCategory.GEMS:
            this.Name.text    = "GEMS";
            this.Image.sprite = this.GemsSprite;
            break;

        case ShopWindowScript.SubCategory.GOLD_MINE:
            this.Name.text    = "GOLD MINE";
            this.Image.sprite = this.GoldMineSprite;
            break;

        case ShopWindowScript.SubCategory.GOLD_STORAGE:
            this.Name.text    = "GOLD STORAGE";
            this.Image.sprite = this.GoldStorageSprite;
            break;

        case ShopWindowScript.SubCategory.TOWER:
            this.Name.text    = "TOWER";
            this.Image.sprite = this.TowerSprite;
            break;

        case ShopWindowScript.SubCategory.TOWN_CENTER:
            this.Name.text    = "TOWN CENTER";
            this.Image.sprite = this.TownCenterSprite;
            break;

        case ShopWindowScript.SubCategory.TREE1:
            this.Name.text    = "TREE1";
            this.Image.sprite = this.Tree1Sprite;
            break;

        case ShopWindowScript.SubCategory.TREE2:
            this.Name.text    = "TREE2";
            this.Image.sprite = this.Tree2Sprite;
            break;

        case ShopWindowScript.SubCategory.WINDMILL:
            this.Name.text    = "WINDMILL";
            this.Image.sprite = this.WindMillSprite;
            break;

        case ShopWindowScript.SubCategory.WALL:
            this.Name.text    = "WALL";
            this.Image.sprite = this.WallSprite;
            break;

        case ShopWindowScript.SubCategory.TREE3:
            this.Name.text    = "TREE3";
            this.Image.sprite = this.Tree3Sprite;
            break;
        }
    }
    public void SetSubCategory(ShopWindowScript.SubCategory subCategory)
    {
        GoldCostPanel.SetActive(false);
        WoodCostPanel.SetActive(false);
        LeavesCostPanel.SetActive(false);
        this._subCategory = subCategory;

        switch (this._subCategory.subCategoryName)
        {
        case "BUILDER_HUT":
            this.Name.text    = "BUILDER HUT";
            this.Image.sprite = this.BuilderHutSprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;

        case "CAMP":
            this.Name.text    = "CAMP";
            this.Image.sprite = this.CampSprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;

        case "ELIXIR_COLLECTOR":
            this.Name.text    = "ELIXIR COLLECTOR";
            this.Image.sprite = this.ElixirCollectorSprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;

        case "ELIXIR_STORAGE":
            this.Name.text    = "ELIXIR STORAGE";
            this.Image.sprite = this.ElixirStorageSprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;

        case "GEMS":
            this.Name.text    = "GEMS";
            this.Image.sprite = this.GemsSprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;

        case "GOLD_MINE":
            this.Name.text    = "GOLD MINE";
            this.Image.sprite = this.GoldMineSprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;

        case "GOLD_STORAGE":
            this.Name.text    = "GOLD STORAGE";
            this.Image.sprite = this.GoldStorageSprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;

        case "TOWER":
            this.Name.text    = "TOWER";
            this.Image.sprite = this.TowerSprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;

        case "TOWN_CENTER":
            this.Name.text    = "TOWN CENTER";
            this.Image.sprite = this.TownCenterSprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;

        case "TREE1":
            this.Name.text    = "TREE1";
            this.Image.sprite = this.Tree1Sprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;

        case "TREE2":
            this.Name.text    = "TREE2";
            this.Image.sprite = this.Tree2Sprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;

        case "WINDMILL":
            this.Name.text    = "WINDMILL";
            this.Image.sprite = this.WindMillSprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;

        case "WALL":
            this.Name.text    = "WALL";
            this.Image.sprite = this.WallSprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;

        case "TREE3":
            this.Name.text    = "TREE3";
            this.Image.sprite = this.Tree3Sprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;

        case "Tent":
            this.Name.text    = "Tent";
            this.Image.sprite = this.TentSprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.LEAVES_RESOURCE_NAME] > 0)
            {
                LeavesCostPanel.SetActive(true);
                leavesPrice.text = this._subCategory.reqMap[DataBaseManager.LEAVES_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;

        case "CoconutTree":
            this.Name.text    = "Coconut Tree";
            this.Image.sprite = this.CoconutTreeSprite;
            if (this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] > 0)
            {
                GoldCostPanel.SetActive(true);
                goldPrice.text = this._subCategory.reqMap[DataBaseManager.GOLD_RESOURCE_NAME] + "";
            }

            if (this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] > 0)
            {
                WoodCostPanel.SetActive(true);
                woodPrice.text = this._subCategory.reqMap[DataBaseManager.WOOD_RESOURCE_NAME] + "";
            }

            this.LockImage.SetActive(this._subCategory.Locked);
            this.LockPanel.SetActive(this._subCategory.Locked);
            subCategoryItemButton.interactable = !this._subCategory.Locked;
            break;
        }
    }