Skip to content

Commit 69503c0

Browse files
committed
changed material settings to use own class
1 parent e699b41 commit 69503c0

File tree

2 files changed

+13
-4
lines changed

2 files changed

+13
-4
lines changed

NoraGrace/NoraGrace.Engine/Evaluation/MaterialEvaluator.cs

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,11 @@
88
namespace NoraGrace.Engine.Evaluation
99
{
1010

11+
public class MaterialSettings : ChessGameStageDictionary<MaterialSettingsPhase>
12+
{
13+
14+
15+
}
1116
public class MaterialSettingsPhase
1217
{
1318

@@ -100,13 +105,13 @@ public bool DoShelter
100105
public class MaterialEvaluator
101106
{
102107

103-
protected readonly ChessGameStageDictionary<MaterialSettingsPhase> _settings;
108+
protected readonly MaterialSettings _settings;
104109
private readonly MaterialResults[] _hash = new MaterialResults[500];
105110
public static int TotalEvalMaterialCount = 0;
106111

107112
private int[] _pawnValuesOpening;
108113
private int[] _pawnValuesEndGame;
109-
public MaterialEvaluator(ChessGameStageDictionary<MaterialSettingsPhase> settings)
114+
public MaterialEvaluator(MaterialSettings settings)
110115
{
111116
_settings = settings;
112117

@@ -167,6 +172,8 @@ public MaterialResults EvalMaterial(Int64 zob, int wp, int wn, int wb, int wr, i
167172

168173
double scaleWhite = ScaleFactor(wp, wn, wb, wr, wq, bp, bn, bb, br, bq);
169174
double scaleBlack = ScaleFactor(bp, bn, bb, br, bq, wp, wn, wb, wr, wq);
175+
176+
170177
return new MaterialResults(zob, startWeight, (int)score, (int)(scaleWhite * 100), (int)(scaleBlack * 100));
171178

172179
}

NoraGrace/NoraGrace.Engine/Evaluation/Settings.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ public static Settings Default()
132132
//},
133133
//MaterialBishopPair = new ChessGameStageDictionary<int>() { Opening = 25, Endgame = 75 },
134134

135-
MaterialValues = new ChessGameStageDictionary<MaterialSettingsPhase>()
135+
MaterialValues = new MaterialSettings()
136136
{
137137
Opening = new MaterialSettingsPhase()
138138
{
@@ -150,6 +150,7 @@ public static Settings Default()
150150
Rook = new MaterialSettingsPhase.PieceSettings() { BaseValue = 550, PairBonus = 0 },
151151
Queen = new MaterialSettingsPhase.PieceSettings() { BaseValue = 1100, PairBonus = 0 }
152152
}
153+
153154
},
154155

155156
PcSqTables = new ChessPieceTypeDictionary<ChessGameStageDictionary<PcSqDictionary>>()
@@ -405,6 +406,7 @@ public static Settings Default()
405406
KingRingAttackControlBonus = 25,
406407
KingAttackFactor = .53,
407408
KingAttackFactorQueenTropismBonus = 2.15f,
409+
408410

409411
Mobility = new ChessPieceTypeDictionary<ChessGameStageDictionary<Helpers.Mobility>>()
410412
{
@@ -439,7 +441,7 @@ public static Settings Default()
439441

440442

441443
public ChessPieceTypeDictionary<ChessGameStageDictionary<PcSqDictionary>> PcSqTables = new ChessPieceTypeDictionary<ChessGameStageDictionary<PcSqDictionary>>();
442-
public ChessGameStageDictionary<MaterialSettingsPhase> MaterialValues = new ChessGameStageDictionary<MaterialSettingsPhase>();
444+
public MaterialSettings MaterialValues = new MaterialSettings();
443445
public ChessGameStageDictionary<int> MaterialBishopPair = new ChessGameStageDictionary<int>();
444446

445447
public ChessGameStageDictionary<int> PawnDoubled = new ChessGameStageDictionary<int>();

0 commit comments

Comments
 (0)