| 101:d4f19182fdc2 | 102:463c648e6a9b |
|---|---|
| 175 } | 175 } |
| 176 | 176 |
| 177 return 0; | 177 return 0; |
| 178 } | 178 } |
| 179 | 179 |
| 180 size_t write_pgn(FILE* stream, GameState *gamestate, GameInfo *gameinfo) { | 180 void write_pgn(FILE* stream, GameState *gamestate, GameInfo *gameinfo) { |
| 181 // TODO: tag pairs | 181 // TODO: tag pairs |
| 182 size_t bytes = 0; | 182 |
| 183 | |
| 184 /* Result */ | 183 /* Result */ |
| 185 char *result; | 184 char *result; |
| 186 if (gamestate->stalemate || gamestate->remis) { | 185 if (gamestate->stalemate || gamestate->remis) { |
| 187 result = "1/2-1/2"; | 186 result = "1/2-1/2"; |
| 188 } else if (gamestate->checkmate || gamestate->resign) { | 187 } else if (gamestate->checkmate || gamestate->resign) { |
| 226 if (result[0] == '*') { | 225 if (result[0] == '*') { |
| 227 fputc('\n', stream); | 226 fputc('\n', stream); |
| 228 } else { | 227 } else { |
| 229 fprintf(stream, "%s\n", result); | 228 fprintf(stream, "%s\n", result); |
| 230 } | 229 } |
| 231 | |
| 232 | |
| 233 return bytes; | |
| 234 } | 230 } |
| 235 | 231 |
| 236 static size_t fen_pieces(char *str, GameState *gamestate) { | 232 static size_t fen_pieces(char *str, GameState *gamestate) { |
| 237 size_t i = 0; | 233 size_t i = 0; |
| 238 for (int row = 7 ; row >= 0 ; row--) { | 234 for (int row = 7 ; row >= 0 ; row--) { |