public static FleeingStrategy CreateComponent(GameObject where, float playerDetectionRange = 5f, float fleeDistance = 5f, float searchDelay = 1f)
    {
        FleeingStrategy strategy = where.AddComponent <FleeingStrategy>();

        strategy.playerDetectionRange = playerDetectionRange;
        strategy.fleeDistance         = fleeDistance;
        strategy.searchDelay          = searchDelay;
        strategy.Start();
        return(strategy);
    }
 protected virtual void StartFleeing()
 {
     Destroy(movingStrategy);
     movingStrategy = FleeingStrategy.CreateComponent(gameObject);
 }