Esempio n. 1
0
    protected virtual void UpdateAnimFrame()
    {
        switch (m_iDir)
        {
        case EAnimDirection._FORWARD:
        {
            ++m_iCurrentFrame;
            if (m_iCurrentFrame == m_aAnimationFrames.Length)
            {
                --m_iCurrentFrame;
                m_iDir = EAnimDirection._BACKWARD;
            }
        }
        break;

        case EAnimDirection._BACKWARD:
        {
            --m_iCurrentFrame;
            if (m_iCurrentFrame < 0)
            {
                m_iCurrentFrame = 0;
                m_iDir          = EAnimDirection._FORWARD;
            }
        }
        break;
        }

        m_gcRenderer.sprite = m_aAnimationFrames[m_iCurrentFrame];
        m_iTimerHandle      = TimerManager.AddTimer(m_fDeltaFPS, UpdateAnimFrame);
    }
Esempio n. 2
0
    public virtual void Start()
    {
        GAssert.Assert(m_aAnimationFrames.Length != 0, "PingPong has no frames!");
        m_fDeltaFPS    = 1.0f / m_fFPS;
        m_iTimerHandle = 0;
        m_iDir         = EAnimDirection._FORWARD;
        m_gcRenderer   = GetComponent <SpriteRenderer>();

        if (m_bAutoStart)
        {
            StartAnimation();
        }
    }