Example #1
0
//	public void Animate();
    public void AssesSituation()
    {
        if (targetEnemy != null)
        {
            if (Vector3.Distance(NpcController.Location, targetEnemy.Location) > 1.25f)        //Am I going somewhere
            {
                movement = (targetEnemy.Location - NpcController.Location).normalized;
                NpcController.Animate(movement, 1f);
                NpcController.mover.MoveTo(targetEnemy.Location);
            }
            else
            {
                Vector3 enemyVector = targetEnemy.Location - NpcController.Location;

                if (Vector3.Dot(enemyVector, movement) > 0)            //am I facing the enemy
                {
                    NpcController.Attack(enemyVector);
                }
                NpcController.Animate(movement, 0f);
            }
        }
    }