void Start()
    {
        items = GameObjectUtils.GetChildWithNameGameObject(ItemsContainer, "BuyItem", true);

        PaymentProductCoins[] Coins = CustomPaymentManager.Coins;

        for (int i = 0; i < items.Length; i++)
        {
            GameObject item = items [i];

            if (i >= Coins.Length)
            {
                item.SetActive(false);
                continue;
            }

            PaymentProductCoins  coin    = Coins [i];
            CustomPaymentManager payment = CustomPaymentManager.Instance as CustomPaymentManager;

            Product product = payment.Product(coin.Product.Name);

            Text price = GameObjectHelper.GetChildNamedGameObject(item, "Price", true).GetComponent <Text>() as Text;

            if (product != null)
            {
                price.text = product.metadata.localizedPriceString;
            }
            else
            {
                price.text = string.Format("{0} {1}", coin.Currency, coin.Price);
            }

            Text title = GameObjectHelper.GetChildNamedGameObject(item, "Name", true).GetComponent <Text> () as Text;

            if (coin.Coins > 0)
            {
                title.text = coin.Coins.ToString();
            }
            else
            {
                title.gameObject.SetActive(false);
            }

            Text descr = GameObjectHelper.GetChildNamedGameObject(item, "Description", true).GetComponent <Text>() as Text;
            descr.text = coin.Description;

            if (coin.Coins == 0)
            {
                descr.gameObject.SetActive(true);
            }
        }

        Show();
    }
    public void Reset()
    {
        GameObject[] _points = GameObjectUtils.GetChildWithNameGameObject(_lineRenderer.gameObject, "LinePoint", true);

        foreach (GameObject _p in _points)
        {
            GameObject.DestroyImmediate(_p);
        }

        _lineRenderer.SetVertexCount(0);
        _lineRenderer.SetPositions(new Vector3[] {});
    }