public static void FleeHurtDir(NPCHumanContext c)
 {
     if (c.AIAgent.IsNavRunning() && HumanNavigateToOperator.NavigateInDirOfBestSample(c, NavPointSampler.SampleCount.Eight, 4f, NavPointSampler.SampleFeatures.RetreatFromDirection, c.AIAgent.GetStats.MinFleeRange, c.AIAgent.GetStats.MaxFleeRange))
     {
         c.SetFact(NPCPlayerApex.Facts.IsFleeing, 1, true, true);
     }
 }
 public static void Sidestep(NPCHumanContext c)
 {
     if (c.AIAgent.IsNavRunning())
     {
         c.Human.StoppingDistance = 0.1f;
         if (HumanNavigateToOperator.NavigateInDirOfBestSample(c, NavPointSampler.SampleCount.Eight, 4f, NavPointSampler.SampleFeatures.FlankTarget, 2f, 5f) && c.AIAgent.GetFact(NPCPlayerApex.Facts.IsInCover) == 1)
         {
             c.AIAgent.SetFact(NPCPlayerApex.Facts.SidesteppedOutOfCover, 1, true, true);
         }
     }
 }
 public static void NavigateToRandomLoc(NPCHumanContext c)
 {
     if (IsHumanRoamReady.Evaluate(c) && c.AIAgent.IsNavRunning() && HumanNavigateToOperator.NavigateInDirOfBestSample(c, NavPointSampler.SampleCount.Eight, 4f, NavPointSampler.SampleFeatures.DiscourageSharpTurns, c.AIAgent.GetStats.MinRoamRange, c.AIAgent.GetStats.MaxRoamRange))
     {
         HumanNavigateToOperator.UpdateRoamTime(c);
         if (c.Human.OnChatter != null)
         {
             c.Human.OnChatter();
         }
     }
 }