Esempio n. 1
0
    public void ShowJumpWin()
    {
        if (null == m_jndWin)
        {
            m_jndWin = new JumpNumberData();
        }

        m_jndWin.From      = m_clerk.Win;
        m_jndWin.To        = 0;
        m_jndWin.JumpTimes = 60;
        m_jndWin.Type      = JumpNumberData.JumpTypeWin;

        if (null == m_jndGold)
        {
            m_jndGold = new JumpNumberData();
        }
        m_jndGold.From      = m_clerk.Gold;
        m_jndGold.To        = m_clerk.Gold + m_clerk.Win;
        m_jndGold.JumpTimes = 60;
        m_jndGold.Type      = JumpNumberData.JumpTypeGold;

        StartCoroutine(JumpWinNumber(m_jndWin));
        StartCoroutine(JumpWinNumber(m_jndGold));
    }
Esempio n. 2
0
    public IEnumerator JumpWinNumber(JumpNumberData data)
    {
        long step     = 1;
        bool increase = true;
        long total    = 0;

        if (data.From > data.To)
        {
            increase = false;
            total    = data.From - data.To;
        }
        else
        {
            total = data.To - data.From;
        }

        if (data.JumpTimes <= 0)
        {
            data.JumpTimes = 1;
        }

        if (total > data.JumpTimes)
        {
            step = total / data.JumpTimes;
        }
        else
        {
            data.JumpTimes = total;
        }

        data.Result = data.From;

        for (int i = 0; i < data.JumpTimes; i++)
        {
            if (increase)
            {
                data.Result += step;
            }
            else
            {
                data.Result -= step;
            }

            if (data.Type == JumpNumberData.JumpTypeWin)
            {
                m_clerk.Win = data.Result;
            }
            else if (data.Type == JumpNumberData.JumpTypeGold)
            {
                m_clerk.Gold = data.Result;
            }

            yield return(1);
        }

        data.Result = data.To;
        if (data.Type == JumpNumberData.JumpTypeWin)
        {
            m_clerk.Win = data.Result;
        }
        else if (data.Type == JumpNumberData.JumpTypeGold)
        {
            m_clerk.Gold     = data.Result;
            m_clerk.Spinning = false;

            // 隐藏金币
            GameObject coin = GameObject.Find("Coin");
            if (coin != null)
            {
                Image coinImg = coin.GetComponent <Image>();
                coinImg.color = new Color(1.0f, 1.0f, 1.0f, 0.0f);
                coin.transform.localPosition = new Vector3(385, -379, 0);
            }
        }

        StopCoroutine(JumpWinNumber(data));
    }