- // ThreatBonus[][] contains bonus according to which piece type
- // attacks which one.
- const Value MidgameThreatBonus[8][8] = {
- V(0), V(0), V(0), V(0), V(0), V(0), V(0), V(0), // not used
- V(0),V(30), V(0),V(50), V(70), V(70), V(0), V(0), // KNIGHT attacks
- V(0),V(30),V(50), V(0), V(70), V(70), V(0), V(0), // BISHOP attacks
- V(0),V(20),V(40),V(40), V(0), V(50), V(0), V(0), // ROOK attacks
- V(0),V(40),V(40),V(40), V(40), V(0), V(0), V(0), // QUEEN attacks
- V(0), V(0), V(0), V(0), V(0), V(0), V(0), V(0), // not used
- V(0), V(0), V(0), V(0), V(0), V(0), V(0), V(0), // not used
- V(0), V(0), V(0), V(0), V(0), V(0), V(0), V(0) // not used
- };
-
- const Value EndgameThreatBonus[8][8] = {
- V(0), V(0), V(0), V(0), V(0), V(0), V(0), V(0), // not used
- V(0),V(40), V(0),V(50),V(100),V(100), V(0), V(0), // KNIGHT attacks
- V(0),V(40),V(50), V(0),V(100),V(100), V(0), V(0), // BISHOP attacks
- V(0),V(30),V(50),V(50), V(0), V(50), V(0), V(0), // ROOK attacks
- V(0),V(40),V(40),V(40), V(40), V(0), V(0), V(0), // QUEEN attacks
- V(0), V(0), V(0), V(0), V(0), V(0), V(0), V(0), // not used
- V(0), V(0), V(0), V(0), V(0), V(0), V(0), V(0), // not used
- V(0), V(0), V(0), V(0), V(0), V(0), V(0), V(0) // not used
- };
-
- // ThreatedByPawnPenalty[] contains a penalty according to which piece
- // type is attacked by an enemy pawn.
- const Value MidgameThreatedByPawnPenalty[8] = {
- V(0), V(0), V(50), V(50), V(70), V(80), V(0), V(0)
- };
-
- const Value EndgameThreatedByPawnPenalty[8] = {
- V(0), V(0), V(70), V(70), V(100), V(120), V(0), V(0)
- };
-