X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=hachu.c;h=9b98aa736c1d4bae37463ccbbc89b354ec218baf;hb=77ad1e5157ad3cf48244f2377f90272d3bb4a1c1;hp=a8828c507289266190a1d8e9c21956190a3647e1;hpb=a494f710fd8564278ece8d843573e06b05bb1ec8;p=hachu.git diff --git a/hachu.c b/hachu.c index a8828c5..9b98aa7 100644 --- a/hachu.c +++ b/hachu.c @@ -820,6 +820,7 @@ SetUp(char *array, int var) char c, *q, name[3], prince = 0; PieceDesc *p1, *p2; last[WHITE] = 1; last[BLACK] = 0; + royal[WHITE] = royal[BLACK] = 0; for(i=0; ; i++) { //printf("next rank: %s\n", array); for(j = BW*i; ; j++) { @@ -860,6 +861,9 @@ SetUp(char *array, int var) } } eos: + // add dummy Kings if not yet added (needed to set royal[] to valid value!) + if(!royal[WHITE]) p[AddPiece(WHITE, LookUp("K", V_CHU))].pos = ABSENT; + if(!royal[BLACK]) p[AddPiece(BLACK, LookUp("K", V_CHU))].pos = ABSENT; // add dummy Crown Princes if not yet added if(!(prince & WHITE+1)) p[AddPiece(WHITE, LookUp("CP", V_CHU))].pos = ABSENT; if(!(prince & BLACK+1)) p[AddPiece(BLACK, LookUp("CP", V_CHU))].pos = ABSENT;