Example #1
0
    public void OnBuyClick()
    {
        _clickCount   += 1;
        showCoinNumber = 5 * _clickCount >= 15 ? MAXCount : 5 * _clickCount;
        GameData.Instance.ChangeCoinsData(5 * _clickCount);

        callback = () =>
        {
            CoinCollectionAnim.ShowCollectionAnim(fromTransform, targetTransform, coinPrefab,
                                                  coinsCount, showCoinNumber);
        };

        _openChestDialog.Init(showCoinNumber, callback);
    }
Example #2
0
    public static void ShowCollectionAnim(Transform fromTransform, Transform targetTransform,
                                          CoinCollectionAnim coinPrefab, Text text, int showCoinNumber)
    {
        Sequence mainSequence = DOTween.Sequence();

        for (int i = 0; i < showCoinNumber; i++)
        {
            mainSequence.AppendCallback((() =>
            {
                ShowSingleCoinAnim(fromTransform, targetTransform, coinPrefab);
            }));
            mainSequence.AppendInterval(0.1f);
        }

        mainSequence.AppendCallback((() =>
        {
            ShowCoinsPlusAnim(text);
        }));
    }
Example #3
0
    private static void ShowSingleCoinAnim(Transform fromTransform, Transform targetTransform,
                                           CoinCollectionAnim coinPrefab)
    {
        float              scaleRate = 50f;
        float              x         = fromTransform.position.x + Random.Range(-1f, 1f);
        float              y         = fromTransform.position.y + Random.Range(-1f, 1f);
        Vector3            vector3   = new Vector3(x, y, 0);
        Sequence           sequence  = DOTween.Sequence();
        CoinCollectionAnim anim      = Instantiate(coinPrefab, fromTransform);

        anim.transform.localScale *= scaleRate;
        sequence.Append(anim.transform.DOMove(vector3, 1f));
        sequence.Append(anim.transform.DOMove(targetTransform.position, 1f));
        sequence.AppendCallback(() =>
        {
            anim.gameObject.SetActive(false);
            Destroy(anim.gameObject, 0.5f);
        });
    }
 public void OnBgClick()
 {
     CoinCollectionAnim.ShowCollectionAnim(fromTransform, targetTransform, coinPrefab, coinsCount, showCoinNumber);
     showChestDialog.SetActive(false);
 }