Merge some conditions
authorhomoSapiensSapiens <reuvenpe2005@gmail.com>
Fri, 3 May 2013 11:01:41 +0000 (14:01 +0300)
committerMarco Costalba <mcostalba@gmail.com>
Sat, 4 May 2013 09:13:22 +0000 (11:13 +0200)
No functional change.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
src/evaluate.cpp

index 5a8a292f9a24c34596309562f6c86c79a29fb4c0..1a1334fe1e4e3f8858ba70f245c23a1b875f5851 100644 (file)
@@ -651,19 +651,19 @@ Value do_evaluate(const Position& pos, Value& margin) {
 
             if (    file_of(ksq) >= FILE_E
                 &&  file_of(s) > file_of(ksq)
-                && (relative_rank(Us, ksq) == RANK_1 || rank_of(ksq) == rank_of(s)))
+                && (relative_rank(Us, ksq) == RANK_1 || rank_of(ksq) == rank_of(s))
+                && !ei.pi->has_open_file_to_right(Us, file_of(ksq)))
             {
                 // Is there a half-open file between the king and the edge of the board?
-                if (!ei.pi->has_open_file_to_right(Us, file_of(ksq)))
                     score -= make_score(pos.can_castle(Us) ? (TrappedRookPenalty - mob * 16) / 2
                                                            : (TrappedRookPenalty - mob * 16), 0);
             }
             else if (    file_of(ksq) <= FILE_D
                      &&  file_of(s) < file_of(ksq)
-                     && (relative_rank(Us, ksq) == RANK_1 || rank_of(ksq) == rank_of(s)))
+                     && (relative_rank(Us, ksq) == RANK_1 || rank_of(ksq) == rank_of(s))
+                     && !ei.pi->has_open_file_to_left(Us, file_of(ksq)))
             {
                 // Is there a half-open file between the king and the edge of the board?
-                if (!ei.pi->has_open_file_to_left(Us, file_of(ksq)))
                     score -= make_score(pos.can_castle(Us) ? (TrappedRookPenalty - mob * 16) / 2
                                                            : (TrappedRookPenalty - mob * 16), 0);
             }