dkforest

A forum and chat platform (onion)
git clone https://git.dasho.dev/n0tr1v/dkforest.git
Log | Files | Refs | LICENSE

commit 2a401a32736655a6d2e35ea1af37aa0271538605
parent 48e2dc30cb08c98266ef2242a091f960f42bbd2b
Author: n0tr1v <n0tr1v@protonmail.com>
Date:   Mon, 12 Jun 2023 15:05:44 -0700

cleanup

Diffstat:
Mpkg/web/handlers/chess.go | 6++----
Mpkg/web/handlers/interceptors/chess.go | 27+++++++++++++++------------
2 files changed, 17 insertions(+), 16 deletions(-)

diff --git a/pkg/web/handlers/chess.go b/pkg/web/handlers/chess.go @@ -397,10 +397,8 @@ Loop: styles.Appendf(`#%s { background-color: transparent !important; }`, interceptors.WhiteKingID) styles.Appendf(`#%s { background-color: transparent !important; }`, interceptors.BlackKingID) // Render "checks" red background - if payload.CheckW { - styles.Appendf(`#%s { background-color: %s !important; }`, interceptors.WhiteKingID, interceptors.CheckColor) - } else if payload.CheckB { - styles.Appendf(`#%s { background-color: %s !important; }`, interceptors.BlackKingID, interceptors.CheckColor) + if payload.CheckIDStr != "" { + styles.Appendf(`#%s { background-color: %s !important; }`, payload.CheckIDStr, interceptors.CheckColor) } send(styles.Build()) diff --git a/pkg/web/handlers/interceptors/chess.go b/pkg/web/handlers/interceptors/chess.go @@ -26,12 +26,11 @@ import ( ) type ChessMove struct { - IDStr1 string - IDStr2 string - EnPassant string - CheckW bool - CheckB bool - Move chess.Move + IDStr1 string + IDStr2 string + EnPassant string + CheckIDStr string + Move chess.Move } var ChessPubSub = pubsub.NewPubSub[ChessMove]() @@ -558,13 +557,17 @@ func (b *Chess) SendMove(gameKey string, userID database.UserID, g *ChessGame, c g.updatePiecesCache(mov) + var checkIDStr string + if mov.HasTag(chess.Check) { + checkIDStr = utils.Ternary(game.Position().Turn() == chess.White, WhiteKingID, BlackKingID) + } + chessMov := ChessMove{ - IDStr1: idStr1, - IDStr2: idStr2, - EnPassant: idStr3, - CheckW: game.Position().Turn() == chess.White && mov.HasTag(chess.Check), - CheckB: game.Position().Turn() == chess.Black && mov.HasTag(chess.Check), - Move: mov, + IDStr1: idStr1, + IDStr2: idStr2, + EnPassant: idStr3, + CheckIDStr: checkIDStr, + Move: mov, } ChessPubSub.Pub(gameKey, chessMov)