示例#1
0
    private float DecisionScoreTransferFunctionPosition(WorldPositionScore aiEvaluableElement, float currentScore)
    {
        int num = 0;

        for (int i = 0; i < aiEvaluableElement.CountByOrientation.Length; i++)
        {
            if (num < aiEvaluableElement.CountByOrientation[i])
            {
                num = aiEvaluableElement.CountByOrientation[i];
            }
        }
        num          -= 2;
        num           = Mathf.Min(8, num);
        currentScore += currentScore * 0.05f * (float)num;
        if (aiEvaluableElement.HasCostalTile)
        {
            currentScore += currentScore * this.costalColonizationBoost;
        }
        if (aiEvaluableElement.NewDistrictNeighbourgNumber < 6)
        {
            currentScore *= 0.5f;
        }
        return(currentScore);
    }
示例#2
0
 private float DecisionParameterContextModifierPosition(WorldPositionScore aiEvaluableElement, StaticString aiParameterName)
 {
     return(base.AIPlayer.GetEntity <AIEntity_Empire>().Context.GetModifierValue(AILayer_Strategy.ColonizationParameterModifier, aiParameterName));
 }