コード例 #1
0
 private float GetCrossFade()
 {
     if (this.m_eNextAniTypeList.Count != 0)
     {
         NrCharNextAniInfo nrCharNextAniInfo = this.m_eNextAniTypeList[0];
         return(this.GetCrossFade(nrCharNextAniInfo.eAnimationType, nrCharNextAniInfo.bBlend));
     }
     return(0f);
 }
コード例 #2
0
    public NrCharNextAniInfo PopNextAniType()
    {
        if (this.m_eNextAniTypeList.Count == 0)
        {
            return(null);
        }
        NrCharNextAniInfo nrCharNextAniInfo = this.m_eNextAniTypeList[0];

        if (nrCharNextAniInfo == null)
        {
            return(null);
        }
        this.m_eNextAniTypeList.Remove(nrCharNextAniInfo);
        return(nrCharNextAniInfo);
    }
コード例 #3
0
    public void ProcessAnimation(float deltatime)
    {
        this.m_fAniPlayingTime += deltatime;
        if (!this.m_bProcessStatus && !this.CheckProcessStatus())
        {
            return;
        }
        NrCharNextAniInfo nrCharNextAniInfo = this.PopNextAniType();

        if (nrCharNextAniInfo != null)
        {
            float crossFade = this.GetCrossFade(nrCharNextAniInfo.eAnimationType, nrCharNextAniInfo.bBlend);
            this.SetCurrentAniType(nrCharNextAniInfo.eAnimationType, crossFade);
        }
        else if (this.GetNextAniCount() == 0 && !this.m_bBattleState && !NrCharAnimation.IsIdleAnimation(this.m_eCurrentAniType))
        {
            NrCharBase parentChar = this.m_pkParent3DChar.GetParentChar();
            if (parentChar != null && parentChar.m_kCharMove.IsMoving())
            {
                return;
            }
            this.SetCurrentAniType(this.m_pkParent3DChar.GetIdleAnimation(), 0.3f);
        }
    }