Skip to content

Commit

Permalink
add killBoxMate puzzle theme - closes #16696
Browse files Browse the repository at this point in the history
  • Loading branch information
ornicar committed Dec 30, 2024
1 parent 47cd4dd commit 986f9c9
Show file tree
Hide file tree
Showing 5 changed files with 11 additions and 0 deletions.
2 changes: 2 additions & 0 deletions modules/coreI18n/src/main/key.scala
Original file line number Diff line number Diff line change
Expand Up @@ -1274,6 +1274,8 @@ object I18nKey:
val `interferenceDescription`: I18nKey = "puzzleTheme:interferenceDescription"
val `intermezzo`: I18nKey = "puzzleTheme:intermezzo"
val `intermezzoDescription`: I18nKey = "puzzleTheme:intermezzoDescription"
val `killBoxMate`: I18nKey = "puzzleTheme:killBoxMate"
val `killBoxMateDescription`: I18nKey = "puzzleTheme:killBoxMateDescription"
val `knightEndgame`: I18nKey = "puzzleTheme:knightEndgame"
val `knightEndgameDescription`: I18nKey = "puzzleTheme:knightEndgameDescription"
val `long`: I18nKey = "puzzleTheme:long"
Expand Down
2 changes: 2 additions & 0 deletions modules/puzzle/src/main/PuzzleTheme.scala
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ object PuzzleTheme:
val interference = PuzzleTheme(i.interference, i.interferenceDescription)
val intermezzo = PuzzleTheme(i.intermezzo, i.intermezzoDescription)
val kingsideAttack = PuzzleTheme(i.kingsideAttack, i.kingsideAttackDescription)
val killBoxMate = PuzzleTheme(i.killBoxMate, i.killBoxMateDescription)
val knightEndgame = PuzzleTheme(i.knightEndgame, i.knightEndgameDescription)
val long = PuzzleTheme(i.long, i.longDescription)
val master = PuzzleTheme(i.master, i.masterDescription)
Expand Down Expand Up @@ -139,6 +140,7 @@ object PuzzleTheme:
doubleBishopMate,
dovetailMate,
hookMate,
killBoxMate,
smotheredMate
),
I18nKey.puzzle.specialMoves -> List(
Expand Down
1 change: 1 addition & 0 deletions public/images/puzzle-themes/killBoxMate.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 2 additions & 0 deletions translation/source/puzzleTheme.xml
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,8 @@
<string name="interferenceDescription">Moving a piece between two opponent pieces to leave one or both opponent pieces undefended, such as a knight on a defended square between two rooks.</string>
<string name="intermezzo">Intermezzo</string>
<string name="intermezzoDescription">Instead of playing the expected move, first interpose another move posing an immediate threat that the opponent must answer. Also known as "Zwischenzug" or "In between".</string>
<string name="killBoxMate">Kill box mate</string>
<string name="killBoxMateDescription">A rook is next to the enemy king and supported by a queen that also blocks the king's escape squares. The rook and the queen catch the enemy king in a 3 by 3 "kill box".</string>
<string name="knightEndgame">Knight endgame</string>
<string name="knightEndgameDescription">An endgame with only knights and pawns.</string>
<string name="long">Long puzzle</string>
Expand Down
4 changes: 4 additions & 0 deletions ui/@types/lichess/i18n.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2471,6 +2471,10 @@ interface I18n {
intermezzo: string;
/** Instead of playing the expected move, first interpose another move posing an immediate threat that the opponent must answer. Also known as "Zwischenzug" or "In between". */
intermezzoDescription: string;
/** Kill box mate */
killBoxMate: string;
/** A rook is next to the enemy king and supported by a queen that also blocks the king's escape squares. The rook and the queen catch the enemy king in a 3 by 3 "kill box". */
killBoxMateDescription: string;
/** Kingside attack */
kingsideAttack: string;
/** An attack of the opponent's king, after they castled on the king side. */
Expand Down

0 comments on commit 986f9c9

Please sign in to comment.