Merge pull request #9980 from benediktwerner/tournament-fromPosition-startingPly

Fix swiss&tournament starting ply in FromPosition
pull/9985/head
Thibault Duplessis 2021-10-18 10:47:25 +02:00 committed by GitHub
commit f54d0effe2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 16 additions and 26 deletions

View File

@ -83,20 +83,15 @@ final private class SwissDirector(
): Game =
Game
.make(
chess = chess.Game(
variantOption = Some {
if (swiss.settings.position.isEmpty) swiss.variant
else chess.variant.FromPosition
},
fen = swiss.settings.position
) pipe { g =>
val turns = g.player.fold(0, 1)
g.copy(
clock = swiss.clock.toClock.some,
turns = turns,
startedAtTurn = turns
chess = chess
.Game(
variantOption = Some {
if (swiss.settings.position.isEmpty) swiss.variant
else chess.variant.FromPosition
},
fen = swiss.settings.position
)
},
.copy(clock = swiss.clock.toClock.some),
whitePlayer = makePlayer(White, players get pairing.white err s"Missing pairing white $pairing"),
blackPlayer = makePlayer(Black, players get pairing.black err s"Missing pairing black $pairing"),
mode = chess.Mode(swiss.settings.rated),

View File

@ -24,20 +24,15 @@ final class AutoPairing(
val clock = tour.clock.toClock
val game = Game
.make(
chess = chess.Game(
variantOption = Some {
if (tour.position.isEmpty) tour.variant
else chess.variant.FromPosition
},
fen = tour.position
) pipe { g =>
val turns = g.player.fold(0, 1)
g.copy(
clock = clock.some,
turns = turns,
startedAtTurn = turns
chess = chess
.Game(
variantOption = Some {
if (tour.position.isEmpty) tour.variant
else chess.variant.FromPosition
},
fen = tour.position
)
},
.copy(clock = clock.some),
whitePlayer = makePlayer(White, player1),
blackPlayer = makePlayer(Black, player2),
mode = tour.mode,