Russian (Selfless Heroes) - en to ru translation catalogue (267 entries)

[ctx: .title_levellist]
en: Levels
ru: Уровни

[ctx: .head_meta_og_description]
en: Selfless Heroes is a game that will teach you how to program without you noticing. Solve puzzles and help your heroes emerge victorious from the dungeon!
ru: Selfless Heroes - это игра, которая незаметно научит вас программировать. Решайте задачи, тем самым помогая героям выйти из подземелий в лучах славы!

[ctx: .head_meta_description]
en: Selfless Heroes is a game that will teach you how to program without you noticing. Solve puzzles and help your heroes emerge victorious from the dungeon!
ru: Selfless Heroes - это игра, которая незаметно научит вас программировать. Решайте задачи, тем самым помогая героям выйти из подземелий в лучах славы!

[ctx: .head_meta_keywords]
en: puzzle game, video game, serious game, programming, development, puzzle, education, fun, logic, algorithm
ru: игра-головоломка, видеоигра, серьезная игра, программирование, разработка, головоломка, образование, веселье, логика, алгоритм

[ctx: .app_exit_warning_modal]
en: Are you sure you want to
    leave Selfless Heroes?
ru: Вы уверены, что хотите
    покинуть Selfless Heroes?

[ctx: .app_fullscreen_modal]
en: In order to have the best game experience,
    it is recommended to go fullscreen.
ru: Для полного погружения,
    рекомендуется перейти в полноэкранный режим.

[ctx: .app_fullscreen_modal_stop_propose]
en: Don't show this message again
ru: Больше не показывать это сообщение

[ctx: .app_warn_local_storage_modal_1]
en: The online version of Selfless Heroes saves your game in the browser.
    
    If you delete your history or use a cleaning utility such as CCleaner, you may delete your game.
ru: Онлайн-версия Selfless Heroes сохраняет результаты вашей игры в браузере.
    
    Если вы очистите историю или воспользуетесь утилитой очистки, такой как CCleaner, то вы можете удалить результаты вашей игры.

[ctx: .app_warn_local_storage_modal_2]
en: 
    To make sure you don't lose your game:
ru: 
    Чтобы убедиться, что вы не потеряете свою игру:

[ctx: .app_warn_local_storage_modal_3]
en: install Selfless Heroes
ru: установить Selfless Heroes

[ctx: .app_warn_local_storage_modal_4]
en: 
    or
    save your game (%%mdi mdi-content-save-move$%%)
ru: 
    или
    сохранить вашу игру (%%mdi mdi-content-save-move$%%)

[ctx: .app_warn_local_storage_modal_stop_warning]
en: Don't show this message again
ru: Больше не показывать это сообщение

[ctx: .navigation_exit_button]
en: Exit
ru: Выйти

[ctx: .navigation_menu_button]
en: Menu
ru: Меню

[ctx: .navigation_discord_button]
en: Join the community on Discord
ru: Присоединяйтесь к сообществу на Discord

[ctx: .menu_fullscreen_label]
en: Fullscreen
ru: Полный экран

[ctx: .menu_enable_fullscreen]
en: Fullscreen
ru: Полный экран

[ctx: .menu_disable_fullscreen]
en: Exit fullscreen
ru: Выйти с полного экрана

[ctx: .menu_music_label]
en: Music
ru: Музыка

[ctx: .menu_sound_label]
en: Sound
ru: Звук

[ctx: .mute_button_mute]
en: Mute
ru: Отключить звук

[ctx: .mute_button_unmute]
en: Unmute
ru: Включить звук

[ctx: .menu_language_label]
en: Language
ru: Язык

[ctx: .menu_credits_label]
en: credits
ru: признательность

[ctx: .menu_credits_link]
en: view online
ru: смотреть онлайн

[ctx: .screen_size_warning_1]
en: The screen of your device is too small to play Selfless Heroes
ru: Экран вашего устройства слишком мал, чтобы играть в Selfless Heroes

[ctx: .screen_size_warning_2]
en: Selfless Heroes is designed to work on desktop, laptop and tablet. To play this game, you must have a screen size of at least {minMaxDimension} x {minMinDimension} pixels: your screen is only {maxDimension} x {minDimension} pixels.
ru: Selfless Heroes разработан для работы на десктопе, ноутбуке и планшете. Чтобы играть в эту игру, у вас должен быть размер экрана не менее {minMaxDimension} x {minMinDimension} пикселей: ваш экран имеет размер только {maxDimension} x {minDimension} пикселей.

[ctx: .home_new_game]
en: new game:
ru: новая игра:

[ctx: .home_new_career_name_placeholder]
en: pseudo
ru: псевдоним

[ctx: .home_new_career_or_separator]
en: or
ru: или

[ctx: .home_load_career_button]
en: %%mdi mdi-content-save-move$%% Load a game
ru: %%mdi mdi-content-save-move$%% Загрузить игру

[ctx: .home_save_career_button]
en: Save as…
ru: Сохранить как…

[ctx: .home_remove_career_button]
en: Remove
ru: Удалить

[ctx: .home_drop_career_file]
en: Load a saved game
    %%mdi mdi-content-save-move$%% .shsv file
ru: Загрузить сохранённую игру
    %%mdi mdi-content-save-move$%% .shsv файл

[ctx: .home_wrong_file_format_error]
en: This file is not a valid .shsv file
ru: Этот файл не является исправным .shsv файлом

[ctx: .level_list_back_button]
en: Back
ru: Назад

[ctx: .level_list_bonus_label]
en: BONUS
ru: БОНУС

[ctx: .level_list_boss_label]
en: BOSS
ru: БОСС

[ctx: .level_list_premium_levels_button]
en: Unlock more levels
ru: Разблокировать больше уровней

[ctx: .premium_modal_title]
en: Premium content
ru: Премиум контент

[ctx: .premium_modal_content_description]
en: %%content-number$3%% new level categories for a total of
    %%content-number$34%% additional levels
ru: %%content-number$3%% новых категорий уровней для в общем
    %%content-number$34%% дополнительных уровней

[ctx: .premium_modal_action_variables]
en: Heroes can calculate
    and write on eggs
ru: Герои могут подсчитывать
    и писать на яйцах

[ctx: .premium_modal_action_speach]
en: Heroes can speak
    to each other
ru: Герои могут говорить
    друг с другом

[ctx: .premium_modal_action_clone]
en: Heroes can clone themselves
ru: Герои могут клонировать себя

[ctx: .premium_modal_back_button]
en: back
ru: назад

[ctx: .premium_modal_unlock_button]
en: unlock
    premium content
ru: разблокировать
    премиум контент

[ctx: .unlock_premium_modal_title]
en: Unlock premium content
ru: Разблокировать премиум контент

[ctx: .unlock_premium_modal_get_key_button]
en: get activation key
ru: получить ключ активации

[ctx: .unlock_premium_modal_activation_key_label]
en: activation key:
ru: ключ активации:

[ctx: .unlock_premium_modal_wrong_activation_key]
en: This is not a valid activation key.
ru: Это не действительный ключ активации.

[ctx: .premium_activated_modal]
en: Congratulations!
    
    You've successfully unlocked Selfless Heroes premium content.
ru: Поздравляем!
    
    Вы успешно разблокировали премиум контент Selfless Heroes.

[ctx: .level_details_edit_button]
en: play
ru: играть

[ctx: .level_details_edit_button_tooltip]
en: Play
ru: Играть

[ctx: .level_details_back_button]
en: back
ru: назад

[ctx: .level_details_back_button_tooltip]
en: Back
ru: Назад

[ctx: .level_details_add_solution_button]
en: New solution
ru: Новое решение

[ctx: .level_details_duplicate_solution_button]
en: Duplicate
ru: Дублировать

[ctx: .level_details_duplicate_solution_suffix]
en:  copy
ru:  копировать

[ctx: .level_details_delete_solution_button]
en: Delete
ru: Удалить

[ctx: .level_details_rename_solution_button]
en: Rename
ru: Переименовать

[ctx: .level_details_name_input_placeholder]
en: name
ru: имя

[ctx: .level_details_delete_solution_warning]
en: Are you really sure you want to delete this solution?
ru: Вы уверены, что вы хотите удалить это решение?

[ctx: .modal_confirm_button]
en: ok
ru: хорошо

[ctx: .modal_cancel_button]
en: cancel
ru: отменить

[ctx: .modal_close_button]
en: Close
ru: Закрыть

[ctx: .modal_confirm_yes]
en: yes
ru: да

[ctx: .modal_cancel_no]
en: no
ru: нет

[ctx: .tutorial_button_next]
en: Next
ru: Дальше

[ctx: .tutorial_basic_step_tutorial_warning]
en: It is advisable to follow this tutorial carefully in order to be able to play as soon as possible.
    
    Click on the arrow to launch the tutorial.
ru: Рекомендуется внимательно следовать этому руководству, чтобы иметь возможность играть как можно скорее.
    
    Нажмите на стрелку, чтобы начать руководство.

[ctx: .tutorial_basic_step_graphcode]
en: The heroes follow these instructions step by step
ru: Герои следуют этим инструкциям шаг за шагом

[ctx: .tutorial_basic_step_palette]
en: Drag new instructions from here to change heroes behavior
ru: Перетащите новые инструкции отсюда, чтобы изменить поведение героев

[ctx: .tutorial_basic_step_objective]
en: To see the level objective click here
ru: Чтобы увидеть цель уровня нажмите здесь

[ctx: .tutorial_basic_step_runbar]
en: When your program is ready, click here to run it
ru: Когда ваша программа готова, нажмите здесь, чтобы запустить ее

[ctx: .tutorial_basic_step_help]
en: If you need more help or want to see this tutorial again, click here
ru: Если вам нужна дополнительная помощь или вы хотите увидеть это руководство снова, нажмите здесь

[ctx: .tutorial_advanced_step_undo]
en: Undo last edit
ru: Отменить последнее редактирование

[ctx: .tutorial_advanced_step_redo]
en: Redo
ru: Делать вновь

[ctx: .tutorial_advanced_step_delete]
en: Delete all instructions
ru: Удалить все инструкции

[ctx: .tutorial_advanced_step_editor_switch]
en: Switch to code editor.
    Code editor can be used to copy a code from one level to another.
    It is also intended to be used by advanced players who want to write their program using code instead of the graphic interface.
ru: Переключиться к редактору кода.
    Редактор кода может быть использован для копирования кода с одного уровня на другой.
    Он также предназначен для опытных игроков, которые хотят написать свою программу, используя код вместо графического интерфейса.

[ctx: .tutorial_advanced_step_game]
en: Select a hero by clicking on it to better follow its behaviour.
    While the program is running, a blue cursor will appear to the left of the instructions to show at which step of the program the selected hero is.
ru: Выберите героя, нажав на него, чтобы лучше следить за его поведением.
    Во время работы программы слева от инструкций появится синий курсор, показывающий, на каком этапе программы находится выбранный герой.

[ctx: .tutorial_advanced_step_play_pause]
en: Run or pause the program
ru: Запустить или приостановить программу

[ctx: .tutorial_advanced_step_step]
en: Run the program step by step
ru: Запустить программу шаг за шагом

[ctx: .tutorial_advanced_step_stop]
en: Stop the program
ru: Остановить программу

[ctx: .tutorial_advanced_step_speed]
en: Speed setting
ru: Настройки скорости

[ctx: .tutorial_advanced_step_menu]
en: Open the menu
ru: Открыть меню

[ctx: .level_back_button]
en: Back to level list
ru: Назад к списку уровней

[ctx: .level_help_button]
en: Help
ru: Помощь

[ctx: .level_objective_button]
en: Objective
ru: Цель

[ctx: .level_help_modal_title]
en: Help
ru: Помощь

[ctx: .level_help_modal_tab_general_title]
en: general
ru: общее

[ctx: .level_help_basic_tutorial_button]
en: Basic tutorial
ru: Базовое руководство

[ctx: .level_help_advanced_tutorial_button]
en: Advanced tutorial
ru: Расширенное руководство

[ctx: .level_help_tab_general_objectives_star1]
en: star 1:
ru: звезда 1:

[ctx: .level_help_tab_general_objectives_star1_objective]
en: achieve the level objective
ru: добейтесь цели уровня

[ctx: .level_help_tab_general_objectives_star2]
en: star 2:
ru: звезда 2:

[ctx: .level_help_tab_general_objectives_star2_objective]
en: run time secondary objective
ru: вторичная цель - время выполнения

[ctx: .level_help_tab_general_objectives_star2_advice]
en: To achieve this objective, your program should take as few steps as possible to achieve the final result. In other words, it should go as fast as possible.
ru: Для достижения этой цели ваша программа должна сделать как можно меньше шагов для достижения конечного результата. Другими словами, это должно идти как можно быстрее.

[ctx: .level_help_tab_general_objectives_star3]
en: star 3:
ru: звезда 3:

[ctx: .level_help_tab_general_objectives_star3_objective]
en: code length secondary objective
ru: вторичная цель - длина кода

[ctx: .level_help_tab_statement_code_example]
en: code example:
ru: пример кода:

[ctx: .level_help_tab_statement_graph_code_example]
en: example:
ru: пример:

[ctx: .level_help_tab_if_statement_1]
en: %%statement branching-statement$if%% allows to run instructions only if a given condition is true.
ru: %%statement branching-statement$если%% позволяет выполнять инструкции, только если данное условие выполняется.

[ctx: .level_help_tab_if_statement_2]
en: You could read the above example as "If the square to the right of me is a wall, then go to the left. Otherwise go to the right".
ru: Вы могли бы прочитать приведенный выше пример как «Если квадрат справа от меня - стена, то идти налево. В противном случае идти направо».

[ctx: .level_help_tab_if_statement_3]
en: %%statement branching-statement$if%% checks if the condition is true in which case it will run the instructions inside it (instructions to the right of the vertical gray line). Otherwise it will run the instructions inside the %%statement branching-statement$else%% if there is one.
ru: %%statement branching-statement$если%% проверяет, выполняется ли условие, и в этом случае он будет выполнять инструкции внутри него (инструкции справа от вертикальной серой линии). В противном случае он будет выполнять инструкции внутри оператора %%statement branching-statement$иначе%%, если он есть.

[ctx: .level_help_tab_if_statement_6]
en: Click on the plus sign to add other conditions.
ru: Нажмите на знак плюс, чтобы добавить другие условия.

[ctx: .level_help_tab_if_statement_7]
en: You could read the above example as "If the square to the right of me is a wall or if the square to the right of me is a hole, then go to the left".
ru: Вы могли бы прочитать приведенный выше пример как «Если квадрат справа от меня - стена или если квадрат справа от меня - дыра, то идти налево».

[ctx: .level_help_tab_jump_statement_1]
en: %%statement branching-statement$jump%% allows to jump backward or forward in the program.
ru: %%statement branching-statement$переход%% позволяет прыгать назад или вперед в программе.

[ctx: .level_help_tab_jump_statement_2]
en: You could read the above example as "Step to the right infinitely many times".
ru: Вы можете прочитать приведенный выше пример как «Шаг вправо бесконечно много раз».

[ctx: .level_help_tab_jump_statement_4]
en: The first line creates an "anchor" named "a". The third line says to jump back to this anchor.
    You can choose any name you want for your anchors. Each jump must match a unique anchor.
ru: Первая строка создает «якорь» с именем «а». Третья строка говорит, чтобы вернуться к этому якорю.
    Вы можете выбрать любое имя для своих якорей. Каждый прыжок должен соответствовать уникальному якорю.

[ctx: .level_help_tab_jump_statement_5]
en: %%statement branching-statement$jump%% is usually used with %%statement branching-statement$if%% to create loops which stop at a condition.
ru: %%statement branching-statement$переход%% обычно используется с %%statement branching-statement$если%%, для создания циклов, которые останавливаются при условии.

[ctx: .level_help_tab_jump_statement_6]
en: You could read the above example as "Step to the right as long as the square to the right is not a wall".
ru: Вы можете прочитать приведенный выше пример как «Шагать вправо до тех пор, пока квадрат справа не является стеной».

[ctx: .level_help_tab_clone_statement_1]
en: %%statement branching-statement$clone%% creates a clone of the hero next to him.
ru: %%statement branching-statement$клон%% создает клона героя рядом с ним.

[ctx: .level_help_tab_clone_statement_2]
en: You could read the above example as "Create a clone on your left. Then step to the right".
    
    For the created hero, %%statement branching-statement$clone%% acts like %%statement branching-statement$jump%%. In this example, the created clone won't step to the right because he will begin to follow instructions after the arrow of %%statement branching-statement$clone%%.
ru: Вы можете прочитать приведенный выше пример как «Создать клона слева от вас. Затем шаг вправо».
    
    Для созданного героя, %%statement branching-statement$клон%% действует как %%statement branching-statement$переход%%. В этом примере созданный клон не будет двигаться вправо, потому что он начнет следовать инструкциям после стрелки %%statement branching-statement$клон%%.

[ctx: .level_help_tab_clone_statement_4]
en: The created clone starts his life with the same variables values as his creator's.
    
    %%icon mdi mdi-alert-octagon-outline$%%Warning: if you try to create a clone on a square already occupied (by a %%icon icon-hero$%% hero, a %%icon icon-cauldron$%% cauldron etc.) or on a forbidden square (like a %%icon icon-wall$%% wall), the cloning process will fail. In certain levels, this failure causes the death of the hero trying to clone himself.
ru: Созданный клон начинает свою жизнь с теми же значениями переменных, что и его создатель.
    
    %%icon mdi mdi-alert-octagon-outline$%%Предупреждение: если вы пытаетесь создать клона на уже занятом квадрате (с помощью %%icon icon-hero$%% героя, %%icon icon-cauldron$%% котелок и т. д.) или на запрещенном квадрате (например %%icon icon-wall$%% стена), процесс клонирования завершится неудачно. На определенных уровнях эта неудача приводит к смерти героя, пытающегося клонировать себя.

[ctx: .level_help_tab_step_function_1]
en: %%statement action-statement$step%% says to your hero to go in a direction. If you specify multiple directions, the hero will decide randomly between these directions.
ru: %%statement action-statement$шагнуть%% говорит вашему герою идти по направлению. Если вы укажете несколько направлений, герой будет случайным образом выбирать между этими направлениями.

[ctx: .level_help_tab_step_function_2]
en: You could read the above example as "Go one step to the left or to the right".
ru: Вы можете прочитать приведенный выше пример как «Идти на один шаг влево или вправо».

[ctx: .level_help_tab_step_once_function_1]
en: %%statement action-statement$step%% says to your hero to go in a direction.
ru: %%statement action-statement$шагнуть%% говорит вашему герою идти по направлению.

[ctx: .level_help_tab_step_once_function_2]
en: You could read the above example as "Go one step to the right".
ru: Вы можете прочитать приведенный выше пример как «Идти на один шаг вправо».

[ctx: .level_help_tab_fireball_function_1]
en: %%statement action-statement$fireball%% throws a fireball on a square around the hero.
    If the fireball hits another hero it will kill him. You can use a fireball to light a %%icon icon-bonfire$%% bonfire.
ru: %%statement action-statement$огненный шар%% бросает огненный шар на квадрат вокруг героя.
    Если огненный шар поразит другого героя, он убьет его. Вы можете использовать огненный шар, чтобы зажечь %%icon icon-bonfire$%% костер.

[ctx: .level_help_tab_fireball_function_2]
en: You could read the above example as "Throw a fireball to the right".
ru: Вы можете прочитать приведенный выше пример как «Бросить огненный шар вправо».

[ctx: .level_help_tab_take_function_1]
en: %%statement action-statement$take%% says to your hero to take an item.
ru: %%statement action-statement$поднять%% говорит вашему герою взять предмет.

[ctx: .level_help_tab_take_function_2]
en: You could read the above example as "If there is an egg on the square on your right, take this egg".
ru: Вы можете прочитать приведенный выше пример как «Если на квадрате справа от вас яйцо, возьмите это яйцо».

[ctx: .level_help_tab_drop_function_1]
en: %%statement action-statement$drop%% says to your hero to drop his item.
ru: %%statement action-statement$бросить%% говорит вашему герою, чтобы он бросил свой предмет.

[ctx: .level_help_tab_drop_function_2]
en: You could read the above example as "Drop your item on the square on your right".
ru: Вы можете прочитать приведенный выше пример как «Бросить свой предмет на квадрат справа».

[ctx: .level_help_tab_write_function_1]
en: %%statement action-statement$write%% says to your hero to write something on his item.
ru: %%statement action-statement$написать%% говорит вашему герою написать что-нибудь на его предмете.

[ctx: .level_help_tab_write_function_2]
en: You could read the above example as "Write 3 on your item".
ru: Вы можете прочитать приведенный выше пример как «Написать 3 на своём предмете».

[ctx: .level_help_tab_set_function_1]
en: %%statement assign-statement$set%% initializes a variable.
ru: %%statement assign-statement$набор%% инициализирует переменную.

[ctx: .level_help_tab_set_function_2]
en: You could read the above example as "Set the variable a to 3".
ru: Вы можете прочитать приведенный выше пример как «Установить для переменной a значение 3».

[ctx: .level_help_tab_calc_function_1]
en: %%statement assign-statement$calc%% makes a calculation and puts the result in a variable.
ru: %%statement assign-statement$вычислить%% делает расчет и помещает результат в переменную.

[ctx: .level_help_tab_calc_function_2]
en: You could read the above example as "Set the variable b to a + 2".
ru: Вы можете прочитать приведенный выше пример как «Установить для переменной b значение a + 2».

[ctx: .level_help_tab_nearest_function_1]
en: %%statement assign-statement$nearest%% searches for the nearest object of a given type (%%icon icon-cauldron$%% cauldron, %%icon icon-egg$%%egg etc.) and puts the result in a variable.
ru: %%statement assign-statement$ближайший%% ищет ближайший объект данного типа (%%icon icon-cauldron$%% котел, %%icon icon-egg$%%яйцо и т.п.) и помещает результат в переменную.

[ctx: .level_help_tab_nearest_function_2]
en: You could read the above example as "Memorize the nearest egg in the variable a and then go get that egg".
ru: Вы можете прочитать приведенный выше пример как «Запомнить ближайшее яйцо в переменной a и затем взять это яйцо».

[ctx: .level_help_tab_tell_function_1]
en: %%statement speach-statement$tell%% allows you to say a message to other heroes.
ru: %%statement speach-statement$сообщить%% позволяет вам сказать сообщение другим героям.

[ctx: .level_help_tab_tell_function_4]
en: You can also %%statement speach-statement$tell%% a message to every %%icon icon-hero$%% hero of the level.
ru: Вы можете также %%statement speach-statement$сообщить%% сообщение каждому %%icon icon-hero$%% герою этого уровня.

[ctx: .level_help_tab_tell_function_5]
en: You could read the above example as "Tell "hey" to everyone".
ru: Вы можете прочитать приведенный выше пример как «Сказать всем "привет"».

[ctx: .level_help_tab_listen_function_1]
en: %%statement speach-statement$listen%% tells the hero to wait until he hears a specific message.
ru: %%statement speach-statement$слушать%% говорит герою подождать, пока он услышит конкретное сообщение.

[ctx: .level_help_tab_listen_function_2]
en: You could read the above example as "Wait for a hero to tell you "hey" then go right".
ru: Вы можете прочитать приведенный выше пример как «Подождать, пока герой скажет тебе «эй», тогда идти направо».

[ctx: .level_modal_speed_target_unit]
en: steps
ru: шаги

[ctx: .level_modal_length_target_unit]
en: lines
ru: линии

[ctx: .level_modal_secondary_objectives_difficulty_warning]
en: secondary objectives can be very difficult and it is often impossible to achieve both with the same solution
ru: второстепенные цели могут быть очень трудными, и зачастую невозможно достичь обоих с помощью одного и того же решения

[ctx: .level_objective_modal_objective_title]
en: objective
ru: цель

[ctx: .level_objective_modal_secondary_objectives_title]
en: secondary objectives
ru: второстепенные цели

[ctx: .win_modal_testing_explanation]
en: your solution is tested to make sure it works every time
ru: Ваше решение проверяется, чтобы убедиться, что оно работает каждый раз

[ctx: .win_modal_prior_code_speed]
en: your fastest was %%score-number${minStep}%% steps
ru: ваш самый быстрый был %%score-number${minStep}%% шагов

[ctx: .win_modal_prior_code_length]
en: your smallest was %%score-number${minLength}%% lines
ru: ваш самый маленький был %%score-number${minLength}%% строк

[ctx: .win_modal_back_button]
en: back
ru: назад

[ctx: .win_modal_continue_edit_button]
en: improve
ru: улучшить

[ctx: .run_bar_play_button]
en: Run [ctrl+space]
ru: Запустить [ctrl+space]

[ctx: .run_bar_pause_button]
en: Pause [ctrl+space]
ru: Остановить [ctrl+space]

[ctx: .run_bar_step_button]
en: Step by step [ctrl+enter]
ru: Шаг за шагом [ctrl+enter]

[ctx: .run_bar_stop_button]
en: Stop [ctrl+backspace]
ru: Остановить [ctrl+backspace]

[ctx: .run_bar_speed_range]
en: Speed [alt+←] [alt+→]
ru: Скорость [alt+←] [alt+→]

[ctx: .editor_bar_undo_button]
en: Undo [ctrl+z]
ru: Отменить [ctrl+z]

[ctx: .editor_bar_redo_button]
en: Redo [ctrl+y]
ru: Переделать [ctrl+y]

[ctx: .editor_bar_delete_button]
en: Delete
ru: Удалить

[ctx: .editor_bar_switch_to_graph]
en: Switch to graphic editor [ctrl+e]
ru: Переключится к графическому редактору [ctrl+e]

[ctx: .editor_bar_switch_to_code]
en: Switch to code editor [ctrl+e]
ru: Переключиться к редактору кода [ctrl+e]

[ctx: .code_state_ok_tooltip]
en: Your code is ready to be run
ru: Ваш код готов к запуску

[ctx: .code_state_not_runnable_tooltip]
en: Your instructions are not complete:
    click me for more details
ru: Ваши инструкции не полны:
    нажмите для более подробной информации

[ctx: .code_state_not_compilable_tooltip]
en: There is an error in your code:
    click me for more details
ru: В вашем коде есть ошибка:
    нажмите для более подробной информации

[ctx: .code_state_ok_modal]
en: Your code is ready to be run
ru: Ваш код готов к запуску

[ctx: .code_state_not_runnable_modal]
en: Your code contains %%undefined$undefined%% keywords.
    Replace them by correct values before running your code.
ru: Ваш код содержит ключевые слова %%undefined$undefined%%.
    Замените их правильными значениями перед запуском вашего кода.

[ctx: .switch_editor_warning]
en: There is an error in your code.
    If you switch to graphic editor now,
    parts of it risk to be erased.
ru: В вашем коде есть ошибка.
    Если вы переключитесь на графический редактор сейчас,
    его части могут быть стерты.

[ctx: .code_error_position_template]
en: line {line}
ru: строка {line}

[ctx: .errors_modal_title]
en: Errors
ru: Ошибки

[ctx: .exception_mismatch_statement_template]
en: you wrote something erroneous after this {statementType}.
ru: Вы написали что-то ошибочное после этого {statementType}.

[ctx: .exception_mismatch_keyword_template]
en: you wrote something erroneous after this %%keyword${statementType}%%.
ru: Вы написали что-то ошибочное после этого %%keyword${statementType}%%.

[ctx: .exception_forbidden_primary_statement_template]
en: %%keyword${statementType}%% is not available in this level.
ru: %%keyword${statementType}%% не доступно на даном уровне.

[ctx: .exception_forbidden_message_literal_type_template]
en: messages are not available in this level.
ru: сообщения недоступны на этом уровне.

[ctx: .exception_forbidden_arithmetic_operator_literal_type_template]
en: Arithmetic operators are not available in this level.
ru: Арифметические операторы недоступны на этом уровне.

[ctx: .exception_mismatch_function_template]
en: you wrote something erroneous after the function %%function${keyword}()%%.
ru: Вы написали что-то ошибочное после функции %%function${keyword}()%%.

[ctx: .exception_invalid_clone_params_template]
en: %%keyword${statementType}%% expects a direction (%%literal${allowedDirections}%%) and an anchor.
ru: %%keyword${statementType}%% ожидает направление (%%literal${allowedDirections}%%) и якорь.

[ctx: .exception_invalid_variable_identifier_template]
en: %%variable${variable}%% variable name is not allowed. Use one of the following instead: %%variable${allowedIdentifiers}%%.
ru: %%variable${variable}%% имя переменной не доступно. Вместо этого используйте один из следующих: %%variable${allowedIdentifiers}%%.

[ctx: .exception_forbidden_integer_template]
en: %%number${value}%% number is either too small or too large: numbers must be between %%number${min}%% and %%number${max}%%.
ru: %%number${value}%% число либо слишком мало, либо слишком велико: числа должны быть между %%number${min}%% и %%number${max}%%.

[ctx: .exception_invalid_value_function_template]
en: %%function${code}%% is not a valid function. Use one of the following instead: %%function${allowedFunctions}%%.
ru: %%function${code}%% не является допустимой функцией. Вместо этого используйте одно из следующих действий: %%function${allowedFunctions}%%.

[ctx: .exception_invalid_action_function_template]
en: %%function${code}%% is not a valid action. Use one of the following instead: %%function${allowedFunctions}%%.
ru: %%function${code}%% не является допустимым действием. Вместо этого используйте одно из следующих действий: %%function${allowedFunctions}%%.

[ctx: .exception_forbidden_action_function_template]
en: %%function${keyword}()%% is not available in this level. Use one of the following instead: %%function${allowedFunctions}%%
ru: %%function${keyword}()%% недоступно на этом уровне. Вместо этого используйте одно из следующих: %%function${allowedFunctions}%%

[ctx: .exception_forbidden_value_function_template]
en: %%function${keyword}()%% is not available in this level. Use one of the following instead: %%function${allowedFunctions}%%
ru: %%function${keyword}()%% недоступно на этом уровне. Вместо этого используйте одно из следующих: %%function${allowedFunctions}%%

[ctx: .exception_forbidden_direction_literal_type_template]
en: Directions are not available in this level.
ru: На этом уровне направления недоступны.

[ctx: .exception_forbidden_everyone_literal_type_template]
en: %%literal$everyone%% is not available in this level.
ru: %%literal$everyone%% недоступно на этом уровне.

[ctx: .exception_forbidden_integer_literal_type_template]
en: Numbers are not available in this level.
ru: Числа недоступны на этом уровне.

[ctx: .exception_forbidden_myitem_literal_type_template]
en: %%literal$myitem%% is not available in this level.
ru: %%literal$myitem%% недоступно на этом уровне.

[ctx: .exception_forbidden_object_type_literal_type_template]
en: Object types are not available in this level.
ru: Типы объектов недоступны на этом уровне.

[ctx: .exception_forbidden_terrain_type_literal_type_template]
en: Terrain types are not available in this level.
ru: Типы местности недоступны на этом уровне.

[ctx: .exception_invalid_params_one_dir_integer_variable_myitem_template]
en: %%function${keyword}()%% requires exactly one parameter which can be a number, a variable, a direction or %%literal$myitem%%
ru: %%function${keyword}()%% требует ровно один параметр, который может быть числом, переменной, направлением или %%literal$myitem%%

[ctx: .exception_invalid_dir_integer_variable_myitem_param_template]
en: %%variable${param}%% is not a valid number, variable, direction or %%literal$myitem%%
ru: %%variable${param}%% не является допустимым числом, переменной, направлением или %%literal$myitem%%

[ctx: .exception_invalid_dir_variable_param_template]
en: %%variable${param}%% is not a valid variable or direction. You can use these instead: %%variable${allowedVariables}%% %%literal${allowedDirections}%%
ru: %%variable${param}%% не является допустимой переменной или направлением. Вместо этого вы можете использовать: %%variable${allowedVariables}%% %%literal${allowedDirections}%%

[ctx: .exception_invalid_params_one_integer_or_variable_template]
en: %%function${keyword}()%% requires exactly one parameter which can be a number or a variable (%%variable${allowedVariables}%%)
ru: %%function${keyword}()%% требует ровно один параметр, который может быть числом или переменной (%%variable${allowedVariables}%%)

[ctx: .exception_invalid_params_one_integer_template]
en: %%function${keyword}()%% requires exactly one number parameter
ru: %%function${keyword}()%% требует ровно один числовой параметр

[ctx: .exception_invalid_integer_param_template]
en: %%variable${param}%% is not a valid number
ru: %%variable${param}%% не годное число

[ctx: .exception_invalid_integer_or_variable_param_template]
en: %%variable${param}%% is not a valid number or variable
ru: %%variable${param}%% не является допустимым числом или переменной

[ctx: .exception_invalid_params_one_dir_template]
en: %%function${keyword}()%% requires exactly one direction parameter: %%literal${directions}%%
ru: %%function${keyword}()%% требует ровно один параметр направления: %%literal${directions}%%

[ctx: .exception_invalid_params_one_dir_variable_template]
en: %%function${keyword}()%% requires one direction (%%literal${allowedDirections}%%) or a variable (%%variable${allowedVariables}%%)
ru: %%function${keyword}()%% требует одного направления (%%literal${allowedDirections}%%) или переменной (%%variable${allowedVariables}%%)

[ctx: .exception_invalid_params_one_more_dir_variable_template]
en: %%function${keyword}()%% requires one or more direction parameters (%%literal${allowedDirections}%%) or a variable (%%variable${allowedVariables}%%)
ru: %%function${keyword}()%% требует один или несколько параметров направления (%%literal${allowedDirections}%%) или переменную (%%variable${allowedVariables}%%)

[ctx: .exception_invalid_params_one_object_type_param_template]
en: %%function${keyword}()%% requires exactly one object type parameter: %%literal${allowedValues}%%
ru: %%function${keyword}()%% требует ровно один параметр типа объекта: %%literal${allowedValues}%%

[ctx: .exception_invalid_direction_param_template]
en: %%variable${param}%% is not a valid direction. Use one of these instead: %%literal${allowedValues}%%
ru: %%variable${param}%% не допустимое направление. Вместо этого используйте одно из следующих: %%literal${allowedValues}%%

[ctx: .exception_invalid_object_type_param_template]
en: %%variable${param}%% is not a valid object type. Use one of these instead: %%literal${allowedValues}%%
ru: %%variable${param}%% не является допустимым типом объекта. Вместо этого используйте один из следующих: %%literal${allowedValues}%%

[ctx: .exception_invalid_direction_param_not_here_template]
en: %%function${keyword}()%% does not accept direction %%literal${param}%%. Use one of these instead: %%literal${allowedValues}%%
ru: %%function${keyword}()%% не принимает направление %%literal${param}%%. Вместо этого используйте один из следующих: %%literal${allowedValues}%%

[ctx: .exception_primary_statement_invalid_direction_param_not_here_template]
en: %%keyword${keyword}%% does not accept direction %%literal${param}%%. Use one of these instead: %%literal${allowedValues}%%
ru: %%keyword${keyword}%% не принимает направление %%literal${param}%%. Вместо этого используйте одно из следующих: %%literal${allowedValues}%%

[ctx: .exception_invalid_object_type_param_not_nothing_template]
en: %%function${keyword}()%% does not accept object type %%literal${param}%%. Use one of these instead: %%literal${allowedValues}%%
ru: %%function${keyword}()%% не принимает тип объектаliteral${param}%%. Вместо этого используйте один из следующих: %%literal${allowedValues}%%

[ctx: .exception_invalid_params_calc_function_template]
en: %%function${keyword}()%% takes 3 parameters. Params 1 and 3 must be either numbers, directions, %%literal$myitem%% or variables and param 2 must be an operator (%%operator${operators}%%)
ru: %%function${keyword}()%% принимает 3 параметра. Параметры 1 и 3 должны быть либо числами, либо направлениями., %%literal$myitem%% или переменные и параметр 2 должны быть оператором (%%operator${operators}%%)

[ctx: .exception_invalid_params_tell_function_template]
en: %%function${keyword}()%% takes 2 parameters. Param 1 must be a message (%%string${allowedMessages}%%) and param 2 must be either a direction (%%literal${allowedDirections}%%) or %%literal$everyone%%
ru: %%function${keyword}()%% принимает 2 параметра. Параметр 1 должен быть сообщением (%%string${allowedMessages}%%) и параметр 2 должен быть направлением (%%literal${allowedDirections}%%) или %%literal$everyone%%

[ctx: .exception_duplicate_param_template]
en: you cannot pass %%literal${param}%% parameter twice to %%function${keyword}()%%
ru: Вы не можете передать параметр %%literal${param}%% дважды в %%function${keyword}()%%

[ctx: .exception_multiple_param_several_types_template]
en: when you give several parameters to the %%function${keyword}()%% function, they must be of the same type
ru: когда вы задаете несколько параметров для функции %%function${keyword}()%%, они должны быть одного типа

[ctx: .exception_forbidden_object_type_template]
en: %%literal${keyword}%% object type is not available in this level. You can use one of the following: %%literal${allowedValues}%%
ru: тип объекта %%literal${keyword}%% недоступен на этом уровне. Вы можете использовать один из следующих: %%literal${allowedValues}%%

[ctx: .exception_forbidden_terrain_type_template]
en: %%literal${keyword}%% terrain type is not available in this level. You can use one of the following: %%literal${allowedValues}%%
ru: Тип местности %%literal${keyword}%% недоступен на этом уровне. Вы можете использовать один из следующих: %%literal${allowedValues}%%

[ctx: .exception_boolean_no_comparison_operator_template]
en: a condition must contain a valid comparator like these: %%operator${allowedOperators}%%
ru: условие должно содержать допустимый компаратор, подобный этим: %%operator${allowedOperators}%%

[ctx: .exception_invalid_expression_template]
en: %%variable${code}%% is not a valid keyword
ru: %%variable${code}%% не является допустимым ключевым словом

[ctx: .exception_invalid_statement_template]
en: %%variable${code}%% is not a valid instruction
ru: %%variable${code}%% не является допустимой инструкцией

[ctx: .exception_forbidden_variable_identifier_template]
en: %%variable${variable}%% variable is unavailable in this level. Use one of the following: %%variable${allowedNames}%%
ru: переменная %%variable${variable}%% недоступна на этом уровне. Используйте одно из следующих: %%variable${allowedNames}%%

[ctx: .exception_all_forbidden_variable_identifier_template]
en: variables are not available in this level
ru: переменные недоступны на этом уровне

[ctx: .exception_open_statement_template]
en: %%keyword${keyword}%% condition must be closed with a %%code$:%%
ru: условие %%keyword${keyword}%% должно быть закрыто %%code$:%%

[ctx: .exception_else_no_if_template]
en: %%keyword${elseKeyword}%% without %%keyword${ifKeyword}%% before
ru: %%keyword${elseKeyword}%% без %%keyword${ifKeyword}%% впереди

[ctx: .exception_endif_no_if_template]
en: %%keyword${endifKeyword}%% without %%keyword${ifKeyword}%% before
ru: %%keyword${endifKeyword}%% без %%keyword${ifKeyword}%% впереди

[ctx: .exception_if_no_endif_template]
en: %%keyword${ifKeyword}%% without %%keyword${endifKeyword}%%
ru: %%keyword${ifKeyword}%% без %%keyword${endifKeyword}%%

[ctx: .exception_duplicate_anchor_template]
en: %%bracket${anchorName}:%% found twice. Anchors must have unique names
ru: %%bracket${anchorName}:%% нашел дважды. Якоря должны иметь уникальные имена

[ctx: .exception_jump_to_unknown_anchor_template]
en: %%keyword${jumpKeyword}%% to unknown anchor %%bracket${anchorName}:%%
ru: %%keyword${jumpKeyword}%% к неизвестному якорю %%bracket${anchorName}:%%

[ctx: .type_anchor]
en: anchor
ru: метка

[ctx: .type_assign]
en: assignment
ru: присваивание

[ctx: .type_direction]
en: direction
ru: направление

[ctx: .graph_node_if]
en: if
ru: если

[ctx: .graph_node_else]
en: else
ru: иначе

[ctx: .graph_node_jump]
en: jump
ru: прыжок

[ctx: .graph_node_clone]
en: clone
ru: клон

[ctx: .graph_node_function_step]
en: step
ru: шагнуть

[ctx: .graph_node_function_fireball]
en: fireball
ru: огненный шар

[ctx: .graph_node_function_take]
en: take
ru: поднять

[ctx: .graph_node_function_drop]
en: drop
ru: бросить

[ctx: .graph_node_function_write]
en: write
ru: написать

[ctx: .graph_node_function_tell]
en: tell
ru: сообщить

[ctx: .graph_node_function_listen]
en: listen
ru: слушать

[ctx: .graph_node_function_set]
en: set
ru: ровно

[ctx: .graph_node_function_calc]
en: calc
ru: вычислить

[ctx: .graph_node_function_nearest]
en: nearest
ru: ближайший

[ctx: .operator_boolean_and]
en: and
ru: и

[ctx: .operator_boolean_or]
en: or
ru: или

[ctx: .operator_boolean_delete]
en: delete
ru: удалить

[ctx: .drop_down_list_direction]
en: direction
ru: направление

[ctx: .drop_down_list_number]
en: number
ru: число

[ctx: .drop_down_list_my_item_literal]
en: my item
ru: мой предмет

[ctx: .drop_down_list_everyone_literal]
en: everyone
ru: все

[ctx: .drop_down_list_message_literal_hey]
en: "hey"
ru: "привет"

[ctx: .drop_down_list_message_literal_lol]
en: "lol"
ru: "лол"

[ctx: .drop_down_list_message_literal_ho]
en: "ho"
ru: "хо"

[ctx: .drop_down_list_message_literal_kiss]
en: "kiss"
ru: "поцелуй"

[ctx: .drop_down_list_message_literal_stop]
en: "stop"
ru: "стоп"

[ctx: .drop_down_list_message_literal_wait]
en: "wait"
ru: "подожди"

[ctx: .drop_down_list_message_literal_ok]
en: "ok"
ru: "ок"

[ctx: .drop_down_list_message_literal_coffee]
en: "coffee"
ru: "кофе"

[ctx: .drop_down_list_object_type_nothing]
en: nothing
ru: ничего

[ctx: .drop_down_list_object_type_hero]
en: hero
ru: герой

[ctx: .drop_down_list_object_type_npc]
en: beast
ru: зверь

[ctx: .drop_down_list_object_type_switch]
en: switch
ru: переключатель

[ctx: .drop_down_list_object_type_bonfire]
en: bonfire
ru: костер

[ctx: .drop_down_list_object_type_cauldron]
en: cauldron
ru: котел

[ctx: .drop_down_list_object_type_spikes]
en: spikes
ru: шипы

[ctx: .drop_down_list_object_type_egg]
en: egg
ru: яйцо

[ctx: .drop_down_list_terrain_type_wall]
en: wall
ru: стена

[ctx: .drop_down_list_terrain_type_floor]
en: floor
ru: пол

[ctx: .drop_down_list_terrain_type_hole]
en: hole
ru: дыра

[ctx: .drop_down_list_terrain_type_infected]
en: infected
ru: зараженный

[ctx: .drop_down_list_terrain_type_void]
en: nothing
ru: ничего

[ctx: .level_test_failed_modal]
en: Some of the tests failed.
    We reproduced the same situation as in these failed attempts.
ru: Некоторые тесты не прошли.
    Мы воспроизвели ту же ситуацию, что и в этих неудачных попытках.

[ctx: .loss_reason_too_many_steps]
en: Your program takes too much time
ru: Ваша программа занимает слишком много времени

[ctx: .loss_reason_all_hero_ended]
en: Your heroes fell asleep before completing the objective
ru: Ваши герои заснули еще до выполнения задания

[ctx: .loss_reason_all_hero_dead]
en: All your heroes are dead
ru: Все твои герои мертвы

[ctx: .loss_reason_one_hero_dead]
en: One of your heroes is dead
ru: Один из твоих героев мертв

[ctx: .home_local_level_loading_error]
en: This file is not a valid .shlv file:
ru: Этот файл не является допустимым .shlv файлом:
