diff --git a/main_ru.tex b/main_ru.tex index 8c529a4e6..4b5ea6a3f 100644 --- a/main_ru.tex +++ b/main_ru.tex @@ -4,12 +4,17 @@ % Language setting \usepackage[TU]{fontenc} \usepackage[russian]{babel} +\usepackage{etoolbox} \def\sections{sections/translated/ru} \newcommand{\notefont}[0]{} \newcommand{\expansionlabelfont}[0]{\newcomputermodern\selectfont} +% This is a hack used to translate separator lines in the Map Elements chapter differently. +\newtoggle{firstseparatorinmapelements} +\toggletrue{firstseparatorinmapelements} + \AtBeginDocument{ \setmainfont{LiberationSerif}[ Path = ./assets/fonts/LiberationSerif/, diff --git a/translations/combat.tex/ru.po b/translations/combat.tex/ru.po index c77f3f692..8b3fd190f 100644 --- a/translations/combat.tex/ru.po +++ b/translations/combat.tex/ru.po @@ -783,6 +783,8 @@ msgid "" "For Arrow Tower rules in Solo Scenarios, see \\pagelink{AI Siege}{AI Siege}.\n" "\n" msgstr "" +"Как стрелковая башня работает в одиночных кампаниях, описано в разделе \\pagelink{AI Siege}{Осада с ИИ}.\n" +"\n" #. type: multicols* #: sections/combat.tex:288 diff --git a/translations/map_elements.tex/ru.po b/translations/map_elements.tex/ru.po index 0c0eb18f8..9a2e12d4c 100644 --- a/translations/map_elements.tex/ru.po +++ b/translations/map_elements.tex/ru.po @@ -184,6 +184,12 @@ msgid "" "\\separator\n" "\n" msgstr "" +"% On the page with expansion map tiles there's not enough space for vfill added inside normal separator.\n" +"% But if to just remove it, the first page looks squashed, and there's no good way to readd vfills because of how po4a split the strings.\n" +"% So add a logic which makes first separator to behave differently from non-first in this chapter.\n" +"% The else branch is just separator but with vfill removed.\n" +"\\iftoggle{firstseparatorinmapelements}{\\global\\togglefalse{firstseparatorinmapelements}\\separator}{{\\transparent{0.3}\\includegraphics[width=\\linewidth,height=1em,keepaspectratio]{\\layout/subsection_separator.png}}}\n" +"\n" #. type: multicols* #: sections/map_elements.tex:72 @@ -564,6 +570,12 @@ msgid "" "\\end{tikzpicture}}\n" "\n" msgstr "" +"\\makebox[\\linewidth][c]{\\begin{tikzpicture}\n" +" \\node (front) {\\includegraphics[width=0.5\\linewidth]{\\images/map-tile-cove.png}};\n" +" \\node (back) [right=0pt of front.east] {\\includegraphics[width=0.5\\linewidth]{\\images/map-tile-sea.png}};\n" +" \\node [below=0pt of {$(front.south)!0.5!(back.south)$}] {\\imagecaption{Морской фрагмент карты}};\n" +"\\end{tikzpicture}}\n" +"\n" #. type: multicols #: sections/map_elements.tex:232 @@ -581,6 +593,17 @@ msgid "" "\\end{tikzpicture}}\n" "\n" msgstr "" +"\\makebox[\\linewidth][c]{\\begin{tikzpicture}\n" +" \\node (fire) {\\includegraphics[width=0.5\\linewidth]{\\images/elemental_tile_fire.png}};\n" +" \\node [below=0pt of fire.south, text centered, text width=0.5\\linewidth] {\\imagecaption{Фрагмент карты элементалей огня}};\n" +" \\node (water) [right=0pt of fire.east] {\\includegraphics[width=0.5\\linewidth]{\\images/elemental_tile_water.png}};\n" +" \\node [below=0pt of water.south, text centered, text width=0.5\\linewidth] {\\imagecaption{Фрагмент карты элементалей воды}};\n" +" \\node (air) [below=3em of fire.south] {\\includegraphics[width=0.5\\linewidth]{\\images/elemental_tile_air.png}};\n" +" \\node [below=0pt of air.south, text centered, text width=0.5\\linewidth] {\\imagecaption{Фрагмент карты элементалей воздуха}};\n" +" \\node (earth) [right=0pt of air.east] {\\includegraphics[width=0.5\\linewidth]{\\images/elemental_tile_earth.png}};\n" +" \\node [below=0pt of earth.south, text centered, text width=0.5\\linewidth] {\\imagecaption{Фрагмент карты элементалей земли}};\n" +"\\end{tikzpicture}}\n" +"\n" #. type: multicols #: sections/map_elements.tex:237 @@ -609,6 +632,19 @@ msgid "" " \\end{tikzpicture}\n" "\\end{center}" msgstr "" +" \\newlength{\\tilesize}\n" +" \\setlength{\\tilesize}{0.5\\linewidth}\n" +" \\node (surface) {\\includegraphics[width=\\tilesize]{\\images/map-tile-stronghold.png}};\n" +" \\node [above=0pt of surface.north, xshift=2em] {\\imagecaption{Фрагмент карты поверхности}};\n" +" \\node (subter) at ($(surface) + (0.8333\\tilesize, -0.2887\\tilesize)$) % ΔX=5/6, ΔY=-1/(2*sqrt(3))\n" +" {\\includegraphics[width=\\tilesize]{\\images/map-tile-sub.png}};\n" +" \\node [below=0pt of subter.south, xshift=-2em] {\\imagecaption{Подземный фрагмент карты}};\n" +" \\node [opacity=0.85] at ($(surface)!0.5!(subter)$) {\\includegraphics[width=1.35\\tilesize]{\\images/subterranean_gate_drop_shadow.png}};\n" +" \\node [opacity=0.85] at ($(surface)!0.5!(subter)$) {\\includegraphics[width=1.2\\tilesize]{\\images/subterranean_gate_highlight.png}};\n" +" \\node at ($(surface)!0.5!(subter)$) (gate) {\\includegraphics[width=0.5\\tilesize]{\\map_locations/subterranean_gate_token.png}};\n" +" \\node at ($(gate.north)+(45pt, 5pt)$) {\\imagecaption{Подземные врата}};\n" +" \\end{tikzpicture}\n" +"\\end{center}" #. type: Plain text #: sections/map_elements.tex:263 diff --git a/translations/round_structure.tex/ru.po b/translations/round_structure.tex/ru.po index 3a05168e4..07afca6ff 100644 --- a/translations/round_structure.tex/ru.po +++ b/translations/round_structure.tex/ru.po @@ -4,12 +4,12 @@ # This file is distributed under the same license as the Homm package. # Automatically generated, 2024. # -# SPDX-FileCopyrightText: 2024 Alexey Sokolov +# SPDX-FileCopyrightText: 2024, 2026 Alexey Sokolov msgid "" msgstr "" "Project-Id-Version: Homm 3BG\n" "POT-Creation-Date: 2026-05-08 21:10+0100\n" -"PO-Revision-Date: 2024-07-01 18:20+0300\n" +"PO-Revision-Date: 2026-05-26 00:51+0100\n" "Last-Translator: Alexey Sokolov \n" "Language-Team: Russian \n" "Language: ru\n" @@ -18,7 +18,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -"X-Generator: Poedit 3.4.4\n" +"X-Generator: Lokalize 25.12.3\n" #. type: multicols* #: sections/all_map_locations.tex:5 sections/combat.tex:5 @@ -236,6 +236,8 @@ msgid "" "\\subsection*{Turn Order}\n" "\n" msgstr "" +"\\subsection*{Порядок ходов}\n" +"\n" #. type: multicols* #: sections/round_structure.tex:91 @@ -285,6 +287,11 @@ msgid "" "}\\par\n" "\n" msgstr "" +"\\textit{Алиса играет за Башню против Боба, который играет за Темницу.\n" +"Алиса --- первый игрок.\n" +"Они собираются начать 5-й раунд.\n" +"}\\par\n" +"\n" #. type: multicols* #: sections/round_structure.tex:107 @@ -295,6 +302,10 @@ msgid "" "Both players also regain the use of their Expert Effects \\svg{expert}.}\\par\n" "\n" msgstr "" +"\\textit{Первым делом, они переворачивают свои жетоны строительства, популяции и книги магии на активную сторону.\n" +"Все жетоны передвижения переворачиваются на активную зелёную~\\svg[12]{movement_token_green} сторону.\n" +"Также оба игрока обновляют счётчики использования экспертных эффектов \\svg{expert}.}\\par\n" +"\n" #. type: multicols* #: sections/round_structure.tex:110 @@ -304,6 +315,9 @@ msgid "" "Both players collect income from their Buildings, Mines, and Settlements.}\\par\n" "\n" msgstr "" +"\\textit{Раунд 5 нечётный, при этом не первый, поэтому это \\textbf{ресурсный раунд}.\n" +"Оба игрока получают доход со своих построек, шахт и посёлков.}\\par\n" +"\n" #. type: multicols* #: sections/round_structure.tex:117 @@ -317,6 +331,13 @@ msgid "" "}\\par\n" "\n" msgstr "" +"\\textit{У них обоих есть построенная Ратуша, так что они используют их эффекты <<в начале каждого ресурсного раунда>>.\n" +"\\wikilink{/towns/tower/\\#fully-built}{Ратуша Башни} позволяет Алисе получить 4~\\svg{gold} или вытянуть карту из её колоды.\n" +"Она берёт карту.\n" +"\\wikilink{/towns/dungeon/\\#fully-built}{Ратуша Темницы} даёт Бобу возможность получить 5~\\svg{gold} или 1~\\svg{valuables}.\n" +"Боб выбирает золото.\n" +"}\\par\n" +"\n" #. type: multicols* #: sections/round_structure.tex:122 @@ -327,6 +348,10 @@ msgid "" " The drawing responsibility rotates clockwise after each Event: Alice, as the starting player, drew the first Event back in Round 3.}\\par\n" "\n" msgstr "" +"\\begin{expansion}{fortress}\n" +"\\textit{Т.\\,к. это ресурсный раунд, теперь нужно вытянуть карту из колоды событий.\n" +" После каждого нового события взятие следующего события переходит к следующему игроку. Алиса в раунде 3 взяла событие первой.}\\par\n" +"\n" #. type: multicols* #: sections/round_structure.tex:126 @@ -337,6 +362,10 @@ msgid "" "\\textit{It is therefore Bob's turn to draw. He takes the top card from the Event Deck, reads it aloud, and places it face-up so both players can see: it is \\textbf{Artifact Merchant} (see the Event card on the previous page).}\\par\n" "\n" msgstr "" +"\\end{expansion}\n" +"\\begin{expansion}{fortress}\n" +"\\textit{Теперь очередь Боба. Он берёт верхнюю карту колоды событий, читает её вслух и кладёт туда, где всем будет видно. Это событие \\textbf{<<Торговец артефактами>>} (см.~на~предыдущей странице).}\\par\n" +"\n" #. type: multicols* #: sections/round_structure.tex:138 @@ -355,6 +384,18 @@ msgid "" "\\end{expansion}\n" "\n" msgstr "" +"\\vspace*{0.5em}\n" +"\\textit{Боб берёт 5 верхних карт из колоды артефактов и показывает их обоим игрокам.\n" +"Среди них есть великий артефакт: \\wikilink{artifacts/head_of_legion}{Голова легиона.}\n" +"Боб ходит первым, т.\\,к. он вытянул это событие.\n" +" Он покупает голову легиона: платит 5~\\svg{gold} (неплохое использование золота, полученного от Ратуши) и кладёт артефакт в руку.\n" +"Он передаёт оставшиеся карты Алисе.\n" +"Алиса тоже хотела голову легиона, но опоздала.\n" +"Остальные артефакты ей не интересны, поэтому она пропускает ход.\n" +"Т.\\,к. карты артефактов вернулись к вытянувшему их игроку, событие заканчивается.\n" +"Некупленные артефакты замешиваются назад в колоду артефактов.}\\par\n" +"\\end{expansion}\n" +"\n" #. type: multicols* #: sections/round_structure.tex:143 @@ -366,6 +407,11 @@ msgid "" "Because Alice controls both a Main Hero and a Secondary Hero, \\textbf{both} of them benefit -- their movement goes to 4 and 3, respectively.}\\par\n" "\n" msgstr "" +"\\vspace*{0.5em}\n" +"\\textit{Также на трекере раундов на 5-м раунде отмечено временнóе событие: в сценарии написано, что в этом раунде все герои получают +1~\\svg{movement}.\n" +"У Боба есть только основной герой, поэтому он получает 1 ОП, увеличивая \\svg{movement} с 3 до 4.\n" +"Зато у Алисы два героя: основной и вторичный; \\textbf{оба} эти героя получают по ОП, таким образом, у основного героя в этом раунде 4~\\svg{movement}, а у вторичного — 3~\\svg{movement}.}\\par\n" +"\n" #. type: multicols* #: sections/round_structure.tex:145 @@ -374,6 +420,8 @@ msgid "" "\\textit{As a starting player, Alice now starts her Turn.}\\par\n" "\n" msgstr "" +"\\textit{Наконец, Алиса начинает свой ход, т.\\,к.~она первый игрок.}\\par\n" +"\n" #. type: multicols* #: sections/round_structure.tex:151 diff --git a/translations/units.tex/ru.po b/translations/units.tex/ru.po index f9361cc5c..becfa5c96 100644 --- a/translations/units.tex/ru.po +++ b/translations/units.tex/ru.po @@ -347,9 +347,9 @@ msgstr "" " \\end{center}\n" " \\begin{itemize}\n" " \\item[\\textbf{7.}] {Скорость}\n" -" \\item[\\textbf{8.}] {Стоимость найма}\n" +" \\item[\\textbf{8.}] {Стоимость \\mbox{найма}}\n" " \\item[\\textbf{9.}] {Стоимость улучшения}\n" -" \\item[\\textbf{10.}]{Символ <<много>>/«pack»}\n" +" \\item[\\textbf{10.}]{Символ \\mbox{<<много>>}}\n" " \\item[\\textbf{11.}]{Уникальная способность}\n" " \\end{itemize}"