diff --git a/localization/ru.lua b/localization/ru.lua new file mode 100644 index 0000000..15c1cb7 --- /dev/null +++ b/localization/ru.lua @@ -0,0 +1,229 @@ +return { + descriptions = { + Mod = { + PlayLog = { + name = "PlayLog", + text = { + "Добавляет журнал действий в игру", + " ", + "Иконка от {C:attention}J8-Bit" + } + } + }, + }, + misc = { + playlog_ui = { + header = "ЖУРНАЛ", + select_theme = "ВЫБРАТЬ ТЕМУ", + time_format = "ФОРМАТ ВРЕМЕНИ", + log_opacity = "ПРОЗРАЧНОСТЬ", + log_types = "ТИПЫ ЗАПИСЕЙ", + open_log_type_selection = "Открыть выбор", + shorten_playing_cards = "СОКРАТИТЬ КАРТЫ", + toggle_on = "ВКЛ", + toggle_off = "ВЫКЛ", + custom_colours = "СВОИ ЦВЕТА (нажмите на образец, чтобы открыть палитру)", + colour_panel_bg = "Фон", + colour_border = 'Рамка / Акцент', + colour_header_text = 'Текст', + copy = "CPY", + copy_ok = "OK", + copied = "COPIED", + log_button = "LOG", + config_button = "CFG", + back_button = "BACK", + editing_colour = "РЕДАКТИРУЕТСЯ: ", + edit_hex = "нажмите для ввода hex", + log_time = "Время записи" + }, + playlog_themes = { + Gold = "Золотая", + Purple = "Пурпурная", + Green = "Зелёная", + Red = "Красная", + Blue = "Синяя", + Mono = "Моно" + }, + playlog_types = { + hand_played = "Разыграна комбинация", + added_blind_size = "Размер блайнда изменён", + added_score = "Общий счёт изменён", + blueprint = "Способность скопирована", + score = "Карта набрала очки", + defeated_blind = "Блайнд побеждён", + buy = "Карта куплена", + changed_sell_cost = "Цена продажи изменена", + copies = "Карта скопирована", + scale = "Значения карты изменены", + eaten = "Еда закончилась", + perished = "Карта погибла", + started = "Забег начат", + selected_blind = "Блайнд выбран", + booster_skipped = "Бустер пропущен", + starting_shop = "Магазин открыт", + booster_opened = "Бустер открыт", + use = "Карта использована", + perishable = "Счётчик порчи", + discarded = "Карты сброшены", + start_ante = "Анте изменён", + creates = "Карта создана", + added = "Карта добавлена в колоду/слоты", + reroll_shop = "Магазин переброшен", + money_altered = "Деньги изменены", + start_round = "Раунд начат", + selected_card = "Карта выбрана способностью", + sell = "Карта продана", + cash_out = "Обналичивание", + converts_multiple = "Несколько карт изменено", + reroll_shop_into = "Карты в магазине заменены на", + hand_played_as = "Покерная комбинация изменена", + blind_disabled = "Блайнд отключён", + area_size = "Размер зоны изменён", + target_changed = "Целевая карта изменена", + options = "Настройки начала забега", + score_to_beat = "Счёт для победы", + hand_drawn = "Карты на руку", + tag_applied = "Тег применён", + reroll_boss = "Босс переброшен", + win = "Забег выигран", + change_area_size = "Карта изменила размер зоны", + resume = "Забег продолжен", + hand_scored = "Комбинация набрала очки", + applied = "Карта изменена (Edition, Seal, Sticker)", + ending_shop = "Магазин закрыт", + debuffed_hand = "Комбинация ослаблена", + saved = "Game Over предотвращён", + destroys = "Карта уничтожена", + reset = "Значения карты сброшены", + hand_level_up = "Комбинация повышена", + added_to_shop = "Карта добавлена в магазин", + leveled_up = "Карта повысила комбинацию", + money = "Карта изменила деньги", + message = "Общая запись", + lost = "Забег проигран", + swap = "Очки обменяны", + balance = "Очки сбалансированы", + rental = "Аренда оплачена", + removed_modifier = "Модификатор удалён", + converts = "Карта изменена (Enhancement, Rank, Suit)", + skip_blind = "Блайнд пропущен", + noped = "Карта отказалась", + leveled_down = "Комбинация понижена", + }, + playlog_groups = { + generic = "Общие записи", + player_actions = "Действия игрока", + effects = "Эффекты", + gamestate = "Состояние игры", + scoring = "Подсчёт очков" + }, + playlog = { + -- Formatting + separator = "#1#, #2#", + end_separator = "#1# и #2#", + rank_of_suit = "#1# #2#", + playing_card = "Игровая карта", + + -- Areas + joker_area = "слоты джокеров", + consumable_area = "слоты расходников", + hand_area = "рука", + deck_area = "колода", + shop_jokers_area = "магазин", + shop_vouchers_area = "магазин ваучеров", + shop_boosters_area = "магазин бустеров", + + -- Others + all_hands = "все комбинации", + mult = "Множитель #1#{}", + chips = "#1#{} фишек", + + -- Logging + started = "Игра начата в #1#", + started_challenge = "Начат испытание {C:attention}#1#{} в #2#", + resumed = "Игра продолжена", + mod_options = "{C:attention}#1#{}: #2# включено", + selected_blind = "Выбран #1#", + defeated_blind = "Побеждён #1#", + blind_disabled = "#1# отключён", + skip_blind = "Пропущен #1#", + skip_blind_for = "Пропущен #1# ради #2#", + start_round = "Начат {C:attention}раунд #1#{}", + start_ante = "Начат {C:attention}Анте #1#{}", + ante_modified = "{C:attention}Анте{} изменён {C:red}#1#{} -> {C:red}#2#{}", + cash_out = "Обналичены {C:money}$#1#{}", + creates = "{C:attention}#1#{} создал #2#", + destroys = "{C:attention}#1#{} уничтожил #2#", + used = "{C:attention}#1#{} использован", + starting_shop = "Открыт {C:attention}магазин{}\nВ магазине: #1#", + ending_shop = "Закрыт {C:attention}магазин{}", + reroll_shop = "Переброшен {C:attention}магазин{} за {C:money}$#1#{} к #2#", + reroll_shop_into = "Переброшено в: #1#", + added = "{C:attention}#1#{} добавлен", + added_to = "{C:attention}#1#{} добавлен в {C:attention}#2#", + added_to_shop = "{C:attention}#1#{} добавил {C:attention}#2#{} в {C:attention}магазин{}", + converts = "{C:attention}#1#{} превратил #2# в {C:attention}#3#", + converts_multiple = "{C:attention}#1#{} превратил #2#", + converts_individual = "#1# в {C:attention}#2#", + applied = "{C:attention}#1#{} применил {C:attention}#3#{} к #2#", + removed_modifier = "{C:attention}#1#{} удалил {C:attention}#3#{} с #2#", + copies = "{C:attention}#1#{} скопировал #2#", + copies_into = "{C:attention}#1#{} превратил #3# в #2#", + money = "{C:attention}#1#{} дал {C:money}$#2#{}", + money_taken = "{C:attention}#1#{} забрал {C:money}$#2#{}", + noped = "{C:attention}#1#{} отказался!", + hand_level_up = "{C:attention}#1#{} повысил #2#", + hand_level_down = "{C:attention}#1#{} понизил #2#", + leveled_up = "{C:attention}#1#{} повысил уровень #2#", + leveled_down = "{C:attention}#1#{} понизил уровень #2#", + area_size = "Размер {C:attention}#1#{} изменён: {C:red}#2#{} -> {C:red}#3#{}", + change_area_size = "{C:attention}#1#{} увеличил размер {C:attention}#2#{} на {C:green}#3#", + change_area_size_neg = "{C:attention}#1#{} уменьшил размер {C:attention}#2#{} на {C:green}#3#", + sell = "Продано {C:attention}#1#{} за {C:money}$#2#{}", + buy = "Куплено {C:attention}#1#{} за {C:money}$#2#{}", + booster_opened = "Открыт {C:attention}#1#{} с содержимым #2#", + booster_skipped = "Пропущен {C:attention}#1#{}", + win = "Победа!", + lost = "Поражение!", + lost_endless = "Поражение в бесконечном режиме!", + tag_applied = "{C:attention}#1#{} применён", + reroll_boss = "Босс переброшен {C:attention}#1#{} -> {C:attention}#2#{}", + hand_played = "Разыграна {C:attention}#1#{}\nРука содержит: #2#", + hand_played_as = "Комбинация оценена как {C:attention}#1#{}", + hand_scored = + "Комбинация набрала: {C:attention}#1#{}\nТекущий счёт: {C:attention}#2#{} | Цель: {C:attention}#3#{}", + score_to_beat = "Целевой счёт: {C:attention}#1#{}", + discarded = "Сброшено #1#", + hand_drawn = "Взято #1#", + money_altered = "{C:money}$#1#{} -> {C:money}$#2#{}", + debuffed_hand = "{C:attention}#1#{} запрещена. Комбинация не набрала очки", + selected_card = "{C:attention}#1#{} выбрал #2#", + changed_sell_cost = "Цена продажи {C:attention}#1#{} изменена {C:red}#2#{} -> {C:red}#3#{}", + target_changed = "Цель {C:attention}#1#{} изменена на #2#", + saved = "Спасён {C:attention}#1#{}", + eaten = "{C:attention}#1#{} съеден!", + extinct = "{C:attention}#1#{} вымер!", + melted = "{C:attention}#1#{} растаял!", + drank = "{C:attention}#1#{} выпит!", + rental = "Уплачено {C:money}$#2#{} аренды за {C:attention}#1#", + perishable = "{C:attention}#1#{} исчезнет через {C:attention}#2#{}", + perished = "{C:attention}#1#{} погиб!", + scale = "Значения {C:attention}#1#{} изменены #2# -> #3#", + scale_by = "Значения {C:attention}#1#{} изменены на #2#", + reset = "Значения {C:attention}#1#{} сброшены!", + scored = "{C:attention}#1#{} набрал #2#", + scored_other = "{C:attention}#1#{} заставил {C:attention}#2#{} набрать #3#", + scored_gen = "Набрано #1#", + blueprint = "{C:attention}#1#{} скопировал способность {C:attention}#2#{}", + repetition = "{C:attention}#1#{} повторно активировал {C:attention}#2#{} {C:attention}#3#{} раз(а)", + added_score = "{C:attention}#1#{} добавил {C:attention}#2#{} к общему счёту", + decreased_score = "{C:attention}#1#{} уменьшил общий счёт на {C:attention}#2#{}", + added_xscore = "{C:attention}#1#{} умножил общий счёт на {C:attention}#2#{}", + added_blind_size = "{C:attention}#1#{} добавил {C:attention}#2#{} к требованиям Блайнда", + decreased_blind_size = "{C:attention}#1#{} уменьшил требования Блайнда на {C:attention}#2#{}", + added_xblind_size = "{C:attention}#1#{} умножил требования Блайнда на {C:attention}#2#{}", + swap = "{C:attention}Обменяны{} {C:chips}Фишки{} и {C:mult}Множитель{}", + balance = "{C:attention}Сбалансированы{} {C:chips}Фишки{} и {C:mult}Множитель{}", + } + } +} diff --git a/src/ui.lua b/src/ui.lua index c725380..77a22d8 100644 --- a/src/ui.lua +++ b/src/ui.lua @@ -1921,10 +1921,21 @@ function Game:start_run(args) pl_remove_tooltip_card() end +local function pl_use_lang_font() + local pl_font_key = G.SETTINGS.language + if not PlayLog._cached_fonts then PlayLog._cached_fonts = {} end + if not PlayLog._cached_fonts[pl_font_key] then + local font_size = G.LANG.font.render_scale * G.LANG.font.FONTSCALE + PlayLog._cached_fonts[pl_font_key] = love.graphics.newFont(G.LANG.font.file, font_size) + end + love.graphics.setFont(PlayLog._cached_fonts[pl_font_key]) +end + local game_update_ref = Game.update function Game:update(dt) local ret = game_update_ref(self, dt) if pl_is_run_active() then + pl_use_lang_font() if (G.playlog_copy_feedback_t or 0) > 0 then G.playlog_copy_feedback_t = math.max(0, (G.playlog_copy_feedback_t or 0) - dt) end @@ -1951,6 +1962,8 @@ end function PlayLog.draw() if not pl_is_run_active() then return end + local prev_font = love.graphics.getFont() + pl_use_lang_font() local layout = pl_get_layout() G.playlog_panel_rect = { x = layout.panel_x, y = layout.panel_y, w = layout.panel_w, h = layout.panel_h } if (G.playlog_slide or 0) > 0.01 then @@ -1966,6 +1979,7 @@ function PlayLog.draw() if (G.playlog_slide or 0) > 0.5 then pl_draw_hover_tooltip(active_tooltip) end + love.graphics.setFont(prev_font) end if not love.mousepressed then