fBaseXtensions.Game.Hero.ActiveHero.WaitWhileAnimating C# (CSharp) Method

WaitWhileAnimating() public method

public WaitWhileAnimating ( int iMaxSafetyLoops = 10, bool bWaitForAttacking = false ) : void
iMaxSafetyLoops int
bWaitForAttacking bool
return void
        public void WaitWhileAnimating(int iMaxSafetyLoops = 10, bool bWaitForAttacking = false)
        {
            bool bKeepLooping = true;
            int iSafetyLoops = 0;
            while (bKeepLooping)
            {
                iSafetyLoops++;
                if (iSafetyLoops > iMaxSafetyLoops)
                    bKeepLooping = false;
                bool bIsAnimating = false;
                try
                {
                    AnimationState currentanimstate = CurrentAnimationState;
                    if (currentanimstate==(AnimationState.Casting) || currentanimstate==AnimationState.Channeling)
                        bIsAnimating = true;
                    if (bWaitForAttacking && currentanimstate==AnimationState.Attacking)
                        bIsAnimating = true;
                }
                catch (NullReferenceException)
                {
                    bIsAnimating = true;
                }
                if (!bIsAnimating)
                    bKeepLooping = false;
            }
        }