Beispiel #1
0
 private FeatureContext ComputeOutOfBend(FeatureContext features, int nbOut)
 {
     if (nbOut > 0)
     {
         FeatureContext result = features.Clone();
         if (ContextEngine.Instance.gameContext.state == GameStateType.Race)
         {
             result.tire = features.tire - nbOut;
         }
         else if (ContextEngine.Instance.gameContext.state == GameStateType.Qualification)
         {
             result.outOfBend += nbOut;
         }
         return(result);
     }
     else
     {
         return(features);
     }
 }
Beispiel #2
0
        private FeatureContext ComputeUseBrake(FeatureContext features, int de, bool isStandWay, int nbCase)
        {
            FeatureContext result = features.Clone();

            if (ContextEngine.Instance.gameContext.state == GameStateType.Race && !isStandWay)
            {
                int difDe = de - nbCase;
                if (difDe >= 6)
                {
                    result.brake = features.brake - 3;
                    result.tire  = features.tire - 3;
                }
                else if (difDe == 5)
                {
                    result.brake = features.brake - 3;
                    result.tire  = features.tire - 2;
                }
                else if (difDe == 4)
                {
                    result.brake = features.brake - 3;
                    result.tire  = features.tire - 1;
                }
                else if (difDe == 3)
                {
                    result.brake = features.brake - 3;
                }
                else if (difDe == 2)
                {
                    result.brake = features.brake - 2;
                }
                else if (difDe == 1)
                {
                    result.brake = features.brake - 1;
                }
            }
            return(result);
        }
Beispiel #3
0
 private FeatureContext ComputeUseBrake(FeatureContext features, int de, bool isStandWay, int nbCase)
 {
     FeatureContext result = features.Clone();
     if (ContextEngine.Instance.gameContext.state == GameStateType.Race && !isStandWay)
     {
         int difDe = de - nbCase;
         if (difDe >= 6)
         {
             result.brake = features.brake - 3;
             result.tire = features.tire - 3;
         }
         else if (difDe == 5)
         {
             result.brake = features.brake - 3;
             result.tire = features.tire - 2;
         }
         else if (difDe == 4)
         {
             result.brake = features.brake - 3;
             result.tire = features.tire - 1;
         }
         else if (difDe == 3)
         {
             result.brake = features.brake - 3;
         }
         else if (difDe == 2)
         {
             result.brake = features.brake - 2;
         }
         else if (difDe == 1)
         {
             result.brake = features.brake - 1;
         }
     }
     return result;
 }
Beispiel #4
0
 private FeatureContext ComputeOutOfBend(FeatureContext features, int nbOut)
 {
     if (nbOut > 0)
     {
         FeatureContext result = features.Clone();
         if (ContextEngine.Instance.gameContext.state == GameStateType.Race)
         {
             result.tire = features.tire - nbOut;
         }
         else if (ContextEngine.Instance.gameContext.state == GameStateType.Qualification)
         {
             result.outOfBend += nbOut;
         }
         return result;
     }
     else
     {
         return features;
     }
 }