コード例 #1
0
ファイル: AttackState.cs プロジェクト: will3/Cubical-planet
        public ICharacterState Step()
        {
            if (target.Dead)
            {
                return(new IdleState(behaviour, character));
            }

            var reached = behaviour.Chase(target);

            if (reached)
            {
                var done = behaviour.Attack(target);

                if (done)
                {
                    // Re-evaluate after each attack
                    return(new IdleState(behaviour, character));
                }
            }

            return(this);
        }