public override void Update(EnemyController controller)
        {
            /*
             * for (int i = 0; i < controller.Handler.GetPlayerList.Count; i++)
             * {
             *      PlayerController player = controller.Handler.GetPlayerList [i];
             *      if (Vector3.Distance (player.GetPostion, controller.GetEnemyPosition) < 30f)
             *      {
             *              if (controller.TargetPlayer == null)
             *              {
             *                      controller.TargetPlayer = player;
             *                      controller.AggroMeterUpdate (player.GetPlayerID, 2);
             *              }
             *
             *              Vector3 direction = player.GetPostion - controller.GetEnemyPosition;
             *              direction.y = 0;
             *              controller.transform.rotation = Quaternion.Slerp (controller.transform.rotation, Quaternion.LookRotation (direction), 0.1f);
             *              DelayToPursuit (controller);
             *      }
             * }*/
            if (controller.TargetPlayer == null)
            {
                controller.CheckAggro();
            }

            Vector3 direction = controller.TargetPlayer.GetPostion - controller.GetEnemyPosition;

            direction.y = 0;
            controller.transform.rotation = Quaternion.Slerp(controller.transform.rotation, Quaternion.LookRotation(direction), 0.1f);
            DelayToPursuit(controller);
        }
 public override void Start(EnemyController controller)
 {
     isSwitchingState = false;
     controller.Anim.SetBool(EnemyAnimParam.ATTACK, false);
     controller.Anim.SetBool(EnemyAnimParam.FLINCH, false);
     controller.Anim.SetBool(EnemyAnimParam.MOVE, false);
     controller.Anim.SetBool(EnemyAnimParam.DEATH, false);
     controller.CheckAggro();
 }