private float GetStateValueFor(TyState player, TyState enemy) { float emptyFieldValue = Weights.GetWeight(TyStateWeights.WeightType.EmptyField) * GetEmptyFieldValue(enemy); float healthValue = Weights.GetWeight(TyStateWeights.WeightType.HealthFactor) * GetHeroHealthArmorValue(player); float deckValue = Weights.GetWeight(TyStateWeights.WeightType.DeckFactor) * GetDeckValue(player); float handValue = Weights.GetWeight(TyStateWeights.WeightType.HandFactor) * GetHandValues(player); float minionValue = Weights.GetWeight(TyStateWeights.WeightType.MinionFactor) * GetMinionValues(player); float biasValues = Weights.GetWeight(TyStateWeights.WeightType.BiasFactor) * GetBiasValue(player); return(emptyFieldValue + deckValue + healthValue + handValue + minionValue + biasValues); }