From 95db123d69bc2796c26377c813a85c0c2027ea4c Mon Sep 17 00:00:00 2001 From: lewri Date: Tue, 26 Mar 2024 18:56:38 +0000 Subject: [PATCH 01/85] Don't clear wait on interrupt --- CorsixTH/Lua/humanoid_actions/seek_room.lua | 1 - 1 file changed, 1 deletion(-) diff --git a/CorsixTH/Lua/humanoid_actions/seek_room.lua b/CorsixTH/Lua/humanoid_actions/seek_room.lua index 4a4e2072cd..74e39c49f8 100644 --- a/CorsixTH/Lua/humanoid_actions/seek_room.lua +++ b/CorsixTH/Lua/humanoid_actions/seek_room.lua @@ -170,7 +170,6 @@ local function action_seek_room_no_diagnosis_room_found(action, humanoid) end local action_seek_room_interrupt = permanent"action_seek_room_interrupt"( function(action, humanoid) - humanoid:setMood("patient_wait", "deactivate") -- Just in case we are somehow started again: -- FIXME: This seems to be used for intermediate actions like peeing while the patient is waiting -- Unfortunately this means that if you finish the required room while the patient is peeing From dab45b071282c67f5b14e51e60e4331598b82d79 Mon Sep 17 00:00:00 2001 From: lewri Date: Sat, 7 Sep 2024 17:40:42 +0100 Subject: [PATCH 02/85] Prep for next prerelease --- CorsixTH/Lua/app.lua | 6 ++++-- CorsixTH/com.corsixth.corsixth.metainfo.xml | 21 ++++++++++++++++++++- CorsixTH/corsix-th.6 | 2 +- LICENSE.txt | 1 + WindowsInstaller/Win32Script.nsi | 2 +- changelog.txt | 8 +++++++- 6 files changed, 34 insertions(+), 6 deletions(-) diff --git a/CorsixTH/Lua/app.lua b/CorsixTH/Lua/app.lua index 005514e662..cea7440e6d 100644 --- a/CorsixTH/Lua/app.lua +++ b/CorsixTH/Lua/app.lua @@ -29,7 +29,7 @@ local runDebugger = corsixth.require("run_debugger") -- and add compatibility code in afterLoad functions -- Recommended: Also replace/Update the summary comment -local SAVEGAME_VERSION = 191 -- CorsixTH 0.68.0~beta1 +local SAVEGAME_VERSION = 192 -- CorsixTH 0.68.0~rc1 class "App" @@ -1641,8 +1641,10 @@ function App:getVersion(version) -- Versioning format is major.minor.revision (required) Patch (optional) -- Old versions (<= 0.67) retain existing format -- All patch versions should be retained in this table (due to be replaced, see PR2518) - if ver > 191 then + if ver > 192 then return "Trunk" + elseif ver > 191 then + return "v0.68.0 RC 1" elseif ver > 180 then return "v0.68.0 Beta 1" elseif ver > 170 then diff --git a/CorsixTH/com.corsixth.corsixth.metainfo.xml b/CorsixTH/com.corsixth.corsixth.metainfo.xml index 24843a42f2..d434e8f5fc 100644 --- a/CorsixTH/com.corsixth.corsixth.metainfo.xml +++ b/CorsixTH/com.corsixth.corsixth.metainfo.xml @@ -20,7 +20,26 @@ com.corsixth.corsixth.desktop - + + +

New Features:

+
    +
  • Long windows now behave properly in the game if they get intersected + by an adjacent wall
  • +
+

Translations:

+
    +
  • Ukranian translation added.
  • +
  • Brazilian-Portuguese translation has been updated
  • +
+

Bug Fixes:

+
    +
  • Tooltips for language menu now align with list items. Please note we are + aware of an issue where some languages don't show a tooltip.
  • +
+
+
+

New Features:

    diff --git a/CorsixTH/corsix-th.6 b/CorsixTH/corsix-th.6 index 0f58a0eac3..9c9adacc54 100644 --- a/CorsixTH/corsix-th.6 +++ b/CorsixTH/corsix-th.6 @@ -95,4 +95,4 @@ Copyright CorsixTH contributors. CorsixTH is available under the MIT license. .Pp For the full license text see: -.Lk https://raw.githubusercontent.com/CorsixTH/CorsixTH/v0.68.0-beta1/LICENSE.txt +.Lk https://raw.githubusercontent.com/CorsixTH/CorsixTH/v0.68.0-rc1/LICENSE.txt diff --git a/LICENSE.txt b/LICENSE.txt index 8f3d80d99a..2bf1edaf34 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -104,6 +104,7 @@ Copyright (C) 2024 Ikko E. "eltociear" Ashimine Copryight (C) 2024 Anthony Dillon Copyright (C) 2024 SebastianoPistore Copryight (C) 2024 jetenergy +Copyright (C) 2024 Yurii "JurecStrongman" et al. diff --git a/WindowsInstaller/Win32Script.nsi b/WindowsInstaller/Win32Script.nsi index c95320826a..2a031fcc49 100644 --- a/WindowsInstaller/Win32Script.nsi +++ b/WindowsInstaller/Win32Script.nsi @@ -24,7 +24,7 @@ ;---------------------------------- Definitions for the game ----------------------------------- !define PRODUCT_NAME "CorsixTH" -!define PRODUCT_VERSION "0.68.0-beta1" +!define PRODUCT_VERSION "0.68.0-rc1" !define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" !define PRODUCT_UNINST_ROOT_KEY "HKLM" !define PRODUCT_STARTMENU_REGVAL "NSIS:StartMenuDir" diff --git a/changelog.txt b/changelog.txt index 3dc1c6336f..985c3fa830 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,5 +1,5 @@ ------------------------------------------------------------------------------- -CorsixTH 0.68.0 - released xxxx 2024 +CorsixTH 0.68.0 - released September 2024 ------------------------------------------------------------------------------- # New Features/Enhancements * In-game movies now play for users using TH Data directly from a .ISO file @@ -7,6 +7,8 @@ CorsixTH 0.68.0 - released xxxx 2024 movie when progressing through the campaign * The Map Editor has received some love including new features, fixes, and jukebox controls +* Long windows now behave properly in the game if they get intersected by an + adjacent wall * You can now control the Jukebox from the Main Menu by going to Options > Jukebox * External (non-TH) XMI files are now supported by the Jukebox @@ -41,11 +43,13 @@ CorsixTH 0.68.0 - released xxxx 2024 * Support is added to auto-detect a Theme Hospital install via GOG Galaxy # Translations +* Ukranian translation added. Thanks @JurecStrongman * Dutch translation has been updated. Thanks @jetenergy * Italian translation has been updated. Thanks @SebastianoPistore & @Inkub0 * Russian translation has been updated. Thanks @Matroftt * Spanish translation has been updated. Thanks @ShiroAka * French translation has been updated. Thanks @nMustaki & @Sanndow +* Brazilian-Portuguese translation has been updated. Thanks @altiereslima * Some unused language strings have been cleaned up * Custom campaign and level creators can now optionally add translated strings for campaign description, level briefing, and winning text @@ -74,6 +78,8 @@ CorsixTH 0.68.0 - released xxxx 2024 properly * Custom campaigns menu now will use a scrollbar for long campaign descriptions * Continue Game now properly targets files explicitly ending in the .sav format +* Tooltips for language menu now align with list items. Please note we are aware + of an issue where some languages don't show a tooltip. * Fixed an instance where information boxes could load pink from older savegames * Implemented a more permanent fix for the money bar being drawn incorrectly in From aaa1f5e61ea7a83c502920f4d1f4b92cd312b926 Mon Sep 17 00:00:00 2001 From: lewri Date: Mon, 16 Sep 2024 21:16:01 +0100 Subject: [PATCH 03/85] Safeguard cheat transfer hosp_cheats may not exist in an old save. Make sure if we don't crash by safeguarding the check for transferring active cheats first. --- CorsixTH/Lua/hospitals/player_hospital.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CorsixTH/Lua/hospitals/player_hospital.lua b/CorsixTH/Lua/hospitals/player_hospital.lua index d0711e7b88..1479cfb089 100644 --- a/CorsixTH/Lua/hospitals/player_hospital.lua +++ b/CorsixTH/Lua/hospitals/player_hospital.lua @@ -839,7 +839,7 @@ function PlayerHospital:afterLoad(old, new) end -- Refresh the cheat system every load - local old_active_cheats = self.hosp_cheats.active_cheats + local old_active_cheats = self.hosp_cheats and self.hosp_cheats.active_cheats or {} self.hosp_cheats = Cheats(self) self.hosp_cheats.active_cheats = old_active_cheats From bc29b51407e9b4e1f684a86fadef15446e270826 Mon Sep 17 00:00:00 2001 From: Alberth289346 Date: Tue, 17 Sep 2024 12:27:50 +0200 Subject: [PATCH 04/85] Fix copy/paste bugs in dutch research screen inc/dec tooltips. (#2620) --- CorsixTH/Lua/languages/dutch.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CorsixTH/Lua/languages/dutch.lua b/CorsixTH/Lua/languages/dutch.lua index 5308afd2af..c7513e0644 100644 --- a/CorsixTH/Lua/languages/dutch.lua +++ b/CorsixTH/Lua/languages/dutch.lua @@ -921,13 +921,13 @@ tooltip = { cure_inc = "Budget voor onderzoek verhogen", close = "Onderzoeksscherm sluiten", specialisation_dec = "Budget voor specialisatie verlagen", - diagnosis_dec = "Budget voor diagnostische apparatuur verhogen", + diagnosis_dec = "Budget voor diagnostische apparatuur verlagen", allocated_amount = "Totaal budget", improvements_inc = "Budget voor verbeteringen verhogen", drugs_dec = "Budget voor medicijnen verlagen", drugs_inc = "Budget voor medicijnen verhogen", cure_dec = "Budget voor behandelmethodes verlagen", - specialisation_inc = "Budget voor specialisatie verlagen", + specialisation_inc = "Budget voor specialisatie verhogen", improvements_dec = "Budget voor verbeteringen verlagen", diagnosis_inc = "Budget voor diagnostische apparatuur verhogen", }, From 1fdf6870fabd6ec9237e425289a6b7ce1f3eb222 Mon Sep 17 00:00:00 2001 From: JurecStrongman Date: Tue, 17 Sep 2024 21:33:54 +0300 Subject: [PATCH 05/85] Updated ukrainian language fixed some syntax mistakes --- CorsixTH/Lua/languages/ukrainian.lua | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/CorsixTH/Lua/languages/ukrainian.lua b/CorsixTH/Lua/languages/ukrainian.lua index 2b477e5836..7ab5a60b06 100644 --- a/CorsixTH/Lua/languages/ukrainian.lua +++ b/CorsixTH/Lua/languages/ukrainian.lua @@ -757,7 +757,7 @@ hotkeys_file_err = { } staff_list = { - morale = "Моральність", + morale = "Задовільність", tiredness = "Бадьорість", skill = "Навички", total_wages = "УСЬОГО ЗАРПЛАТНІ", @@ -912,12 +912,12 @@ tooltip = { happiness = "Наскільки ваші працівники задоволені своєю роботою", tiredness = "Відображає скільки ще зможе працівники працювати без відпочинку", ability = "Середні здібності працівників по всій лікарні", - happiness_2 = "Моральність працівника", + happiness_2 = "Задовільність працівника", ability_2 = "Здібності працівника", tiredness_2 = "Запас сил працівника", - researcher_train = "%d%% готовий отримати диплом Дослідника", - surgeon_train = "%d%% готовий отримати диплом Хірурга", - psychiatrist_train = "%d%% готовий отримати диплом Психіатра", + researcher_train = "На %d%% готовий отримати диплом Дослідника", + surgeon_train = "На %d%% готовий отримати диплом Хірурга", + psychiatrist_train = "На %d%% готовий отримати диплом Психіатра", researcher = "Дипломований дослідник", psychiatrist = "Дипломований психіатр", surgeon = "Дипломований хірург", @@ -1892,7 +1892,7 @@ fax = { num_disease_singular = "Є 1 особа з %s і вона потребує невідкладної допомоги.", }, emergency_result = { - earned_money = "Ви заробили %d$ від максимальної суми у %d$.", + earned_money = "Ви могли отримати %d$, а вдалось заробити %d$.", close_text = "Натисніть, щоб закрити.", saved_people = "Ви врятували %d людей із %d усього.", }, @@ -2183,7 +2183,7 @@ adviser = { first_cure = "Чудово! Ви щойно вилікували свого першого пацієнта!", promotion_to_consultant = "Один із ваших лікарів став Спеціалістом.", handyman_adjust = "Різноробочі можуть прибирати ефективніше, якщи ви надасте їм відповідні пріоритети.", - promotion_to_specialist = "Один з ваших лікарів був підвищений до %s.", + promotion_to_specialist = "Один з ваших лікарів отримав навичку %s.", initial_general_advice = { rats_have_arrived = "У вашій лікарні більше щурів, ніж пацієнтів. Спробуйте постріляти в щурів своїм курсором миші.", first_patients_thirsty = "Люди відчувають спрагу у вашій лікарні. Торговий автомат може сильно допомогти.", @@ -2196,14 +2196,14 @@ adviser = { epidemic_spreading = "У вашій лікарні панує епідемія. Спробуйте вилікувати інфікованих людей, перш ніж вони підуть від вас.", machine_needs_repair = "У вас є апарат, який потребує ремонту. Знайдіть його - він буде диміти - і натисніть на нього. Потім натисніть кнопку ремонтника.", increase_heating = "У людей з носа звисають бурульки! Можливо, вам варто підвищити температуру нагріву на Екрані містечка.", - first_VIP = "Ви збираєтеся прийняти свій перший ВІП-візит. Спробуйте зробити так щоб, щоб ВІП не помітив нічого антисанітарного або ваших незадоволених пацієнтів.", + first_VIP = "Ви збираєтеся прийняти свій перший ВІП-візит. Спробуйте зробити так щоб ВІП не помітив нічого антисанітарного або ваших незадоволених пацієнтів.", psychiatric_symbol = "Лікарі, які мають додаткову навичку психіатра, мають символ: |", research_symbol = "Лікарі, здатні проводити дослідження, мають символ: }", surgeon_symbol = "Лікарі, які можуть виконувати операції, мають символ: {", autopsy_available = "Було винайдено машину для автоматичного розтину. За допомогою неї ви можете позбутися проблемних і небажаних пацієнтів і провести дослідження їхніх решток. Майте на увазі, що використання цієї машини є дуже неприйнятним у цивілізованому світі.", }, patient_leaving_too_expensive = "Пацієнт йде, не заплативши за %s. Для нього це занадто дорого.", - vip_arrived = "Увага! ВІП - %s, щойно прибув для огляду вашої лікарні! Переконайтеся, що все йде гладко, щоб порадувати його.", + vip_arrived = "Увага! ВІП - %s, щойно прибув для огляду вашої лікарні! Переконайтеся, що все йде гладко, аби порадувати його.", epidemic_health_inspector = "Новини про вашу епідемію дійшли до Міністерства охорони здоров'я. Приготуйтеся до візиту сан. інспектора.", first_death = "Ви щойно вбили свого першого пацієнта. І що, які відчуття?", pay_rise = "Один із ваших працівників погрожує звільнитися. Виберіть погодитися з їхніми вимогами або вигнати їх. Натисніть на піктограму ліворуч, щоб побачити, який свме працівник погрожує піти.", @@ -2284,7 +2284,7 @@ introduction_texts = { "Заробіть 20,000$, щоб перейти на наступний рівень. ", level4 = "Слідкуйте за тим щоб всі люди були щасливими, поводьтеся з ними якомога краще і зведіть до мінімуму кількість смертей. " .. - "Репутація лікарні під загрозою, тому постарайтесьпідняти і утримувати її якомога вище. " .. + "Репутація лікарні під загрозою, тому постарайтесь підняти і утримувати її якомога вище. " .. "Не надто хвилюйтеся про гроші - вони прийдуть разом зі зростанням вашої репутації. " .. "У вас також буде можливість навчати лікарів і підвищувати їх додаткову навичку. " .. "Добре навчений персонал зможе краще оглядати пацієнтів, які здаються більш серйозним викликом, ніж інші. " .. @@ -2301,7 +2301,7 @@ introduction_texts = { "Використайте всі свої знання, щоб створити стабільну, добре працюючу лікарню, яка матиме файний прибуток і здатна впоратися з усім, що може їй підкинути хворе суспільство. " .. "Варто прийняти той факт, що тут особливо сприятлива атмосфера для розмноження мікробів та інфекцій. " .. "Якщо ви не будете підтримувати свою лікарню в чистоті, ви абсолютно точно зіткнетесь з епідемією серед відвідувачів. " .. - "Заробіть 150000$ і підніміть вартість вашої лікарні за 140,000$.", + "Заробіть 150000$ і підніміть вартість вашої лікарні вище 140,000$.", level7 = "Тут ви будете під пильним наглядом Міністерства охорони здоров’я, тому переконайтеся, що ваш баланс відобразить величезні прибутки і що ваша репутація буде висоті. " .. "Смерті, в даному, випадку - неприпустимі! Вони погано впливають на бізнес. " .. From 39a57b310abb72fefbf43e40b6e2559ee53ba5ae Mon Sep 17 00:00:00 2001 From: Alberth Date: Sun, 22 Sep 2024 10:14:13 +0200 Subject: [PATCH 06/85] Rename script/check_trailing_whitespaces.py -> scripts/check_whitespace.py --- scripts/{check_trailing_whitespaces.py => check_whitespace.py} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename scripts/{check_trailing_whitespaces.py => check_whitespace.py} (100%) diff --git a/scripts/check_trailing_whitespaces.py b/scripts/check_whitespace.py similarity index 100% rename from scripts/check_trailing_whitespaces.py rename to scripts/check_whitespace.py From 730e83f5d793ffaf123b6d40e7eddf4e2f1a9c6c Mon Sep 17 00:00:00 2001 From: Alberth Date: Sun, 22 Sep 2024 11:31:39 +0200 Subject: [PATCH 07/85] Generalize the RE pattern to find both TAB and trailing white space. --- scripts/check_whitespace.py | 39 ++++++++++++++++++++++++------------- 1 file changed, 25 insertions(+), 14 deletions(-) diff --git a/scripts/check_whitespace.py b/scripts/check_whitespace.py index 9364f099eb..4ad24e6472 100755 --- a/scripts/check_whitespace.py +++ b/scripts/check_whitespace.py @@ -1,34 +1,45 @@ #!/usr/bin/env python3 """ - Usage: check_trailing_whitespaces.py [root] - This script will check the presence of trailing whitespaces in any file - below |root|. It will return 0 if none is found. Otherwise, it will print the - path of the violating file and return an error code. - If root is not specified, it will use the current directory. + Usage: check_whitespace.py [root-dir] + + This script will check for incorrect whitespace (usage of TAB and trailing + whitespace) in Lua, Python, and C/C++ files below |root-dir|. + It will return 0 (ie success) if only correct whitespace is found. + Otherwise, it will print the path of the violating file(s) and return an + error code. + + If root-dir is not specified, it will use the current directory. """ import os import re import sys -TRAILING_SEQUENCE = re.compile(r'[ \t][\r\n]') +# Bad whitespace is +# - a TAB (anywhere), +# - a SPACE before CR, +# - a SPACE before NL, or +# - a SPACE as last character. +BAD_WHITESPACE = re.compile(r'\t| \r| \n| $') -def has_trailing_whitespace(path): - """ Returns whether |path| has trailing whitespace. """ +def has_bad_whitespace(path): + """ + Returns whether the file at |path| has bad whitespace. + """ if os.path.isfile(path): with open(path, 'r') as handle: for line in handle: - m = TRAILING_SEQUENCE.search(line) + m = BAD_WHITESPACE.search(line) if m: return True return False - +# Main program. if len(sys.argv) > 2: - sys.exit('Usage: {} [root]'.format(sys.argv[0])) + sys.exit(f'Usage: {sys.argv[0]} [root-dir]') top = os.getcwd() if len(sys.argv) == 2: @@ -38,15 +49,15 @@ def has_trailing_whitespace(path): offending_files = [] for root, dirs, files in os.walk(top): for f in files: - if f.endswith(('.py', '.lua', '.h', '.cpp', '.cc', '.c')): + if f.lower().endswith(('.py', '.lua', '.h', '.cpp', '.cc', '.c')): count += 1 path = os.path.join(root, f) - if has_trailing_whitespace(path): + if has_bad_whitespace(path): offending_files.append(path) print('Checked {} files'.format(count)) if offending_files: - print('Found files with trailing whitespace:') + print('Found files with bad whitespace:') for path in offending_files: print(path) sys.exit(1) From 1abd7cf3e0d1e541d5c47c77fb2b3be8923b39d0 Mon Sep 17 00:00:00 2001 From: Alberth Date: Sun, 22 Sep 2024 11:33:50 +0200 Subject: [PATCH 08/85] Fix Russian and Ukrainian language files --- CorsixTH/Lua/languages/russian.lua | 38 ++-- CorsixTH/Lua/languages/ukrainian.lua | 278 +++++++++++++-------------- 2 files changed, 158 insertions(+), 158 deletions(-) diff --git a/CorsixTH/Lua/languages/russian.lua b/CorsixTH/Lua/languages/russian.lua index c1b05607ff..9d2445c8c0 100644 --- a/CorsixTH/Lua/languages/russian.lua +++ b/CorsixTH/Lua/languages/russian.lua @@ -316,8 +316,8 @@ tooltip = { audio_toggle = "Включить/Выключить", folder_button = "Свойства папки", customise_button = "Больше настроек для улучшения игрового опыта", - right_mouse_scrolling = "Переключение кнопки, которая используется для прокрутки карты", - jukebox = "Открыть музыкальный автомат, для настройки музыки" + right_mouse_scrolling = "Переключение кнопки, которая используется для прокрутки карты", + jukebox = "Открыть музыкальный автомат, для настройки музыки" }, save_game_window = { new_save_game = "Введите имя для сохраненной игры", @@ -502,7 +502,7 @@ dynamic_info = { queue_size = "Длина очереди: %d", strength = "Прочность: %d", queue_expected = "Ожидается очередь: %d", - strength_extra_info = "Прочность: %d (Можно обновить до %d)", + strength_extra_info = "Прочность: %d (Можно обновить до %d)", }, staff = { actions = { @@ -622,9 +622,9 @@ tooltip = { }, update_window = { download = "Перейти на страницу загрузки самой последней версии CorsixTH", - new_version = "Новая версия:", - current_version = "Нынешняя версия:", - download = "Перейти на страницу загрузки", + new_version = "Новая версия:", + current_version = "Нынешняя версия:", + download = "Перейти на страницу загрузки", ignore = "Проигнорировать и выйти в главное меню", }, save_map_window = { @@ -799,7 +799,7 @@ map_editor_window = { set_parcel = "Выбрать участок по номеру", parcel = "Участок %d", set_parcel_tooltip = "Выберите число и нажмите Enter", - helipad = "Верт. Площадка", + helipad = "Верт. Площадка", pond = "Пруд", foliage = "Растительность", road = "Дорога", @@ -809,14 +809,14 @@ map_editor_window = { hedgerow = "Изгородь", outside = "Тропы", - camera_1 = "Камера 1", - camera_2 = "Камера 2", + camera_1 = "Камера 1", + camera_2 = "Камера 2", camera_3 = "Камера 3", camera_4 = "Камера 4", heliport_1 = "Верт. Площадка 1", - heliport_2 = "Верт. Площадка 2", - heliport_3 = "Верт. Площадка 3", - heliport_4 = "Верт. Площадка 4", + heliport_2 = "Верт. Площадка 2", + heliport_3 = "Верт. Площадка 3", + heliport_4 = "Верт. Площадка 4", }, checks = { spawn_points_and_path = "Внимание: Пациенты не смогут войти в больницу. Им нужен путь от края карты до дверь больницы, выстроенный из вкладок 'Дорога' или 'Тропы' в редакторе карт.", @@ -2653,9 +2653,9 @@ cheats_window = { decrease_prices = "Снизить цены на 50%", epidemic = "Создать заразного пациента", increase_prices = "Повысить цены на 50%", - toggle_earthquake = "Вкл/Выкл землетрясения", - toggle_epidemic = "Вкл/Выкл эпидемии", - reset_death_count = "Обнулить счетчик смертей", + toggle_earthquake = "Вкл/Выкл землетрясения", + toggle_epidemic = "Вкл/Выкл эпидемии", + reset_death_count = "Обнулить счетчик смертей", max_reputation = "Максимальная репутация", }, close = "Закрыть", @@ -2681,11 +2681,11 @@ tooltip.cheats_window = { decrease_prices = "Уменьшить все цены на 50% (мин. 50%)", epidemic = "Создает заразного пациента, который может вызвать эпидемию", increase_prices = "Увеличить все цены на 50% (макс. 200%)", - toggle_earthquake = "Переключает землетрясения", - toggle_epidemic = "Переключает появление эпидемии в больнице", + toggle_earthquake = "Переключает землетрясения", + toggle_epidemic = "Переключает появление эпидемии в больнице", earthquake = "Вызвать землетрясение.", vip = "Пригласить ВИП.", - reset_death_count = "Установить счетчик смертей на ноль", + reset_death_count = "Установить счетчик смертей на ноль", max_reputation = "Увеличить репутацию больницы на максимум ", }, } @@ -3204,7 +3204,7 @@ totd_window = { [17] = "Если в помещении больницы становится слишком жарко, пациентов начинает мучать жажда! Во избежание этого установите достаточное количество автоматов с водой в коридорах.", [18] = "Вы можете прервать диагностику пациента, будучи уверенным в постановке диагноза. Но будьте осторожны: ваша ошибка может повлечь за собой смерть пациента.", [19] = "Чрезвычайные ситуации могут принести вам неплохой доход, конечно, при условии, что у вас есть возможность и время для лечения таких пациентов.", - [20] = "Разнорабочим можно установить работу только в одном участке. Просто нажмите плашку 'Все участки' в их профиле, чтобы переключаться между ними.", + [20] = "Разнорабочим можно установить работу только в одном участке. Просто нажмите плашку 'Все участки' в их профиле, чтобы переключаться между ними.", }, next = "Следующая подсказка", } diff --git a/CorsixTH/Lua/languages/ukrainian.lua b/CorsixTH/Lua/languages/ukrainian.lua index 2b477e5836..8da6bd19f7 100644 --- a/CorsixTH/Lua/languages/ukrainian.lua +++ b/CorsixTH/Lua/languages/ukrainian.lua @@ -261,80 +261,80 @@ hotkey_window = { tooltip = { main_menu = { new_game = "Почніть перший рівень кампанії", - custom_campaign = "Зіграйте кампанію створену спільнотою", - custom_level = "Збудуйте вашу лікарню на користувацькій мапі", - continue = "Продовжіть свою останню збережену гру", - load_game = "Завантажте збережену гру", - options = "Налаштуйте різні аспекти гри", - map_edit = "Створіть користувацьку мапу", - exit = "Ой ні, ні! Будь ласка не йдіть!", - quit = "Ви майже вийшли з CorsixTH. Ви цілком впевнені, що хочете так вчинити?", + custom_campaign = "Зіграйте кампанію створену спільнотою", + custom_level = "Збудуйте вашу лікарню на користувацькій мапі", + continue = "Продовжіть свою останню збережену гру", + load_game = "Завантажте збережену гру", + options = "Налаштуйте різні аспекти гри", + map_edit = "Створіть користувацьку мапу", + exit = "Ой ні, ні! Будь ласка не йдіть!", + quit = "Ви майже вийшли з CorsixTH. Ви цілком впевнені, що хочете так вчинити?", }, new_game_window = { player_name = "Введіть ім'я яким би хотіли назватись у грі", - difficulty = "Вибертіть складність гри з якою ви б хотіли грати", - easy = "Якщо Ви новачок у економічних симуляторах, ця опція саме для Вас", - medium = "Це найоптимальніший вибір, якщо Ви не можете визначитись", - hard = "Якщо Ви сильні у цьому типі гри і хочете справжнього виклику, обирайте цей варіант", - tutorial = "Натисніть тут, щоб увімкнути невеличку допомогу на початку гри", - start = "Почати гру з вибраними налаштуваннями", - cancel = "ОЙ, Я і не думав починати нову гру!", + difficulty = "Вибертіть складність гри з якою ви б хотіли грати", + easy = "Якщо Ви новачок у економічних симуляторах, ця опція саме для Вас", + medium = "Це найоптимальніший вибір, якщо Ви не можете визначитись", + hard = "Якщо Ви сильні у цьому типі гри і хочете справжнього виклику, обирайте цей варіант", + tutorial = "Натисніть тут, щоб увімкнути невеличку допомогу на початку гри", + start = "Почати гру з вибраними налаштуваннями", + cancel = "ОЙ, Я і не думав починати нову гру!", }, totd_window = { previous = "Показати попередню підказку", next = "Показати наступну підказку", }, options_window = { - fullscreen = "Запускати гру на весь екран чи у вікні?", - fullscreen_button = "Натисніть щоб змінити режим вікна", - resolution = "Роздільна здатність з якою повинна запускатись гра", - select_resolution = "Вибрати нову роздільну здатність", - capture_mouse = "Натисніть, чи захоплювати курсор мищі у вікні гри", - right_mouse_scrolling = "Перемкнути клавішу миші яка використовується для гортанння", - width = "Введіть бажану ширинку вікна", - height = "Введіть бажану висоту вікна", - apply = "Застосувати введену роздільну здатність", - cancel = "Не застосовувати зміну роздільної здатності", - audio_button = "Ввімкнути або вимкнути все ігрове аудіо", - audio_toggle = "Ввімкнути або вимкнути", - customise_button = "Більше налаштувань, щоб персоналізувати свій ігровий досвід", - folder_button = "Налаштування папки", - language = "Мова, яка використовуватиметься у грі", - select_language = "Виберіть мову гри", - language_dropdown_item = "%s буде мовою гри", - language_dropdown_no_font = "Виберіть шрифт у налаштованій папці, щоб задіяти цю мову", - back = "Закрити вікно налаштувань", - scrollspeed = "Виберіть швидкість гортання від 1 (найповільніша) до 10 (найшвидша). За замовчуванням - 2.", - shift_scrollspeed = "Виберіть швидкість гортання коли клавіша Shift затиснута. 1 (найповільніша) до 10 (найшвидша). За замовчуванням - 4.", - zoom_speed = "Виберіть швидкість приближення камери від 10 (найповільніша) до 1000 (найшвидша). За замовчуванням - 80.", - apply_scrollspeed = "Задіяти введену швидкість гортання.", - cancel_scrollspeed = "Повернутись без зміни швидкості гортання.", - apply_shift_scrollspeed = "Задіяти введену пришвидшену швидкість гортанння.", - cancel_shift_scrollspeed = "Повернутись без зміни пришвидшеної швидкості гортанння.", - apply_zoomspeed = "Задіяти швидкість приближення.", - cancel_zoomspeed = "Повернутись без зміни швидкості приближення.", - hotkey = "Змінити гарячі клавіші.", - check_for_updates = "Чи повинна гра перевіряти оновлення після запуску?", - jukebox = "Відкрити програвач, щоб налаштувати музику", - change_resolution = "Змінити роздільну здатність на розміри, що вказані зліва", + fullscreen = "Запускати гру на весь екран чи у вікні?", + fullscreen_button = "Натисніть щоб змінити режим вікна", + resolution = "Роздільна здатність з якою повинна запускатись гра", + select_resolution = "Вибрати нову роздільну здатність", + capture_mouse = "Натисніть, чи захоплювати курсор мищі у вікні гри", + right_mouse_scrolling = "Перемкнути клавішу миші яка використовується для гортанння", + width = "Введіть бажану ширинку вікна", + height = "Введіть бажану висоту вікна", + apply = "Застосувати введену роздільну здатність", + cancel = "Не застосовувати зміну роздільної здатності", + audio_button = "Ввімкнути або вимкнути все ігрове аудіо", + audio_toggle = "Ввімкнути або вимкнути", + customise_button = "Більше налаштувань, щоб персоналізувати свій ігровий досвід", + folder_button = "Налаштування папки", + language = "Мова, яка використовуватиметься у грі", + select_language = "Виберіть мову гри", + language_dropdown_item = "%s буде мовою гри", + language_dropdown_no_font = "Виберіть шрифт у налаштованій папці, щоб задіяти цю мову", + back = "Закрити вікно налаштувань", + scrollspeed = "Виберіть швидкість гортання від 1 (найповільніша) до 10 (найшвидша). За замовчуванням - 2.", + shift_scrollspeed = "Виберіть швидкість гортання коли клавіша Shift затиснута. 1 (найповільніша) до 10 (найшвидша). За замовчуванням - 4.", + zoom_speed = "Виберіть швидкість приближення камери від 10 (найповільніша) до 1000 (найшвидша). За замовчуванням - 80.", + apply_scrollspeed = "Задіяти введену швидкість гортання.", + cancel_scrollspeed = "Повернутись без зміни швидкості гортання.", + apply_shift_scrollspeed = "Задіяти введену пришвидшену швидкість гортанння.", + cancel_shift_scrollspeed = "Повернутись без зміни пришвидшеної швидкості гортанння.", + apply_zoomspeed = "Задіяти швидкість приближення.", + cancel_zoomspeed = "Повернутись без зміни швидкості приближення.", + hotkey = "Змінити гарячі клавіші.", + check_for_updates = "Чи повинна гра перевіряти оновлення після запуску?", + jukebox = "Відкрити програвач, щоб налаштувати музику", + change_resolution = "Змінити роздільну здатність на розміри, що вказані зліва", }, save_game_window = { save_game = "Перезаписати гру «%s»", new_save_game = "Введіть ім'я нової гри", }, load_game_window = { - load_game = "Завантажити гру %s", - load_game_number = "Завантажити гру %d", - load_autosave = "Завантажити автозбереження", + load_game = "Завантажити гру %s", + load_game_number = "Завантажити гру %d", + load_autosave = "Завантажити автозбереження", }, hotkey_window = { - button_accept = "Задіяти та зберегти задані гарячі клавіші", - button_defaults = "Скинути всі гарячі клавіші до стандартних", - button_cancel = "Відмінити задання клавіш і повернутись у вікно налаштувань", - caption_panels = "Відкрити вікно для задання гарячих клавіш панелі", - button_gameSpeedKeys = "Відкрити вікно для задання клавіш керування швидкістю гри", - button_recallPosKeys = "Відкрити вікно для задання клавіш зберігання і відновлення позиції камери", - button_back_02 = "Повернутись до основного меню гарячих клавіш. Зміни із цього вікна застосуютьс там", + button_accept = "Задіяти та зберегти задані гарячі клавіші", + button_defaults = "Скинути всі гарячі клавіші до стандартних", + button_cancel = "Відмінити задання клавіш і повернутись у вікно налаштувань", + caption_panels = "Відкрити вікно для задання гарячих клавіш панелі", + button_gameSpeedKeys = "Відкрити вікно для задання клавіш керування швидкістю гри", + button_recallPosKeys = "Відкрити вікно для задання клавіш зберігання і відновлення позиції камери", + button_back_02 = "Повернутись до основного меню гарячих клавіш. Зміни із цього вікна застосуютьс там", }, custom_campaign_window = { choose_campaign = "Виберіть кампанію, щоб дізнатись про неї більше", @@ -514,7 +514,7 @@ dynamic_info = { queue_size = "Довжина черги: %d", strength = "Міцність: %d", queue_expected = "Очікувана черга: %d", - strength_extra_info = "Міцність %d (Покращується до %d)" + strength_extra_info = "Міцність %d (Покращується до %d)" }, staff = { actions = { @@ -567,15 +567,15 @@ tooltip = { policy = "Політика", }, menu_list_window = { - name = "Натисніть тут, щоб сортувати список за ім'ям", - save_date = "Натисніть тут, щоб сортувати список за датою зміни файлу", - ok = "Підтвердити вибір", - back = "Закрити це вікно", + name = "Натисніть тут, щоб сортувати список за ім'ям", + save_date = "Натисніть тут, щоб сортувати список за датою зміни файлу", + ok = "Підтвердити вибір", + back = "Закрити це вікно", }, custom_game_window = { - choose_game = "Виберіть рівень, щоб прочитати про нього більше", - free_build = "Клікніть тут, якщо Ви хочете пограти не задумуючись про гроші чи цілі", - load_selected_level = "Завантажити та запустити вибраний рівень", + choose_game = "Виберіть рівень, щоб прочитати про нього більше", + free_build = "Клікніть тут, якщо Ви хочете пограти не задумуючись про гроші чи цілі", + load_selected_level = "Завантажити та запустити вибраний рівень", }, casebook = { cure_type = { @@ -583,7 +583,7 @@ tooltip = { unknown = "Ви ще не знаєте як вилікувати цю заразу", }, cure_requirement = { - hire_staff = "Вам потрібно найняти працівника, щоб почати лікування", + hire_staff = "Вам потрібно найняти працівника, щоб почати лікування", hire_surgeon = "Найміть другого Хірурга для проведення операцій", not_possible = "Зараз Ви неспроможні вилікувати цю хворобу", hire_staff_old = "%s потрібен для проведення лікування", @@ -596,12 +596,12 @@ tooltip = { load_menu = { load_slot = "ЗАВАНТАЖИТИ ГРУ", empty_slot = "ПОРОЖНЬО", - network = "ЗАПУСТИТИ МЕРЕЖЕВУ ГРУ", + network = "ЗАПУСТИТИ МЕРЕЖЕВУ ГРУ", }, }, update_window = { - download = "Перейти на сторінку завантаження актуальної версії CorsixTH", - ignore = "Ігнорувати це оновлення поки. Вам нагадають про нього після наступного запуску CorsixTH", + download = "Перейти на сторінку завантаження актуальної версії CorsixTH", + ignore = "Ігнорувати це оновлення поки. Вам нагадають про нього після наступного запуску CorsixTH", }, save_map_window = { map = "Перезаписати мапу %s", @@ -614,8 +614,8 @@ tooltip = { back = "Закрити це меню і повернутись до Меню налаштувань", music_location = "Виберіть розташування власної музики вибравши директорію, яку ви збираєтесь використовувати (Директорія вже має бути створеною).", font_location = "Виберіть розташування файлу шрифта, який підтримує Unicode символи, якщо цього потребує вибрана Вами мова. Якщо його не вказати, Ви не зможете вибрати мову, символів якої не було у оригінаьній грі.", - savegames_location = "За замовчуванням, Файли збережень зберігаються у папці, котра поряд із файлом конфігурації. Натомість Ви можете вибрати власну папку вибравши директорію, яку ви хочете використовувати.", - browse_data = "Виберіть інше розташування файлів гри встановленої Theme Hospital ( Поточне розташування: %1% ) ", + savegames_location = "За замовчуванням, Файли збережень зберігаються у папці, котра поряд із файлом конфігурації. Натомість Ви можете вибрати власну папку вибравши директорію, яку ви хочете використовувати.", + browse_data = "Виберіть інше розташування файлів гри встановленої Theme Hospital ( Поточне розташування: %1% ) ", browse = "Перегляд папок", browse_screenshots = "Виберіть інше розташування папки Скріншоти ( Поточне розташування: %1% ) ", browse_music = "Виберіть інше розташування папки Музика ( Поточне розташування: %1% ) ", @@ -634,7 +634,7 @@ tooltip = { fractured_bones = "Через погані анімації з оригінальної гри, не буде Пацієнток зі Зламаними кістками. Щоб дозволити Пацієнткам зі Зламаними кістками відвідувати Вашу лікарню, вимкніть цю опцію.", average_contents = "Якщо Ви хочете щоб гра запам'ятовувала додаткові об'єкти, які ви використовуєте при облаштуванні кімнат, увімкніть цю опцію.", remove_destroyed_rooms = "Якщо хочете мати змогу видаляти знищені кабінети, за певну платню, увімкніть цю опцію.", - back = "Закрити це меню і повернутись до Головного меню", + back = "Закрити це меню і повернутись до Головного меню", }, handyman_window = { happiness = "Задовільність", @@ -743,7 +743,7 @@ errors = { could_not_load_campaign = "Неможливо завантажити кампанію: %s", compatibility_error = { new_in_old = "Вибачте, це збереження створено більш новою версією CorsixTH, тому немає сумісності. Будь ласка оновіть до більш актуальної версії.", - demo_in_full = "Вибачте, ви не можете завантажити збережену гру із демо версії, коли ви запустили повну версію гри. Будь ласка змініть розташування Дані гри TH у налаштуваннях.", + demo_in_full = "Вибачте, ви не можете завантажити збережену гру із демо версії, коли ви запустили повну версію гри. Будь ласка змініть розташування Дані гри TH у налаштуваннях.", full_in_demo = "Вибачте, ви не можете завантажити збережену гру з повної версії, коли ви запустили демо версію гри. Будь ласка змініть розташування Дані гри TH у налаштуваннях.", }, dialog_empty_queue = "Вибачте, гуманоїд має порожню чергу дій, тому вони не знають, що їм робити далі. Будьласка перегляньте командне вікно, щоб дізнатись детальніше про це. Діалог з неправильним гуманоїдом відкритий. Хочете, щоб він покинув лікарню?", @@ -1307,43 +1307,43 @@ staff_descriptions = { [15] = "Обережний та надійний в надзвичайних ситуаціях. ", }, misc = { - [1] = "Збирає фігурки слонів. ", - [2] = "Любить дайвінг. ", - [3] = "Робить скульптури з льоду. ", - [4] = "З'явився в одному епізоді «Не вагайся, обертайся!» ", - [5] = "Власник суперкарів. ", - [6] = "Любить банджі-джампінг. ", - [7] = "Збирає підставки під бокали пива. ", - [8] = "Він любить стрибати зі сцени. ", - [9] = "Він любить серфінг із пукальним прискоренням. ", - [10] = "Розширює русла річок. ", - [11] = "Переганяє віскі. ", - [12] = "Досвідчений майстер. ", - [13] = "Любить фільми французьких режисерів. ", - [14] = "Часто грає у Theme Park. ", - [15] = "Має посвідчення водія вантажівки. ", - [16] = "Бере участь у перегонах на мотоциклах. ", - [17] = "Грає на скрипці та віолончелі. ", - [18] = "Завзятий диверсант залізничних колій. ", - [19] = "Обожнює собак. ", - [20] = "Співає у душі. ", - [21] = "Він часто купається у фонтанах. ", - [22] = "Інструктор з плетіння кошиків. ", - [23] = "Перетворює свіжі овочі на мильниці. ", - [24] = "Комісар поліції за сумісництвом. ", - [25] = "Колишній ведучий вікторини. ", - [26] = "Збирає уламки снарядіа Другої світової війни. ", - [27] = "Любить переміщувати меблі. ", - [28] = "Слухає рейв і тріп-хоп. ", - [29] = "Він дратує комах спреєм-дезодорантом. ", - [30] = "Перекрикує коміків на їх виступах. ", - [31] = "Нишпорить по кабінетах. ", - [32] = "Він садівник, але скриває це. ", - [33] = "Торгує контрабандою підроблених годинників. ", - [34] = "Співає в рок-н-рол гурті. ", - [35] = "Обожнює денне телебачення. ", - [36] = "Лоскоче форель. ", - [37] = "Заманює туристів у музеї. ", + [1] = "Збирає фігурки слонів. ", + [2] = "Любить дайвінг. ", + [3] = "Робить скульптури з льоду. ", + [4] = "З'явився в одному епізоді «Не вагайся, обертайся!» ", + [5] = "Власник суперкарів. ", + [6] = "Любить банджі-джампінг. ", + [7] = "Збирає підставки під бокали пива. ", + [8] = "Він любить стрибати зі сцени. ", + [9] = "Він любить серфінг із пукальним прискоренням. ", + [10] = "Розширює русла річок. ", + [11] = "Переганяє віскі. ", + [12] = "Досвідчений майстер. ", + [13] = "Любить фільми французьких режисерів. ", + [14] = "Часто грає у Theme Park. ", + [15] = "Має посвідчення водія вантажівки. ", + [16] = "Бере участь у перегонах на мотоциклах. ", + [17] = "Грає на скрипці та віолончелі. ", + [18] = "Завзятий диверсант залізничних колій. ", + [19] = "Обожнює собак. ", + [20] = "Співає у душі. ", + [21] = "Він часто купається у фонтанах. ", + [22] = "Інструктор з плетіння кошиків. ", + [23] = "Перетворює свіжі овочі на мильниці. ", + [24] = "Комісар поліції за сумісництвом. ", + [25] = "Колишній ведучий вікторини. ", + [26] = "Збирає уламки снарядіа Другої світової війни. ", + [27] = "Любить переміщувати меблі. ", + [28] = "Слухає рейв і тріп-хоп. ", + [29] = "Він дратує комах спреєм-дезодорантом. ", + [30] = "Перекрикує коміків на їх виступах. ", + [31] = "Нишпорить по кабінетах. ", + [32] = "Він садівник, але скриває це. ", + [33] = "Торгує контрабандою підроблених годинників. ", + [34] = "Співає в рок-н-рол гурті. ", + [35] = "Обожнює денне телебачення. ", + [36] = "Лоскоче форель. ", + [37] = "Заманює туристів у музеї. ", }, bad = { [1] = "Повільний і дріб'язковий. ", @@ -1864,17 +1864,17 @@ fax = { partial_diagnosis_percentage_name = "Можливо ми визначили, що з пацієнтом. Існує ймовірність у %d відсотків, що у нього %s.", }, emergency = { - locations = { - [1] = "Липецький хімічний завод", - [2] = "Липовий Університет", - [3] = "Садовий центр вибіркового озеленення", - [4] = "Інститут дослідження небезпечних речовин", - [5] = "З'їзд танцюристів випуску Поплавського", - [6] = "Паб «Bullfrog»", - [7] = "Похоронний салон «Насолода і Монополія»", - [8] = "Магазин тайського каррі", - [9] = "Імперія оброблених нафтохімікатів Барта", - }, + locations = { + [1] = "Липецький хімічний завод", + [2] = "Липовий Університет", + [3] = "Садовий центр вибіркового озеленення", + [4] = "Інститут дослідження небезпечних речовин", + [5] = "З'їзд танцюристів випуску Поплавського", + [6] = "Паб «Bullfrog»", + [7] = "Похоронний салон «Насолода і Монополія»", + [8] = "Магазин тайського каррі", + [9] = "Імперія оброблених нафтохімікатів Барта", + }, num_disease = "До нас прямують %d людей з хворобою %s, і вони потребують негайної допомоги.", cure_possible_drug_name_efficiency = "У вас вже є необхідне обладнання та навички. У вас є препарат, який їм потрібен. Це %s, і ліки ефективні на %d відсотків.", cure_not_possible_employ = "Вам потрібно найняти %s", @@ -2008,7 +2008,7 @@ adviser = { nurses_cannot_work_in_room = "Медсестри не можуть працювати в %s.", only_researchers = "Лікарі можуть досліджувати в Кабінеті дослідництва, лише якщо вони мають навичку Дослідника.", doctors_cannot_work_in_room = "Лікарі не можуть працювати в %s.", - not_enough_lecture_chairs = "Кожному лікарю, що навчається треба треба лекційний стілець, щоб бути присутнім тут!", + not_enough_lecture_chairs = "Кожному лікарю, що навчається треба треба лекційний стілець, щоб бути присутнім тут!", }, room_forbidden_non_reachable_parts = "Якщо ви розмістите приміщення тут, частина лікарні буде недоступною.", research = { @@ -2157,7 +2157,7 @@ adviser = { high_prices = "Ви берете занадто багато за %s. Хоч з пацієнтів ви більше здерете, та вони швидше підуть до конкурентів ніж ви заробите статок.", low_prices = "Ви берете дуже мало за %s. Це залучить до лікарні більше пацієнтів, але багато на них не заробиш.", patient_not_paying = "Пацієнт пішов не сплативши за %s, тому що це занадто дорого!", - cannot_afford_machine = "Вам потрібно хоча б %1%$ у банку, щоб купити нову %2%!", + cannot_afford_machine = "Вам потрібно хоча б %1%$ у банку, щоб купити нову %2%!", }, placement_info = { door_cannot_place = "Вибачте, але ви не можете зробити тут двері.", @@ -2245,8 +2245,8 @@ adviser = { th_cheat = "Вітаємо, ви розблокували чіти!", roujin_off_cheat = "Змагання Roujin'а деактивовано.", roujin_on_cheat = "Змагання Roujin'а активовано! Удачі...", - norest_off_cheat = "Фух! Схоже ефект кавуськи закінчився. Тепер ваш персонал може спокійно відпочивати.", - norest_on_cheat = "О ні! Виявляється ваш персонал перепив кохфе і їм тепер зовсім не потрібен відпочинок.", + norest_off_cheat = "Фух! Схоже ефект кавуськи закінчився. Тепер ваш персонал може спокійно відпочивати.", + norest_on_cheat = "О ні! Виявляється ваш персонал перепив кохфе і їм тепер зовсім не потрібен відпочинок.", }, } @@ -2554,11 +2554,11 @@ cheats_window = { decrease_prices = "Знизити ціни", epidemic = "Створити заразного пацієнта", increase_prices = "Підвищити ціни", - toggle_earthquake = "Перемкнути землетрус", - show_infected = "Показати/Скрити іконки інфікованих", - max_reputation = "Макс. репутація", - reset_death_count = "Скинути к-ть смертей", - toggle_epidemic = "Перемкнути епідемії", + toggle_earthquake = "Перемкнути землетрус", + show_infected = "Показати/Скрити іконки інфікованих", + max_reputation = "Макс. репутація", + reset_death_count = "Скинути к-ть смертей", + toggle_epidemic = "Перемкнути епідемії", }, close = "Закрити", caption = "Чіти", @@ -2998,11 +2998,11 @@ tooltip = { increase_prices = "Збільшити всі ціни на 50% (макс. 200%)", earthquake = "Викликати землетрус.", vip = "Запросити ВІП.", - toggle_earthquake = "Перемкнути стан землетрусу", - show_infected = "Відобразити/Приховати іконки інфікованих для активної, виявленої епідемії", - max_reputation = "Зробити репутацію лікарні максимальною", - reset_death_count = "Скинути кількість смертей до нуля", - toggle_epidemic = "Перемкнути, чи можливі епідемії", + toggle_earthquake = "Перемкнути стан землетрусу", + show_infected = "Відобразити/Приховати іконки інфікованих для активної, виявленої епідемії", + max_reputation = "Зробити репутацію лікарні максимальною", + reset_death_count = "Скинути кількість смертей до нуля", + toggle_epidemic = "Перемкнути, чи можливі епідемії", }, }, menu_list_window = { @@ -3101,7 +3101,7 @@ totd_window = { [17] = "Пацієнти будуть відчувати спрагу, поки вони чекатимуть у вашій лікарні, і якщо ви підвищите температуру, вона буде ще більше! Розмістіть Автомат з напоями у стратегічних місцях для додаткового прибутку.", [18] = "Ви можете передчасно завершити процес обстеження і вгадати лікування, якщо ви вже стикалися з хворобою. Але майте на увазі, що це може збільшити ризик неправильного лікування, яке спричинить смерть пацієнта.", [19] = "Надзвичайні ситуації можуть бути гарним джерелом додаткового доходу, якщо у вас є достатньо можливостей для своєчасної допомоги невідкладним пацієнтам.", - [20] = "Чи знали ви, що можна призначити Різноробочим чим саме їм займатись? Просто натискайте на одну із задач у їх профілі щоб задати пріоритет!" + [20] = "Чи знали ви, що можна призначити Різноробочим чим саме їм займатись? Просто натискайте на одну із задач у їх профілі щоб задати пріоритет!" }, next = "Наступна підказка", } @@ -3550,9 +3550,9 @@ map_editor_window = { paste = "Розмістити об'єкти", camera_4 = "Камера 4", north_wall = "Північні стіни", - parcel = "Ділянка %d", - set_parcel = "Задати номер ділянки", - set_parcel_tooltip = "Виберіть номер і натисніть Еnter.", + parcel = "Ділянка %d", + set_parcel = "Задати номер ділянки", + set_parcel_tooltip = "Виберіть номер і натисніть Еnter.", }, checks = { spawn_points_and_path = "Попередження: Пацієнти не можуть потрапити у лікарню. Їм потрібні 'Дорожні' плити або сірі плити 'Подвір'я' на краю мапи і шлях має бути прокладеним до входу у лікарню.", From f67c99a1ca215fb7e91c83327e126c693c1dd980 Mon Sep 17 00:00:00 2001 From: Alberth Date: Sun, 22 Sep 2024 11:33:02 +0200 Subject: [PATCH 09/85] Adapt Linux workflow. --- .github/workflows/Linux.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/Linux.yml b/.github/workflows/Linux.yml index 301029cbb6..6931d36d6c 100644 --- a/.github/workflows/Linux.yml +++ b/.github/workflows/Linux.yml @@ -96,8 +96,8 @@ jobs: - name: Run simple code tests if: matrix.static_analysis run: | - # Check if there are trailing whitespaces. - python3 scripts/check_trailing_whitespaces.py + # Check if there bad whitespace. + python3 scripts/check_whitespace.py # Check for incorrectly encoded files. python3 scripts/check_language_files_not_BOM.py # Check if there are lua classes with invalid/improper declarations. From 98429a97dac8a8a47cba8e59ce3901b2623e132b Mon Sep 17 00:00:00 2001 From: Alberth Date: Sun, 22 Sep 2024 11:55:47 +0200 Subject: [PATCH 10/85] Wrap main program code in a function. --- scripts/check_whitespace.py | 48 ++++++++++++++++++++----------------- 1 file changed, 26 insertions(+), 22 deletions(-) diff --git a/scripts/check_whitespace.py b/scripts/check_whitespace.py index 4ad24e6472..d148befaed 100755 --- a/scripts/check_whitespace.py +++ b/scripts/check_whitespace.py @@ -37,29 +37,33 @@ def has_bad_whitespace(path): return False -# Main program. -if len(sys.argv) > 2: - sys.exit(f'Usage: {sys.argv[0]} [root-dir]') -top = os.getcwd() -if len(sys.argv) == 2: - top = os.path.join(top, sys.argv[1]) +def main(): + if len(sys.argv) > 2: + sys.exit(f'Usage: {sys.argv[0]} [root-dir]') -count = 0 -offending_files = [] -for root, dirs, files in os.walk(top): - for f in files: - if f.lower().endswith(('.py', '.lua', '.h', '.cpp', '.cc', '.c')): - count += 1 - path = os.path.join(root, f) - if has_bad_whitespace(path): - offending_files.append(path) + top = os.getcwd() + if len(sys.argv) == 2: + top = os.path.join(top, sys.argv[1]) -print('Checked {} files'.format(count)) -if offending_files: - print('Found files with bad whitespace:') - for path in offending_files: - print(path) - sys.exit(1) + count = 0 + offending_files = [] + for root, dirs, files in os.walk(top): + for f in files: + if f.lower().endswith(('.py', '.lua', '.h', '.cpp', '.cc', '.c')): + count += 1 + path = os.path.join(root, f) + if has_bad_whitespace(path): + offending_files.append(path) -sys.exit(0) + print('Checked {} files'.format(count)) + if offending_files: + print('Found files with bad whitespace:') + for path in offending_files: + print(path) + sys.exit(1) + + sys.exit(0) + +if __name__ == '__main__': + main() From 37546be45d34cc36f7581cd84bdef24677e9bac5 Mon Sep 17 00:00:00 2001 From: Alberth Date: Sun, 22 Sep 2024 12:05:59 +0200 Subject: [PATCH 11/85] Protect against Unicde decoding errors. - The path of such files is printed, and an error return code is given even without bad whitespace. --- scripts/check_whitespace.py | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/scripts/check_whitespace.py b/scripts/check_whitespace.py index d148befaed..5baed05197 100755 --- a/scripts/check_whitespace.py +++ b/scripts/check_whitespace.py @@ -48,22 +48,33 @@ def main(): count = 0 offending_files = [] + found_errors = False for root, dirs, files in os.walk(top): for f in files: if f.lower().endswith(('.py', '.lua', '.h', '.cpp', '.cc', '.c')): count += 1 path = os.path.join(root, f) - if has_bad_whitespace(path): - offending_files.append(path) + try: + if has_bad_whitespace(path): + found_errors = True + offending_files.append(path) + except UnicodeDecodeError: + print(f"ERROR: File {path} has Unicode errors.") + found_errors = True + + + # Report files with bad whitespace. print('Checked {} files'.format(count)) if offending_files: print('Found files with bad whitespace:') for path in offending_files: print(path) - sys.exit(1) - sys.exit(0) + if found_errors: + sys.exit(1) + else: + sys.exit(0) if __name__ == '__main__': main() From 28c040d00a9926304b80abc4fddd45a9825c500a Mon Sep 17 00:00:00 2001 From: Alberth Date: Sun, 22 Sep 2024 12:31:34 +0200 Subject: [PATCH 12/85] Add CLI processing. - Add -e option to allow for excluding paths from the check. - Add -h option to show help text - Add the ability to check multiple roots --- scripts/check_whitespace.py | 64 +++++++++++++++++++++++++++++++------ 1 file changed, 54 insertions(+), 10 deletions(-) diff --git a/scripts/check_whitespace.py b/scripts/check_whitespace.py index 5baed05197..2d592bb4c5 100755 --- a/scripts/check_whitespace.py +++ b/scripts/check_whitespace.py @@ -12,6 +12,7 @@ If root-dir is not specified, it will use the current directory. """ +import getopt import os import re import sys @@ -39,21 +40,64 @@ def has_bad_whitespace(path): def main(): - if len(sys.argv) > 2: - sys.exit(f'Usage: {sys.argv[0]} [root-dir]') + # Process the command line. + short_opts = "he:" + long_opts = [] + try: + opts, args = getopt.getopt(sys.argv[1:], short_opts, long_opts) + except getopt.GetoptError as ex: + print(f"ERROR: {ex}") + sys.exit(1) - top = os.getcwd() - if len(sys.argv) == 2: - top = os.path.join(top, sys.argv[1]) + # Process the found options. + excludes = [] + for opt, optval in opts: + if opt == '-h': + print("Usage: check_whitespace [options] [ROOT-DIR ...]") + print() + print("Checks source files for bad whitespace. Recursively examines all") + print("supplied ROOT-DIR, or the current directory if no root is provided.") + print() + print("Options:") + print(" -h Print this help text") + print(" -e TEXT Exclude source files with TEXT in their path") + print(" This option may be used multiple times") + print() + print("Have a nice day!") + sys.exit(0) + + if opt == '-e': + excludes.append(optval) + continue + + # Shouldn't happen due to getopt checking. + assert False, f"Unexpected option ({(opt, optval)} found." + + # Setup root directories. + cur_dir = os.getcwd() + if args: + tops = [os.path.join(cur_dir, arg) for arg in args] + else: + tops = [cur_dir] + # Process files. count = 0 offending_files = [] found_errors = False - for root, dirs, files in os.walk(top): - for f in files: - if f.lower().endswith(('.py', '.lua', '.h', '.cpp', '.cc', '.c')): - count += 1 + for top in tops: + for root, dirs, files in os.walk(top): + for f in files: + # Skip non-source files. + if not f.lower().endswith(('.py', '.lua', '.h', '.cpp', '.cc', '.c')): + continue + + # Skip files with excluded patterns. path = os.path.join(root, f) + if any(excl in path for excl in excludes): + continue + + # Check the file. + count += 1 try: if has_bad_whitespace(path): found_errors = True @@ -63,7 +107,6 @@ def main(): print(f"ERROR: File {path} has Unicode errors.") found_errors = True - # Report files with bad whitespace. print('Checked {} files'.format(count)) if offending_files: @@ -71,6 +114,7 @@ def main(): for path in offending_files: print(path) + # And construct the return code. if found_errors: sys.exit(1) else: From 1f92d5d46dd6eeb3de647c25d345fe7da0e835f5 Mon Sep 17 00:00:00 2001 From: Alberth Date: Sun, 22 Sep 2024 12:35:15 +0200 Subject: [PATCH 13/85] Disable whitespace checking for generated files SpriteEncoder/{parser,scanner}.cpp --- .github/workflows/Linux.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/Linux.yml b/.github/workflows/Linux.yml index 6931d36d6c..fae44705f5 100644 --- a/.github/workflows/Linux.yml +++ b/.github/workflows/Linux.yml @@ -97,7 +97,7 @@ jobs: if: matrix.static_analysis run: | # Check if there bad whitespace. - python3 scripts/check_whitespace.py + python3 scripts/check_whitespace.py -e scanner.cpp -e parser.cpp # Check for incorrectly encoded files. python3 scripts/check_language_files_not_BOM.py # Check if there are lua classes with invalid/improper declarations. From 645557c21b14ab0abd93c8abb8a0d00e142ac9d7 Mon Sep 17 00:00:00 2001 From: Alberth Date: Sun, 22 Sep 2024 20:47:00 +0200 Subject: [PATCH 14/85] In addition to listing bad files, it also reports what is bad about them. --- scripts/check_whitespace.py | 51 ++++++++++++++++++++++++++----------- 1 file changed, 36 insertions(+), 15 deletions(-) diff --git a/scripts/check_whitespace.py b/scripts/check_whitespace.py index 2d592bb4c5..2dd81dc545 100755 --- a/scripts/check_whitespace.py +++ b/scripts/check_whitespace.py @@ -1,15 +1,17 @@ #!/usr/bin/env python3 """ - Usage: check_whitespace.py [root-dir] + Usage: check_whitespace.py [-e EXCL] [root-dir ...] This script will check for incorrect whitespace (usage of TAB and trailing - whitespace) in Lua, Python, and C/C++ files below |root-dir|. + whitespace) in Lua, Python, and C/C++ files below one of the listed + |root-dir| directories. With the -e option you can specify one or more EXCL + fragments that skips file paths that have one of the fragments. It will return 0 (ie success) if only correct whitespace is found. Otherwise, it will print the path of the violating file(s) and return an error code. - If root-dir is not specified, it will use the current directory. + If no root-dir is specified, it will use the current directory. """ import getopt @@ -24,19 +26,36 @@ # - a SPACE as last character. BAD_WHITESPACE = re.compile(r'\t| \r| \n| $') +MESSAGES = { + (True, False): "has at least one tab character", + (False, True): "has trailing whitespace", + (True, True): "has both at least one tab character and trailing whitespace" +} -def has_bad_whitespace(path): +def check_for_bad_whitespace(path): """ - Returns whether the file at |path| has bad whitespace. + Checks the file at |path| for tab and trailing white space and returns an + error-message if something bad was found, or None. """ + has_bad_tab = False + has_bad_space = False if os.path.isfile(path): with open(path, 'r') as handle: for line in handle: - m = BAD_WHITESPACE.search(line) - if m: - return True + bad_whites = BAD_WHITESPACE.findall(line) + if bad_whites: + bad_tab_count = sum(1 for bw in bad_whites if bw == '\t') + bad_space_count = len(bad_whites) - bad_tab_count - return False + has_bad_tab = has_bad_tab or (bad_tab_count > 0) + has_bad_space = has_bad_space or (bad_space_count > 0) + + if has_bad_tab and has_bad_space: + break # Found everything we can possibly find, done. + + if has_bad_tab or has_bad_space: + return f"File \"{path}\" {MESSAGES[(has_bad_tab, has_bad_space)]}" + return None def main(): @@ -82,7 +101,7 @@ def main(): # Process files. count = 0 - offending_files = [] + messages = [] found_errors = False for top in tops: for root, dirs, files in os.walk(top): @@ -99,9 +118,10 @@ def main(): # Check the file. count += 1 try: - if has_bad_whitespace(path): + message = check_for_bad_whitespace(path) + if message is not None: found_errors = True - offending_files.append(path) + messages.append(message) except UnicodeDecodeError: print(f"ERROR: File {path} has Unicode errors.") @@ -109,10 +129,11 @@ def main(): # Report files with bad whitespace. print('Checked {} files'.format(count)) - if offending_files: + if messages: + print() print('Found files with bad whitespace:') - for path in offending_files: - print(path) + for message in messages: + print(message) # And construct the return code. if found_errors: From ebf2e93991937ed7407a63c56225dd2849dd281a Mon Sep 17 00:00:00 2001 From: lewri Date: Sat, 21 Sep 2024 15:55:00 +0100 Subject: [PATCH 15/85] Update for 0.68.0 RC2 --- CorsixTH/Lua/app.lua | 6 ++++-- CorsixTH/com.corsixth.corsixth.metainfo.xml | 22 ++++++++++++++++++--- CorsixTH/corsix-th.6 | 2 +- WindowsInstaller/Win32Script.nsi | 2 +- changelog.txt | 6 ++++-- 5 files changed, 29 insertions(+), 9 deletions(-) diff --git a/CorsixTH/Lua/app.lua b/CorsixTH/Lua/app.lua index cea7440e6d..f2ad211ac0 100644 --- a/CorsixTH/Lua/app.lua +++ b/CorsixTH/Lua/app.lua @@ -29,7 +29,7 @@ local runDebugger = corsixth.require("run_debugger") -- and add compatibility code in afterLoad functions -- Recommended: Also replace/Update the summary comment -local SAVEGAME_VERSION = 192 -- CorsixTH 0.68.0~rc1 +local SAVEGAME_VERSION = 193 -- CorsixTH 0.68.0~rc2 class "App" @@ -1641,8 +1641,10 @@ function App:getVersion(version) -- Versioning format is major.minor.revision (required) Patch (optional) -- Old versions (<= 0.67) retain existing format -- All patch versions should be retained in this table (due to be replaced, see PR2518) - if ver > 192 then + if ver > 193 then return "Trunk" + elseif ver > 192 then + return "v0.68.0 RC 2" elseif ver > 191 then return "v0.68.0 RC 1" elseif ver > 180 then diff --git a/CorsixTH/com.corsixth.corsixth.metainfo.xml b/CorsixTH/com.corsixth.corsixth.metainfo.xml index d434e8f5fc..d418dd609d 100644 --- a/CorsixTH/com.corsixth.corsixth.metainfo.xml +++ b/CorsixTH/com.corsixth.corsixth.metainfo.xml @@ -20,6 +20,22 @@ com.corsixth.corsixth.desktop + + +

    Translations:

    +
      +
    • Dutch translation has been updated
    • +
    • Ukranian translation has been updated
    • +
    +

    Bug Fixes:

    +
      +
    • Added a safeguard to prevent a crash of games previously using the + old cheat system
    • +
    • Patients waiting for a player decision no longer lose their mood icon + on vomit/pee
    • +
    +
    +

    New Features:

    @@ -29,13 +45,13 @@

Translations:

    -
  • Ukranian translation added.
  • +
  • Ukranian translation added
  • Brazilian-Portuguese translation has been updated

Bug Fixes:

    -
  • Tooltips for language menu now align with list items. Please note we are - aware of an issue where some languages don't show a tooltip.
  • +
  • Tooltips for language menu now align with list items. Please note we + are aware of an issue where some languages don't show a tooltip
diff --git a/CorsixTH/corsix-th.6 b/CorsixTH/corsix-th.6 index 9c9adacc54..ac8587dd5b 100644 --- a/CorsixTH/corsix-th.6 +++ b/CorsixTH/corsix-th.6 @@ -95,4 +95,4 @@ Copyright CorsixTH contributors. CorsixTH is available under the MIT license. .Pp For the full license text see: -.Lk https://raw.githubusercontent.com/CorsixTH/CorsixTH/v0.68.0-rc1/LICENSE.txt +.Lk https://raw.githubusercontent.com/CorsixTH/CorsixTH/v0.68.0-rc2/LICENSE.txt diff --git a/WindowsInstaller/Win32Script.nsi b/WindowsInstaller/Win32Script.nsi index 2a031fcc49..2855bbaa6f 100644 --- a/WindowsInstaller/Win32Script.nsi +++ b/WindowsInstaller/Win32Script.nsi @@ -24,7 +24,7 @@ ;---------------------------------- Definitions for the game ----------------------------------- !define PRODUCT_NAME "CorsixTH" -!define PRODUCT_VERSION "0.68.0-rc1" +!define PRODUCT_VERSION "0.68.0-rc2" !define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" !define PRODUCT_UNINST_ROOT_KEY "HKLM" !define PRODUCT_STARTMENU_REGVAL "NSIS:StartMenuDir" diff --git a/changelog.txt b/changelog.txt index 985c3fa830..e4c09d0cb3 100644 --- a/changelog.txt +++ b/changelog.txt @@ -44,7 +44,7 @@ CorsixTH 0.68.0 - released September 2024 # Translations * Ukranian translation added. Thanks @JurecStrongman -* Dutch translation has been updated. Thanks @jetenergy +* Dutch translation has been updated. Thanks @jetenergy and @Alberth289346 * Italian translation has been updated. Thanks @SebastianoPistore & @Inkub0 * Russian translation has been updated. Thanks @Matroftt * Spanish translation has been updated. Thanks @ShiroAka @@ -65,6 +65,8 @@ CorsixTH 0.68.0 - released September 2024 * Staff who have left the hospital can no longer ask for a raise * Fixed a bug where some staff may have no initial before surname * Patients can no longer litter outdoors +* Patients waiting for a player decision no longer lose their mood icon on + vomit/pee * Fixed a bug where an unreachable reception desk could cause a crash * The Computer and Atom Analyser now make button sounds as originally intended * The mark for vaccination action now makes a sound as originally intended @@ -79,7 +81,7 @@ CorsixTH 0.68.0 - released September 2024 * Custom campaigns menu now will use a scrollbar for long campaign descriptions * Continue Game now properly targets files explicitly ending in the .sav format * Tooltips for language menu now align with list items. Please note we are aware - of an issue where some languages don't show a tooltip. + of an issue where some languages don't show a tooltip * Fixed an instance where information boxes could load pink from older savegames * Implemented a more permanent fix for the money bar being drawn incorrectly in From 0f52c3999ea631731c41b18053c3bf39f4259db7 Mon Sep 17 00:00:00 2001 From: Matroftt <91145555+Matroftt@users.noreply.github.com> Date: Thu, 26 Sep 2024 00:14:31 +0300 Subject: [PATCH 16/85] allow user_of override falling actions --- CorsixTH/Lua/entities/humanoids/patient.lua | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/CorsixTH/Lua/entities/humanoids/patient.lua b/CorsixTH/Lua/entities/humanoids/patient.lua index 4e1703fe4f..655ae7b704 100644 --- a/CorsixTH/Lua/entities/humanoids/patient.lua +++ b/CorsixTH/Lua/entities/humanoids/patient.lua @@ -72,6 +72,10 @@ function Patient:onClick(ui, button) ui:addWindow(UIPatient(ui, self)) end end + elseif self.user_of then + -- The object we're using is made invisible, as the animation contains both + -- the humanoid and the object. Hence send the click onto the object. + self.user_of:onClick(ui, button) elseif TheApp.config.debug_falling and button == "right" then -- Attempt to push patient over -- Currently debug-only, enable in config file for testing. @@ -80,10 +84,6 @@ function Patient:onClick(ui, button) and math.random(1, 2) == 2 then self:falling(true) end - elseif self.user_of then - -- The object we're using is made invisible, as the animation contains both - -- the humanoid and the object. Hence send the click onto the object. - self.user_of:onClick(ui, button) end Humanoid.onClick(self, ui, button) end From 63151f19eaefa7605677263c3ef7681a52837694 Mon Sep 17 00:00:00 2001 From: Matroftt <91145555+Matroftt@users.noreply.github.com> Date: Thu, 26 Sep 2024 13:30:15 +0300 Subject: [PATCH 17/85] Fix strings --- CorsixTH/Lua/languages/russian.lua | 44 +++++++++++++++--------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/CorsixTH/Lua/languages/russian.lua b/CorsixTH/Lua/languages/russian.lua index c1b05607ff..333c14db77 100644 --- a/CorsixTH/Lua/languages/russian.lua +++ b/CorsixTH/Lua/languages/russian.lua @@ -385,8 +385,8 @@ menu_options_game_speed = { and_then_some_more = " (%1%) Еще быстрее", } menu_options_wage_increase = { - deny = " Запретить ", - grant = " Разрешить ", + deny = " Выдавать ", + grant = " Отклонять ", } menu_charts = { statement = " (%1%) Баланс банка", @@ -411,7 +411,7 @@ menu_file_load = { [8] = " ИГРА 8 ", } menu_debug_overlay = { - heat = " Теипература ", + heat = " Температура ", byte_0_1 = " Байт 0 & 1 ", -- Not sure how "BYTE" should be translated here byte_6 = " Байт 6 ", flags = " Атрибуты ", @@ -566,12 +566,12 @@ tooltip = { cancel = "Вернуться без изменения разрешения", folder_button = "Свойства Папки", customise_button = "Выможете изменить больше настроек для индивидуализации игрового опыта", - zoom_speed = "Измените скорость размера камеры от 10 (Самая медленная) до 1000 (Самая быстрая). По умолчанию это 80.", + zoom_speed = "Измените скорость приближения камеры от 10 (Самая медленная) до 1000 (Самая быстрая). По умолчанию это 80.", capture_mouse = "Включить привязку курсора в игровом окне.", cancel_shift_scrollspeed = "Продолжить без изменения скорости прокрутки с нажатой клавишей shift.", cancel_zoomspeed = "Продолжить без изменения скорости размера.", cancel_scrollspeed = "Продолжить без изменения скорости прокрутки.", - apply_zoomspeed = "Применить введёную скорость изменения размера.", + apply_zoomspeed = "Применить введёную скорость приближения.", apply_shift_scrollspeed = "Применить введёную скорость прокрутки с нажатой клавишей shift.", scrollspeed = "Установите скорость прокрутки от 1 (Самая медленная) до 10 (Самая быстрая). По умолчанию это 2.", hotkey = "Измените горячие клавиши на клавиатуре.", @@ -635,7 +635,7 @@ tooltip = { browse_font = "Просмотреть другой файл шрифтаBrowse ( текущее местоположение: %1% )", screenshots_location = "По умолчанию Скриншоты сохраняются в папке вместе с конфигурационным файлом. Если это не подходит, то вы можете выбрать его самостоятельно, просто перейдите в каталог, который вы хотите для этого использовать.", reset_to_default = "Установить папку по умолчанию", - back = "Закрть это меню и вернуться в Меню Настроек", + back = "Закрыть это меню и вернуться в Меню Настроек", music_location = "Выберете папку, где хранятся файлы с mp3 музыкой. Если вы ее только что создали, тогда перейдите в нее.", font_location = "Местонахождение файла шрифта, способного отображать Unicode кодировку, необходимую для вашего языка. Если он не указан, то вы не можете выбрать языки, требующие для отображения больше символов, чем были в оригинальной игре. Например: Русский и Китайский ", savegames_location = "По умолчанию, папка для сохраненных игр находится вместе с конфигурационным файлом. Если это не удобно, тогда вы можете выбрать любую другую просто перейдя в нее. ", @@ -699,9 +699,9 @@ tooltip = { objects = { lamp = "Лампа: излучает свет и позволяет персоналу видеть.", op_sink1 = "33 РАКОВИНА", - litter_bomb = "Заминированное письмо: соботирует работу в больнице конкурента", + litter_bomb = "Заминированное письмо: саботирует работу в больнице конкурента", x_ray = "27 РЕНТГЕН-АППАРАТ", - projector = "37 ПРОЭКТОР", + projector = "37 ПРОЕКТОР", radiation_shield = "28 РАДИАЦИОННЫЙ ЩИТ", entrance_left = "58 ЛЕВАЯ ВХОДНАЯ ДВЕРЬ", table2 = "12 СТОЛ", @@ -711,7 +711,7 @@ tooltip = { x_ray_viewer = "29 РЕНТГЕН ЭКРАН", crash_trolley = "20 КРЭШ-ТЕЛЕЖКИ", shower = "54 ОБЕЗЗАРАЖИВАЮЩИЙ ДУШ", - electrolyser = "46 ЭЛЕКТРОЛИЗЕР", + electrolyser = "46 ЭЛЕКТРОЛИЗАТОР", hair_restorer = "25 ВОССТАНОВИТЕЛЬ ВОЛОС", jelly_moulder = "47 РАЗЖЕЛЕИВАТЕЛЬ", couch = "18 КУШЕТКА", @@ -719,7 +719,7 @@ tooltip = { bed3 = "неиспользовалась", dna_fixer = "23 ВОССТАНОВИТЕЛЬ ДНК", chair = "Стул: пациенты сидят на нем и обсуждают свое заболевание.", - cast_remover = "24 УДАЛИТЕРЬ ГИПСА", + cast_remover = "24 УДАЛИТЕЛЬ ГИПСА", entrance_right = "59 ПРАВАЯ ВХОДНАЯ ДВЕРЬ", cardio = "13 КАРДИО АППАРАТ", slicer = "26 ЯЗЫКОРЕЗКА", @@ -2533,18 +2533,18 @@ letter = { -- 9. Имена и названия months = { - [1] = "янв", - [2] = "фев", - [3] = "мар", - [4] = "апр", - [5] = "мая", - [6] = "июн", - [7] = "июл", - [8] = "авг", - [9] = "сен", - [10] = "окт", - [11] = "ноя", - [12] = "дек", + [1] = "Янв", + [2] = "Фев", + [3] = "Мар", + [4] = "Апр", + [5] = "Мая", + [6] = "Июн", + [7] = "Июл", + [8] = "Авг", + [9] = "Сен", + [10] = "Окт", + [11] = "Ноя", + [12] = "Дек", } humanoid_name_starts = { [1] = "Клизм", From ee487e4fd47f24b06fa092b3f995ae8440eb163a Mon Sep 17 00:00:00 2001 From: Matroftt <91145555+Matroftt@users.noreply.github.com> Date: Thu, 26 Sep 2024 18:01:51 +0300 Subject: [PATCH 18/85] more --- CorsixTH/Lua/languages/russian.lua | 125 +++++++++++++++-------------- 1 file changed, 63 insertions(+), 62 deletions(-) diff --git a/CorsixTH/Lua/languages/russian.lua b/CorsixTH/Lua/languages/russian.lua index 333c14db77..541025a338 100644 --- a/CorsixTH/Lua/languages/russian.lua +++ b/CorsixTH/Lua/languages/russian.lua @@ -344,12 +344,12 @@ tooltip = { -- 2. Игровое меню и панель инструментов menu = { - file = " Файл", + file = " Файл", player_count = "Кол-во игроков", - options = " Опции", - charts = " Отчеты", - display = " Отображение ", - debug = " Отладка ", + options = " Опции", + charts = " Отчеты", + display = " Отображение ", + debug = " Отладка ", } menu_file = { save = " (%1%) Сохранить", @@ -358,23 +358,23 @@ menu_file = { quit = " (%1%) Выйти в главное меню", } menu_options = { - game_speed = " Скорость игры", - sound_vol = " Громкость звука", - music_vol = " Громкость музыки", - edge_scrolling = " Прокрутка мышью", - announcements = " (%1%) Сообщения", - lock_windows = " Не двигать окна", - settings = " Настройки", - sound = " (%1%) Звуки", - announcements_vol = " Громкость сообщений", - music = " (%1%) Музыка", - autosave = " Автосохранение", - jukebox = " (%1%) Музыкальный автомат", + game_speed = " Скорость игры", + sound_vol = " Громкость звука", + music_vol = " Громкость музыки", + edge_scrolling = " Прокрутка мышью", + announcements = " (%1%) Сообщения", + lock_windows = " Не двигать окна", + settings = " Настройки", + sound = " (%1%) Звуки", + announcements_vol = " Громкость сообщений", + music = " (%1%) Музыка", + autosave = " Автосохранение", + jukebox = " (%1%) Музыкальный автомат", twentyfour_hour_clock = " 24-х часовой формат времени ", - wage_increase = " Запросы о зарплате ", - warmth_colors = " Цвета отопления ", - adviser_disabled = " (%1%) Помощник ", - capture_mouse = " Привязка мышки ", + wage_increase = " Запросы о зарплате ", + warmth_colors = " Цвета отопления ", + adviser_disabled = " (%1%) Помощник ", + capture_mouse = " Привязка мышки ", } menu_options_game_speed = { pause = " (%1%) Пауза", @@ -385,7 +385,7 @@ menu_options_game_speed = { and_then_some_more = " (%1%) Еще быстрее", } menu_options_wage_increase = { - deny = " Выдавать ", + deny = " Выдавать ", grant = " Отклонять ", } menu_charts = { @@ -411,18 +411,18 @@ menu_file_load = { [8] = " ИГРА 8 ", } menu_debug_overlay = { - heat = " Температура ", - byte_0_1 = " Байт 0 & 1 ", -- Not sure how "BYTE" should be translated here - byte_6 = " Байт 6 ", - flags = " Атрибуты ", - byte_7 = " Байт 7 ", - byte_5 = " Байт 5 ", - byte_floor = " Байт пола ", - positions = " Координаты ", + heat = " Температура ", + byte_0_1 = " Байт 0 & 1 ", -- Not sure how "BYTE" should be translated here + byte_6 = " Байт 6 ", + flags = " Атрибуты ", + byte_7 = " Байт 7 ", + byte_5 = " Байт 5 ", + byte_floor = " Байт пола ", + positions = " Координаты ", byte_w_wall = " Байт зап. стен ", - parcel = " Участки ", + parcel = " Участки ", byte_n_wall = " Байт сев. стен ", - none = " Убрать оверлей ", + none = " Убрать оверлей ", } menu_file_save = { [1] = " ИГРА 1 ", @@ -435,9 +435,9 @@ menu_file_save = { [8] = " ИГРА 8 ", } menu_display = { - shadows = " ТЕНИ ", + shadows = " ТЕНИ ", mcga_lo_res = " MCGA НИЗ. РАЗРЕШЕНИЕ ", - high_res = " ВЫСОКОЕ РАЗРЕШЕНИЕ ", + high_res = " ВЫСОКОЕ РАЗРЕШЕНИЕ ", } menu_player_count = { players_1 = " 1 Игрок ", @@ -2610,7 +2610,7 @@ humanoid_name_ends = { [26] = "атич", } vip_names = { - [1] = "Мэр Большого Трумптона", + [1] = "Мэр Нижнего Магнитошахтинска", [2] = "Лоуренс Найтингейл", [3] = "Бернард, король Нидерландов", [4] = "Онг Сян Су Куй, предводитель бирманской демократической оппозиции", @@ -2653,9 +2653,9 @@ cheats_window = { decrease_prices = "Снизить цены на 50%", epidemic = "Создать заразного пациента", increase_prices = "Повысить цены на 50%", - toggle_earthquake = "Вкл/Выкл землетрясения", - toggle_epidemic = "Вкл/Выкл эпидемии", - reset_death_count = "Обнулить счетчик смертей", + toggle_earthquake = "Вкл/Выкл землетрясения", + toggle_epidemic = "Вкл/Выкл эпидемии", + reset_death_count = "Обнулить счетчик смертей", max_reputation = "Максимальная репутация", }, close = "Закрыть", @@ -2681,11 +2681,11 @@ tooltip.cheats_window = { decrease_prices = "Уменьшить все цены на 50% (мин. 50%)", epidemic = "Создает заразного пациента, который может вызвать эпидемию", increase_prices = "Увеличить все цены на 50% (макс. 200%)", - toggle_earthquake = "Переключает землетрясения", - toggle_epidemic = "Переключает появление эпидемии в больнице", + toggle_earthquake = "Переключает землетрясения", + toggle_epidemic = "Переключает появление эпидемии в больнице", earthquake = "Вызвать землетрясение.", vip = "Пригласить ВИП.", - reset_death_count = "Установить счетчик смертей на ноль", + reset_death_count = "Установить счетчик смертей на ноль", max_reputation = "Увеличить репутацию больницы на максимум ", }, } @@ -3128,8 +3128,8 @@ tooltip = { close = "Закрыть окно информации", }, lua_console = { - textbox = "ВВедите здесь Lua код для запуска", - execute_code = "Запустить введенный Вами код", + textbox = "Введите сюда код, написанный на Lua", + execute_code = "Запустить код", close = "Закрыть консоль", }, staff_window = { @@ -3594,25 +3594,26 @@ debug_patient_window = { } menu_debug = { allow_blocking_off_areas = " Разрешить блокирование областей ", - connect_debugger = " (%1%) Соединение с LUA DBGp сервером ", - debug_script = " (%1%) Запуск скрипта отладки ", - transparent_walls = " (%1%) Прозрачные стены ", - make_debug_fax = " Создать текстовый факс ", - display_pager = " Отобразить пейджер ", - cheats = " (%1%) Читы ", - remove_objects = " Удалить объекты ", - remove_walls = " Удалить стены ", - sprite_viewer = " Просмотр спрайтов ", - map_overlay = " Оверлей ", - disable_salary_raise = " Отключить поднятие зарплаты ", - limit_camera = " Ограничение камеры ", - calls_dispatcher = " Список дел персонала ", - jump_to_level = " Перейти на уровень ", - dump_gamelog = " (%1%) Создать дамп ", - dump_strings = " (%1%) Создать дамп строк ", - win_game_anim = " Анимация победы ", - make_debug_patient = " Создать тестового пациента ", - lua_console = " (%1%) Консоль Lua " + connect_debugger = " (%1%) Соединение с LUA DBGp сервером ", + debug_script = " (%1%) Запуск скрипта отладки ", + transparent_walls = " (%1%) Прозрачные стены ", + make_debug_fax = " Создать текстовый факс ", + display_pager = " Отобразить пейджер ", + cheats = " (%1%) Читы ", + remove_objects = " Удалить объекты ", + remove_walls = " Удалить стены ", + sprite_viewer = " Просмотр спрайтов ", + map_overlay = " Оверлей ", + disable_salary_raise = " Отключить поднятие зарплаты ", + limit_camera = " Ограничение камеры ", + calls_dispatcher = " Список дел персонала ", + jump_to_level = " Перейти на уровень ", + dump_gamelog = " (%1%) Создать дамп ", + dump_strings = " (%1%) Создать дамп строк ", + win_game_anim = " Анимация победы ", + make_debug_patient = " Создать тестового пациента ", + lua_console = " (%1%) Консоль Lua " + allow_falling = " Позволить падать пациентам ", } lua_console = { execute_code = "Выполнить", From 0783f161f065fb1a2164cc4006dba342d7083adf Mon Sep 17 00:00:00 2001 From: Matroftt <91145555+Matroftt@users.noreply.github.com> Date: Thu, 26 Sep 2024 18:13:39 +0300 Subject: [PATCH 19/85] more --- CorsixTH/Lua/languages/russian.lua | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/CorsixTH/Lua/languages/russian.lua b/CorsixTH/Lua/languages/russian.lua index 541025a338..bdf687d537 100644 --- a/CorsixTH/Lua/languages/russian.lua +++ b/CorsixTH/Lua/languages/russian.lua @@ -142,7 +142,7 @@ options_window = { audio = "Общие звуки", resolution = "Разрешение", language = "Язык в игре", - zoom_speed = "Скорость размера", + zoom_speed = "Скорость приближения", capture_mouse = "Привязка мышки", shift_scrollspeed = "Скорость прокрутки с Shift", hotkey = "Горячие клавиши", @@ -181,15 +181,15 @@ hotkey_window = { global_showLuaConsole = "Консоль Lua", global_confirm = "Подтвердить", panel_recallPosKeys = "Изменить клавиши положения", - global_runDebugScript = "Сценарий отладки", - ingame_zoom_in_more = "Быстрее увеличить размер", + global_runDebugScript = "Скрипт отладки", + ingame_zoom_in_more = "Быстрее приближать", global_fullscreen_toggle = "Полный экран", panel_storePosKeys = "Клавиши покупки", ingame_storePosition_8 = "8", ingame_restartLevel = "Переиграть уровень", ingame_panel_map_alt = "План 2", caption_panels = "Панельные клавиши", - global_resetApp = "Перезагрузить CorsixTH", + global_resetApp = "Перезапустить CorsixTH", panel_debugKeys = "Клавиши отладки", ingame_saveMenu = "Сохранить игру", ingame_panel_casebook_alt = "Записная книжка 2", @@ -569,7 +569,7 @@ tooltip = { zoom_speed = "Измените скорость приближения камеры от 10 (Самая медленная) до 1000 (Самая быстрая). По умолчанию это 80.", capture_mouse = "Включить привязку курсора в игровом окне.", cancel_shift_scrollspeed = "Продолжить без изменения скорости прокрутки с нажатой клавишей shift.", - cancel_zoomspeed = "Продолжить без изменения скорости размера.", + cancel_zoomspeed = "Продолжить без изменения скорости приближения.", cancel_scrollspeed = "Продолжить без изменения скорости прокрутки.", apply_zoomspeed = "Применить введёную скорость приближения.", apply_shift_scrollspeed = "Применить введёную скорость прокрутки с нажатой клавишей shift.", @@ -3612,7 +3612,7 @@ menu_debug = { dump_strings = " (%1%) Создать дамп строк ", win_game_anim = " Анимация победы ", make_debug_patient = " Создать тестового пациента ", - lua_console = " (%1%) Консоль Lua " + lua_console = " (%1%) Консоль Lua ", allow_falling = " Позволить падать пациентам ", } lua_console = { From 02476fd4c6f2717984c559e4a515b952c62c8459 Mon Sep 17 00:00:00 2001 From: Matroftt <91145555+Matroftt@users.noreply.github.com> Date: Thu, 26 Sep 2024 18:30:17 +0300 Subject: [PATCH 20/85] Update russian.lua --- CorsixTH/Lua/languages/russian.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CorsixTH/Lua/languages/russian.lua b/CorsixTH/Lua/languages/russian.lua index bdf687d537..bb83247f90 100644 --- a/CorsixTH/Lua/languages/russian.lua +++ b/CorsixTH/Lua/languages/russian.lua @@ -139,7 +139,7 @@ options_window = { caption = "Настройки", cancel = "Отмена", customise = "Настроить", - audio = "Общие звуки", + audio = "Звук", resolution = "Разрешение", language = "Язык в игре", zoom_speed = "Скорость приближения", From d273280d2fc54e6a162a8be90ff664e2655ed1d1 Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Thu, 26 Sep 2024 19:26:05 +0100 Subject: [PATCH 21/85] replaced Billy Savile with Sir Lancelot Spratt --- CorsixTH/Lua/languages/norwegian.lua | 2 +- CorsixTH/Lua/languages/polish.lua | 2 +- CorsixTH/Lua/languages/russian.lua | 2 +- CorsixTH/Lua/languages/simplified_chinese.lua | 2 +- CorsixTH/Lua/languages/traditional_chinese.lua | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/CorsixTH/Lua/languages/norwegian.lua b/CorsixTH/Lua/languages/norwegian.lua index 1592536d1c..7db91c16f5 100644 --- a/CorsixTH/Lua/languages/norwegian.lua +++ b/CorsixTH/Lua/languages/norwegian.lua @@ -2698,7 +2698,7 @@ vip_names = { "Kong Bernard av Nederland", "Aung Sang Su Kyi, den Burmesisk Demokratiske Opposisjonslederen", "Sir Reginald Crumbly", - "Billy Savile OBE", + "Sir Lancelot Spratt", "Rådgiver Crawford Purves", "Rocket Ronnie Jepson", "En Fotballspiller i Eliteserien", diff --git a/CorsixTH/Lua/languages/polish.lua b/CorsixTH/Lua/languages/polish.lua index 74928f3ead..ca70537775 100644 --- a/CorsixTH/Lua/languages/polish.lua +++ b/CorsixTH/Lua/languages/polish.lua @@ -642,7 +642,7 @@ vip_names = { [3] = "Bernard, król Niderlandów", [4] = "Aung Sang Su Kyi, lider birmańskiej opozycji demokratycznej", [5] = "Sir Reginald Crumbly", - [6] = "Billy Savile, Oficer Orderu", + [6] = "Sir Lancelot Spratt", [7] = "Radny Crawford Purves", [8] = "Rakieta Ronnie Jepson", [9] = "Piłkarz ligi Premiership", diff --git a/CorsixTH/Lua/languages/russian.lua b/CorsixTH/Lua/languages/russian.lua index c1b05607ff..5cab489fe7 100644 --- a/CorsixTH/Lua/languages/russian.lua +++ b/CorsixTH/Lua/languages/russian.lua @@ -2615,7 +2615,7 @@ vip_names = { [3] = "Бернард, король Нидерландов", [4] = "Онг Сян Су Куй, предводитель бирманской демократической оппозиции", [5] = "Сэр Риджинальд Крамбли", - [6] = "Сэр Вилли Сэвил", + [6] = "сэр Ланселот Шпрэтт", [7] = "Советник Кроуфорд Первс", [8] = "«Ракета» Ронни Джепсон", [9] = "Футболист премьер-лиги", diff --git a/CorsixTH/Lua/languages/simplified_chinese.lua b/CorsixTH/Lua/languages/simplified_chinese.lua index 8605eddef5..b6ed5554af 100644 --- a/CorsixTH/Lua/languages/simplified_chinese.lua +++ b/CorsixTH/Lua/languages/simplified_chinese.lua @@ -2098,7 +2098,7 @@ vip_names = { "来自荷兰的伯那德国王", "缅甸民主党领袖:昂山苏蒂", "克朗伯先生", - "比利先生", + "兰斯洛特·斯普拉特爵士", "克劳福议员", "罗尼", "一个超级联赛球星", diff --git a/CorsixTH/Lua/languages/traditional_chinese.lua b/CorsixTH/Lua/languages/traditional_chinese.lua index 6ba3bcfcc5..b894664520 100644 --- a/CorsixTH/Lua/languages/traditional_chinese.lua +++ b/CorsixTH/Lua/languages/traditional_chinese.lua @@ -502,7 +502,7 @@ vip_names = { [3] = "來自荷蘭的伯那德國王", [4] = "緬甸民主黨領袖:翁山蘇姬", [5] = "克朗伯先生", - [6] = "比利先生", + [6] = "蘭斯洛特·斯普拉特爵士", [7] = "克勞福議員", [8] = "羅尼", [9] = "一個超級聯賽球星", From 85b25671a7a27eef83f834f68647ad9361e04539 Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Thu, 26 Sep 2024 21:00:41 +0100 Subject: [PATCH 22/85] deleted savile strings, updated Russian VIP strings with localised variants --- CorsixTH/Lua/languages/norwegian.lua | 20 ++++++++--------- CorsixTH/Lua/languages/polish.lua | 2 +- CorsixTH/Lua/languages/russian.lua | 22 +++++++++---------- CorsixTH/Lua/languages/simplified_chinese.lua | 20 ++++++++--------- .../Lua/languages/traditional_chinese.lua | 2 +- 5 files changed, 33 insertions(+), 33 deletions(-) diff --git a/CorsixTH/Lua/languages/norwegian.lua b/CorsixTH/Lua/languages/norwegian.lua index 7db91c16f5..60f31827db 100644 --- a/CorsixTH/Lua/languages/norwegian.lua +++ b/CorsixTH/Lua/languages/norwegian.lua @@ -2693,16 +2693,16 @@ humanoid_name_ends = { -- VIP names vip_names = { health_minister = "Helseministeren", - "Ordföreren i Greater Trumpton", -- the rest is better organized in an array. - "Lawrence Nightingale", - "Kong Bernard av Nederland", - "Aung Sang Su Kyi, den Burmesisk Demokratiske Opposisjonslederen", - "Sir Reginald Crumbly", - "Sir Lancelot Spratt", - "Rådgiver Crawford Purves", - "Rocket Ronnie Jepson", - "En Fotballspiller i Eliteserien", - "L. F. Probst, III", + [1] = "Ordföreren i Greater Trumpton", -- the rest is better organized in an array. + [2] = "Lawrence Nightingale", + [3] = "Kong Bernard av Nederland", + [4] = "Aung Sang Su Kyi, den Burmesisk Demokratiske Opposisjonslederen", + [5] = "Sir Reginald Crumbly", + -- [6] requires replacement (English uses 'Sir Lancelot Spratt') + [7] = "Rådgiver Crawford Purves", + [8] = "Rocket Ronnie Jepson", + [9] = "En Fotballspiller i Eliteserien", + [10] = "L. F. Probst, III", } -- Deseases diff --git a/CorsixTH/Lua/languages/polish.lua b/CorsixTH/Lua/languages/polish.lua index ca70537775..b5272132ef 100644 --- a/CorsixTH/Lua/languages/polish.lua +++ b/CorsixTH/Lua/languages/polish.lua @@ -642,7 +642,7 @@ vip_names = { [3] = "Bernard, król Niderlandów", [4] = "Aung Sang Su Kyi, lider birmańskiej opozycji demokratycznej", [5] = "Sir Reginald Crumbly", - [6] = "Sir Lancelot Spratt", + -- [6] requires replacement (English uses 'Sir Lancelot Spratt') [7] = "Radny Crawford Purves", [8] = "Rakieta Ronnie Jepson", [9] = "Piłkarz ligi Premiership", diff --git a/CorsixTH/Lua/languages/russian.lua b/CorsixTH/Lua/languages/russian.lua index 5cab489fe7..0f86ad2b59 100644 --- a/CorsixTH/Lua/languages/russian.lua +++ b/CorsixTH/Lua/languages/russian.lua @@ -1,4 +1,4 @@ - --[[ Copyright (c) 2011 Sergei Larionov, Alexey Pinyagin, 2021-2024 "Matroftt" + --[[ Copyright (c) 2011 Sergei Larionov, Alexey Pinyagin, 2021-2024 "Matroftt", 2024 Artem Argus (ARGAMX) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in @@ -2610,16 +2610,16 @@ humanoid_name_ends = { [26] = "атич", } vip_names = { - [1] = "Мэр Большого Трумптона", - [2] = "Лоуренс Найтингейл", - [3] = "Бернард, король Нидерландов", - [4] = "Онг Сян Су Куй, предводитель бирманской демократической оппозиции", - [5] = "Сэр Риджинальд Крамбли", - [6] = "сэр Ланселот Шпрэтт", - [7] = "Советник Кроуфорд Первс", - [8] = "«Ракета» Ронни Джепсон", - [9] = "Футболист премьер-лиги", - [10] = "Л. Ф. Пробст III", + [1] = "Хоккеист Александр Очечкин", + [2] = "Мэр Сергей Обянин", + [3] = "Артист Филипп Иркоров", + [4] = "Музыкант Григорий Швепс", + [5] = "Певец Валерий Целадзе", + [6] = "Телеведущий Иван Шмургант", + [7] = "Музыкант Николай Жиробасков", + [8] = "Актер Олег Кабаков", + [9] = "Писатель Борис Макунин", + [10] = "Знаток Александр Груздь", health_minister = "Министр здравоохранения", } diff --git a/CorsixTH/Lua/languages/simplified_chinese.lua b/CorsixTH/Lua/languages/simplified_chinese.lua index b6ed5554af..01ae4aff57 100644 --- a/CorsixTH/Lua/languages/simplified_chinese.lua +++ b/CorsixTH/Lua/languages/simplified_chinese.lua @@ -2093,16 +2093,16 @@ letter = { vip_names = { health_minister = "卫生部部长", - "伟大的查普顿市长", -- the rest is better organized in an array. - "南丁格尔", - "来自荷兰的伯那德国王", - "缅甸民主党领袖:昂山苏蒂", - "克朗伯先生", - "兰斯洛特·斯普拉特爵士", - "克劳福议员", - "罗尼", - "一个超级联赛球星", - "拉里普罗斯特", + [1] = "伟大的查普顿市长", -- the rest is better organized in an array. + [2] = "南丁格尔", + [3] = "来自荷兰的伯那德国王", + [4] = "缅甸民主党领袖:昂山苏蒂", + [5] = "克朗伯先生", + -- [6] requires replacement (English uses 'Sir Lancelot Spratt') + [7] = "克劳福议员", + [8] = "罗尼", + [9] = "一个超级联赛球星", + [10] = "拉里普罗斯特", } -- 43: credits diff --git a/CorsixTH/Lua/languages/traditional_chinese.lua b/CorsixTH/Lua/languages/traditional_chinese.lua index b894664520..f00d0b5dd6 100644 --- a/CorsixTH/Lua/languages/traditional_chinese.lua +++ b/CorsixTH/Lua/languages/traditional_chinese.lua @@ -502,7 +502,7 @@ vip_names = { [3] = "來自荷蘭的伯那德國王", [4] = "緬甸民主黨領袖:翁山蘇姬", [5] = "克朗伯先生", - [6] = "蘭斯洛特·斯普拉特爵士", + -- [6] requires replacement (English uses 'Sir Lancelot Spratt') [7] = "克勞福議員", [8] = "羅尼", [9] = "一個超級聯賽球星", From 46f217dd6bd967d248a0e86192cdb2b5cca917b1 Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Thu, 26 Sep 2024 22:22:53 +0100 Subject: [PATCH 23/85] improved tooltips in research screen --- CorsixTH/Lua/languages/english.lua | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/CorsixTH/Lua/languages/english.lua b/CorsixTH/Lua/languages/english.lua index d8768483ae..655dab5a1c 100644 --- a/CorsixTH/Lua/languages/english.lua +++ b/CorsixTH/Lua/languages/english.lua @@ -1,4 +1,4 @@ ---[[ Copyright (c) 2010-2020 Manuel "Roujin" Wolf, Edvin "Lego3" Linge, lewri et al. +--[[ Copyright (c) 2010-2024 Manuel "Roujin" Wolf, Edvin "Lego3" Linge, MandrakeHorse, lewri et al. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in @@ -43,6 +43,17 @@ adviser.goals.lose.kill = "Kill another %d patients to lose the level!" tooltip.staff_window.face = "This person's face - click to open management screen" tooltip.staff_window.center_view = "Left click to zoom to staff, right click to cycle through staff members" +-- Improve tooltips in Research Screen +tooltip.research.cure_dec = "Decrease Cure research percentage" +tooltip.research.cure_inc = "Increase Cure research percentage" +tooltip.research.diagnosis_dec = "Decrease Diagnosis research percentage" +tooltip.research.diagnosis_inc = "Increase Diagnosis research percentage" +tooltip.research.drugs_dec = "Decrease Drugs research percentage" +tooltip.research.improvements_dec = "Decrease Improvements research percentage" +tooltip.research.improvements_inc = "Increase Improvements research percentage" +tooltip.research.specialisation_dec = "Decrease Specialisation research percentage" +tooltip.research.specialisation_inc = "Increase Specialisation research percentage" + -- These strings are missing in some versions of TH (unpatched?) confirmation.restart_level = "Are you sure you want to restart the level?" -- TODO adviser.multiplayer.objective_completed From 7293c7b3c49e3d8c4c7c41915bbd2103b38318ed Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Thu, 26 Sep 2024 22:45:32 +0100 Subject: [PATCH 24/85] added further suggested Russian VIPs --- CorsixTH/Lua/languages/russian.lua | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/CorsixTH/Lua/languages/russian.lua b/CorsixTH/Lua/languages/russian.lua index 0f86ad2b59..34b441528f 100644 --- a/CorsixTH/Lua/languages/russian.lua +++ b/CorsixTH/Lua/languages/russian.lua @@ -2610,16 +2610,16 @@ humanoid_name_ends = { [26] = "атич", } vip_names = { - [1] = "Хоккеист Александр Очечкин", - [2] = "Мэр Сергей Обянин", - [3] = "Артист Филипп Иркоров", - [4] = "Музыкант Григорий Швепс", - [5] = "Певец Валерий Целадзе", - [6] = "Телеведущий Иван Шмургант", - [7] = "Музыкант Николай Жиробасков", - [8] = "Актер Олег Кабаков", - [9] = "Писатель Борис Макунин", - [10] = "Знаток Александр Груздь", + [1] = "Мэр Нижнего Магнитошахтинска", + [2] = "Леонид Каневский", + [3] = '«Всезнающий» Онотоле Вассерман', + [4] = "Алексей Лесоповальный, представитель демократической оппозиции", + [5] = "Артист Филипп Иркоров", + [6] = "Телеведущий Иван Шмургант", + [7] = "Музыкант Николай Жиробасков", + [8] = "Актер Олег Кабаков", + [9] = "Писатель Борис Макунин", + [10] = "Градоначальник Сергей Собякин", health_minister = "Министр здравоохранения", } From 4e021200ca117dadb37e6e83d2d7a7a764a607e3 Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Thu, 26 Sep 2024 23:16:00 +0100 Subject: [PATCH 25/85] improved save_to_tmp string --- CorsixTH/Lua/languages/english.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CorsixTH/Lua/languages/english.lua b/CorsixTH/Lua/languages/english.lua index d8768483ae..6a03f21e2e 100644 --- a/CorsixTH/Lua/languages/english.lua +++ b/CorsixTH/Lua/languages/english.lua @@ -1,4 +1,4 @@ ---[[ Copyright (c) 2010-2020 Manuel "Roujin" Wolf, Edvin "Lego3" Linge, lewri et al. +--[[ Copyright (c) 2010-2024 Manuel "Roujin" Wolf, Edvin "Lego3" Linge, MandrakeHorse, lewri et al. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in @@ -741,7 +741,7 @@ errors = { fractured_bones = "NOTE: The animation for female patients with Fractured Bones is not perfect", could_not_load_campaign = "Failed to load the campaign: %s", could_not_find_first_campaign_level = "Could not find the first level of this campaign: %s", - save_to_tmp = "The file at %s could not be used. The game has been saved to %s. Error: %s", + save_to_tmp = "Attempt to write to %s failed. File was written instead to temporary location %s because of the error: %s", dialog_empty_queue = "Sorry, a humanoid just had an empty action queue, which means that they didn't know what to do next. Please consult the command window for more detailed information. A dialog with the offending humanoid has been opened. Would you like them to leave the hospital?", compatibility_error = { new_in_old = "Sorry, this save was created with a newer version of CorsixTH and is not compatible. Please update to a more recent version.", From 5b6204fe9658108026ba2c20cbcd7c8b0e75a1f0 Mon Sep 17 00:00:00 2001 From: "Stephen E. Baker" Date: Thu, 26 Sep 2024 21:06:38 -0400 Subject: [PATCH 26/85] Document Russian translation update --- CorsixTH/com.corsixth.corsixth.metainfo.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/CorsixTH/com.corsixth.corsixth.metainfo.xml b/CorsixTH/com.corsixth.corsixth.metainfo.xml index d418dd609d..f10b162493 100644 --- a/CorsixTH/com.corsixth.corsixth.metainfo.xml +++ b/CorsixTH/com.corsixth.corsixth.metainfo.xml @@ -26,6 +26,7 @@
  • Dutch translation has been updated
  • Ukranian translation has been updated
  • +
  • Russian translation has been updated

Bug Fixes:

    From 610848d8f442b37620ecca8b4c009ba9b3ad9587 Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Thu, 26 Sep 2024 19:26:05 +0100 Subject: [PATCH 27/85] replaced Billy Savile with Sir Lancelot Spratt --- CorsixTH/Lua/languages/norwegian.lua | 2 +- CorsixTH/Lua/languages/polish.lua | 2 +- CorsixTH/Lua/languages/russian.lua | 2 +- CorsixTH/Lua/languages/simplified_chinese.lua | 2 +- CorsixTH/Lua/languages/traditional_chinese.lua | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/CorsixTH/Lua/languages/norwegian.lua b/CorsixTH/Lua/languages/norwegian.lua index 1592536d1c..7db91c16f5 100644 --- a/CorsixTH/Lua/languages/norwegian.lua +++ b/CorsixTH/Lua/languages/norwegian.lua @@ -2698,7 +2698,7 @@ vip_names = { "Kong Bernard av Nederland", "Aung Sang Su Kyi, den Burmesisk Demokratiske Opposisjonslederen", "Sir Reginald Crumbly", - "Billy Savile OBE", + "Sir Lancelot Spratt", "Rådgiver Crawford Purves", "Rocket Ronnie Jepson", "En Fotballspiller i Eliteserien", diff --git a/CorsixTH/Lua/languages/polish.lua b/CorsixTH/Lua/languages/polish.lua index 74928f3ead..ca70537775 100644 --- a/CorsixTH/Lua/languages/polish.lua +++ b/CorsixTH/Lua/languages/polish.lua @@ -642,7 +642,7 @@ vip_names = { [3] = "Bernard, król Niderlandów", [4] = "Aung Sang Su Kyi, lider birmańskiej opozycji demokratycznej", [5] = "Sir Reginald Crumbly", - [6] = "Billy Savile, Oficer Orderu", + [6] = "Sir Lancelot Spratt", [7] = "Radny Crawford Purves", [8] = "Rakieta Ronnie Jepson", [9] = "Piłkarz ligi Premiership", diff --git a/CorsixTH/Lua/languages/russian.lua b/CorsixTH/Lua/languages/russian.lua index bb83247f90..6a972318fc 100644 --- a/CorsixTH/Lua/languages/russian.lua +++ b/CorsixTH/Lua/languages/russian.lua @@ -2615,7 +2615,7 @@ vip_names = { [3] = "Бернард, король Нидерландов", [4] = "Онг Сян Су Куй, предводитель бирманской демократической оппозиции", [5] = "Сэр Риджинальд Крамбли", - [6] = "Сэр Вилли Сэвил", + [6] = "сэр Ланселот Шпрэтт", [7] = "Советник Кроуфорд Первс", [8] = "«Ракета» Ронни Джепсон", [9] = "Футболист премьер-лиги", diff --git a/CorsixTH/Lua/languages/simplified_chinese.lua b/CorsixTH/Lua/languages/simplified_chinese.lua index 8605eddef5..b6ed5554af 100644 --- a/CorsixTH/Lua/languages/simplified_chinese.lua +++ b/CorsixTH/Lua/languages/simplified_chinese.lua @@ -2098,7 +2098,7 @@ vip_names = { "来自荷兰的伯那德国王", "缅甸民主党领袖:昂山苏蒂", "克朗伯先生", - "比利先生", + "兰斯洛特·斯普拉特爵士", "克劳福议员", "罗尼", "一个超级联赛球星", diff --git a/CorsixTH/Lua/languages/traditional_chinese.lua b/CorsixTH/Lua/languages/traditional_chinese.lua index 6ba3bcfcc5..b894664520 100644 --- a/CorsixTH/Lua/languages/traditional_chinese.lua +++ b/CorsixTH/Lua/languages/traditional_chinese.lua @@ -502,7 +502,7 @@ vip_names = { [3] = "來自荷蘭的伯那德國王", [4] = "緬甸民主黨領袖:翁山蘇姬", [5] = "克朗伯先生", - [6] = "比利先生", + [6] = "蘭斯洛特·斯普拉特爵士", [7] = "克勞福議員", [8] = "羅尼", [9] = "一個超級聯賽球星", From 20d85fbe62392bff4e7e18844b459d0a59570e41 Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Thu, 26 Sep 2024 21:00:41 +0100 Subject: [PATCH 28/85] deleted savile strings, updated Russian VIP strings with localised variants --- CorsixTH/Lua/languages/norwegian.lua | 20 ++++++++--------- CorsixTH/Lua/languages/polish.lua | 2 +- CorsixTH/Lua/languages/russian.lua | 22 +++++++++---------- CorsixTH/Lua/languages/simplified_chinese.lua | 20 ++++++++--------- .../Lua/languages/traditional_chinese.lua | 2 +- 5 files changed, 33 insertions(+), 33 deletions(-) diff --git a/CorsixTH/Lua/languages/norwegian.lua b/CorsixTH/Lua/languages/norwegian.lua index 7db91c16f5..60f31827db 100644 --- a/CorsixTH/Lua/languages/norwegian.lua +++ b/CorsixTH/Lua/languages/norwegian.lua @@ -2693,16 +2693,16 @@ humanoid_name_ends = { -- VIP names vip_names = { health_minister = "Helseministeren", - "Ordföreren i Greater Trumpton", -- the rest is better organized in an array. - "Lawrence Nightingale", - "Kong Bernard av Nederland", - "Aung Sang Su Kyi, den Burmesisk Demokratiske Opposisjonslederen", - "Sir Reginald Crumbly", - "Sir Lancelot Spratt", - "Rådgiver Crawford Purves", - "Rocket Ronnie Jepson", - "En Fotballspiller i Eliteserien", - "L. F. Probst, III", + [1] = "Ordföreren i Greater Trumpton", -- the rest is better organized in an array. + [2] = "Lawrence Nightingale", + [3] = "Kong Bernard av Nederland", + [4] = "Aung Sang Su Kyi, den Burmesisk Demokratiske Opposisjonslederen", + [5] = "Sir Reginald Crumbly", + -- [6] requires replacement (English uses 'Sir Lancelot Spratt') + [7] = "Rådgiver Crawford Purves", + [8] = "Rocket Ronnie Jepson", + [9] = "En Fotballspiller i Eliteserien", + [10] = "L. F. Probst, III", } -- Deseases diff --git a/CorsixTH/Lua/languages/polish.lua b/CorsixTH/Lua/languages/polish.lua index ca70537775..b5272132ef 100644 --- a/CorsixTH/Lua/languages/polish.lua +++ b/CorsixTH/Lua/languages/polish.lua @@ -642,7 +642,7 @@ vip_names = { [3] = "Bernard, król Niderlandów", [4] = "Aung Sang Su Kyi, lider birmańskiej opozycji demokratycznej", [5] = "Sir Reginald Crumbly", - [6] = "Sir Lancelot Spratt", + -- [6] requires replacement (English uses 'Sir Lancelot Spratt') [7] = "Radny Crawford Purves", [8] = "Rakieta Ronnie Jepson", [9] = "Piłkarz ligi Premiership", diff --git a/CorsixTH/Lua/languages/russian.lua b/CorsixTH/Lua/languages/russian.lua index 6a972318fc..c4f6fd6e68 100644 --- a/CorsixTH/Lua/languages/russian.lua +++ b/CorsixTH/Lua/languages/russian.lua @@ -1,4 +1,4 @@ - --[[ Copyright (c) 2011 Sergei Larionov, Alexey Pinyagin, 2021-2024 "Matroftt" + --[[ Copyright (c) 2011 Sergei Larionov, Alexey Pinyagin, 2021-2024 "Matroftt", 2024 Artem Argus (ARGAMX) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in @@ -2610,16 +2610,16 @@ humanoid_name_ends = { [26] = "атич", } vip_names = { - [1] = "Мэр Нижнего Магнитошахтинска", - [2] = "Лоуренс Найтингейл", - [3] = "Бернард, король Нидерландов", - [4] = "Онг Сян Су Куй, предводитель бирманской демократической оппозиции", - [5] = "Сэр Риджинальд Крамбли", - [6] = "сэр Ланселот Шпрэтт", - [7] = "Советник Кроуфорд Первс", - [8] = "«Ракета» Ронни Джепсон", - [9] = "Футболист премьер-лиги", - [10] = "Л. Ф. Пробст III", + [1] = "Хоккеист Александр Очечкин", + [2] = "Мэр Сергей Обянин", + [3] = "Артист Филипп Иркоров", + [4] = "Музыкант Григорий Швепс", + [5] = "Певец Валерий Целадзе", + [6] = "Телеведущий Иван Шмургант", + [7] = "Музыкант Николай Жиробасков", + [8] = "Актер Олег Кабаков", + [9] = "Писатель Борис Макунин", + [10] = "Знаток Александр Груздь", health_minister = "Министр здравоохранения", } diff --git a/CorsixTH/Lua/languages/simplified_chinese.lua b/CorsixTH/Lua/languages/simplified_chinese.lua index b6ed5554af..01ae4aff57 100644 --- a/CorsixTH/Lua/languages/simplified_chinese.lua +++ b/CorsixTH/Lua/languages/simplified_chinese.lua @@ -2093,16 +2093,16 @@ letter = { vip_names = { health_minister = "卫生部部长", - "伟大的查普顿市长", -- the rest is better organized in an array. - "南丁格尔", - "来自荷兰的伯那德国王", - "缅甸民主党领袖:昂山苏蒂", - "克朗伯先生", - "兰斯洛特·斯普拉特爵士", - "克劳福议员", - "罗尼", - "一个超级联赛球星", - "拉里普罗斯特", + [1] = "伟大的查普顿市长", -- the rest is better organized in an array. + [2] = "南丁格尔", + [3] = "来自荷兰的伯那德国王", + [4] = "缅甸民主党领袖:昂山苏蒂", + [5] = "克朗伯先生", + -- [6] requires replacement (English uses 'Sir Lancelot Spratt') + [7] = "克劳福议员", + [8] = "罗尼", + [9] = "一个超级联赛球星", + [10] = "拉里普罗斯特", } -- 43: credits diff --git a/CorsixTH/Lua/languages/traditional_chinese.lua b/CorsixTH/Lua/languages/traditional_chinese.lua index b894664520..f00d0b5dd6 100644 --- a/CorsixTH/Lua/languages/traditional_chinese.lua +++ b/CorsixTH/Lua/languages/traditional_chinese.lua @@ -502,7 +502,7 @@ vip_names = { [3] = "來自荷蘭的伯那德國王", [4] = "緬甸民主黨領袖:翁山蘇姬", [5] = "克朗伯先生", - [6] = "蘭斯洛特·斯普拉特爵士", + -- [6] requires replacement (English uses 'Sir Lancelot Spratt') [7] = "克勞福議員", [8] = "羅尼", [9] = "一個超級聯賽球星", From 2a68261acda5aa269e27ce7156f720a46c6c67bf Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Thu, 26 Sep 2024 22:45:32 +0100 Subject: [PATCH 29/85] added further suggested Russian VIPs --- CorsixTH/Lua/languages/russian.lua | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/CorsixTH/Lua/languages/russian.lua b/CorsixTH/Lua/languages/russian.lua index c4f6fd6e68..7cc89e1108 100644 --- a/CorsixTH/Lua/languages/russian.lua +++ b/CorsixTH/Lua/languages/russian.lua @@ -2610,16 +2610,16 @@ humanoid_name_ends = { [26] = "атич", } vip_names = { - [1] = "Хоккеист Александр Очечкин", - [2] = "Мэр Сергей Обянин", - [3] = "Артист Филипп Иркоров", - [4] = "Музыкант Григорий Швепс", - [5] = "Певец Валерий Целадзе", - [6] = "Телеведущий Иван Шмургант", - [7] = "Музыкант Николай Жиробасков", - [8] = "Актер Олег Кабаков", - [9] = "Писатель Борис Макунин", - [10] = "Знаток Александр Груздь", + [1] = "Мэр Нижнего Магнитошахтинска", + [2] = "Леонид Каневский", + [3] = '«Всезнающий» Онотоле Вассерман', + [4] = "Алексей Лесоповальный, представитель демократической оппозиции", + [5] = "Артист Филипп Иркоров", + [6] = "Телеведущий Иван Шмургант", + [7] = "Музыкант Николай Жиробасков", + [8] = "Актер Олег Кабаков", + [9] = "Писатель Борис Макунин", + [10] = "Градоначальник Сергей Собякин", health_minister = "Министр здравоохранения", } From 4d384e5f0efab4e6e86c256693f74b84e213b19b Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Fri, 27 Sep 2024 18:12:50 +0100 Subject: [PATCH 30/85] replaced single quotes with double quotes --- CorsixTH/Lua/languages/russian.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CorsixTH/Lua/languages/russian.lua b/CorsixTH/Lua/languages/russian.lua index 34b441528f..1ac6879ca6 100644 --- a/CorsixTH/Lua/languages/russian.lua +++ b/CorsixTH/Lua/languages/russian.lua @@ -2612,7 +2612,7 @@ humanoid_name_ends = { vip_names = { [1] = "Мэр Нижнего Магнитошахтинска", [2] = "Леонид Каневский", - [3] = '«Всезнающий» Онотоле Вассерман', + [3] = "«Всезнающий» Онотоле Вассерман", [4] = "Алексей Лесоповальный, представитель демократической оппозиции", [5] = "Артист Филипп Иркоров", [6] = "Телеведущий Иван Шмургант", From f888847165df765de7f58f646937201563c50eb9 Mon Sep 17 00:00:00 2001 From: lewri Date: Mon, 30 Sep 2024 18:17:06 +0100 Subject: [PATCH 31/85] 0.68.0 Release --- CorsixTH/Lua/app.lua | 10 +- CorsixTH/com.corsixth.corsixth.metainfo.xml | 117 ++++++++++++++++++++ CorsixTH/corsix-th.6 | 2 +- WindowsInstaller/Win32Script.nsi | 2 +- changelog.txt | 2 +- 5 files changed, 123 insertions(+), 10 deletions(-) diff --git a/CorsixTH/Lua/app.lua b/CorsixTH/Lua/app.lua index f2ad211ac0..6abcfdcb6c 100644 --- a/CorsixTH/Lua/app.lua +++ b/CorsixTH/Lua/app.lua @@ -29,7 +29,7 @@ local runDebugger = corsixth.require("run_debugger") -- and add compatibility code in afterLoad functions -- Recommended: Also replace/Update the summary comment -local SAVEGAME_VERSION = 193 -- CorsixTH 0.68.0~rc2 +local SAVEGAME_VERSION = 194 -- CorsixTH 0.68.0 release class "App" @@ -1641,14 +1641,10 @@ function App:getVersion(version) -- Versioning format is major.minor.revision (required) Patch (optional) -- Old versions (<= 0.67) retain existing format -- All patch versions should be retained in this table (due to be replaced, see PR2518) - if ver > 193 then + if ver > 194 then return "Trunk" - elseif ver > 192 then - return "v0.68.0 RC 2" - elseif ver > 191 then - return "v0.68.0 RC 1" elseif ver > 180 then - return "v0.68.0 Beta 1" + return "v0.68.0" elseif ver > 170 then return "v0.67" elseif ver > 156 then diff --git a/CorsixTH/com.corsixth.corsixth.metainfo.xml b/CorsixTH/com.corsixth.corsixth.metainfo.xml index f10b162493..23d61f5650 100644 --- a/CorsixTH/com.corsixth.corsixth.metainfo.xml +++ b/CorsixTH/com.corsixth.corsixth.metainfo.xml @@ -20,6 +20,123 @@ com.corsixth.corsixth.desktop + + +

    New Features:

    +
      +
    • In-game movies now play for users using TH Data directly from a + .ISO file
    • +
    • Custom campaign creators can now optionally use the original + level advance movie when progressing through the campaign
    • +
    • The Map Editor has received some love including new features, + fixes, and jukebox controls
    • +
    • Long windows now behave properly in the game if they get + intersected by an adjacent wall
    • +
    • You can now control the Jukebox from the Main Menu by going to + Options > Jukebox
    • +
    • External (non-TH) XMI files are now supported by the Jukebox
    • +
    • The adviser now tells you the cost of replacing your machine if + you cannot currently afford it
    • +
    • More cheats!
    • +
    • [Experimental] Right mouse panning can now be used instead of + using the middle mouse button. Enable it in the configuration + file
    • +
    • [Experimental] We're closer to fully implementing falling + actions! Get a sneak peek and get the chance to push people over + by enabling it in the configuration file/debug menu
    • +
    +

    Changes:

    +
      +
    • The demo movie will no longer play and cause jumpscares at the + main menu if the CorsixTH window is not in focus
    • +
    • Game speeds are now more closely aligned with the original + game
    • +
    • Improvements to handling of win/lose conditions, and the + progress report
    • +
    • Staff tiredness levels are now taken from the level config file + based on difficulty level of the main campaign
    • +
    • You can no longer win a level if you still have outstanding + loans
    • +
    • Emergencies will now be announced once patients actually begin + arriving instead of at the start
    • +
    • Errors with music playback will now attempt to provide more + helpful information in the console
    • +
    • Level briefings now show before the in-game tutorial
    • +
    • The first patient of a level will now arrive faster after + opening the hospital
    • +
    • The information dialog box is now more closely aligned with the + original game
    • +
    • The tip of the day window should no longer be obscured in the + main menu
    • +
    • The load/save windows now have better labelling
    • +
    • Unavailable languages are shown as disabled until you select a + Unicode font
    • +
    • Support is added to auto-detect a Theme Hospital install via GOG + Galaxy
    • +
    +

    Translations:

    +
      +
    • Ukrainian translation added
    • +
    • Dutch translation has been updated
    • +
    • Italian translation has been updated
    • +
    • Russian translation has been updated
    • +
    • Spanish translation has been updated
    • +
    • French translation has been updated
    • +
    • Brazilian-Portuguese translation has been updated
    • +
    • Some unused language strings have been cleaned up
    • +
    • Custom campaign and level creators can now optionally add + translated strings for campaign description, level briefing, and + winning text
    • +
    +

    Bug Fixes:

    +
      +
    • Swing (double) doors will no longer crash your game if you built + rooms that used them while paused
    • +
    • Fixed a bug for NVIDIA users who didn't like graphical + corruption when playing fullscreen at non-native resolutions
    • +
    • Games should no longer crash irrecoverably because you have a + 4k monitor :)
    • +
    • The game will now exit to the main menu cleanly if a problem + occurred trying to load a new level or map
    • +
    • Staff who have left the hospital can no longer ask for a + raise
    • +
    • Fixed a bug where some staff may have no initial before + surname
    • +
    • Patients can no longer litter outdoors
    • +
    • Patients waiting for a player decision no longer lose their mood icon + on vomit/pee
    • +
    • Fixed a bug where an unreachable reception desk could cause a + crash
    • +
    • The Computer and Atom Analyser now make button sounds as + originally intended
    • +
    • The mark for vaccination action now makes a sound as originally + intended
    • +
    • Fixed a rare bug where edges of map tiles for parcels could + cause unintended behaviour when purchasing plots
    • +
    • Active cheats will now persist across saves
    • +
    • Audio settings have better safeguards against no audio enabled/ + no background music
    • +
    • Movies will no longer attempt to play audio when global audio is + off
    • +
    • Config values using brackets (such as a custom music directory) + will now work properly
    • +
    • Custom campaigns menu now will use a scrollbar for long campaign + descriptions
    • +
    • Continue Game now properly targets files explicitly ending in + the .sav format
    • +
    • Tooltips for language menu now align with list items. Please note we + are aware of an issue where some languages don't show a + tooltip
    • +
    • Fixed an instance where information boxes could load pink from + older savegames
    • +
    • Implemented a more permanent fix for the money bar being drawn + incorrectly in some CJK and Cyrllic languages
    • +
    • Fixed a crash on exit that could occur in some systems
    • +
    • Mouse panning behaviour has been made more responsive and + accurate
    • +
    +
    +

    Translations:

    diff --git a/CorsixTH/corsix-th.6 b/CorsixTH/corsix-th.6 index ac8587dd5b..135e8849f5 100644 --- a/CorsixTH/corsix-th.6 +++ b/CorsixTH/corsix-th.6 @@ -95,4 +95,4 @@ Copyright CorsixTH contributors. CorsixTH is available under the MIT license. .Pp For the full license text see: -.Lk https://raw.githubusercontent.com/CorsixTH/CorsixTH/v0.68.0-rc2/LICENSE.txt +.Lk https://raw.githubusercontent.com/CorsixTH/CorsixTH/v0.68.0/LICENSE.txt diff --git a/WindowsInstaller/Win32Script.nsi b/WindowsInstaller/Win32Script.nsi index 2855bbaa6f..d2dd24012e 100644 --- a/WindowsInstaller/Win32Script.nsi +++ b/WindowsInstaller/Win32Script.nsi @@ -24,7 +24,7 @@ ;---------------------------------- Definitions for the game ----------------------------------- !define PRODUCT_NAME "CorsixTH" -!define PRODUCT_VERSION "0.68.0-rc2" +!define PRODUCT_VERSION "0.68.0" !define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" !define PRODUCT_UNINST_ROOT_KEY "HKLM" !define PRODUCT_STARTMENU_REGVAL "NSIS:StartMenuDir" diff --git a/changelog.txt b/changelog.txt index e4c09d0cb3..d5024b6ea9 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,5 +1,5 @@ ------------------------------------------------------------------------------- -CorsixTH 0.68.0 - released September 2024 +CorsixTH 0.68.0 - released October 2024 ------------------------------------------------------------------------------- # New Features/Enhancements * In-game movies now play for users using TH Data directly from a .ISO file From daad5d7d7ce77e070530ad6543605fe45f09979f Mon Sep 17 00:00:00 2001 From: Artem Argus Date: Mon, 30 Sep 2024 23:16:14 +0300 Subject: [PATCH 32/85] Reduce machine strength chance on repair tuned to match TH --- CorsixTH/Lua/entities/machine.lua | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/CorsixTH/Lua/entities/machine.lua b/CorsixTH/Lua/entities/machine.lua index b569b9afd9..b04db6aeac 100644 --- a/CorsixTH/Lua/entities/machine.lua +++ b/CorsixTH/Lua/entities/machine.lua @@ -289,14 +289,19 @@ end function Machine:machineRepaired(room) room.needs_repair = nil - local str = self.strength - if self.times_used/str > 0.55 then - self.strength = str - 1 + + local current_strength = self.strength + local used_out_rate = self.times_used / current_strength + + // calculate chance of strength reducing + local should_reduce_strength = math.random() < used_out_rate + if should_reduce_strength then + self.strength = current_strength - 1 end + self.times_used = 0 self:setRepairing(nil) setSmoke(self, false) - local taskIndex = self.hospital:getIndexOfTask(self.tile_x, self.tile_y, "repairing") self.hospital:removeHandymanTask(taskIndex, "repairing") end From 5c5adfca8ea763745b485b6b913e442215f64f1b Mon Sep 17 00:00:00 2001 From: Artem Argus Date: Mon, 30 Sep 2024 23:31:37 +0300 Subject: [PATCH 33/85] Reduce machine strength chance on repair tuned to match TH --- CorsixTH/Lua/entities/machine.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CorsixTH/Lua/entities/machine.lua b/CorsixTH/Lua/entities/machine.lua index b04db6aeac..1424f954a9 100644 --- a/CorsixTH/Lua/entities/machine.lua +++ b/CorsixTH/Lua/entities/machine.lua @@ -293,7 +293,7 @@ function Machine:machineRepaired(room) local current_strength = self.strength local used_out_rate = self.times_used / current_strength - // calculate chance of strength reducing + -- calculate chance of strength reducing local should_reduce_strength = math.random() < used_out_rate if should_reduce_strength then self.strength = current_strength - 1 From 053fd1821cb1ae9762cc6af7a47a4e4b7fc0f583 Mon Sep 17 00:00:00 2001 From: lewri Date: Thu, 3 Oct 2024 20:30:05 +0100 Subject: [PATCH 34/85] Change gamelog render to yaml --- .github/ISSUE_TEMPLATE/bug_report.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index a9e869a8d5..bb326373ee 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -110,7 +110,7 @@ body: Information about the configuration file can be found [here](https://github.com/CorsixTH/CorsixTH/wiki/Configuration-File). You can find gamelog.txt at the same location as the config file." placeholder: Paste gamelog.txt output here - render: bash + render: yaml # Extra Info - type: textarea id: extra From 05f49fa5ab8536208b5ad0c92a9d52b36ae808c9 Mon Sep 17 00:00:00 2001 From: lewri Date: Sun, 13 Oct 2024 18:15:04 +0100 Subject: [PATCH 35/85] Allocate hotfix savegame versions --- CorsixTH/Lua/app.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CorsixTH/Lua/app.lua b/CorsixTH/Lua/app.lua index 6abcfdcb6c..31da98a524 100644 --- a/CorsixTH/Lua/app.lua +++ b/CorsixTH/Lua/app.lua @@ -29,7 +29,7 @@ local runDebugger = corsixth.require("run_debugger") -- and add compatibility code in afterLoad functions -- Recommended: Also replace/Update the summary comment -local SAVEGAME_VERSION = 194 -- CorsixTH 0.68.0 release +local SAVEGAME_VERSION = 204 -- Hotfix buffer post 0.68.0 class "App" From 27e47d534196afb4f20c7ef7c630fff59c9233a5 Mon Sep 17 00:00:00 2001 From: Artem Argus Gusakov Date: Tue, 15 Oct 2024 10:51:08 +0300 Subject: [PATCH 36/85] #2663 Fix for 'Lua error on room delete when machine window open' --- CorsixTH/Lua/room.lua | 35 ++++++++++++++++++++++------------- 1 file changed, 22 insertions(+), 13 deletions(-) diff --git a/CorsixTH/Lua/room.lua b/CorsixTH/Lua/room.lua index a62df6ad35..2abd7c61e6 100644 --- a/CorsixTH/Lua/room.lua +++ b/CorsixTH/Lua/room.lua @@ -629,18 +629,29 @@ function Room:onHumanoidLeave(humanoid) -- The player might be waiting to edit this room if not self.is_active then - local i = 0 + local people_in_room = 0 for _ in pairs(self.humanoids) do - i = i + 1 + people_in_room = people_in_room + 1 end - if i == 0 then - local ui = self.world.ui - ui:addWindow(UIEditRoom(ui, self)) - ui:setCursor(ui.default_cursor) + if people_in_room == 0 then + self:enterEditMode() end end end +function Room:enterEditMode() + local ui = self.world.ui + + -- If we have the window for this room machine open, close it + local window = ui:getWindow(UIMachine) + if window and window.machine and window.machine:getRoom() == self then + window:close() + end + + ui:addWindow(UIEditRoom(ui, self)) + ui:setCursor(ui.default_cursor) +end + function Room:shouldHavePatientReenter(patient) return not patient:hasLeavingAction() end @@ -969,11 +980,11 @@ end function Room:tryToEdit() self:deactivate() - local i = 0 + local people_in_room = 0 -- Tell all humanoids that they should leave -- If someone is entering the room right now they are also counted. if self.door.user and self.door.user:getCurrentAction().is_entering then - i = 1 + people_in_room = 1 end for humanoid, _ in pairs(self.humanoids) do if not humanoid:isLeaving() then @@ -985,13 +996,11 @@ function Room:tryToEdit() humanoid:queueAction(MeanderAction()) end end - i = i + 1 + people_in_room = people_in_room + 1 end -- If there were no people inside we're ready to edit the room - if i == 0 then - local ui = self.world.ui - ui:addWindow(UIEditRoom(ui, self)) - ui:setCursor(ui.default_cursor) + if people_in_room == 0 then + self:enterEditMode() end end From 654b888ad2997b079e684df9e0e74511a0e6c564 Mon Sep 17 00:00:00 2001 From: Jetenergy Date: Tue, 15 Oct 2024 18:50:04 +0200 Subject: [PATCH 37/85] Updated change save_to_temp translation for the dutch language (#2673) --- CorsixTH/Lua/languages/dutch.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CorsixTH/Lua/languages/dutch.lua b/CorsixTH/Lua/languages/dutch.lua index c7513e0644..484732fe91 100644 --- a/CorsixTH/Lua/languages/dutch.lua +++ b/CorsixTH/Lua/languages/dutch.lua @@ -2278,7 +2278,7 @@ errors = { load_level_prefix = "Fout bij het laden van level: ", load_map_prefix = "Fout bij het laden van map: ", music = "Er zijn afspeelproblemen met een of meer bestanden in uw muziekfolder. Problematische bestanden worden uitgeschakeld in de jukebox. Zie het consolevenster voor meer informatie.", - save_to_tmp = "Het bestand op %s kon niet worden gebruikt. Het spel is opgeslagen op %s. Fout: %s", + save_to_tmp = "Poging om naar %s te schrijven is mislukt. Het bestand is in plaats daarvan geschreven naar de tijdelijke locatie %s vanwege de fout: %s", } diseases = { diag_ward = { From 70387a7774fdbae3847f65ee67b33e2273e828fe Mon Sep 17 00:00:00 2001 From: Matroftt <91145555+Matroftt@users.noreply.github.com> Date: Sat, 19 Oct 2024 06:50:06 +0300 Subject: [PATCH 38/85] Free build improvements in town map (#2616) * Display 0$ parcel cost if playing in free build - now heating costs is changed in free build mode to 0$, not display Co-authored-by: lewri --- CorsixTH/Lua/dialogs/fullscreen/town_map.lua | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/CorsixTH/Lua/dialogs/fullscreen/town_map.lua b/CorsixTH/Lua/dialogs/fullscreen/town_map.lua index 6aee00ea66..1a788ed77d 100644 --- a/CorsixTH/Lua/dialogs/fullscreen/town_map.lua +++ b/CorsixTH/Lua/dialogs/fullscreen/town_map.lua @@ -188,7 +188,8 @@ function UITownMap:draw(canvas, x, y) self.info_font:draw(canvas, radiators, x + 95, y + 265) -- Heating costs - local heating_costs = math.floor(((hospital.heating.radiator_heat *10)* radiators)* 7.5) + local heating_costs = app.config.free_build_mode and 0 or + math.floor(((hospital.heating.radiator_heat *10)* radiators)* 7.5) self.info_font:draw(canvas, ("%8i"):format(heating_costs), x + 100, y + 355) -- Draw balance with temporary offset in unicode languages @@ -303,7 +304,8 @@ function UITownMap:draw(canvas, x, y) local owner_num = map.th:getPlotOwner(self.hover_plot) if owner_num == 0 then owner = _S.town_map.for_sale - price = "$" .. map:getParcelPrice(self.hover_plot) + price = app.config.free_build_mode and "$0" or + ("$" .. map:getParcelPrice(self.hover_plot)) else owner = world.hospitals[owner_num].name end From 8689cd6a7ca777705ef31aa1440309293f7a08aa Mon Sep 17 00:00:00 2001 From: Alberth289346 Date: Sat, 19 Oct 2024 23:39:27 +0200 Subject: [PATCH 39/85] Rename canPeePukeOrFall (#2686) * Add new Luadoc, or change plain comment to Luadoc. * Rename the parameter to express it is an action. * Rename canPeePukeOrFall to atFullyEmptyTile --- CorsixTH/Lua/entities/humanoids/patient.lua | 22 ++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/CorsixTH/Lua/entities/humanoids/patient.lua b/CorsixTH/Lua/entities/humanoids/patient.lua index 655ae7b704..cfe730907a 100644 --- a/CorsixTH/Lua/entities/humanoids/patient.lua +++ b/CorsixTH/Lua/entities/humanoids/patient.lua @@ -158,7 +158,7 @@ function Patient:setDiagnosed() self:updateDynamicInfo() end --- Modifies the diagnosis progress of a patient. +--! Modifies the diagnosis progress of a patient. -- incrementValue can be either positive or negative. function Patient:modifyDiagnosisProgress(incrementValue) self.diagnosis_progress = math.min(self.hospital.policies["stop_procedure"], @@ -171,7 +171,7 @@ function Patient:modifyDiagnosisProgress(incrementValue) self:updateDynamicInfo() end --- Updates the patients diagnostic progress based on the doctors skill +--! Updates the patients diagnostic progress based on the doctors skill -- called when they are done using a diagnosis room function Patient:completeDiagnosticStep(room) -- Base: depending on difficulty of disease as set in sam file @@ -204,7 +204,7 @@ function Patient:completeDiagnosticStep(room) self:modifyDiagnosisProgress(diagnosis_base + (diagnosis_bonus * multiplier)) end --- Sets the hospital for the patient - additionally removing them from a +--! Sets the hospital for the patient - additionally removing them from a -- hospital if they already belong to one. For player hospitals, patients who -- are not debug or emergency patients are made to seek a reception desk. --!param hospital (Hospital): hospital to assign to patient @@ -349,11 +349,15 @@ function Patient:die() self:setDynamicInfoText(_S.dynamic_info.patient.actions.dying) end --- Actions we can interrupt for in the canPeePukeOrFall function +-- Actions we can interrupt when at a fully empty tile. local good_actions = {walk=true, idle=true, seek_room=true, queue=true} -function Patient:canPeePukeOrFall(current) - if not good_actions[current.name] then return false end +--! Test whether the current tile of the patient is useful for inserting an +-- action that needs a fully empty tile in the hospital. +--!param cur_action Current action of the patient. +--!return Whether the tile can be used for inserting an action. +function Patient:atFullyEmptyTile(cur_action) + if not good_actions[cur_action.name] then return false end if self.going_home then return false end local th = self.world.map.th @@ -369,7 +373,7 @@ end function Patient:falling(player_init) local current = self:getCurrentAction() current.keep_reserved = true - if self.falling_anim and self:canPeePukeOrFall(current) and self.has_fallen == 1 then + if self.falling_anim and self:atFullyEmptyTile(current) and self.has_fallen == 1 then self.has_fallen = 2 self:queueAction(FallingAction(), 1) self:queueAction(OnGroundAction(), 2) @@ -401,7 +405,7 @@ end function Patient:vomit() local current = self:getCurrentAction() --Only vomit under these conditions. Maybe I should add a vomit for patients in queues too? - if self:canPeePukeOrFall(current) and self.has_vomitted == 0 then + if self:atFullyEmptyTile(current) and self.has_vomitted == 0 then self:queueAction(VomitAction(), 1) self:interruptAndRequeueAction(current, 2) self.has_vomitted = self.has_vomitted + 1 @@ -414,7 +418,7 @@ end function Patient:pee() local current = self:getCurrentAction() --Only pee under these conditions. As with vomit, should they also pee if in a queue? - if self:canPeePukeOrFall(current) then + if self:atFullyEmptyTile(current) then self:queueAction(PeeAction(), 1) self:interruptAndRequeueAction(current, 2) self:setMood("poo", "deactivate") From 183d3edb4fdf059ccac910414d9cd91e7bd2763e Mon Sep 17 00:00:00 2001 From: Matroftt <91145555+Matroftt@users.noreply.github.com> Date: Sun, 20 Oct 2024 00:54:28 +0300 Subject: [PATCH 40/85] Increase object limit --- CorsixTH/Lua/dialogs/furnish_corridor.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CorsixTH/Lua/dialogs/furnish_corridor.lua b/CorsixTH/Lua/dialogs/furnish_corridor.lua index 142945a945..2eb65018d2 100644 --- a/CorsixTH/Lua/dialogs/furnish_corridor.lua +++ b/CorsixTH/Lua/dialogs/furnish_corridor.lua @@ -136,8 +136,8 @@ function UIFurnishCorridor:purchaseItem(index, quantity) quantity = quantity + o.qty if quantity < o.min_qty then quantity = o.min_qty - elseif quantity > 99 then - quantity = 99 + elseif quantity > 100 then + quantity = 100 end quantity = quantity - o.qty local hospital = self.ui.hospital From b6d725520f4807c0150bdf07e9c6c7002a652217 Mon Sep 17 00:00:00 2001 From: lewri Date: Sun, 20 Oct 2024 17:01:02 +0100 Subject: [PATCH 41/85] Revert "Increase object limit" This reverts commit 183d3edb4fdf059ccac910414d9cd91e7bd2763e. --- CorsixTH/Lua/dialogs/furnish_corridor.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CorsixTH/Lua/dialogs/furnish_corridor.lua b/CorsixTH/Lua/dialogs/furnish_corridor.lua index 2eb65018d2..142945a945 100644 --- a/CorsixTH/Lua/dialogs/furnish_corridor.lua +++ b/CorsixTH/Lua/dialogs/furnish_corridor.lua @@ -136,8 +136,8 @@ function UIFurnishCorridor:purchaseItem(index, quantity) quantity = quantity + o.qty if quantity < o.min_qty then quantity = o.min_qty - elseif quantity > 100 then - quantity = 100 + elseif quantity > 99 then + quantity = 99 end quantity = quantity - o.qty local hospital = self.ui.hospital From e2ecbd56df8890ba629b2b4f987777384446e56b Mon Sep 17 00:00:00 2001 From: Artem Argus Date: Fri, 25 Oct 2024 14:16:33 +0300 Subject: [PATCH 42/85] #2622 fix bug: room stats reset on room edit (#2693) * #2622 fix bug: room stats reset on room edit * #2622 fix bug: room stats reset on room edit. Review improvements. * #2622 fix bug: room stats reset on room edit. Review improvements. * Update CorsixTH/Lua/room.lua Co-authored-by: lewri --------- Co-authored-by: Artem Argus Gusakov Co-authored-by: lewri --- CorsixTH/Lua/entities/machine.lua | 3 ++- CorsixTH/Lua/objects/door.lua | 12 ++++++++++++ CorsixTH/Lua/room.lua | 18 ++++++++++++++++-- 3 files changed, 30 insertions(+), 3 deletions(-) diff --git a/CorsixTH/Lua/entities/machine.lua b/CorsixTH/Lua/entities/machine.lua index 1424f954a9..c389e06095 100644 --- a/CorsixTH/Lua/entities/machine.lua +++ b/CorsixTH/Lua/entities/machine.lua @@ -443,7 +443,7 @@ end function Machine:getState() local state = Object.getState(self) state.total_usage = self.total_usage - + state.strength = self.strength return state end @@ -457,6 +457,7 @@ function Machine:setState(state) Object.setState(self, state) if state then self.total_usage = state.total_usage + self.strength = state.strength end end diff --git a/CorsixTH/Lua/objects/door.lua b/CorsixTH/Lua/objects/door.lua index ccc5b892a4..99f6f3bf55 100644 --- a/CorsixTH/Lua/objects/door.lua +++ b/CorsixTH/Lua/objects/door.lua @@ -49,6 +49,18 @@ function Door:Door(...) -- self.user = "locked" -- prevents doors from being used (debug aid) end +--! Updates room new door with values from previous door. +-- New door is typically result of room editing. +--!param room (Room) The room this door belongs to. +--!param old_door (Door) Previous door of this room. +function Door:setupDoor(room, old_door) + if old_door and old_door.queue then + -- for room edit case update new queue with values from old queue + self.queue.visitor_count = old_door.queue.visitor_count + self.queue.max_size = old_door.queue.max_size + end + self.room = room +end function Door:getRoom() return self.room diff --git a/CorsixTH/Lua/room.lua b/CorsixTH/Lua/room.lua index 2abd7c61e6..29cee92df5 100644 --- a/CorsixTH/Lua/room.lua +++ b/CorsixTH/Lua/room.lua @@ -34,14 +34,28 @@ function Room:Room(x, y, w, h, id, room_info, world, hospital, door, door2) self:initRoom(x, y, w, h, door, door2) end +--! Initialises primary components of the room. +-- Additionally, if there is already a room, e.g. it is being moved, +-- we can just reinit it by calling this, not make a new one. +--!param x (co-ordinate) starting tile +--!param y (co-ordinate) starting tile +--!param w (num) width of room +--!param h (num) height of room +--!param door (object) primary door for room +--!param door2 (object) optional secondary door (e.g. swing doors) function Room:initRoom(x, y, w, h, door, door2) self.x = x self.y = y self.width = w self.height = h self.maximum_patients = 1 -- A good default for most rooms - door.room = self - self.door = door + + -- setup new door and new queue + local new_door = door + local old_door = self.door + new_door:setupDoor(self, old_door) + self.door = new_door + -- If it's a swing door we have two doors self.door2 = door2 if not self:hasQueueDialog() then From 5cf630a60d7dae17c2f06f07f6ae7b88aac8d14d Mon Sep 17 00:00:00 2001 From: Artem Argus Date: Fri, 25 Oct 2024 18:24:12 +0300 Subject: [PATCH 43/85] Prevent staff grab spamming (#2666) * Prevent staff grab spamming * Added staff window close on old save load. * app.lua bump savegame version. * Refactor to make 'Staff:setPickup' create the instance of 'PickupAction' by itself. --------- Co-authored-by: Artem Argus Gusakov --- CorsixTH/Lua/app.lua | 2 +- CorsixTH/Lua/dialogs/staff_dialog.lua | 16 +++++++++++----- CorsixTH/Lua/entities/humanoids/staff.lua | 15 +++++++++++++-- 3 files changed, 25 insertions(+), 8 deletions(-) diff --git a/CorsixTH/Lua/app.lua b/CorsixTH/Lua/app.lua index 31da98a524..f95d4eb681 100644 --- a/CorsixTH/Lua/app.lua +++ b/CorsixTH/Lua/app.lua @@ -29,7 +29,7 @@ local runDebugger = corsixth.require("run_debugger") -- and add compatibility code in afterLoad functions -- Recommended: Also replace/Update the summary comment -local SAVEGAME_VERSION = 204 -- Hotfix buffer post 0.68.0 +local SAVEGAME_VERSION = 205 -- Prevent staff grab spamming fix class "App" diff --git a/CorsixTH/Lua/dialogs/staff_dialog.lua b/CorsixTH/Lua/dialogs/staff_dialog.lua index 3c0a0aca85..016ef21e0c 100644 --- a/CorsixTH/Lua/dialogs/staff_dialog.lua +++ b/CorsixTH/Lua/dialogs/staff_dialog.lua @@ -100,7 +100,7 @@ function UIStaff:UIStaff(ui, staff) self:addPanel(303, 0, 253) -- View circle midpiece self:addPanel(304, 6, 302) -- View circle bottom self:addPanel(307, 106, 253):makeButton(0, 0, 50, 50, 308, self.fireStaff):setTooltip(_S.tooltip.staff_window.sack) - self:addPanel(309, 164, 253):makeButton(0, 0, 37, 50, 310, self.placeStaff):setTooltip(_S.tooltip.staff_window.pick_up) + self:addPanel(309, 164, 253):makeButton(0, 0, 37, 50, 310, self.pickupStaff):setTooltip(_S.tooltip.staff_window.pick_up) else self:addPanel(302, 5, 178) -- View circle top/Wage self:addPanel(303, 0, 226) -- View circle midpiece @@ -109,7 +109,7 @@ function UIStaff:UIStaff(ui, staff) self:addColourPanel(32, 141, 171, 39, 85, 202, 219) -- Hides Skills end self:addPanel(307, 106, 226):makeButton(0, 0, 50, 50, 308, self.fireStaff):setTooltip(_S.tooltip.staff_window.sack) - self:addPanel(309, 164, 226):makeButton(0, 0, 37, 50, 310, self.placeStaff):setTooltip(_S.tooltip.staff_window.pick_up) + self:addPanel(309, 164, 226):makeButton(0, 0, 37, 50, 310, self.pickupStaff):setTooltip(_S.tooltip.staff_window.pick_up) end self:addPanel(305, 178, 18):makeButton(0, 0, 24, 24, 306, self.close):setTooltip(_S.tooltip.staff_window.close) @@ -300,9 +300,8 @@ function UIStaff:onTick() return Window.onTick(self) end -function UIStaff:placeStaff() - self.staff.pickup = true - self.staff:setNextAction(PickupAction(self.ui):setTodoClose(self), true) +function UIStaff:pickupStaff() + self.staff:setPickup(self.ui, self) end function UIStaff:fireStaff() @@ -385,3 +384,10 @@ function UIStaff:hitTest(x, y) return Window.hitTest(self, x, y) or is_in_view_circle(x, y, self.staff.profile.humanoid_class == "Handyman") end +function UIStaff:afterLoad(old, new) + if old < 205 then + self:close() + end + Window.afterLoad(self, old, new) +end + diff --git a/CorsixTH/Lua/entities/humanoids/staff.lua b/CorsixTH/Lua/entities/humanoids/staff.lua index 17c531e1b0..40005a82d7 100644 --- a/CorsixTH/Lua/entities/humanoids/staff.lua +++ b/CorsixTH/Lua/entities/humanoids/staff.lua @@ -290,8 +290,7 @@ function Staff:onClick(ui, button) ui:addWindow(UIStaff(ui, self)) end elseif button == "right" then - self.pickup = true - self:setNextAction(PickupAction(ui), true) + self:setPickup(ui, nil) end Humanoid.onClick(self, ui, button) end @@ -440,6 +439,18 @@ function Staff:goToStaffRoom() end end +-- Function to set pickup action on staff. Pickup action can be deferred. +function Staff:setPickup(ui, window_to_close) + if not self.pickup then -- check if we already added pickup Action in actions queue + self.pickup = true + local pickup_action = PickupAction(ui) + if window_to_close then -- if we want to close some window after pickup happened + pickup_action = pickup_action:setTodoClose(window_to_close) + end + self:setNextAction(pickup_action, true) + end +end + function Staff:onPlaceInCorridor() local world = self.world local notify_object = world:getObjectToNotifyOfOccupants(self.tile_x, self.tile_y) From b29f486101ec8d387d6f93ba8386d134dc0b9af1 Mon Sep 17 00:00:00 2001 From: Matroftt <91145555+Matroftt@users.noreply.github.com> Date: Fri, 25 Oct 2024 18:29:56 +0300 Subject: [PATCH 44/85] Freeze patient's treatment cost when agreeing to pay (#2652) * Refactor AgreesToPay * Update hospital.lua * Remove unused variable in setTreatmentPrice * Apply suggestions from code review * Do not reset pay_amount in patient --------- Co-authored-by: lewri --- CorsixTH/Lua/entities/humanoids/patient.lua | 11 ++++++++--- CorsixTH/Lua/hospital.lua | 4 +++- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/CorsixTH/Lua/entities/humanoids/patient.lua b/CorsixTH/Lua/entities/humanoids/patient.lua index cfe730907a..7d0152c483 100644 --- a/CorsixTH/Lua/entities/humanoids/patient.lua +++ b/CorsixTH/Lua/entities/humanoids/patient.lua @@ -36,6 +36,7 @@ function Patient:Patient(...) self.action_string = "" self.cured = false self.infected = false + self.pay_amount = 0 -- To distinguish between actually being dead and having a nil hospital self.dead = false -- Is the patient reserved for a particular nurse when being vaccinated @@ -298,11 +299,15 @@ end --! Returns true if patient agrees to pay for the given treatment. --!param disease_id (string): The id of the disease to test function Patient:agreesToPay(disease_id) - local casebook = self.hospital.disease_casebook[disease_id] + local hosp = self.hospital + local casebook = hosp.disease_casebook[disease_id] local price_distortion = self:getPriceDistortion(casebook) - local is_over_priced = price_distortion > self.hospital.over_priced_threshold + local is_over_priced = price_distortion > hosp.over_priced_threshold + + if is_over_priced and math.random(1, 5) == 1 then return false end + self.pay_amount = hosp:getTreatmentPrice(disease_id) - return not (is_over_priced and math.random(1, 5) == 1) + return true end --! Either the patient is cured, or he/she dies. diff --git a/CorsixTH/Lua/hospital.lua b/CorsixTH/Lua/hospital.lua index 4b90d1e598..9fe0917c95 100644 --- a/CorsixTH/Lua/hospital.lua +++ b/CorsixTH/Lua/hospital.lua @@ -1399,7 +1399,8 @@ function Hospital:receiveMoneyForTreatment(patient) else reason = _S.transactions.cure_colon .. " " .. casebook.disease.name end - local amount = self:getTreatmentPrice(disease_id) + local amount = patient.pay_amount or 0 + amount = amount > 0 and amount or self:getTreatmentPrice(disease_id) -- 25% of the payments now go through insurance if patient.insurance_company then @@ -1412,6 +1413,7 @@ function Hospital:receiveMoneyForTreatment(patient) end casebook.money_earned = casebook.money_earned + amount patient.world:newFloatingDollarSign(patient, amount) + patient.pay_amount = 0 end end From e342b532cbf16b87a7ad3fb585d499022b182005 Mon Sep 17 00:00:00 2001 From: Toby Lane Date: Sun, 2 Jun 2024 08:16:05 +0100 Subject: [PATCH 45/85] Add progress dialog icons from any TH data file --- .../dialogs/fullscreen/progress_report.lua | 26 +++++++++---------- CorsixTH/Lua/endconditions.lua | 5 ++-- 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua b/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua index c9c8344ecb..418b3f82d8 100644 --- a/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua +++ b/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua @@ -37,7 +37,12 @@ function UIProgressReport:UIProgressReport(ui) self.red_font = gfx:loadFont("QData", "Font101V", false, palette) self.normal_font = gfx:loadFont("QData", "Font100V", false, palette) self.small_font = gfx:loadFont("QData", "Font106V") - self.panel_sprites = gfx:loadSpriteTable("QData", "Rep02V", true, palette) + -- Load all sprite tables needed for all goal icons + self.panel_sprites_table = { + MPointer = gfx:loadSpriteTable("Data", "MPointer"), + Rep02V = gfx:loadSpriteTable("QData", "Rep02V", true, palette) + } + self.panel_sprites = self.panel_sprites_table.Rep02V -- The default goals icons end) then ui:addWindow(UIInformation(ui, {_S.errors.dialog_missing_graphics})) self:close() @@ -71,7 +76,9 @@ function UIProgressReport:UIProgressReport(ui) else tooltip = _S.tooltip.status[crit_name]:format(math.floor(res_value)) end - self:addPanel(crit_table.icon, x, 240) + if not crit_table.icon_file then -- Icons from QData/Rep02V + self:addPanel(crit_table.icon, x, 240) + end self:makeTooltip(tooltip, x, 180, x + 30, 180 + 90) x = x + 30 end @@ -194,6 +201,10 @@ function UIProgressReport:draw(canvas, x, y) result_y = result_y + 1 end self.panel_sprites:draw(canvas, 2 + sprite_offset, x + lx, y + 237 - result_y) + if crit_table.icon_file then -- Icons not from QData/Rep02V + local icon_sprites = self.panel_sprites_table[crit_table.icon_file] + icon_sprites:draw(canvas, crit_table.icon, x + lx, y + 240) + end lx = lx + 30 end end @@ -208,17 +219,6 @@ function UIProgressReport:draw(canvas, x, y) end function UIProgressReport:afterLoad(old, new) - if old < 179 then - local gfx = TheApp.gfx - - local palette = gfx:loadPalette("QData", "Rep01V.pal", true) - self.background = gfx:loadRaw("Rep01V", 640, 480, "QData", "QData", "Rep01V.pal", true) - self.red_font = gfx:loadFont("QData", "Font101V", false, palette) - self.normal_font = gfx:loadFont("QData", "Font100V", false, palette) - self.small_font = gfx:loadFont("QData", "Font106V") - self.panel_sprites = gfx:loadSpriteTable("QData", "Rep02V", true, palette) - end - if old < 188 then self:close() end diff --git a/CorsixTH/Lua/endconditions.lua b/CorsixTH/Lua/endconditions.lua index 860230caa4..37eb67e0c1 100644 --- a/CorsixTH/Lua/endconditions.lua +++ b/CorsixTH/Lua/endconditions.lua @@ -19,8 +19,8 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. --]] -- The "Winning and Losing Conditions" section of level files uses Criteria --- numbers from the order of this table. --- Icon and formats are used in the progress report dialog. +-- numbers from the order of this table. +-- Icon, icon_file and formats are used in the progress report dialog. local local_criteria_variable = { {name = "reputation", icon = 10, formats = 2}, {name = "balance", icon = 11, formats = 2}, @@ -81,6 +81,7 @@ function EndConditions:_loadGoals(criteria_tbl, goals, start, win) criterion = values.Criteria, max_min = values.MaxMin, icon = local_criteria_variable[values.Criteria].icon, + icon_file = local_criteria_variable[values.Criteria].icon_file, formats = local_criteria_variable[values.Criteria].formats, start = start[crit_name] or 0, } From 3921c1b684b39879c1c325b5c50e3bb3995f20e3 Mon Sep 17 00:00:00 2001 From: Toby Lane Date: Thu, 28 Mar 2024 15:00:42 +0100 Subject: [PATCH 46/85] Select the five lose criteria closest to losing --- CorsixTH/Lua/endconditions.lua | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/CorsixTH/Lua/endconditions.lua b/CorsixTH/Lua/endconditions.lua index 37eb67e0c1..930edcbfb8 100644 --- a/CorsixTH/Lua/endconditions.lua +++ b/CorsixTH/Lua/endconditions.lua @@ -125,7 +125,7 @@ end -- lose criteria with the smallest gap between current value and boundary, -- then fill up to five with win criteria in the best group. function EndConditions:generateReportTable(hospital) - local count, lose_table, report_table, tmp_table = 0, {}, {}, {} + local count, lose_table, key_lose_goals_table, report_table, unique_criteria_set = 0, {}, {}, {}, {} local win_group = self.win_goals[self:_findBestWinGroup(hospital)] or {} -- Collect lose criteria over the boundary @@ -135,25 +135,30 @@ function EndConditions:generateReportTable(hospital) -- Get the most relevant of each criterion in all groups for _, group_table in pairs(lose_table) do for crit_name, crit_table in pairs(group_table) do - if not tmp_table[crit_name] or tmp_table[crit_name].gap > crit_table.gap then - tmp_table[crit_name] = crit_table + if not key_lose_goals_table[crit_name] or key_lose_goals_table[crit_name].gap > crit_table.gap then + key_lose_goals_table[crit_name] = crit_table end end end -- Move into a numbered table - for _, crit_table in pairs(tmp_table) do + for _, crit_table in pairs(key_lose_goals_table) do table.insert(report_table, crit_table) count = count + 1 - if count == 5 then break end + end + -- If there are more than five, keep the five criteria closest to meeting lose conditions + if count > 5 then + table.sort(report_table, function(a,b) return a.gap > b.gap end) + for n = 6, #report_table do report_table[n] = nil end end -- Fill up the report table with win criteria not already present as lose criteria + for _, crit in pairs(report_table) do unique_criteria_set[crit.name] = true end for i = 1, #local_criteria_variable do + if count == 5 then break end local name = local_criteria_variable[i].name - if win_group[name] and not tmp_table[name] then + if win_group[name] and not unique_criteria_set[name] then count = count + 1 report_table[count] = win_group[name] - if count == 5 then break end end end From 2e607c47bf7011f4468b3998e942ac2850ad51ab Mon Sep 17 00:00:00 2001 From: Toby Lane Date: Thu, 28 Mar 2024 14:07:42 +0000 Subject: [PATCH 47/85] Add a display format to progress report tooltips --- CorsixTH/Lua/dialogs/fullscreen/progress_report.lua | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua b/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua index 418b3f82d8..a98457546d 100644 --- a/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua +++ b/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua @@ -73,6 +73,9 @@ function UIProgressReport:UIProgressReport(ui) local tooltip if crit_table.formats == 2 then tooltip = _S.tooltip.status[crit_name]:format(math.floor(res_value), math.floor(cur_value)) + elseif crit_table.formats == 3 then + tooltip = _S.tooltip.status[crit_name]:format(math.floor(res_value) / 1000, + math.floor(cur_value) / 1000) else tooltip = _S.tooltip.status[crit_name]:format(math.floor(res_value)) end From 9c23b7a7c2e47a603912a8e67257845d40db4a46 Mon Sep 17 00:00:00 2001 From: Toby Lane Date: Tue, 7 May 2024 15:12:36 +0100 Subject: [PATCH 48/85] Ignore unknown win/lose criteria --- CorsixTH/Lua/endconditions.lua | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/CorsixTH/Lua/endconditions.lua b/CorsixTH/Lua/endconditions.lua index 930edcbfb8..c92265e1ca 100644 --- a/CorsixTH/Lua/endconditions.lua +++ b/CorsixTH/Lua/endconditions.lua @@ -19,7 +19,8 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. --]] -- The "Winning and Losing Conditions" section of level files uses Criteria --- numbers from the order of this table. +-- numbers from the order of this table. Any Criteria numbers higher than +-- the size of this table will be silently ignored. -- Icon, icon_file and formats are used in the progress report dialog. local local_criteria_variable = { {name = "reputation", icon = 10, formats = 2}, @@ -31,7 +32,7 @@ local local_criteria_variable = { } -- A table of functions for fetching criteria values that cannot be measured --- directly from a hospital attribute of the same name. +-- directly from a hospital attribute of the same name. local get_custom_criteria = { balance = function(hospital) return hospital.balance - hospital.loan end, } @@ -72,7 +73,7 @@ end --!param win (boolean) If the win goals are being filled this time function EndConditions:_loadGoals(criteria_tbl, goals, start, win) for _, values in pairs(criteria_tbl) do - if values.Criteria ~= 0 then + if local_criteria_variable[values.Criteria] then local crit_name = local_criteria_variable[values.Criteria].name if not goals[values.Group] then goals[values.Group] = {} end goals[values.Group][crit_name] = { From 83d85c4bcbfd95bb11dd171c249aa9981603e66a Mon Sep 17 00:00:00 2001 From: Toby Lane Date: Sun, 2 Jun 2024 08:25:40 +0100 Subject: [PATCH 49/85] Add different tooltips for win and lose goals of the same criteria --- CorsixTH/Lua/dialogs/fullscreen/progress_report.lua | 12 +++++++++--- CorsixTH/Lua/endconditions.lua | 3 ++- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua b/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua index a98457546d..384f8af23e 100644 --- a/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua +++ b/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua @@ -71,13 +71,19 @@ function UIProgressReport:UIProgressReport(ui) -- FIXME: res_value and cure_value are depersisted as floating points, using -- string.format("%.0f", x) is not suitable due to %d (num) param in _S string local tooltip + if crit_table.two_tooltips then + local direction = crit_table.win_value and "over" or "under" + tooltip = _S.tooltip.status[direction][crit_name] + else + tooltip = _S.tooltip.status[crit_name] + end if crit_table.formats == 2 then - tooltip = _S.tooltip.status[crit_name]:format(math.floor(res_value), math.floor(cur_value)) + tooltip = tooltip:format(math.floor(res_value), math.floor(cur_value)) elseif crit_table.formats == 3 then - tooltip = _S.tooltip.status[crit_name]:format(math.floor(res_value) / 1000, + tooltip = tooltip:format(math.floor(res_value) / 1000, math.floor(cur_value) / 1000) else - tooltip = _S.tooltip.status[crit_name]:format(math.floor(res_value)) + tooltip = tooltip:format(math.floor(res_value)) end if not crit_table.icon_file then -- Icons from QData/Rep02V self:addPanel(crit_table.icon, x, 240) diff --git a/CorsixTH/Lua/endconditions.lua b/CorsixTH/Lua/endconditions.lua index c92265e1ca..eb3cb804a3 100644 --- a/CorsixTH/Lua/endconditions.lua +++ b/CorsixTH/Lua/endconditions.lua @@ -21,7 +21,7 @@ SOFTWARE. --]] -- The "Winning and Losing Conditions" section of level files uses Criteria -- numbers from the order of this table. Any Criteria numbers higher than -- the size of this table will be silently ignored. --- Icon, icon_file and formats are used in the progress report dialog. +-- Icon, icon_file, formats and two_tooltips are used in the progress report dialog. local local_criteria_variable = { {name = "reputation", icon = 10, formats = 2}, {name = "balance", icon = 11, formats = 2}, @@ -84,6 +84,7 @@ function EndConditions:_loadGoals(criteria_tbl, goals, start, win) icon = local_criteria_variable[values.Criteria].icon, icon_file = local_criteria_variable[values.Criteria].icon_file, formats = local_criteria_variable[values.Criteria].formats, + two_tooltips = local_criteria_variable[values.Criteria].two_tooltips, start = start[crit_name] or 0, } if win then From 9c2c5ef27818fc65beaef7bd5252234b32689af3 Mon Sep 17 00:00:00 2001 From: Toby Lane Date: Fri, 28 Jun 2024 13:03:39 +0100 Subject: [PATCH 50/85] Close progress report --- CorsixTH/Lua/app.lua | 2 +- CorsixTH/Lua/dialogs/fullscreen/progress_report.lua | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CorsixTH/Lua/app.lua b/CorsixTH/Lua/app.lua index f95d4eb681..ea3010a5a0 100644 --- a/CorsixTH/Lua/app.lua +++ b/CorsixTH/Lua/app.lua @@ -29,7 +29,7 @@ local runDebugger = corsixth.require("run_debugger") -- and add compatibility code in afterLoad functions -- Recommended: Also replace/Update the summary comment -local SAVEGAME_VERSION = 205 -- Prevent staff grab spamming fix +local SAVEGAME_VERSION = 206 -- Add support for new win and lose criteria class "App" diff --git a/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua b/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua index 384f8af23e..0d166ebfd9 100644 --- a/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua +++ b/CorsixTH/Lua/dialogs/fullscreen/progress_report.lua @@ -228,7 +228,7 @@ function UIProgressReport:draw(canvas, x, y) end function UIProgressReport:afterLoad(old, new) - if old < 188 then + if old < 206 then self:close() end From d372f96464ee5a4c6fffca9a6a8d7f52404417e0 Mon Sep 17 00:00:00 2001 From: lewri Date: Sun, 27 Oct 2024 23:37:11 +0000 Subject: [PATCH 51/85] Move idle ticks to follow app ticks (#2691) * Move idle ticks to follow app ticks --- CorsixTH/Lua/app.lua | 4 ++-- CorsixTH/Lua/dialogs/resizables/main_menu.lua | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/CorsixTH/Lua/app.lua b/CorsixTH/Lua/app.lua index ea3010a5a0..bbd0d1ff3e 100644 --- a/CorsixTH/Lua/app.lua +++ b/CorsixTH/Lua/app.lua @@ -1253,8 +1253,8 @@ function App:idle() self:resetIdle() return end - -- Have we been idle enough (~30s) - if self.idle_tick > 1000 then + -- Have we been idle enough (~30s, based on SDL tick rate of 18ms) + if self.idle_tick > 1680 then -- User is idle, play the demo gameplay movie self.moviePlayer:playDemoMovie() self:resetIdle() diff --git a/CorsixTH/Lua/dialogs/resizables/main_menu.lua b/CorsixTH/Lua/dialogs/resizables/main_menu.lua index 95fd097313..2d96ca24e8 100644 --- a/CorsixTH/Lua/dialogs/resizables/main_menu.lua +++ b/CorsixTH/Lua/dialogs/resizables/main_menu.lua @@ -121,6 +121,9 @@ function UIMainMenu:draw(canvas, x, y) ly = ly - 15 end self.label_font:draw(canvas, _S.main_menu.version .. self.version_number, x + 5, ly, 190, 0, "right") +end + +function UIMainMenu:onTick() TheApp:idle() end From 32bdd626b7d63949d01f5a8b357b11b79108e9b4 Mon Sep 17 00:00:00 2001 From: lewri Date: Tue, 29 Oct 2024 21:09:29 +0000 Subject: [PATCH 52/85] Debug patients properly deregister on autopsy --- CorsixTH/Lua/entities/humanoids/patient.lua | 2 ++ CorsixTH/Lua/hospital.lua | 17 ++++++++--------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/CorsixTH/Lua/entities/humanoids/patient.lua b/CorsixTH/Lua/entities/humanoids/patient.lua index 7d0152c483..125925acc1 100644 --- a/CorsixTH/Lua/entities/humanoids/patient.lua +++ b/CorsixTH/Lua/entities/humanoids/patient.lua @@ -509,9 +509,11 @@ function Patient:goHome(reason, disease_id) hosp:updatePercentages() + -- Debug patients must be removed from the debug list so they can despawn properly if self.is_debug then hosp:removeDebugPatient(self) end + -- Remove any messages and/or callbacks related to the patient. self:unregisterCallbacks() diff --git a/CorsixTH/Lua/hospital.lua b/CorsixTH/Lua/hospital.lua index 9fe0917c95..79714af9f5 100644 --- a/CorsixTH/Lua/hospital.lua +++ b/CorsixTH/Lua/hospital.lua @@ -1308,15 +1308,6 @@ function Hospital:spawnPatient() self.world:spawnPatient(self) end -function Hospital:removeDebugPatient(patient) - for i, p in ipairs(self.debug_patients) do - if p == patient then - table.remove(self.debug_patients, i) - return - end - end -end - local debug_n function Hospital:getDebugPatient() if not debug_n or debug_n >= #self.debug_patients then @@ -1730,11 +1721,19 @@ function Hospital:removeStaff(staff) end --! Remove a patient from the hospital. +-- Also if a debug patient, they are also removed from the debug list. --!param patient (Patient) Patient to remove. function Hospital:removePatient(patient) + if patient.is_debug then self:removeDebugPatient(patient) end RemoveByValue(self.patients, patient) end +--! Remove a debug patient from the debug list. +--!param patient (Patient) Patient to remove +function Hospital:removeDebugPatient(patient) + RemoveByValue(self.debug_patients, patient) +end + -- TODO: This should depend on difficulty and level local reputation_changes = { ["cured"] = 1, -- a patient was successfully treated From 8140386472f68bc64f55b2698bd4203473b6ea2f Mon Sep 17 00:00:00 2001 From: Artem Argus Date: Thu, 31 Oct 2024 00:40:26 +0300 Subject: [PATCH 53/85] #2625 Fix: Auto satisfying salary request don't close window (#2674) * #2625 Fix: 'Automatically satisfying salary request does not close the salary request window.' * #2625 Fix for: 'Automatically satisfying salary request does not close the salary request window. Edits based on review. * #2625 Fix for: 'Automatically satisfying salary request does not close the salary request window. Changed gate/guard statement in function Staff:checkIfWaitedTooLongForRaise(). --- .../dialogs/fullscreen/staff_management.lua | 1 - CorsixTH/Lua/dialogs/staff_rise.lua | 1 - CorsixTH/Lua/entities/humanoids/staff.lua | 74 ++++++++++--------- CorsixTH/Lua/staff_profile.lua | 5 ++ 4 files changed, 46 insertions(+), 35 deletions(-) diff --git a/CorsixTH/Lua/dialogs/fullscreen/staff_management.lua b/CorsixTH/Lua/dialogs/fullscreen/staff_management.lua index 3c09f4f59b..ccd8089bb6 100644 --- a/CorsixTH/Lua/dialogs/fullscreen/staff_management.lua +++ b/CorsixTH/Lua/dialogs/fullscreen/staff_management.lua @@ -549,7 +549,6 @@ function UIStaffManagement:increaseSalary() if self.selected_staff then local staff = self.staff_members[self.category][self.selected_staff] if staff:increaseWage(math_floor(staff.profile.wage * 0.1)) then - self.ui:playSound("bonusal2.wav") return end end diff --git a/CorsixTH/Lua/dialogs/staff_rise.lua b/CorsixTH/Lua/dialogs/staff_rise.lua index f2ee847618..d76eb87d63 100644 --- a/CorsixTH/Lua/dialogs/staff_rise.lua +++ b/CorsixTH/Lua/dialogs/staff_rise.lua @@ -182,7 +182,6 @@ function UIStaffRise:increaseSalary() self.staff.message_callback = nil self.staff:increaseWage(self.rise_amount) self.staff.quitting_in = nil - self.ui:playSound("bonusal2.wav") self:close() end diff --git a/CorsixTH/Lua/entities/humanoids/staff.lua b/CorsixTH/Lua/entities/humanoids/staff.lua index 40005a82d7..5155e66309 100644 --- a/CorsixTH/Lua/entities/humanoids/staff.lua +++ b/CorsixTH/Lua/entities/humanoids/staff.lua @@ -117,8 +117,8 @@ function Staff:tick() -- check if we need to use the staff room and go there if so self:checkIfNeedRest() - -- check if staff has been waiting too long for a raise and fire if so - self:checkIfWaitedTooLong() + -- check if staff has been waiting too long for a raise + self:checkIfWaitedTooLongForRaise() -- Decide whether the staff member should be tiring and tire them if self:isTiring() then @@ -154,37 +154,42 @@ function Staff:tick() self:updateSpeed() end -function Staff:checkIfWaitedTooLong() - if self.quitting_in then - self.quitting_in = self.quitting_in - 1 - if self.quitting_in < 0 then - local rise_windows = self.world.ui:getWindows(UIStaffRise) - local staff_rise_window = nil +function Staff:checkIfWaitedTooLongForRaise() + if not self.quitting_in then return end + self.quitting_in = self.quitting_in - 1 - -- We go through all "requesting rise" windows open, to see if we need - -- to close them when the person is fired. - for i = 1, #rise_windows do - if rise_windows[i].staff == self then - staff_rise_window = rise_windows[i] - break - end - end - -- If the hospital policy is set to automatically grant wage increases, grant - -- the requested raise instead of firing the staff member - if self.hospital.policies.grant_wage_increase then - local amount = math.floor(math.max(self.profile.wage * 1.1, (self.profile:getFairWage(self.world) + self.profile.wage) / 2) - self.profile.wage) - self.quitting_in = nil - self.hospital:removeMessage(self) - self:increaseWage(amount) - return + local is_waiting_time_is_up = self.quitting_in < 0 + if is_waiting_time_is_up then + local rise_windows = self.world.ui:getWindows(UIStaffRise) + local staff_rise_window = nil + self.quitting_in = nil + self.hospital:removeMessage(self) + + -- We go through all "requesting rise" windows open + -- to close one of them if open when request resolved. + for i = 1, #rise_windows do + if rise_windows[i].staff == self then + staff_rise_window = rise_windows[i] + break end + end - -- else: The staff member is sacked + -- If the hospital policy is set to automatically grant wage increases, grant + -- the requested raise instead of firing the staff member + if self.hospital.policies.grant_wage_increase then + if staff_rise_window then -- if rise window open + staff_rise_window:increaseSalary() -- close window and raise + else + local rise_amount = self.profile:getRiseAmount() + self:increaseWage(rise_amount) + end + -- else: The staff member is sacked + else if staff_rise_window then - staff_rise_window:fireStaff() - return + staff_rise_window:fireStaff() -- close window and fire + else + self:fire() end - self:fire() end end end @@ -582,7 +587,7 @@ function Staff:requestRaise() end -- The staff member can now successfully ask for a raise self.hospital:makeRaiseRequest(amount, self) - self.quitting_in = 25*30 -- Time until the staff members quits anyway + self.quitting_in = 25*30 + math.random(0, 50) -- Time until the staff members quits anyway self:setMood("pay_rise", "activate") end end @@ -598,12 +603,15 @@ function Staff:increaseWage(amount) local wage_raised = true if self.profile.wage >= max_salary then wage_raised = false -- Already at max salary - elseif self.profile.wage + amount > max_salary then - -- Maximum salary hit. The staff member will never be unhappy again - self.profile.wage = max_salary else + local new_wage = self.profile.wage + amount + if self.profile.wage + amount > max_salary then + -- Maximum salary hit. The staff member will never be unhappy again + new_wage = max_salary + end -- Apply new salary - self.profile.wage = self.profile.wage + amount + self.profile.wage = new_wage + self.world.ui:playSound("bonusal2.wav") end -- Reset self:setMood("pay_rise", "deactivate") diff --git a/CorsixTH/Lua/staff_profile.lua b/CorsixTH/Lua/staff_profile.lua index 4845e9a0c2..0352f939f8 100644 --- a/CorsixTH/Lua/staff_profile.lua +++ b/CorsixTH/Lua/staff_profile.lua @@ -251,6 +251,11 @@ function StaffProfile:getFairWage() return math.max(math.floor(wage), level_config.staff[conf_id[self.humanoid_class]].MinSalary) end +function StaffProfile:getRiseAmount() + local rise_amount = math.floor(math.max(self.wage * 1.1, (self:getFairWage(self.world) + self.wage) / 2) - self.wage) + return rise_amount +end + function StaffProfile:getFullName() return self.initial .. ". " .. self.name end From fa8437a891b6127b1b04b11dc2972baf1cad7498 Mon Sep 17 00:00:00 2001 From: Matroftt <91145555+Matroftt@users.noreply.github.com> Date: Thu, 31 Oct 2024 14:59:52 +0300 Subject: [PATCH 54/85] Make ChrizmanTV Campaign criteria more acceptable (#2676) Also fixes outside tiles at Upper Pukington level --- CorsixTH/Campaigns/Upper Pukington.map | Bin 163948 -> 163948 bytes CorsixTH/Campaigns/dethsdaw.level | 4 ++-- CorsixTH/Campaigns/fourcorners.level | 8 ++++---- CorsixTH/Campaigns/hoppalong.level | 4 ++-- CorsixTH/Campaigns/snuffitsands.level | 2 +- CorsixTH/Campaigns/upperpukington.level | 8 ++++---- CorsixTH/Campaigns/wishinwell.level | 6 +++--- 7 files changed, 16 insertions(+), 16 deletions(-) diff --git a/CorsixTH/Campaigns/Upper Pukington.map b/CorsixTH/Campaigns/Upper Pukington.map index 6193e046a07826121e16725f215f515980f4c084..fb32fc127e59a91830b6598522dbb00a0d0322a0 100644 GIT binary patch delta 202 zcmaFU!1bnqYXg7OcK%h2uFR8tm^n7b#0t-tF29UXmW8E&!EW<}uj-6oE)z?^bURK) z!^!-Ne%nKt86%lCulsqBf4V;>qrzl=ThYmH7FtZd!^wDiI{!LG-RVA@jLIOTn?uk4 zXPj&kBry3+5Xbf$UdGiH(l!i0;K;y$h2C!D#`u(35{nE($K(T5qSI?V8T&V1DO$nQ OUgOKSy~da6gAo8HLO5Fh delta 300 zcmaFU!1bnqYXg6jCKH1I0|N^K13`MTMU?q$MyAOHU&T2giVGN+Hc$Af&WJ8JSs+Mf zG7n?m_E2WVNT$u}ejemkBxwBh37m}TjD*#}4Bs4j{y*bnn;?P7Z-O|s=kPMFwve_1 u`Nffe0Smp|$c^zSvjP?wgbogd(&_o0jB__%DO$nQUgOKSy~da6gAo9E(J;gS diff --git a/CorsixTH/Campaigns/dethsdaw.level b/CorsixTH/Campaigns/dethsdaw.level index a296115a90..36aa1e94d5 100644 --- a/CorsixTH/Campaigns/dethsdaw.level +++ b/CorsixTH/Campaigns/dethsdaw.level @@ -23,7 +23,7 @@ SOFTWARE. %Name = "Dethsdaw" %MapFile = "Dethsdaw.map" -%LevelBriefing = "The end is almost in sight, but first, some of the residents of Dethsdaw are coming down with a wobbly kind of illness. As always, the pinnacle of medical technologies are available to you as top scientists have created a new invention called the Atom Analyser. To move on to the final level, we want 900 cures, 90% treated, $450,000 in the bank, $750,000 worth of hospital and a reputation of 900. The Ministry expects total perfection!" +%LevelBriefing = "The end is almost in sight, but first, some of the residents of Dethsdaw are coming down with a wobbly kind of illness. As always, the pinnacle of medical technologies are available to you as top scientists have created a new invention called the Atom Analyser. To move on to the final level, we want 900 cures, 90% treated, $450,000 in the bank, $600,000 worth of hospital and a reputation of 900. The Ministry expects total perfection!" %LevelDebriefing = "Exemplary! On the eve of your final mission, you've received a note from the Ministry of Health saying that they're putting you in charge of the largest and most complex hospital of them all! @@ -292,7 +292,7 @@ Each entry states how many staff members of each category are available a given #win_criteria[1].Criteria.MaxMin.Value.Group.Bound 2 1 450000 1 0 #win_criteria[2].Criteria.MaxMin.Value.Group.Bound 3 1 90 1 0 #win_criteria[3].Criteria.MaxMin.Value.Group.Bound 4 1 900 1 0 -#win_criteria[4].Criteria.MaxMin.Value.Group.Bound 6 1 750000 1 0 +#win_criteria[4].Criteria.MaxMin.Value.Group.Bound 6 1 600000 1 0 #lose_criteria[0].Criteria.MaxMin.Value.Group.Bound 1 0 450 1 500 #lose_criteria[1].Criteria.MaxMin.Value.Group.Bound 2 0 -40000 2 -20000 diff --git a/CorsixTH/Campaigns/fourcorners.level b/CorsixTH/Campaigns/fourcorners.level index fcb5bcde3e..25cb948aec 100644 --- a/CorsixTH/Campaigns/fourcorners.level +++ b/CorsixTH/Campaigns/fourcorners.level @@ -22,7 +22,7 @@ SOFTWARE. %Name = "Four Corners" %MapFile = "Four Corners.map" -%LevelBriefing = "New advances in technology has allowed for improved research - you now have access to the Computer. Also, there is a tragic new condition involving gleaming foreheads and a new piece of diagnosis equipment to research. Your hospital, too, is strange since it is made up of nine cubes, so you will have to deal with it as best you can. Cure 600 people, treat 75% of them, have $200,000 in the bank, have a hospital worth $300,000 and a reputation of 750 to win." +%LevelBriefing = "New advances in technology has allowed for improved research - you now have access to the Computer. Also, there is a tragic new condition involving gleaming foreheads and a new piece of diagnosis equipment to research. Your hospital, too, is strange since it is made up of nine cubes, so you will have to deal with it as best you can. Cure 600 people, treat 75% of them, have $300,000 in the bank, have a hospital worth $200,000 and a reputation of 750 to win." %LevelDebriefing = "Spectacular! The Ministry of Health is in good standing with the public thanks to you, but they feel as though one hospital is not moving forward enough. @@ -204,14 +204,14 @@ Divides research input to get the amount of research points. must be > 0 6 Hospital value #win_criteria[0].Criteria.MaxMin.Value.Group.Bound 1 1 750 1 0 -#win_criteria[1].Criteria.MaxMin.Value.Group.Bound 2 1 200000 1 0 +#win_criteria[1].Criteria.MaxMin.Value.Group.Bound 2 1 300000 1 0 #win_criteria[2].Criteria.MaxMin.Value.Group.Bound 3 1 75 1 0 #win_criteria[3].Criteria.MaxMin.Value.Group.Bound 4 1 600 1 0 -#win_criteria[4].Criteria.MaxMin.Value.Group.Bound 6 1 300000 1 0 +#win_criteria[4].Criteria.MaxMin.Value.Group.Bound 6 1 200000 1 0 #win_criteria[5].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 #lose_criteria[0].Criteria.MaxMin.Value.Group.Bound 1 0 400 1 450 -#lose_criteria[1].Criteria.MaxMin.Value.Group.Bound 5 1 25 2 0 +#lose_criteria[1].Criteria.MaxMin.Value.Group.Bound 5 1 25 2 10 #lose_criteria[2].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 #lose_criteria[3].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 #lose_criteria[4].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 diff --git a/CorsixTH/Campaigns/hoppalong.level b/CorsixTH/Campaigns/hoppalong.level index cf2bd0f3ba..f523e353de 100644 --- a/CorsixTH/Campaigns/hoppalong.level +++ b/CorsixTH/Campaigns/hoppalong.level @@ -23,7 +23,7 @@ SOFTWARE. %Name = "Hoppalong" %MapFile = "Hoppalong.map" -%LevelBriefing = "A strange disease which makes people hairy is running rampant around the city of Wishinwell. According to our top scientists, it can only be removed by electroconvulsive therapy. Aside from that, you may find yourself out of room and out of cash, so plan ahead carefully. To win the level, cure 700 patients, treat 80% of visitors, amass $250,000 in the kitty, have a hospital worth $400,000 and gain a reputation of 800." +%LevelBriefing = "A strange disease which makes people hairy is running rampant around the city of Wishinwell. According to our top scientists, it can only be removed by electroconvulsive therapy. Aside from that, you may find yourself out of room and out of cash, so plan ahead carefully. To win the level, cure 700 patients, treat 80% of visitors, amass $250,000 in the kitty, have a hospital worth $350,000 and gain a reputation of 800." %LevelDebriefing = "Perfect! Though you've done well here, a recent emergency has led to the creation of a makeshift hospital and your new boss, Mr B. Hind, is desperate for someone to run it. Don't let the public down! @@ -292,7 +292,7 @@ Each entry states how many staff members of each category are available a given #win_criteria[1].Criteria.MaxMin.Value.Group.Bound 2 1 250000 1 0 #win_criteria[2].Criteria.MaxMin.Value.Group.Bound 3 1 80 1 0 #win_criteria[3].Criteria.MaxMin.Value.Group.Bound 4 1 700 1 0 -#win_criteria[4].Criteria.MaxMin.Value.Group.Bound 6 1 400000 1 0 +#win_criteria[4].Criteria.MaxMin.Value.Group.Bound 6 1 350000 1 0 #lose_criteria[0].Criteria.MaxMin.Value.Group.Bound 1 0 400 1 450 #lose_criteria[1].Criteria.MaxMin.Value.Group.Bound 2 0 -50000 2 -30000 diff --git a/CorsixTH/Campaigns/snuffitsands.level b/CorsixTH/Campaigns/snuffitsands.level index 037dd60b1d..fde2f85c20 100644 --- a/CorsixTH/Campaigns/snuffitsands.level +++ b/CorsixTH/Campaigns/snuffitsands.level @@ -208,7 +208,7 @@ Divides research input to get the amount of research points. must be > 0 #win_criteria[5].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 #lose_criteria[0].Criteria.MaxMin.Value.Group.Bound 1 0 400 1 450 -#lose_criteria[1].Criteria.MaxMin.Value.Group.Bound 5 1 30 2 0 +#lose_criteria[1].Criteria.MaxMin.Value.Group.Bound 5 1 30 2 10 #lose_criteria[2].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 #lose_criteria[3].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 #lose_criteria[4].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 diff --git a/CorsixTH/Campaigns/upperpukington.level b/CorsixTH/Campaigns/upperpukington.level index 1993a2eed7..be5dbb3da7 100644 --- a/CorsixTH/Campaigns/upperpukington.level +++ b/CorsixTH/Campaigns/upperpukington.level @@ -22,7 +22,7 @@ SOFTWARE. %Name = "Upper Pukington" %MapFile = "Upper Pukington.map" -%LevelBriefing = "The Ministry of Health has recently acquired this old hospital in Upper Pukington, but has found it to be unsatisfactory in standards. There is a new tongue swelling disorder going around too, so watch out! Whilst you will not be dealing with emergencies, the layout is somewhat archaic, but we are sure you can reach the targets of 400 cures, 70% patient treatment, $150,000 in the kitty, $200,000 hospital value and a reputation of 650. Good luck!" +%LevelBriefing = "The Ministry of Health has recently acquired this old hospital in Upper Pukington, but has found it to be unsatisfactory in standards. There is a new tongue swelling disorder going around too, so watch out! Whilst you will not be dealing with emergencies, the layout is somewhat archaic, but we are sure you can reach the targets of 400 cures, 70% patient treatment, $200,000 in the kitty, $150,000 hospital value and a reputation of 650. Good luck!" %LevelDebriefing = "Excellent! The Ministry sees that your climbing the ranks in this career, but watch you don't fall and break a leg! You wouldn't want to ruin your new Italian shoes now... @@ -204,14 +204,14 @@ Divides research input to get the amount of research points. must be > 0 6 Hospital value #win_criteria[0].Criteria.MaxMin.Value.Group.Bound 1 1 650 1 0 -#win_criteria[1].Criteria.MaxMin.Value.Group.Bound 2 1 150000 1 0 +#win_criteria[1].Criteria.MaxMin.Value.Group.Bound 2 1 200000 1 0 #win_criteria[2].Criteria.MaxMin.Value.Group.Bound 3 1 70 1 0 #win_criteria[3].Criteria.MaxMin.Value.Group.Bound 4 1 400 1 0 -#win_criteria[4].Criteria.MaxMin.Value.Group.Bound 6 1 200000 1 0 +#win_criteria[4].Criteria.MaxMin.Value.Group.Bound 6 1 150000 1 0 #win_criteria[5].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 #lose_criteria[0].Criteria.MaxMin.Value.Group.Bound 1 0 400 1 450 -#lose_criteria[1].Criteria.MaxMin.Value.Group.Bound 5 1 30 2 0 +#lose_criteria[1].Criteria.MaxMin.Value.Group.Bound 5 1 30 2 10 #lose_criteria[2].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 #lose_criteria[3].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 #lose_criteria[4].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 diff --git a/CorsixTH/Campaigns/wishinwell.level b/CorsixTH/Campaigns/wishinwell.level index 05a6701dac..fc5cde5e39 100644 --- a/CorsixTH/Campaigns/wishinwell.level +++ b/CorsixTH/Campaigns/wishinwell.level @@ -22,7 +22,7 @@ SOFTWARE. %Name = "Wishinwell" %MapFile = "Wishinwell.map" -%LevelBriefing = "There are a couple of new conditions in the town of Wishinwell which require your attention, and youll be dealing with broken bones, so do not forget to prioritise research to cure rooms. You will also be dealing with a fair share of emergencies too. To win, gain a reputation of 700, treat 500 patients, cure 75% of your visitors, amass $175,000 in the bank and have a hospital worth $250,000. We at the Ministry wish you the best of luck!" +%LevelBriefing = "There are a couple of new conditions in the town of Wishinwell which require your attention, and you'll be dealing with broken bones, so do not forget to prioritise research to cure rooms. You will also be dealing with a fair share of emergencies too. To win, gain a reputation of 700, treat 500 patients, cure 75% of your visitors, amass $175,000 in the bank and have a hospital worth $200,000. We at the Ministry wish you the best of luck!" %LevelDebriefing = "Outstanding! Now that you're on first name terms with your new boss, Mr I. Leggitt, you've been given a new project. He has noticed that you constantly stare at all four walls of your office, @@ -207,11 +207,11 @@ Divides research input to get the amount of research points. must be > 0 #win_criteria[1].Criteria.MaxMin.Value.Group.Bound 2 1 175000 1 0 #win_criteria[2].Criteria.MaxMin.Value.Group.Bound 3 1 75 1 0 #win_criteria[3].Criteria.MaxMin.Value.Group.Bound 4 1 500 1 0 -#win_criteria[4].Criteria.MaxMin.Value.Group.Bound 6 1 250000 1 0 +#win_criteria[4].Criteria.MaxMin.Value.Group.Bound 6 1 200000 1 0 #win_criteria[5].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 #lose_criteria[0].Criteria.MaxMin.Value.Group.Bound 1 0 400 1 450 -#lose_criteria[1].Criteria.MaxMin.Value.Group.Bound 5 1 25 2 0 +#lose_criteria[1].Criteria.MaxMin.Value.Group.Bound 5 1 25 2 10 #lose_criteria[2].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 #lose_criteria[3].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 #lose_criteria[4].Criteria.MaxMin.Value.Group.Bound 0 0 0 0 0 From c918e307fd667d81f0bab149f94c81a88b2599c8 Mon Sep 17 00:00:00 2001 From: Toby Lane Date: Thu, 31 Oct 2024 14:04:53 +0000 Subject: [PATCH 55/85] Fix end condition check for hospital balance --- CorsixTH/Lua/endconditions.lua | 1 - 1 file changed, 1 deletion(-) diff --git a/CorsixTH/Lua/endconditions.lua b/CorsixTH/Lua/endconditions.lua index eb3cb804a3..e210a8d91e 100644 --- a/CorsixTH/Lua/endconditions.lua +++ b/CorsixTH/Lua/endconditions.lua @@ -34,7 +34,6 @@ local local_criteria_variable = { -- A table of functions for fetching criteria values that cannot be measured -- directly from a hospital attribute of the same name. local get_custom_criteria = { - balance = function(hospital) return hospital.balance - hospital.loan end, } class "EndConditions" From da5d4cc6099581b6820babb0d9b0ad5eed59835f Mon Sep 17 00:00:00 2001 From: lewri Date: Wed, 30 Oct 2024 20:56:24 +0000 Subject: [PATCH 56/85] Make VIP walk slow --- CorsixTH/Lua/app.lua | 2 +- CorsixTH/Lua/entities/humanoids/vip.lua | 5 ++++- CorsixTH/Lua/humanoid_actions/walk.lua | 4 ++++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/CorsixTH/Lua/app.lua b/CorsixTH/Lua/app.lua index bbd0d1ff3e..85dcbbfb91 100644 --- a/CorsixTH/Lua/app.lua +++ b/CorsixTH/Lua/app.lua @@ -29,7 +29,7 @@ local runDebugger = corsixth.require("run_debugger") -- and add compatibility code in afterLoad functions -- Recommended: Also replace/Update the summary comment -local SAVEGAME_VERSION = 206 -- Add support for new win and lose criteria +local SAVEGAME_VERSION = 207 -- Make VIP move slower class "App" diff --git a/CorsixTH/Lua/entities/humanoids/vip.lua b/CorsixTH/Lua/entities/humanoids/vip.lua index cd332ec032..8be240b867 100644 --- a/CorsixTH/Lua/entities/humanoids/vip.lua +++ b/CorsixTH/Lua/entities/humanoids/vip.lua @@ -87,7 +87,7 @@ function Vip:Vip(...) -- sets the chance VIP visits each room, default is 50% or 1/2. For every 40 rooms in a hospital over 79 we increase n by 1 and chance is 1/n+1 self.room_visit_chance = 1 self.waiting = 0 - + self.slow_animation = true end --[[--VIP while on premises--]] @@ -504,5 +504,8 @@ function Vip:afterLoad(old, new) end end end + if old < 207 then + self.slow_animation = true + end Humanoid.afterLoad(self, old, new) end diff --git a/CorsixTH/Lua/humanoid_actions/walk.lua b/CorsixTH/Lua/humanoid_actions/walk.lua index a22989cdaa..8edbbe2ab7 100644 --- a/CorsixTH/Lua/humanoid_actions/walk.lua +++ b/CorsixTH/Lua/humanoid_actions/walk.lua @@ -111,6 +111,10 @@ local flag_flip_h = 1 local navigateDoor local function action_walk_raw(humanoid, x1, y1, x2, y2, map, timer_fn) + -- The variables below must always make up factor*quantity = 8 or the + -- animation glitches + -- Factor must also be able to multiply by 2 to become an integer + -- Quantity must always be an integer local factor = 1 local quantity = 8 if humanoid.speed and humanoid.speed == "fast" then From d707e533103ab452286d44c03af816effa0e8c57 Mon Sep 17 00:00:00 2001 From: "Stephen E. Baker" Date: Sun, 20 Oct 2024 10:51:15 -0400 Subject: [PATCH 57/85] Add more ignore files / directories clangd and kdevelop --- .gitignore | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.gitignore b/.gitignore index 5b9c7a1287..67e2d540cb 100644 --- a/.gitignore +++ b/.gitignore @@ -22,6 +22,10 @@ Release/ MinSizeRel/ RelWithDebInfo/ +# For KDevelop +.kdev4/ +*.kdev4 + # Ignore the folder where libraries are pre-compiled vcpkg/ @@ -79,6 +83,7 @@ CMakeScripts/ # Clang tools compile_commands.json +.cache/ # This is for the CMake-generated Visual Studio project *.vcxproj From 9d2d0735c2cf22ebe9f669f3993beecd362d2427 Mon Sep 17 00:00:00 2001 From: "Stephen E. Baker" Date: Sat, 19 Oct 2024 20:11:19 -0400 Subject: [PATCH 58/85] Smooth out gameplay at normal speed Double the number of tick events so that we can do one movement per tick instead of two at normal speed. Adjust scrolling speed to match prior to tick timing change --- CorsixTH/Lua/api_version.lua | 2 +- CorsixTH/Lua/app.lua | 2 +- CorsixTH/Lua/game_ui.lua | 25 +++++++------ CorsixTH/Lua/world.lua | 68 +++++++++++++++++++++++------------- CorsixTH/Src/lua_sdl.h | 2 +- 5 files changed, 61 insertions(+), 38 deletions(-) diff --git a/CorsixTH/Lua/api_version.lua b/CorsixTH/Lua/api_version.lua index dc9be9f149..ea36838f9b 100644 --- a/CorsixTH/Lua/api_version.lua +++ b/CorsixTH/Lua/api_version.lua @@ -32,4 +32,4 @@ Note: This file compiles as both Lua and C++. */ #endif /*]] --*/ -return 2687; +return 2688; diff --git a/CorsixTH/Lua/app.lua b/CorsixTH/Lua/app.lua index 85dcbbfb91..510f0b7e31 100644 --- a/CorsixTH/Lua/app.lua +++ b/CorsixTH/Lua/app.lua @@ -29,7 +29,7 @@ local runDebugger = corsixth.require("run_debugger") -- and add compatibility code in afterLoad functions -- Recommended: Also replace/Update the summary comment -local SAVEGAME_VERSION = 207 -- Make VIP move slower +local SAVEGAME_VERSION = 208 -- Game tick speed adjustment class "App" diff --git a/CorsixTH/Lua/game_ui.lua b/CorsixTH/Lua/game_ui.lua index 9ee295919d..dc7d71acdf 100644 --- a/CorsixTH/Lua/game_ui.lua +++ b/CorsixTH/Lua/game_ui.lua @@ -41,6 +41,10 @@ local multigesture_pinch_sensitivity_factor = 0.002 -- will result in a call to adjustZoom in the onTick method local multigesture_pinch_amplification_factor = 100 +-- Speed of scrolling when using keys. Pixels / tick (18ms) +-- This scroll speed is further adjusted by the configured scroll_speed +local key_scroll_speed = 10 + --! Game UI constructor. --!param app (Application) Application object. --!param local_hospital Hospital to display @@ -104,10 +108,10 @@ function GameUI:setupGlobalKeyHandlers() -- Set the scrolling keys. self.scroll_keys = { - [tostring(self.app.hotkeys["ingame_scroll_up"])] = {x = 0, y = -10}, - [tostring(self.app.hotkeys["ingame_scroll_down"])] = {x = 0, y = 10}, - [tostring(self.app.hotkeys["ingame_scroll_left"])] = {x = -10, y = 0}, - [tostring(self.app.hotkeys["ingame_scroll_right"])] = {x = 10, y = 0}, + [tostring(self.app.hotkeys["ingame_scroll_up"])] = {x = 0, y = -key_scroll_speed}, + [tostring(self.app.hotkeys["ingame_scroll_down"])] = {x = 0, y = key_scroll_speed}, + [tostring(self.app.hotkeys["ingame_scroll_left"])] = {x = -key_scroll_speed, y = 0}, + [tostring(self.app.hotkeys["ingame_scroll_right"])] = {x = key_scroll_speed, y = 0}, } -- This is the long version of the shift speed key. @@ -315,9 +319,9 @@ function GameUI:updateKeyScroll() if dx ~= 0 or dy ~= 0 then --Get the length of the scrolling vector. local mag = (dx^2 + dy^2) ^ 0.5 - --Then normalize the scrolling vector, after which multiply it by the scroll speed variable used in self.scroll_keys, which is 10 as of 14/10/18. - dx = (dx / mag) * 10 - dy = (dy / mag) * 10 + --Then normalize the scrolling vector, after which multiply it by the scroll speed variable. + dx = (dx / mag) * key_scroll_speed + dy = (dy / mag) * key_scroll_speed -- Set the scroll amount to be used. self.tick_scroll_amount = {x = dx, y = dy} return true @@ -861,11 +865,12 @@ function GameUI:onTick() -- and defaulted to 2, where 1 was regular scroll speed. By -- By multiplying by 0.5, we allow for setting slower than normal -- scroll speeds, and ensure there is no behaviour change for players - -- who do not modify their config file. + -- who do not modify their config file. Later the tick speed was + -- doubled so now we multiply by 0.25. if self.shift_scroll_speed_pressed then - mult = mult * self.app.config.shift_scroll_speed * 0.5 + mult = mult * self.app.config.shift_scroll_speed * 0.25 else - mult = mult * self.app.config.scroll_speed * 0.5 + mult = mult * self.app.config.scroll_speed * 0.25 end self:scrollMap(dx * mult, dy * mult) diff --git a/CorsixTH/Lua/world.lua b/CorsixTH/Lua/world.lua index 80d7f3e1b2..0c5417f190 100644 --- a/CorsixTH/Lua/world.lua +++ b/CorsixTH/Lua/world.lua @@ -67,7 +67,7 @@ function World:World(app) self.entity_map = EntityMap(self.map) -- Time - self.hours_per_tick = 2 + self.hours_per_tick = 1 self.tick_rate = 3 self.tick_timer = 0 self.game_date = Date() -- Current date in the game. @@ -718,12 +718,12 @@ end -- happens. local tick_rates = { ["Pause"] = {0, 1}, - ["Slowest"] = {1, 28}, -- 1 tick per s - ["Slower"] = {1, 6}, -- 1 tick per 216ms - ["Normal"] = {2, 3}, -- 2 ticks per 108ms = 1 tick per 54 ms - ["Max speed"] = {1, 1}, -- 1 tick per 36 ms - ["And then some more"] = {2, 1}, -- 2 ticks per 36 ms = 1 tick 18ms - ["Speed Up"] = {4, 1}, + ["Slowest"] = {1, 56}, -- 1 hour per s + ["Slower"] = {1, 12}, -- 1 hour per 216ms + ["Normal"] = {1, 3}, -- 1 hour per 54 ms + ["Max speed"] = {1, 2}, -- 1 hour per 36 ms + ["And then some more"] = {1, 1}, -- 1 hour per 18ms + ["Speed Up"] = {8, 1}, } function World:speedUp() @@ -837,8 +837,8 @@ local outside_temperatures = { local start_date = Date() ---! World ticks are translated to game ticks (or hours) depending on the --- current speed of the game. There are 50 hours in a TH day. +--! World ticks (every 18ms) are translated to game ticks (or hours) depending +-- on the current speed of the game. There are 50 hours in a TH day. function World:onTick() if self.map.level_number == "MAP EDITOR" then return end @@ -2461,22 +2461,6 @@ function World:afterLoad(old, new) self.wall_types = self.app.walls self:initWallTypes() end - if old < 183 then -- Adjust game speed and tick rates - local old_tick_rates = { - ["Pause"] = {0, 1}, - ["Slowest"] = {1, 9}, - ["Slower"] = {1, 5}, - ["Normal"] = {1, 3}, - ["Max speed"] = {1, 1}, - ["And then some more"] = {3, 1}, - } - for name, rate in pairs(old_tick_rates) do - if rate[1] == self.hours_per_tick and rate[2] == self.tick_rate then - self:setSpeed(name) - break - end - end - end if old < 185 then -- Fix any missing initial in staff names self:updateInitialsCache() @@ -2502,6 +2486,40 @@ function World:afterLoad(old, new) -- Move existing and future earthquakes to the Earthquake class self.earthquake = Earthquake(self, true) end + if old < 208 then -- Adjust game speed and tick rates + local old_tick_rates + if old < 183 then + old_tick_rates = { + ["Pause"] = {0, 1}, + ["Slowest"] = {1, 9}, + ["Slower"] = {1, 5}, + ["Normal"] = {1, 3}, + ["Max speed"] = {1, 1}, + ["And then some more"] = {3, 1}, + } + else + old_tick_rates = { + ["Pause"] = {0, 1}, + ["Slowest"] = {1, 28}, + ["Slower"] = {1, 6}, + ["Normal"] = {2, 3}, + ["Max speed"] = {1, 1}, + ["And then some more"] = {2, 1}, + ["Speed Up"] = {4, 1}, + } + end + local found_speed = false + for name, rate in pairs(old_tick_rates) do + if rate[1] == self.hours_per_tick and rate[2] == self.tick_rate then + found_speed = true + self:setSpeed(name) + break + end + end + if not found_speed then + self:setSpeed("Normal") + end + end -- Fix the initial of staff names self:updateInitialsCache() diff --git a/CorsixTH/Src/lua_sdl.h b/CorsixTH/Src/lua_sdl.h index d7b9529d56..86aceba22c 100644 --- a/CorsixTH/Src/lua_sdl.h +++ b/CorsixTH/Src/lua_sdl.h @@ -40,7 +40,7 @@ SOFTWARE. // SDL_USEREVENT_SOUND_OVER - informs script of a played sound finishing. #define SDL_USEREVENT_SOUND_OVER (SDL_USEREVENT + 4) -constexpr int usertick_period_ms = 36; +constexpr int usertick_period_ms = 18; int luaopen_sdl(lua_State* L); From 4d2e71b82b5d0340ca01f45a399130359a90e46e Mon Sep 17 00:00:00 2001 From: lewri Date: Sat, 2 Nov 2024 11:57:16 +0000 Subject: [PATCH 59/85] Remove run_debugger.lua --- CorsixTH/Lua/run_debugger.lua | 31 ------------------------------- 1 file changed, 31 deletions(-) delete mode 100644 CorsixTH/Lua/run_debugger.lua diff --git a/CorsixTH/Lua/run_debugger.lua b/CorsixTH/Lua/run_debugger.lua deleted file mode 100644 index ae839dd142..0000000000 --- a/CorsixTH/Lua/run_debugger.lua +++ /dev/null @@ -1,31 +0,0 @@ ---- --- This script is responsible for starting a DBGp client for CorsixTH's --- Lua scripts and then connecting this to a running DBGp server. --- --- It does this in the function it returns. ---- -local function run() - print("NOTE: While CorsixTH is connected to an IDE's debugger server,") - print("text will be printed in its output console instead of here.") - - if not pcall(require, "socket") then - print("Can't connect debugger: LuaSocket is not available.") - return "Can't connect debugger: LuaSocket is not available." - end - - local config = select(2, corsixth.require("config_finder")) - local connect = dofile("debugger") - - local successful, error_message = pcall(connect, config.DBGp_client_idehost, - config.DBGp_client_ideport, - config.DBGp_client_idekey, - config.DBGp_client_transport, - config.DBGp_client_platform, - config.DBGp_client_workingdir) - if not successful then - print("\nCan't connect DBGp client:\n" .. error_message .. "\n") - return "Failed to connect debugger, error printed in console." - end -end -return run - From f808228a8a4c2c0686bcc13167be13e8efe2d4ce Mon Sep 17 00:00:00 2001 From: lewri Date: Sat, 2 Nov 2024 11:59:20 +0000 Subject: [PATCH 60/85] Remove debugger from app.lua --- CorsixTH/Lua/app.lua | 7 ------- 1 file changed, 7 deletions(-) diff --git a/CorsixTH/Lua/app.lua b/CorsixTH/Lua/app.lua index 85dcbbfb91..ef95bc00c9 100644 --- a/CorsixTH/Lua/app.lua +++ b/CorsixTH/Lua/app.lua @@ -23,7 +23,6 @@ local rnc = require("rnc") local lfs = require("lfs") local TH = require("TH") local SDL = require("sdl") -local runDebugger = corsixth.require("run_debugger") -- Increment each time a savegame break would occur -- and add compatibility code in afterLoad functions @@ -70,12 +69,6 @@ function App:App() self.window_active_status = false -- whether window is in focus, set after App:init end ---! Starts a Lua DBGp client & connects it to a DBGp server. ---!return error_message (String) Returns an error message or nil. -function App:connectDebugger() - return runDebugger() -end - function App:setCommandLine(...) self.command_line = { ... } for _, arg in ipairs(self.command_line) do From 726e93b93983a40b50041da078dc5a661a6a96fb Mon Sep 17 00:00:00 2001 From: lewri Date: Sat, 2 Nov 2024 12:03:39 +0000 Subject: [PATCH 61/85] Remove debugger hotkey --- CorsixTH/Lua/config_finder.lua | 2 -- CorsixTH/Lua/dialogs/resizables/hotkey_assign.lua | 1 - 2 files changed, 3 deletions(-) diff --git a/CorsixTH/Lua/config_finder.lua b/CorsixTH/Lua/config_finder.lua index ff8367133a..e09d0f37de 100644 --- a/CorsixTH/Lua/config_finder.lua +++ b/CorsixTH/Lua/config_finder.lua @@ -587,7 +587,6 @@ local hotkeys_defaults = { global_exitApp = {"alt", "f4"}, global_resetApp = {"shift", "f10"}, global_releaseMouse = {"ctrl", "f10"}, - global_connectDebugger = {"ctrl", "c"}, global_showLuaConsole = "f12", global_runDebugScript = {"shift", "d"}, global_screenshot = {"ctrl", "s"}, @@ -729,7 +728,6 @@ if hotkeys_needs_rewrite and TheApp then 'global_exitApp = ' .. hotkeys_values.global_exitApp .. '\n' .. 'global_resetApp = ' .. hotkeys_values.global_resetApp .. '\n' .. 'global_releaseMouse = ' .. hotkeys_values.global_releaseMouse .. '\n' .. -'global_connectDebugger = ' .. hotkeys_values.global_connectDebugger .. '\n' .. 'global_showLuaConsole = ' .. hotkeys_values.global_showLuaConsole .. '\n' .. 'global_runDebugScript = ' .. hotkeys_values.global_runDebugScript .. '\n' .. 'global_screenshot = ' .. hotkeys_values.global_screenshot .. '\n' .. diff --git a/CorsixTH/Lua/dialogs/resizables/hotkey_assign.lua b/CorsixTH/Lua/dialogs/resizables/hotkey_assign.lua index 9406b202ac..2f9889ed39 100644 --- a/CorsixTH/Lua/dialogs/resizables/hotkey_assign.lua +++ b/CorsixTH/Lua/dialogs/resizables/hotkey_assign.lua @@ -454,7 +454,6 @@ function UIHotkeyAssign:UIHotkeyAssign(ui, mode) sections = {{ title = _S.hotkey_window.panel_debugKeys, keys = { - "global_connectDebugger", "global_showLuaConsole", "global_runDebugScript", "ingame_showCheatWindow", From fb8834624f6c269805eb656437d33b6cca9c9c25 Mon Sep 17 00:00:00 2001 From: lewri Date: Sat, 2 Nov 2024 12:07:12 +0000 Subject: [PATCH 62/85] Remove config data for debugger --- CorsixTH/Lua/config_finder.lua | 17 ----------------- WindowsInstaller/config_template.txt | 11 ----------- 2 files changed, 28 deletions(-) diff --git a/CorsixTH/Lua/config_finder.lua b/CorsixTH/Lua/config_finder.lua index e09d0f37de..f02917f08f 100644 --- a/CorsixTH/Lua/config_finder.lua +++ b/CorsixTH/Lua/config_finder.lua @@ -129,12 +129,6 @@ local config_defaults = { audio_buffer_size = 2048, theme_hospital_install = [[X:\ThemeHospital\hospital]], debug = false, - DBGp_client_idehost = nil, - DBGp_client_ideport = nil, - DBGp_client_idekey = nil, - DBGp_client_transport = nil, - DBGp_client_platform = nil, - DBGp_client_workingdir = nil, track_fps = false, zoom_speed = 80, scroll_speed = 2, @@ -500,17 +494,6 @@ audio_music = nil -- [[X:\ThemeHospital\Music]] --]=] .. '\n' .. 'debug_falling = ' .. tostring(config_values.debug_falling) .. '\n' .. [=[ --- Optional settings for CorsixTH's Lua DBGp client. Default settings are --- nil values, platform & working dir will be autodetected if nil. --- https://wiki.eclipse.org/LDT/User_Area/User_Guides/User_Guide_1.2#Attach_session ---]=] .. '\n' .. -'idehost = ' .. tostring(config_values.DBGp_client_idehost) .. '\n' .. -'ideport = ' .. tostring(config_values.DBGp_client_ideport) .. '\n' .. -'idekey = ' .. tostring(config_values.DBGp_client_idekey) .. '\n' .. -'transport = ' .. tostring(config_values.DBGp_client_transport) .. '\n' .. -'platform = ' .. tostring(config_values.DBGp_platform) .. '\n' .. -'workingdir = ' .. tostring(config_values.DBGp_workingdir) .. '\n' .. [=[ - -- If set to true, the FPS, Lua memory usage, and entity count will be shown -- in the dynamic information bar. Note that setting this to true also turns -- off the FPS limiter, causing much higher CPU utilisation, but resulting in diff --git a/WindowsInstaller/config_template.txt b/WindowsInstaller/config_template.txt index 0ac20256e4..dbf2dd656e 100644 --- a/WindowsInstaller/config_template.txt +++ b/WindowsInstaller/config_template.txt @@ -303,17 +303,6 @@ debug = false -- debug_falling = false --- Optional settings for CorsixTH's Lua DBGp client. Default settings are --- nil values, platform & working dir will be autodetected if nil. --- https://wiki.eclipse.org/LDT/User_Area/User_Guides/User_Guide_1.2#Attach_session --- -idehost = nil -ideport = nil -idekey = nil -transport = nil -platform = nil -workingdir = nil - -- If set to true, the FPS, Lua memory usage, and entity count will be shown -- in the dynamic information bar. Note that setting this to true also turns -- off the FPS limiter, causing much higher CPU utilisation, but resulting in From 9d894adc41d9f405a5c53697d13997487dba1c38 Mon Sep 17 00:00:00 2001 From: lewri Date: Sat, 2 Nov 2024 12:09:07 +0000 Subject: [PATCH 63/85] Remove debugger from CorsixTH.lua --- CorsixTH/CorsixTH.lua | 8 -------- 1 file changed, 8 deletions(-) diff --git a/CorsixTH/CorsixTH.lua b/CorsixTH/CorsixTH.lua index 8303c6b7fb..6cefc3bd42 100644 --- a/CorsixTH/CorsixTH.lua +++ b/CorsixTH/CorsixTH.lua @@ -73,14 +73,6 @@ end -- Load standard library extensions corsixth.require("utility") --- A DBGp debugger can debug this file if you start a CorsixTH DBGp client & connect --- it to a running server, using this CorsixTH startup arg: -debugger -for _, arg in ipairs({...}) do - if arg:match("^%-%-connect%-lua%-dbgp") then - dofile("run_debugger")() - end -end - -- Check Lua version local support = list_to_set({"Lua 5.1", "Lua 5.2", "Lua 5.3", "Lua 5.4"}) if not support[_VERSION] then From 2892799167b245a81b322b4a52d10eff3cabbd8f Mon Sep 17 00:00:00 2001 From: lewri Date: Sat, 2 Nov 2024 12:14:20 +0000 Subject: [PATCH 64/85] Remove debugger from UI --- CorsixTH/Lua/dialogs/menu.lua | 1 - CorsixTH/Lua/ui.lua | 9 --------- 2 files changed, 10 deletions(-) diff --git a/CorsixTH/Lua/dialogs/menu.lua b/CorsixTH/Lua/dialogs/menu.lua index f88cc2a04b..9cbbab45aa 100644 --- a/CorsixTH/Lua/dialogs/menu.lua +++ b/CorsixTH/Lua/dialogs/menu.lua @@ -820,7 +820,6 @@ function UIMenuBar:makeGameMenu(app) if self.ui.app.config.debug then self:addMenu(_S.menu.debug, UIMenu() -- Debug :appendMenu(_S.menu_debug.jump_to_level, levels_menu) - :appendItem(_S.menu_debug.connect_debugger:format(hotkey_value_label("global_connectDebugger", hotkeys)), function() self.ui:connectDebugger() end) :appendCheckItem(_S.menu_debug.limit_camera, true, limit_camera, nil, function() return self.ui.limit_to_visible_diamond end) :appendCheckItem(_S.menu_debug.disable_salary_raise, false, disable_salary_raise, nil, function() return self.ui.app.world.debug_disable_salary_raise end) :appendCheckItem(_S.menu_debug.allow_blocking_off_areas, false, allowBlockingAreas, nil, function() return self.ui.app.config.allow_blocking_off_areas end) diff --git a/CorsixTH/Lua/ui.lua b/CorsixTH/Lua/ui.lua index c0a3a250a1..b8440bc095 100644 --- a/CorsixTH/Lua/ui.lua +++ b/CorsixTH/Lua/ui.lua @@ -224,13 +224,6 @@ function UI:setupGlobalKeyHandlers() self:addOrRemoveDebugModeKeyHandlers() end -function UI:connectDebugger() - local error_message = TheApp:connectDebugger() - if error_message then - self:addWindow(UIInformation(self, {error_message})) - end -end - -- Used for everything except music and announcements function UI:playSound(name, played_callback, played_callback_delay) if self.app.config.play_sounds then @@ -1071,11 +1064,9 @@ function UI:getCursorPosition(window) end function UI:addOrRemoveDebugModeKeyHandlers() - self:removeKeyHandler("global_connectDebugger", self) self:removeKeyHandler("global_showLuaConsole", self) self:removeKeyHandler("global_runDebugScript", self) if self.app.config.debug then - self:addKeyHandler("global_connectDebugger", self, self.connectDebugger) self:addKeyHandler("global_showLuaConsole", self, self.showLuaConsole) self:addKeyHandler("global_runDebugScript", self, self.runDebugScript) end From 065eb729fe5813ab96268c3e63144298927cc772 Mon Sep 17 00:00:00 2001 From: lewri Date: Sat, 2 Nov 2024 12:15:43 +0000 Subject: [PATCH 65/85] Remove startup argument in README --- README.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/README.txt b/README.txt index 026ab763b0..ea4fee7f31 100644 --- a/README.txt +++ b/README.txt @@ -40,7 +40,6 @@ Briefly: -- CorsixTH.exe Optional Startup Arguments ------------------------------------------------------------------------------ ---connect-lua-dbgp : Before App.lua is executed connect a Lua DBGp client & to a Lua DBGp server. --interpreter=... : loadfile(...) instead of CorsixTH.lua. --config-file=... : Makes CorsixTH use the specified config file. --bitmap-dir=... : Makes CorsixTH use the specified bitmap directory. From 818cfcaa4a6aaf3db06003eb86617745562b08de Mon Sep 17 00:00:00 2001 From: lewri Date: Sat, 2 Nov 2024 12:18:34 +0000 Subject: [PATCH 66/85] Reword debug script explanation Co-Authored-By: Stephen E. Baker --- CorsixTH/Lua/debug_script.lua | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/CorsixTH/Lua/debug_script.lua b/CorsixTH/Lua/debug_script.lua index b84dc3a3f4..4b79e6d7ce 100644 --- a/CorsixTH/Lua/debug_script.lua +++ b/CorsixTH/Lua/debug_script.lua @@ -1,10 +1,6 @@ --- --- Calling "execute script" while CorsixTH is running will execute the latest --- code in this script so you don't need to restart CorsixTH. --- --- This script's execution key command and the key commands for the debug console --- & connecting a Lua DBGp server can be used anywhere at any time in CorsixTH --- when debug mode is enabled. +-- This file can be executed with the RUN DEBUG SCRIPT menu option or hotkey. +-- Each time the script is run the latest version will be loaded from disk. -- -- Like with the console you can reference clicked humanoids with the underscore -- global variable so for example: _:die() will make a clicked patient die. @@ -12,4 +8,6 @@ -- The run time App class instance can be referenced with its global variable -- "TheApp", with it you can reference other run time class instances like: -- TheApp.world +-- +-- Add your code below. --- From 77e07999fb192608686e6acc029e832ec416627c Mon Sep 17 00:00:00 2001 From: "Stephen E. Baker" Date: Sun, 3 Nov 2024 21:06:21 -0500 Subject: [PATCH 67/85] Bump vcpkg packages and remove SDL version lock sdl2-mixer patch is fixed to closer match upstream which can fix compile failures in that port. Bump corsixth vcpkg repo again for sdl2-mixer fix --- .github/workflows/Windows.yml | 2 +- vcpkg-configuration.json | 4 ++-- vcpkg.json | 5 +---- 3 files changed, 4 insertions(+), 7 deletions(-) diff --git a/.github/workflows/Windows.yml b/.github/workflows/Windows.yml index 99dac7b5f0..0d46260398 100644 --- a/.github/workflows/Windows.yml +++ b/.github/workflows/Windows.yml @@ -50,7 +50,7 @@ jobs: - name: Setup vcpkg uses: lukka/run-vcpkg@v11 with: - vcpkgGitCommitId: 'a1212c93cabaa9c5c36c1ffdb4bddd59fdf31e43' + vcpkgGitCommitId: '5f4628b89f3f98cd9a0b43c27ded2aa53da1f790' - name: Run CMake dev configure if: inputs.PRESET == 'win-dev' diff --git a/vcpkg-configuration.json b/vcpkg-configuration.json index ce9c5a1651..2885f19710 100644 --- a/vcpkg-configuration.json +++ b/vcpkg-configuration.json @@ -1,7 +1,7 @@ { "default-registry": { "kind": "git", - "baseline": "a1212c93cabaa9c5c36c1ffdb4bddd59fdf31e43", + "baseline": "5f4628b89f3f98cd9a0b43c27ded2aa53da1f790", "repository": "https://github.com/microsoft/vcpkg" }, "registries": [ @@ -13,7 +13,7 @@ { "kind": "git", "repository": "https://github.com/CorsixTH/vcpkg-registry", - "baseline": "30e94d20cb95de2cc64941c0ba6bd901890ccec6", + "baseline": "f8112bf320835623dd837725c85e29a11087135d", "packages": [ "ffmpeg", "sdl2-mixer", "luafilesystem", "lpeg" ] } ] diff --git a/vcpkg.json b/vcpkg.json index 8a0041ba5a..767425a015 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -81,8 +81,5 @@ "catch2" ] } - }, - "overrides": [ - { "name": "sdl2", "version": "2.28.2" } - ] + } } From 3490143ed82fff102541793e2b9da29773666419 Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Mon, 4 Nov 2024 18:17:27 +0000 Subject: [PATCH 68/85] Add new language (Japanese) --- .luacheckrc | 2 +- CorsixTH/Lua/config_finder.lua | 1 + CorsixTH/Lua/languages/japanese.lua | 2440 ++++++++++++++++++++++++++ WindowsInstaller/config_template.txt | 1 + 4 files changed, 2443 insertions(+), 1 deletion(-) create mode 100644 CorsixTH/Lua/languages/japanese.lua diff --git a/.luacheckrc b/.luacheckrc index edce687bfd..68012edf66 100644 --- a/.luacheckrc +++ b/.luacheckrc @@ -110,7 +110,7 @@ end -- W314: value assigned to field XYZ is unused for _, lng in ipairs({"brazilian_portuguese", "czech", "danish", "developer", "dutch", "english", "finnish", "french", "german", "greek", "hungarian", - "iberic_portuguese", "italian", "korean", "norwegian", "original_strings", + "iberic_portuguese", "italian", "japanese", "korean", "norwegian", "original_strings", "polish", "russian", "simplified_chinese", "spanish", "swedish", "ukrainian", "traditional_chinese"}) do local filename = "CorsixTH/Lua/languages/" .. lng .. ".lua" diff --git a/CorsixTH/Lua/config_finder.lua b/CorsixTH/Lua/config_finder.lua index f02917f08f..5337d16a4b 100644 --- a/CorsixTH/Lua/config_finder.lua +++ b/CorsixTH/Lua/config_finder.lua @@ -222,6 +222,7 @@ local string_01 = [=[ -- German / de / ger / deu -- Hungarian / hu / hun -- Italian / it / ita +-- Japanese / ja / jp -- Korean / kor / ko -- Norwegian / nb / nob -- Polish / pl / pol diff --git a/CorsixTH/Lua/languages/japanese.lua b/CorsixTH/Lua/languages/japanese.lua new file mode 100644 index 0000000000..b29cb8555c --- /dev/null +++ b/CorsixTH/Lua/languages/japanese.lua @@ -0,0 +1,2440 @@ +--[[ Copyright (c) 2024 ShimaKen + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. --]] + +Font("unicode") +Language("日本語", "Japanese", "ja", "jp") +Inherit("english") +Encoding(utf8) + +main_menu = { + new_game = "新しく始める", + custom_campaign = "カスタムキャンペーン", + custom_level = "カスタムシナリオ", + continue = "続きから始める", + load_game = "ロード", + options = "オプション", + map_edit = "マップエディター", + savegame_version = "セーブデータのバージョン: ", + updates_off = "アップデートをオフにする", + version = "バージョン: ", + exit = "ゲームを終了する", +} + +tooltip.main_menu = { + new_game = "キャンペーンの最初のレベルを開始します", + network = "マルチプレイを開始します", + custom_campaign = "コミュニティによって作成されたキャンペーンで遊びます", + custom_level = "単一シナリオで遊びます", + continue = "最後に遊んだところから再開します", + load_game = "セーブデータを選択して再開します", + options = "いろいろな設定をします", + map_edit = "カスタムマップを作ります", + exit = "いやいや、ゲームをやめないでください!", + quit = "CorsixTHをやめようとしています。本当にやめていいですか?", +} + +new_game_window = { + caption = "キャンペーン", + player_name = "プレイヤー名", + option_on = "オン", + option_off = "オフ", + difficulty = "難易度", + easy = "ジュニア (イージー)", + medium = "ドクター (ミディアム)", + hard = "コンサルタント (ハード)", + tutorial = "チュートリアル", + start = "スタート", + cancel = "キャンセル", +} + +menu_options_warmth_colors = { + choice_1 = " 赤 ", + choice_2 = " 青 緑 赤 ", + choice_3 = " 黄 橙 赤 ", +} + + date_format = { + daymonth = "%2%/%1%", +} + +custom_game_window = { + caption = "カスタムシナリオ", + free_build = "フリービルド", + load_selected_level = "スタート", +} +tooltip.custom_game_window = { + choose_game = "レベルをクリックすると詳細が表示されます", + free_build = "お金や勝ち負けの条件なしでプレイしたい場合は、このボックスにチェックを入れてください", + load_selected_level = "選択したレベルをロードして遊びます", +} + +load_game_window = { + caption = "ゲームをロードする (%1%)", + load_button = "ロード", +} + +save_game_window = { + caption = "ゲームをセーブする (%1%)", + new_save_game = "新しいセーブ", + missing_filename = "新しくセーブデータ名を入力するか 上書きするセーブデータを選択してください", + save_button = "セーブ", +} + +folders_window = { + caption = "フォルダの場所", + data_label = "テーマホスピタルのデータ", + font_label = "フォント", + music_label = "ミュージック", + savegames_label = "セーブデータ", + screenshots_label = "スクリーンショット", + -- next four are the captions for the browser window, which are called from the folder setting menu + new_th_location = "ここで、新しくテーマホスピタルが インストールされたディレクトリ または ISOファイルを指定できます。新しいディレクトリを選択するとすぐにゲームが再起動されます。ファイル拡張子は現在表示されません。", + savegames_location = "保存に使用するディレクトリを選択してください", + music_location = "音楽に使用するディレクトリを選択してください", + screenshots_location = "スクリーンショットに使用するディレクトリを選択してください", + back = "戻る", +} + +tooltip.folders_window = { + browse = "フォルダの場所を参照", + data_location = "CorsixTHを実行するために必要な、元のテーマホスピタルをインストールしたディレクトリまたはISOファイルの場所", + font_location = "選択した言語に必要なUnicode文字を表示できるフォントファイルの場所。これを指定しない場合、元のゲームで提供されている文字種よりも多くの文字を必要とする言語を選択できなくなります。例: 日本語、ロシア語や中国語", + savegames_location = "デフォルトでは、保存ディレクトリは設定ファイルの隣にあり、セーブデータを保存するために使用されます。または、使用するディレクトリを参照して独自のディレクトリを選択することもできます。", + screenshots_location = "デフォルトでは、スクリーンショットは設定ファイルの隣にあるフォルダに保存されます。または、使用するディレクトリを参照して独自のディレクトリを選択することもできます。", + music_location = "ディレクトリを参照して音楽ファイルの場所を選択します。 (ディレクトリは既に存在している必要があります)", + browse_data = "テーマホスピタルがインストールされている別の場所を選択します (現在の場所: %1% ) ", + browse_font = "別のフォントを選択します ( 現在の場所: %1% ) ", + browse_saves = "セーブデータを保存する別の場所を選択します ( 現在の場所: %1% ) ", + browse_screenshots = "スクリーンショットを保存する別の場所を選択します ( 現在の場所: %1% ) ", + browse_music = "音楽に使用する別の場所を選択します ( 現在の場所: %1% ) ", + no_font_specified = "フォントが設定されていません!", + not_specified = "フォルダが設定されていません!", + default = "デフォルト設定のまま", + reset_to_default = "デフォルト設定にリセットします", + back = "メニューを閉じて設定メニューに戻ります", +} + +customise_window = { + caption = "カスタム設定", + option_on = "オン", + option_off = "オフ", + back = "戻る", + movies = "グローバルムービーの設定", + intro = "オープニングムービーの再生", + paused = "一時停止中に建築する", + volume = "音量を下げるホットキー", + aliens = "エイリアンDNA病", + fractured_bones = "骨折", + average_contents = "いつもの設備", + remove_destroyed_rooms = "破壊された部屋を撤去", +} + +tooltip.customise_window = { + movies = "すべてのムービーをオフに設定できます", + intro = "オープニングムービーをオン/オフできます。CorsixTHをロードするたびにオープニングムービーを再生したい場合は、グローバルムービーをオンにする必要があります", + paused = "テーマホスピタルではゲームが一時停止されている場合、プレーヤーはメニューのみを使用できます。 これはCorsixTHでもデフォルト設定ですが、これをオンにすると、ゲームが一時停止されている間にすべての行動が許可されます", + volume = "ボリュームを下げるボタンでケースブックも開いてしまう場合には、これをオンにしてケースブックのホットキーを Shift + C に変更します", + aliens = "適切なアニメーションがないため、エイリアンDNA病の患者は緊急要請の場合のみに来院する設定をデフォルトとしています。エイリアンDNA病の患者が緊急要請以外でも来院するようにするには、これをオフにします。", + fractured_bones = "アニメーションが不十分であるため、骨折した女性患者が来院しない設定をデフォルトとしています。骨折した女性患者も来院するようにするには、このオプションをオフにしてください。", + average_contents = "部屋を建てるときにあなたがいつも追加する設備をゲームに記憶させたい場合は、このオプションをオンにしてください", + remove_destroyed_rooms = "破壊された部屋を有料で撤去したい場合は、このオプションをオンにしてください", + back = "メニューを閉じて設定メニューに戻ります", +} + +options_window = { + caption = "設定", + fullscreen = "フルスクリーン", + option_on = "オン", + option_off = "オフ", + check_for_updates = "アップデートの確認", + option_enabled = "オン", + option_disabled = "オフ", + resolution = "解像度", + capture_mouse = "カーソルの移動範囲", + right_mouse_scrolling = "マップスクロール", + right_mouse_scrolling_option_middle = "真ん中のボタン", + right_mouse_scrolling_option_right = "右のボタン", + custom_resolution = "カスタム...", + width = "横幅 / width", + height = "高さ / Height", + audio = "オーディオ", + customise = "カスタム設定", + folder = "フォルダの場所", + language = "言語", + apply = "決定", + cancel = "キャンセル", + back = "戻る", + scrollspeed = "スクロール速度", + shift_scrollspeed = "スクロール速度 (+Shift)", + zoom_speed = "ズーム速度", + hotkey = "ホットキーの設定", + jukebox = "ジュークボックス", + change_resolution = "解像度の変更", +} + +tooltip.options_window = { + fullscreen = "ゲームをフルスクリーンモードとウィンドウモードのどちらで実行するかを設定できます", + fullscreen_button = "オンにするとフルスクリーンモードになります", + resolution = "ゲームの解像度を設定できます", + select_resolution = "新しい解像度を選択してください", + capture_mouse = "オンにするとマウスカーソルが画面外に出なくなります", + right_mouse_scrolling = "マップをスクロールするマウスボタンを切り替えます", + width = "ご希望の画面幅を入力してください", + height = "ご希望の画面高さを入力してください", + apply = "入力した解像度で決定する", + cancel = "解像度を変更せずに戻る", + audio_button = "すべての音楽をオン/オフする", + audio_toggle = "オン / オフを設定してください", + customise_button = "ゲーム体験のためのより詳細な設定ができます", + folder_button = "フォルダオプションです", + language = "ゲーム内の使用言語です", + select_language = "言語を選択してください", + language_dropdown_item = " %s を選択する", + language_dropdown_no_font = "この言語を選択するためにはフォルダの設定からフォントを選択してください", + back = "ウインドウを閉じて戻ります", + scrollspeed = "スクロール速度を 1(遅い) から 10(速い) の間で設定します。デフォルトは2です。", + shift_scrollspeed = "Shiftキーを押した時のスクロール速度を 1(遅い) から 10(速い) の間で設定します。デフォルトは4です。", + zoom_speed = "カメラのズーム速度を 10(遅い) から 1000(速い) の間で設定します。デフォルトは80です。", + apply_scrollspeed = "入力したスクロール速度で決定する", + cancel_scrollspeed = "スクロール速度を変更せずに戻る", + apply_shift_scrollspeed = "入力した+Shiftスクロール速度で決定する", + cancel_shift_scrollspeed = "+Shiftスクロール速度を変更せずに戻る", + apply_zoomspeed = "入力したズーム速度で決定する", + cancel_zoomspeed = "ズーム速度を変更せずに戻る", + hotkey = "ホットキーの設定を変更する", + check_for_updates = "アップデートがないか確認する", + jukebox = "ジュークボックスを開く", +} + +menu_list_window = { + name = "名前", + back = "戻る", + save_date = "更新日", + ok = "決定", +} + +update_window = { + caption = "アップデートがあります!", + new_version = "新しいバージョン:", + current_version = "最新バージョン: ", + download = "ダウンロードページヘ", + ignore = "スキップしてメインメニューへ", +} + +save_map_window = { + caption = "マップをセーブする (%1%)", + new_map = "新しいマップ", + missing_filename = "新しくマップ名を入力するか 上書きするデータを選択してください", + save_button = "セーブ", +} + +hotkey_window = { + caption_main = "ホットキーの割り当て", + caption_panels = "パネルキー", + button_accept = "決定", + button_defaults = "デフォルトに戻す", + button_cancel = "キャンセル", + button_back = "戻る", + button_toggleKeys = "トグルキー", + button_gameSpeedKeys = "ゲームスピードキー", + button_recallPosKeys = "元に戻すキー", + panel_globalKeys = "グローバルキー", + panel_generalInGameKeys = "一般的なゲーム内キー", + panel_scrollKeys = "スクロールキー", + panel_zoomKeys = "ズームキー", + panel_gameSpeedKeys = "ゲームスピードキー", + panel_toggleKeys = "トグルキー", + panel_debugKeys = "デバッグキー", + panel_storePosKeys = "場所を決定するキー", + panel_recallPosKeys = "場所を元に戻すキー", + panel_altPanelKeys = "代替パネルキー", + global_confirm = "確認する", + global_confirm_alt = "確認する Alt", + global_cancel = "キャンセル", + global_cancel_alt = "キャンセル Alt", + global_fullscreen_toggle = "フルスクリーン", + global_exitApp = "ゲームをやめる", + global_resetApp = "ゲームをリセットする", + global_releaseMouse = "マウスを放す", + global_connectDebugger = "デバッガー", + global_showLuaConsole = "Lua Console", + global_runDebugScript = "Debug Script", + global_screenshot = "スクリーンショット", + global_stop_movie_alt = "ムービーを止める", + global_window_close_alt = "ウィンドウを閉じる", + ingame_scroll_up = "上へスクロール", + ingame_scroll_down = "下へスクロール", + ingame_scroll_left = "左へスクロール", + ingame_scroll_right = "右へスクロール", + ingame_scroll_shift = "スピードの変更", + ingame_zoom_in = "ズームイン", + ingame_zoom_in_more = "もっとズームイン", + ingame_zoom_out = "ズームアウト", + ingame_zoom_out_more = "もっとズームアウト", + ingame_reset_zoom = "ズームのリセット", + ingame_showmenubar = "メニューバーを表示する", + ingame_showCheatWindow = "チートメニュー", + ingame_loadMenu = "ゲームをロードする", + ingame_saveMenu = "ゲームをセーブする", + ingame_jukebox = "ジュークボックス", + ingame_openFirstMessage = "レベルのメッセージ", + ingame_pause = "一時停止", + ingame_gamespeed_slowest = "最遅", + ingame_gamespeed_slower = "遅め", + ingame_gamespeed_normal = "普通", + ingame_gamespeed_max = "最速", + ingame_gamespeed_thensome = "早め", + ingame_gamespeed_speedup = "スピードアップ", + ingame_panel_bankManager = "銀行マネージャー", + ingame_panel_bankStats = "口座の状況", + ingame_panel_staffManage = "Manage Staff", + ingame_panel_townMap = "タウンマップ", + ingame_panel_casebook = "治療記録", + ingame_panel_research = "研究", + ingame_panel_status = "経営状態", + ingame_panel_charts = "Charts", + ingame_panel_policy = "方針", + ingame_panel_map_alt = "タウンマップ 2", + ingame_panel_research_alt = "研究 2", + ingame_panel_casebook_alt = "治療記録 2", + ingame_panel_casebook_alt02 = "治療記録 3", + ingame_panel_buildRoom = "部屋を建てる", + ingame_panel_furnishCorridor = "設備の設置", + ingame_panel_editRoom = "部屋を編集する", + ingame_panel_hireStaff = "スタッフを雇う", + ingame_rotateobject = "設備を回転させる", + ingame_quickSave = "クイックセーブ", + ingame_quickLoad = "クイックロード", + ingame_restartLevel = "レベルをリセットする", + ingame_quitLevel = "レベルをやめる", + ingame_setTransparent = "Transparent", + ingame_toggleAnnouncements = "アナウンス", + ingame_toggleSounds = "サウンド", + ingame_toggleMusic = "音楽", + ingame_toggleAdvisor = "アドバイザー", + ingame_toggleInfo = "Info", + ingame_poopLog = "Dump Log", + ingame_poopStrings = "Dump Strings", + ingame_patient_gohome = "家へ送り返す", + ingame_storePosition_1 = "1", + ingame_storePosition_2 = "2", + ingame_storePosition_3 = "3", + ingame_storePosition_4 = "4", + ingame_storePosition_5 = "5", + ingame_storePosition_6 = "6", + ingame_storePosition_7 = "7", + ingame_storePosition_8 = "8", + ingame_storePosition_9 = "9", + ingame_storePosition_0 = "10", + ingame_recallPosition_1 = "1", + ingame_recallPosition_2 = "2", + ingame_recallPosition_3 = "3", + ingame_recallPosition_4 = "4", + ingame_recallPosition_5 = "5", + ingame_recallPosition_6 = "6", + ingame_recallPosition_7 = "7", + ingame_recallPosition_8 = "8", + ingame_recallPosition_9 = "9", + ingame_recallPosition_0 = "10", +} + +tooltip.hotkey_window = { + button_accept = "ホットキーの設定を決定して保存する", + button_defaults = "すべてのホットキーの設定をデフォルトに戻します", + button_cancel = "変更をキャンセルしてオプションメニューに戻ります", + caption_panels = "パネルキーの設定画面を開きます", + button_gameSpeedKeys = "ゲームスピードを変更するキー設定の設定画面を開きます", + button_recallPosKeys = "カメラポジションを変更するキー設定の設定画面を開きます", + button_back_02 = "ホットキーの設定メイン画面に戻ります。この画面での変更内容は適用・保存されます", +} + +tooltip.new_game_window = { + player_name = "あなたがこのゲーム内で遊びたい名前を入力してください", + difficulty = "遊びたいゲームの難易度を選択してください", + easy = "シミュレーションゲームを遊ぶのが初めてであればこちらをどうぞ", + medium = "どれを選ぶべきか迷っているならこちらが中間択です", + hard = "この種のゲームが得意で今回も挑戦がしたければこちらがオススメです", + tutorial = "ゲームの遊び方の基本のキを学ぶにはクリックしてオンにしてください", + start = "選択した内容でゲームを始めます", + cancel = "やっぱり新しくゲームを始めるのやーめた!", +} + +tooltip.totd_window = { + previous = "前のヒントを表示します", + next = "次のヒントを表示します", +} + +tooltip.cheats_window = { + close = "チートダイアログを閉じる", + cheats = { + money = "$10,000を資金に追加する", + all_research = "すべての研究を完了する", + emergency = "緊急要請を1件起こす", + vip = "VIP来訪を1件起こす", + toggle_earthquake = "地震イベントが起きるようにする", + earthquake = "地震を発生させる", + toggle_epidemic = "伝染病イベントが起きるようにする", + epidemic = "伝染病を引き起こす可能性のある伝染性患者を作成します", + show_infected = "発見された伝染病の感染者アイコンを表示/非表示にします", + create_patient = "1人の新規患者をマップ境界に作成します", + end_month = "月末にジャンプします", + end_year = "年末にジャンプします", + lose_level = "現在のレベルを失敗します", + win_level = "現在のレベルをクリアします", + increase_prices = "すべての料金を50%値上げします(最大200%まで)", + decrease_prices = "すべての料金を50%値下げします(最小50%まで)", + reset_death_count = "死者の数を0にリセットします", + max_reputation = "病院の評判を最大に設定します", + } +} + +custom_campaign_window = { + caption = "カスタムキャンペーン", + start_selected_campaign = "キャンペーンを始める", +} + +tooltip = { + custom_campaign_window = { + choose_campaign = "キャンペーンをクリックすると詳細が表示されます", + start_selected_campaign = "キャンペーンの最初のレベルを開始します", + }, + information = { + close = "情報ダイアログを閉じる", + }, + save_game_window = { + save_game = "セーブデータ %s を上書きする", + new_save_game = "新しいセーブデータの名前を入力する", + }, + pay_rise_window = { + accept = "支払い要求に応じる", + decline = "支払うのではなく、代わりに解雇する", + }, +} + +load_map_window = { + caption = "マップをロードする (%1%)", + load_button = "ロード", +} + +dynamic_info = { + patient = { + emergency = "緊急事態: %s", + guessed_diagnosis = "%s と推定診断", + diagnosis_progress = "診断の進歩", + actions = { + sent_to_other_hospital = "他の病院へ送られました", + prices_too_high = "料金が高すぎる - 家へ帰ります", + no_gp_available = "新しい診断設備ができるのを待っています", + waiting_for_treatment_rooms = "治療できる施設ができるのを待っています", + dying = "死にかけ...", + no_diagnoses_available = "正確な診断がされていません", + epidemic_sent_home = "衛生検査官によって自宅に送られた", + cured = "治った!", + waiting_for_diagnosis_rooms = "診断設備が早くできるのを待っています", + epidemic_contagious = "伝染病です!", + awaiting_decision = "あなたの決定待ちです", + sent_home = "家へ帰ります", + fed_up = "すべて取得しました!", + no_treatment_available = "治療する設備がありません!", + on_my_way_to = "%s へ移動中", + queueing_for = "%s の順番待ち", + epidemic_vaccinated = "ワクチン接種済!", + }, + diagnosed = "病気が特定されました: %s ", + }, + health_inspector = "衛生検査官", + vip = "VIP", + object = { + times_used = "使用回数: %d", + queue_size = "順番待ち: %d", + strength = "強さ: %d", + queue_expected = "列予想数: %d", + strength_extra_info = "強度%d(最大強度 %d)" + }, + staff = { + actions = { + going_to_repair = "%s へ修理に向かっています", + fired = "クビにされました", + waiting_for_patient = "患者待ち", + wandering = "ブラブラしています", + heading_for = "%s へ移動中", + vaccine = "ワクチン", + }, + tiredness = "疲労度", +-- psychiatrist_abbrev = "Псих.", + ability = "能力:", + }, +} + +handyman_window = { + all_parcels = "全てのエリア", + parcel = "エリア", +} +font_location_window = { + caption = "フォントを選択してください (%1%)", +} + +research = { + allocated_amount = "資金配分", + funds_allocation = "予算配分合計", + categories = { + diagnosis = "診断研究", + cure = "治療研究", + improvements = "改良研究", + drugs = "薬品研究", + specialisation = "特殊研究", + }, +} + +progress_report = { + more_drinks_machines = "もっと自販機を設置してください。", + quite_unhappy = "人々は本当に不幸せです。", + header = "進捗レポート", + too_cold = "めちゃくちゃ寒いです。暖房機を設置してください。", + percentage_pop = "% 母集団/人口", + very_unhappy = "人々は不幸せです。", + too_hot = "めちゃくちゃ暑いです。暖房を調整してください。", + win_criteria = "勝利条件", + free_build = "自由建築", +} + +policy = { + staff_leave_rooms = "人手の足りない部屋へ行く", + header = "病院の方針", + staff_rest = "スタッフを休憩させる疲労度", + diag_procedure = "診断手法", + diag_termination = "診断終了", + sliders = { + guess = "とにかく治療", + send_home = "家に帰らせる", + stop = "処置をストップ", + staff_room = "休憩を取る", + }, +} +tooltip.policy = { + staff_stay = "スタッフが配置された部屋から出ないようにするにはここをクリック", + close = "方針画面を閉じる", + staff_rest = "スタッフが休憩できるようになるまでの疲労度", + staff_leave = "暇しているスタッフが人手を必要としている部屋に手伝いに行かせるにはここをクリック", + diag_procedure = "医師の診断が「家に帰らせる」の値未満の場合は患者は自宅に送り返されます。 診断が「とにかく治療」以上の場合は患者は適切な治療が施されます。", + diag_termination = "患者の診療は「処置をストップ」の指す値と診断医師の確信が同じになるまでか、病院内全ての診断機で検査を受け終わるまで続きます。", +} +tooltip.policy = { + staff_stay = "", + close = "", + staff_rest = "", + staff_leave = "", + diag_procedure = "", + diag_termination = "患者の診断は、医師がSTOP PROCEDUREのパーセンテージに達するまで、またはすべての診断機械が試されるまで続けられます", +} + +menu_charts = { + casebook = " (%1%) 帳簿 ", + staff_listing = " (%1%) スタッフリスト ", + briefing = " BRIEFING ", + town_map = " (%1%) タウンマップ ", + research = " (%1%) 研究 ", + status = " (%1%) 経営状態 ", + statement = " (%1%) 状況報告 ", + policy = " (%1%) 方針 ", + graphs = " (%1%) グラフ ", + bank_manager = " (%1%) 銀行マネージャー ", +} + +misc = { + hospital_open = "開院", + save_success = "セーブが成功しました", + save_failed = "注意:セーブに失敗しました", + low_res = "ローレゾ", + no_heliport = "病気はまだ発見されていないか、この地図にはヘリポートがありません。受付デスクを建てて受付係を雇う必要があるかもしれません。", + grade_adverb = { + extremely = "かなり", + mildly = "そこそこ", + moderately = "まぁまぁ", + }, + not_yet_implemented = "(まだ実装されていません)", + send_message = "プレイヤーにメッセージを送る %d", + out_of_sync = "ゲームが同期されていません", + balance = "銀行残高", + load_failed = "セーブデータをロードできませんでした", + mouse = "ネズミ", +-- done = "Зроблено", +-- force = "Прискорення", + pause = "一時停止", + send_message_all = "すべてのプレイヤーにメッセージを送信する", + cant_treat_emergency = "病気が発見されていないため、あなたの病院はこの緊急事態を治療できません。遠慮なくもう一度試してください。", + epidemic_no_diseases = "伝染病を作成できません - 利用可能な伝染病はありません", + earthquakes_on = "地震は無効になっています", + earthquakes_off = "地震が再び有効になります", + epidemics_off = "伝染病は無効になっています", + epidemics_on = "伝染病が再び有効になります", + epidemic_no_receptionist = "伝染病を作成できません - 受付デスクがないか受付係がいません", + epidemic_no_icon_to_toggle = "感染したアイコンを表示/非表示にできません - アクティブな未検出の伝染病はありません", +} + +staff_list = { + morale = "モラル", + tiredness = "疲労度", + skill = "スキル", + total_wages = "賃金", +} +build_room_window = { + pick_room_type = "部屋のタイプを選択してください", + pick_department = "部門を選択", + cost = "コスト: ", +} +room_classes = { + diagnosis = "検査", + treatment = "治療", + clinics = "処置", + facilities = "施設", +} +rooms_short = { + gps_office = "診察室", + general_diag = "検査室", + ultrascan = "超音波検査室", + research_room = "研究室", + fracture_clinic = "整骨科", + staffroom = "スタッフルーム", + jelly_vat = "ゼリー槽室", + scanner = "スキャナー室", + decontamination = "汚染除去室", + pharmacy = "薬局", + cardiogram = "心臓科", + reception = "受付", + training_room = "講義室", + corridor_objects = "廊下の配置", + operating_theatre = "手術室", + dna_fixer = "DNA修復室", + ward = "病室", + psychiatric = "精神科", + hair_restoration = "増毛科", + inflation = "空気注入室", + tongue_clinic = "ベロ出し病クリニック", + toilets = "トイレ", + electrolysis = "電気脱毛室", + x_ray = "レントゲン室", + blood_machine = "血液調整機室", + destroyed = "破壊", +} +rooms_long = { + gps_office = "診察室", + general_diag = "検査室", + ultrascan = "超音波検査室", + research_room = "研究室", + fracture_clinic = "整骨科", + staffroom = "スタッフルーム", + jelly_vat = "ゼリー槽室", + scanner = "スキャナー室", + inflation = "空気注入室", + decontamination = "汚染除去室", + corridors = "廊下", + cardiogram = "心臓科", + ward = "病室", + training_room = "講義室", + psychiatric = "精神科", + operating_theatre = "手術室", + dna_fixer = "DNA修復室", + tongue_clinic = "ベロ出し病クリニック", + hair_restoration = "増毛科", + pharmacy = "薬局", + toilets = "トイレ", + electrolysis = "電気脱毛室", + x_ray = "レントゲン室", + blood_machine = "血液調整機室", + emergency = "緊急事態", + general = "一般", +} +buy_objects_window = { + price = "単価: ", + choose_items = "項目を選択する", + total = "合計: ", +} +object = { + chair = "イス", + litter = "ガラクタ", + sofa = "ソファー", + operating_table = "手術台", + bench = "ベンチ", + scanner = "スキャナー", + couch = "カウチ", + blood_machine = "血液調整機", + video_game = "ビデオゲーム", + op_sink2 = "流し台", + door = "ドア", + auto_autopsy = "自動解剖機", + reception_desk = "受付デスク", + hair_restorer = "毛髪調整機", + projector = "プロジェクター", +-- crash_trolley = "Аварійний візок", + tv = "テレビ", + ultrascanner = "超音波検査機", + surgeon_screen = "外科医用スクリーン", + jelly_moulder = "ゼリー槽", + x_ray_viewer = "X線可視装置", + radiation_shield = "放射線シールド", + cardio = "心電計", + slicer = "舌切り機", + inflator = "空気注入機", + dna_fixer = "DNA修復機", + x_ray = "X線", + litter_bomb = "ゴミ爆弾", + desk = "デスク", + pool_table = "ビリヤード台", + bed = "ベッド", + swing_door2 = "スイングドア", + console = "コンソール", + op_sink1 = "流し台", + bookcase = "本棚", + drinks_machine = "自販機", + comfortable_chair = "安楽イス", + skeleton = "骨格標本", + computer = "コンピュータ", + bin = "ゴミ箱", + pharmacy_cabinet = "薬品棚", + radiator = "暖房機", + cast_remover = "整骨マシン", + atom_analyser = "原子分析機", + plant = "観葉植物", + toilet = "トイレ", + electrolyser = "電解槽", + fire_extinguisher = "消火器", + swing_door1 = "スイングドア", + lecture_chair = "講義イス", + screen = "スクリーン", + toilet_sink = "流し台", + shower = "シャワー", + gates_of_hell = "地獄のゲート", + cabinet = "キャビネット", + lamp = "ランプ", + entrance_left = "左開きドア", + table2 = "テーブル", + bed2 = "ベッド", + bed3 = "ベッド", + entrance_right = "右開きドア", + table1 = "テーブル", + rathole = "ネズミの巣穴", +} +room_descriptions = { + gp = { + [1] = "診察室//", + [2] = "あなたの病院の治療の中心となるのはこの診察室です。すべての患者は自分のどこが悪いのかを知るためにまず最初にここに送られます。彼らはここからさらなる検査または治療のために各施設へ送られます。患者が多すぎる場合は別の部屋を建ててください。充実した設備と広々とした部屋は治療の効率を上げます。これはすべての部屋に当てはまります。//", + [3] = "どんな医師でも診察室で働くことができます。", + }, + general_diag = { + [1] = "検査室//", + [2] = "追加の検査が必要な患者はここに来ます。この部屋では診察室よりも医師が患者をより詳細に診察することができます。患者は診断を決定するために検査の結果を持って診察室へ戻ります。//", + [3] = "どんな医師でも検査室で働くことができます。", + }, + ultrascan = { + [1] = "超音波検査室//", + [2] = "超音波検査機は最高の検査ツールの1つです。患者に最高の検査を提供したい場合はぜひ導入してください。検査の後は再診察のため診察室に行きます。//", + [3] = "どんな医師でも診察室で働くことができます。この装置は定期メンテナンスが必要です。", + }, + scanner = { + [1] = "スキャナー室//", + [2] = "患者はスキャナーを使用してより正確な診断を受けます。その後、再診察のため診察室に行きます。//", + [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", + }, + blood_machine = { + [1] = "血液調整機室//", + [2] = "血液調整機は、患者の血球の色をチェックして状態を判断します。血液の調査を行った後は再診察のため診察室に行きます。//", + [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", + }, + x_ray = { + [1] = "レントゲン室//", + [2] = "レントゲンは特殊な放射線を利用して、患者の体内を撮影し、病気の原因の特定と治療に役立てます。//", + [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", + }, + cardiogram = { + [1] = "心臓科//", + [2] = "ここでは、まったくスポーツをしない患者が、血圧を激しく上昇させる嫌いなランニングをさせられます。これらの指標は、医師が診断を下すのに役立ちます。//", + [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", + }, + fracture_clinic = { + [1] = "整骨科//", + [2] = "骨を折ってしまった不幸な患者がここに来ます。接骨マシンが患者体内から不要な小骨を除去します。石膏カッターは強力な工業用レーザーを使用して、患者がほとんど痛みを感じない間に硬化したギプスを切断します。//", + [3] = "看護師のみが整骨科で働くことができます。この装置は定期メンテナンスが必要です。", + }, + inflation = { + [1] = "空気注入室//", + [2] = "風船あたま病を持つ患者は、ここに来ます。巨大化した頭蓋骨に穴を開けてから、適切な空気圧になるよう空気を注入します。//", + [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", + }, + jelly_vat = { + [1] = "ゼリー槽室//", + [2] = "ゼリー病で苦しんでいる患者は、ゼリー槽室へいかなければなりません。ゼリー病はゼリー槽によって直されますが、なぜこの方法で直るかは、医学的に解明されていません。//", + [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", + }, + pharmacy = { + [1] = "薬局//", + [2] = "診断によって薬が必要とされた患者は、薬局を訪れるべきです。新しい治療薬が開発されるに従って、薬局の忙しさも増していくことでしょう。もし必要なら追加で薬局を建てるようにしましょう。//", + [3] = "看護師のみが薬局で働くことができます。", + }, + ward = { + [1] = "病室//", + [2] = "診断の間、観察のためにここで時間を過ごします。彼らはまた手術の前に休息も取ります。横になってレモンティーを飲むという治療を受ける人もいます。//", + [3] = "看護師のみが病室で働くことができます", + }, + psych = { + [1] = "精神科//", + [2] = "精神疾患のある患者は精神科医のオフィスを訪れなければなりません。そこでは精神科医が快適な椅子に座って待っています。それから彼らはカウチに横たわって診断され、最終的には魔法と賄賂で治療されます。//", + [3] = "精神科医の資格を持つ医師のみが精神科で働くことができます", + }, + operating_theatre = { + [1] = "手術室//", + [2] = "ここは、メス、時にはチェーンソーも必要になるような、様々な病気を治療する重要な部屋です。適度に広い室内に、適切な設備が必要です。//", + [3] = "外科医の資格を持つ2人の医師を必要とします。定期メンテナンスも必要です。", + }, + dna_fixer = { + [1] = "DNA修復室//", + [2] = "宇宙人によって遺伝子組換を受けた人々は、DNAを体から抽出し、完全に精製して、患者のすべての細胞に戻さなければなりません。、DNA修復機は非常に繊細な機械ですので、 事故に備え、部屋に消火器を用意するのが賢明です。//", + [3] = "DNA修復機の扱いには、研究医の資格を持つ医師が必要です。定期メンテナンスも必要です。", + }, + hair_restoration = { + [1] = "増毛科//", + [2] = "ハゲ病の極端な症状に苦しむ患者は、増毛科へ送られます。医師が機械を操作し、患者の頭に新鮮な毛を植え付けます。もちろん性格は治療できませんが...//", + [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", + }, + electrolysis = { + [1] = "電気脱毛室", + [2] = "毛むくじゃら病の患者はこの部屋へ送られます。そこで電気脱毛機と呼ばれる特別な機械が電気的に毛を引き抜き、粘性のある混合溶液で毛穴を閉じます。//", + [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", + }, + slack_tongue = { + [1] = "ベロだし病クリニック//", + [2] = "ベロ出し病と診断された患者は、このクリニックに送られます。医師は最新の精密な装置を使用して舌を伸ばしてちょん切って、舌を正しい長さに戻します。//", + [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", + }, + no_room = { + [1] = "", + }, + decontamination = { + [1] = "汚染除去室//", + [2] = "過剰な放射線を浴びた患者はすぐに汚染除去室に送られます。この部屋には恐ろしい放射線と死の灰を洗い流すシャワーがあり、その後患者は髪をとかされます。//", + [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", + }, + tv_room = { + [1] = "TV室は現在使用されていません", + }, + staff_room = { + [1] = "スタッフルーム//", + [2] = "スタッフたちは働くことで疲れてしまいます。彼らには休息と体力の回復のためにこの部屋が必要です。疲れたスタッフは仕事が遅くなり、より多くの賃金を要求し始め、最終的には辞めてしまうかもしれません。もちろんミスも多くなります。広い部屋でテレビを見たりビデオゲームをしたりできるようにすると、より疲れから解放されるでしょう。複数のスタッフが同時にゆっくりできるスペースがあることを確認してください。", + }, + training = { + [1] = "講義室//", + [2] = "ジュニアとドクターは、この部屋で学習することで、貴重な追加スキルを習得できます。外科医、精神科医、研究医のスキルを持つコンサルタントが、勉強中の医師にそれらのスキルを伝えていきます。//", + [3] = "講義室はコンサルタントを必要とします。", + }, + toilets = { + [1] = "トイレ//", + [2] = "自然の欲求に従って、患者はここにやってきます。もし来院数が多い場合は、追加の個室と洗面台を建設できます。他の場所に追加のトイレを建設することをも検討する必要があるかもしれません。", + }, + research = { + [1] = "研究室//", + [2] = "この病院で最も賢明な医師たちは、新しい薬や設備を発明し、改良しています。治癒率を高めるために信じられないほどのことを行う、病院の重要な部分です!//", + [3] = "研究医の資格を持つ医師のみが研究室で働くことができます", + }, +} +place_objects_window = { + place_objects_in_corridor = "これらの設備を廊下に設置します", + drag_blueprint = "部屋を希望のサイズに拡張します。", + place_door = "ドアを設置します", + place_windows = "必要に応じて窓を追加し、「確認」をクリックします", + confirm_or_buy_objects = "項目を追加、削除、または移動できます。", + place_objects = "アイテムを選択して目的の場所に配置します。", + pick_up_object = "アイテムをクリックして選択するか、別のオプションを選択します。", +} + +tooltip = { + build_room_window = { + cost = "選択したアイテムの価格", + room_classes = { + diagnosis = "診断をするための部屋です", + treatment = "治療をするための部屋です", + clinic = "病気を治療するための個別クリニックです", + facilities = "その他病院サービスのための設備です", + }, + close = "ゲームに戻る", + }, + hire_staff_window = { + prev_person = "前の候補者", + next_person = "次の候補者", + salary = "給料", + staff_ability = "能力", + doctors = "医師を表示", + nurses = "看護師を表示", + handymen = "作業員を表示", + receptionists = "受付係を表示", + doctor_seniority = "学位 (ジュニア, ドクター, コンサルタント)", + qualifications = "医師の追加スキル", + surgeon = "外科医", + psychiatrist = "精神科医", + researcher = "研究者", + hire = "雇う", + cancel = "キャンセル", + }, + place_objects_window = { + confirm = "確認", + cancel = "キャンセル", + pick_up = "アイテムをつかむ", + buy_sell = "買う/売る", + }, + buy_objects_window = { + cancel = "キャンセル", + confirm = "アイテムを購入する", + price = "アイテムの値段", + increase = "購入数を1つ増やす", + decrease = "購入数を1つ減らす", + total_value = "注文アイテムの合計金額", + }, + queue_window = { + num_in_queue = "待機中の患者数", + close = "このリクエストを閉じる", + inc_queue_size = "最大待ち人数を増やす", + patient = "患者をドラッグして順番待ちの順番を移動させます。 右クリックで患者を自宅に送るか、他の病院に送ります", + end_of_queue = "患者をこのアイコンにドラッグして待機列の最後に移動させます", + num_expected = "受付係に並ぼうとしている予想人数", + max_queue_size = "受付係の最大待ち人数", + dec_queue_size = "最大待ち人数を減らす", + patient_dropdown = { + reception = "患者を受付係に送る", + hospital_1 = "患者を他の病院に送る", + hospital_2 = "患者を他の病院に送る", + hospital_3 = "患者を他の病院に送る", + send_home = "患者を病院から追い出す", + }, + front_of_queue = "患者をこのアイコンにドラッグして順番待ちの先頭に移動させます", + num_entered = "これまでにこの部屋で治療された患者の数", + }, + message = { + button = "メッセージを開くには左クリック", + button_dismiss = "メッセージを開くには左クリック、無視するには右クリック", + }, + research_policy = { + research_progress = "このカテゴリにおける次の発見への進捗: %1%/%2%", + no_research = "このカテゴリでは現在研究が行われていません", + }, + town_map = { + close = "タウンマップ画面を終了", + heat_inc = "設定温度を上げる", + heat_dec = "設定温度を下げる", + heating_bill = "暖房費", + objects = "オブジェクトの表示切替", + fire_extinguishers = "消火器の表示切替", + plants = "観葉植物の表示切替", + heat_level = "暖房レベル", + radiators = "ラジエーターの表示切替", + people = "人々の表示切替", + balance = "銀行残高", + }, + rooms = { + gps_office = "診察室では、患者の診察をして、検査結果を受け取り病気の診断を行います", + general_diag = "検査室は患者の簡単な診断に使用します。コストも安く、多くの場合、とても有効です。", + cardiogram = "心臓科は患者の病気を診断するために使います", + ultrascan = "超音波検査機は患者の病気を診断するために使います", + scanner = "スキャナー室は患者の病気を診断するために使います", + x_ray = "レントゲン室は患者の病気を診断するために使います", + blood_machine = "血液調整機室は患者の病気を診断するために使います", + fracture_clinic = "看護師は整骨マシンを使用して骨折した骨を元に戻します", + inflation = "空気中入室では風船あたま病の治療が行われます", + jelly_vat = "ゼリー槽室ではゼリー病の治療が行われます", + hair_restoration = "増毛科ではハゲ病の治療が行われます", + tongue_clinic = "ベロ出し病クリニックではベロ出し病の治療が行われます", + dna_fixer = "DNA修復室ではエイリアンDNA病の治療が行われます", + electrolysis = "電気脱毛室では毛むくじゃら病の治療が行われます", + decontamination = "汚染除去室は患者の宇宙放射線を除去するために使います", + pharmacy = "薬局では看護師が患者に薬を与えます", + ward = "病室は診断と治療の両方に有効です。病状の観察が行われ、また手術前の休息も取ります。看護師が必要です。", + operating_theatre = "手術室には2人の外科医資格を持った医師を必要とします", + psychiatry = "精神科では心の病気を治療し、他の患者の診察を手助けしますが、精神科医のスキルを持つ医師が必要です。", + training_room = "講義室では専門医が他の医師を教育します", + research_room = "研究者スキルを持つ医師が研究室で新しい薬や機器を開発します", + staffroom = "スタッフルームでは医師・看護師・作業員たちは休憩をして体力を回復します", + toilets = "患者があなたの病院をトイレにしないようにトイレを建ててください!", + }, + objects = { + litter = "ゴミ: 捨てるためのゴミ箱が見つからなかったので、患者は床に放り投げました", + bench = "長イス:患者1人分の座席を提供し、痛みを伴う処置の待ち時間をより快適にします。", + sofa = "ソファ: スタッフルームで休んでいるスタッフは、他に何か気を紛らわす良い方法がない限り、静かにソファに座ります", + video_game = "ビデオゲーム: スタッフをペトリスでリラックスさせましょう", + auto_autopsy = "自動解剖機: 新治療法の発見に非常に役立ちます", + reception_desk = "受付デスク: 受付係が患者を最初の診察室へ紹介します", + tv = "テレビ: スタッフがお気に入りのメロドラマを見逃さないようにしてください。", + inflator = "空気注入機: 風船あたま病を直します", + desk = "医師が自分のパソコンを置く場所が必要です", + pool_table = "ビリヤード台: スタッフはビリヤードのふりをすることができます", + bed = "ベッド: 重病人がこの上で横になります", + bookcase = "本棚: 医師を賢く見せる未開封の本のコレクション", + drinks_machine = "自販機: 患者の喉の乾きを軽減し、小銭を稼ぐことができます", + skeleton = "骨格標本: 解剖学のガイドとして、またハロウィンに使用されます", + computer = "コンピュータ: 研究に重要です", + bin = "ゴミ箱: 患者がここにゴミを捨てます", + pharmacy_cabinet = "薬品棚: すべての医薬品が保管されています", + radiator = "暖房機: 病院が凍りつくことから守ります", + atom_analyser = "原子分析機: 研究室に設置するとすべての研究プロセスを高速化します", + plant = "観葉植物: 患者の満足度を上げ、空気を浄化します", + fire_extinguisher = "消火器: 機器の故障による危険を軽減します", + lecture_chair = "講義イス: 生徒たちはここに座って、メモを取り、退屈して、ただ絵を描いています。椅子を置けば置くほど、より多くの医師が勉強できるようになります。", + toilet = "トイレ: 患者さん、ええと、トイレを使ってください", + toilet_sink = "流し台: 衛生的な患者は汚れた手をそこで洗うことができます。流し台が十分にないと、患者は不満を抱くでしょう。", + cabinet = "キャビネット: 患者カード、メモ、検査結果が入っています", + }, + machine_window = { + repair = "修理のために作業員を呼びます", + name = "名前", + close = "閉じる", + times_used = "使用回数", + status = "ステータス", + replace = "機械を交換する", + }, + toolbar = { + date = "日付", + town_map = "タウンマップ", + casebook = "治療の記録", + reputation = "あなたの評判", + edit = "部屋/設備を編集", + charts = "グラフ", + staff_list = "スタッフを管理する", + objects = "アイテムを設置する", + research = "研究", + policy = "方針", + status = "ステータス", + hire = "スタッフを雇う", + rooms = "部屋を建築", + bank_button = "左クリックで銀行マネージャー、右クリックで銀行明細", + balance = "残高", + }, + casebook = { + up = "上へスクロール", + down = "下へスクロール", + cured = "治療した患者の数", + deaths = "死亡者数", + increase = "金額を増やす", + decrease = "金額を減らす", + close = "治療記録を閉じる", + earned_money = "現在までの利益", + reputation = "治療または診断の評判", + sent_home = "家に送り返された患者の数", + treatment_charge = "治療費", + research = "この治療に特化した研究予算を使用するにはここをクリックしてください", + cure_requirement = { + hire_staff = "この治療を行うためにスタッフを雇う必要があります", + hire_staff_old = "この治療を行うために%sを雇う必要があります", + ward_hire_nurse = "この治療を行うためには、病室に看護師が必要です", + research_machine = "この治療に必要な機器を研究する必要があります", + hire_surgeons = "手術を行うために2人の外科医を雇う必要があります", + possible = "この治療を行うことができます", + not_possible = "この治療を行うことはまだできません", + build_room = "この治療を行うために部屋を建設する必要があります", + hire_surgeon = "手術を行うために2人目の外科医を雇う必要があります", + build_ward = "この治療を行うために病室を建設する必要があります", + }, + cure_type = { + drug_percentage = "この治療には薬を使用します - 現在薬は%d%%有効です", + unknown = "まだこの治療を行う事はできません", + psychiatrist = "精神科医がこの治療を行います", + machine = "この治療には設備が必要です", + drug = "この治療には薬を使用します", + surgery = "この治療には手術が必要です", + }, + }, + calls_dispatcher = { + assigned = "このボックスは、対応するタスクに誰かが割り当てられている場合にマークされます。", + task = "タスクの一覧 - タスクをクリックすると、割り当てられたスタッフのウィンドウが開き、タスクの場所までスクロールします。", + close = "タスク管理画面を閉じる", + }, + research = { + cure_inc = "治療研究の割合を増やす", + cure_dec = "治療研究の割合を減らす", + specialisation_inc = "特別研究の割合を増やす", + specialisation_dec = "特別研究の割合を減らす", + improvements_inc = "改良研究の割合を増やす", + improvements_dec = "改良研究の割合を減らす", + diagnosis_inc = "診断研究の割合を増やす", + diagnosis_dec = "診断研究の割合を減らす", + drugs_inc = "薬品研究の割合を増やす", + drugs_dec = "薬品研究の割合を減らす", + allocated_amount = "割り当てられた予算の金額", + close = "研究画面を閉じる", + }, + + watch = { + hospital_opening = "建設時間: 病院が開院するまでの残り時間です。GOボタンをクリックすると病院が即座に開院します。", + emergency = "緊急事態: すべての緊急患者を治療するまでの残り時間です。", + epidemic = "伝染病: 伝染病を隠蔽するための残り時間です。この時間が切れるか、感染患者が病院を去ると、健康検査官が訪れます。このボタンで予防接種モードのオン/オフを切り替えます。患者をクリックして、看護師による予防接種を受けさせてください。", + }, +} + +queue_window = { + num_in_queue = "順番待ち", + num_entered = "合計訪問数", + max_queue_size = "最大待ち人数", + num_expected = "列予想数", +} + +staff_title = { + junior = "ジュニア", + doctor = "ドクター", + consultant = "コンサルタント", + surgeon = "外科医", + psychiatrist = "精神科医", + researcher = "研究医", + nurse = "看護師", + receptionist = "受付係", + general = "作業員", +} + +staff_class = { + doctor = "医師", + handyman = "作業員", + receptionist = "受付係", + nurse = "看護師", + surgeon = "外科医", +} + +staff_descriptions = { + good = { + [1] = "非常に迅速で勤勉な労働者。", + [2] = "勤勉に働き、細部にまで気を配ります。", + [3] = "文字通り何でもできます。", + [4] = "信じられないほどフレンドリーで、いつも笑顔です。", + [5] = "驚異的なスタミナ。ノンストップで働き続けます。", + [6] = "非常に礼儀正しく、常にフレンドリーです。", + [7] = "信じられないほど才能があり、有能です。", + [8] = "仕事に対して非常に責任感があります。", + [9] = "決して諦めず、完璧を目指して努力します。", + [10] = "笑顔で人々を助けます。", + [11] = "魅力的で礼儀正しく、いつも親切です。", + [12] = "とてもやる気があり、献身的です。", + [13] = "親切でとても勤勉です。", + [14] = "忠実で友好的。ユーモアがある。", + [15] = "慎重で温和。災害時に頼りになる。", + }, + misc = { + [1] = "象の置物を集めている。。", + [2] = "スキューバダイビングが趣味。", + [3] = "氷で彫刻を作る。", + [4] = "『北の国から』の1話に出演した。", + [5] = "スーパーカーのオーナー。", + [6] = "ビールグラス用コースターの収集家。", + [7] = "バンジージャンプが好き。", + [8] = "ライブでダイブしがち。", + [9] = "丘サーファー。", + [10] = "川で遊ぶのが好き。", + [11] = "ウィスキーのブレンドが趣味。", + [12] = "熟練の日曜大工。", + [13] = "フランス映画が好き。", + [14] = "テーマパークでよく遊びます。", + [15] = "大型免許を持っている。", + [16] = "ラリーカードライバー。", + [17] = "バイオリンとチェロを演奏します。", + [18] = "撮り鉄。", + [19] = "超犬好き。", + [20] = "甘いものに目がない。", + [21] = "お風呂好き。", + [22] = "手芸インストラクター", + [23] = "家庭菜園で取れた野菜を配る。", + [24] = "非常勤特別巡査。", + [25] = "元クイズショーの司会者", + [26] = "戦争マニアで武器収集が趣味。", + [27] = "部屋の模様替えが趣味。", + [28] = "懐メロばかり聴く。", + [29] = "昆虫マニア。", + [30] = "コメディアンを野次るのが好き。", + [31] = "議会傍聴マニア。", + [32] = "庭いじりが好き。", + [33] = "偽造時計を密輸します。", + [34] = "ロックンロールバンドのボーカル。", + [35] = "連続テレビ小説は欠かさない", + [36] = "釣りバカ。", + [37] = "趣味は御朱印集め。", + }, + bad = { + [1] = "仕事が遅く、話がつまらない。", + [2] = "怠け者でやる気がない。", + [3] = "無気力で訓練不足。", + [4] = "横柄で失礼。人の神経を逆なでする。", + [5] = "スタミナゼロ。態度悪し。", + [6] = "キャベツのにおいがする。アホ。", + [7] = "訳もなく怒っている。", + [8] = "衝動的で集中力なし。軽率。", + [9] = "役立たず。責任感は少々。", + [10] = "無作法で陰口を叩く。", + [11] = "おっちょこちょいでトラブルメーカー。", + [12] = "無意味にリスクを負う。", + [13] = "どうしようもない向こう見ず。", + [14] = "ずる賢い破壊分子。", + [15] = "傲慢で自信家。", + }, +} +tooltip = { + handyman_window = { + prio_machines = "修理の優先順位を上げる", + prio_litter = "清掃の優先順位を上げる", + prio_plants = "水やりの優先順位を上げる", + }, + patient_window = { + graph = "クリックすると、患者の健康状態グラフと検査履歴とが切り替わります", + casebook = "患者の病気の詳細を表示", + close = "閉じる", + queue = "患者が並んでいる部屋の順番待ち列を表示", + happiness = "患者様の満足度", + warmth = "患者が感じる温かさ", + center_view = "患者に焦点を当てる", + thirst = "患者の喉の乾きのレベル", + send_home = "患者を自宅へ帰らせる", + abort_diagnosis = "検査が完了するまで待たずに、今すぐ治療を始めます", + }, + staff_window = { + doctor_seniority = "学位 (ジュニア、ドクター、コンサルタント)", + psychiatrist = "精神科医", + close = "ウィンドウを閉じる", + ability = "能力", + pick_up = "つかむ", + sack = "解放する", + surgeon = "外科医", + happiness = "満足度", + salary = "給料", + name = "名前", + tiredness = "疲労度", + center_view = "左キー: 画面を中央に配置、右キー: 次の従業員を選択", + skills = "スキル", + researcher = "研究者", + face = "スタッフの写真: クリックしてスタッフ管理画面へ移動", + }, +} + +pay_rise = { + definite_quit = "もう我慢できない!どんな条件で引き止めても無駄だ!この病院にはうんざりだ!", + regular = { + [1] = "もう疲れた。休息と$%dの昇給がなければ病院をやめてやる!", + [2] = "もうヘトヘトだ! $%dの昇給と休息を要求する。今すぐやれよ、悪徳経営者め!", + [3] = "おいおい俺は犬のように働いているんだぞ!$%dのボーナスをくれればやめないでいてやる。", + [4] = "不満しかないよ。%dの賃金アップを要求する!さもなければ出て行くよ。", + [5] = "医療職は給料が高いと聞いていたのに!$%dの給料アップをしないならゲームのプロデューサーに転職するよ。", + [6] = "もううんざり。まともな給料を払って!$%dの昇給で手をうってもいいよ。", + }, + poached = "%s から%dのオファーを受けている。同じ給料を払わないなら辞めちゃうよ。", +} + +confirmation = { + abort_edit_room = "現在部屋を設置または編集中です。必要なアイテムがすべて配置されていれば完了します。配置されていない場合は削除されます。続けますか?", + return_to_blueprint = "部屋の設置モードに戻りますか?", + delete_room = "この部屋を削除してもよろしいですか?", + quit = "ゲームを終了します。本当によろしいですか?", + needs_restart = "このオプションを変更するには、CorsixTHの再起動が必要です。保存されていない内容はすべて失われます。本当にこれを実行しますか?", + overwrite_save = "ゲームは既にこの名前で保存されています。上書きしてもよろしいですか?", + sack_staff = "このスタッフを解雇してよろしいですか?", + replace_machine = "%s を$%dで置き換えてもよろしいですか?", + restart_level = "レベルをリスタートしてもよろしいですか?", + maximum_screen_size = "入力した画面解像度は 3000 x 2000 を超えています。スムーズなフレーム レートでゲームを処理できるハードウェアがある場合は、この解像度を変更できます。続行してもよろしいですか?", + remove_destroyed_room = "$%dかかりますが、破壊された部屋を撤去してもよろしいですか?", + replace_machine_extra_info = "新しいマシンの状態は%d(現在 %d) になります。", + quit_mapeditor = "マップエディターを終了してもよろしいですか?", + restart_mapeditor = "マップエディターを再起動してもよろしいですか?", +} + +diseases = { + general_practice = { + name = "一般診察", + }, + diag_ward = { + name = "日帰り入院", + }, + diag_ultrascan = { + name = "診断: 超音波検査", + }, + diag_blood_machine = { + name = "診断: 血液検査", + }, + diag_x_ray = { + name = "診断: レントゲン", + }, + diag_psych = { + name = "診断: 精神科", + }, + diag_general_diag = { + name = "診断: 一般検査", + }, + diag_cardiogram = { + name = "診断: 心臓科", + }, + diag_scanner = { + name = "診断: スキャナー", + }, + autopsy = { + name = "解剖", + }, + third_degree_sideburns = { + name = "もみあげ症候群", + symptoms = "症状-巨大な髪型、ラメ入り衣装、厚底靴、派手派手な化粧等。", + cause = "原因-70年代への強烈な回帰願望。", + cure = "治療-精神科医が患者を現代に連れ戻すために、患者の格好がどんなにみっともないか理解させる。", + }, + discrete_itching = { + name = "かゆかゆ病", + symptoms = "症状-常にひっかき傷を負っている。", + cause = "原因-鋭い歯を持つ微小な昆虫に咬まれる。", + cure = "治療-薬局で処方された、汗と一緒に放出される粘液質のシロップを飲む。これにより蚊が近寄れなくなります。", + }, + the_squits = { + name = "下痢", + symptoms = "症状-ええと…言わなくても分かるでしょう?", + cause = "原因-残り物のピザを食べる。", + cure = "治療-落ち着きのない消化管を落ち着かせる特別製の胃腸薬を飲む。", + }, + spare_ribs = { + name = "スペアリブ病", + symptoms = "症状-胸部の不快感。", + cause = "原因-錠剤を飲まずに飲み込んだこと。", + cure = "治療-余った肋骨は2人の外科医によって切除され、病院のロゴの入ったビニール袋に入れて患者に渡されます。", + }, + serious_radiation = { + name = "宇宙放射線病", + symptoms = "症状-非常な不快感を覚える。", + cause = "原因-チューインガムとプルトニウムを間違えて食べた。", + cure = "治療-汚染物質を、汚染除去装置で綺麗に洗い流す。", + }, + infectious_laughter = { + name = "伝染性オヤジ病", + cure = "治療-精神科医が患者に、症状の重大さを理解させる。", + cause = "原因-昔からあるコメディー。", + symptoms = "症状-ばか笑いと超つまらないフレーズの連発。", + }, + hairyitis = { + name = "毛むくじゃら病", + cure = "治療-電気脱毛機で毛を取り去り、毛穴を塞ぐ。", + cause = "原因-月の光に当たりすぎ。", + symptoms = "症状-嗅覚の異常な発達。", + }, + broken_heart = { + name = "重度失恋病", + cure = "治療-2人の外科医が開胸手術をして、息を止めながら優しく心臓を修復する。", + cause = "原因-患者より金持ちで、若くて、やせている誰か。", + symptoms = "症状-バカンスの写真を見て、長時間泣く。", + }, + sweaty_palms = { + name = "手に汗にぎり病", + cure = "治療-精神科医がでっちあげの病気だということを患者に説明する。", + cause = "原因-就職面接前の緊張。", + symptoms = "症状-握手すると、水をたっぷり含んだスポンジを握ったような感じがする。", + }, + transparency = { + name = "スケスケ病", + cure = "治療-薬局でよく冷えた色水を飲ませる。", + cause = "原因-ヨーグルトを開けてから、蓋をなめる事。", + symptoms = "症状-肉が透けて見える。", + }, + alien_dna = { + name = "エイリアンDNA病", + cure = "治療-エイリアンのDNAを機械的に除去する。", + cause = "原因-凶悪なエイリアンに襲われる。", + symptoms = "症状-外見が次第にエイリアン化し、街を破壊したいという欲望が生まれる。", + }, + broken_wind = { + name = "おなら病", + cure = "治療-薬局で水分子を混合したスペシャルドリンクを素早く飲ませる。", + cause = "原因-食事の後にジムでランニングマシンで走る。", + symptoms = "症状-患者のすぐ後ろにいる人々を不快にさせる。", + }, + baldness = { + name = "ハゲ病", + cure = "治療-強い痛みを伴う機械を使用して患者の頭に毛髪を融合させる。", + cause = "原因-人気者になろうとして、嘘をつく。", + symptoms = "症状-頭がツルピカになり、とても恥ずかしい。", + }, + sleeping_illness = { + name = "居眠り病", + cure = "治療-看護婦が強力な興奮剤を大量に処方する。", + cause = "原因-口蓋にある睡眠腺の異常活動。", + symptoms = "症状-どこにでも飛び出したいという圧倒的な欲求。", + }, + corrugated_ankles = { + name = "足首うねうね病", + cure = "治療-脱法ハーブとスパイスを混ぜたものを飲んで、足首をまっすぐにする。", + cause = "原因-ガタガタ道の上を車で通る。", + symptoms = "症状-履物が合わなくなる。", + }, + tv_personalities = { + name = "テレビ症候群", + cure = "治療-精神科医が、患者にテレビを売ってラジオを買うように説得する。", + cause = "原因-昼間にテレビを見過ぎる。", + symptoms = "症状-料理番組を実演する妄想。", + }, + slack_tongue = { + name = "ベロだし病 ", + cure = "治療-舌切り機で素早く、効率的に、また痛みを伴って舌をちょん切る。", + cause = "原因-昼のメロドラマの噂のし過ぎ。", + symptoms = "症状-舌が元の5倍の長さに腫れる", + }, + king_complex = { + name = "王様症候群", + cure = "治療-精神科医が、患者にどれほどみっともなく見えるかを説明する。", + cause = "王様の霊が患者に乗り移った。", + symptoms = "症状-派手な衣装でチーズバーガーを食べる。", + }, + invisibility = { + name = "透明病", + cure = "治療-薬局でカラフルな飲み物をたくさん飲と患者は姿を現します。", + cause = "原因-放射性の目に見えないアリに噛まれた。", + symptoms = "症状-患者は不快感を感じません。実際、多くの人がこの症状を利用して家族に悪ふざけをします。", + }, + pregnancy = { + name = "妊娠", + cure = "治療-手術室で赤ちゃんを取り出して、洗ってから患者に見せます。", + cause = "原因-都市エリアの停電。", + symptoms = "症状-食生活と体型の変化。", + }, + iron_lungs = { + name = "鉄の肺病", + cure = "治療-二人の外科医が手術をして固くなった肺を摘出してしまう。", + cause = "原因-都市部のスモッグと焼き鳥屋の煙。", + symptoms = "症状-火を吐いたり水中で叫んだりできる。", + }, + chronic_nosehair = { + name = "鼻毛ぼうぼう病", + cure = "治療-薬局で看護婦に処方される、とてもまずい毛抜き剤を飲む。", + cause = "原因-自分より目下の人を鼻で笑う。", + symptoms = "症状-鳥の巣ができるほどの鼻毛が生える。", + }, + fake_blood = { + name = "熱血症候群", + cure = "治療-精神科医が患者をなだめて患者の心を落ち着かせる。", + cause = "原因-いつもジョークのネタにされてからかわれる。", + symptoms = "症状-静脈内の赤い液体が衣服に触れると蒸発します。", + }, + gastric_ejections = { + name = "ゲロゲロ病", + cure = "治療-吐き気を抑える特別製の胃腸薬を飲む。", + cause = "原因-スパイシーなメキシコ&インド料理。", + symptoms = "症状-半分消化された食物がぐちゃぐちゃになって患者から排出されます。", + }, + bloaty_head = { + name = "風船あたま病", + cure = "治療-頭を一度しぼませてから空気注入機でちょうどいい大きさまで膨らませる。", + cause = "原因-チーズのにおいを嗅いだり、汚い雨水を飲んだりする。", + symptoms = "症状-非常な不快感を覚える。", + }, + fractured_bones = { + name = "骨折", + cure = "治療-整骨マシンのレーザーで骨の破片を除去する。", + cause = "原因-高所からコンクリートへの落下。", + symptoms = "症状-大きな音が鳴り、患肢が動かなくなる。", + }, + jellyitis = { + name = "ゼリー病", + cure = "治療-患者を特別な部屋にあるゼリーの容器にしばらく浸す。", + cause = "原因-ゼラチン質に富んだ食事と、過剰な運動。", + symptoms = "症状-体がグニャグニャになり、よく転びはじめる。", + }, + uncommon_cold = { + name = "珍しい風邪", + cure = "治療-薬局で特別な成分から作られた珍しい咳止め薬を一口飲む。", + cause = "原因-空気中の鼻水菌。", + symptoms = "症状-くしゃみ、鼻水、肺の変色。", + }, + ruptured_nodules = { + name = "小瘤破裂", + cure = "治療-外科医2人で小瘤を摘出する。", + cause = "原因-寒いのにバンジージャンプをする。", + symptoms = "症状-正常にイスに座れなくなる。", + }, + kidney_beans = { + name = "豆入り腎臓病", + cure = "治療-2人の外科医が腎臓の側面に触れずに豆を取り除く。", + cause = "原因-飲み物に入っている氷を噛んで食べる。", + symptoms = "症状-腹痛と、頻繁にトイレへ行く。 ", + }, + heaped_piles = { + name = "毛玉症候群", + cure = "治療-強酸性の飲み物で体内の毛玉を強力に分解する。", + cause = "原因-ウォータークーラーの周りに立つ。", + symptoms = "症状-ビー玉の袋の上に座っているような気がする", + }, + golf_stones = { + name = "ゴルフ病", + cure = "治療-ゴルフの悪影響を2人の外科医による手術によって除去する。", + cause = "原因-ゴルフボールの中の有毒ガスの吸引。", + symptoms = "症状-突発的に狂喜するか、強烈に恥ずかしがる。", + }, + gut_rot = { + name = "内蔵腐食病", + cure = "治療-胃の中をコーティングする薬品を処方する。", + cause = "原因-オマリー婦人の咳止め入りウィスキー。", + symptoms = "症状-咳が出ない代わりに内蔵が溶けてしまう。", + }, + unexpected_swelling = { + name = "でぶでぶ病", + cure = "治療-2人の外科医が手術で身体に穴を開ける。", + cause = "原因-原因不明。", + symptoms = "症状-腫れ。", + }, + } + +adviser = { + level_progress = { + halfway_won = "このレベルをクリアするまであと半分です。", + close_to_win_increase_value = "もうすぐクリアです。|病院価値をあと$%dアップさせてください。", + another_patient_killed = "ああ、大変!またを殺してしまいましたよ。これで死亡者数は%d人になりました...", + reputation_good_enough = "よし、病院の評判はこのレベルをクリアするのに十分です。%d以上を保つよう心がけてください。他の問題を解決すれば完了です。", + financial_criteria_met = "このレベルの財務基準を満たしました。引き続き病院が効率的に運営されていることを確認しながら、残高$%d以上を維持してください。", + dont_kill_more_patients = "もう1人も患者を死なせるわけにはいきません!", + hospital_value_enough = "病院の価値を%d以上に維持し、その他の問題に対処してこのレベルをクリアしましょう。", + halfway_lost = "このレベルを失敗するまであと半分です。", + three_quarters_lost = "このレベルはあと4分の1で失敗です。", + three_quarters_won = "このレベルはクリアまであと4分の1です。", + improve_reputation = "このレベルをクリアするには、%d以上の評判が必要です。", + another_patient_cured = "よくやりました!また1人患者が回復しました。これで%d人目ですよ。", + nearly_lost = "もうすぐゲームオーバーです!", + cured_enough_patients = "このレベルをクリアするのに十分な患者を治療しました。あとは病院をもっとまとめてください。", + nearly_won = "もうすぐクリアです!", + }, + vomit_wave = { + started = "病院に嘔吐ウイルスが蔓延しているようです。病院をもっと清潔にしていれば、こんなことにはならなかったでしょう。作業員をもっと雇ったほうがいいかもしれません。", + ended = "ふぅ!あのゲロ爆弾を引き起こしたウイルスはほぼ消滅したようですね。今後は病院を清潔に保ってください。", + }, + warnings = { + patient_stuck = "誰かが行き詰まっています。病院をよりよく計画してください。", + need_staffroom = "スタッフたちが休めるスタッフルームを建てましょう。", + build_staffroom = "すぐにスタッフルームを建ててください。スタッフは働きすぎて崩壊寸前です。さあ、理性を取り戻してください!", + doctors_tired = "医師は非常に疲れています。早く休ませてあげてください。", + doctors_tired2 = "医師はクタクタです。すぐに休ませてあげてください。", + nurses_tired = "看護師は非常に疲れています。早く休ませてあげてください。", + nurses_tired2 = "看護師はクタクタです。すぐに休ませてあげてください。", + handymen_tired = "作業員は非常に疲れています。早く休ませてあげてください。", + handymen_tired2 = "作業員はクタクタです。すぐに休ませてあげてください。", + receptionists_tired = "受付係は非常に疲れています。早く休ませてあげてください。", + receptionists_tired2 = "受付係はクタクタです。すぐに休ませてあげてください。", + staff_tired = "スタッフは非常に疲れています。スタッフルームで休憩を取らせないと、過労で倒れてしまいますよ。", + staff_overworked = "スタッフを働かせすぎです。疲れとストレスで効率が悪くなり、悲惨なミスを犯し始めるでしょう。", + doctor_crazy_overwork = "ああ大変!医師の1人が過労で気が狂ってしまいました。すぐに休ませれば回復するかもしれません。", + reduce_staff_rest_threshold = "設定画面でスタッフの休憩閾値を下げて、スタッフがもっと頻繁に休憩できるようにしてみてください。単なるアイデアですが。", + staff_unhappy = "スタッフに不満が広がっています。彼らにボーナスを与えるか、もっと良い方法としてはスタッフルームを作ってみてください。また、方針画面でスタッフの休憩基準を変更することもできます。", + staff_unhappy2 = "スタッフに不満が広がっています。金銭面の不満も大きいようです。", + falling_1 = "おい!おかしいじゃないか。マウスをクリックする場所に気をつけろ。誰かが怪我をするかもしれないぞ!", + falling_2 = "ふざけるのはやめましょう。何がしたいんですか?", + falling_3 = "痛そう、きっと痛かったでしょうね。誰か医師を呼んで!", + falling_4 = "ここは病院であって、テーマパークではありません!", + falling_5 = "ここは人を倒す場所じゃないですよ、彼らは病気なんですから!", + falling_6 = "ここはボーリング場ではありません!病人をそんな風に扱うべきではありません!", + +-- 【研究者】 + research_screen_open_1 = "研究画面にアクセスするには、研究室を建てる必要があります。", + research_screen_open_2 = "現在のレベルでは研究は無効です。", + researcher_needs_desk_1 = "研究者には作業用のデスクが必要です。", + researcher_needs_desk_2 = "研究者は休憩をとらせてもらえて喜んでいます。もっと多くのスタッフに研究させるつもりなら、それぞれに作業用のデスクを用意する必要があります。", + researcher_needs_desk_3 = "各研究者が研究室で働くためには人数分のデスクが必要です。", + +-- 【看護師】 + nurse_needs_desk_1 = "各看護師が病室で働くためには人数分のデスクが必要です。", + nurse_needs_desk_2 = "看護師は休憩をとらせてもらえて喜んでいます。病室で複数人働かせるためには、それぞれにデスクを用意する必要があります。", + +-- 【作業員】 +-- 観葉植物 + plants_dying = "観葉植物が枯れそうです。もっと作業員を雇用してください。枯れた観葉植物が好きな患者はいませんよ。", + place_plants3 = "患者が病院の居心地が悪いと言っています。観葉植物で病院内の雰囲気をかえてみては?", + place_plants4 = "患者を元気づけるために、施設のあちこちに植物をもっと置いてください。", + desperate_need_for_watering = "観葉植物に水やりをするために作業員を雇う必要があります。", + too_many_plants = "観葉植物が多すぎます。中はジャングルのようです。", + place_plants2 = "みんな病院を去っていきます。観葉植物で引き止めてみてはいかがですか?", + plants_thirsty = "植物の世話をする必要があります。水が欲しくなってきています。", + change_priorities_to_plants = "観葉植物に水をまくように作業員の仕事の優先順位を変えなければなりません。 ", + place_plants_to_keep_people = "People are leaving. Placing plants might persuade them to stay.", +-- ゴミ + litter_everywhere = "いたるところにゴミが散乱しています。この問題に対処するために作業員を雇ってください。", + people_did_it_on_the_floor = "患者の中には耐えられない人もいます。清掃はとても大切な仕事です。", + litter_catastrophy = "ゴミ問題が深刻化しています。今すぐ作業員のチームを雇って対処してもらいましょう!", + some_litter = "深刻な問題になる前に作業員にゴミを処分してもらいましょう。", + too_much_litter = "ゴミの問題があります。もっと作業員を雇えば解決できるかもしれません。", + +-- 設備の修理 + machinery_slightly_damaged = "病院の設備が少し傷んできています。メンテナンスをしっかりしてください。", + machinery_damaged = "設備をすぐに直してください。すぐに故障を起こしはじめますよ!", + machinery_damaged2 = "設備修理のため、すぐに作業員を雇用してください!", + machinery_very_damaged = "緊急です!すぐに作業員を呼んで設備を修理させてください。もうすぐ壊れそうです!", + machines_falling_apart = "設備が壊れかけています。作業員をすぐに呼んでください!", + machine_severely_damaged = "%sがもうすぐ修復不可能なまでに壊れそうです。", + machinery_deteriorating = "設備が酷使されて壊れはじめましたよ!注意が必要です。", + +-- 【受付係】 + queue_too_long_at_reception = "受付で待っている患者が多すぎます。 受付デスクをもう1つ設置し、受付係をもう1人雇ってください。", + another_desk = "新しい受付係のために、もう1つ受付デスクを設置する必要があります。", + reception_bottleneck = "受付がボトルネックになっています。受付係をもう1人雇いましょう。", + no_desk = "いつかは受付デスクを作って受付係を雇うべきです!", + no_desk_1 = "患者を病院に呼びたければ受付係を雇い、彼女の働くデスクを用意してあげないといけませんよ!", + no_desk_2 = "よくやりました、これは世界記録に違いありません! ほぼ1年経っても患者がいません! この病院の経営を続けたいなら、受付係を雇って、彼女が働くための受付デスクを作る必要があります!", + no_desk_3 = "素晴らしいですね、1年近くも受付スタッフがいないなんて! どうやって患者を呼べるというのですか? 今すぐ準備して、ぐずぐずするのはやめてください!", + no_desk_4 = "受付係は、患者が到着したときに出迎えるための自分のワークステーションが必要です。", + no_desk_5 = "そろそろ時間です。もうすぐ患者が到着し始めるはずです!", + no_desk_6 = "受付係はいるので、彼女が働くために受付デスクをつくってはいかがですか?", + no_desk_7 = "受付デスクは作ったので、次は受付係を雇ってみてはいかがですか? これが準備できるまでは患者を診ることはできませんよ!", + +-- 伝染病 + deal_with_epidemic_now = "伝染病が重大な問題になっています。一刻も早く対処を! もし今伝染病を防がなければ、ひどい事になりますよ!", + epidemic_getting_serious = "伝染病が重大な問題になっています。何か手を打って下さい!", + many_epidemics = "同時に複数の伝染病が発生しているようです。 これは大惨事になる恐れがありますので、迅速に行動してください。", + +-- 料金 + fair_prices = "%sの料金は公平でバランスが取れているようです。", + charges_too_high = "料金が高すぎます。 短期的には大きな利益になりますが、最終的には患者が離れてしまいます。", + high_prices = "%sの料金が高すぎます。 短期的には大きな利益になりますが、最終的には患者が離れてしまいます。", + patient_not_paying = "患者が%sの支払いをしないで帰っていきます。 料金が高すぎるようです。", + charges_too_low = "料金が安すぎます。 これでは患者が病院に来やすくはなりますが、一人あたりの利益はあまり上がりません。", + low_prices = "%s の料金が安すぎます。 これで患者は病院に来るでしょうが、一人あたりの利益はあまり上がりません。", + +-- 財務状況 + cash_low_consider_loan = "財政状況があまり良くないですね。ローンを考えてみては?", + money_very_low_take_loan = "銀行残高がひどく少ないです。ローンがありますよ。", + financial_trouble = "深刻な財政難に陥っています。今すぐなんとかしてください。あと$%d減ったらこのレベルを無駄にしてしまうことになります。", + finanical_trouble2 = "財政状況が危機的です。もしあと$%dを失えばこのレベルは失敗です。 ", + financial_trouble3 = "銀行残高が少し心配です。もっとお金を稼ぐことを考えてください。あと$%dで大惨事です。", + pay_back_loan = "お金がたっぷりあります。ローンの返済について考えてみてはいかがですか?", + money_low = "銀行残高が少なくなっています!", + cannot_afford = "その人を雇うにはお金が足りません!", + cannot_afford_2 = "それを買うためにはお金が足りません!", + +-- 暖房 + patients_very_cold = "患者が寒がっています。暖房機をもっと設置するか、設定温度を上げてください。", + people_freezing = "信じられないことですが、このセントラルヒーティングの時代に、患者の中には凍えるほど寒い人もいます。部屋を温めるために暖房機を設置して設定温度を上げてください。", + patients_getting_hot = "患者が暑いと言っています。暖房機を減らすか、設定温度を下げてください。", + patients_too_hot = "患者は暑くなりすぎています。暖房機をいくつか撤去するか、設定温度を下げるか、自販機をもっと設置してください。", + staff_very_cold = "スタッフは寒いと文句を言っています。暖房機をもっと設置するか、設定温度を上げてください。", + staff_too_hot = "スタッフは暑いと文句を言っています。暖房機を減らすか、設定温度を下げてください。", + +-- 自販機 + patients_thirsty = "患者は喉が渇いています。自販機を設置した方がいいかもしれません。", + patients_thirsty2 = "みんな喉が渇いていると文句を言っています!自販機をもっと設置するか、今ある自販機を彼らの近くに動かしてください。 ", + patients_really_thirsty = "患者は本当に喉が渇いています。自販機をもっと設置するか、既存の自販機を最も長い列の近くに移動させてください", + patients_very_thirsty = "患者たちは本当に喉の渇きに苦しんでいます。すぐに自販機を設置しないと、みんなコーラを求めて家に帰ってしまいますよ。", + +-- 長イス + more_benches = "もっと長イスを設置してあげてください。患者たちが立ちっぱなしで可哀想です。", + people_have_to_stand = "病人たちが立ちっぱなしです。座れる場所を準備してあげてください。", + +-- トイレ + build_toilets = "今すぐにトイレを建ててください。さもないと不愉快なものを目にすることになりますよ。病院がどんな臭いになるか...", + need_toilets = "患者にはトイレが必要です。もっと便利な場所にトイレを建ててください。", + more_toilets = "トイレがもっと必要です。みんなもう我慢の限界です!", + build_toilet_now = "今すぐトイレを建ててください。みんなもう我慢できません。ニヤニヤしないでください。これは深刻な問題です。", + +-- 悪評 + nobody_cured_last_month = "先月は一人も治療できませんでした。", + no_patients_last_month = "先月は新しい患者が一人も来ませんでした。 衝撃です!", + hospital_is_rubbish = "あなたの病院はひどいと噂になっています。 患者たちは他の病院へ行き始めていますよ。", + bankruptcy_imminent = "ああ、破産に向かってまっしぐらです 。気を付けて!", + patients_unhappy = "患者はあなたの病院を嫌っています。 来院者を増やすために努力をしてください。", + many_killed = "あなたは今までに%d人を殺してしまいました。 治療しなきゃいけないの、わかってますよね。", + patient_leaving = "患者が1人去っていきます。 理由ですか?あなたのずさんな経営のせいです!!", + patients_leaving = "患者が去っています。植物、ベンチ、飲料機などを設置して、来院者のために病院を改善してください。", + patients_annoyed = "あなたの病院の運営方法に人々は非常に腹を立てています。 彼らを責めることはできません。 しっかりしてください、さもないと酷い結末に直面することになります!", + queues_too_long = "待ち時間が長すぎます!", + queue_too_long_send_doctor = "%sの待ち時間が長すぎます。 部屋に医師がいることを確認してください。", + }, + competitors = { + land_purchased = "%s が土地を購入しました。", + hospital_opened = "競合する病院: %s がこの地域に開設されました。", + staff_poached = "スタッフの 1 人が他の病院に引き抜かれました。", + }, + research = { + new_machine_researched = "新しい%sの研究が完了しました。", + drug_improved = "%sの薬が研究部門によって改良されました。", + drug_improved_1 = "%sの薬が研究部門によって改良されました。", + drug_fully_researched = "%s の研究が100%完了しました。", + new_drug_researched = "%sを治療する新しい薬が研究されました。", + machine_improved = "%sが研究部門によって強化されました。", + autopsy_discovered_rep_loss = "自動解剖機が発見されました。 一般大衆からの否定的な反応が予想されます。", + new_available = "新しい%sが利用可能になりました。", + }, + earthquake = { + alert = "震警報!病院内の設備が損傷します。メンテナンスが不十分だと破壊される可能性があります。", + damage = "地震が病院内の%d台の機械と、%d人の患者にダメージを与えました。", + ended = "うひゃー!すごい地震でしたね?|地震計では震度%dでした。", + }, + multiplayer = { + players_failed = "以下のプレイヤーは最後の目標を達成できませんでした: ", + poaching = { + not_interested = "ハッ!彼らはあなたの病院で働くことに興味がありません。彼らは今いる場所で満足しています。", + already_poached_by_someone = "なんてことでしょう!誰かがそのスタッフを引き抜こうとしています。", + in_progress = "このスタッフがあなたの病院で働きたいかどうかお知らせします。", + }, + objective_failed = "あなたは目標を達成できませんでした。", + everyone_failed = "全員が最後の目的を達成できませんでした。そのため、全員がプレイを続行できます!", + objective_completed = "あなたは目的を達成しました。おめでとうございます!", + }, + epidemic = { + serious_warning = "伝染病が重大な問題になっています。何か手を打って下さい!", + hurry_up = "伝染病が重大な問題になっています。一刻も早く対処を!もし今伝染病を防がなければ、ひどい事になりますよ!", + multiple_epidemies = "同時に複数の伝染病が発生しているようです。これは大惨事になる恐れがありますので、迅速に行動してください。", + }, + cheats = { + th_cheat = "おめでとうございます。チートを解除しました!", + norest_on_cheat = "えぇ、嘘でしょ!スタッフはカフェインを摂りすぎて、もう休む必要を感じていないようです。", + norest_off_cheat = "やれやれ。やっと興奮が収まったみたいです。スタッフはこれでちゃんと休めるでしょう。", + roujin_on_cheat = "Roujinのチャレンジが起動しました!今後数か月間の幸運を祈ります...", + roujin_off_cheat = "Roujinのチャレンジが無効になりました。すぐにすべて正常に戻ります。", + }, + goals = { + win = { + money = "このレベルの財務基準を満たすには、あと$%d必要です。", + reputation = "このレベルのクリア基準を満たすには、評判を%dまで上げてください。", + value = "病院の価値を%dまで上げてください。", + cure = "あと%d人の患者を治療すれば、このレベルをクリアするのに十分です。", + }, + lose = { + kill = "あと%d人の患者を殺せば、このレベルは失敗です!", + }, + }, + room_forbidden_non_reachable_parts = "この場所に部屋を設置すると、病院の一部にアクセスできなくなります。", + praise = { + many_benches = "患者用の座席が十分に確保されました。素晴らしいです。", + plants_thriving = "素晴らしい。植物は間違いなく元気に育っています。とてもいいですね。このまま続ければ、トロフィーをもらえるかもしれません。", + plenty_of_benches = "座席が十分にあるので、問題ありません。", + plants_are_well = "いいですね。植物をきちんと手入れしていますね。素晴らしいです。", + few_have_to_stand = "あなたの病院では、立っている人はほとんどいません。患者たちも喜ぶでしょう。", + many_plants = "素晴らしいです。植物がたくさんあります。患者たちも喜ぶでしょう。", + patients_cured = "%d人の患者が治癒されました。", + }, + room_requirements = { + pharmacy_need_nurse = "薬局には看護師を雇用しなければなりません。", + psychiatry_need_psychiatrist = "精神科室を建設したので、精神科医を雇用する必要があります。", + research_room_need_researcher = "研究室を使用するには、研究スキルを持つ医師を雇用する必要があります。", + op_need_two_surgeons = "手術室で手術を行うために外科医を2人雇用するしてください。", + op_need_another_surgeon = "手術室を使用できるようにするには、外科医をもう1人雇用する必要があります。", + gps_office_need_doctor = "診察室で働く医師を雇用する必要があります。", + reception_need_receptionist = "患者を案内するために受付係を雇用する必要があります。", + ward_need_nurse = "病室には看護師を雇用しなければなりません。", + training_room_need_consultant = "講義室を使用するにはコンサルタントを雇用する必要があります。", + op_need_ward = "患者が手術を待てるように、病室を建てて下さい。", + }, + surgery_requirements = { + need_surgeon_ward = "手術を行うには、外科医をもう1人雇用し、病室を建設する必要があります。", + need_surgeons_ward_op = "手術を行うには、外科医を2人雇用し、病室と手術室を建設する必要があります", + }, + boiler_issue = { + minimum_heat = "ああ、そこにいましたか。地下のボイラーが壊れました。病院内の人々が寒さに襲われてしまうでしょう。", + maximum_heat = "地下室のボイラーがおかしくなりました。暖房機の出力が最大になっています。人々は溶け始めています! 自販機を置けば少し状況を改善できるでしょう。", + resolved = "朗報です。ボイラーと暖房機は正常運転を再開しました。温度は患者とスタッフにとって適切なものになるはずです。", + }, + staff_advice = { + need_handyman_litter = "病院にゴミが散乱しています。片付けをするために作業員を雇用してください。", + need_doctors = "もっと多くの医師が必要です。最も長い待ち行列のある部屋に、最も優秀な医師を配置してみてください。", + need_handyman_machines = "病院の機械をメンテナンスするには、作業員を雇用する必要があります。", + too_many_doctors = "医師が多すぎます。現在暇している医師もいます。", + need_handyman_plants = "観葉植物に水やりをするために作業員を雇う必要があります。", + need_nurses = "看護師をもっと雇用する必要があります。病室と薬局には看護師が必要です。", + too_many_nurses = "看護師を雇いすぎているようです。", + }, + staff_place_advice = { + only_researchers = "研究医資格を持っている医師のみが研究室で働くことができます。", + not_enough_lecture_chairs = "各学生医師は座るための講義用の椅子が必要です!", + only_psychiatrists = "精神科医資格を持っている医師のみが精神科で働くことができます。", + receptionists_only_at_desk = "受付係のみが受付デスクで働くことができます。", + only_surgeons = "外科医資格を持っている医師のみが手術室で働くことができます。", + doctors_cannot_work_in_room = "医師は%sでは働けません。", + only_nurses_in_room = "看護師のみが%sで働くことができます。", + only_doctors_in_room = "医師のみが%sで働くことができます。", + nurses_cannot_work_in_room = "看護師は%sでは働けません。", + }, + build_advice = { + door_not_reachable = "人々はそのドアにたどり着くことができません。考えてみてください。", + blueprint_would_block = "その設置で他の部屋をブロックしてしまいます。部屋のサイズを変更するか、別の場所に移動してみてください。", + placing_object_blocks_door = "そのオブジェクトをそこに置くと、人々はドアにたどり着けなくなります。", + blueprint_invalid = "この設置は無効です。", + }, + information = { + first_cure = "よくやりました!一人目の患者を治療しましたよ。", + place_windows = "窓を設置すると部屋が明るくなり、スタッフのやる気も向上します。", + extra_items = "部屋に追加のアイテムを設置することで、スタッフの快適性が高まり、パフォーマンスが向上します。", + emergency = "緊急事態です!とにかく!急いで!早く!", + epidemic_health_inspector = "伝染病のニュースが保健省の耳に入りました。すぐに保健検査官の視察に備えてください。", + epidemic = "病院で伝染病が発生しました。すぐに対処する必要があります。", + handyman_adjust = "作業員の優先順位を調整することで、より効率的にゴミ掃除することができます。.", + patient_abducted = "患者の1人がエイリアンに誘拐されています。", + promotion_to_doctor = "1人のジュニアがドクターに昇格しました。", + patient_leaving_too_expensive = "患者が%sの料金を支払わずに去っています。高すぎます。", + promotion_to_specialist = "あなたの医師の1人が%sに昇格しました。", + fax_received = "画面の左下に表示されたアイコンは、重要な情報や決定が必要なことを知らせるものです。", + promotion_to_consultant = "人のドクターがコンサルタントに昇格しました。", + initial_general_advice = { + place_radiators = "患者たちが寒がっています。メニューから暖房機をさらに設置できます。", + first_patients_thirsty = "患者たちは喉が渇いています。彼らのために飲料機を設置してください。", + research_now_available = "あなたは最初の研究室を建設しました。これで研究画面にアクセスできます。", + psychiatric_symbol = "精神科医の資格を持つ医師は: |のアイコンを持ちます。", + surgeon_symbol = "手術が可能な医師は: {のアイコンを持ちます。", + research_symbol = "研究が可能な医師は: }のアイコンを持ちます。", + taking_your_staff = "誰かがあなたのスタッフを引き抜いています。彼らを引き留めるために戦わなければなりません。", + epidemic_spreading = "病院で伝染病が発生しています。感染した人が病院を出る前に治療してください。", + first_epidemic = "あなたの病院で伝染病が発生しています。隠蔽するか、白状するかを決めてください。", + autopsy_available = "自動解剖機が開発されました。これを使用して、厄介な患者や歓迎されない患者を処分し、研究に活用することができます。警告 - この機械の使用は非常に物議を醸す可能性があります。", + first_VIP = "最初の VIP訪問を受け入れようとしています。VIPが不衛生なものや不機嫌な患者を見ないように注意してください。", + machine_needs_repair = "修理が必要な機械があります。煙が出ている機械を見つけてクリックしてください。次に作業員便利屋ボタンをクリックしてください。", + increase_heating = "人々は寒がっています。タウンマップの画面から設定温度を上げてください。", + rats_have_arrived = "病院にネズミがはびこっています。マウスでマウスを撃退しましょう。", + first_emergency = "緊急患者の頭上には青い光が点滅しています。死ぬか時間切れになる前に治療してください。", + decrease_heating = "人々は暑がっています。タウンマップの画面から設定温度を上げてください。", + }, + first_death = "あなたはたった今、初めて患者を殺してしまいました。どんな気分ですか?", + pay_rise = "スタッフの1人が仕事を辞めてやると脅しています。彼らの要求に同意するか、彼らを解雇するかを選択してください。左下のアイコンをクリックすると、どのスタッフが辞めると脅しているかがわかります。", + larger_rooms = "部屋が広いと、スタッフはより大切にされていると感じ、パフォーマンスが向上します。", + vip_arrived = "気をつけてください! %sがあなたの病院を見学するために到着しました!彼を喜ばせるために、すべてをスムーズに進めてください。", + }, + placement_info = { + door_can_place = "このドアはここに配置できます。", + door_cannot_place = "申し訳ありませんが、このドアはここに配置できません。", + room_cannot_place = "この部屋はここに配置できません。", + room_cannot_place_2 = "この部屋はここには配置できません。", + object_can_place = "このオブジェクトはここに配置できます。", + window_can_place = "この窓はここに配置できます。いいですね。", + window_cannot_place = "あぁ、この窓はここには配置できません。", + reception_can_place = "この受付デスクはここに配置できます。", + reception_cannot_place = "この受付デスクはここに配置できません。", + staff_cannot_place = "このスタッフはここに配置できません。申し訳ありません。", + staff_can_place = "このスタッフはここに配置できます。", + object_cannot_place = "ねぇ、このオブジェクトはここに配置できませんよ。", + }, + tutorial = { + place_receptionist = "受付係を動かして好きな場所に配置します。賢いことに、受付係はデスクまでやって来ます。", + accept_purchase = "点滅しているアイコンを左クリックして購入します。", + click_gps_office = "点滅している線を左クリックして、診察室を選択します。", + door_in_invalid_position = "おっと!ドアを無効な位置に配置しようとしました。設計図の壁の別の場所を試してください。", + start_tutorial = "ミッション説明を読んでから、マウスの左ボタンをクリックしてチュートリアルを開始してください。", + room_too_small = "この部屋の設計図は小さすぎるため赤くなっています。さらにドラッグして大きくしてください。", + hire_receptionist = "患者を部屋に案内するために受付係が必要になります。", + hire_doctor = "病気の人を診断し治療するには医師が必要です。", + room_in_invalid_position = "おっと、この設計図は無効です。赤い部分は他の部屋や病院の壁と重なっている場所を示しています。", + reception_invalid_position = "受付デスクがグレーアウトされているのは、無効な位置にあるからです。移動または回転させてみてください。", + place_doctor = "医師を病院内のどこかに配置してください。診断する患者がいれば、医師は診察室に向かいます。", + select_doctors = "点滅しているアイコンを左クリックして、雇うことができる医師を確認してください。", + build_reception = "こんにちは。まず、病院には受付デスクが必要です。設備メニューから選んでください。", + receptionist_invalid_position = "受付係をその場所に配置することはできません。", + select_diagnosis_rooms = "点滅しているアイコンを左クリックして、診断設備のリストを表示してください。", + click_and_drag_to_build = "診察室を建設するには、まずその大きさを決める必要があります。左マウスボタンを押しながらドラッグして部屋のサイズを決めてください。", + rotate_and_place_reception = "右マウスボタンをクリックしてデスクを回転させ、左マウスボタンで配置してください。", + select_receptionists = "点滅しているアイコンを左クリックすると、現在雇うことができる受付係が表示されます。アイコンの数字は候補者の人数を示しています。", + next_receptionist = "これがリスト内の最初の受付係です。点滅しているアイコンを左クリックして次の受付係を確認してください。", + prev_receptionist = "点滅しているアイコンを左クリックして、前の受付係を確認してください。", + choose_receptionist = "良い能力と適正な給与を持つ受付係を選び、点滅しているアイコンを左クリックして雇用してください。", + confirm_room = "点滅しているアイコンを左クリックして部屋を設置するか、Xアイコンをクリックして前のステップに戻ってください。", + place_objects = "右クリックで部屋のアイテムを回転させ、左クリックで配置してください。", + choose_doctor = "各医師の能力をよく確認してから選んでください。", + doctor_in_invalid_position = "おっと!そこに医師を配置することはできません。", + room_too_small_and_invalid = "設計図が小さすぎて無効な場所にあります。設置を続けてください。", + information_window = "ヘルプボックスは、あなたがちょうど建設した素敵な診察室についての情報を教えてくれます。", + place_door = "設計図の壁に沿ってマウスを動かし、ドアを配置したい場所に作成してください。", + place_windows = "ドアと同じように窓を配置してください。窓は必須ではありませんが、スタッフが外を見ることができるとより幸せです。", + window_in_invalid_position = "この窓は無効な場所にあります。もしよろしければ壁の他の場所に配置してみてください。", + room_big_enough = "設計図の大きさが十分になりました。マウスボタンを離すと配置されます。必要に応じて移動またはサイズ変更ができます。", + order_one_reception = "点滅しているラインを左マウスボタンで一度クリックして、受付デスクを注文してください。", + build_pharmacy = "おめでとうございます!それでは薬局を建設し、看護師を雇って稼働する病院を作ってください。", + build_gps_office = "患者の病気の診断を開始するために診察室を建設してください。", + object_in_invalid_position = "このアイテムは無効な場所にあります。別の場所に配置するか、回転させて設置できるようにしてください。", + }, +} + +totd_window = { + previous = "前のヒント", + tips = { + [1] = "病院には受付デスクと診察室が必要です。 その後の必要設備は病院を訪れる患者の種類に応じて決まります。 薬局は常に良い選択肢ですけどね。", + [2] = "空気注入機のような機械はメンテナンスが必要です。 修理のために作業員を1〜2人雇用してください。 さもないとスタッフや患者が危険にさらされます。", + [3] = "スタッフはしばらくすると疲れてしまいます。 スタッフルームを建てて、スタッフがリラックスできるようにしてください。", + [4] = "スタッフと患者が暖かく感じるように十分な暖房機を配置してください。 タウンマップを使用して、病院内でより多くの暖房が必要な場所を特定します。", + [5] = "医師のスキルレベルは診断の質と速度に大きな影響を与えます。 診察室に熟練した医師を配置すると追加の検査施設はそれほど必要ありません。", + [6] = "ジュニアやドクターは講義室でコンサルタントから学ぶことでスキルを向上させることができます。 コンサルタントが特別な資格(外科医、精神科医、または研究者)を持っている場合、そのスキルも教えられます。", + [7] = "ヨーロッパの緊急番号(112)をファックス機に入力してみましたか? サウンドがオンになっていることを確認してください!", + [8] = "解像度や言語などの設定は、メインメニューとゲーム内のオプションウィンドウで調整できます。", + [9] = "英語以外の言語を選択しましたが、至る所に英語のテキストがありますか? 不足しているテキストをあなたの言語に翻訳する手助けをしてください!", + [10] = "CorsixTHチームは強化を求めています!コーディング、翻訳、またはグラフィックスの作成に興味がありますか?Discordサーバー、Sub-Reddit、Matrixサーバーで連絡してください。リンクは私たちのウェブサイト(CorsixTH.com)にあります。", + [11] = "バグを見つけた場合は、バグトラッカーに報告してください:th-issues.corsix.org", + [12] = "各レベルには、次のレベルに進むために満たすべき要件があります。 レベル目標への進捗を確認するには、ステータスウィンドウをチェックしてください。", + [13] = "既存の部屋を編集または削除したい場合は、下のツールバーにある編集ボタンを使用してください。", + [14] = "待っている患者が多い場合、マウスカーソルをその部屋に重ねることで、その部屋を待っている患者をすぐに見つけることができます。", + [15] = "部屋のドアをクリックして、その部屋の待ち状況を表示します。 待ち状況の並び替えや、患者を他の部屋に送るなどの微調整ができます。", + [16] = "不満を持ったスタッフは頻繁に給与の引き上げを要求します。 スタッフが快適な環境で働いていることを確認して、それを防ぎます。", + [17] = "病院で待っている間、患者は喉が渇くでしょう。 暖房の設定温度を上げるとさらに喉が渇きます! 戦略的な場所に自動販売機を配置して追加の収入を得ましょう。", + [18] = "すでに発見した病気であれば、診断プロセスを早期に中止して、推測により治療を行うことができます。 ただし、誤った治療のリスクが高まり、患者の死につながる可能性があるので注意してください。", + [19] = "緊急事態は余裕のあるキャパシティがあれば、追加の資金を稼ぐ良い機会となります。", + [20] = "ご存知でしたか? 作業員を特定の作業に割り当てることができます。 スタッフのプロフィール画面でそれぞれの作業ボタンをクリックして割り当てしてください!", + }, + next = "次のヒント", +} + +fax = { + emergency = { + cure_not_possible_build = "この治療を行うために%sを建設する必要があります", + location = "%sで事件が発生しました", + choices = { + accept = "まかせんかい!!", + refuse = "ごめん。勘弁して。", + }, + free_build = "もしこの混乱を収める事ができれば評判が上がりますが、もし失敗すればあなたの評判はがた落ちでしょう。", + locations = { + [1] = "サッチャー化学プラント", + [2] = "まやかし大学", + [3] = "宇宙園芸センター", + [4] = "危険物質研究所", + [5] = "モリスダンサーズ集会", + [6] = "フロッグ&ブル パブ", + [7] = "ビッグデーブ酒店と葬式商会", + [8] = "タージカレーハウス", + [9] = "バート中古石油化学製品商店", + }, + num_disease = "現在%d人の%sの患者が治療を待っています。注意してください。", + bonus = "この緊急事態に対応することで、最大$%dのボーナスが得られます。しかし、もし失敗すればあなたの評判はがた落ちでしょう。", + cure_not_possible = "現時点ではこの病気を治療できません。", + cure_possible = "必要な設備と技術は持っています。|きっとこの緊急事態を収拾できます!", + cure_not_possible_build_and_employ = "%sを建設し、%sを雇う必要があります。", + num_disease_singular = "現在1人の%s患者がいて、即時の対応が必要です。", + cure_possible_drug_name_efficiency = "必要な機器と技術を既に持っています。必要な薬もあります。それは%sであり、効果は%d パーセントです。", + cure_not_possible_employ = "%sを雇用する必要があります。", + }, + epidemic = { + cover_up_explanation_1 = "しかし、隠蔽を試みる場合、保健省が発見する前に、限られた時間内で感染した患者全員を治療する必要があります。", + cover_up_explanation_2 = "保健省検査官が訪問し、伝染病の隠蔽がまだ進行中だと発見した場合、厳しい措置を取られる可能性があります。", + disease_name = "医師が伝染性の病気%sを発見しました。", + declare_explanation_fine = "もし伝染病を宣言すれば、罰金$%dを支払い評判を落とします。その代わりにすべての患者にワクチンが自動的に接種されます。", + choices = { + cover_up = "患者が1人も病院を出ないように気を付けながら、制限時間内で感染者全員を治療する。", + declare = "伝染病を発表し、罰金を払い、評判を落とす。", + }, + }, + disease_discovered = { + close_text = "新しい症例が発見されました。", + need_to_build = "これに対処するためには%sを建設しなければなりません。", + need_to_employ = "この危機に対処するために%sを雇用してください。", + need_to_build_and_employ = "%s を建設し、%sを雇用すればうまくいくでしょう。", + discovered_name = "チームが新しい症例を発見しました。それは%sです。", + can_cure = "この病気に対処することができます。", + }, + vip_visit_query = { + vip_name = "%s があなたの病院を訪問したいと希望しています。", + choices = { + invite = "VIPに正式な招待状を出す。", + refuse = "言い訳をして、VIPの訪問を避ける。", + }, + }, + diagnosis_failed = { + situation = "すべての診断機を試しましたが、まだ何の病気か判りません。", + choices = { + take_chance = "イチかバチか治療する。", + send_home = "患者を家に送り返す。", + wait = "もっと診断室を建てるまで患者を待たせる。", + }, + what_to_do_question = "この患者をどうしましょう?", + partial_diagnosis_percentage_name = "%dパーセントの確率で「%s」だという結果が出ました。.", + }, + emergency_result = { + earned_money = "最大ボーナス$%dのうち、$%dを獲得しました。", + close_text = "クリックして閉じる", + saved_people = "あなたは%d人中%d人を救いました。", + }, + choices = { + accept_new_level = "次のレベルに進む", + decline_new_level = "もう少しプレイを続ける", + return_to_main_menu = "メインメニューに戻る", + }, + vip_visit_result = { + ordered_remarks = { + [1] = "なんて素晴らしい病院だ。次に本当に具合が悪くなったら、絶対にここに入院するぞ。", + [2] = "これこそが本当の病院だ!", + [3] = "これは素晴らしい病院だ。いくつかの病院に入ったことがあるからわかりますよ。", + [4] = "驚くべき病院経営です。招待してくださって感謝します。", + [5] = "まあ、悪くはないですな...", + [6] = "良い病院ですな。ところで皆さん、タージでカレーでもいかがです?", + [7] = "ふむ、もっとひどい所も見て来ましたが...改善が必要なのは言うまでもないですな。", + [8] = "いやいや、気分が悪くなっても、ここだけは来たくないですな。", + [9] = "率直に言って何の変哲もない病院ですな。もっと期待していたんですが。", + [10] = "なんでわざわざ来たんだろう?4時間連続のオペラの方がマシだ!", + [11] = "目にしたものにがっかりしたよ。これを病院と呼ぶのか?豚小屋と言った方がお似合いだな!", + [12] = "公の場で注目を浴び、こんな臭い場所を訪れさせられることにうんざりだ!もうこんな仕事辞めてやる。", + [13] = "なんてひどい場所だ。ここを閉鎖するために運動を開始する!", + [14] = "こんなに酷い病院は見たことがない。なんてざまだ!", + [15] = "正直ショックを受けました。あれは病院と呼べる代物じゃない。一杯引っかけに行くぞ!", + }, + cash_grant = "$%dの援助金を受けとりました。", + vip_remarked_name = "あなたの病院を訪れた後、%sはこう発表しました。", + close_text = "ご訪問いただきありがとうございました。", + rep_loss = "それに応じて、あなたの評判は下がりました。", + remarks = { + [1] = "なんて素晴らしい病院だ。次に本当に具合が悪くなったら、絶対にここに入院するぞ。", + [2] = "これこそが本当の病院だ!", + [3] = "これは素晴らしい病院だ。いくつかの病院に入ったことがあるからわかりますよ。", + [4] = "驚くべき病院経営です。招待してくださって感謝します。", + [5] = "まあ、悪くはないですな...", + [6] = "良い病院ですな。ところで皆さん、タージでカレーでもいかがです?", + [7] = "ふむ、もっとひどい所も見て来ましたが...改善が必要なのは言うまでもないですな。", + [8] = "いやいや、気分が悪くなっても、ここだけは来たくないですな。", + [9] = "率直に言って何の変哲もない病院ですな。もっと期待していたんですが。", + [10] = "なんでわざわざ来たんだろう?4時間連続のオペラの方がマシだ!", + [11] = "目にしたものにがっかりしたよ。これを病院と呼ぶのか?豚小屋と言った方がお似合いだな!", + [12] = "公の場で注目を浴び、こんな臭い場所を訪れさせられることにうんざりだ!もうこんな仕事辞めてやる。", + [13] = "なんてひどい場所だ。ここを閉鎖するために運動を開始する!", + [14] = "こんなに酷い病院は見たことがない。なんてざまだ!", + [15] = "正直ショックを受けました。あれは病院と呼べる代物じゃない。一杯引っかけに行くぞ!", + bad = { + [1] = "なんでわざわざ来たんだろう?4時間連続のオペラの方がマシだ!", + [2] = "目にしたものにがっかりしたよ。これを病院と呼ぶのか?豚小屋と言った方がお似合いだな!", + [3] = "公の場で注目を浴び、こんな臭い場所を訪れさせられることにうんざりだ!もうこんな仕事辞めてやる。", + }, + mediocre = { + [1] = "ふむ、もっとひどい所も見て来ましたが...改善が必要なのは言うまでもないですな。", + [2] = "いやいや、気分が悪くなっても、ここだけは来たくないですな。", + [3] = "率直に言って何の変哲もない病院ですな。もっと期待していたんですが。", + }, + super = { + [1] = "なんて素晴らしい病院だ。次に本当に具合が悪くなったら、絶対にここに入院するぞ。", + [2] = "これこそが本当の病院だ!", + [3] = "これは素晴らしい病院だ。いくつかの病院に入ったことがあるからわかりますよ。", + }, + very_bad = { + [1] = "なんてひどい場所だ。ここを閉鎖するために運動を開始する!", + [2] = "こんなに酷い病院は見たことがない。なんてざまだ!", + [3] = "正直ショックを受けました。あれは病院と呼べる代物じゃない。一杯引っかけに行くぞ!", + }, + free_build = { + [1] = "とても素晴らしい病院ですね!ただ、資金の制限がなければ運営するのはそれほど難しくないですよね?", + [2] = "私は経済学者ではありませんが、私でもこの病院を運営できると思います。この意味わかりますよね?", + [3] = "とてもよく運営されている病院です。ただ、不況には気をつけてくださいね!…そうか、あなたには関係ない話でしたね。", + }, + good = { + [1] = "驚くべき病院経営です。招待してくださって感謝します。", + [2] = "まあ、悪くはないですな...", + [3] = "良い病院ですな。ところで皆さん、タージでカレーでもいかがです?", + }, + }, + rep_boost = "この地域でのあなたの評判が向上しました。", + telegram = "電報!", + }, + disease_discovered_patient_choice = { + guessed_percentage_name = "チームは患者の病状を推測する必要がありました。それが%sである確率は%dパーセントです。", + need_to_employ = "この状況に対処するためには%sを雇用してください。", + disease_name = "研究チームは新しい病気「%s」を発見しました。", + choices = { + wait = "患者をしばらく病院で待たせる。", + send_home = "患者を自宅へ送り返す。", + research = "患者を研究科に送る。", + }, + need_to_build = "これに対処するためには%sを建設する必要があります。", + need_to_build_and_employ = "%sを設置し、%sを雇用すればうまくいきます。", + can_not_cure = "この病気を治療することはできません。", + what_to_do_question = "患者をどうしますか?", + }, + epidemic_result = { + rep_loss_fine_amount = "新聞がこの伝染病事件を大きく取り上げるでしょう。あなたの評判は大きく傷つき、さらに罰金として$%dが科されます。", + succeeded = { + part_1_name = "検査官があなたの病院で%sが広まったという噂を聞きつけました。", + part_2 = "しかしながら、検査官は噂を裏付ける証拠を見つける事ができませんでした。", + }, + close_text = "やった!", + hospital_evacuated = "健康委員会はあなたの病院を閉鎖する以外、手がありませんでした。", + fine_amount = "政府は国家緊急事態を宣言し、罰金として%dが科されます。", + compensation_amount = "政府はこの噂があなたの病院に与えた損害の代償金として$%dを授与することを決定しました。", + failed = { + part_1_name = "伝染病%sの発生を隠そうとした結果、", + part_2 = "あなたの病院スタッフは地域に伝染病を広げてしまいました。", + }, + }, +} + +vip_names = { + [1] = "トランプトン市長", + [2] = "ローレンス・ナイチンゲール", + [3] = "オランダ王ベルナルド", + [4] = "ビルマ民主党反対派リーダー、アウンサンスーチー", + [5] = "レジナルド・クランブリー卿", + [6] = "新世紀教会 大司教", + [7] = "クロフォード・パーヴス市議会議員", + [8] = "ロケット・ロニー・ジェプソン", + [9] = "アーロン・マスク", + [10] = "L.F.プロブスト3世", + health_minister = "保健省大臣", +} + +disease_discovered_patient_choice = { + need_to_employ = "この状況に対処するためには%sを雇用してください。", +} + +introduction_texts = { + demo = " デモ病院へようこそ!//残念ながらデモ版にはこのレベルしか含まれていません。 しかし、ここにはあなたを忙しくさせるのに十分なものがたくさんあります! 様々な病気に対応するためには異なる部屋が必要です。 時々緊急事態が発生することもあります。 また、研究室を使用して追加の部屋を研究する必要もあります。 あなたの目標は、$100,000を稼ぎ、病院の価値を$70,000にし、評判を700にすることです。 同時に、患者の少なくとも75%を治療してください。 評判が300を下回ったり、患者の40%以上を死亡させてしまうとゲームオーバーになります。//頑張ってください!", + level1 = " 最初の病院へようこそ!//受付デスクを配置し、診察室を建設し、受付係と医師を雇うことで病院を運営し始めましょう。 それから患者が来るのを待ちます。 精神科を設置し、精神科の資格を持つ医師を雇うのも良いアイデアです。 薬局と看護師も患者を治療するために不可欠です。 風船あたま病の患者には注意してください。 空気注入室がそれをすぐに解決します。 10人の患者を治療し、評判が200以下にならないようにしましょう。", + level2 = " このエリアにはより多くの種類の病気がありますので、研究科を建てることお勧めします。 より多くの患者を治療できるように病院を設計してください。 病院を清潔に保ち、できるだけ評判を高めるように心がけてください。 ベロだし病に対応するためには、ベロ出し病クリニックが必要です。 新しい病気を診断するために心臓科も建設できます。 これらの部屋はどちらも建設する前に研究する必要があります。 また、病院を拡張するために、追加の土地を購入することもできます。 タウンマップから購入が可能です。 評判300、銀行残高$10,000、40人の患者を治療することを目指してください。", + level3 = " 今回は裕福なエリアに病院を設立します。 保健省はあなたがここで健全な収益を上げると期待しています。 最初に良い評判を得る必要がありますが、病院が順調に運営され始めたら、できるだけ多くの資金を稼ぐことに集中してください。 それだけではなく、緊急事態が発生する可能性もあります。 同じ症状を持つ人が同時に大挙して押し寄せて来ますが、全員を時間内に治療すれば評判向上と多額のボーナスを受け取れます。 王様症候群のような病気が発生する可能性があり、手術室と病室の建設を予算に組み込んでおくべきです。 $20,000を稼いで基準を達成してください。 ", + level4 = " すべての患者を満足させ、できるだけ効率的に対応し、死者を最小限に抑えてください。 評判もできるだけ高く保つようにしてください。 あまりお金の事を心配しすぎるのも良くありません。 病院の評判が上がれば、お金は後から付いてきます。 医師の訓練を行い、能力を上げることもできます。 他の人よりも透けて見える患者もいるかもしれませんが、しっかり対処してください。 評判を500以上にしましょう。", + level5 = " このレベルは様々な症例を扱う必要な忙しい病院になります。 登場する医師は皆、大学を出たばかりの初心者ですので、講義室を建てて適切なレベルに訓練することが重要です。 医者の訓練が可能なコンサルタントは3人しかいませんから、彼らの幸福度には気を付けて下さい。 さらに、この病院はサンアンドロイド断層の上に建っていることも注意が必要です。 地震のリスクが常に存在します。 地震は機械を破壊し、病院のスムーズな運営を妨げるでしょう。 評判を400まで上げ、$50,000を銀行に貯めて成功を収めてください。さらに200人の患者を治療してください。", + level6 = " あなたの知識をフル活用して、スムーズでよく管理された病院を設立し、健全な利益を上げ、病気の人々が投げかけるすべての問題に対処できるようにしてください。 この地域の環境は特に細菌や感染症が繁殖しやすいことを意識してください。 徹底的な衛生管理が行わなければ、患者に伝染病が広がるのは避けられないでしょう。 $150,000を稼ぎ、病院の価値が$140,000を超えるようにしてください。", + level7 = " ここでは保健省の厳しい目が光っています。 銀行残高を高く保ち、良い評判を得られるように気を付けてください。 不必要な死亡は許されません ― 死亡者は経営にとって最大の敵です。 一流のスタッフを常に揃えて、必要な機器がすべて揃っていることを確認してください。 評判600と銀行残高$200,000を目指してください。", + level8 = " 効率よく利益を生み出す素晴らしい病院を作れるかどうかは、あなたにかかっています。この地域の住民はかなり裕福です。 彼らからいくら巻き上げられるかは、あなたの腕次第です。 人々を治療するのは素晴らしいことですが、それよりも本当に大切なのはお金もうけです。 病気の人々からできるだけ多くのお金を稼ぎましょう。 このレベルを完了するために$300,000を集めてください。", + level9 = " 保健省の銀行口座にお金を入れ、大臣のための新しいリムジン代を支払った後、病人と困っている人々に役に立つ思いやりがありよく管理された病院を作ることに戻れます。 ここでは多くの異なる問題が発生することが予想されますが、よく訓練されたスタッフと必要な設備があれば、どんな問題も解決できるはずです。 病院の価値が$200,000であり、銀行に$400,000が必要です。 それ以下では、レベルをクリアすることはできません。", + level10 = " 保健省は、この地域で発生するすべての病気に対応するだけでなく、薬の効き目にも集中するよう求めています。保健省検査官シックからの警告がありましたので、すべての薬が非常に効率的であることを確認してください。また、病院自体も非難の余地がないように、死亡者数も最低に抑えてください。ヒントとして、ゼリー槽のためにスペースを確保しておくことをお勧めします。すべての薬を少なくとも80%の効き目に開発し、評判を650にし、銀行に500,000ドルを貯めてクリアしましょう。", + level11 = " 究極の病院を構築するチャンスが与えられました。 保健省があなたに期待するのは世界最高の病院です。 大金を稼ぎ、非常に高い評判を持ち、あらゆる可能性に対応することが期待されています。 これは重要な仕事です。 成功させるには特別な能力が必要でしょう。 また、この地域ではUFOの目撃情報もあるので、スタッフが予想外の訪問者に対応できるように準備してください。 病院の価値を240,000ドルにし、銀行に500,000ドルを貯め、評判を700にしてください。", + level12 = " これが最大の挑戦です。あなたの仕事に感銘を受けた保健省は、あなたに最高の仕事を用意しました。 またもや究極の病院を建設し、巨万の富を稼ぎ、驚異的な評判を得ることです! また、可能な限りすべての土地を購入し、すべての病気を治療し(すべてとは1つ残らずという意味です)、すべての賞を獲得することも期待されています。 できそうですか? 650,000ドルを稼ぎ、750人を治療し、評判を800にしてクリアしましょう。", + level13 = " 病院管理者としてのあなたの驚異的な手腕が、秘密特殊部隊の特別秘密部門の目に止まりました。 彼らはあなたにスペシャルボーナスを用意しています。 ネズミ汚染病院がネズミターミネーターを必要としています。 作業員がすべてのゴミを片付ける前に、できるだけ多くのネズミを撃たなければなりません。 準備OKですか?", + level14 = " また新しい挑戦です。 それは完全に予期しない驚くべき病院です。 これを成功させれば、あなたは勝者の中の勝者となります。 ただし、簡単だとは思わないでください。これまでに直面する最高にタフなミッションです。幸運を祈ります!", + level15 = "病院経営の基礎はこんなところです。 医師達は患者の診断に関して、あなたの助けを必要としています。 彼らを助けるには、検査室等の部屋を建ててあげましょう。", + level16 = " 患者の診断がある程度進んだら、治療施設やクリニックを建設する必要があります。まず手始めに薬局を建てるのが良いでしょう。薬を投与するために看護師も必要です。", + level17 = " 最後に一言。病院の評判には気をつけてください。 評判が良ければ、遠方から患者が訪れるようになります。 もし、たくさん死者を出したり、人々を不幸にさせなければ、このレベルをクリアするのはそう難しくないはずです! さあ、やってみましょう。幸運を祈ります。頑張ってください!", + level18 = "", +} + +letter = { + [1] = { + [1] = "親愛なる%s様//", + [2] = "素晴らしい! 病院経営において素晴らしい手腕を発揮されました! 我々保健省は、あなたがもっと大きな病院で働く気がないかお尋ねしたい。 あなたにぴったりのプロジェクトがあると思います。 あなたの給料は$%dになります。 御一考下さい。//", + [3] = "%s病院での仕事に興味がありますか?", + }, + [2] = { + [1] = "親愛なる%s様//", + [2] = "エクセレント! あなたの病院での業績は素晴らしいです。 景色を変え、新しい挑戦を望むのであれば、新たなプロジェクトを用意しました。 無理をする必要はありませんが、やってみる価値は十分あると思います。 給与は$%dです。//", + [3] = "%s病院での仕事を望みますか?", + }, + [3] = { + [1] = "親愛なる%s様//", + [2] = "あなたはこの病院での在任期間中に大成功を収めました。 したがって、我々はあなたに大きな期待を寄せており、他の場所でのポジションを提供したいと考えています。 給与は$%dで、この新しい挑戦を気に入ってくれると思います。//", + [3] = "s病院でのポジションに興味がありますか?", + }, + [4] = { + [1] = "親愛なる%s様//", + [2] = "おめでとうございます! 我々保健省一同は、あなたの病院運営手腕に非常に感銘を受けています。 あなたが保健省の金の卵であることは間違いありません。 ただ、あなたの能力を試す事ができるような、難しい仕事を好むのではないでしょうか。 給与は$%dですが、決定はあなたに委ねます。//", + [3] = "%s病院での仕事を引き受けてくれますか?", + }, + [5] = { + [1] = "親愛なる%s様//", + [2] = "再度のお願いです。 あなたがこの魅力的な病院を離れたくない気持ちは尊重します。 しかし、今一度のご検討をお願いします。 もし他の病院に移り、円滑に運営いただけるのであれば、素晴らしい給与$%dを提供します。//", + [3] = "今すぐ%s病院に移りたいですか?", + }, + [6] = { + [1] = "親愛なる%s様//", + [2] = "ご機嫌いかがですか。 あなたがこの素晴らしく運営された病院をどれほど愛しているかを理解しています。 しかしながら、今後のキャリアも考えるべきだと思います。 もし異動のご決断をいただけるなら、$%dの給与を用意しています。 再考の価値はあると思います。//", + [3] = "%s病院でのポジションを希望しますか?", + }, + [7] = { + [1] = "親愛なる%s様//", + [2] = "お久しぶりです。 保健省は、あなたが現在の病院に留まる決定を再考するかどうかをお聞きしたいです。 現在の素晴らしい病院に満足しているのは当然のことですが、あなたにとって更なる発展の時が来たのです。 より挑戦的なポストと給与$%dを受け入れるが、あなたのより良い未来に繋がっていると信じています。//", + [3] = "%s病院でのポストを引き受けてくれますか?", + }, + [8] = { + [1] = "親愛なる%s様//", + [2] = "ごきげんよう。 前回のお手紙では私共の申し出を受けて頂けませんでしたね。 今回は更なる好条件―新しい病院での最高のポジションと給与$%dを提案いたします。 前回の決定を再考頂けるのではと考えています。 いかがですか? あなたにぴったりの仕事だと思います。//", + [3] = "%s病院でのポジションを引き受けてくれますか?", + }, + [9] = { + [1] = "親愛なる%s様//", + [2] = "あなたは医学の長い歴史の中で最も優れた病院経営者であることを証明しました。 この大きな成果は報われるべきですので、全病院協会の会長職を提供したいと思います。 給与は$%dです。 これからは、訪れる全ての病院で、熱狂的に歓迎されるでしょう!//", + [3] = "これまでのすべてに感謝します。長い半引退生活を楽しんでください。//", + }, + [10] = { + [1] = "親愛なる%s様//", + [2] = "おめでとうございます。 あなたは我々が任命したすべての病院を見事に運営していただきました。 この素晴らしい業績により、世界中の都市を自由に行き来する資格があります。 年金として$%dが支給されます。 全国を無料で旅行し、熱心な支持者にすべての病院の活動を宣伝していただければと思います。//", + [3] = "私たちは皆、あなたを誇りに思っています。命を救うために尽力してくださったことに感謝しています。//", + }, + [11] = { + [1] = "親愛なる%s様//", + [2] = "あなたの仕事ぶりはすべての人々のお手本でした。 多くの病院をこれほど見事に経営されたことに感謝と尊敬の意を表します。 私たちはあなたに生涯給与として$%dを提供し、オフィシャルオープンカーで都市から都市へ移動し、あなたがどのようにしてこれほどの成果を達成したかを講演していただきたいと考えています。//", + [3] = "あなたはすべての知的階級の人々にとっての模範であり、世界中の誰もがあなたを人類の宝だと見なしています。//", + }, + [12] = { + [1] = "親愛なる%s様//", + [2] = "今世紀始まって以来の最高の病院管理者としての成功したキャリアが終わりに近づいています。 あなたの国への影響にふさわしく、フェスティバルの開会、船の進水、トークショーの出演などを行うことだけで、保健省は給与として$%dを提供したいと考えています。 それは私たち全員とって素晴らしいPRとなるのです!//", + [3] = "このポジションを受け入れてください。難しい仕事ではなく、どこに行くにも車と警察の護衛を提供します。//", + }, + custom_level_completed = "よくやりました!このカスタムレベルのすべての目標を達成しました!", + return_to_main_menu = "メインメニューに戻りますか?それともプレイを続けますか?", + campaign_level_completed = "よくやりました! レベルをクリアしました。 でも、まだ終わりではありません! %s病院でのポジションに興味がありますか?", + campaign_completed = "素晴らしい! すべてのレベルをクリアしました。 これでリラックスして、インターネット上のフォーラムにあなたの成果を報告できますね。 お疲れ様でした!", + dear_player = "親愛なる%s様", + campaign_level_missing = "申し訳ありませんが、このキャンペーンの次のレベルが見つからないようです。 (名前:%s)", +} +information = { + level_lost = { + [1] = "残念!このレベルに失敗しました。次回はうまくいくといいですね!", + [2] = "失敗の理由:", + balance = "銀行残高が%d以下になりました。", + reputation = "評判が%d以下になりました。", + percentage_killed = "患者の%dパーセント以上を死亡させました", + cheat = "これはあなたの選択ですか?それとも間違ったボタンを選択しましたか?それとも正しくチートすることすらできないのですか?面白くないですねぇ?", + }, + cheat_not_possible = "このレベルではそのチートは使用できません。チートにも失敗しましたね。面白くないですよねぇ?", + custom_game = "CorsixTHへようこそ。このカスタムマップを楽しんでください!", + no_custom_game_in_demo = "申し訳ありませんが、デモバージョンではカスタムマップをプレイできません。", + very_old_save = "このレベルを開始してからゲームに多くの更新がありました。すべての機能が意図通りに動作することを確認するために再開始を検討してください。", + cannot_restart = "残念ながら、このカスタムゲームはリスタート機能が実装される前に保存されました。", +} + +warnings = { + newersave = "警告: より新しいバージョンのCorsixTHからセーブデータをロードしました。 クラッシュが発生する可能性があるため、続行は推奨されません。 自己責任でプレイしてください。", + levelfile_variable_is_deprecated = "通知: レベル '%s' にはレベルファイル内に廃止予定の変数定義が含まれています。 '%LevelFile' は '%MapFile' に名前が変更されました。 マップの作成者にレベルを更新するように伝えてください。", +} + +trophy_room = { + reputation = "REPUTATION", + cash = "CASH", + pop_percentage = { + awards = { + [1] = "昨年度、あなたの病院は地域での高い支持率を得ました!! よくやりました!", + [2] = "おめでとうございます。 地域の全病院中最高の支持率を得ました。", + [3] = "素晴らしい! 地域の他病院すべての合計よりも高い支持率を獲得しました!", + }, + penalty = { + [1] = "今年の来院者数はあまりに低すぎます。 お金を稼ぐには患者が必要です。", + [2] = "地域最低の支持率を記録しました。 非常に恥ずかしいことです。", + }, + }, + curesvdeaths = { + awards = { + [1] = "昨年のあなたの病院の治療率は素晴らしいものでした。 お祝い申し上げます。", + }, + penalty = { + [1] = "あなたの病院の治療率は地域で最低です。 より多くの人を治療し、死なせないようにしてください。 がっかりさせないでください。", + }, + }, + best_value_hosp = { + trophies = { + [1] = "あなたの病院の非常に高い価値を表彰します。 高価な設備は高い治療を提供します。 素晴らしいです!", + }, + regional = { + [1] = "ゲーム内で最も価値のある病院を持つことをお祝いします。 素晴らしい結果です! この調子で続けてください。", + }, + penalty = { + [1] = "地域最低の病院価値を記録しました。 この恥ずべき事態に何か手を打ってください。 もっと高価なものを手に入れましょう!", + }, + }, + rats_accuracy = { + trophies = { + [1] = "ネズミの射撃精度が%d%%であったことを称えて、シンジケートウォーズ賞を贈ります。", + [2] = "昨年、病院で狙ったネズミの%d%%を退治するという正確無比な腕を称えて、このトロフィーを授与します。", + [3] = "病院内のすべてのネズミの%d%%を殺したことを記念して、ダンジョンキーパートロフィーを授与します。おめでとうございまチュ~!", + }, + }, + no_deaths = { + trophies = { + [1] = "ノーお悔やみ賞の受賞おめでとう! 昨年は1人の死人も出しませんでしたね。", + [2] = "ライフ フォーエバー コーポレーションが、昨年の死亡者ゼロの達成を称え、このトロフィーを贈ります。", + [3] = "あなたの素晴らしい病院で死亡者ゼロを達成したことで、サバイバル賞を授与されました。素晴らしいです。", + }, + awards = { + [1] = "今年、あなたの病院での死亡者数が非常に少ないことを記念して、この賞を贈ります。 素晴らしいです。", + [2] = "あなたの素晴らしい能力により、病院での死亡者数を最小限に抑えました。 この成果に非常に満足していいでしょう。", + }, + regional = { + [1] = "昨年、他のどの病院よりも低い患者死亡者数を記念して、この賞を贈ります。", + }, + penalty = { + [1] = "あなたの病院では昨年多数の死亡者数を出しました。 とても残念です。 より多くの人々を生き延びさせてください。", + [2] = "あなたの病院は患者にとって危険でしかありません。 死亡させるのではなく、患者を治療してください。", + }, + }, + gen_repairs = { + awards = { + [1] = "病院の機械をよく整備している作業員の働きに対して特別賞が授与されます。 よくやりました。 休暇をあげましょう。", + [2] = "作業員たちは他のどの病院よりも優れたパフォーマンスを発揮しました。これは重要な成果であり、称賛に値します。", + [3] = "あなたの病院の設備は素晴らしく整備されています。 作業員たちが示した献身は並外れたもので、素晴らしい仕事ぶりには脱帽です!!", + }, + penalty = { + [1] = "作業員は機械のメンテナンスをサボっています。 もっとよく監督するか、より多くの作業員を雇うべきです。", + [2] = "機械のメンテナンスが最低です。 もっとスタッフが管理に気を使うよう躾けてください。", + }, + }, + many_cured = { + trophies = { + [1] = "昨年、病院のほぼすべての患者を治療したことで、マリー・キュリー賞を受賞しました。 おめでとうございます。", + [2] = "国際治療財団は、昨年あなたの病院で非常に多くの人々を治療したことを称え、キュアーオールトロフィーを授与します。", + [3] = "昨年、病院の患者の大部分を治療したことで、「病気に負けないうがい薬」トロフィーが授与されました。", + }, + awards = { + [1] = "昨年、たくさんの人を治療したことにお祝いを申し上げます。 多くの人々があなたの仕事のおかげで元気になりました。", + [2] = "他のどの病院よりも多くの患者を治療したことを称えて、この賞を受け取ってください。素晴らしい業績です。", + }, + regional = { + [1] = "他のすべての病院を合わせたよりも多くの患者を治療したことで、究極の治療賞を授与します。", + }, + penalty = { + [1] = "効果的な治療が提供できていません。 もっと治療の質を上げることに専念してください。", + [2] = "あなたの病院は、他のどの病院よりも患者の治療率が低いです。 保健省を失望させています。 もう言うことはありません。", + }, + }, + research = { + regional_bad = { + [1] = "地域内の他のすべての病院の方があなたの病院よりも研究が優れています。 研究は病院の進歩に非常に重要ですので、保健省はカンカンです。", + }, + regional_good = { + [1] = "薬と設備の研究に関して、昨年あなたの病院は地域で1番の成績を修めました! 研究スタッフの頑張りの成果です。", + }, + awards = { + [1] = "あなたの病院の研究科は常に最新の技術を取り入れてきました。 研究スタッフはこの賞に値します。 素晴らしいです。", + [2] = "昨年、期待以上の薬品や機器を研究しました。 この賞を保健省から受け取ってください。", + }, + penalty = { + [1] = "新治療法、設備、新薬の開発が遅れています。 技術の進歩は病院の進歩。 深刻な問題です。", + }, + }, + consistant_rep = { + trophies = { + [1] = "今年最も完璧な基準と最高の評判を得たことで、内閣大臣賞を授与されます。 素晴らしいです!", + [2] = "昨年、最高の評判を持つ病院としてSqueakiKlean賞を受賞したことをお祝いします。 当然の結果ですが。", + }, + }, + sold_drinks = { + trophies = { + [1] = "病院内での甘い飲み物の消費を促進したあなたへ、世界歯科医協会からこのトロフィーと表彰状を授与されます。", + [2] = "病院で今年売られた清涼飲料の数を記念して、ソフトドリンク小売業のコラコーラトロフィーが授与されました。", + [3] = "飲料充填株式会社を代表して、今年病院で販売されたソフトドリンクの驚異的な数を称え、このチョコレートコーティングトロフィーを授与します。", + }, + }, + rats_killed = { + trophies = { + [1] = "昨年病院で%d匹のネズミを撃退したことで、害虫撲滅トロフィーが授与されます。", + [2] = "トロフィーの受賞です! これは病院で%d匹のネズミを非情にも退治した功績によるものです。", + [3] = "昨年病院で%d匹のネズミを退治した優れたスキルにより、ラットブラスタートロフィーを受賞しました。", + }, + }, + happy_staff = { + trophies = { + [1] = "一生懸命働くスタッフをできるだけ幸せに保ったことで、スマイル賞を授与します。", + [2] = "幸福のアダミ協会は、あなたの病院に不幸なスタッフが昨年1人も居なかったことを称え、このトロフィーを授与します。", + [3] = "このトロフィー「大輝杯」は、昨年の1年間、すべてのスタッフを幸福に保ったあなたに与えられます。 笑顔があふれています!", + }, + regional_good = { + [1] = "あなたのスタッフは他のどの病院よりも幸せです。 幸せなスタッフは、より多くの利益とより少ない死亡者を意味します。 保健省もニッコリです。", + }, + penalty = { + [1] = "スタッフは皆不満を抱えています。 良いスタッフこそ病院の資産だと肝に命じて下さい。 スタッフをもっと幸せにしないと、いつか全員失うことになります。", + }, + awards = { + [1] = "スタッフがこの賞を贈ります。 改善の余地はありますが、全体的には良好な扱いを受けたと言っています。", + [2] = "あなたのスタッフはあなたの下で働くことに非常に満足しており、笑顔が絶えません。 あなたは素晴らしい経営者です!", + }, + regional_bad = { + [1] = "あなたは気が付いていなかったかもしれませんが、昨年、あなたのスタッフは皆、不満を抱えながら働いてきました。 他のすべての病院はあなたの病院よりもスタッフを幸せにしています。", + }, + }, + all_cured = { + awards = { + [1] = "昨年、病院のすべての患者を治療したことで、マリー・キュリー賞を受賞しました。 おめでとうございます。", + }, + trophies = { + [1] = "国際治療財団は、昨年あなたの病院を訪れるすべての患者を治療したことを称え、キュアーオールトロフィーを授与します。", + [2] = "昨年、病院のすべての患者を治療したことで、「病気に負けないうがい薬」トロフィーが授与されました。", + }, + }, + emergencies = { + regional_bad = { + [1] = "あなたの病院は緊急事態対応で地域で最悪です。 地域の緊急治療リーグの最下位に沈んでいるのは、あなたの責任です。", + }, + regional_good = { + [1] = "昨年、あなたの病院が他のどの病院よりも緊急事態に対処したことを認め、保健省からこの賞を授与します。", + }, + award = { + [1] = "おめでとうございます。 緊急事態への効率的かつ効果的な対応が、この特別賞をもたらしました。 よくやりました。", + [2] = "あなたの緊急事態対応は卓越しています。 この最優秀緊急対応賞は、多くの病気や苦しみに対処する最高の能力を示したことを称えています。", + }, + penalty = { + [1] = "あなたの緊急時の対応はお粗末でした。 急患は正確で適切な処置を必要としてますが、あなたはそれを提供できませんでした。", + }, + }, + happy_patients = { + awards = { + [1] = "昨年、あなたの病院に訪れた人たちはとても満足していました! 誇らしいですね。", + [2] = "ゲーム内の他のどの病院よりも、患者達はあなたの病院の治療にとても満足していました!", + }, + penalty = { + [1] = "治療を受けた人は、この病院のひどさに皆、顔をしかめています。 保健省の尊敬を得たいのであれば、もっと良い結果を出す必要があります。", + [2] = "あなたの病院の患者たちは皆、この病院を最低だと言います。 患者の幸せをもっと考慮するべきです。", + }, + }, + high_rep = { + awards = { + [1] = "上出来です。 昨年、かなり印象的な評判を築いた功績により小さな賞を受賞しました。", + [2] = "素晴らしい! 昨年度最高の評判を得たことにより賞を受賞しました!", + }, + regional = { + [1] = "いずれの病院よりも最高の評判を受けた功績で、ブルフロッグ賞をお受け取りください。 最高栄誉賞の受賞おめでとう!", + [2] = "あなたの病院は今年度、他病院全てを合わせてもかなわないほどの評判を得ました! 大きな成果です!", + }, + penalty = { + [1] = "昨年を通して非常に悪い評判を維持していたことで、懲戒処分を受けます。 改善を期待します。", + [2] = "あなたの病院の評判は地域で最悪です。 恥ずかしいったらありゃしません。 もっと努力するか、転職先を探してください。", + }, + }, + hosp_value = { + awards = { + [1] = "保健省は、あなたの病院の高い病院価値を表彰しています! おめでとうございます!", + }, + regional = { + [1] = "あなたは財テク王です!! あなたの病院は、地域内の他のすべての病院を合わせたよりも価値があります。", + }, + penalty = { + [1] = "あなたの病院の価値はお世辞にも高いとは言えません。 財政面での失敗が原因です。 良い病院は高価な病院であることを忘れないでください。", + }, + }, + wait_times = { + award = { + [1] = "おめでとうございます。 あなたの病院は一貫して待ち時間が非常に短いと評価されています。 これは重要な賞です!", + }, + penalty = { + [1] = "待ち時間があなたの病院では長すぎます。常に許容できない行列があります。もっと患者の整理をうまくやってください。", + }, + }, + cleanliness = { + regional_good = { + [1] = "あなたの病院は地域で最も清潔だと評価されています。 作業員たちは昇進に値します。 あなたも尊敬されて然るべきです。", + }, + award = { + [1] = "検査官はあなたの病院が非常に清潔であると評価しています。 清潔な病院は安全な病院です。 引き続き作業員たちにこの良い仕事を続けさせてください。", + }, + regional_bad = { + [1] = "あなたの病院は地域で1番の不潔さを誇っています。 周辺のすべての病院は廊下をもっと清潔に保っています。 あなたは医療界にとって恥です。 なんとかしてください。", + }, + }, + healthy_plants = { + awards = { + [1] = "昨年、あなたは観葉植物を見事に育てたことを評しまして、緑育肥料賞を授与いたします。", + }, + trophies = { + [1] = "過去12ヶ月間にわたりすべての植物を良好な状態に保った功績で、観葉植物の友の会より、グリーントロフィー・オブ・ヘルスを授与いたします。", + [2] = "昨年、病院の植物を最良の健康状態に保った功績で、グリーンフィンガートロフィーをお受け取りください。", + }, + }, + happy_vips = { + trophies = { + [1] = "昨年病院を訪れたVIP達に好印象を与えたことにより、ノーベル賞を送ります。 皆あなたの病院に非常に好意的なコメントを寄せました。", + [2] = "有名人エージェンシーから、あなたの病院を訪れたすべてのVIPを満足させたことで、セレブリティトロフィーを授与されることをお祝いします。 少し有名になり、ほぼ私たちの仲間入りです。", + [3] = "あなたの病院を訪れたすべての著名人の生活を向上させたことで、VIP訪問賞を受賞しました。 素晴らしい!", + }, + }, +} + + +bank_manager = { + current_loan = "Current Loan", + interest_rate = "Interest Rate", + interest_payment = "Interest Payment", + hospital_value = "Hospital Value", + statistics_page = { + date = "Date", + money_in = "In", + money_out = "Out", + balance = "Balance", + current_balance = "Current Balance", + details = "Details", + }, + balance = "Balance", + insurance_owed = "Insurance Owed", + inflation_rate = "Inflation Rate", +} \ No newline at end of file diff --git a/WindowsInstaller/config_template.txt b/WindowsInstaller/config_template.txt index dbf2dd656e..d5503fe27c 100644 --- a/WindowsInstaller/config_template.txt +++ b/WindowsInstaller/config_template.txt @@ -33,6 +33,7 @@ height = SCREEN_SIZE_HEIGHT -- German / de / ger / deu -- Hungarian / hu / hun -- Italian / it / ita +-- Japanese / ja / jp -- Korean / kor / ko -- Norwegian / nb / nob -- Polish / pl / pol From 0ed0893033ffb54fd03deffcd8fb01f0ce838457 Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Mon, 4 Nov 2024 19:57:27 +0000 Subject: [PATCH 69/85] Update LICENSE.txt --- LICENSE.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/LICENSE.txt b/LICENSE.txt index 2bf1edaf34..96cabb7ced 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -105,6 +105,7 @@ Copryight (C) 2024 Anthony Dillon Copyright (C) 2024 SebastianoPistore Copryight (C) 2024 jetenergy Copyright (C) 2024 Yurii "JurecStrongman" +Copyright (C) 2024 ShimaKen et al. From 3dd4cf3c959af12695553f5ef034235fb7db5b68 Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Mon, 4 Nov 2024 20:07:52 +0000 Subject: [PATCH 70/85] Removed trailing whitespace --- CorsixTH/Lua/languages/japanese.lua | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/CorsixTH/Lua/languages/japanese.lua b/CorsixTH/Lua/languages/japanese.lua index b29cb8555c..0be06f386c 100644 --- a/CorsixTH/Lua/languages/japanese.lua +++ b/CorsixTH/Lua/languages/japanese.lua @@ -1074,7 +1074,7 @@ tooltip = { drugs_dec = "薬品研究の割合を減らす", allocated_amount = "割り当てられた予算の金額", close = "研究画面を閉じる", - }, + }, watch = { hospital_opening = "建設時間: 病院が開院するまでの残り時間です。GOボタンをクリックすると病院が即座に開院します。", @@ -1564,7 +1564,7 @@ adviser = { litter_catastrophy = "ゴミ問題が深刻化しています。今すぐ作業員のチームを雇って対処してもらいましょう!", some_litter = "深刻な問題になる前に作業員にゴミを処分してもらいましょう。", too_much_litter = "ゴミの問題があります。もっと作業員を雇えば解決できるかもしれません。", - + -- 設備の修理 machinery_slightly_damaged = "病院の設備が少し傷んできています。メンテナンスをしっかりしてください。", machinery_damaged = "設備をすぐに直してください。すぐに故障を起こしはじめますよ!", @@ -1586,7 +1586,7 @@ adviser = { no_desk_5 = "そろそろ時間です。もうすぐ患者が到着し始めるはずです!", no_desk_6 = "受付係はいるので、彼女が働くために受付デスクをつくってはいかがですか?", no_desk_7 = "受付デスクは作ったので、次は受付係を雇ってみてはいかがですか? これが準備できるまでは患者を診ることはできませんよ!", - + -- 伝染病 deal_with_epidemic_now = "伝染病が重大な問題になっています。一刻も早く対処を! もし今伝染病を防がなければ、ひどい事になりますよ!", epidemic_getting_serious = "伝染病が重大な問題になっています。何か手を打って下さい!", @@ -1643,7 +1643,7 @@ adviser = { patients_unhappy = "患者はあなたの病院を嫌っています。 来院者を増やすために努力をしてください。", many_killed = "あなたは今までに%d人を殺してしまいました。 治療しなきゃいけないの、わかってますよね。", patient_leaving = "患者が1人去っていきます。 理由ですか?あなたのずさんな経営のせいです!!", - patients_leaving = "患者が去っています。植物、ベンチ、飲料機などを設置して、来院者のために病院を改善してください。", + patients_leaving = "患者が去っています。植物、ベンチ、飲料機などを設置して、来院者のために病院を改善してください。", patients_annoyed = "あなたの病院の運営方法に人々は非常に腹を立てています。 彼らを責めることはできません。 しっかりしてください、さもないと酷い結末に直面することになります!", queues_too_long = "待ち時間が長すぎます!", queue_too_long_send_doctor = "%sの待ち時間が長すぎます。 部屋に医師がいることを確認してください。", @@ -2123,7 +2123,7 @@ letter = { [1] = "親愛なる%s様//", [2] = "ご機嫌いかがですか。 あなたがこの素晴らしく運営された病院をどれほど愛しているかを理解しています。 しかしながら、今後のキャリアも考えるべきだと思います。 もし異動のご決断をいただけるなら、$%dの給与を用意しています。 再考の価値はあると思います。//", [3] = "%s病院でのポジションを希望しますか?", - }, + }, [7] = { [1] = "親愛なる%s様//", [2] = "お久しぶりです。 保健省は、あなたが現在の病院に留まる決定を再考するかどうかをお聞きしたいです。 現在の素晴らしい病院に満足しているのは当然のことですが、あなたにとって更なる発展の時が来たのです。 より挑戦的なポストと給与$%dを受け入れるが、あなたのより良い未来に繋がっていると信じています。//", @@ -2401,7 +2401,7 @@ trophy_room = { regional_bad = { [1] = "あなたの病院は地域で1番の不潔さを誇っています。 周辺のすべての病院は廊下をもっと清潔に保っています。 あなたは医療界にとって恥です。 なんとかしてください。", }, - }, + }, healthy_plants = { awards = { [1] = "昨年、あなたは観葉植物を見事に育てたことを評しまして、緑育肥料賞を授与いたします。", From 287d73cfa1c024fc3b0a8931919fad83345e80af Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Mon, 4 Nov 2024 20:12:56 +0000 Subject: [PATCH 71/85] Replaced tabs with multiple spaces --- CorsixTH/Lua/languages/japanese.lua | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CorsixTH/Lua/languages/japanese.lua b/CorsixTH/Lua/languages/japanese.lua index 0be06f386c..b1b296aba4 100644 --- a/CorsixTH/Lua/languages/japanese.lua +++ b/CorsixTH/Lua/languages/japanese.lua @@ -1031,7 +1031,7 @@ tooltip = { decrease = "金額を減らす", close = "治療記録を閉じる", earned_money = "現在までの利益", - reputation = "治療または診断の評判", + reputation = "治療または診断の評判", sent_home = "家に送り返された患者の数", treatment_charge = "治療費", research = "この治療に特化した研究予算を使用するにはここをクリックしてください", @@ -1644,7 +1644,7 @@ adviser = { many_killed = "あなたは今までに%d人を殺してしまいました。 治療しなきゃいけないの、わかってますよね。", patient_leaving = "患者が1人去っていきます。 理由ですか?あなたのずさんな経営のせいです!!", patients_leaving = "患者が去っています。植物、ベンチ、飲料機などを設置して、来院者のために病院を改善してください。", - patients_annoyed = "あなたの病院の運営方法に人々は非常に腹を立てています。 彼らを責めることはできません。 しっかりしてください、さもないと酷い結末に直面することになります!", + patients_annoyed = "あなたの病院の運営方法に人々は非常に腹を立てています。 彼らを責めることはできません。 しっかりしてください、さもないと酷い結末に直面することになります!", queues_too_long = "待ち時間が長すぎます!", queue_too_long_send_doctor = "%sの待ち時間が長すぎます。 部屋に医師がいることを確認してください。", }, @@ -1820,7 +1820,7 @@ adviser = { hire_receptionist = "患者を部屋に案内するために受付係が必要になります。", hire_doctor = "病気の人を診断し治療するには医師が必要です。", room_in_invalid_position = "おっと、この設計図は無効です。赤い部分は他の部屋や病院の壁と重なっている場所を示しています。", - reception_invalid_position = "受付デスクがグレーアウトされているのは、無効な位置にあるからです。移動または回転させてみてください。", + reception_invalid_position = "受付デスクがグレーアウトされているのは、無効な位置にあるからです。移動または回転させてみてください。", place_doctor = "医師を病院内のどこかに配置してください。診断する患者がいれば、医師は診察室に向かいます。", select_doctors = "点滅しているアイコンを左クリックして、雇うことができる医師を確認してください。", build_reception = "こんにちは。まず、病院には受付デスクが必要です。設備メニューから選んでください。", From b319a8172d740b080e72b3d74e1f2107bdc28da2 Mon Sep 17 00:00:00 2001 From: altiereslima Date: Wed, 6 Nov 2024 01:24:22 -0300 Subject: [PATCH 72/85] Update brazilian_portuguese.lua (#2712) * Update brazilian_portuguese.lua --- .../Lua/languages/brazilian_portuguese.lua | 1634 ++++++++--------- 1 file changed, 816 insertions(+), 818 deletions(-) diff --git a/CorsixTH/Lua/languages/brazilian_portuguese.lua b/CorsixTH/Lua/languages/brazilian_portuguese.lua index 4e1c618f7a..db78422675 100644 --- a/CorsixTH/Lua/languages/brazilian_portuguese.lua +++ b/CorsixTH/Lua/languages/brazilian_portuguese.lua @@ -64,16 +64,16 @@ vip_names = { adviser.research.drug_improved_1 = "Seu Centro de Pesquisa melhorou o medicamento para %s" -- Disease overrides where there are typos -golf_stones.cure = "Cura - Dois cirurgiöes operam para extrair os cálculos." -ruptured_nodules.cure = "Cura - Dois cirurgiöes qualificados colocam certas partes com mäos firmes." -slack_tongue.cause = "Causa - Fazer muita fofoca." -slack_tongue.cure = "Cura - Coloca-se a língua no corta-línguas e elimina-se de forma rápida, eficaz e dolorosa." -the_squits.cure = "Cura - Uma mistura pegajosa de substâncias viscosas preparada na farmácia solidifica as tripas do paciente." -bloaty_head.cure = "Cura - Fura-se a cabeça inflada, em seguida, volta-se a inflar até o tamanho correto com uma máquina inteligente." +diseases.golf_stones.cure = "Cura - Dois cirurgiöes operam para extrair os cálculos." +diseases.ruptured_nodules.cure = "Cura - Dois cirurgiöes qualificados colocam certas partes com mäos firmes." +diseases.slack_tongue.cause = "Causa - Fazer muita fofoca." +diseases.slack_tongue.cure = "Cura - Coloca-se a língua no corta-línguas e elimina-se de forma rápida, eficaz e dolorosa." +diseases.the_squits.cure = "Cura - Uma mistura pegajosa de substâncias viscosas preparada na farmácia solidifica as tripas do paciente." +diseases.bloaty_head.cure = "Cura - Fura-se a cabeça inflada, em seguida, volta-se a inflar até o tamanho correto com uma máquina inteligente." -- Rooms overrides where there are typos -inflation[2] = "Os pacientes que sofrem a dolorosa doença de terem a cabeça inflada devem ir à sala de inflatoterapia, será desinflada sua cabeça e em seguida vota a ser inflada à pressäo correta.//" -staff_room[2] = "Os seus funcionários se cansam quando realizam o seu trabalho. Precisam desta sala para descansar e se refrescar. Os funcionários cansados säo mais lentos, pedem mais dinheiro e por fim väo embora. Também cometem mais erros. Vale a pena construir uma sala que tenham muitos passatempos. Assegure-se de que há lugar para vários funcionários ao mesmo tempo. " +room_descriptions.inflation[2] = "Os pacientes que sofrem a dolorosa doença de terem a cabeça inflada devem ir à sala de inflatoterapia, será desinflada sua cabeça e em seguida vota a ser inflada à pressäo correta.//" +room_descriptions.staff_room[2] = "Os seus funcionários se cansam quando realizam o seu trabalho. Precisam desta sala para descansar e se refrescar. Os funcionários cansados säo mais lentos, pedem mais dinheiro e por fim väo embora. Também cometem mais erros. Vale a pena construir uma sala que tenham muitos passatempos. Assegure-se de que há lugar para vários funcionários ao mesmo tempo. " -- Staff description overrides where there are typos staff_descriptions.bad[14] = "Pessoa ardilosa, matreira e subversiva. " @@ -188,7 +188,7 @@ menu_charts = { research = " (%1%) PESQUISA ", status = " (%1%) ESTADO ", graphs = " (%1%) GRAFICO ", - policy = " (%1%) NORMAS ", + policy = " (%1%) POLITICAS ", } menu_debug = { @@ -210,7 +210,6 @@ menu_debug = { map_overlay = " SOBREPOSIÇAO DO MAPA ", sprite_viewer = " VISUALIZADOR DE SPRITES ", } - menu_debug_overlay = { none = " NADA ", flags = " SINALIZADORES ", @@ -225,7 +224,6 @@ menu_debug_overlay = { byte_7 = " BYTE 7 ", parcel = " TERRENO ", } - menu_player_count = { players_1 = " 1 JOGADOR ", players_2 = " 2 JOGADORES ", @@ -251,7 +249,7 @@ adviser = { falling_2 = "Gostou da queda? Pare de bagunçar!", falling_3 = "Ai, isso dói, alguém chame um médico!", falling_4 = "Isto é um Hospital, näo um parque de diversöes!", - falling_5 = "Este näo é o local para empurrar as pessoas, elas estäo doentes sabia?!", + falling_5 = "Este näo é o local para empurrar as pessoas, elas estäo doentes sabia?", falling_6 = "Aqui näo é uma pista de boliche, pessoas doentes näo deveriam ser tratadas desta forma!", research_screen_open_1 = "Para acessar a tela de pesquisa, tem que construir um Centro de Pesquisa.", research_screen_open_2 = "Näo é possível realizar pesquisas nessa fase.", @@ -581,7 +579,7 @@ hotkey_window = { panel_gameSpeedKeys = "Teclas de velocidade do jogo", panel_toggleKeys = "Teclas de alternância", panel_debugKeys = "Teclas de depuraçäo", - panel_storePosKey = "Armazenamento de posiçäo", + panel_storePosKeys = "Armazenamento de posiçäo", panel_recallPosKeys = "Retorno de posiçäo", panel_altPanelKeys = "Teclas de alternância do painel", global_confirm = "Confirmar", @@ -629,7 +627,7 @@ hotkey_window = { ingame_panel_research = "Pesquisa", ingame_panel_status = "Estado", ingame_panel_charts = "Gráfico", - ingame_panel_policy = "Normas", + ingame_panel_policy = "Políticas", ingame_panel_map_alt = "Mapa da cidade 2", ingame_panel_research_alt = "Pesquisa 2", ingame_panel_casebook_alt = "Ficha clinica 2", @@ -875,7 +873,7 @@ tooltip.cheats_window = { earthquake = "Cria um Terremoto.", toggle_epidemic = "Alternar se epidemias podem acontecer", epidemic = "Cria um paciente contagioso", - toggle_infected = "Mostra/oculta os ícones de infecçäo", + show_infected = "Mostra/oculta os ícones de infecçäo", create_patient = "Cria um Paciente no canto de mapa.", end_month = "Pula para o final do mês.", end_year = "Pula para o final do ano.", @@ -888,7 +886,7 @@ tooltip.cheats_window = { } } --- Level description, can be double spaced after full-stop +--Level description, can be double spaced after full-stop introduction_texts = { demo = "Bem-vindo ao hospital de demonstraçäo!//" .. @@ -967,21 +965,21 @@ hotkeys_file_err = { fax = { vip_visit_result = { remarks = { - [1] = "Que hospital eficiente! Da próxima vez que eu estiver gravemente doente, vou querer ser tratado aqui.", - [2] = "Isso sim é o que eu chamo de um hospital.", - [3] = "Este hospital é excelente. E eu sei do que estou falando; visito muitos hospitais.", - [4] = "Que hospital bem administrado! Obrigado pelo convite.", - [5] = "Mmmm. Definitivamente näo é uma má instituiçäo médica.", - [6] = "Gostei muito do seu excelente hospital. Agora, alguém aí quer um curry da Casa do Curry?", - [7] = "Bem, já vi piores. Mas você deveria fazer algumas melhorias.", - [8] = "Oh céus! Isso näo é um lugar agradável para se estar quando se está doente.", - [9] = "Para ser honesto, é um hospital mediano. Francamente, eu esperava mais.", - [10] = "Por que me zanguei? Isso foi pior que assistir a uma ópera de quatro horas!", - [11] = "Estou decepcionado com o que vi. Você chama isso de hospital? Parece mais uma pocilga!", - [12] = "Estou farto de atrair atençäo pública e visitar buracos fedorentos como este! Eu me demito.", - [13] = "Que lixo. Vou tentar fechá-lo.", - [14] = "Eu nunca vi um hospital täo ruim. Que vergonha!", - [15] = "Estou chocado. Isso näo pode ser chamado de hospital! Näo conte comigo para voltar aqui.", + [1] = "Que hospital eficaz! Da próxima vez que estiver gravemente doente, eu virei aqui.", + [2] = "É isso que eu chamo de um hospital.", + [3] = "É um hospital excelente. E sei do que estou falando; visito muitos hospitais.", + [4] = "Que hospital bem administrado! Obrigado pelo seu convite.", + [5] = "Mmmm. Certamente não é uma má instituição médica, certamente.", + [6] = "Gostei do seu estupendo hospital. Agora, alguém quer um curry da Casa do Curry Taj?", + [7] = "Bom, já vi piores. Mas você deveria fazer algumas melhorias.", + [8] = "Oh céus! Não é um lugar agradável para se estar doente.", + [9] = "Vou ser sincero, é um hospital normal. Francamente, eu esperava mais.", + [10] = "Por que me zanguei? Foi pior que assistir a uma ópera de quatro horas!", + [11] = "Estou aborrecido com o que vi. Chama isso de hospital? Mais parece um chiqueiro!", + [12] = "Estou farto de atrair a atenção pública e de visitar buracos fedorentos como este! Eu me demito.", + [13] = "Vá tugúrio! Vou tentar enclausurá-lo.", + [14] = "Nunca vi um hospital tão espantoso. Que vergonha!", + [15] = "Estou horrorizado. Chama isso de hospital! Vou sair com um cano.", } } } @@ -995,7 +993,7 @@ tooltip.options_window.change_resolution = "Altera a resoluçäo de janela para -------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------- MISSING STRINGS IN LANGUAGE "PORTUGUêS DO BRASIL": ----------------------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------- +-------------------------------------------------------------------------------------------------------------------------------------------------------- rooms_long.ward = "Sala de Enfermaria" rooms_long.blood_machine = "Sala de Transfusöes" rooms_long.emergency = "Sala de Emergências" @@ -1004,19 +1002,19 @@ rooms_long.cardiogram = "Sala de Cardiograma" rooms_long.decontamination = "Sala de Descontaminaçäo" rooms_long.jelly_vat = "Banho Gelatinoso" rooms_long.staffroom = "Sala de Descanso" -rooms_long.hair_restoration = "Sala de Peloterapia" +rooms_long.hair_restoration = "Sala de Pêloterapia" rooms_long.inflation = "Sala de Inflatoterapia" rooms_long.operating_theatre = "Sala de Cirurgia" rooms_long.gps_office = "Consultório de Clínica Geral" -rooms_long.training_room = "Sala de Formaçäo" +rooms_long.training_room = "Sala de Treinamento" rooms_long.x_ray = "Sala de Raio-X" rooms_long.tongue_clinic = "Sala de Laringologia" rooms_long.psychiatric = "Sala de Psiquiatria" rooms_long.corridors = "Corredores" rooms_long.ultrascan = "Sala de Ultra Scanner" -rooms_long.dna_fixer = "Sala de Genética" +rooms_long.dna_fixer = "Clínica de DNA" rooms_long.toilets = "Banheiro" -rooms_long.fracture_clinic = "Sala de Traumatologia" +rooms_long.fracture_clinic = "Sala de Ortopedia" rooms_long.pharmacy = "Farmácia" rooms_long.general_diag = "Diagnóstico Geral" rooms_long.research_room = "Centro de Pesquisa" @@ -1034,40 +1032,40 @@ fax.debug_fax.text10 = "KILLS %d ALLOWED (MTHS) %d (%d) REDUCTION %d" fax.debug_fax.text7 = "REPUTATION: %d EXPECTED %d REDUCTION %d" fax.debug_fax.text11 = "PEOPLE THIS MONTH %d" fax.debug_fax.text6 = "THE FOLLOWING FACTORS ARE ALSO APPLIED" -fax.emergency.choices.accept = "Sim, preparado para enfrentar esta emergência." -fax.emergency.choices.refuse = "Näo. Recuso-me a enfrentar esta emergência." -fax.emergency.cure_possible_drug_name_efficiency = "Já dispöe da equipe e do pessoal qualificado. Tem o medicamento necessário. É %s e tem uma efetividade de %d por cento." +fax.emergency.choices.accept = "Sim. Estou pronto para lidar com esta emergência." +fax.emergency.choices.refuse = "Näo. Recuso-me a lidar com esta emergência." +fax.emergency.cure_possible_drug_name_efficiency = "Já dispöe dos equipamentos e do pessoal qualificado. Você possui o medicamento necessário. É %s e tem uma eficácia de %d por cento." fax.emergency.bonus = "Você ganhará um bônus máximo de $%d por cuidar desta emergência. Mas, se fracassar, sua reputaçäo será seriamente danificada." -fax.emergency.locations[1] = "Planta Química Thatcher" -fax.emergency.locations[2] = "Universidade Suja" -fax.emergency.locations[3] = "Centro de Plantas Aquáticas" -fax.emergency.locations[4] = "Instituto de Pesquisa de Substâncias Perigosas" -fax.emergency.locations[5] = "Congresso de Bailarinos Russos" -fax.emergency.locations[6] = "Pub O Touro e A Rä" -fax.emergency.locations[7] = "Funerária Sem Licença Para Boa Morte" -fax.emergency.locations[8] = "A Casa do Curry" -fax.emergency.locations[9] = "Empório Petroquímico Usado" +fax.emergency.locations[1] = "Planta Química Thatcher." +fax.emergency.locations[2] = "Universidade Sarcástica." +fax.emergency.locations[3] = "Centro de Plantas Aquáticas." +fax.emergency.locations[4] = "Instituto de Pesquisa de Substâncias Perigosas." +fax.emergency.locations[5] = "Congresso de Bailarinos Russos." +fax.emergency.locations[6] = "Pub Bull e Frog." +fax.emergency.locations[7] = "Funerária e Loja de Bebidas do Grande Dave." +fax.emergency.locations[8] = "A Casa de Curry Taj." +fax.emergency.locations[9] = "Empório Petroquímico Usado do Bert." fax.emergency.cure_not_possible_employ = "Precisará contratar um(a) %s" fax.emergency.location = "Houve um incidente em %s" fax.emergency.cure_possible = "Tem a equipe e o pessoal qualificado necessários, poderá enfrentar esta emergência." fax.emergency.cure_not_possible = "Näo pode curar esta doença no momento." fax.epidemic.cover_up_explanation_2 = "Se um Inspetor de Saúde visitar e encontrar uma epidemia encoberta, tomará medidas drásticas contra você." -fax.epidemic.choices.cover_up = "Tentar ocultá-la. Buscar curar a epidemia antes que se espalhe por todo o país." -fax.epidemic.choices.declare = "Há uma epidemia" -fax.epidemic.disease_name = "Seus médicos descobriram uma variedade contagiosa de %s." -fax.epidemic.declare_explanation_fine = "Se declarar uma epidemia, pagará uma multa de %d, danificando sua reputaçäo e seus pacientes seräo automaticamente vacinados." -fax.epidemic.cover_up_explanation_1 = "Se tentar encobri-la, terá um tempo limitado para curar todos os infectados antes que as autoridades de saúde descubram." +fax.epidemic.choices.cover_up = "Tente ocultá-la. Busque curar a epidemia antes que se espalhe por todo o país." +fax.epidemic.choices.declare = "Declare uma Epidemia. Pague a multa e sofra uma queda na reputaçäo." +fax.epidemic.disease_name = "Seus Médicos descobriram uma cepa contagiosa de %s." +fax.epidemic.declare_explanation_fine = "Se declarar uma epidemia, pagará uma multa de %d, danificando sua reputaçäo e seus Pacientes seräo automaticamente vacinados." +fax.epidemic.cover_up_explanation_1 = "Se tentar encobri-la, terá um tempo limitado para curar todos os infectados antes que as Autoridades da Saúde descubram." fax.vip_visit_result.close_text = "Obrigado por visitar o hospital." fax.vip_visit_result.telegram = "Telegrama!" fax.vip_visit_result.vip_remarked_name = "Depois de visitar o seu hospital, %s declarou:" -fax.vip_visit_result.cash_grant = "Você ganhou um prêmio em dinheiro de $%d." +fax.vip_visit_result.cash_grant = "Você ganhou um prêmio em dinheiro de %d." fax.vip_visit_result.rep_boost = "Sua reputaçäo na comunidade acaba de aumentar." -fax.vip_visit_result.rep_loss = "Sua reputaçäo foi afetada em consequência" -fax.disease_discovered.close_text = "Foi encontrada uma nova doença." -fax.disease_discovered.need_to_build = "Precisa construir um(a) %s para tratar isto." -fax.disease_discovered.can_cure = "Pode tratar esta doença." -fax.disease_discovered.need_to_employ = "Contrate um(a) %s que possa solucionar este problema." -fax.disease_discovered.need_to_build_and_employ = "Se construir uma %s e contratar um(a) %s, pode ter êxito." +fax.vip_visit_result.rep_loss = "A sua reputaçäo foi afetada em consequência." +fax.disease_discovered.close_text = "Uma nova doença foi encontrada." +fax.disease_discovered.need_to_build = "É necessário construir %s para poder tratar isso." +fax.disease_discovered.can_cure = "Você pode lidar com esta doença." +fax.disease_discovered.need_to_employ = "Contrate um(a) %s que possa solucionar esse problema." +fax.disease_discovered.need_to_build_and_employ = "Se você construir %s e contratar %s, pode ter sucesso." fax.disease_discovered.discovered_name = "Sua equipe descobriu uma nova doença. É %s." fax.epidemic_result.close_text = "Bem!" fax.epidemic_result.compensation_amount = "O Governo decidiu lhe dar uma compensaçäo de %d pelos danos que este incidente causou ao bom nome do seu hospital." @@ -1078,27 +1076,27 @@ fax.epidemic_result.failed.part_1_name = "Ao tentar esconder o fato de que enfre fax.epidemic_result.failed.part_2 = "Os funcionários do seu hospital säo responsáveis pela doença que se propagou entre as pessoas que vivem perto do seu hospital." fax.epidemic_result.fine_amount = "O Governo declarou uma emergência nacional e multou-o em %d." fax.epidemic_result.rep_loss_fine_amount = "Os jornais têm feito um escândalo com isso. Sua reputaçäo será gravemente afetada. Além disso, imporá uma multa de %d." -fax.emergency_result.close_text = "Aperte para sair" -fax.emergency_result.saved_people = "Salvou %d pessoas de um total de %d." +fax.emergency_result.close_text = "Clique para sair" +fax.emergency_result.saved_people = "Você salvou %d pessoas de um total de %d." fax.emergency_result.earned_money = "Ganhou %d, de um bônus máximo de %d." fax.vip_visit_query.vip_name = "%s expressou o desejo de visitar o seu hospital." fax.vip_visit_query.choices.refuse = "Dispensar o V.I.P." -fax.vip_visit_query.choices.invite = "Enviar um convite oficial ao V.I.P." -fax.diagnosis_failed.what_to_do_question = "O que vamos fazer com o paciente?" -fax.diagnosis_failed.choices.send_home = "Enviar o paciente para casa." -fax.diagnosis_failed.choices.take_chance = "Tentar uma possível cura." -fax.diagnosis_failed.choices.wait = "Fazer o paciente esperar enquanto constrói mais salas de diagnóstico." -fax.diagnosis_failed.partial_diagnosis_percentage_name = "Existe %d por cento de chances de descobrirmos que tipo de %s o paciente está sofrendo." -fax.diagnosis_failed.situation = "Fizemos todos os nossos diagnósticos com este paciente e näo estamos seguros do que se trata." -fax.disease_discovered_patient_choice.what_to_do_question = "O que você quer fazer com o paciente?" -fax.disease_discovered_patient_choice.choices.send_home = "Enviar o paciente para casa." +fax.vip_visit_query.choices.invite = "Enviar um convite formal ao V.I.P." +fax.diagnosis_failed.what_to_do_question = "O que vamos fazer com o Paciente?" +fax.diagnosis_failed.choices.send_home = "Enviar o Paciente para casa." +fax.diagnosis_failed.choices.take_chance = "Arriscar-se com a possível cura." +fax.diagnosis_failed.choices.wait = "Fazer o Paciente esperar enquanto constrói mais salas de diagnóstico." +fax.diagnosis_failed.partial_diagnosis_percentage_name = "Há uma chance de %d%% de identificarmos que tipo de %s o Paciente está sofrendo." +fax.diagnosis_failed.situation = "Fizemos todos os nossos diagnósticos com este Paciente e näo estamos seguros do que se trata." +fax.disease_discovered_patient_choice.what_to_do_question = "O que você quer fazer com o Paciente?" +fax.disease_discovered_patient_choice.choices.send_home = "Enviar o Paciente para casa." fax.disease_discovered_patient_choice.choices.research = "Enviar o paciente para Pesquisa." -fax.disease_discovered_patient_choice.choices.wait = "Faça o paciente esperar um momento no hospital." +fax.disease_discovered_patient_choice.choices.wait = "Fazer Paciente esperar no hospital por um tempo." fax.disease_discovered_patient_choice.can_not_cure = "Näo pode curar esta doença." fax.disease_discovered_patient_choice.need_to_employ = "Contrate um(a) %s para corrigir esta situaçäo." -fax.disease_discovered_patient_choice.need_to_build = "Precisa construir um(a) %s para poder tratar isso." -fax.disease_discovered_patient_choice.need_to_build_and_employ = "Pode conseguir se construir um(a) %s e contratar um(a) %s." -fax.disease_discovered_patient_choice.guessed_percentage_name = "Sua equipe tem que averiguar o que tem um paciente. Há %d por cento de chance de que seja %s." +fax.disease_discovered_patient_choice.need_to_build = "É necessário construir %s para poder tratar isso." +fax.disease_discovered_patient_choice.need_to_build_and_employ = "Se você construir %s e contratar %s, pode ter sucesso." +fax.disease_discovered_patient_choice.guessed_percentage_name = "Sua equipe teve que adivinhar a condiçäo de um Paciente. Há uma chance de %d por cento de que seja %s." fax.disease_discovered_patient_choice.disease_name = "Sua equipe descobriu uma nova doença. É %s." original_credits[1] = " " original_credits[2] = " " @@ -1111,7 +1109,7 @@ original_credits[8] = " " original_credits[9] = " " original_credits[10] = " " original_credits[11] = " " -original_credits[12] = ":Desenvolvido e criado pela" +original_credits[12] = ":Desenvolvido e Criado pela" original_credits[13] = ":Bullfrog Productions" original_credits[14] = " " original_credits[15] = ":Equipe de Desenvolvimento Pluto" @@ -1395,31 +1393,31 @@ original_credits[292] = " " original_credits[293] = " " original_credits[294] = " " original_credits[295] = "." -buy_objects_window.choose_items = "Escolha os objetos" +buy_objects_window.choose_items = "Escolha os Objetos" buy_objects_window.total = "Total: " buy_objects_window.price = "Preço: " -build_room_window.pick_room_type = "Escolha a sala" +build_room_window.pick_room_type = "Escolha a Sala" build_room_window.pick_department = "Departamento" build_room_window.cost = "Custo: " object.bench = "Banco" -object.pharmacy_cabinet = "Armário de remédios" +object.pharmacy_cabinet = "Armário de Remédios" object.console = "Console" -object.atom_analyser = "Analisador atômico" +object.atom_analyser = "Analisador Atômico" object.fire_extinguisher = "Extintor" object.scanner = "Scanner" -object.bin = "Cesto de lixo" -object.swing_door1 = "Porta de batente" +object.bin = "Lixeira" +object.swing_door1 = "Porta de Batente" object.pool_table = "Mesa de bilhar" object.screen = "Biombo" object.cabinet = "Arquivo" object.sofa = "Sofá" object.projector = "Projetor" object.table2 = "Mesa" -object.shower = "Ducha descontaminadora" -object.comfortable_chair = "Poltrona confortável" +object.shower = "Ducha Descontaminadora" +object.comfortable_chair = "Poltrona Confortável" object.door = "Porta" object.computer = "Computador" -object.litter_bomb = "Bomba de lixo" +object.litter_bomb = "Bomba de Lixo" object.entrance_left = "Porta de entrada esquerda" object.dna_fixer = "Reparador de DNA" object.bed = "Cama" @@ -1427,43 +1425,43 @@ object.lamp = "Abajur" object.bookcase = "Estante" object.desk = "Escrivaninha" object.toilet_sink = "Pia" -object.gates_of_hell = "Portas do Inferno" -object.swing_door2 = "Porta de batente" -object.cast_remover = "Removedor de gesso" +object.gates_of_hell = "Portöes do Inferno" +object.swing_door2 = "Porta de Batente" +object.cast_remover = "Removedor de Gesso" object.plant = "Planta" object.blood_machine = "Transfusiômetro" object.slicer = "Cortador" object.x_ray = "Raio-X" -object.cardio = "Eletrocardiograma" +object.cardio = "Cardiograma" object.crash_trolley = "Carrinho" object.bed2 = "Cama" object.electrolyser = "Eletrólise" object.video_game = "Videogame" object.skeleton = "Esqueleto" -object.ultrascanner = "Ultra scanner" +object.ultrascanner = "Ultra Scanner" object.op_sink1 = "Pia" -object.hair_restorer = "Pêlo-restaurador" +object.hair_restorer = "Restaurador de Pêlo" object.reception_desk = "Recepçäo" -object.radiation_shield = "Painel anti-radiaçäo" +object.radiation_shield = "Escudo Contra Radiaçäo" object.couch = "Divä" object.inflator = "Inflador" object.toilet = "Banheiro" object.lecture_chair = "Poltrona" object.auto_autopsy = "Máq. autópsias" object.chair = "Cadeira" -object.x_ray_viewer = "Máquina de raio-X" -object.radiator = "Radiador" +object.x_ray_viewer = "Máquina de Raio-X" +object.radiator = "Aquecedor" object.bed3 = "Cama" -object.surgeon_screen = "Tela de cirurgiäo" -object.jelly_moulder = "Moldador de gelatina" +object.surgeon_screen = "Tela do Cirurgiäo" +object.jelly_moulder = "Modelador de Gelatina" object.drinks_machine = "Máq. de bebidas" object.op_sink2 = "Pia" object.table1 = "Mesa" object.entrance_right = "Porta de entrada direita" -object.operating_table = "Mesa de cirurgia" +object.operating_table = "Mesa de Cirurgia" object.tv = "Televisäo" transactions.bank_loan = "Empréstimo bancário" -transactions.buy_object = "Comprou" +transactions.buy_object = "Compra de objetos" transactions.cure = "Cura" transactions.general_bonus = "Pagamento extra geral" transactions.treat_colon = "Tratamento:" @@ -1471,7 +1469,7 @@ transactions.eoy_bonus_penalty = "Bônus/multa de fim de ano" transactions.loan_repayment = "Devoluçäo do empréstimo" transactions.research = "Gastos em pesquisa" transactions.epidemy_coverup_fine = "Multa por ocultaçäo da epidemia" -transactions.build_room = "Construiu" +transactions.build_room = "Construçäo de sala" transactions.sell_object = "Vendeu" transactions.vaccination = "Vacinas" transactions.personal_bonus = "Pagamento extra individual" @@ -1479,8 +1477,8 @@ transactions.drug_cost = "Medicamento" transactions.severance = "Inden. demissäo" transactions.deposit = "Tratamentos" transactions.epidemy_fine = "Multa pela epidemia" -transactions.buy_land = "Comprou terreno" -transactions.hire_staff = "Contratou" +transactions.buy_land = "Compra de terreno" +transactions.hire_staff = "Contrataçäo de funcionário" transactions.insurance_colon = "Seguro:" transactions.drinks = "Renda: máquinas de bebidas" transactions.overdraft = "Juros do saldo devedor" @@ -1491,7 +1489,7 @@ transactions.compensation = "Indenizaçäo do governo" transactions.wages = "Salários" transactions.advance_colon = "Avanços:" transactions.cure_colon = "Cura:" -transactions.jukebox = "Renda: máquina de discos" +transactions.jukebox = "Renda: jukebox" transactions.machine_replacement = "Custo por substituiçäo de máquinas" transactions.heating = "Gastos com aquecimento" transactions.final_treat_colon = "Tratamento final:" @@ -1536,14 +1534,14 @@ newspaper[7][1] = "MÉDICO SE SENTE MARGINALIZADO" newspaper[7][2] = "UM CIRURGIAO 'OPERA' A SI MESMO" newspaper[7][3] = "DESCONTROLE EM BANHEIROS" newspaper[7][4] = "MÉDICO PROTAGONIZA UM ESCANDALO" -newspaper[7][5] = "MÉDICO 'CRIA UM BARRACO" -progress_report.too_hot = "Revise o seu sistema de aquecimento. Faz muito calor." -progress_report.header = "Relatório em curso" +newspaper[7][5] = "MÉDICO 'CRIA UM BARRACO'" +progress_report.too_hot = "Ajuste o sistema de aquecimento. Está quente demais." +progress_report.header = "Relatório de Progresso" progress_report.percentage_pop = "% da populaçäo" -progress_report.too_cold = "Faz muito frio. Coloque radiadores." -progress_report.quite_unhappy = "Os seus pacientes estäo muito contentes." +progress_report.too_cold = "Está frio demais. Coloque aquecedores." +progress_report.quite_unhappy = "Seu pessoal está bastante infeliz." progress_report.win_criteria = "CRITÉRIOS PARA GANHAR" -progress_report.very_unhappy = "Os seus pacientes estäo muito descontentes." +progress_report.very_unhappy = "Seu pessoal está muito infeliz." progress_report.more_drinks_machines = "Coloque mais máquinas de bebidas." staff_descriptions.bad[1] = "É uma pessoa lenta e suscetível. " staff_descriptions.bad[2] = "Mostra preguiça e falta de motivaçäo. " @@ -1557,13 +1555,13 @@ staff_descriptions.bad[9] = "Pessoa estressada e confusa. " staff_descriptions.bad[10] = "Pessoa desleal e rancorosa. Cheia de ódio. " staff_descriptions.bad[11] = "Näo toma cuidado e provoca acidentes. " staff_descriptions.bad[12] = "Näo se importa com o trabalho. Perde tempo. " -staff_descriptions.bad[13] = "Pessoa temerária e sem cuidado. " +staff_descriptions.bad[13] = "Pessoa temerária e descuidada. " staff_descriptions.bad[15] = "Pessoa arrogante e presunçosa. " staff_descriptions.misc[1] = "Joga golfe. " staff_descriptions.misc[2] = "Pratica mergulho. " staff_descriptions.misc[3] = "Faz esculturas de gelo. " staff_descriptions.misc[4] = "Bebe vinho. " -staff_descriptions.misc[5] = "Participa de rally. " +staff_descriptions.misc[5] = "Dirige carros de rally. " staff_descriptions.misc[6] = "Faz bungee-jump. " staff_descriptions.misc[7] = "Coleciona latas de cerveja. " staff_descriptions.misc[8] = "Gosta de mergulhar no público em shows. " @@ -1575,23 +1573,23 @@ staff_descriptions.misc[14] = "Joga muito Theme Park. " staff_descriptions.misc[15] = "Possui carteira de habilitaçäo E. " staff_descriptions.misc[16] = "Corre de motocicleta. " staff_descriptions.misc[17] = "Toca violino e violoncelo. " -staff_descriptions.misc[18] = "Adora andar de trem. " +staff_descriptions.misc[18] = "Adora destruidor trens. " staff_descriptions.misc[19] = "Adora cachorros. " staff_descriptions.misc[20] = "Ouve rádio. " staff_descriptions.misc[21] = "Toma banho com frequência. " staff_descriptions.misc[22] = "Instrutor de costura. " staff_descriptions.misc[23] = "Tira o miolo dos vegetais para usar como saboneteira. " staff_descriptions.misc[24] = "É policial em meio expediente. " -staff_descriptions.misc[25] = "Ex-convidado de um concurso. " +staff_descriptions.misc[25] = "Ex-apresentador de quiz. " staff_descriptions.misc[26] = "Coleciona bombas da Segunda Guerra. " staff_descriptions.misc[27] = "Restaura móveis. " -staff_descriptions.misc[28] = "Escuta rap e hip-hop. " -staff_descriptions.misc[29] = "Extermina insetos borrifando desodorante. " +staff_descriptions.misc[28] = "Ouve música rave e trip-hop. " +staff_descriptions.misc[29] = "Irrita insetos borrifando desodorante. " staff_descriptions.misc[30] = "Ridiculariza comediantes ruins. " -staff_descriptions.misc[31] = "Investiga para a Câmara Municipal. " +staff_descriptions.misc[31] = "Espiona para a prefeitura. " staff_descriptions.misc[32] = "Cuida do jardim às escondidas. " -staff_descriptions.misc[33] = "Faz contrabando de relógios falsos. " -staff_descriptions.misc[34] = "Vocalista de uma banda de rock & roll. " +staff_descriptions.misc[33] = "Contrabandeia relógios falsificados. " +staff_descriptions.misc[34] = "Canta em uma banda de rock & roll. " staff_descriptions.misc[35] = "Adora programas de televisäo vespertinos. " staff_descriptions.misc[36] = "Pesca trutas com a mäo. " staff_descriptions.misc[37] = "Isca turistas em museus. " @@ -1641,51 +1639,51 @@ menu.display = " TELA " menu.file = " ARQUIVO " menu.debug = " DEPURAÇAO " menu.charts = " GRAFICOS " -letter[1][1] = "Olá %s!//" -letter[1][2] = "Fantástico! Dirigiu este hospital de uma maneira excelente. Nós, a elite do Ministério da Saúde, gostaríamos de saber se você estaria interessado em fazer parte de um grande projeto. Há um trabalho para o qual acreditamos que você seria a pessoa perfeita. O salário seria de %d. Pense nisso.//" -letter[1][3] = "Está interessado em trabalhar no Hospital %s?" -letter[2][1] = "Olá %s!//" -letter[2][2] = "Parabéns! Realizou notáveis melhorias no seu hospital. Temos outro serviço que você poderia assumir, se gostar de mudanças e novos desafios. Näo é obrigatório aceitar, mas seria bom se o fizesse. O salário é de %d.//" -letter[2][3] = "Quer trabalhar no Hospital %s?" -letter[3][1] = "Olá %s!//" +letter[1][1] = "Caro %s//" +letter[1][2] = "Fantástico! Dirigiu este hospital de uma maneira excelente. Nós, a elite do Ministério da Saúde, gostaríamos de saber se você estaria interessado em fazer parte de um grande projeto. Há um trabalho para o qual acreditamos que você seria a pessoa perfeita. O salário seria de $%d. Pense nisso.//" +letter[1][3] = "Você está interessado em trabalhar no Hospital %s?" +letter[2][1] = "Caro %s//" +letter[2][2] = "Parabéns! Realizou notáveis melhorias no seu hospital. Temos outro serviço que você poderia assumir, se gostar de mudanças e novos desafios. Näo é obrigatório aceitar, mas seria bom se o fizesse. O salário é de $%d.//" +letter[2][3] = "Você está interessado em trabalhar no Hospital %s?" +letter[3][1] = "Caro %s//" letter[3][2] = "Dirigiu este hospital com notável desempenho durante o seu mandato. Ao chegar ao fim, prevejo um brilhante futuro, e gostaríamos de lhe oferecer um cargo em outro lugar. O salário seria de %d, e acredito que você adoraria o desafio que isso criaria.//" letter[3][3] = "Gostaria de ter um posto no Hospital %s?" -letter[4][1] = "Olá %s!//" -letter[4][2] = "Parabéns! No Ministério estamos muito impressionados com sua capacidade como diretor do hospital. É, sem dúvida, uma pessoa valiosa para o Departamento de Saúde, mas acreditamos que você preferiria um trabalho mais qualificado. Receberia um salário de %d, embora a decisäo seja sua.//" -letter[4][3] = "Está interessado em trabalhar no Hospital %s?" -letter[5][1] = "Olá %s!//" -letter[5][2] = "Saudaçöes novamente. Respeitamos o seu desejo de näo querer sair do seu estupendo hospital, mas pedimos que reconsidere. Ofereceremos a você um alto salário de %d se decidir ir para o outro hospital e assumir a sua direçäo.//" +letter[4][1] = "Caro %s//" +letter[4][2] = "Parabéns! No Ministério estamos muito impressionados com sua capacidade como diretor do Hospital. É, sem dúvida, uma pessoa valiosa para o Departamento de Saúde, mas acreditamos que você preferiria um trabalho mais qualificado. Receberia um salário de $%d, embora a decisäo seja sua.//" +letter[4][3] = "Você está interessado em trabalhar no Hospital %s?" +letter[5][1] = "Caro %s//" +letter[5][2] = "Saudaçöes novamente. Respeitamos o seu desejo de näo querer sair do seu estupendo hospital, mas pedimos que reconsidere. Ofereceremos a você um alto salário de $%d se decidir ir para o outro hospital e assumir a sua direçäo.//" letter[5][3] = "Gostaria de ir agora para o Hospital %s?" -letter[6][1] = "Olá %s!//" -letter[6][2] = "Receba nossas saudaçöes. Sabemos que você desfrutou muito da sua estadia nesta instituiçäo, täo agradável e bem dirigida, mas acreditamos que agora deveria pensar no seu futuro. Naturalmente, você teria um salário de %d se decidisse sair. Vale a pena considerar.//" +letter[6][1] = "Caro %s//" +letter[6][2] = "Receba nossas saudaçöes. Sabemos que você desfrutou muito da sua estadia nesta instituiçäo, täo agradável e bem dirigida, mas acreditamos que agora deveria pensar no seu futuro. Naturalmente, você teria um salário de $%d se decidisse sair. Vale a pena considerar.//" letter[6][3] = "Gostaria de ter um posto no Hospital %s?" -letter[7][1] = "Olá %s!//" -letter[7][2] = "Bom dia! O Ministério da Saúde gostaria de saber se você reconsideraria a sua decisäo de ficar no seu hospital. Compreendemos que você tenha um ótimo hospital, mas acreditamos que faria muito bem em aceitar um trabalho mais estimulante, com um salário de %d.//" +letter[7][1] = "Caro %s//" +letter[7][2] = "Bom dia! O Ministério da Saúde gostaria de saber se você reconsideraria a sua decisäo de ficar no seu hospital. Compreendemos que você tenha um ótimo hospital, mas acreditamos que faria muito bem em aceitar um trabalho mais estimulante, com um salário de $%d.//" letter[7][3] = "Aceitaria um posto no Hospital %s?" -letter[8][1] = "Olá %s!//" -letter[8][2] = "Olá, novamente. Recebemos a sua resposta negativa na nossa última carta, na qual oferecíamos um posto de direçäo em outro hospital, com um alto salário de %d. Contudo, acreditamos que você deveria reconsiderar essa decisäo. Como verá, temos o trabalho perfeito para você.//" +letter[8][1] = "Caro %s//" +letter[8][2] = "Olá, novamente. Recebemos a sua resposta negativa na nossa última carta, na qual oferecíamos um posto de direçäo em outro hospital, com um alto salário de $%d. Contudo, acreditamos que você deveria reconsiderar essa decisäo. Como verá, temos o trabalho perfeito para você.//" letter[8][3] = "Aceitaria um posto no Hospital %s, por favor?" -letter[9][1] = "Olá %s!//" -letter[9][2] = "Você demonstrou ser o melhor diretor de hospital na longa e infeliz história da medicina. O lucro que obteve näo pode ficar sem recompensa, por isso lhe oferecemos o posto de Diretor Chefe de Todos os Hospitais. Terá um salário de %d, uma cerimônia com todas as honras e as pessoas demonstraräo seu reconhecimento onde quer que esteja.//" +letter[9][1] = "Caro %s//" +letter[9][2] = "Você provou ser o melhor administrador de hospitais na longa e conturbada história da medicina. Tal conquista monumental näo pode passar despercebida, entäo gostaríamos de oferecer-lhe o cargo honorário de Chefe Supremo de Todos os Hospitais. Isso vem com um salário de $%d. Você será recebido com uma parada em sua homenagem, e as pessoas demonstraräo sua gratidäo por onde quer que vá.//" letter[9][3] = "Agradecemos por tudo o que fez e desfrute de uma longa semi-aposentadoria.//" letter[9][4] = "" -letter[10][1] = "Olá %s!//" -letter[10][2] = "Parabéns por dirigir com sucesso todos os hospitais que lhe atribuímos. Esta grande atuaçäo lhe permite viajar livremente por todo o mundo. Receberá uma pensäo de %d e uma limousine para poder viajar de cidade em cidade, saudando seu incondicional público e incentivando o trabalho realizado em todos os hospitais.//" +letter[10][1] = "Caro %s//" +letter[10][2] = "Parabéns por administrar com sucesso todos os hospitais que lhe foram designados. Tal desempenho magnífico lhe qualifica para a liberdade de todas as cidades do mundo. Você receberá uma pensäo de $%d, e tudo o que pedimos é que viaje, gratuitamente, por todo o país, promovendo o trabalho de todos os hospitais ao seu público adorador.//" letter[10][3] = "Estamos orgulhosos e agradecidos pelo seu trabalho ao salvar vidas.//" -letter[10][4] = "" -letter[11][1] = "Olá %s!//" -letter[11][2] = "Sua carreira tem sido exemplar, e você é uma inspiraçäo para todos nós. Obrigado por dirigir täo bem tantos hospitais. Gostaríamos de lhe conceder um salário vitalício de %d, e só lhe pedimos que viaje em um carro oficial descoberto de cidade em cidade, dando conferências sobre seus rápidos lucros.//" -letter[11][3] = "Você é um exemplo para todos e uma pessoa de enorme valor.//" -letter[11][4] = "" -letter[12][1] = "Olá %s!//" -letter[12][2] = "A sua bem-sucedida carreira como o melhor diretor de hospital desde Moisés está chegando ao fim. Você causou tanto impacto nos círculos médicos que o Ministério quer lhe oferecer um salário de %s, só para inaugurar festas, navios e organizar entrevistas em nosso nome. Você seria um excelente relaçöes públicas!//" +letter[10][4] = "Ei! Você está indo à falência!" +letter[11][1] = "Caro %s//" +letter[11][2] = "Sua carreira foi exemplar, e você é uma inspiraçäo para todos nós. Obrigado por administrar tantos hospitais com tanta competência. Gostaríamos de lhe conceder um salário vitalício de $%d, e simplesmente pedir que viaje em um carro oficial aberto de cidade em cidade, proferindo palestras sobre como alcançou tanto sucesso em täo pouco tempo.//" +letter[11][3] = "Você é um exemplo para todas as pessoas sábias, e sem exceçäo, todos no mundo o(a) consideram um ativo supremo.//" +letter[11][4] = "Ei! Você está indo à falência!" +letter[12][1] = "Caro %s//" +letter[12][2] = "Sua carreira de sucesso como o melhor administrador de hospitais desde Moisés está chegando ao fim. Condizente com seu impacto na naçäo, o Ministério gostaria de lhe oferecer um salário de $%d apenas para aparecer em nosso nome, inaugurando eventos, lançando navios e participando de programas de entrevistas. Seria uma ótima PR para todos nós!//" letter[12][3] = "Por favor, aceite. Será fácil e você terá um veículo e uma escolta policial.//" -letter[12][4] = "" +letter[12][4] = "Ei! Você está indo à falência!" place_objects_window.place_objects_in_corridor = "Coloque os objetos em um corredor." -place_objects_window.drag_blueprint = "Arraste a marca azul até conseguir o tamanho desejado." +place_objects_window.drag_blueprint = "Arraste a marca azul até conseguir o tamanho que deseja." place_objects_window.pick_up_object = "Clique em um objeto para selecioná-lo ou escolher outra opçäo no diálogo." -place_objects_window.place_windows = "Se desejar, coloque algumas janelas. Em seguida, clique em confirmar." -place_objects_window.place_objects = "Coloque os objetos e mova-os ao seu gosto. Em seguida, confirme." +place_objects_window.place_windows = "Se quiser, adicione algumas janelas. Em seguida, clique em confirmar." +place_objects_window.place_objects = "Coloque os objetos e mova-os à sua maneira. Em seguida, confirme." place_objects_window.confirm_or_buy_objects = "Você pode confirmar a sala, comprar ou mover alguns objetos." place_objects_window.place_door = "Coloque a porta." level_names[1] = "Cidade Contaminada" @@ -1703,36 +1701,36 @@ level_names[12] = "Vila Próspera" level_names[13] = "Vila Amistosa" level_names[14] = "Vila Pancadaria" level_names[15] = "Vila Sepultura" -pay_rise.definite_quit = "Faça o que fizer, näo ficarei. Estou farto deste local." -pay_rise.regular[2] = "Estou muito cansado. Preciso de férias e de um aumento salarial de %d, até um total de %d. E quero já, seu tirano!" +pay_rise.definite_quit = "Nada que você faça me manterá aqui. Estou farto deste lugar." +pay_rise.regular[2] = "Estou muito cansado. Preciso de férias e de um aumento salarial de %d, totalizando %d. E quero já, seu tirano!" pay_rise.regular[3] = "Vamos! Trabalho como um escravo. Se me der um bônus de %d, ficarei no seu hospital." -pay_rise.regular[4] = "Estou muito descontente. Exijo um aumento de %d, e um salário final de %d, caso contrário, vou embora." -pay_rise.regular[5] = "Meus pais me disseram que os médicos ganham um bom salário, sendo assim, me dê um aumento de %d ou me dedicarei à produçäo de jogos de computador." -pay_rise.regular[6] = "Estou farto. Pague-me um bom salário. Será suficiente um aumento de %d." -pay_rise.poached = "%s ofereceu-me um salário de %d. Se näo me pagar o mesmo, vou embora." +pay_rise.regular[4] = "Estou muito insatisfeito. Exijo um aumento de %d, totalizando um salário final de %d; caso contrário, vou embora." +pay_rise.regular[5] = "Meus pais me disseram que os Médicos ganham um bom salário; entäo, me dê um aumento de %d ou me dedicarei à produçäo de jogos de computador." +pay_rise.regular[6] = "Estou farto. Pague-me um bom salário. Um aumento de %d será suficiente." +pay_rise.poached = "%s me ofereceu um salário de %d. Se näo me pagar o mesmo, vou embora." casebook.reputation = "reputaçäo" casebook.earned_money = "dinheiro ganho" -casebook.cure_desc.no_cure_known = "Näo há cura conhecida." -casebook.cure_desc.hire_doctors = "Você precisa contratar alguns médicos." -casebook.cure_desc.build_ward = "Ainda é necessário construir uma Enfermaria." -casebook.cure_desc.improve_cure = "Melhorar Cura." -casebook.cure_desc.build_room = "Sugiro que construa %s" -casebook.cure_desc.hire_surgeons = "Você precisa contratar cirurgiöes." +casebook.cure_desc.no_cure_known = "Näo há Cura Conhecida" +casebook.cure_desc.hire_doctors = "Você precisa contratar alguns Médicos." +casebook.cure_desc.build_ward = "Ainda precisa construir uma Enfermaria." +casebook.cure_desc.improve_cure = "Melhorar a Cura." +casebook.cure_desc.build_room = "Sugiro que construa %s." +casebook.cure_desc.hire_surgeons = "Você precisa contratar Cirurgiöes." casebook.cure_desc.cure_known = "Cura." -casebook.cure_desc.hire_psychiatrists = "Você precisa contratar psiquiatras." -casebook.cure_desc.hire_nurses = "Você deve contratar algumas enfermeiras." +casebook.cure_desc.hire_psychiatrists = "Você precisa contratar Psiquiatras." +casebook.cure_desc.hire_nurses = "Você deve contratar algumas Enfermeiras." casebook.sent_home = "rejeitados" casebook.cured = "recuperaçöes" casebook.deaths = "falecimentos" casebook.treatment_charge = "custo tratamento" casebook.research = "pesquisa intensiva" casebook.cure = "cura" -confirmation.replace_machine = "Quer mesmo substituir esta máquina?" -confirmation.quit = "Você escolheu sair do jogo. Tem certeza de que deseja sair?" +confirmation.replace_machine = "Tem certeza de que deseja substituir %s por $%d?" +confirmation.quit = "Você optou por Sair do jogo. Tem certeza de que realmente deseja sair do jogo?" confirmation.sack_staff = "Tem certeza de que deseja despedir este funcionário?" -confirmation.delete_room = "Quer mesmo eliminar esta sala?" -confirmation.return_to_blueprint = "Tem certeza de que deseja substituir o(a) %s por $%d?" -confirmation.overwrite_save = "Já existe um jogo salvo neste local. Tem certeza de que deseja substituí-lo?" +confirmation.delete_room = "Você realmente deseja excluir esta sala?" +confirmation.return_to_blueprint = "Tem certeza de que deseja voltar para o modo Planta?" +confirmation.overwrite_save = "Já existe um jogo salvo neste espaço. Tem certeza de que deseja sobrescrevê-lo" menu_options_volume[80] = " 80% " menu_options_volume[50] = " 50% " menu_options_volume[100] = " 100% " @@ -1743,196 +1741,196 @@ menu_options_volume[60] = " 60% " menu_options_volume[20] = " 20% " menu_options_volume[30] = " 30% " menu_options_volume[10] = " 10% " -vip_names[1] = "O Maior dos Ricaços" +vip_names[1] = "O Prefeito de Greater Trumpton" vip_names[2] = "Lawrence Nightingale" -vip_names[3] = "Rei Bernard da Holanda" -vip_names[4] = "Aung Sang Su Kyi" +vip_names[3] = "Rei Bernard dos Países Baixos" +vip_names[4] = "Aung Sang Su Kyi, a Líder da Oposiçäo Democrática Birmanesa" vip_names[5] = "Sir Reginald Crumbly" -vip_names[7] = "O Vereador Joäo Precipício" -vip_names[8] = "O Marquês do Figo de Chumbo" -vip_names[9] = "Uma estrela do futebol" -vip_names[10] = "A. Eskoplovitz, II" +vip_names[7] = "Conselheiro Crawford Purves" +vip_names[8] = "Rocket Ronnie Jepson" +vip_names[9] = "Um jogador de futebol da Premier League" +vip_names[10] = "L. F. Probst, III" vip_names.health_minister = "O Ministro da Saúde" menu_charts.briefing = " INSTRUÇOES " -diseases.kidney_beans.cause = "Causa - Mastigar cubos de gelo das bebidas." -diseases.kidney_beans.name = "Incontinência" +diseases.kidney_beans.cause = "Causa - Mastigar os cubos de gelo das bebidas." +diseases.kidney_beans.name = "Feijöes Renais" diseases.kidney_beans.symptoms = "Sintomas - Dor e idas frequentes ao banheiro." -diseases.kidney_beans.cure = "Cura - Dois cirurgiöes extraem as pedras dos rins." +diseases.kidney_beans.cure = "Cura - Dois Cirurgiöes devem remover os feijöes sem tocar nas paredes do rim." diseases.ruptured_nodules.cause = "Causa - Fazer bungee jumping em tempo frio." diseases.ruptured_nodules.name = "Boludite" diseases.ruptured_nodules.symptoms = "Sintomas - Incapacidade de se sentar confortavelmente." -diseases.ruptured_nodules.cure = "Cura - Dois cirurgiöes qualificados colocam certas partes no lugar com mäos firmes." +diseases.ruptured_nodules.cure = "Cura - Dois cirurgiöes qualificados colocam certas partes com mäos firmes." diseases.fractured_bones.cause = "Causa - Queda de um lugar alto." -diseases.fractured_bones.name = "Fraturas ósseas" +diseases.fractured_bones.name = "Fraturas Osseas" diseases.fractured_bones.symptoms = "Sintomas - Um grande rangido e a impossibilidade de usar os membros afetados." -diseases.fractured_bones.cure = "Cura - Um molde é colocado, depois removido com uma máquina a laser." +diseases.fractured_bones.cure = "Cura - É colocado um molde; depois, com uma máquina a laser, ele é removido." diseases.diag_psych.name = "Diag: Psiquiatria" -diseases.jellyitis.cause = "Causa - Dieta rica em gelatina e muito exercício." +diseases.jellyitis.cause = "Causa - Uma dieta rica em gelatina e muito exercício." diseases.jellyitis.name = "Gelatinite" -diseases.jellyitis.symptoms = "Sintomas - Tremores excessivos e quedas frequentes." -diseases.jellyitis.cure = "Cura - O paciente é imerso em um banheiro gelatinoso em uma consulta especial." +diseases.jellyitis.symptoms = "Sintomas - Um tremor excessivo e quedas frequentes ao chäo." +diseases.jellyitis.cure = "Cura - Inunda-se o Paciente durante um momento no banheiro gelatinoso em uma sala especial." diseases.discrete_itching.cause = "Causa - Insetos diminutos com dentes afiados." -diseases.discrete_itching.name = "Coceira leve" -diseases.discrete_itching.symptoms = "Sintomas - Coceira que leva ao inchaço da área afetada." -diseases.discrete_itching.cure = "Cura - O paciente bebe um xarope farmacêutico para aliviar a coceira." -diseases.alien_dna.cause = "Causa - Enfrentar gigantes com sangue alienígena inteligente." -diseases.alien_dna.name = "DNA alienígena" -diseases.alien_dna.symptoms = "Sintomas - Metamorfose alienígena gradual e desejo de destruir cidades." +diseases.discrete_itching.name = "Coceira Leve" +diseases.discrete_itching.symptoms = "Sintomas - Arranhar-se, o que leva a um inchaço da parte afetada." +diseases.discrete_itching.cure = "Cura - O Paciente bebe um xarope farmacêutico para evitar a coceira da pele." +diseases.alien_dna.cause = "Causa - Enfrentar gigantes providos de sangue alienígena inteligente." +diseases.alien_dna.name = "DNA Alienígena" +diseases.alien_dna.symptoms = "Sintomas - Metamorfose alienígena gradual e desejo de destruir nossas cidades." diseases.alien_dna.cure = "Cura - O DNA é mecanicamente removido, limpo de elementos alienígenas e substituído rapidamente." diseases.infectious_laughter.cause = "Causa - Comédia clássica de situaçäo." -diseases.infectious_laughter.name = "Risada contagiosa" -diseases.infectious_laughter.symptoms = "Sintomas - Incapacidade de parar de rir e repetir frases sem graça." -diseases.infectious_laughter.cure = "Cura - Um psiquiatra qualificado deve lembrar o paciente de que a doença é grave." +diseases.infectious_laughter.name = "Risada Contagiosa" +diseases.infectious_laughter.symptoms = "Sintomas - Näo conseguir parar de rir e repetir frases feitas nada divertidas." +diseases.infectious_laughter.cure = "Cura - Um psiquiatra qualificado deve lembrar o Paciente de que sua doença é grave." diseases.diag_general_diag.name = "Diag: Geral" -diseases.spare_ribs.cause = "Causa - Sentar-se em locais muito frios." -diseases.spare_ribs.name = "Costelas extras" -diseases.spare_ribs.symptoms = "Sintomas - Mal-estar no peito." -diseases.spare_ribs.cure = "Cura - Dois cirurgiöes removem as costelas e as colocam em uma sacola para o paciente." -diseases.transparency.cause = "Causa - Lamber tampas de iogurte já usadas." +diseases.spare_ribs.cause = "Causa - Sentar-se sobre pisos muito frios." +diseases.spare_ribs.name = "Costelas Sobressalentes" +diseases.spare_ribs.symptoms = "Sintomas - Um mal-estar no peito." +diseases.spare_ribs.cure = "Cura - Dois cirurgiöes extraem as costelas e entregam ao Paciente em uma sacola." +diseases.transparency.cause = "Causa - Lamber tampa de iogurte já usado." diseases.transparency.name = "Transparentite" -diseases.transparency.symptoms = "Sintomas - A pele fica transparente e horrível." +diseases.transparency.symptoms = "Sintomas - A carne fica transparente e horrível." diseases.transparency.cure = "Cura - Tomar uma preparaçäo farmacêutica de água esfriada e colorida de modo especial." diseases.baldness.cause = "Causa - Contar mentiras e inventar histórias para ser famoso." diseases.baldness.name = "Calvície" diseases.baldness.symptoms = "Sintomas - Ter a cabeça brilhante e passar vergonha." -diseases.baldness.cure = "Cura - O cabelo é costurado na cabeça do paciente com uma dolorosa máquina." +diseases.baldness.cure = "Cura - O cabelo é costurado à cabeça do Paciente com uma máquina dolorosa." diseases.sleeping_illness.cause = "Causa - Uma glândula do sono hiperativa no céu da boca." diseases.sleeping_illness.name = "Sonolência" -diseases.sleeping_illness.symptoms = "Sintomas - Um desejo irresistível de mergulhar no sono." -diseases.sleeping_illness.cure = "Cura - Uma enfermeira administra uma dose elevada de um poderoso estimulante." +diseases.sleeping_illness.symptoms = "Sintomas - Um desejo incontrolável de mergulhar no sono." +diseases.sleeping_illness.cure = "Cura - Uma Enfermeira administra uma dose elevada de um poderoso estimulante." diseases.pregnancy.cause = "Causa - Cortes de eletricidade em áreas urbanas." -diseases.pregnancy.name = "Gravidez" +diseases.pregnancy.name = "Grávida" diseases.pregnancy.symptoms = "Sintomas - Muita vontade de comer e um mal-estar no estômago." -diseases.pregnancy.cure = "Cura - O bebê é retirado na Sala de Cirurgia, limpo e entregue ao paciente." +diseases.pregnancy.cure = "Cura - O bebê é retirado na Sala de Cirurgia, limpo e entregue ao Paciente." diseases.general_practice.name = "Diagnóstico Geral" -diseases.tv_personalities.cause = "Causa - Assistir televisäo durante o dia." -diseases.tv_personalities.name = "Personalitite" -diseases.tv_personalities.symptoms = "Sintomas - Ilusäo de estar apresentando um programa de culinária na televisäo." -diseases.tv_personalities.cure = "Cura - Um psiquiatra deve convencer o paciente a vender o seu televisor e comprar um rádio." +diseases.tv_personalities.cause = "Causa - Ver televisäo durante o dia." +diseases.tv_personalities.name = "Personalite" +diseases.tv_personalities.symptoms = "Sintomas - Ter a ilusäo de apresentar um programa de culinária na televisäo." +diseases.tv_personalities.cure = "Cura - Um Psiquiatra perito deve convencer o Paciente a vender seu televisor e comprar um rádio." diseases.broken_wind.cause = "Causa - Usar um aparelho ginástico depois das refeiçöes." -diseases.broken_wind.name = "Aerofagia" -diseases.broken_wind.symptoms = "Sintomas - Incomodar as pessoas que estäo atrás do paciente." -diseases.broken_wind.cure = "Cura - Beber rapidamente uma forte mistura de substâncias aquosas na farmácia." +diseases.broken_wind.name = "Flatulência" +diseases.broken_wind.symptoms = "Sintomas - Incomoda as pessoas que estäo logo atrás do Paciente." +diseases.broken_wind.cure = "Cura - Na Farmácia, bebe-se rapidamente uma forte mistura de átomos aquosos." diseases.hairyitis.cause = "Causa - Exposiçäo prolongada à lua." diseases.hairyitis.name = "Peludismo" diseases.hairyitis.symptoms = "Sintomas - Pacientes com olfato mais sensível." -diseases.hairyitis.cure = "Cura - Uma máquina de eletrólise elimina o pelo e fecha os poros." -diseases.diag_ward.name = "Diag: Clínico" -diseases.third_degree_sideburns.cause = "Causa - Desejo intenso pelos anos 70." -diseases.third_degree_sideburns.name = "Costeletas de terceiro grau" -diseases.third_degree_sideburns.symptoms = "Sintomas - Corte comprido, roupas largas, plataformas e muita maquiagem." -diseases.third_degree_sideburns.cure = "Cura - O pessoal psiquiátrico deve convencer o paciente de que essa moda é horrível, usando técnicas atualizadas." -diseases.gut_rot.cause = "Causa - O xarope para tosse à base de uísque da Sra. McGuiver." -diseases.gut_rot.name = "Ulcera gástrica" -diseases.gut_rot.symptoms = "Sintomas - O paciente näo tosse, mas também näo tem paredes no estômago." -diseases.gut_rot.cure = "Cura - Uma enfermeira administra uma soluçäo variada de substâncias químicas para revestir o estômago." -diseases.chronic_nosehair.cause = "Causa - Cheirar com desprezo aqueles que estäo pior que o paciente." -diseases.chronic_nosehair.name = "Nariz peludo" -diseases.chronic_nosehair.symptoms = "Sintomas - Ter tanto cabelo no nariz que dá para fazer uma peruca." -diseases.chronic_nosehair.cure = "Cura - Tomar um xarope anti-pelo, preparado pela enfermeira na farmácia." -diseases.the_squits.cause = "Causa - Comer pizza encontrada debaixo da mesa da cozinha." -diseases.the_squits.name = "Decomposiçäo" -diseases.the_squits.symptoms = "Sintomas - Agh! Certamente pode imaginar." +diseases.hairyitis.cure = "Cura - Uma máquina de Eletrólise elimina o pelo e fecha os poros." +diseases.diag_ward.name = "Diag: Enfermaria" +diseases.third_degree_sideburns.cause = "Causa - Saudade dos anos 1970." +diseases.third_degree_sideburns.name = "Costeletas de Terceiro Grau" +diseases.third_degree_sideburns.symptoms = "Sintomas - Corte comprido, roupa larga, plataformas e muita maquiagem." +diseases.third_degree_sideburns.cure = "Cura - O pessoal psiquiátrico deve, empregando técnicas atualizadas, convencer o Paciente de que essa moda é horrível." +diseases.gut_rot.cause = "Causa - O xarope para a tosse, à base de uísque, da Sra. McGuiver." +diseases.gut_rot.name = "Ulcera Gástrica" +diseases.gut_rot.symptoms = "Sintomas - O Paciente näo tosse, mas também näo tem paredes no estômago." +diseases.gut_rot.cure = "Cura - Uma Enfermeira administra uma dissoluçäo variada de substâncias químicas para revestir o estômago." +diseases.chronic_nosehair.cause = "Causa - Cheirar com desprezo aqueles que estäo pior que o Paciente." +diseases.chronic_nosehair.name = "Nariz Peludo" +diseases.chronic_nosehair.symptoms = "Sintomas - Ter tanto cabelo no nariz que poderia fazer uma peruca." +diseases.chronic_nosehair.cure = "Cura - Tomar por via oral um xarope retira-pêlo, que a Enfermeira prepara na Farmácia." +diseases.the_squits.cause = "Causa - Comer pizza que encontrou debaixo da mesa da cozinha." +diseases.the_squits.name = "Diarreia" +diseases.the_squits.symptoms = "Sintomas - Agh! Certamente pode imaginar isso." diseases.the_squits.cure = "Cura - Uma mistura pegajosa de substâncias viscosas preparada na farmácia solidifica as tripas do paciente." -diseases.fake_blood.cause = "Causa - O paciente está acostumado a ser o alvo das brincadeiras." -diseases.fake_blood.name = "Sangue falso" +diseases.fake_blood.cause = "Causa - O Paciente está acostumado a ser o alvo das brincadeiras." +diseases.fake_blood.name = "Sangue Falso" diseases.fake_blood.symptoms = "Sintomas - Fluido vermelho nas veias que se evapora ao contato com a roupa." -diseases.fake_blood.cure = "Cura - Esse problema só se resolve com tratamento psiquiátrico." -diseases.corrugated_ankles.cause = "Causa - Avançar o sinal vermelho do semáforo." -diseases.corrugated_ankles.name = "Tornozelo torcido" +diseases.fake_blood.cure = "Cura - Este problema só se resolve com tratamento psiquiátrico." +diseases.corrugated_ankles.cause = "Causa - Avançar sinal vermelho do semáforo." +diseases.corrugated_ankles.name = "Tornozelo Torcido" diseases.corrugated_ankles.symptoms = "Sintomas - Os pés näo cabem bem nos sapatos." -diseases.corrugated_ankles.cure = "Cura - Os tornozelos säo endireitados bebendo uma infusäo ligeiramente tóxica de ervas e plantas." +diseases.corrugated_ankles.cure = "Cura - Os tornozelos säo endireitados, bebendo uma infusäo ligeiramente tóxica de ervas e plantas." diseases.diag_x_ray.name = "Diag: Raio-X" diseases.invisibility.cause = "Causa - A picada de uma formiga radioativa (e invisível)." diseases.invisibility.name = "Invisibilidade" -diseases.invisibility.symptoms = "Sintomas - Os pacientes näo sofrem, mas às vezes gostam de pregar peças em seus familiares." -diseases.invisibility.cure = "Cura - Beber um líquido colorido na farmácia torna o paciente completamente visível." -diseases.sweaty_palms.cause = "Causa - Temer entrevistas de trabalho." -diseases.sweaty_palms.name = "Mäos suadas" -diseases.sweaty_palms.symptoms = "Sintomas - Dar a mäo ao paciente é como agarrar uma esponja encharcada." -diseases.sweaty_palms.cure = "Cura - Um psiquiatra deve discutir a fundo com o paciente sobre essa doença inventada." +diseases.invisibility.symptoms = "Sintomas - Os Pacientes näo sofrem, porém, às vezes gostam de pregar peças em seus familiares." +diseases.invisibility.cure = "Cura - Beber um líquido colorido na Farmácia, tornando o Paciente completamente visível." +diseases.sweaty_palms.cause = "Causa - Temer as entrevistas de trabalho." +diseases.sweaty_palms.name = "Mäos Suadas" +diseases.sweaty_palms.symptoms = "Sintomas - Dar a mäo ao Paciente é como agarrar uma esponja encharcada." +diseases.sweaty_palms.cure = "Cura - Um Psiquiatra deve discutir a fundo com o Paciente sobre essa doença inventada." diseases.bloaty_head.cause = "Causa - Cheirar queijo e beber água da chuva näo purificada." -diseases.bloaty_head.name = "Cabeça inchada" -diseases.bloaty_head.symptoms = "Sintomas - Muito desconforto aparente." -diseases.bloaty_head.cure = "Cura - Fura-se a cabeça inflada, em seguida, usa-se uma máquina inteligente para voltar a inflar até o tamanho correto." -diseases.heaped_piles.cause = "Causa - Permanecer de pé ao lado de refrigeradores de água." +diseases.bloaty_head.name = "Cabeça Inflada" +diseases.bloaty_head.symptoms = "Sintomas - Muito desconforto, pelo que parece." +diseases.bloaty_head.cure = "Cura - Fura-se a cabeça inflada, em seguida, volta-se a inflar até o tamanho correto com uma máquina inteligente." +diseases.heaped_piles.cause = "Causa - Permanecer em pé junto a refrigeradores de água." diseases.heaped_piles.name = "Hemorroidas" -diseases.heaped_piles.symptoms = "Sintomas - O paciente sente-se como se estivesse sentado sobre bolas de gude." +diseases.heaped_piles.symptoms = "Sintomas - O Paciente sente-se como se estivesse sentado sobre bolas de gude." diseases.heaped_piles.cure = "Cura - Uma bebida agradável, embora muito ácida, dissolve as hemorroidas internas." -diseases.king_complex.cause = "Causa - O espírito do rei entrou na mente do paciente e se apoderou dela." -diseases.king_complex.name = "Complexo de rei" +diseases.king_complex.cause = "Causa - O espírito do Rei entrou na mente do Paciente e se apoderou dela." +diseases.king_complex.name = "Complexo de Rei" diseases.king_complex.symptoms = "Sintomas - Calçar sapatos de camurça e comer hambúrgueres." -diseases.king_complex.cure = "Cura - Um psiquiatra conta ao paciente como ele está ridículo." +diseases.king_complex.cure = "Cura - Um psiquiatra diz ao Paciente como ele está ridículo." diseases.golf_stones.cause = "Causa - Inalar gás venenoso contendo bolas de golfe." -diseases.golf_stones.name = "Cálculos de golfe" -diseases.golf_stones.symptoms = "Sintomas - Delírios e muita vergonha." +diseases.golf_stones.name = "Cálculos de Golfe" +diseases.golf_stones.symptoms = "Sintomas - Delirar e sentir muita vergonha." diseases.golf_stones.cure = "Cura - Dois cirurgiöes operam para extrair os cálculos." diseases.gastric_ejections.cause = "Causa - Comida mexicana ou indiana muito condimentada." diseases.gastric_ejections.name = "Vômito" -diseases.gastric_ejections.symptoms = "Sintomas - O paciente vomita a comida ainda meio digerida a qualquer momento." +diseases.gastric_ejections.symptoms = "Sintomas - O Paciente vomita a comida ao meio digerir a qualquer momento." diseases.gastric_ejections.cure = "Cura - Beber um adstringente especial para parar os vômitos." diseases.unexpected_swelling.cause = "Causa - Algo inesperado." -diseases.unexpected_swelling.name = "Inchaço inesperado" +diseases.unexpected_swelling.name = "Inchaço Inesperado" diseases.unexpected_swelling.symptoms = "Sintomas - Inchaço." -diseases.unexpected_swelling.cure = "Cura - Só é possível reduzir o inchaço com uma lanceta durante uma operaçäo que requer dois cirurgiöes." +diseases.unexpected_swelling.cure = "Cura - O inchaço só pode ser reduzido através de uma incisäo feita em uma operaçäo que exige dois Cirurgiöes." diseases.slack_tongue.cause = "Causa - Fazer muita fofoca." -diseases.slack_tongue.name = "Língua comprida" +diseases.slack_tongue.name = "Língua Comprida" diseases.slack_tongue.symptoms = "Sintomas - A língua cresce até cinco vezes o seu tamanho original." -diseases.slack_tongue.cure = "Cura - A língua é colocada no corta-línguas e removida de forma rápida, eficaz e dolorosa." +diseases.slack_tongue.cure = "Cura - Coloca-se a língua no corta-línguas e elimina-se de forma rápida, eficaz e dolorosa." diseases.diag_scanner.name = "Diag: Scanner" diseases.uncommon_cold.cause = "Causa - Pequenas partículas de muco no ar." -diseases.uncommon_cold.name = "Catarro atípico" +diseases.uncommon_cold.name = "Resfriado Incomum" diseases.uncommon_cold.symptoms = "Sintomas - Mucosidade, espirros e pulmöes descoloridos." -diseases.uncommon_cold.cure = "Cura - Beber um grande gole de um xarope estranho para tosse fabricado na farmácia com ingredientes especiais." -diseases.broken_heart.cause = "Causa - Alguém mais rico, mais jovem e mais magro que o paciente." -diseases.broken_heart.name = "Infelicidade" -diseases.broken_heart.symptoms = "Sintomas - Chorar e rir depois de passar horas rasgando as fotos das férias." -diseases.broken_heart.cure = "Cura - Dois cirurgiöes abrem o peito e arrumam com delicadeza o coraçäo enquanto prendem a respiraçäo." +diseases.uncommon_cold.cure = "Cura - Beber um grande gole de um xarope estranho para tosse, fabricado na farmácia com ingredientes especiais." +diseases.broken_heart.cause = "Causa - Alguém mais rico, mais jovem e mais magro que o Paciente." +diseases.broken_heart.name = "Coraçäo Partido" +diseases.broken_heart.symptoms = "Sintomas - Choro e lesöes por esforço repetitivo devido a horas passando as fotos de férias e se lamentando." +diseases.broken_heart.cure = "Cura - Dois Cirurgiöes abrem o peito e consertam delicadamente o coraçäo enquanto seguram a respiraçäo." diseases.diag_blood_machine.name = "Diag: Análise Sanguínea" diseases.diag_cardiogram.name = "Diag: Cardiologia" diseases.serious_radiation.cause = "Causa - Confundir isótopos de plutônio com chiclete." diseases.serious_radiation.name = "Radiaçäo Grave" -diseases.serious_radiation.symptoms = "Sintomas - Os pacientes com essa doença se sentem muito mal." -diseases.serious_radiation.cure = "Cura - O paciente deve ir para a Ducha de Descontaminaçäo para se limpar." -diseases.iron_lungs.cause = "Causa - Contaminaçäo urbana misturada com restos de kebab." -diseases.iron_lungs.name = "Pulmäo de aço" -diseases.iron_lungs.symptoms = "Sintomas - Capacidade para aspirar fogo e gritar debaixo da água." -diseases.iron_lungs.cure = "Cura - Dois cirurgiöes realizam uma operaçäo para remover as partes duras do pulmäo na Sala de Cirurgia." +diseases.serious_radiation.symptoms = "Sintomas - Os Pacientes com essa doença se sentem muito mal." +diseases.serious_radiation.cure = "Cura - O Paciente deve ir para a ducha de Descontaminaçäo para se limpar." +diseases.iron_lungs.cause = "Causa - A contaminaçäo urbana misturada com restos do Kebab." +diseases.iron_lungs.name = "Pulmäo de Aço" +diseases.iron_lungs.symptoms = "Sintomas - Capacidade de aspirar fogo e gritar debaixo da água." +diseases.iron_lungs.cure = "Cura - Dois Cirurgiöes realizam uma operaçäo para eliminar as partes duras do pulmäo na Sala de Cirurgia." diseases.diag_ultrascan.name = "Diag: Ultra Scanner" diseases.autopsy.name = "Autópsia" -dynamic_info.staff.ability = "Habilidade" +dynamic_info.staff.ability = "Qualificaçäo" dynamic_info.staff.psychiatrist_abbrev = "Psiq." -dynamic_info.staff.actions.waiting_for_patient = "Esperando um paciente" +dynamic_info.staff.actions.waiting_for_patient = "Esperando um Paciente" dynamic_info.staff.actions.wandering = "Andando por aí" dynamic_info.staff.actions.going_to_repair = "Indo reparar %s" dynamic_info.staff.tiredness = "Cansaço" dynamic_info.vip = "Visitante VIP" dynamic_info.patient.diagnosis_progress = "Diagnóstico em curso" dynamic_info.patient.emergency = "Emergências: %s" -dynamic_info.patient.diagnosed = "Diagnóstico: %s" +dynamic_info.patient.diagnosed = "Diagnóstico: %s " dynamic_info.patient.guessed_diagnosis = "Bom diagnóstico: %s" dynamic_info.patient.actions.fed_up = "Perdeu a paciência - Indo para casa" -dynamic_info.patient.actions.waiting_for_diagnosis_rooms = "Esperando a construçäo da consulta" +dynamic_info.patient.actions.waiting_for_diagnosis_rooms = "Esperando construir mais salas de diagnóstico" dynamic_info.patient.actions.sent_to_other_hospital = "Enviado para outro local" dynamic_info.patient.actions.on_my_way_to = "Indo para %s" -dynamic_info.patient.actions.waiting_for_treatment_rooms = "Esperando a construçäo do tratamento" +dynamic_info.patient.actions.waiting_for_treatment_rooms = "Esperando construir uma sala de tratamento" dynamic_info.patient.actions.queueing_for = "Na fila para %s" dynamic_info.patient.actions.epidemic_contagious = "Tenho uma doença contagiosa" dynamic_info.patient.actions.no_diagnoses_available = "Näo há mais diagnósticos, vou embora" -dynamic_info.patient.actions.awaiting_decision = "Esperando por sua decisäo" +dynamic_info.patient.actions.awaiting_decision = "Esperando sua decisäo" dynamic_info.patient.actions.sent_home = "Dado alta" dynamic_info.patient.actions.cured = "Curado!" -dynamic_info.patient.actions.prices_too_high = "Os seus preços säo muito altos, vou embora" +dynamic_info.patient.actions.prices_too_high = "Seus preços estäo muito altos, vou embora" dynamic_info.patient.actions.epidemic_sent_home = "Enviado para casa por um Inspetor" dynamic_info.patient.actions.no_treatment_available = "Näo há tratamentos, vou para casa." dynamic_info.patient.actions.dying = "Morrendo!" dynamic_info.object.strength = "Resistência %d" -dynamic_info.object.queue_expected = "Fila esperada %d" -dynamic_info.object.times_used = "Utilizado %d vezes" -dynamic_info.object.queue_size = "Tamanho da fila %d" +dynamic_info.object.queue_expected = "Fila Esperada %d" +dynamic_info.object.times_used = "Utilizado %d Vezes" +dynamic_info.object.queue_size = "Tamanho da Fila %d" dynamic_info.health_inspector = "Inspetor de Saúde" -town_map.chat = "Detalhes da cidade" -town_map.not_for_sale = "Näo vende-se" +town_map.chat = "Detalhes da Cidade" +town_map.not_for_sale = "Näo Vende-se" town_map.price = "Preço" town_map.number = "Número" town_map.owner = "Proprietário" @@ -1941,8 +1939,8 @@ town_map.area = "Terreno" misc.grade_adverb.mildly = "ligeiramente" misc.grade_adverb.moderately = "moderadamente" misc.grade_adverb.extremely = "extremamente" -misc.out_of_sync = "Jogo fora de sincronismo" -misc.load_failed = "Jogo näo carregado" +misc.out_of_sync = "Jogo fora de sincronia" +misc.load_failed = "Jogo salvo näo carregado" misc.send_message_all = "Enviar mensagem para todos os jogadores" misc.hospital_open = "Hospital Aberto" misc.save_failed = "ERRO: Näo foi possível salvar o jogo" @@ -1952,8 +1950,8 @@ misc.done = "Concluído" misc.send_message = "Enviar mensagem para o jogador %d" misc.balance = "Arquivo de Balanço:" misc.low_res = "Baixa Resoluçäo" -misc.force = "Mäo-de-obra" -misc.save_success = "Jogo salvo com êxito" +misc.force = "Mäo de obra" +misc.save_success = "Jogo salvo com sucesso" drug_companies[1] = "Laboratórios Joäo" drug_companies[2] = "Curatudo S.A." drug_companies[3] = "Pequena Pílula Co." @@ -1968,10 +1966,10 @@ high_score.categories.total_value = "VALOR TOTAL" high_score.categories.visitors = "MAIS VISITANTES" high_score.categories.clean = "LIMPEZA" high_score.categories.money = "O MAIS RICO" -high_score.categories.salary = "SALARIO MAIS ALTO" +high_score.categories.salary = "MAIOR SALARIO" high_score.categories.deaths = "NUMERO DE MORTES" high_score.categories.patient_happiness = "CLIENTES SATISFEITOS" -high_score.categories.staff_number = "FUNCIONARIOS" +high_score.categories.staff_number = "MAIS FUNCIONARIOS" high_score.categories.staff_happiness = "FUNCIONARIOS CONTENTES" high_score.player = "JOGADOR" high_score.best_scores = "GALERIA DA FAMA" @@ -2006,38 +2004,38 @@ staff_class.surgeon = "Cirurgiäo" staff_class.receptionist = "Recepcionista" staff_class.doctor = "Médico" menu_debug.display_pager = " MOSTRAR PAGINADOR " -menu_debug.nav_bits = " NAV BITS " -menu_debug.win_level_anim = " SUPERAR NIVEL ANIM " +menu_debug.nav_bits = " BITS DE NAVEGAÇAO " +menu_debug.win_level_anim = " ANIMAÇAO DE VITORIA DE NIVEL " menu_debug.plant_pagers = " PAGINADORES DE PLANTAS " -menu_debug.display_room_status = " MOSTRAR ESTADO DA CONSULTA" +menu_debug.display_room_status = " MOSTRAR ESTADO DA SALA" menu_debug.show_nav_cells = " MOSTRAR CELAS NAV " menu_debug.entry_cells = " CELAS DE ENTRADA " menu_debug.object_cells = " CELAS DE OBJETO " -menu_debug.lose_game_anim[1] = " PERDER JOGO 1 ANIM " -menu_debug.lose_game_anim[2] = " PERDER JOGO 2 ANIM " -menu_debug.lose_game_anim[3] = " PERDER JOGO 3 ANIM " -menu_debug.lose_game_anim[4] = " PERDER JOGO 4 ANIM " -menu_debug.lose_game_anim[5] = " PERDER JOGO 5 ANIM " -menu_debug.lose_game_anim[6] = " PERDER JOGO 6 ANIM " -menu_debug.lose_game_anim[7] = " PERDER JOGO 7 ANIM " +menu_debug.lose_game_anim[1] = " ANIMAÇAO DE DERROTA 1 DO JOGO " +menu_debug.lose_game_anim[2] = " ANIMAÇAO DE DERROTA 2 DO JOGO " +menu_debug.lose_game_anim[3] = " ANIMAÇAO DE DERROTA 3 DO JOGO " +menu_debug.lose_game_anim[4] = " ANIMAÇAO DE DERROTA 4 DO JOGO " +menu_debug.lose_game_anim[5] = " ANIMAÇAO DE DERROTA 5 DO JOGO " +menu_debug.lose_game_anim[6] = " ANIMAÇAO DE DERROTA 6 DO JOGO " +menu_debug.lose_game_anim[7] = " ANIMAÇAO DE DERROTA 7 DO JOGO " menu_debug.show_help_hotspot = " MOSTRAR AJUDAS " menu_debug.porter_pagers = " PAGINADORES DE ZELADOR " menu_debug.mapwho_checking = " VERIFICAR LOCALIZAÇAO " menu_debug.machine_pagers = " PAGINADORES DE MAQUINA " menu_debug.keep_clear_cells = " CONSERVAR AS CELAS LIMPAS " menu_debug.enter_nav_debug = " INTRODUZIR NAV DEBUG " -menu_debug.win_game_anim = " GANHAR JOGO ANIM " +menu_debug.win_game_anim = " ANIMAÇAO DE VITORIA DO JOGO " menu_debug.remove_objects = " RETIRAR OBJETOS " menu_debug.display_big_cells = " MOSTRAR CELAS GRANDES " menu_debug.pixbuf_cells = " CELAS PIXBUF " menu_debug.remove_walls = " RETIRAR PAREDES " -research.categories.drugs = "Pesquisa farmacêutica" -research.categories.cure = "Equipam. de cura" +research.categories.drugs = "Pesquisa Farmacêutica" +research.categories.cure = "Equipam. de Cura" research.categories.improvements = "Melhorias" research.categories.specialisation = "Especializaçäo" -research.categories.diagnosis = "Equipam. de diagnóstico" -research.funds_allocation = "Alocaçäo de fundos" -research.allocated_amount = "Quantidade alocada" +research.categories.diagnosis = "Equipam. de Diagnóstico" +research.funds_allocation = "Alocaçäo de Fundos" +research.allocated_amount = "Quantidade Alocada" months[1] = "Jan" months[2] = "Fev" months[3] = "Mar" @@ -2051,97 +2049,97 @@ months[10] = "Out" months[11] = "Nov" months[12] = "Dez" trophy_room.cleanliness.award[1] = "Os Inspetores notaram que o seu hospital está muito limpo. Um hospital limpo é um hospital seguro. Continue assim." -trophy_room.cleanliness.regional_good[1] = "Seu hospital foi apontado como um dos menos limpos da regiäo. Um hospital sujo, que cheira mal e é perigoso. Deveria se preocupar mais com a limpeza." +trophy_room.cleanliness.regional_good[1] = "Seu hospital foi apontado como um dos menos limpos da regiäo. Um hospital sujo, que cheira mal e é perigoso. Você deveria se preocupar mais com a limpeza." trophy_room.cleanliness.regional_bad[1] = "O seu hospital é o mais sujo da regiäo. Outros diretores conseguiram manter os seus hospitais mais limpos. Você é a vergonha da profissäo médica." -trophy_room.happy_vips.trophies[1] = "Ganhou o Prêmio Nobel de VIP Exemplares. Todos os que visitaram o seu hospital no ano passado o elogiaram muito." -trophy_room.happy_vips.trophies[2] = "A Agência de Pessoas Famosas deseja-lhe conceder o Prêmio à Celebridade por ter agradado a todos os VIP que visitaram o seu hospital." -trophy_room.happy_vips.trophies[3] = "Ganhou a VIAGEM VIP por melhorar a imagem dos trabalhadores aos olhos de todos os que visitaram o seu hospital. Estupendo!" -trophy_room.gen_repairs.awards[1] = "Foi-lhe concedido um prêmio especial pela diligência dos seus zeladores na hora de manter as máquinas do seu hospital em bom estado. Muito bem. Tire umas férias." -trophy_room.gen_repairs.awards[2] = "Os seus zeladores trabalharam melhor que os de qualquer outro hospital. Este é um importante acontecimento de felicidade." -trophy_room.gen_repairs.awards[3] = "As suas máquinas estäo em um magnífico estado. A dedicaçäo dos seus zeladores foi extraordinária. Merecem este prestigioso prêmio. Um trabalho estupendo!" -trophy_room.gen_repairs.penalty[1] = "Os seus zeladores näo cuidaram bem das suas máquinas. Deveria fiscalizá-los melhor ou contratar mais para que façam o trabalho melhor." -trophy_room.gen_repairs.penalty[2] = "Näo fez uma boa manutençäo. Os seus funcionários deveriam cuidar melhor dos seus equipamentos." -trophy_room.many_cured.penalty[1] = "O seu hospital näo cura com eficácia os pacientes que o necessitam. Tenha mais atençäo às curas para que sejam mais eficazes." -trophy_room.many_cured.penalty[2] = "O seu hospital é o menos eficaz na hora de curar pacientes. Decepcionou o Ministério e defraudou a si mesmo. Näo diremos mais." -trophy_room.many_cured.trophies[1] = "Parabéns pela concessäo do prêmio Marie Curie por ter curado quase todos os pacientes do seu hospital no ano passado." -trophy_room.many_cured.trophies[2] = "A Fundaçäo Nacional de Curas deseja premiá-lo por ter curado um grande número de pacientes no ano passado, concedendo o Galardäo ao Maior Curador." -trophy_room.many_cured.trophies[3] = "Foi-lhe concedida a Medalha do Paciente Säo por ter conseguido curar no seu hospital uma enorme porcentagem de pacientes no ano passado." -trophy_room.many_cured.awards[1] = "Parabéns por curar um montäo de pessoas no ano passado. Um grande número de pessoas sente-se muito melhor, graças ao seu trabalho." -trophy_room.many_cured.awards[2] = "Pedimos que aceite este prêmio por ter curado mais pacientes que qualquer outro hospital. Um excelente trabalho." +trophy_room.happy_vips.trophies[1] = "Você ganhou o Prêmio Nobel de Impressäo de VIPs. Todos que visitaram seu hospital no último ano foram extremamente elogiosos sobre ele." +trophy_room.happy_vips.trophies[2] = "A Agência de Pessoas Famosas também tem o prazer de entregar-lhe o Troféu Celebridade por agradar a todos os VIPs que visitaram sua instituiçäo. Sinta-se um pouco famoso e quase um de nós." +trophy_room.happy_vips.trophies[3] = "Parabéns por conquistar o Prêmio VIAGEM VIP por tornar a vida das figuras públicas mais leve e agradável, agradando todos os que passaram por seu hospital. Maravilhoso." +trophy_room.gen_repairs.awards[1] = "Foi-lhe concedido um prêmio especial pela diligência dos seus Zeladores em manter as máquinas do seu hospital em bom estado. Muito bem. Tire umas férias." +trophy_room.gen_repairs.awards[2] = "Os seus Zeladores trabalharam melhor que os de qualquer outro hospital. Este é um importante acontecimento de felicidade." +trophy_room.gen_repairs.awards[3] = "As suas máquinas estäo em um magnífico estado. A dedicaçäo dos seus Zeladores foi extraordinária. Merecem este prestigioso prêmio. Um trabalho estupendo!" +trophy_room.gen_repairs.penalty[1] = "Os seus Zeladores näo cuidaram bem das suas máquinas. Você deveria fiscalizá-los melhor ou contratar mais para que façam o trabalho melhor." +trophy_room.gen_repairs.penalty[2] = "Você näo fez uma boa manutençäo. Os seus funcionários deveriam cuidar melhor dos seus equipamentos." +trophy_room.many_cured.penalty[1] = "O seu hospital näo cura com eficácia os Pacientes que necessitam. Tenha mais atençäo às curas para que sejam mais eficazes." +trophy_room.many_cured.penalty[2] = "O seu hospital é o menos eficaz na hora de curar Pacientes. Decepcionou o Ministério e a si mesmo. Näo diremos mais." +trophy_room.many_cured.trophies[1] = "Parabéns pelo Prêmio Marie Curie por ter curado quase todos os Pacientes do seu hospital no ano passado." +trophy_room.many_cured.trophies[2] = "A Fundaçäo Internacional de Curas deseja homenagear o fato de que você curou um grande número de pessoas em seu hospital no ano passado, concedendo a você o Troféu Cura-Muito." +trophy_room.many_cured.trophies[3] = "Você recebeu o Troféu Paciente Säo por ter conseguido curar em seu hospital uma enorme porcentagem de Pacientes no ano passado." +trophy_room.many_cured.awards[1] = "Parabéns por curar um montäo de pessoas no ano passado. Um grande número de pessoas se sente muito melhor, graças ao seu trabalho." +trophy_room.many_cured.awards[2] = "Pedimos que aceite este prêmio por ter curado mais Pacientes do que qualquer outro hospital. Um excelente trabalho." trophy_room.many_cured.regional[1] = "Você recebeu o prêmio de cura total por ter curado mais pessoas do que todos os outros hospitais juntos." -trophy_room.sold_drinks.trophies[1] = "A Associaçäo Odontológica orgulha-se de lhe conceder este troféu e esta placa por vender um montäo de bebidas em lata no seu hospital." -trophy_room.sold_drinks.trophies[2] = "O seu hospital foi premiado com o prêmio Bizz-Efervescente pela Venda de Refrigerante em reconhecimento ao número de bebidas vendidas em seu hospital no ano passado." -trophy_room.sold_drinks.trophies[3] = "Em nome de DK Obturaçöes Inc., você recebe o prêmio coberto de chocolate para celebrar a enorme quantidade de refrigerantes que vendeu no seu hospital este ano." -trophy_room.consistant_rep.trophies[1] = "O Conselho de Ministros concedeu-lhe a Mençäo de Honra por ter alcançado o nível máximo de eficácia e reputaçäo durante o ano presente. Muito bem." -trophy_room.consistant_rep.trophies[2] = "Parabéns pela concessäo do Prêmio Lençóis Limpos por ser o hospital com a melhor reputaçäo do ano. Você mereceu." -trophy_room.cash = "EFETIVO" -trophy_room.high_rep.penalty[1] = "Vai ser sancionado pela má reputaçäo que teve no ano passado. Procure melhorar no futuro." -trophy_room.high_rep.penalty[2] = "A reputaçäo do seu hospital é a pior da área. É uma vergonha. Melhore ou consiga outro emprego." +trophy_room.sold_drinks.trophies[1] = "A Associaçäo Odontológica orgulhosamente te concede esse Troféu por vender muitas bebidas em seu hospital." +trophy_room.sold_drinks.trophies[2] = "Seu hospital foi premiado com o Troféu Negócio-Borbulhante por Vendas de Refrigerantes em reconhecimento ao número de bebidas vendidas em seu hospital no último ano." +trophy_room.sold_drinks.trophies[3] = "Em nome da DK Obturaçöes Inc, você recebe este troféu coberto de chocolate para comemorar o extraordinário número de refrigerantes vendidos em seu hospital este ano." +trophy_room.consistant_rep.trophies[1] = "O Conselho de Ministros lhe concedeu uma Mençäo de Honra por ter alcançado o nível máximo de eficácia e reputaçäo durante o ano atual. Muito bem." +trophy_room.consistant_rep.trophies[2] = "Parabéns pelo Troféu Lençóis Limpos por ser o hospital com a melhor reputaçäo do ano. Você merece." +trophy_room.cash = "DINHEIRO" +trophy_room.high_rep.penalty[1] = "Você será sancionado pela má reputaçäo que teve no ano passado. Procure melhorar no futuro." +trophy_room.high_rep.penalty[2] = "A reputaçäo do seu hospital é a pior da área. É uma vergonha. Melhore ou procure outro emprego." trophy_room.high_rep.awards[1] = "Muito bem! Ganhou um pequeno prêmio por alcançar uma impressionante reputaçäo no ano passado." trophy_room.high_rep.awards[2] = "Maravilhoso! O seu hospital ganhou um prêmio por conseguir a melhor reputaçäo no ano passado." -trophy_room.high_rep.regional[1] = "Por favor, aceite o Prêmio Bullfrog por dirigir o melhor hospital do ano. Você mereceu, aproveite." -trophy_room.high_rep.regional[2] = "Este ano, a reputaçäo do seu hospital superou a do resto dos hospitais. Um estupendo lucro." -trophy_room.best_value_hosp.trophies[1] = "Parabéns pela concessäo do Prêmio Lençóis Limpos por ser o hospital com a melhor reputaçäo do ano. Você mereceu." +trophy_room.high_rep.regional[1] = "Por favor, aceite o Prêmio Bullfrog por dirigir o melhor hospital do ano. Você merece, aproveite." +trophy_room.high_rep.regional[2] = "Este ano, a reputaçäo do seu hospital superou a dos outros hospitais. Um estupendo lucro." +trophy_room.best_value_hosp.trophies[1] = "Parabéns pelo Troféu Lençóis Limpos por ser o hospital com a melhor reputaçäo do ano. Você merece." trophy_room.best_value_hosp.regional[1] = "Parabéns por ter o hospital mais valioso do jogo. Bom trabalho! Por favor, continue assim." trophy_room.best_value_hosp.penalty[1] = "Todos os hospitais da área valem mais do que o seu. Faça algo a respeito desta vergonhosa situaçäo. Consiga coisas mais caras!" trophy_room.reputation = "REPUTAÇAO" -trophy_room.happy_staff.regional_good[1] = "Os seus funcionários säo os mais satisfeitos de todos os hospitais. Se os funcionários estäo contentes, há mais ganhos e menos mortes. No Ministério estäo satisfeitos." +trophy_room.happy_staff.regional_good[1] = "Os seus funcionários säo os mais satisfeitos de todos os hospitais. Se os funcionários estäo felizes, há mais ganhos e menos mortes. No Ministério estäo satisfeitos." trophy_room.happy_staff.penalty[1] = "Os seus funcionários desejam que saiba que estäo muito descontentes. Ter bons funcionários é muito proveitoso. Faça com que eles estejam mais satisfeitos ou algum dia irá perdê-los." -trophy_room.happy_staff.trophies[1] = "Ganhou o Prêmio Médico Sorridente por manter o mais contente possível os seus funcionários." -trophy_room.happy_staff.trophies[2] = "A Fundaçäo para a Felicidade do Pessoal Sanitário concedeu-lhe este galardäo por näo ter tido trabalhadores descontentes no seu hospital no ano passado." -trophy_room.happy_staff.trophies[3] = "Concedemos a você o prêmio Monopoliza do Sorriso Radiante por manter contente todos os seus funcionários, mais à frente do cumprimento do dever, durante o ano passado." -trophy_room.happy_staff.awards[1] = "Sua equipe te concedeu um prêmio. Eles dizem que, em geral, você manda muito bem." -trophy_room.happy_staff.awards[2] = "Seus funcionários säo täo felizes trabalhando para você que näo conseguem tirar os sorrisos dos seus rostos. Você é um gerente magnífico." -trophy_room.happy_staff.regional_bad[1] = "A sua equipe esteve muito infeliz durante o ano passado. Você deveria ter notado. Do jeito que está, as equipes dos outros hospitais estäo muito mais contentes do que a sua." +trophy_room.happy_staff.trophies[1] = "Ganhou o Troféu Médico Sorridente por manter seus funcionários o mais felizes possível." +trophy_room.happy_staff.trophies[2] = "O Instituto Adami de Felicidade o premia com este troféu por näo ter tido funcionários infelizes no hospital no ano passado." +trophy_room.happy_staff.trophies[3] = "Concedemos a você o Troféu Mais-Sorrisos por manter todos os seus funcionários felizes, além do chamado do dever durante o último ano. Sorrisos por todos os lados!" +trophy_room.happy_staff.awards[1] = "Sua equipe lhe concedeu um prêmio. Eles dizem que, em geral, você manda muito bem." +trophy_room.happy_staff.awards[2] = "Seus funcionários estäo täo felizes trabalhando para você que näo conseguem tirar os sorrisos dos rostos. Você é um gerente magnífico." +trophy_room.happy_staff.regional_bad[1] = "A sua equipe esteve muito infeliz durante o ano passado. Você deveria ter notado. Do jeito que está, as equipes dos outros hospitais estäo muito mais felizes do que a sua." trophy_room.hosp_value.penalty[1] = "O seu hospital fracassou em alcançar um valor razoável. Gerenciou mal o dinheiro. Lembre-se, um bom hospital também é um hospital caro." trophy_room.hosp_value.awards[1] = "O Ministério da Saúde gostaria de parabenizá-lo pelo impressionante valor alcançado em seu hospital." trophy_room.hosp_value.regional[1] = "É uma promessa dos negócios. O hospital é o mais valioso de toda a área." -trophy_room.healthy_plants.awards[1] = "Parabéns por ganhar o galardäo do Grande Fertilizante por manter as suas plantas vivas durante o ano passado." -trophy_room.healthy_plants.trophies[1] = "Os Amigos das Plantas de Interior desejam lhe conceder o Prêmio de Saúde Verde por manter vivas as suas plantas durante os últimos doze meses." -trophy_room.healthy_plants.trophies[2] = "Salvem as Plantas quer concede-lhe o Prêmio do Maior Ecologista por manter vivas as plantas do seu hospital durante o ano passado." -trophy_room.research.penalty[1] = "Foi pouco eficiente ao investigar curas, máquinas e remédios novos. Isto é fatal, já que o avanço tecnológico é algo fundamental." -trophy_room.research.regional_good[1] = "As suas pesquisas conseguiram colocar o seu hospital nos últimos avanços de hoje em dia. Os seus pesquisadores merecem este prêmio. Muito bem!" -trophy_room.research.awards[1] = "As suas pesquisas conseguiram colocar o seu hospital nos últimos avanços de hoje em dia. Os seus pesquisadores merecem este prêmio. Muito bem!" +trophy_room.healthy_plants.awards[1] = "Parabéns por ganhar o prêmio Grande Fertilizante por manter suas plantas vivas durante o ano passado." +trophy_room.healthy_plants.trophies[1] = "Os Amigos das Plantas de Vaso desejam conceder a você o Troféu Verde da Saúde por manter todas as suas plantas em boas condiçöes durante os últimos doze meses." +trophy_room.healthy_plants.trophies[2] = "Salvem as Plantas gostaria de presenteá-lo com o Troféu Grande Ecologista por manter vivas as plantas do seu hospital durante o ano passado." +trophy_room.research.penalty[1] = "Você foi pouco eficiente ao pesquisar curas, máquinas e medicamentos. Isso é fatal, já que o avanço tecnológico é fundamental." +trophy_room.research.regional_good[1] = "As suas pesquisas conseguiram colocar o seu hospital entre os últimos avanços de hoje em dia. Os seus pesquisadores merecem este prêmio. Muito bem!" +trophy_room.research.awards[1] = "As suas pesquisas conseguiram colocar o seu hospital entre os últimos avanços de hoje em dia. Os seus pesquisadores merecem este prêmio. Muito bem!" trophy_room.research.awards[2] = "No ano passado, descobriu mais remédios e máquinas do que se podia esperar. Por favor, aceite este prêmio de todos nós no Ministério." -trophy_room.research.regional_bad[1] = "Outros hospitais säo melhores que o seu na pesquisa. No Ministério estäo furiosos, seu hospital deveria lhe conceder mais importância." -trophy_room.no_deaths.penalty[1] = "O número de mortes no seu hospital, no ano passado, foi muito elevado. Coloque mais atençäo ao seu trabalho. Assegure-se de que no futuro sobreviva mais pessoas." -trophy_room.no_deaths.penalty[2] = "O seu hospital é um risco para os pacientes. Supöe-se que deve curar muitas pessoas, näo deixar morrer." -trophy_room.no_deaths.trophies[1] = "Ganhou o Prêmio de Ausência de Reclamaçöes por manter 100%% dos seus pacientes com vida no ano passado." -trophy_room.no_deaths.trophies[2] = "A Associaçäo A Vida Continua concede-lhe este prêmio pela ausência de falecimentos no seu hospital este ano." -trophy_room.no_deaths.trophies[3] = "Você recebeu o Prêmio pela Conservaçäo da Vida por ter conseguido evitar falecimentos no seu hospital durante este ano. Genial!" -trophy_room.no_deaths.awards[1] = "Ganhou este prêmio como reconhecimento ao seu baixo índice de falecimentos no hospital este ano. É estupendo!" +trophy_room.research.regional_bad[1] = "Outros hospitais säo melhores que o seu na pesquisa. No Ministério estäo furiosos, e seu hospital deveria lhe conceder mais importância." +trophy_room.no_deaths.penalty[1] = "O número de mortes no seu hospital, no ano passado, foi muito elevado. Preste mais atençäo ao seu trabalho. Assegure-se de que no futuro mais pessoas sobrevivam." +trophy_room.no_deaths.penalty[2] = "O seu hospital é um risco para os Pacientes. Supöe-se que você deve curar muitas pessoas, näo deixá-las morrer." +trophy_room.no_deaths.trophies[1] = "Você ganhou o Prêmio Ausência de Reclamaçöes por manter 100%% de seus Pacientes vivos no último ano." +trophy_room.no_deaths.trophies[2] = "Associaçäo A Vida Continua entrega-lhe este troféu por näo ter registrado nenhum óbito no último ano." +trophy_room.no_deaths.trophies[3] = "Você foi premiado com o Troféu Fique Vivo por evitar qualquer morte em seu excelente hospital neste ano. Ótimo." +trophy_room.no_deaths.awards[1] = "Ganhou este prêmio como reconhecimento ao seu baixo índice de falecimentos no seu hospital, este ano. É estupendo!" trophy_room.no_deaths.awards[2] = "A sua habilidade conseguiu reduzir ao mínimo o número de mortes no seu hospital. Deve estar muito feliz com este resultado." -trophy_room.no_deaths.regional[1] = "No ano passado, a taxa de mortalidade do seu hospital foi inferior a dos outros. Por favor, aceite este prêmio." -trophy_room.rats_accuracy.trophies[1] = "Você recebeu o Prêmio de Disparos Certeiros Syndicate Wars por acertar em %d%% ratos no seu hospital no ano passado." -trophy_room.rats_accuracy.trophies[2] = "Este prêmio é para celebrar a sua incrível pontaria ao eliminar %d%% dos ratos que disparou no seu hospital no ano passado." -trophy_room.rats_accuracy.trophies[3] = "Para celebrar o fato de que eliminou %d%% dos ratos do seu hospital, foi-lhe concedido o Troféu de Eliminador de Roedores. Parabéns!" -trophy_room.emergencies.penalty[1] = "Foi muito pouco eficiente nos casos de emergência. Os pacientes de emergência merecem uma atençäo rápida e precisa, que você näo lhes deu." -trophy_room.emergencies.award[1] = "Parabéns! Ganhou este prêmio pela maneira eficaz e eficiente com a qual solucionou as emergências. Bom trabalho." -trophy_room.emergencies.award[2] = "Confrontou as emergências de uma maneira extraordinária. Ganhou este prêmio por ser o melhor na hora de lidar com uma grande quantidade de pacientes." +trophy_room.no_deaths.regional[1] = "No ano passado, a taxa de mortalidade do seu hospital foi inferior à dos outros. Por favor, aceite este prêmio." +trophy_room.rats_accuracy.trophies[1] = "Você recebeu o Troféu Syndicate Wars, Tiro Preciso por acertar em %d%% dos ratos em seu hospital no ano passado." +trophy_room.rats_accuracy.trophies[2] = "Este prêmio é para celebrar a sua incrível pontaria ao eliminar %d%% dos ratos que disparou em seu hospital no ano passado." +trophy_room.rats_accuracy.trophies[3] = "Para celebrar o fato de que eliminou %d%% dos ratos do seu hospital, foi-lhe concedido o Troféu Dungeon Keeper, Livre de Roedores. CongRATulaçöes!" +trophy_room.emergencies.penalty[1] = "Você foi muito pouco eficiente nos casos de emergência. Os Pacientes de emergência merecem uma atençäo rápida e precisa, que você näo lhes deu." +trophy_room.emergencies.award[1] = "Parabéns! Ganhou este prêmio pela maneira eficaz e eficiente com que solucionou as emergências. Bom trabalho." +trophy_room.emergencies.award[2] = "Confrontou as emergências de uma maneira extraordinária. Ganhou este prêmio por ser o melhor na hora de lidar com uma grande quantidade de Pacientes." trophy_room.emergencies.regional_good[1] = "O Ministério reconhece que no ano passado, no seu hospital, você tratou as emergências melhor do que qualquer outro hospital, entäo lhe concedeu este prêmio." -trophy_room.emergencies.regional_bad[1] = "O seu hospital é o pior da regiäo para tratar casos de emergência. Tem a culpa de ocupar o último lugar na Liga Local de Tratamentos de Emergência." +trophy_room.emergencies.regional_bad[1] = "O seu hospital é o pior da regiäo para tratar casos de emergência. Você é responsável por ocupar o último lugar na Liga Local de Tratamentos de Emergência." trophy_room.curesvdeaths.awards[1] = "Os meus mais sinceros parabéns. No ano passado, o número de curas foi superior ao de falecimentos no seu hospital." -trophy_room.curesvdeaths.penalty[1] = "A sua proporçäo entre curas e mortes é extremamente baixa. Deveria assegurar-se de que cura mais pessoas do que mata. Näo deixe os seus funcionários em má situaçäo." -trophy_room.wait_times.award[1] = "Parabéns! No seu hospital, a espera dos pacientes foi muito curta. Este é um acontecimento importante." -trophy_room.wait_times.penalty[1] = "No seu hospital, os pacientes esperam muito tempo. Há sempre filas inaceitáveis. Poderia tratar os seus pacientes com mais eficácia se quisesse." -trophy_room.happy_patients.awards[1] = "Deve estar orgulhoso de que, no ano passado, as pessoas estiveram muito contentes com o seu hospital." -trophy_room.happy_patients.awards[2] = "Os pacientes que visitaram o seu hospital sentiram-se mais contentes com o seu tratamento do que em outros hospitais." -trophy_room.happy_patients.penalty[1] = "As pessoas que väo ao hospital têm uma experiência terrível. Terá que melhorar muito se quiser ganhar o respeito do Ministério." -trophy_room.happy_patients.penalty[2] = "As pessoas que receberam tratamento no seu hospital queixaram-se do estado do mesmo. Deveria considerar muito mais o bem-estar dos pacientes." -trophy_room.pop_percentage.awards[1] = "Note, no ano passado, curou uma grande parte da populaçäo local no seu hospital. Muito bem." -trophy_room.pop_percentage.awards[2] = "Parabéns! A maioria da populaçäo local vai ao seu hospital em vez de a qualquer outra instituiçäo." -trophy_room.pop_percentage.awards[3] = "Brilhante! O seu hospital recebeu o maior número de pacientes que todos os outros hospitais juntos." -trophy_room.pop_percentage.penalty[1] = "Teve muito poucos pacientes este ano. Para ganhar dinheiro, precisa que haja pacientes que paguem." -trophy_room.pop_percentage.penalty[2] = "Todos os hospitais da área conseguiram mais pacientes do que você. Deveria estar envergonhado." -trophy_room.rats_killed.trophies[1] = "Você recebeu o Troféu Raticida por eliminar %s ratos no seu hospital no ano passado." -trophy_room.rats_killed.trophies[2] = "Você merece este prêmio da Federaçäo Anti-Ratos pela sua excepcional habilidade em eliminar ratos, demonstrada ao eliminar %s exemplares." -trophy_room.rats_killed.trophies[3] = "Você recebeu o Troféu Acaba com Ratos pela sua grande habilidade em eliminar %d ratos no seu hospital no ano passado." -trophy_room.all_cured.awards[1] = "Parabéns por ter ganho o Prêmio Marie Curie por curar todos os pacientes do seu hospital no ano passado." -trophy_room.all_cured.trophies[1] = "A Fundaçäo Curadores Nacionais premia-o por ter curado todos os pacientes do seu hospital no ano passado, concedendo-lhe o Prêmio do Maior Curador." -trophy_room.all_cured.trophies[2] = "Você recebeu a Medalha do Paciente Säo por ter conseguido curar todos os pacientes do seu hospital no ano passado." +trophy_room.curesvdeaths.penalty[1] = "A sua proporçäo entre curas e mortes é extremamente baixa. Deveria assegurar-se de que cura mais pessoas do que mata. Näo deixe os seus funcionários em má posiçäo." +trophy_room.wait_times.award[1] = "Parabéns! No seu hospital, a espera dos Pacientes foi muito curta. Este é um acontecimento importante." +trophy_room.wait_times.penalty[1] = "No seu hospital, os Pacientes esperam muito tempo. Há sempre filas inaceitáveis. Você poderia tratar os seus Pacientes com mais eficácia se quisesse." +trophy_room.happy_patients.awards[1] = "Deve estar orgulhoso de que, no ano passado, as pessoas estavam muito contentes no seu hospital." +trophy_room.happy_patients.awards[2] = "Os Pacientes que visitaram o seu hospital sentiram-se mais satisfeitos com o seu tratamento do que nos outros hospitais." +trophy_room.happy_patients.penalty[1] = "As pessoas que väo ao hospital têm uma experiência terrível. Você terá que fazê-lo muito melhor se quiser ganhar o respeito do Ministério." +trophy_room.happy_patients.penalty[2] = "As pessoas que receberam tratamento no seu hospital queixaram-se do estado do mesmo. Deveria ter muito mais em conta o bem-estar dos Pacientes." +trophy_room.pop_percentage.awards[1] = "Note que, no ano passado, curou uma grande parte da populaçäo local no seu hospital. Muito bem." +trophy_room.pop_percentage.awards[2] = "Parabéns! A maioria da populaçäo local vai ao seu hospital em vez de ir a qualquer outra instituiçäo." +trophy_room.pop_percentage.awards[3] = "Brilhante! O seu hospital recebeu o maior número de Pacientes que todos os outros hospitais juntos." +trophy_room.pop_percentage.penalty[1] = "Teve muito poucos Pacientes este ano. Para ganhar dinheiro, precisa que haja Pacientes que paguem." +trophy_room.pop_percentage.penalty[2] = "Todos os hospitais da área conseguiram mais Pacientes do que você. Deveria estar envergonhado." +trophy_room.rats_killed.trophies[1] = "Você recebeu o Troféu Raticida por eliminar %s ratos em seu hospital no ano passado." +trophy_room.rats_killed.trophies[2] = "Você merece este prêmio da Federaçäo Anti Ratos pela sua excepcional habilidade em eliminar ratos, demonstrada ao eliminar %s exemplares." +trophy_room.rats_killed.trophies[3] = "Você recebeu o Troféu Acaba com Ratos pela sua grande habilidade em eliminar %d ratos em seu hospital no ano passado." +trophy_room.all_cured.awards[1] = "Parabéns por ganhar o Prêmio Marie Curie por curar todos os Pacientes do seu hospital no ano passado." +trophy_room.all_cured.trophies[1] = "A Fundaçäo Internacional de Cura deseja homenageá-lo por curar todos os Pacientes em seu hospital no último ano, concedendo a você o Troféu Cura-Tudo." +trophy_room.all_cured.trophies[2] = "Você recebeu o Troféu Paciente Sem-Doença por conseguir curar todos os Pacientes em seu hospital no último ano." graphs.cures = "Curas" graphs.reputation = "Reputaçäo" -graphs.balance = "Balanço" +graphs.balance = "Saldo" graphs.wages = "Salários" graphs.visitors = "Visitantes" graphs.time_spans[1] = "1 Ano" @@ -2152,15 +2150,15 @@ graphs.money_out = "Pagamento" graphs.money_in = "Crédito" queue_window.max_queue_size = "Máximo" queue_window.num_expected = "Previsto" -queue_window.num_in_queue = "Tamanho da fila" -queue_window.num_entered = "Pacientes totais" +queue_window.num_in_queue = "Tamanho da Fila" +queue_window.num_entered = "Pacientes Totais" room_classes.clinics = "Clínica" room_classes.facilities = "Instalaçöes" room_classes.diagnosis = "Diagnóstico" room_classes.treatment = "Tratamento" rooms_short.ward = "Enfermaria" -rooms_short.blood_machine = "Transfusöes" -rooms_short.fracture_clinic = "Traumatologia" +rooms_short.blood_machine = "Transfusiômetro" +rooms_short.fracture_clinic = "Ortopedia" rooms_short.cardiogram = "Cardiologia" rooms_short.decontamination = "Descontaminaçäo" rooms_short.jelly_vat = "Banho Gelatinoso" @@ -2170,12 +2168,12 @@ rooms_short.inflation = "Inflatoterapia" rooms_short.operating_theatre = "Sala de Cirurgia" rooms_short.reception = "Recepçäo" rooms_short.gps_office = "Consultório de CG" -rooms_short.training_room = "Formaçäo" +rooms_short.training_room = "Treinamento" rooms_short.x_ray = "Raio-X" rooms_short.tongue_clinic = "Laringologia" rooms_short.general_diag = "Diagnóstico Geral" rooms_short.ultrascan = "Ultra Scanner" -rooms_short.dna_fixer = "Genética" +rooms_short.dna_fixer = "Clínica de DNA" rooms_short.psychiatric = "Psiquiatria" rooms_short.toilets = "Banheiro" rooms_short.corridor_objects = "Objetos do Corredor" @@ -2183,17 +2181,17 @@ rooms_short.pharmacy = "Farmácia" rooms_short.destroyed = "Destruída" rooms_short.research_room = "Centro de Pesquisa" rooms_short.scanner = "Scanner" -rooms_short.electrolysis = "Eletrólise" -tooltip.status.warmth = "Nível global de calor das pessoas no seu hospital" -tooltip.status.close = "Fechar tela de condiçäo" -tooltip.status.thirst = "Nível global de sede das pessoas no seu hospital" -tooltip.status.population = "Você precisa ter %d%% da populaçäo total vindo para o seu hospital" -tooltip.status.num_cured = "O objetivo é curar %d pessoas. Até agora curou %d" -tooltip.status.percentage_killed = "O objetivo é matar pelo menos %d%% dos seus pacientes. Até agora morreram %d%%" -tooltip.status.percentage_cured = "Você precisa tratar %d%% dos visitantes do seu hospital. Até agora tratou %d%%" +rooms_short.electrolysis = "Sala de Eletrólise" +tooltip.status.warmth = "Nível geral de calor das pessoas no seu hospital" +tooltip.status.close = "Fechar janela de status" +tooltip.status.thirst = "Nível geral de sede das pessoas no seu hospital" +tooltip.status.population = "Você precisa ter %d%% da populaçäo total vindo para o seu hospital." +tooltip.status.num_cured = "O objetivo é curar %d pessoas. Até agora, você curou %d." +tooltip.status.percentage_killed = "O objetivo é matar pelo menos %d%% dos seus Pacientes. Até agora, morreram %d%%." +tooltip.status.percentage_cured = "Você precisa tratar %d%% dos visitantes do seu hospital. Até agora, você tratou %d%%." tooltip.status.win_progress_own = "Mostra o progresso para conquistar os critérios do seu próprio hospital" -tooltip.status.value = "O seu hospital deve valer $%d. Agora vale $%d" -tooltip.status.happiness = "Nível global de satisfaçäo das pessoas no seu hospital" +tooltip.status.value = "Seu hospital deve valer $%d. Agora vale $%d." +tooltip.status.happiness = "Nível geral de satisfaçäo das pessoas no seu hospital" tooltip.status.win_progress_other = "Mostra o progresso para conquistar os critérios de %s" tooltip.status.population_chart = "Gráfico que mostra a proporçäo de pacientes de cada hospital da cidade" tooltip.objects.bench = "Banco: serve de assento aos pacientes para que esperem com mais conforto." @@ -2207,20 +2205,20 @@ tooltip.objects.swing_door1 = "52 PORTAS DUPLAS 1" tooltip.objects.pool_table = "Mesa de bilhar: ajuda os seus funcionários a relaxarem." tooltip.objects.screen = "16 TELAS" tooltip.objects.cabinet = "Armário: contém fichas dos pacientes, notas e documentos sobre pesquisa." -tooltip.objects.sofa = "Sofá: os funcionários que descansam na Sala de Descanso sentaräo em um sofá, a menos que tenham uma maneira melhor de relaxar." +tooltip.objects.sofa = "Sofá: Os funcionários que descansam na Sala de Descanso sentaräo em um sofá, a menos que tenham uma maneira melhor de relaxar-se." tooltip.objects.projector = "37 PROJETORES" tooltip.objects.table2 = "12 MESAS" tooltip.objects.shower = "54 DUCHAS DESCONTAMINADORAS" -tooltip.objects.comfortable_chair = "61 CADEIRAS DE LEITURA" +tooltip.objects.comfortable_chair = "61 POLTRONAS CONFORTAVEIS" tooltip.objects.door = "Porta: as pessoas fecham e abrem um montäo de vezes." tooltip.objects.computer = "Computador: componente chave para a pesquisa" tooltip.objects.litter_bomb = "Bomba de lixo: sabota os hospitais dos oponentes" -tooltip.objects.entrance_left = "58 PORTAS DIREITAS DE ENTRADA" +tooltip.objects.entrance_left = "58 PORTA DE ENTRADA DIREITA" tooltip.objects.dna_fixer = "23 REPARADORES DE DNA" tooltip.objects.bed = "Cama: as pessoas que estejam mesmo doentes deitam-se nela." tooltip.objects.lamp = "Abajur: ilumina e permite que o pessoal veja." -tooltip.objects.bookcase = "Livraria: material de consulta para os médicos." -tooltip.objects.desk = "Escritório: é fundamental para que o médico coloque o seu PC." +tooltip.objects.bookcase = "Livraria: material de consulta para os Médicos." +tooltip.objects.desk = "Escrivaninha: é fundamental para que o Médico coloque o seu PC." tooltip.objects.toilet_sink = "Pia: os seus pacientes mais limpos lavam as suas mäos sujas aqui. Se näo houver suficientes pias, os pacientes ficam infelizes." tooltip.objects.gates_of_hell = "48 PORTAS DO INFERNO" tooltip.objects.swing_door2 = "53 PORTAS DUPLAS 2" @@ -2229,56 +2227,56 @@ tooltip.objects.plant = "Planta: alegra os pacientes e purifica o ar." tooltip.objects.blood_machine = "42 TRANSFUSIOMETROS" tooltip.objects.slicer = "26 CORTADORES" tooltip.objects.x_ray = "27 RAIOS-X" -tooltip.objects.cardio = "13 ELETROCARDIOGRAMAS" +tooltip.objects.cardio = "13 CARDIOGRAMAS" tooltip.objects.crash_trolley = "20 CARROS" -tooltip.objects.bed2 = "näo se utiliza" -tooltip.objects.electrolyser = "46 ELETROLISIS" +tooltip.objects.bed2 = "näo utilizado" +tooltip.objects.electrolyser = "46 ELETROLISE" tooltip.objects.video_game = "Videogame: deixe que os seus funcionários se divirtam com o Hi-Octane." tooltip.objects.skeleton = "Esqueleto: é utilizado para aprender e na Noite do Halloween." tooltip.objects.ultrascanner = "22 ULTRA SCANNERS" tooltip.objects.op_sink1 = "33 PIAS 1 OP" tooltip.objects.hair_restorer = "25 RESTAURADORES DE CABELO" -tooltip.objects.reception_desk = "Recepçäo: requer uma recepcionista para que envie os pacientes para o médico." +tooltip.objects.reception_desk = "Recepçäo: requer um Recepcionista que envie os pacientes aos Médicos." tooltip.objects.radiation_shield = "28 TELAS ANTI-RADIACAO" tooltip.objects.couch = "18 POLTRONAS" -tooltip.objects.inflator = "Inflador: cura a cabeça inflada." +tooltip.objects.inflator = "Inflador: cura a Cabeça Inflada." tooltip.objects.toilet = "Banheiro: a natureza uma hora chama..." -tooltip.objects.lecture_chair = "Cadeira de leitura: os médicos que estäo estudando sentam-se aqui para tomar notas, aborrecer-se e rabiscar desnecessariamente. Quantas mais cadeiras colocar, mais compridas as aulas seräo." +tooltip.objects.lecture_chair = "Cadeira de leitura: os Médicos que estäo estudando sentam-se aqui para tomar notas, aborrecer-se e rabiscar desnecessariamente. Quantas mais cadeiras colocar, mais compridas as aulas seräo." tooltip.objects.auto_autopsy = "Autópsia: uma grande ajuda para descobrir novas curas." tooltip.objects.chair = "Cadeira: os pacientes sentam-se sobre ela e falam das suas doenças." tooltip.objects.x_ray_viewer = "29 TELAS DE RAIOS-X" -tooltip.objects.radiator = "Radiador: evita que o seu hospital fique frio." -tooltip.objects.bed3 = "näo se utiliza" +tooltip.objects.radiator = "Aquecedor: evita que o seu hospital fique frio." +tooltip.objects.bed3 = "näo utilizado" tooltip.objects.surgeon_screen = "35 TELAS DE CIRURGIAO" tooltip.objects.jelly_moulder = "47 BANHOS GELATINOSOS" tooltip.objects.drinks_machine = "Máquina de bebidas: impede que os pacientes tenham sede e contribui com ganhos." tooltip.objects.op_sink2 = "34 PIAS 2 OP" tooltip.objects.table1 = "Mesa: sobre ela coloca-se um montäo de revistas para que os pacientes esperem contentes." -tooltip.objects.entrance_right = "59 PORTAS ESQUERDAS DE ENTRADA" +tooltip.objects.entrance_right = "59 PORTAS DE ENTRADA ESQUERDA" tooltip.objects.operating_table = "30 MESAS DE OPERACAO" -tooltip.objects.tv = "TV: assegura que os seus funcionários näo percam os seus programas favoritos." -tooltip.watch.hospital_opening = "Cronômetro de construçäo: é o tempo que resta para que o seu hospital seja declarado aberto. Se apertar o botäo IR, abrirá o hospital imediatamente." -tooltip.watch.epidemic = "Epidemia: tempo que resta para encobrir a epidemia. Quando este tempo expire ou um paciente contagioso abandone o seu hospital, um Inspetor de Saúde vem visitar. O botäo liga ou desliga o modo vacina. Aperte em um paciente para que uma Enfermeira o vacine." +tooltip.objects.tv = "TV: assegura de que os seus funcionários näo percam os seus programas favoritos." +tooltip.watch.hospital_opening = "Cronômetro de construçäo: é o tempo que resta para que o seu hospital seja declarado aberto. Clicar no botäo IR, abrirá o hospital imediatamente." +tooltip.watch.epidemic = "Epidemia: tempo que resta para controlar a epidemia. Quando este tempo expirar ou um paciente contagioso abandonar o seu hospital, um Inspetor de Saúde virá visitar. O botäo liga ou desliga o modo vacina. Clique em um paciente para que uma Enfermeira o vacine." tooltip.watch.emergency = "Emergência: tempo que resta para curar todos os pacientes nas emergências." -tooltip.buy_objects_window.increase = "Comprar mais um objeto" +tooltip.buy_objects_window.increase = "Comprar um a mais deste item" tooltip.buy_objects_window.price = "Preço do objeto" tooltip.buy_objects_window.confirm = "Comprar objeto(s)" tooltip.buy_objects_window.cancel = "Cancelar" -tooltip.buy_objects_window.decrease = "Comprar menos um objeto" +tooltip.buy_objects_window.decrease = "Comprar um a menos deste item" tooltip.buy_objects_window.total_value = "Custo total dos objetos solicitados" -tooltip.machine_window.status = "Estado das máquinas." -tooltip.machine_window.close = "Cancelar caixa de diálogo" -tooltip.machine_window.repair = "Mandar o zelador reparar as máquinas." +tooltip.machine_window.status = "Estado das máquinas" +tooltip.machine_window.close = "Fechar caixa de diálogo" +tooltip.machine_window.repair = "Mandar o Zelador consertar as máquinas" tooltip.machine_window.name = "Nome" -tooltip.machine_window.times_used = "Número de vezes que reparou as máquinas." +tooltip.machine_window.times_used = "Número de vezes que consertou as máquinas" tooltip.machine_window.replace = "Substituir máquinas" -tooltip.pay_rise_window.accept = "Satisfazer a sua demanda salarial" -tooltip.pay_rise_window.decline = "Näo pagar; despedir" +tooltip.pay_rise_window.accept = "Atender à demanda de pagamento" +tooltip.pay_rise_window.decline = "Näo pagar. Demita essa pessoa" tooltip.staff_window.psychiatrist = "Psiquiatra" -tooltip.staff_window.close = "Cancelar caixa de diálogo" -tooltip.staff_window.sack = "Despedir" -tooltip.staff_window.name = "Nome do empregado" -tooltip.staff_window.pick_up = "Selecionar" +tooltip.staff_window.close = "Fechar caixa de diálogo" +tooltip.staff_window.sack = "Demitir" +tooltip.staff_window.name = "Nome do funcionário" +tooltip.staff_window.pick_up = "Pegar" tooltip.staff_window.tiredness = "Nível de cansaço" tooltip.staff_window.ability = "Nível de qualificaçäo" tooltip.staff_window.researcher = "Pesquisador" @@ -2287,76 +2285,76 @@ tooltip.staff_window.salary = "Salário mensal" tooltip.staff_window.happiness = "Nível de satisfaçäo" tooltip.staff_window.doctor_seniority = "Categoria - Residente, Médico ou Consultor" tooltip.staff_window.surgeon = "Cirurgiäo" -tooltip.research.cure_dec = "Reduzir a porcentagem dos equipamentos de cura" -tooltip.research.close = "Fechar tela de pesquisa" -tooltip.research.diagnosis_inc = "Aumentar a porcentagem dos equipamentos de diagnóstico" -tooltip.research.cure_inc = "Aumentar a porcentagem dos equipamentos de cura" -tooltip.research.specialisation_inc = "Aumentar a porcentagem em pesquisa especial" -tooltip.research.diagnosis_dec = "Reduzir a porcentagem dos equipamentos de diagnóstico" -tooltip.research.improvements_inc = "Aumentar a porcentagem nas melhorias" -tooltip.research.drugs_dec = "Reduzir a porcentagem da pesquisa farmacêutica" -tooltip.research.specialisation_dec = "Reduzir a porcentagem em pesquisa especial" -tooltip.research.improvements_dec = "Reduzir a porcentagem nas melhorias" -tooltip.research.drugs_inc = "Aumentar a porcentagem da pesquisa farmacêutica" +tooltip.research.cure_dec = "Diminuir percentual de pesquisa de Cura" +tooltip.research.close = "Fechar tela de Pesquisa" +tooltip.research.diagnosis_inc = "Aumentar percentual de pesquisa de Diagnóstico" +tooltip.research.cure_inc = "Aumentar percentual de pesquisa de Cura" +tooltip.research.specialisation_inc = "Aumentar percentual de pesquisa de Especialização" +tooltip.research.diagnosis_dec = "Diminuir percentual de pesquisa de Diagnóstico" +tooltip.research.improvements_inc = "Aumentar percentual de pesquisa de Melhorias" +tooltip.research.drugs_dec = "Diminuir percentual de pesquisa de Medicamentos" +tooltip.research.specialisation_dec = "Diminuir percentual de pesquisa de Especialização" +tooltip.research.improvements_dec = "Diminuir percentual de pesquisa de Melhorias" +tooltip.research.drugs_inc = "Aumentar percentual de pesquisa de Medicamentos" tooltip.research.allocated_amount = "Quantidade do orçamento alocado" -tooltip.statement.close = "Fechar tela do estado das contas" -tooltip.rooms.ward = "As Enfermarias säo úteis tanto para diagnosticar como para tratamento. Envie aqui os pacientes para observaçäo e para recuperar de uma operaçäo sob o cuidado de uma enfermeira." -tooltip.rooms.blood_machine = "O médico usa o Transfusiômetro para diagnosticar os pacientes" -tooltip.rooms.fracture_clinic = "A enfermeira utiliza a consulta de traumatologia para arrumar fraturas" -tooltip.rooms.cardiogram = "O médico usa a cardiologia para diagnosticar os pacientes" -tooltip.rooms.decontamination = "O médico usa a ducha descontaminadora para curar a radioatividade" -tooltip.rooms.jelly_vat = "O médico usa o Banho Gelatinoso para curar a gelatinite" -tooltip.rooms.staffroom = "Os médicos e as enfermeiras descansam na Sala de Descanso" -tooltip.rooms.hair_restoration = "O médico usa o Pêlo-restaurador para curar a calvície" -tooltip.rooms.inflation = "O médico usa a Inflatoterapia para curar a cabeça inflada" -tooltip.rooms.gps_office = "Os pacientes recebem seu primeiro atendimento no Consultório de Clínica Geral" -tooltip.rooms.training_room = "A Sala de Formaçäo com um consultor serve para formar outros médicos" -tooltip.rooms.x_ray = "O médico usa Raio-X para diagnosticar os pacientes" -tooltip.rooms.general_diag = "O médico utiliza a sala de Diagnóstico Geral para fazer um diagnóstico básico. É barato e frequentemente eficaz" -tooltip.rooms.operating_theatre = "Na Sala de Cirurgia faltam dois cirurgiöes qualificados" -tooltip.rooms.ultrascan = "O médico usa o Ultra-scanner para diagnosticar os pacientes" -tooltip.rooms.psychiatry = "A Psiquiatria cura os pacientes loucos e ajuda a diagnosticar outros pacientes, mas requer um médico qualificado em psiquiatria." -tooltip.rooms.toilets = "Construa Banheiros para impedir que os pacientes armem uma confusäo no seu hospital!" -tooltip.rooms.dna_fixer = "O médico usa o Reparador de DNA para curar os pacientes com DNA alienígena" -tooltip.rooms.pharmacy = "Na Enfermaria, a enfermeira administra remédios para curar os pacientes" -tooltip.rooms.tongue_clinic = "O médico usa a Laringologia para curar a língua comprida" -tooltip.rooms.research_room = "Os médicos pesquisadores investigam remédios e máquinas novas no Centro de Pesquisa" -tooltip.rooms.scanner = "O médico usa o Scanner para diagnosticar os pacientes" -tooltip.rooms.electrolysis = "O médico usa a consulta de eletrólise para curar o peludismo" -tooltip.policy.diag_procedure = "Se o diagnóstico de um médico é menos seguro que a porcentagem de ENVIAR PARA CASA, o paciente será enviado para casa. Se o diagnóstico for melhor que a porcentagem de TENTAR CURA, será administrado o tratamento adequado ao paciente" -tooltip.policy.staff_leave = "Aperte aqui para que os funcionários livres ajudem os companheiros que precisem" -tooltip.policy.close = "Fechar tela de normas" +tooltip.statement.close = "Fechar tela de Extrato" +tooltip.rooms.ward = "As Enfermarias säo úteis tanto para diagnóstico quanto para tratamento. Envie os pacientes para observaçäo e para se recuperar de uma operaçäo sob os cuidados de uma Enfermeira." +tooltip.rooms.blood_machine = "O Médico usa o Transfusiômetro para diagnosticar os Pacientes." +tooltip.rooms.fracture_clinic = "A Enfermeira utiliza a Sala de Ortopedia para reparar Fraturas Osseas." +tooltip.rooms.cardiogram = "O Médico usa a Cardiologia para diagnosticar os Pacientes." +tooltip.rooms.decontamination = "O Médico usa a Ducha Descontaminadora para tratar a radioatividade." +tooltip.rooms.jelly_vat = "O Médico usa o Banho Gelatinoso para curar a Gelatinite." +tooltip.rooms.staffroom = "Os Médicos e as Enfermeiras descansam na Sala de Descanso." +tooltip.rooms.hair_restoration = "O Médico usa o Restaurador de Pêlo para tratar a Calvície." +tooltip.rooms.inflation = "O Médico usa a Inflatoterapia para tratar a Cabeça Inflada." +tooltip.rooms.gps_office = "Os Pacientes recebem seu primeiro atendimento no Consultório de Clínica Geral." +tooltip.rooms.training_room = "A Sala de Treinamento, com um Consultor, serve para formar outros Médicos." +tooltip.rooms.x_ray = "O Médico usa Raio-X para diagnosticar os Pacientes." +tooltip.rooms.general_diag = "O Médico utiliza a Sala de Diagnóstico Geral para fazer um diagnóstico básico. É barata e frequentemente eficaz." +tooltip.rooms.operating_theatre = "Na Sala de Cirurgia, faltam dois cirurgiöes qualificados." +tooltip.rooms.ultrascan = "O Médico usa o Ultra-Scanner para diagnosticar os Pacientes." +tooltip.rooms.psychiatry = "A Psiquiatria cura pacientes com distúrbios mentais e ajuda no diagnóstico de outros pacientes, mas precisa de um Médico com habilidades em Psiquiatria." +tooltip.rooms.toilets = "Construa Banheiros para evitar que os pacientes façam confusäo no seu hospital!" +tooltip.rooms.dna_fixer = "O Médico usa o Reparador de DNA para curar pacientes com DNA Alienígena." +tooltip.rooms.pharmacy = "Na Enfermaria, a Enfermeira administra remédios para curar os pacientes." +tooltip.rooms.tongue_clinic = "O Médico usa a Laringologia para tratar a Língua Comprida." +tooltip.rooms.research_room = "Os Médicos com habilidades em Pesquisa podem descobrir novos medicamentos e máquinas no Centro de Pesquisa." +tooltip.rooms.scanner = "O Médico usa o Scanner para diagnosticar os Pacientes." +tooltip.rooms.electrolysis = "O Médico usa a sala de Eletrólise para tratar o Peludismo." +tooltip.policy.diag_procedure = "Se o diagnóstico de um Médico for menos seguro que a porcentagem de ENVIAR PARA CASA, o paciente será enviado para casa. Se o diagnóstico for melhor que a porcentagem de TENTAR CURA, será administrado o tratamento adequado ao paciente." +tooltip.policy.staff_leave = "Clique aqui para que os funcionários livres ajudem os colegas que precisem" +tooltip.policy.close = "Fechar tela de Política" tooltip.policy.staff_rest = "Nível de cansaço dos funcionários antes de poderem descansar" -tooltip.policy.diag_termination = "O diagnóstico de um paciente continuará até que os médicos estejam seguros da porcentagem de PARAR PROCESSO, ou até que sejam utilizados todos os diagnósticos" -tooltip.policy.staff_stay = "Aperte aqui para assegurar que o funcionário fique nas consultas que foram atribuídas a ele" +tooltip.policy.diag_termination = "O diagnóstico de um paciente continuará até que os Médicos estejam seguros da porcentagem de PARAR PROCESSO ou até que todos os diagnósticos sejam utilizados." +tooltip.policy.staff_stay = "Clique aqui para garantir que o funcionário permaneça nas salas que foram atribuídas a ele" tooltip.main_menu.load_menu.empty_slot = "VAZIO" -tooltip.main_menu.load_menu.load_slot = "JOGO" +tooltip.main_menu.load_menu.load_slot = "CARREGAR JOGO" tooltip.main_menu.network = "Iniciar um jogo em rede" -tooltip.staff_list.psychiatrist = "Psiquiatra qualificado" -tooltip.staff_list.close = "Fechar gerenciamento de funcionários" -tooltip.staff_list.happiness_2 = "Moral do empregado" -tooltip.staff_list.ability = "Mostra o nível de habilidade destes empregados" -tooltip.staff_list.tiredness_2 = "Cansaço do empregado" -tooltip.staff_list.ability_2 = "Nível de habilidade do empregado" +tooltip.staff_list.psychiatrist = "Psiquiatra Qualificado" +tooltip.staff_list.close = "Fechar o gerenciamento de funcionários" +tooltip.staff_list.happiness_2 = "Moral do funcionário" +tooltip.staff_list.ability = "Mostra o nível de habilidade desses funcionários" +tooltip.staff_list.tiredness_2 = "Cansaço do funcionário" +tooltip.staff_list.ability_2 = "Nível de habilidade do funcionário" tooltip.staff_list.salary = "Salário atual pago a esta pessoa" -tooltip.staff_list.researcher_train = "Formado um %d%% para ser Pesquisador" -tooltip.staff_list.happiness = "Mostra o quanto contentes estäo estes empregados" +tooltip.staff_list.researcher_train = "%d%% treinado para se tornar um Pesquisador" +tooltip.staff_list.happiness = "Mostra o quäo satisfeitos estäo esses funcionários" tooltip.staff_list.sack = "Despedir esta pessoa" -tooltip.staff_list.surgeon = "Cirurgiäo qualificado" +tooltip.staff_list.surgeon = "Cirurgiäo Qualificado" tooltip.staff_list.view_staff = "Ver a pessoa trabalhando" -tooltip.staff_list.surgeon_train = "Formado um %d%% para ser Cirurgiäo" -tooltip.staff_list.tiredness = "Mostra o quanto cansados estäo estes empregados" -tooltip.staff_list.receptionists = "Ver a lista das recepcionistas contratadas neste hospital" -tooltip.staff_list.pay_rise = "Subir o salário desta pessoa em 10%" +tooltip.staff_list.surgeon_train = "%d%% treinado para se tornar um Cirurgiäo" +tooltip.staff_list.tiredness = "Mostra o quäo cansados estäo esses funcionários" +tooltip.staff_list.receptionists = "Ver lista de Recepcionistas empregados neste hospital" +tooltip.staff_list.pay_rise = "Aumentar o salário desta pessoa em 10%" tooltip.staff_list.bonus = "Pagar a esta pessoa um bônus de 10%" -tooltip.staff_list.doctor_seniority = "Experiência do médico" -tooltip.staff_list.nurses = "Ver a lista das enfermeiras contratadas neste hospital" +tooltip.staff_list.doctor_seniority = "Experiência do Médico" +tooltip.staff_list.nurses = "Ver lista de Enfermeiras empregadas neste hospital" tooltip.staff_list.skills = "Outras qualificaçöes" -tooltip.staff_list.detail = "Cuidar os detalhes" -tooltip.staff_list.doctors = "Ver a lista dos médicos contratados neste hospital" -tooltip.staff_list.handymen = "Ver a lista dos zeladores contratados neste hospital" -tooltip.staff_list.researcher = "Pesquisador qualificado" -tooltip.staff_list.psychiatrist_train = "Formado um %d%% para ser Psiquiatra" +tooltip.staff_list.detail = "Cuidar dos detalhes" +tooltip.staff_list.doctors = "Ver lista de Médicos empregados neste hospital" +tooltip.staff_list.handymen = "Ver lista de Zeladores empregados neste hospital" +tooltip.staff_list.researcher = "Pesquisador Qualificado" +tooltip.staff_list.psychiatrist_train = "%d%% treinado para se tornar um Psiquiatra" tooltip.place_objects_window.confirm = "Confirmar" tooltip.place_objects_window.buy_sell = "Comprar/vender objetos" tooltip.place_objects_window.pick_up = "Pegar objeto" @@ -2369,31 +2367,31 @@ tooltip.casebook.decrease = "Reduzir quantidade" tooltip.casebook.up = "Subir" tooltip.casebook.research = "Clique aqui para utilizar o orçamento de Pesquisa Especializada para este tratamento" tooltip.casebook.down = "Baixar" -tooltip.casebook.sent_home = "Número de pacientes dados alta" +tooltip.casebook.sent_home = "Número de pacientes que receberam alta" tooltip.casebook.cured = "Número de restabelecimentos" tooltip.casebook.deaths = "Número de falecimentos" tooltip.casebook.treatment_charge = "Preço" tooltip.casebook.cure_type.psychiatrist = "Os psiquiatras realizam este tratamento" -tooltip.casebook.cure_type.drug_percentage = "Este tratamento requer um remédio. O seu tem uma eficácia de %d%%" -tooltip.casebook.cure_type.drug = "Este tratamento requer um remédio" -tooltip.casebook.cure_type.machine = "É preciso de uma máquina para este tratamento" +tooltip.casebook.cure_type.drug_percentage = "Este tratamento requer um medicamento. O seu tem uma eficácia de %d%%" +tooltip.casebook.cure_type.drug = "Este tratamento requer um medicamento" +tooltip.casebook.cure_type.machine = "É necessária uma máquina para este tratamento" tooltip.casebook.cure_type.surgery = "Esta doença requer cirurgia" tooltip.casebook.cure_requirement.hire_staff_old = "Você precisa contratar um %s para este tratamento" -tooltip.casebook.cure_requirement.not_possible = "Näo pode administrar este tratamento" -tooltip.casebook.cure_requirement.hire_surgeon = "Você precisa contratar um segundo cirurgiäo para que realize operaçöes" +tooltip.casebook.cure_requirement.not_possible = "Näo é possível administrar este tratamento" +tooltip.casebook.cure_requirement.hire_surgeon = "Você precisa contratar um segundo cirurgiäo para realizar operaçöes" tooltip.casebook.cure_requirement.build_ward = "Você precisa construir uma Enfermaria para administrar este tratamento" tooltip.casebook.cure_requirement.possible = "Pode administrar este tratamento" -tooltip.casebook.cure_requirement.build_room = "Você precisa construir uma consulta para dar este tratamento" +tooltip.casebook.cure_requirement.build_room = "Você precisa construir uma sala para realizar este tratamento" tooltip.casebook.cure_requirement.hire_surgeons = "Você precisa contratar dois cirurgiöes para as operaçöes" -tooltip.casebook.cure_requirement.research_machine = "Precisa inventar alguma máquina para este tratamento." -tooltip.casebook.cure_requirement.ward_hire_nurse = "Você precisa de uma enfermeira que trabalhe na Enfermaria para administrar este tratamento" -tooltip.patient_window.center_view = "Enfocar a pessoa" -tooltip.patient_window.warmth = "Quanto calor tem a pessoa" -tooltip.patient_window.close = "Cancelar caixa de diálogo" +tooltip.casebook.cure_requirement.research_machine = "É preciso inventar alguma máquina para este tratamento" +tooltip.casebook.cure_requirement.ward_hire_nurse = "Você precisa de uma Enfermeira que trabalhe na Enfermaria para administrar este tratamento" +tooltip.patient_window.center_view = "Focar na pessoa" +tooltip.patient_window.warmth = "Quanto calor a pessoa tem" +tooltip.patient_window.close = "Fechar caixa de diálogo" tooltip.patient_window.send_home = "Dar alta à pessoa" -tooltip.patient_window.thirst = "Quanta sede tem a pessoa" -tooltip.patient_window.graph = "Clique para escolher entre o gráfico do estado de saúde da pessoa ou o seu histórico clínico" -tooltip.patient_window.queue = "Ver detalhes da pessoa que faz fila" +tooltip.patient_window.thirst = "Quanta sede a pessoa tem" +tooltip.patient_window.graph = "Clique para escolher entre o gráfico do estado de saúde da pessoa ou seu histórico clínico" +tooltip.patient_window.queue = "Ver detalhes da pessoa que está na fila" tooltip.patient_window.happiness = "Satisfaçäo da pessoa" tooltip.patient_window.casebook = "Ver detalhes da doença da pessoa" tooltip.patient_window.abort_diagnosis = "Colocar a pessoa em tratamento em vez de esperar que complete o diagnóstico" @@ -2401,28 +2399,28 @@ tooltip.town_map.fire_extinguishers = "Alternar extintores" tooltip.town_map.people = "Alternar pessoas" tooltip.town_map.balance = "Saldo" tooltip.town_map.objects = "Alternar objetos" -tooltip.town_map.heat_inc = "Subir aquecimento" -tooltip.town_map.heating_bill = "Recibo de aquecimento" -tooltip.town_map.heat_level = "Nível de aquecimento" -tooltip.town_map.radiators = "Alternar radiadores" +tooltip.town_map.heat_inc = "Aumentar calor" +tooltip.town_map.heating_bill = "Conta de aquecimento" +tooltip.town_map.heat_level = "Nível de calor" +tooltip.town_map.radiators = "Alternar aquecedores" tooltip.town_map.plants = "Alternar plantas" -tooltip.town_map.heat_dec = "Baixar aquecimento" +tooltip.town_map.heat_dec = "Diminuir calor" tooltip.town_map.close = "Fechar mapa da cidade" tooltip.graphs.cures = "Alternar curas" -tooltip.graphs.reputation = "Alternar o valor do hospital" -tooltip.graphs.close = "Fechar tela de gráficos" +tooltip.graphs.reputation = "Alternar reputaçäo" +tooltip.graphs.close = "Fechar tela de Gráficos" tooltip.graphs.balance = "Alternar saldo" tooltip.graphs.wages = "Alternar salários" tooltip.graphs.visitors = "Alternar visitantes" tooltip.graphs.money_in = "Alternar crédito" -tooltip.graphs.deaths = "Alternar mortes" +tooltip.graphs.deaths = "Alternar falecimentos" tooltip.graphs.scale = "Tabela de gráficos" tooltip.graphs.money_out = "Alternar gastos" -tooltip.toolbar.policy = "Normas" +tooltip.toolbar.policy = "Política" tooltip.toolbar.status = "Condiçäo" tooltip.toolbar.research = "Pesquisa" tooltip.toolbar.hire = "Contratar funcionários" -tooltip.toolbar.bank_button = "Aperte o botäo esquerdo para o diretor do banco e o direito para o saldo bancário" +tooltip.toolbar.bank_button = "Clique Esquerdo para acessar o Gerente do Banco, Clique Direito para o Extrato Bancário" tooltip.toolbar.charts = "Gráficos" tooltip.toolbar.balance = "O seu saldo" tooltip.toolbar.edit = "Editar salas e objetos" @@ -2439,324 +2437,324 @@ tooltip.queue_window.patient_dropdown.send_home = "Dar alta ao paciente" tooltip.queue_window.patient_dropdown.hospital_3 = "Enviar o paciente para outro hospital" tooltip.queue_window.patient_dropdown.hospital_2 = "Enviar o paciente para outro hospital" tooltip.queue_window.close = "Fechar esta caixa de diálogo" -tooltip.queue_window.num_expected = "Número de pacientes que a recepcionista calcula que logo faräo fila" +tooltip.queue_window.num_expected = "Número de pacientes que a Recepcionista espera que entrem na fila em breve" tooltip.queue_window.front_of_queue = "Arraste um paciente para este ícone para colocá-lo no início da fila" -tooltip.queue_window.dec_queue_size = "Reduzir o máximo do tamanho da fila" -tooltip.queue_window.num_in_queue = "Número de pacientes em fila" -tooltip.queue_window.num_entered = "Número de pacientes que foram tratados nesta consulta até agora" -tooltip.queue_window.max_queue_size = "Tamanho máximo da fila que permite a recepcionista" -tooltip.queue_window.inc_queue_size = "Aumentar o máximo do tamanho da fila" +tooltip.queue_window.dec_queue_size = "Reduzir o tamanho máximo da fila" +tooltip.queue_window.num_in_queue = "Número de pacientes na fila" +tooltip.queue_window.num_entered = "Número de pacientes que foram atendidos nesta sala até agora" +tooltip.queue_window.max_queue_size = "Tamanho máximo da fila que a Recepcionista permite" +tooltip.queue_window.inc_queue_size = "Aumentar o tamanho máximo da fila" tooltip.queue_window.end_of_queue = "Arraste um paciente para este ícone para colocá-lo no final da fila" tooltip.queue_window.patient = "Arraste um paciente para colocá-lo na fila. Clique com o botäo direito sobre um paciente para mandá-lo para a fila ou para um hospital rival" tooltip.bank_manager.graph = "Gráfico dos pagamentos esperados de %s" -tooltip.bank_manager.close = "Fechar tela do gerente do banco" -tooltip.bank_manager.balance = "O seu saldo bancário" +tooltip.bank_manager.close = "Fechar tela do Gerente do Banco" +tooltip.bank_manager.balance = "Seu extrato bancário" tooltip.bank_manager.borrow_5000 = "Pedir $5000 ao banco" tooltip.bank_manager.hospital_value = "Valor atual do seu hospital" tooltip.bank_manager.insurance_owed = "Quantidade de dinheiro que lhe deve %s" -tooltip.bank_manager.interest_payment = "Pagamentos dos juros mensais" +tooltip.bank_manager.interest_payment = "Pagamentos de juros mensais" tooltip.bank_manager.repay_5000 = "Devolver $5000 ao banco" tooltip.bank_manager.graph_return = "Voltar para a tela anterior" -tooltip.bank_manager.interest_rate = "Taxa de juro anual" +tooltip.bank_manager.interest_rate = "Taxa de juros anual" tooltip.bank_manager.inflation_rate = "Taxa de inflaçäo anual" -tooltip.bank_manager.show_graph = "Mostrar o gráfico dos pagamentos esperados de %s" +tooltip.bank_manager.show_graph = "Mostra o gráfico dos pagamentos esperados de %s" tooltip.bank_manager.current_loan = "Empréstimos pendentes" -tooltip.jukebox.play = "Ligar jukebox" +tooltip.jukebox.play = "Tocar jukebox" tooltip.jukebox.stop = "Parar jukebox" tooltip.jukebox.close = "Fechar jukebox" -tooltip.jukebox.fast_forward = "Avançar rapidamente no jukebox" -tooltip.jukebox.rewind = "Retroceder no jukebox" -tooltip.jukebox.current_title = "Máquina de discos" -tooltip.jukebox.loop = "Funcionamento contínuo da máquina de discos" -tooltip.build_room_window.cost = "Preço da consulta selecionada" -tooltip.build_room_window.room_classes.treatment = "Selecione consultas de tratamentos gerais" -tooltip.build_room_window.room_classes.facilities = "Selecione instalaçöes especiais" -tooltip.build_room_window.room_classes.diagnosis = "Selecione consultas de diagnóstico" -tooltip.build_room_window.room_classes.clinic = "Selecione clínicas especializadas" +tooltip.jukebox.fast_forward = "Avançar rapidamente jukebox" +tooltip.jukebox.rewind = "Retroceder jukebox" +tooltip.jukebox.current_title = "Jukebox" +tooltip.jukebox.loop = "Reproduzir jukebox em loop" +tooltip.build_room_window.cost = "Preço da sala selecionada" +tooltip.build_room_window.room_classes.treatment = "Selecione salas de Tratamentos Gerais" +tooltip.build_room_window.room_classes.facilities = "Selecione Instalaçöes Especiais" +tooltip.build_room_window.room_classes.diagnosis = "Selecione salas de Diagnóstico" +tooltip.build_room_window.room_classes.clinic = "Selecione Clínicas Especializadas" tooltip.build_room_window.close = "Sair desta caixa de diálogo e voltar para o jogo" tooltip.hire_staff_window.surgeon = "Cirurgiäo" tooltip.hire_staff_window.psychiatrist = "Psiquiatra" -tooltip.hire_staff_window.qualifications = "Outras habilidades do médico" -tooltip.hire_staff_window.receptionists = "Ver as recepcionistas que pode contratar" +tooltip.hire_staff_window.qualifications = "Outras habilidades do Médico" +tooltip.hire_staff_window.receptionists = "Ver Recepcionistas disponíveis para contrataçäo" tooltip.hire_staff_window.hire = "Contratar pessoa" -tooltip.hire_staff_window.nurses = "Ver as enfermeiras que pode contratar" +tooltip.hire_staff_window.nurses = "Ver Enfermeiras disponíveis para contrataçäo" tooltip.hire_staff_window.doctor_seniority = "Experiência médica (Residente, Médico, Consultor)" tooltip.hire_staff_window.cancel = "Cancelar" tooltip.hire_staff_window.researcher = "Pesquisador" tooltip.hire_staff_window.prev_person = "Ver pessoa anterior" tooltip.hire_staff_window.salary = "Salário" tooltip.hire_staff_window.staff_ability = "Qualificaçäo dos funcionários" -tooltip.hire_staff_window.doctors = "Ver os médicos que pode contratar" -tooltip.hire_staff_window.next_person = "Ver pessoa seguinte" -tooltip.hire_staff_window.handymen = "Ver os zeladores que pode contratar" -tooltip.handyman_window.center_view = "Enfocar o zelador" -tooltip.handyman_window.close = "Cancelar caixa de diálogo" -tooltip.handyman_window.sack = "Despedir" -tooltip.handyman_window.name = "Nome do zelador" -tooltip.handyman_window.pick_up = "Apanhar" -tooltip.handyman_window.prio_litter = "Aumentar a prioridade do zelador para a limpeza" +tooltip.hire_staff_window.doctors = "Ver Médicos disponíveis para contrataçäo" +tooltip.hire_staff_window.next_person = "Ver próxima pessoa" +tooltip.hire_staff_window.handymen = "Ver Zeladores disponíveis para contrataçäo" +tooltip.handyman_window.center_view = "Focar no Zelador" +tooltip.handyman_window.close = "Fechar caixa de diálogo" +tooltip.handyman_window.sack = "Demitir" +tooltip.handyman_window.name = "Nome do Zelador" +tooltip.handyman_window.pick_up = "Pegar" +tooltip.handyman_window.prio_litter = "Aumentar a prioridade do Zelador para limpeza" tooltip.handyman_window.ability = "Qualificaçäo" -tooltip.handyman_window.prio_machines = "Aumentar a prioridade do zelador para reparar as máquinas" +tooltip.handyman_window.prio_machines = "Aumentar a prioridade do Zelador para consertar as máquinas" tooltip.handyman_window.salary = "Salário" -tooltip.handyman_window.face = "Face do zelador" +tooltip.handyman_window.face = "A aparência do Zelador" tooltip.handyman_window.happiness = "Satisfaçäo" tooltip.handyman_window.tiredness = "Cansaço" -tooltip.handyman_window.prio_plants = "Aumentar a prioridade do zelador para regar as plantas" +tooltip.handyman_window.prio_plants = "Aumentar a prioridade do Zelador para regar as plantas" tooltip.window_general.cancel = "Cancelar" tooltip.window_general.confirm = "Confirmar" adviser.earthquake.ended = "Nossa! Acreditei que ia ser o pior de todos! Alcançou um %d na Escala Richter." -adviser.earthquake.damage = "Por causa do terremoto há %d máquinas danificadas e %d pessoas feridas no hospital." -adviser.earthquake.alert = "Perigo de terremoto! As suas máquinas podem danificar-se durante o terremoto se näo tiverem uma boa manutençäo." -adviser.staff_place_advice.only_psychiatrists = "Os Médicos só podem trabalhar em uma sala de psiquiatria se estiverem qualificados para isso." -adviser.staff_place_advice.doctors_cannot_work_in_room = "Os Médicos näo podem trabalhar em %s" -adviser.staff_place_advice.only_researchers = "Os Médicos só podem trabalhar em um Centro de Pesquisa se estiverem qualificados para isso." -adviser.staff_place_advice.nurses_cannot_work_in_room = "As Enfermeiras näo podem trabalhar em %s" -adviser.staff_place_advice.only_surgeons = "Os Médicos só podem trabalhar em uma Sala de Cirurgia se estiverem qualificados para isso." +adviser.earthquake.damage = "Por causa do terremoto, há %d máquinas danificadas e %d pessoas feridas no hospital." +adviser.earthquake.alert = "Alerta de terremoto! As suas máquinas podem se danificar durante o terremoto se näo tiverem uma boa manutençäo." +adviser.staff_place_advice.only_psychiatrists = "Médicos só podem trabalhar na Psiquiatria se eles tiverem especialidade de Psiquiatra." +adviser.staff_place_advice.doctors_cannot_work_in_room = "Os Médicos näo podem trabalhar em %s." +adviser.staff_place_advice.only_researchers = "Médicos só podem trabalhar no Centro de Pesquisa se tiverem especialidade de Pesquisa." +adviser.staff_place_advice.nurses_cannot_work_in_room = "As Enfermeiras näo podem trabalhar em %s." +adviser.staff_place_advice.only_surgeons = "Médicos só podem trabalhar na Sala de Cirurgia se eles tiverem especialidade de Cirurgiäo" adviser.staff_place_advice.receptionists_only_at_desk = "As Recepcionistas só podem trabalhar na Recepçäo." -adviser.staff_place_advice.only_doctors_in_room = "Apenas Médicos podem trabalhar em %s" -adviser.staff_place_advice.only_nurses_in_room = "Só Enfermeiras podem trabalhar na %s" -adviser.competitors.staff_poached = "Um dos seus funcionários recebeu uma boa oferta de trabalho de outro hospital." +adviser.staff_place_advice.only_doctors_in_room = "Apenas Médicos podem trabalhar em %s." +adviser.staff_place_advice.only_nurses_in_room = "Apenas Enfermeiras podem trabalhar na %s." +adviser.competitors.staff_poached = "Um dos seus funcionários recebeu uma boa oferta de trabalho de outro Hospital." adviser.competitors.land_purchased = "%s acaba de comprar terrenos." adviser.competitors.hospital_opened = "%s, da concorrência, abriu um hospital na área." -adviser.epidemic.hurry_up = "Se näo acabar com esta epidemia rapidamente, terá muitos problemas. Aja agora!" -adviser.epidemic.multiple_epidemies = "Parece que há mais de uma epidemia ao mesmo tempo. Isto pode ser desastroso; faça algo rapidamente." -adviser.epidemic.serious_warning = "Esta doença contagiosa está começando a ser grave. Você precisa agir rapidamente!" -adviser.warnings.patients_unhappy = "Os pacientes näo gostam do seu hospital. Você deve fazer algo para melhorá-lo." -adviser.warnings.too_much_litter = "Há um problema com a limpeza. Mais zeladores säo a soluçäo." -adviser.warnings.patients_very_thirsty = "Os pacientes estäo com muita sede. Se você näo colocar algumas máquinas de bebidas logo, eles iräo embora do seu hospital para tomar algo refrescante." -adviser.warnings.queue_too_long_at_reception = "Há muitos pacientes esperando por reservas na recepçäo. Adicione outra recepçäo e contrate mais uma recepcionista." -adviser.warnings.patients_thirsty = "As pessoas estäo começando a ter sede. Talvez você devesse colocar algumas máquinas de bebidas." -adviser.warnings.nurses_tired = "As suas enfermeiras estäo cansadas. Mande-as descansar agora mesmo." -adviser.warnings.patients_too_hot = "Os pacientes estäo com muito calor. Retire alguns radiadores, diminua a temperatura ou coloque mais máquinas de bebidas." -adviser.warnings.patients_thirsty2 = "As pessoas estäo reclamando de sede. Você deveria colocar mais máquinas de bebidas ou aproximar as que já existem." -adviser.warnings.machines_falling_apart = "Suas máquinas estäo caindo aos pedaços. Chame a manutençäo para repará-las." -adviser.warnings.financial_trouble3 = "O seu saldo está preocupante. Tome uma açäo efetiva. Você está a %d do desastre." -adviser.warnings.nurses_tired2 = "As suas enfermeiras estäo extremamente cansadas. Faça com que elas descansem imediatamente." -adviser.warnings.people_have_to_stand = "Há pacientes de pé. Faça-os sentar já!" -adviser.warnings.handymen_tired = "Os seus zeladores estäo muito cansados. Mande-os descansar agora mesmo." -adviser.warnings.change_priorities_to_plants = "Você precisa alterar as prioridades dos seus zeladores para que eles dediquem mais tempo ao cuidado das plantas." -adviser.warnings.staff_tired = "Os seus funcionários estäo incrivelmente cansados. Se näo os deixar descansar um momento em uma Sala de Descanso, alguns poderäo cair de esgotamento." -adviser.warnings.some_litter = "Os zeladores podem recolher todo esse lixo antes que se torne um problema grave." -adviser.warnings.cash_low_consider_loan = "As suas finanças estäo ruins. Já considerou um empréstimo?" -adviser.warnings.reduce_staff_rest_threshold = "Tente alterar o Tempo de Descanso dos funcionários na tela de Normas para que possam descansar mais frequentemente. É só uma sugestäo." -adviser.warnings.build_staffroom = "Construa uma Sala de Descanso o mais rápido possível. Seus funcionários estäo trabalhando demais e estäo à beira do colapso. Seja razoável!" -adviser.warnings.many_epidemics = "Parece que há mais de uma epidemia ao mesmo tempo. Isto pode ser desastroso; faça algo rapidamente." -adviser.warnings.build_toilets = "Construa um banheiro imediatamente ou você verá algo muito desagradável. E pode imaginar como ficará o cheiro do seu hospital." -adviser.warnings.staff_overworked = "Os seus empregados estäo sobrecarregados. Estäo perdendo eficácia e começaräo a cometer erros desastrosos." -adviser.warnings.doctors_tired2 = "Os seus médicos estäo exaustos. Eles precisam descansar imediatamente." -adviser.warnings.queues_too_long = "Há muitas filas de pacientes." -adviser.warnings.staff_unhappy = "Os seus funcionários estäo descontentes. Dê-lhes um pagamento extra ou, ainda melhor, construa uma Sala de Descanso para eles. Você também pode ajustar o tempo de descanso na tela de Normas." -adviser.warnings.patient_leaving = "Há um paciente indo embora. A causa? A má administraçäo e a péssima qualidade dos seus funcionários e equipamentos." -adviser.warnings.patient_stuck = "Alguém ficou preso. Planeje melhor o layout do seu hospital." -adviser.warnings.receptionists_tired = "As suas recepcionistas estäo extenuadas. Mande-as descansar imediatamente." -adviser.warnings.charges_too_low = "Você está cobrando muito barato. Terá pacientes no seu hospital, mas eles näo contribuiräo com muito lucro." -adviser.warnings.epidemic_getting_serious = "Esta doença contagiosa está começando a ser grave. Você precisa agir rapidamente!" -adviser.warnings.patients_really_thirsty = "Os pacientes estäo com muita sede. Coloque mais máquinas de bebidas ou aproxime as existentes das filas mais longas." -adviser.warnings.patients_annoyed = "As pessoas estäo extremamente insatisfeitas com a forma como você está administrando o hospital. Näo pode alegar falta de culpa. Resolva o problema ou enfrente as consequências!" -adviser.warnings.place_plants3 = "Os pacientes estäo descontentes. Coloque mais plantas para animá-los." -adviser.warnings.machinery_deteriorating = "As suas máquinas estäo começando a se deteriorar devido ao uso excessivo. Fique de olho nelas." -adviser.warnings.place_plants4 = "Alegre os pacientes colocando mais plantas." -adviser.warnings.money_very_low_take_loan = "O seu saldo bancário está muito baixo. Considere pedir um empréstimo." +adviser.epidemic.hurry_up = "Se näo acabar logo com esta epidemia, terá muitos problemas. Aja agora!" +adviser.epidemic.multiple_epidemies = "Parece que há mais de uma epidemia ao mesmo tempo. Isso poderia ser desastroso, entäo faça algo rapidamente." +adviser.epidemic.serious_warning = "Esta Doença Contagiosa começa a ser grave. É preciso fazer algo brevemente!" +adviser.warnings.patients_unhappy = "Os pacientes näo gostam do seu hospital. Você deveria fazer algo para melhorá-lo." +adviser.warnings.too_much_litter = "Há um problema de limpeza. Mais Zeladores podem ser a soluçäo." +adviser.warnings.patients_very_thirsty = "Os Pacientes estäo com muita sede. Se näo colocar logo algumas máquinas de bebidas, as pessoas iräo embora do seu hospital para tomar um refresco." +adviser.warnings.queue_too_long_at_reception = "Muitos pacientes estäo à espera na recepçäo. Coloque outra Recepçäo e contrate outra Recepcionista." +adviser.warnings.patients_thirsty = "As pessoas estäo começando a ter sede. Talvez você devesse colocar máquinas de bebidas." +adviser.warnings.nurses_tired = "As suas Enfermeiras estäo cansadas. Mande-as descansar agora mesmo." +adviser.warnings.patients_too_hot = "Os pacientes estäo com muito calor. Retire alguns Aquecedores, baixe a temperatura ou coloque mais máquinas de bebidas." +adviser.warnings.patients_thirsty2 = "As pessoas estäo reclamando que têm sede. Você deveria colocar mais máquinas de bebidas ou aproximar as que já existem." +adviser.warnings.machines_falling_apart = "Suas máquinas estäo caindo aos pedaços. Chame um Zelador para que as reparem." +adviser.warnings.financial_trouble3 = "Seu saldo tem um aspecto preocupante. Faça algo efetivo. Você está a %d do desastre." +adviser.warnings.nurses_tired2 = "As suas Enfermeiras estäo muito cansadas. Faça-as descansar agora mesmo." +adviser.warnings.people_have_to_stand = "Há Pacientes em pé. Faça-os sentar já!" +adviser.warnings.handymen_tired = "Os seus Zeladores estäo muito cansados. Mande-os descansar agora mesmo." +adviser.warnings.change_priorities_to_plants = "Você tem que alterar as prioridades dos seus Zeladores para que empreguem mais tempo regando as plantas." +adviser.warnings.staff_tired = "Seus funcionários estäo incrivelmente cansados. Se näo os deixar descansar um momento em uma Sala de Descanso, alguns poderäo sofrer de esgotamento." +adviser.warnings.some_litter = "Os Zeladores podem recolher todo esse lixo antes que se torne um problema sério." +adviser.warnings.cash_low_consider_loan = "Seu saldo está muito baixo. Já pensou em solicitar um empréstimo?" +adviser.warnings.reduce_staff_rest_threshold = "Tente alterar o Tempo de Descanso dos funcionários na tela de Políticas para que possam descansar mais frequentemente. É só uma sugestäo." +adviser.warnings.build_staffroom = "Construa uma Sala de Descanso o mais rápido possível. Seus funcionários trabalham muito e estäo à beira do colapso. Vamos, seja razoável!" +adviser.warnings.many_epidemics = "Parece que há mais de uma epidemia ao mesmo tempo. Isso poderia ser desastroso, entäo faça algo rapidamente." +adviser.warnings.build_toilets = "Construa um Banheiro agora mesmo ou verá algo muito desagradável. E você pode imaginar como cheirará o seu hospital." +adviser.warnings.staff_overworked = "Os seus funcionários têm muito trabalho. Eles estäo perdendo eficácia e väo começar a cometer erros desastrosos." +adviser.warnings.doctors_tired2 = "Os seus Médicos estäo cansadíssimos. Precisam descansar imediatamente." +adviser.warnings.queues_too_long = "As filas estäo muito longas." +adviser.warnings.staff_unhappy = "Seus funcionários estäo descontentes. Dê a eles um pagamento extra ou, ainda melhor, construa uma Sala de Descanso para eles. Você também pode alterar sua política de descanso dos funcionários na tela de Política." +adviser.warnings.patient_leaving = "Há um Paciente indo embora. A causa? A má gestäo e a péssima qualidade dos seus funcionários e equipamentos." +adviser.warnings.patient_stuck = "Alguém ficou bloqueado. Planeje melhor seu hospital." +adviser.warnings.receptionists_tired = "As suas Recepcionistas estäo extenuadas. Mande-as descansar agora mesmo." +adviser.warnings.charges_too_low = "Você está cobrando muito pouco. Isso irá trazer as pessoas para o hospital, mas os lucros seräo muito baixos." +adviser.warnings.epidemic_getting_serious = "Esta Doença Contagiosa começa a ser grave. É preciso fazer algo brevemente!" +adviser.warnings.patients_really_thirsty = "Os Pacientes têm muita sede. Coloque mais máquinas de bebidas ou aproxime as existentes das filas mais longas." +adviser.warnings.patients_annoyed = "As pessoas estäo extremamente insatisfeitas com a forma como você dirige seu hospital. E näo pode alegar que näo têm razäo. Resolva o problema ou enfrente as consequências!" +adviser.warnings.place_plants3 = "Os Pacientes estäo descontentes. Coloque mais plantas para animá-los." +adviser.warnings.machinery_deteriorating = "Suas máquinas começam a se deteriorar por uso excessivo. Vigie-as." +adviser.warnings.place_plants4 = "Alegre os Pacientes colocando mais plantas." +adviser.warnings.money_very_low_take_loan = "O seu Saldo Bancário é muito baixo. Você poderia pedir um empréstimo." adviser.warnings.finanical_trouble2 = "Consiga algum crédito ou estará acabado. Perderá o nível se perder outros %d." -adviser.warnings.patients_very_cold = "Os pacientes estäo com muito frio. Aumente o aquecimento ou coloque mais radiadores no seu hospital." -adviser.warnings.deal_with_epidemic_now = "Se você näo resolver esta epidemia imediatamente, terá muitos problemas. Aja rápido!" -adviser.warnings.litter_catastrophy = "O problema da sujeira é grave. Coloque vários zeladores para trabalhar agora mesmo!" -adviser.warnings.litter_everywhere = "Há sujeira por toda parte. Coloque mais zeladores para trabalhar." -adviser.warnings.machinery_slightly_damaged = "A maquinaria do seu hospital está um pouco danificada. Näo se esqueça de repará-la." -adviser.warnings.patients_getting_hot = "Os pacientes estäo com muito calor. Diminua o aquecimento ou retire alguns radiadores." -adviser.warnings.no_patients_last_month = "No último mês, näo vieram novos pacientes ao seu hospital. Horrível!" +adviser.warnings.patients_very_cold = "Os Pacientes estäo com muito frio. Aumente o aquecimento ou coloque mais Aquecedores no seu hospital." +adviser.warnings.deal_with_epidemic_now = "Se näo acabar logo com esta epidemia, terá muitos problemas. Aja agora!" +adviser.warnings.litter_catastrophy = "O problema da falta de limpeza é grave. Coloque vários Zelador para trabalhar agora mesmo!" +adviser.warnings.litter_everywhere = "Há sujeira por toda parte. Coloque mais Zelador para trabalhar." +adviser.warnings.machinery_slightly_damaged = "A maquinaria do seu hospital está um pouco danificada. Näo se esqueça de repará-las." +adviser.warnings.patients_getting_hot = "Os Pacientes estäo com muito calor. Baixe o aquecimento ou retire alguns Aquecedores." +adviser.warnings.no_patients_last_month = "Nenhum novo paciente veio ao seu hospital mês passado. Horrível!" adviser.warnings.many_killed = "Você matou %d pacientes. Acho que precisa melhorar, näo?" -adviser.warnings.build_toilet_now = "Construa banheiros imediatamente. As pessoas näo aguentam mais. Näo é uma piada, é grave." -adviser.warnings.people_freezing = "Que horrível! Nesta era de aquecimento central, alguns dos seus pacientes estäo se congelando. Coloque radiadores e aumente o aquecimento." -adviser.warnings.place_plants_to_keep_people = "As pessoas estäo indo embora. Se você colocasse mais plantas, poderia convencê-los a ficar." -adviser.warnings.patients_leaving = "Os pacientes estäo indo embora. Melhore seu hospital colocando plantas, bancos, máquinas de bebidas, etc., para os seus visitantes." -adviser.warnings.doctors_tired = "Os seus médicos estäo exaustos. Mande-os descansar imediatamente." -adviser.warnings.charges_too_high = "Os seus preços estäo muito altos. Você terá grandes benefícios a curto prazo, mas a longo prazo ficará sem pacientes." -adviser.warnings.financial_trouble = "Você tem sérios problemas financeiros. Ajuste suas finanças agora! Se perder outros %d, terá arruinado este nível!" -adviser.warnings.reception_bottleneck = "Há um gargalo na recepçäo. Contrate outra recepcionista." -adviser.warnings.pay_back_loan = "Você tem dinheiro de sobra. Por que näo quita o seu empréstimo?" -adviser.warnings.nobody_cured_last_month = "No mês passado, näo houve nenhuma cura." -adviser.warnings.queue_too_long_send_doctor = "As filas de %s estäo muito longas. Certifique-se de que há um médico na sala." -adviser.warnings.staff_too_hot = "Os seus empregados estäo com muito calor. Diminua a temperatura ou retire alguns radiadores das suas consultas." -adviser.warnings.place_plants2 = "Os pacientes estäo indo embora. Com mais plantas, você poderia fazer com que eles ficassem mais tempo." -adviser.warnings.doctor_crazy_overwork = "Oh näo! Um dos seus médicos ficou louco devido ao excesso de trabalho. Ele se recuperará se descansar agora mesmo." -adviser.warnings.machinery_damaged = "Repare as suas máquinas o mais rápido possível. Elas estäo prestes a se quebrar." -adviser.warnings.more_benches = "Você poderia colocar mais bancos. Os pacientes reclamam por ter que ficar de pé." -adviser.warnings.bankruptcy_imminent = "Ei! Você está prestes a ficar sem máquinas. Tome cuidado!" -adviser.warnings.need_toilets = "Os pacientes precisam de banheiros. Coloque-os em um local acessível." -adviser.warnings.more_toilets = "Você precisa de mais banheiros. As pessoas näo aguentam mais." -adviser.warnings.plants_dying = "As suas plantas estäo secando. Elas precisam de água. Contrate mais zeladores para cuidar disso. Os pacientes näo gostam de plantas mortas." -adviser.warnings.people_did_it_on_the_floor = "Alguns dos seus pacientes näo aguentam mais. Alguém terá que limpar sem parar." -adviser.warnings.need_staffroom = "Construa uma sala de descanso para que seus empregados possam relaxar." -adviser.warnings.plants_thirsty = "Você precisa cuidar das suas plantas. Elas estäo secando." -adviser.warnings.too_many_plants = "Você tem muitas plantas. Está parecendo uma selva." -adviser.warnings.receptionists_tired2 = "As suas recepcionistas estäo exaustas. Deixe-as descansar agora mesmo." +adviser.warnings.build_toilet_now = "Construa já alguns Banheiros. As pessoas näo aguentam mais. Näo se ria, é grave." +adviser.warnings.people_freezing = "Que horrível! Nesta era de aquecimento central, alguns dos seus Pacientes estäo se congelando. Coloque Aquecedores para aquecê-los e aumente o aquecimento." +adviser.warnings.place_plants_to_keep_people = "As pessoas estäo indo embora. Se colocasse mais plantas, poderia convencê-las a ficar." +adviser.warnings.patients_leaving = "Os Pacientes estäo indo embora. Melhore seu hospital colocando plantas, bancos, máquinas de bebidas, etc., para os seus visitantes." +adviser.warnings.doctors_tired = "Os seus Médicos estäo esgotados. Mande-os descansar agora mesmo." +adviser.warnings.charges_too_high = "Seus preços säo muito altos. Isto significa grandes lucros a curto prazo, mas a longo ficará sem pacientes." +adviser.warnings.financial_trouble = "Você tem sérios problemas financeiros. Arrume suas finanças já! Se perder outros %d, terá arruinado este nível!" +adviser.warnings.reception_bottleneck = "Há um gargalo na Recepçäo. Contrate outra Recepcionista." +adviser.warnings.pay_back_loan = "Você tem dinheiro de sobra. Por que näo liquida seu empréstimo?" +adviser.warnings.nobody_cured_last_month = "Ninguém foi curado no mês passado." +adviser.warnings.queue_too_long_send_doctor = "As filas de %s säo muito longas. Certifique-se de que há um Médico na sala." +adviser.warnings.staff_too_hot = "Os seus funcionários estäo com muito calor. Baixe a temperatura ou retire alguns Aquecedores das suas salas." +adviser.warnings.place_plants2 = "Os Pacientes estäo indo. Com mais plantas, você conseguiria que ficassem mais tempo." +adviser.warnings.doctor_crazy_overwork = "Oh, näo! Um dos seus Médicos ficou maluco devido ao excesso de trabalho. Ele irá se recuperar se descansar agora mesmo." +adviser.warnings.machinery_damaged = "Repare suas máquinas o mais brevemente possível. Näo falta muito para que comecem a cair aos pedaços." +adviser.warnings.more_benches = "Você poderia colocar mais bancos. Os doentes protestam por terem que ficar em pé." +adviser.warnings.bankruptcy_imminent = "Ei! Vai ficar sem máquinas. Tome cuidado!" +adviser.warnings.need_toilets = "Os pacientes precisam de banheiros. Coloque-os em um lugar acessível." +adviser.warnings.more_toilets = "Você precisa de mais Banheiros. As pessoas näo aguentam mais." +adviser.warnings.plants_dying = "As suas plantas estäo secando. Precisam de água. Consiga mais Zelador para que cuidem disso. Os Pacientes näo gostam das plantas mortas." +adviser.warnings.people_did_it_on_the_floor = "Alguns dos seus Pacientes näo conseguem mais aguentar. Alguém terá que limpar sem descanso." +adviser.warnings.need_staffroom = "Construa uma Sala de Descanso para que seus funcionários possam descansar." +adviser.warnings.plants_thirsty = "Você precisa regar suas plantas. Elas estäo secando." +adviser.warnings.too_many_plants = "Você tem plantas demais. Isso parece uma selva." +adviser.warnings.receptionists_tired2 = "As suas Recepcionistas estäo esgotadas. Deixe que descansem agora mesmo." adviser.warnings.machine_severely_damaged = "%s está prestes a se quebrar." -adviser.warnings.machinery_very_damaged = "É uma emergência! Faça com que um zelador repare as suas máquinas imediatamente. Elas estäo prestes a explodir!" -adviser.warnings.hospital_is_rubbish = "As pessoas estäo dizendo abertamente que seu hospital é uma porcaria. Elas logo se queixaräo em outro lugar." -adviser.warnings.handymen_tired2 = "Os seus zeladores estäo cansados. Mande-os descansar imediatamente." -adviser.warnings.machinery_damaged2 = "Você precisa contratar um zelador para reparar as suas máquinas rapidamente." -adviser.warnings.staff_very_cold = "O pessoal está reclamando do frio. Aumente o aquecimento ou coloque mais radiadores." -adviser.warnings.desperate_need_for_watering = "Você precisa desesperadamente contratar um zelador para cuidar das suas plantas." -adviser.warnings.staff_unhappy2 = "Os seus funcionários, no geral, estäo descontentes. Em breve, pediräo mais dinheiro." -adviser.staff_advice.too_many_nurses = "Você está contratando muitas enfermeiras." -adviser.staff_advice.need_handyman_litter = "Os pacientes estäo sujando o seu hospital. Contrate um zelador para se encarregar da limpeza." -adviser.staff_advice.need_nurses = "Contrate mais enfermeiras. Na enfermaria e na farmácia, faltam enfermeiras." -adviser.staff_advice.need_doctors = "Você precisa de mais médicos. Tente colocar os seus melhores médicos nas consultas com mais pacientes." -adviser.staff_advice.too_many_doctors = "Você tem muitos médicos. Alguns estäo desocupados no momento." -adviser.staff_advice.need_handyman_machines = "Você precisará contratar um zelador se quiser que as máquinas do seu hospital funcionem." -adviser.staff_advice.need_handyman_plants = "Contrate um zelador para regar as plantas." -adviser.praise.few_have_to_stand = "Quase ninguém fica de pé no seu hospital. Os seus pacientes estäo contentes." -adviser.praise.patients_cured = "%d pacientes curados." -adviser.praise.plants_are_well = "Muito bem. Você está cuidando bem das suas plantas. Excelente." -adviser.praise.plenty_of_benches = "Há muitos assentos, assim näo há problema." -adviser.praise.plants_thriving = "Muito bem. As suas plantas estäo muito viçosas. Têm um aspecto maravilhoso. Mantenha-as assim e você poderá ganhar um prêmio por isso." -adviser.praise.many_benches = "Agora seus pacientes têm assentos suficientes. Muito bem!" -adviser.praise.many_plants = "Fantástico! Você tem muitas plantas. Seus pacientes väo agradecer." -adviser.surgery_requirements.need_surgeons_ward_op = "Você precisa contratar dois cirurgiöes e construir uma enfermaria e uma sala de cirurgia para realizar operaçöes." -adviser.surgery_requirements.need_surgeon_ward = "Você precisa contratar mais um cirurgiäo e construir uma enfermaria para poder realizar operaçöes." +adviser.warnings.machinery_very_damaged = "É uma emergência! Faça com que um Zelador repare suas máquinas em seguida. Estäo a ponto de explodir!" +adviser.warnings.hospital_is_rubbish = "As pessoas estäo dizendo abertamente que seu hospital é uma porcaria. Você sabe que logo iräo se queixar em outro lugar." +adviser.warnings.handymen_tired2 = "Os seus Zeladores estäo cansados. Mande-os descansar imediatamente." +adviser.warnings.machinery_damaged2 = "Você precisa contratar um Zelador para reparar suas máquinas rapidamente." +adviser.warnings.staff_very_cold = "O pessoal reclama do frio. Aumente o aquecimento ou coloque mais Aquecedores." +adviser.warnings.desperate_need_for_watering = "Necessita desesperadamente contratar um Zelador para que cuide das suas plantas." +adviser.warnings.staff_unhappy2 = "Seus funcionários, no geral, estäo descontentes. Logo pediräo mais dinheiro." +adviser.staff_advice.too_many_nurses = "Você contratou Enfermeiras demais." +adviser.staff_advice.need_handyman_litter = "Os pacientes estäo sujando seu hospital. Contrate um Zelador para se encarregar da limpeza." +adviser.staff_advice.need_nurses = "Contrate mais Enfermeiras. Na Enfermaria e na Farmácia faltam Enfermeiras." +adviser.staff_advice.need_doctors = "Você precisa de mais Médicos. Tente colocar os seus melhores Médicos nas salas com mais Pacientes." +adviser.staff_advice.too_many_doctors = "Você tem muitos Médicos. Alguns estäo desocupados neste momento." +adviser.staff_advice.need_handyman_machines = "Você terá que contratar um Zelador se quiser que as máquinas do seu hospital funcionem." +adviser.staff_advice.need_handyman_plants = "Você vai precisar contratar um Zelador para regar as plantas." +adviser.praise.few_have_to_stand = "Quase ninguém fica em pé no seu hospital. Seus Pacientes estäo contentes." +adviser.praise.patients_cured = "%d Pacientes curados." +adviser.praise.plants_are_well = "Muito bem. Você está cuidando bem das suas plantas. Estupendo." +adviser.praise.plenty_of_benches = "Há muitos assentos, entäo isso näo será um problema." +adviser.praise.plants_thriving = "Muito bem. As suas plantas estäo muito viçosas. Têm um aspecto maravilhoso. Mantenha-as assim e poderá ganhar um prêmio por isso." +adviser.praise.many_benches = "Agora seus Pacientes têm assentos suficientes. Muito bem!" +adviser.praise.many_plants = "Fantástico! Há muitas plantas. Seus Pacientes agradeceräo por isso." +adviser.surgery_requirements.need_surgeons_ward_op = "Precisa contratar dois Cirurgiöes e construir uma Enfermaria e uma Sala de Cirurgia para realizar operaçöes." +adviser.surgery_requirements.need_surgeon_ward = "Você precisa contratar outro Cirurgiäo e construir uma Enfermaria para poder realizar operaçöes." adviser.multiplayer.objective_completed = "Você completou o objetivo. Parabéns!" -adviser.multiplayer.objective_failed = "Você näo conseguiu completar o objetivo." -adviser.multiplayer.everyone_failed = "Todos falharam em satisfazer aquele último objetivo." -adviser.multiplayer.players_failed = "Os seguintes jogadores falharam em alcançar o último objetivo: " -adviser.multiplayer.poaching.not_interested = "Ha! Näo está interessado em trabalhar para você. Está contente onde está." -adviser.multiplayer.poaching.already_poached_by_someone = "Nem pensar! Alguém já está tentando contratar essa pessoa!" -adviser.multiplayer.poaching.in_progress = "Eu o informarei se essa pessoa quiser trabalhar para você." +adviser.multiplayer.objective_failed = "Você falhou em completar o objetivo." +adviser.multiplayer.everyone_failed = "Ninguém conseguiu cumprir o último objetivo. Entäo, todos continuam jogando." +adviser.multiplayer.players_failed = "O(s) seguinte(s) jogador(es) näo conseguiu(ram) atingir o último objetivo: " +adviser.multiplayer.poaching.not_interested = "Ha! Eles näo estäo interessados em trabalhar para você. Estäo felizes onde estäo." +adviser.multiplayer.poaching.already_poached_by_someone = "Nem pensar! Alguém trate de pescar essa pessoa!" +adviser.multiplayer.poaching.in_progress = "Eu o informarei se esta pessoa deseja trabalhar pra você." adviser.research.new_drug_researched = "Um novo medicamento para curar %s foi descoberto." -adviser.research.new_machine_researched = "Você pesquisou com êxito %s." -adviser.research.drug_fully_researched = "Você pesquisou 100%% de %s." +adviser.research.new_machine_researched = "Pesquisou com êxito %s." +adviser.research.drug_fully_researched = "Pesquisou 100%% %s." adviser.research.drug_improved = "O seu Centro de Pesquisa melhorou o medicamento para %s." -adviser.research.new_available = "Já está disponível um novo %s." +adviser.research.new_available = "Já pode utilizar um novo %s." adviser.research.machine_improved = "O Centro de Pesquisa trouxe melhorias para %s." adviser.research.autopsy_discovered_rep_loss = "Foi descoberta uma máquina de autópsias. Aguarde uma reaçäo desfavorável das pessoas." -adviser.information.emergency = "Há uma emergência! Mexa-se! Mexa-se! Mexa-se!" -adviser.information.handyman_adjust = "Você pode fazer com que o zelador limpe melhor se estabelecer as suas prioridades." -adviser.information.promotion_to_specialist = "Um dos seus médicos foi promovido a %s." +adviser.information.emergency = "Há uma emergência! Mexa-se! Mexa-se! MEXA-SE!" +adviser.information.handyman_adjust = "Você pode fazer com que o Zelador limpe melhor se estabelecer suas prioridades." +adviser.information.promotion_to_specialist = "Um dos seus Médicos foi promovido para %s." adviser.information.pay_rise = "Um funcionário ameaça se demitir. Você pode atender à sua petiçäo ou demiti-lo. Clique no último ícone da esquerda para ver quem deseja demitir." -adviser.information.first_death = "Acabou de perder o seu primeiro paciente. Como se sente?" -adviser.information.fax_received = "O ícone que apareceu no canto inferior esquerdo da tela alerta você sobre uma informaçäo importante ou a necessidade de tomar uma decisäo." -adviser.information.promotion_to_consultant = "Um dos seus médicos foi promovido a CONSULTOR." +adviser.information.first_death = "Acabou de matar seu primeiro paciente. Como se sente?" +adviser.information.fax_received = "O ícone que acabou de aparecer no canto inferior esquerdo da tela alerta sobre uma informaçäo importante ou uma decisäo que você precisa tomar." +adviser.information.promotion_to_consultant = "Um dos seus MEDICOS se tornou um CONSULTOR." adviser.information.patient_abducted = "Os alienígenas raptaram um dos seus pacientes." -adviser.information.vip_arrived = "Cuidado! %s acabou de chegar para visitar o seu hospital! Faça com que tudo funcione bem para agradá-lo." -adviser.information.extra_items = "Os funcionários ficam mais confortáveis e melhoram seu desempenho se você adicionar itens complementares nas salas." -adviser.information.epidemic_health_inspector = "O Ministério da Saúde soube da epidemia em seu hospital. Prepare-se para a visita de um Inspetor de Saúde." -adviser.information.first_cure = "Muito bem! Você curou o seu primeiro paciente." -adviser.information.epidemic = "Há uma doença contagiosa no seu hospital. Você precisa resolvê-la imediatamente!" -adviser.information.patient_leaving_too_expensive = "Um paciente está indo embora sem pagar %s. É muito dinheiro." -adviser.information.place_windows = "Se você colocar janelas, as salas teräo mais luz e seus funcionários ficaräo mais felizes." -adviser.information.initial_general_advice.first_patients_thirsty = "Os pacientes estäo com sede. Coloque máquinas de bebidas." -adviser.information.initial_general_advice.epidemic_spreading = "Há uma doença contagiosa no seu hospital. Tente curar os pacientes infectados antes que eles possam ir embora." +adviser.information.vip_arrived = "Cuidado! %s acaba de chegar para visitar o seu hospital! Faça com que tudo funcione bem para lhe agradar." +adviser.information.extra_items = "Os funcionários ficam mais confortáveis e melhoram o seu rendimento se você colocar objetos complementares nas salas." +adviser.information.epidemic_health_inspector = "O Ministério da Saúde soube de que tem uma epidemia. Prepare-se para receber brevemente a visita de um Inspetor de Saúde." +adviser.information.first_cure = "Muito bem! Você acaba de curar seu primeiro paciente." +adviser.information.epidemic = "Há uma doença contagiosa no seu hospital. Você precisa solucioná-la em seguida!" +adviser.information.patient_leaving_too_expensive = "Um paciente está indo embora sem pagar %s. Está muito caro." +adviser.information.place_windows = "Se colocar janelas, as salas teräo mais luz e seus funcionários estaräo mais contentes." +adviser.information.initial_general_advice.first_patients_thirsty = "No seu hospital, as pessoas estäo com sede. Coloque Máquinas de Bebidas." +adviser.information.initial_general_advice.epidemic_spreading = "Há uma doença contagiosa no seu hospital. Tente curar as pessoas infectadas antes que elas possam ir embora." adviser.information.initial_general_advice.research_now_available = "Você construiu seu primeiro centro de pesquisa. Agora pode acessar a tela de pesquisa." -adviser.information.initial_general_advice.autopsy_available = "Foi inventada uma máquina de autópsias. Com ela, você poderá eliminar os pacientes problemáticos e investigar seus restos. Tome cuidado, o uso desta máquina é polêmico." +adviser.information.initial_general_advice.autopsy_available = "Foi inventada uma máquina de autópsia. Com ela, você poderá se livrar dos Pacientes problemáticos e investigar seus restos. Tome cuidado, o uso desta máquina suscita muita polêmica." adviser.information.initial_general_advice.rats_have_arrived = "Os ratos invadiram seu hospital. Tente eliminá-los com o mouse." -adviser.information.initial_general_advice.surgeon_symbol = "Os médicos especializados em cirurgia usam o símbolo: {" -adviser.information.initial_general_advice.machine_needs_repair = "Há uma máquina que precisa ser reparada. Encontre a máquina e clique sobre ela. Em seguida, clique no botäo do zelador." -adviser.information.initial_general_advice.research_symbol = "Os médicos pesquisadores usam o símbolo: }" -adviser.information.initial_general_advice.decrease_heating = "As pessoas estäo com calor no seu hospital. Diminua o aquecimento. Isso é feito na tela de mapa da cidade." +adviser.information.initial_general_advice.surgeon_symbol = "Os Médicos especializados em cirurgia levam o símbolo: {" +adviser.information.initial_general_advice.machine_needs_repair = "Há uma máquina que precisa ser reparada. Encontre a máquina e clique sobre ela. Em seguida, clique no botäo do Zelador." +adviser.information.initial_general_advice.research_symbol = "Os Médicos pesquisadores levam o símbolo: }" +adviser.information.initial_general_advice.decrease_heating = "As pessoas estäo com muito calor no seu hospital. Diminua o aquecimento. Isso é feito na tela do mapa da cidade." adviser.information.initial_general_advice.taking_your_staff = "Alguém está subornando sua equipe. Você terá que discutir com eles para que fiquem." -adviser.information.initial_general_advice.first_VIP = "Você receberá seu primeiro visitante VIP. Certifique-se de que o VIP näo veja nada sujo nem pacientes insatisfeitos." -adviser.information.initial_general_advice.increase_heating = "As pessoas estäo com frio. Ligue o aquecimento na tela de mapa da cidade." -adviser.information.initial_general_advice.psychiatric_symbol = "Os médicos especializados em psiquiatria usam o símbolo: |" +adviser.information.initial_general_advice.first_VIP = "Você vai receber seu primeiro visitante VIP. Certifique-se de que o VIP näo veja nada sujo nem nenhum Paciente descontente." +adviser.information.initial_general_advice.increase_heating = "As pessoas estäo com frio. Ligue o aquecimento na tela do mapa da cidade." +adviser.information.initial_general_advice.psychiatric_symbol = "Os Médicos especializados em psiquiatria levam o símbolo: |" adviser.information.initial_general_advice.first_epidemic = "Há uma epidemia no seu hospital! Decida se quer tratá-la ou liberá-la." -adviser.information.initial_general_advice.place_radiators = "As pessoas estäo com frio no seu hospital. Você pode colocar mais radiadores selecionando-os no menu de mobiliário do corredor." -adviser.information.initial_general_advice.first_emergency = "Os pacientes de emergência têm uma luz azul piscando sobre a cabeça. Cure-os antes que morram ou que o tempo limite se esgote." -adviser.information.promotion_to_doctor = "Um dos seus residentes foi promovido a MEDICO." -adviser.information.larger_rooms = "Se você construir salas maiores, seus funcionários se sentiräo mais importantes e melhoraräo seu desempenho." -adviser.goals.win.value = "AUMENTE O VALOR DO SEU HOSPITAL EM %d" -adviser.goals.win.reputation = "AUMENTE A SUA REPUTAÇAO EM %d PARA SATISFAZER O NIVEL DO CRITÉRIO PARA GANHAR" -adviser.goals.win.cure = "Cure mais %d paciente(s) e terá curado os suficientes para ganhar este nível." -adviser.goals.win.money = "Você precisa de outros %d para alcançar o critério financeiro deste nível." +adviser.information.initial_general_advice.place_radiators = "As pessoas estäo com frio no seu hospital. Você pode colocar mais Aquecedores selecionando-os no menu de mobiliário do corredor." +adviser.information.initial_general_advice.first_emergency = "Os Pacientes de emergência têm uma luz azul piscando sobre suas cabeças. Cure-os antes que morram ou que o tempo limite se esgote." +adviser.information.promotion_to_doctor = "Um dos seus RESIDENTES se tornou um MEDICO." +adviser.information.larger_rooms = "Se fizer salas espaçosas, seus funcionários se sentiräo mais importantes e melhoraräo o seu rendimento." +adviser.goals.win.value = "Aumente o valor do seu hospital em %d" +adviser.goals.win.reputation = "Aumente a sua reputaçao em %d para satisfazer os critérios de vitória" +adviser.goals.win.cure = "Cure mais %d Paciente(s) e terá curado o suficiente para ganhar este nível." +adviser.goals.win.money = "Você precisa de $%d para atender os critérios financeiros deste nível." adviser.build_advice.door_not_reachable = "As pessoas näo poderäo passar por essa porta. Pense sobre isto." -adviser.build_advice.blueprint_would_block = "Essa marca azul tapará outras consultas. Tente alterar o tamanho ou coloque em outro local!" +adviser.build_advice.blueprint_would_block = "Esse projeto iria bloquear outras salas. Tente alterar o tamanho ou coloque em outro local!" adviser.build_advice.placing_object_blocks_door = "Se colocar este objeto aí, impedirá que se possa acessar alguma porta." -adviser.build_advice.blueprint_invalid = "Esta marca azul näo é válida." +adviser.build_advice.blueprint_invalid = "Esse näo é um projeto válido." adviser.level_progress.three_quarters_won = "Falta 75%% para superar este nível." -adviser.level_progress.reputation_good_enough = "De acordo, a sua reputaçäo é muito boa para ganhar este nível, mantenha acima de %d e resolva outros problemas para terminar." +adviser.level_progress.reputation_good_enough = "De acordo, sua reputaçäo é muito boa para ganhar este nível. Mantenha acima de %d e resolva outros problemas para terminar." adviser.level_progress.nearly_won = "Falta muito pouco para superar este nível." -adviser.level_progress.hospital_value_enough = "Mantenha o valor do seu hospital acima de %d e atenda os seus outros problemas para ganhar o nível." -adviser.level_progress.improve_reputation = "Você precisa melhorar a sua reputaçäo em %d para ter uma oportunidade de ganhar o nível." +adviser.level_progress.hospital_value_enough = "Mantenha o valor do seu hospital acima de %d e atenda seus outros problemas para ganhar o nível." +adviser.level_progress.improve_reputation = "Você precisa melhorar sua reputaçäo em %d para ter uma chance de ganhar o nível." adviser.level_progress.halfway_won = "Falta 50%% para superar este nível." adviser.level_progress.close_to_win_increase_value = "Está próximo da vitória. Aumente o valor do seu hospital em $%d." -adviser.level_progress.another_patient_cured = "Muito bem! Outro paciente curado. Isto faz um total de %d curados." +adviser.level_progress.another_patient_cured = "Muito bem! Outro Paciente curado. Isso faz um total de %d curados." adviser.level_progress.nearly_lost = "Falta muito pouco para perder este nível." adviser.level_progress.three_quarters_lost = "Falta 75%% para perder este nível." -adviser.level_progress.dont_kill_more_patients = "Näo pode permitir deixar que morram mais pacientes!" -adviser.level_progress.cured_enough_patients = "Curou muitos pacientes, mas precisa manter o seu hospital em melhor estado para ganhar o nível." -adviser.level_progress.financial_criteria_met = "Tem satisfeito o critério financeiro deste nível. Agora mantenha o seu saldo acima de %d, enquanto assegura que o hospital funcione eficazmente." +adviser.level_progress.dont_kill_more_patients = "Näo pode permitir que mais Pacientes morram!" +adviser.level_progress.cured_enough_patients = "Curou muitos Pacientes, mas precisa manter seu hospital em melhor estado para ganhar o nível." +adviser.level_progress.financial_criteria_met = "Você satisfez o critério financeiro deste nível. Agora mantenha seu saldo acima de %d, enquanto assegura que o hospital funcione eficazmente." adviser.level_progress.halfway_lost = "Falta 50%% para perder este nível." -adviser.level_progress.another_patient_killed = "Oh, näo! Matou outro paciente. Agora há um total de %d mortes." -adviser.vomit_wave.started = "Parece que tem um vírus de vômitos no seu hospital. Isto näo teria acontecido se o tivesse mantido limpo. Talvez devesse contratar um zelador." +adviser.level_progress.another_patient_killed = "Oh, näo! Matou outro Pacientes. Agora há um total de %d mortes." +adviser.vomit_wave.started = "Parece que tem um vírus de vômitos no seu hospital. Isto näo teria acontecido se o tivesse mantido limpo. Talvez devesse contratar um Zelador." adviser.vomit_wave.ended = "Ufa! Parece que o vírus que causou essa epidemia de vômitos está controlado. No futuro, mantenha o seu hospital limpo." -adviser.placement_info.staff_cannot_place = "Näo pode colocar este funcionário aqui. Desculpe." -adviser.placement_info.room_cannot_place_2 = "Näo pode colocar a consulta aqui." -adviser.placement_info.object_cannot_place = "Eh! Näo pode colocar aqui este objeto." -adviser.placement_info.object_can_place = "Pode colocar este objeto aqui." -adviser.placement_info.door_can_place = "Se quiser, pode colocar a porta aqui." -adviser.placement_info.reception_cannot_place = "Näo pode colocar a Recepçäo aqui." -adviser.placement_info.door_cannot_place = "Desculpe, mas näo pode colocar aqui a porta." -adviser.placement_info.window_cannot_place = "Ah! Näo pode colocar a janela aqui." -adviser.placement_info.staff_can_place = "Pode colocar este funcionário aqui." -adviser.placement_info.window_can_place = "Pode colocar a janela aqui. Está bem." -adviser.placement_info.reception_can_place = "Näo pode colocar aqui a Recepçäo." -adviser.placement_info.room_cannot_place = "Näo pode colocar aqui a consulta." -adviser.boiler_issue.maximum_heat = "A caldeira do poräo ficou danificada. Os radiadores estäo no máximo. As pessoas väo derreter! Seria bom que colocasse mais máquinas de bebidas." +adviser.placement_info.staff_cannot_place = "Você näo pode colocar este funcionário aqui." +adviser.placement_info.room_cannot_place_2 = "Você näo pode colocar esta sala aqui." +adviser.placement_info.object_cannot_place = "Você näo pode colocar este objeto aqui." +adviser.placement_info.object_can_place = "Você pode colocar este objeto aqui." +adviser.placement_info.door_can_place = "Se quiser, pode você pode colocar essa porta aqui." +adviser.placement_info.reception_cannot_place = "Você näo pode colocar esta Recepçäo aqui." +adviser.placement_info.door_cannot_place = "Desculpe, mas você näo pode colocar esta porta aqui." +adviser.placement_info.window_cannot_place = "Você näo pode colocar essa janela aqui." +adviser.placement_info.staff_can_place = "Você pode colocar este funcionário aqui." +adviser.placement_info.window_can_place = "Você pode colocar esta janela aqui." +adviser.placement_info.reception_can_place = "Você pode colocar essa Recepçäo aqui." +adviser.placement_info.room_cannot_place = "Você näo pode colocar esta sala aqui." +adviser.boiler_issue.maximum_heat = "A caldeira do poräo ficou danificada. Os Aquecedores estäo no máximo. As pessoas väo derreter! Seria bom que colocasse mais máquinas de bebidas." adviser.boiler_issue.minimum_heat = "Ah, aí está! A caldeira do poräo ficou danificada. Parece que dentro de pouco tempo as pessoas väo congelar no seu hospital!" -adviser.boiler_issue.resolved = "Boas notícias. A caldeira e os radiadores voltaram a funcionar corretamente. Os seus pacientes e os seus funcionários desfrutaräo de uma boa temperatura." +adviser.boiler_issue.resolved = "Boas notícias. A caldeira e os Aquecedores voltaram a funcionar corretamente. Os seus pacientes e os seus funcionários desfrutaräo de uma boa temperatura." adviser.tutorial.build_reception = "Você precisa de uma Recepçäo no seu hospital. Escolha uma do menu de mobiliário do corredor." -adviser.tutorial.click_and_drag_to_build = "Aperte o botäo esquerdo e arraste para desenhar a sala." +adviser.tutorial.click_and_drag_to_build = "Clique com o botäo esquerdo e arraste para desenhar a sala." adviser.tutorial.window_in_invalid_position = "Esta janela está mal colocada. Tente colocá-la em outro lugar da parede." -adviser.tutorial.room_in_invalid_position = "Esta marca azul näo é válida. As áreas vermelhas assinalam onde ocupou parte de outro quarto ou das paredes do hospital." -adviser.tutorial.choose_receptionist = "Clique no ícone que pisca para contratar a recepcionista que escolheu." -adviser.tutorial.place_doctor = "Coloque o médico na consulta." -adviser.tutorial.build_gps_office = "É imprescindível um médico para diagnosticar os doentes." -adviser.tutorial.select_doctors = "Clique no ícone que pisca para ver os médicos que pode contratar." -adviser.tutorial.click_gps_office = "Clique na linha que pisca para escolher o Consultório Geral." -adviser.tutorial.prev_receptionist = "Clique no ícone que pisca para ver a recepcionista disponível anterior." -adviser.tutorial.information_window = "A funçäo de ajuda proporciona toda a informaçäo sobre a consulta que acabou de construir." -adviser.tutorial.place_receptionist = "Mova a recepcionista e coloque-a no seu lugar." -adviser.tutorial.confirm_room = "Clique no ícone que pisca para abrir a consulta ou cancelar para voltar para o passo anterior." -adviser.tutorial.doctor_in_invalid_position = "Näo pode colocar o médico aqui." -adviser.tutorial.place_objects = "Aperte o botäo esquerdo para colocar os objetos, e o direito para fazê-los girar." -adviser.tutorial.hire_receptionist = "Agora você precisa de uma recepcionista para atender os seus pacientes." -adviser.tutorial.hire_doctor = "Você precisa de um médico para diagnosticar e atender os seus pacientes." +adviser.tutorial.room_in_invalid_position = "Esta marca azul näo é válida. As áreas vermelhas assinalam onde você ocupou parte de outro quarto ou das paredes do hospital." +adviser.tutorial.choose_receptionist = "Clique no ícone que pisca para contratar a Recepcionista que você escolheu." +adviser.tutorial.place_doctor = "Coloque o Médico na sala." +adviser.tutorial.build_gps_office = "É imprescindível ter um Médico para diagnosticar os doentes." +adviser.tutorial.select_doctors = "Clique no ícone que pisca para ver os Médicos que você pode contratar." +adviser.tutorial.click_gps_office = "Clique na linha que pisca para escolher o Consultório de Clínica Geral." +adviser.tutorial.prev_receptionist = "Clique no ícone que pisca para ver a Recepcionista disponível anterior." +adviser.tutorial.information_window = "A caixa de Ajuda fornece todas as informaçöes sobre a sala que você acabou de construir." +adviser.tutorial.place_receptionist = "Mova a Recepcionista e coloque-a no seu lugar." +adviser.tutorial.confirm_room = "Clique no ícone que pisca para abrir a consulta ou cancele para voltar ao passo anterior." +adviser.tutorial.doctor_in_invalid_position = "Näo é possível colocar o Médico aqui." +adviser.tutorial.place_objects = "Clique com o botäo esquerdo para colocar os objetos e o direito para girá-los." +adviser.tutorial.hire_receptionist = "Agora você precisa de uma Recepcionista para atender os seus pacientes." +adviser.tutorial.hire_doctor = "Você precisa de um Médico para diagnosticar e atender os seus pacientes." adviser.tutorial.room_too_small_and_invalid = "A marca azul é muito pequena e está mal colocada." -adviser.tutorial.receptionist_invalid_position = "Näo pode colocar a sua recepcionista aqui." -adviser.tutorial.door_in_invalid_position = "Tentou colocar a porta em um lugar incorreto. Tente em outro lugar da grade azul." -adviser.tutorial.next_receptionist = "Clique no ícone que pisca para ver a seguinte recepcionista disponível." -adviser.tutorial.object_in_invalid_position = "Este objeto está mal colocado. Por favor, coloque em outro lugar ou tente girar." -adviser.tutorial.choose_doctor = "Veja as habilidades de cada médico antes de escolher um." -adviser.tutorial.rotate_and_place_reception = "Coloque a Recepçäo e aperte o botäo direito do mouse para girá-la." +adviser.tutorial.receptionist_invalid_position = "Näo é possível colocar sua Recepcionista aqui." +adviser.tutorial.door_in_invalid_position = "Você tentou colocar a porta em um lugar incorreto. Tente em outro lugar da grade azul." +adviser.tutorial.next_receptionist = "Clique no ícone que pisca para ver a seguinte Recepcionista disponível." +adviser.tutorial.object_in_invalid_position = "Este objeto está mal colocado. Por favor, coloque-o em outro lugar ou tente girá-lo." +adviser.tutorial.choose_doctor = "Veja as habilidades de cada Médico antes de escolher um." +adviser.tutorial.rotate_and_place_reception = "Coloque a Recepçäo e clique com o botäo direito do mouse para girá-la." adviser.tutorial.accept_purchase = "Clique com o botäo esquerdo no ícone que pisca para colocá-lo." -adviser.tutorial.room_too_small = "A marca azul desta sala é muito pequena. Arraste-a ou aumente o seu tamanho." +adviser.tutorial.room_too_small = "A marca azul desta sala é muito pequena. Arraste-a ou aumente seu tamanho." adviser.tutorial.room_big_enough = "A marca azul é agora suficientemente grande. Se quiser, pode movê-la ou colocá-la." -adviser.tutorial.start_tutorial = "Leia as instruçöes. Quando terminar, aperte o botäo esquerdo do mouse para começar o tutorial." +adviser.tutorial.start_tutorial = "Leia as instruçöes. Quando terminar, clique o botäo esquerdo do mouse para começar o tutorial." adviser.tutorial.place_door = "Mova o mouse ao redor das paredes marcadas de azul para colocar a porta." -adviser.tutorial.select_receptionists = "Clique no ícone que pisca para ver as recepcionistas que estäo disponíveis." +adviser.tutorial.select_receptionists = "Clique no ícone que pisca para ver as Recepcionistas que estäo disponíveis." adviser.tutorial.order_one_reception = "Clique na linha que pisca com o botäo esquerdo do mouse para comprar uma Recepçäo." -adviser.tutorial.place_windows = "Coloque as janelas da mesma forma que a porta. Se näo quiser janelas, näo tem que as colocar." +adviser.tutorial.place_windows = "Coloque as janelas da mesma forma que a porta. Se näo quiser janelas, näo precisa colocá-las." adviser.tutorial.select_diagnosis_rooms = "Clique com o botäo esquerdo no ícone que pisca para ver a lista de salas de diagnóstico." -adviser.tutorial.reception_invalid_position = "A Recepçäo ficou cinzenta porque näo é possível colocá-la aqui. Mova ou gire-a." -adviser.tutorial.build_pharmacy = "Parabéns! Agora, construa uma farmácia e contrate uma enfermeira para que o seu hospital funcione." -adviser.room_requirements.pharmacy_need_nurse = "Contrate uma enfermeira para a farmácia." -adviser.room_requirements.op_need_two_surgeons = "Contrate dois cirurgiöes para a Sala de Cirurgia." -adviser.room_requirements.training_room_need_consultant = "Você precisará contratar um especialista para dar conferências nesta Sala de Formaçäo." -adviser.room_requirements.research_room_need_researcher = "Você precisará contratar um médico pesquisador para utilizar o centro de pesquisa." -adviser.room_requirements.op_need_ward = "É necessário construir uma Enfermaria para os pacientes que väo ser operados." -adviser.room_requirements.reception_need_receptionist = "Você precisa contratar uma recepcionista para atender seus pacientes." +adviser.tutorial.reception_invalid_position = "A Recepçäo ficou cinza porque näo é possível colocá-la aqui. Mova ou gire-a." +adviser.tutorial.build_pharmacy = "Parabéns! Agora, construa uma Farmácia e contrate uma Enfermeira para fazer seu hospital funcionar." +adviser.room_requirements.pharmacy_need_nurse = "Contrate uma Enfermeira para a Farmácia." +adviser.room_requirements.op_need_two_surgeons = "Contrate dois cirurgiöes para operarem na Sala de Cirurgia." +adviser.room_requirements.training_room_need_consultant = "Você precisa contratar um Consultor para dar aulas naquela Sala de Treinamento." +adviser.room_requirements.research_room_need_researcher = "Você precisa contratar um Médico com habilidades em Pesquisa para usar o Centro de Pesquisa." +adviser.room_requirements.op_need_ward = "Você precisa construir uma Enfermaria para os pacientes que väo ser operados." +adviser.room_requirements.reception_need_receptionist = "Você precisa contratar uma Recepcionista para atender os seus pacientes." adviser.room_requirements.op_need_another_surgeon = "Você precisa contratar um outro cirurgiäo para usar a Sala de Cirurgia." -adviser.room_requirements.gps_office_need_doctor = "Contrate um médico para o Consultório de Clínica Geral." -adviser.room_requirements.ward_need_nurse = "Contrate uma enfermeira para trabalhar na Enfermaria." -adviser.room_requirements.psychiatry_need_psychiatrist = "Agora que construiu uma sala de psiquiatria, você precisará de um psiquiatra." -introduction_texts.level6 = "Utilize toda a sua capacidade para criar um hospital que funcione bem, cure muitos pacientes e trate qualquer caso que apareça.//Este ambiente é especialmente propenso a germes e infecçöes. A menos que mantenha uma limpeza rigorosa na sua instituiçäo, enfrentará uma série de epidemias entre os pacientes. Procure obter um lucro de $20.000 e fazer o valor do seu hospital superar os $140.000." -introduction_texts.level3 = "Desta vez, o seu hospital estará em uma área rica.//O Ministério da Saúde espera que você cure muitos pacientes. Ganhe uma boa reputaçäo para começar, e uma vez que o hospital comece a funcionar, concentre-se em ganhar o máximo de dinheiro possível. Também pode haver emergências, que ocorrem quando muitos pacientes chegam com a mesma doença. Se você os curar dentro de um prazo determinado, aumentará sua reputaçäo e ganhará um grande extra. Você precisará construir uma Sala de Cirurgia e uma Enfermaria para tratar doenças como o complexo de rei. Ganhe $20.000 para superar este nível." -introduction_texts.level14 = "Você enfrentará mais um desafio: um hospital surpresa totalmente imprevisível. Se conseguir ter êxito, será o vencedor dos vencedores. E näo espere que seja fácil, pois é a tarefa mais difícil que você enfrentará. Boa sorte!" -introduction_texts.level5 = "Este será um hospital concorrido, que tratará casos muito variados.//Seus médicos säo recém-formados, entäo é fundamental construir uma Sala de Formaçäo para que eles atinjam o nível necessário. Você só tem três especialistas para treinar seus funcionários inexperientes, entäo mantenha-os satisfeitos. O hospital está localizado sobre a falha geológica de San Android, e sempre há risco de terremotos. Os terremotos causaräo danos significativos às suas máquinas e afetaräo o bom funcionamento do seu hospital. Aumente sua reputaçäo para 400 e obtenha $50.000 para vencer. Além disso, cure 200 pacientes." -introduction_texts.level1 = "Bem-vindo ao seu primeiro hospital!//Para fazê-lo funcionar, coloque uma Recepçäo, construa um Consultório de Clínica Geral e contrate uma recepcionista e um médico. Em seguida, espere que os pacientes cheguem. Seria uma boa ideia construir uma Psiquiatria e contratar um psiquiatra. Uma Farmácia e uma enfermeira säo fundamentais para curar seus pacientes. Cuidado com os casos malignos de cabeça inflada; eles säo tratados na Sala de Inflatoterapia. Cure 10 pessoas e assegure-se de que sua reputaçäo näo seja inferior a 200." -introduction_texts.level7 = "Aqui, você estará sob a estrita vigilância do Ministério da Saúde, entäo faça com que suas contas reflitam excelentes lucros e aumente sua reputaçäo.//Näo podemos permitir mortes desnecessárias; elas näo beneficiam o negócio. Certifique-se de que seus funcionários estejam em plena forma e que você tenha todos os equipamentos necessários. Alcance uma reputaçäo de 600 e um saldo bancário de $200.000." -introduction_texts.level4 = "Mantenha seus pacientes felizes e trate-os com a maior eficácia possível, reduzindo ao máximo o número de óbitos.//Sua reputaçäo está em jogo, entäo procure aumentá-la ao máximo. Näo se preocupe muito com dinheiro, pois você o ganhará mais rápido à medida que sua reputaçäo cresce. A partir de agora, você poderá treinar seus médicos e ampliar seus conhecimentos, permitindo-os curar pacientes com enfermidades mais difíceis. Alcance uma reputaçäo acima de 500." -introduction_texts.level18 = "" -introduction_texts.level13 = "Sua incrível habilidade como diretor do hospital chamou a atençäo da Divisäo Secreta Especial do Serviço Secreto Especial. Tenho um trabalho especial para você. Há um hospital infestado de ratos que precisa de um exterminador eficiente. Você deve eliminar todos os ratos antes que o pessoal de Manutençäo limpe toda a sujeira. Você acha que está à altura dessa missäo?" -introduction_texts.level8 = "Depende apenas de você construir o hospital mais rentável e eficiente possível.//As pessoas aqui säo bastante ricas, entäo tente arrecadar o máximo possível. Lembre-se que curar as pessoas é importante, mas o que PRECISAMOS é do dinheiro delas. Arranque todo o dinheiro dos pacientes. Acumule a enorme quantia de $300.000 para completar este nível." +adviser.room_requirements.gps_office_need_doctor = "Contrate um Médico para atender no Consultório de Clínica Geral." +adviser.room_requirements.ward_need_nurse = "Contrate uma Enfermeira para trabalhar na Enfermaria." +adviser.room_requirements.psychiatry_need_psychiatrist = "Agora que construiu uma Psiquiatria, precisará de um Psiquiatra." +introduction_texts.level6 = " Use todo o seu conhecimento para montar um hospital eficiente e bem administrado que gere um lucro saudável e consiga lidar com qualquer coisa que o público doente possa trazer. Você precisará estar ciente de que o ambiente, aqui, é especialmente propenso a germes e infecçöes. A menos que mantenha uma escrupulosa limpeza na sua instituiçäo, terá que fazer frente a uma série de epidemias entre os Pacientes. Procure obter um lucro de $20.000 e fazer o valor do seu hospital superar os $140.000." +introduction_texts.level3 = " Desta vez, você colocará o seu hospital em uma área rica. O Ministério da Saúde espera que você consiga curar muitos Pacientes. Você terá que ganhar uma boa reputaçäo para começar, mas uma vez que o hospital comece a funcionar, concentre-se em ganhar todo o dinheiro que puder. Também podem haver Emergências. Elas ocorrem quando chega muita gente que sofre da mesma doença. Se você os curar dentro de um prazo determinado, conseguirá aumentar a sua reputaçäo e ganhar um grande extra. Haverá doenças, como o Complexo de Rei, e você deverá ter orçamento para construir uma Sala de Cirurgia e, junto a ela, uma Enfermaria. Você tem que ganhar $20.000 para superar este nível." +introduction_texts.level14 = " Ainda tem mais um desafio: um hospital surpresa totalmente imprevisível. Se conseguir ter êxito, será o vencedor dos vencedores. E näo espere que seja fácil, porque é a tarefa mais difícil que você enfrentará. Boa sorte!" +introduction_texts.level5 = " Este será um Hospital movimentado, lidando com uma ampla variedade de casos. Os seus Médicos acabaram de sair da faculdade, por isso é fundamental que construa uma Sala de Treinamento para que alcancem o nível de formaçäo necessário. Você só tem três Consultores para ajudar a ensinar sua equipe inexperiente, entäo mantenha-os felizes. Você deve ter em mente que o hospital está localizado sobre a falha geológica de San Android. Sempre há risco de terremoto. Os terremotos provocaräo danos importantes nas suas máquinas e alteraräo o bom funcionamento do seu hospital. Aumente a sua reputaçäo até 400 e consiga ganhos de $50.000 para triunfar. Além disso, cure 200 Pacientes." +introduction_texts.level1 = " Bem-vindo ao seu primeiro Hospital!// Para fazê-lo funcionar, coloque uma Recepçäo, construa um Consultório de Clínica Geral e contrate uma Recepcionista e um Médico. Em seguida, espere que cheguem os Pacientes. Seria uma boa ideia construir uma Psiquiatria e contratar um Psiquiatra. Uma Farmácia e uma Enfermeira säo essenciais para curar os seus Pacientes. Cuidado com os casos malignos de Cabeça Inflada; eles säo solucionados na sala de Inflatoterapia. Você terá que curar 10 pessoas e garantir que a sua reputaçäo näo seja inferior a 200." +introduction_texts.level7 = " Aqui, você estará sob a estrita vigilância do Ministério da Saúde, entäo faça com que suas contas reflitam excelentes lucros e aumente a sua reputaçäo. Näo podemos permitir que haja mortes desnecessárias; isso näo beneficia o negócio. Certifique-se de que os seus funcionários estejam em excelente forma e que você tenha todo o equipamento necessário. Obtenha uma reputaçäo de 600 e um saldo bancário de $200.000." +introduction_texts.level4 = " Mantenha seus Pacientes felizes e trate-os com a maior eficácia possível, reduzindo ao máximo o número de óbitos. A sua reputaçäo está em jogo, entäo procure aumentá-la o máximo que puder. Näo se preocupe muito com o dinheiro; você irá ganhando à medida que cresce a sua reputaçäo. Também poderá treinar seus Médicos para ampliar suas conhecimentos. Eles poderäo curar os Pacientes mais difíceis. Alcance uma reputaçäo acima de 500." +introduction_texts.level18 = "Ei! Você está indo à falência!" +introduction_texts.level13 = " A sua incrível habilidade como diretor do hospital atraiu a atençäo da Divisäo Secreta Especial do Serviço Secreto Especial. Tenho um trabalho especial para você. Há um hospital infestado de ratos que precisa de um exterminador eficiente. Você deve matar todos os ratos que puder antes que o pessoal de Manutençäo limpe toda a sujeira. Acha que é apto para esta missäo?" +introduction_texts.level8 = " Cabe a você montar o hospital mais rentável e eficiente possível. As pessoas por aqui säo bastante ricas, entäo tente arrecadar o máximo possível. Lembre-se de que curar as pessoas é uma coisa muito bonita, mas o que PRECISAMOS de verdade é do dinheiro delas. Arranque todo o dinheiro dessas pessoas doentes. Acumule a enorme quantia de $300.000 para completar este nível." humanoid_name_starts[1] = "GOLD" humanoid_name_starts[2] = "HIGH" humanoid_name_starts[3] = "AND" @@ -2790,14 +2788,14 @@ humanoid_name_starts[30] = "BONN" humanoid_name_starts[31] = "POG" humanoid_name_starts[32] = "WRIGHT" humanoid_name_starts[33] = "KER" -policy.diag_procedure = "Procedimento de diagnóstico" -policy.header = "NORMAS DO HOSPITAL" +policy.diag_procedure = "Procedimento de Diagnóstico" +policy.header = "POLITICA DO HOSPITAL" policy.staff_leave_rooms = "Abandonar as consultas" -policy.staff_rest = "Enviar os funcionários para descansar" -policy.diag_termination = "Conclusäo do diagnóstico" -policy.sliders.send_home = "ENVIA PARA CASA" -policy.sliders.guess = "TENTAR CURA" -policy.sliders.stop = "PARAR PROCESSO" +policy.staff_rest = "Enviar funcionários para descansar" +policy.diag_termination = "Conclusäo do Diagnóstico" +policy.sliders.send_home = "DAR ALTA" +policy.sliders.guess = "ADIVINHAR CURA" +policy.sliders.stop = "PARAR PROCEDIM." policy.sliders.staff_room = "IR DESCANSAR" menu_display.mcga_lo_res = " BAIXA RESOLUÇAO MCGA " menu_display.shadows = " SOMBRAS " @@ -2811,19 +2809,19 @@ staff_title.consultant = "Consultor" staff_title.nurse = "Enfermeira" staff_title.doctor = "Médico" staff_title.receptionist = "Recepcionista" -bank_manager.insurance_owed = "Dívida do seguro" +bank_manager.insurance_owed = "Dívida do Seguro" bank_manager.interest_rate = "Juros" -bank_manager.interest_payment = "Pagamento de juros" +bank_manager.interest_payment = "Pagamento de Juros" bank_manager.statistics_page.date = "Data" bank_manager.statistics_page.money_out = "Débito" bank_manager.statistics_page.money_in = "Crédito" bank_manager.statistics_page.balance = "Saldo" -bank_manager.statistics_page.current_balance = "Saldo atual" +bank_manager.statistics_page.current_balance = "Saldo Atual" bank_manager.statistics_page.details = "Detalhes" bank_manager.balance = "Saldo" bank_manager.inflation_rate = "Inflaçäo" -bank_manager.hospital_value = "Valor do hospital" -bank_manager.current_loan = "Empréstimo pendente" +bank_manager.hospital_value = "Valor do Hospital" +bank_manager.current_loan = "Empréstimo Pendente" menu_file_save[1] = " JOGO 1 " menu_file_save[2] = " JOGO 2 " menu_file_save[3] = " JOGO 3 " @@ -2845,74 +2843,74 @@ insurance_companies[10] = "Seguro Feliz" insurance_companies[11] = "Seguros Sindicato" insurance_companies.out_of_business = "FECHADO" room_descriptions.ward[1] = "Enfermaria//" -room_descriptions.ward[2] = "Os pacientes ficam aqui para serem atendidos por uma enfermeira enquanto säo diagnosticados. Permanecem aqui antes de serem operados.//" -room_descriptions.ward[3] = "A Enfermaria requer uma enfermeira. " +room_descriptions.ward[2] = "Os Pacientes ficam aqui para serem atendidos por uma Enfermeira enquanto säo diagnosticados. Permanecem aqui antes de serem operados.//" +room_descriptions.ward[3] = "A Enfermaria requer uma Enfermeira. " room_descriptions.blood_machine[1] = "Sala de Transfusöes//" -room_descriptions.blood_machine[2] = "O transfusiômetro é um elemento do equipamento de diagnóstico que revisa as células do sangue do paciente para descobrir do que sofrem.//" -room_descriptions.blood_machine[3] = "A sala de transfusöes requer um médico. Também precisa de manutençäo. " -room_descriptions.fracture_clinic[1] = "Traumatologia//" -room_descriptions.fracture_clinic[2] = "Os pacientes que têm a desgraça de ter fraturas vêm aqui. O removedor de gesso usa poderosos lasers industriais para cortar os gessos mais duros, causando ao paciente só uma pequena dor.//" -room_descriptions.fracture_clinic[3] = "A sala de traumatologia requer uma enfermeira. Também precisa de uma manutençäo muito frequente. " +room_descriptions.blood_machine[2] = "O Transfusiômetro é um equipamento de diagnóstico que analisa as células do sangue do Paciente para descobrir do que ele sofre.//" +room_descriptions.blood_machine[3] = "A Sala de Transfusäo requer um Médico. Também precisa de manutençäo. " +room_descriptions.fracture_clinic[1] = "Sala de Ortopedia//" +room_descriptions.fracture_clinic[2] = "Os Pacientes que têm a desgraça de ter fraturas vêm aqui. O Removedor de Gesso usa poderosos lasers industriais para cortar os gessos mais duros, causando ao Paciente apenas uma pequena dor.//" +room_descriptions.fracture_clinic[3] = "A Sala de Ortopedia requer uma Enfermeira. Também precisa de manutençäo de tempos em tempos. " room_descriptions.cardiogram[1] = "Cardiologia//" -room_descriptions.cardiogram[2] = "Os pacientes säo diagnosticados aqui, antes de retornarem para o Consultório de Clínica Geral para conseguir um tratamento.//" -room_descriptions.cardiogram[3] = "A Cardiologia requer um médico. Também precisa de manutençäo. " +room_descriptions.cardiogram[2] = "Os Pacientes säo diagnosticados aqui antes de retornarem ao Consultório de Clínica Geral para receber tratamento.//" +room_descriptions.cardiogram[3] = "A Cardiologia requer um Médico. Também precisa de manutençäo. " room_descriptions.decontamination[1] = "Descontaminaçäo//" -room_descriptions.decontamination[2] = "Os pacientes que estiveram expostos à radiaçäo säo enviados rapidamente à consulta de descontaminaçäo. Esta consulta dispöe de uma ducha que os purifica de toda a horrível radioatividade e sujeira.//" -room_descriptions.decontamination[3] = "A ducha descontaminadora requer um médico. Também precisa de um zelador que se ocupe da sua manutençäo. " +room_descriptions.decontamination[2] = "Os Pacientes que estiveram expostos à radiaçäo säo enviados rapidamente à Sala de Descontaminaçäo. Esta sala dispöe de uma ducha que os purifica de toda a horrível radioatividade e sujeira.//" +room_descriptions.decontamination[3] = "A Ducha Descontaminadora requer um Médico. Ela também precisa de um Zelador que se ocupe da manutençäo. " room_descriptions.jelly_vat[1] = "Banho Gelatinoso//" -room_descriptions.jelly_vat[2] = "Os pacientes que sofrem da risível doença da gelatinite devem ir a cambalear-se para a consulta de gelatinite e ser inundados no banheiro gelatinoso. Isto faz com que se curem de um modo que näo resulta de tudo compreensível para a profissäo médica.//" -room_descriptions.jelly_vat[3] = "O banho gelatinoso requer um médico. Também precisa de um zelador para a sua manutençäo. " +room_descriptions.jelly_vat[2] = "Os Pacientes que sofrem da risível doença da Gelatinite devem ir a cambalear-se para a sala de Gelatinite e ser inundados no banheiro gelatinoso. Isto faz com que se curem de um modo que näo resulta de tudo compreensível para a profissäo médica.//" +room_descriptions.jelly_vat[3] = "O Banho Gelatinoso requer um Médico. Também precisa de um Zelador para a sua manutençäo. " room_descriptions.gp[1] = "Consultório de Clínica Geral//" -room_descriptions.gp[2] = "Esta é a consulta mais importante do seu hospital. Os novos pacientes säo enviados aqui para averiguar o que é que eles têm. Entäo, ou fazem outro diagnóstico ou mandam para uma consulta onde possam ser curados. Possivelmente queira construir outro consultório se o primeiro tiver muito trabalho. Quanto maior for o consultório e quanto mais objetos colocar nele, maior prestígio terá o médico. O mesmo acontece com todas as consultas abertas.//" -room_descriptions.gp[3] = "O consultório geral requer um médico. " -room_descriptions.hair_restoration[1] = "Peloterapia//" -room_descriptions.hair_restoration[2] = "Os pacientes que sofrem de calvície seräo enviados ao pêlo-restaurador desta sala. Um médico ligará o pêlo-restaurador, que, rapidamente, implantará na cabeça do paciente ar puro.//" -room_descriptions.hair_restoration[3] = "A consulta de peloterapia requer um médico. Também precisa de manutençäo periódica. " +room_descriptions.gp[2] = "Esta é a sala mais importante do seu hospital. Os novos Pacientes säo enviados aqui para averiguar o que têm. Entäo, ou fazem outro diagnóstico ou säo encaminhados para uma sala onde possam ser curados. Possivelmente, você queira construir outro consultório se o primeiro tiver muito trabalho. Quanto maior for o consultório e quanto mais objetos colocar nele, maior prestígio terá o Médico. O mesmo acontece com todas as salas ocupadas.//" +room_descriptions.gp[3] = "O Consultório de Clínica Geral requer um Médico. " +room_descriptions.hair_restoration[1] = "Pêloterapia//" +room_descriptions.hair_restoration[2] = "Os Pacientes que sofrem de Calvície seräo enviados ao Restaurador de Pêlo desta sala. Um Médico ligará o Restaurador de Pêlo, que rapidamente implantará ar puro na cabeça do Paciente.//" +room_descriptions.hair_restoration[3] = "A Sala de Pêloterapia requer um Médico. Também precisa de manutençäo periódica. " room_descriptions.inflation[1] = "Inflatoterapia//" -room_descriptions.inflation[2] = "Os pacientes que sofrem a dolorosa doença de terem a cabeça inflada devem ir à sala de inflatoterapia, será desinflada sua cabeça e em seguida volta a ser inflada à pressäo correta.//" -room_descriptions.inflation[3] = "A Inflatoterapia requer um médico. Também precisa de um zelador que se ocupe do seu bom funcionamento. " +room_descriptions.inflation[2] = "Os pacientes que sofrem a dolorosa doença de terem a cabeça inflada devem ir à sala de inflatoterapia, será desinflada sua cabeça e em seguida vota a ser inflada à pressäo correta.//" +room_descriptions.inflation[3] = "A Inflatoterapia requer um Médico. Também precisa de um Zelador para fazer a suas manutençäo. " room_descriptions.psych[1] = "Psiquiatria//" -room_descriptions.psych[2] = "Os pacientes que säo diagnosticados com uma doença psiquiátrica têm que ir a uma consulta de psiquiatria para receber o tratamento. Os psiquiatras também podem realizar diagnósticos para saber que tipo de doença que sofrem os pacientes, e se estas säo do tipo mental, podem tratá-los deitando-os no divä.//" -room_descriptions.psych[3] = "A sala de psiquiatria requer um médico especializado em psiquiatria. " +room_descriptions.psych[2] = "Os Pacientes diagnosticados com uma doença psiquiátrica devem ir à Psiquiatria para receber tratamento. Os psiquiatras também podem realizar diagnósticos para saber que tipo de doença os Pacientes sofrem e, se forem do tipo mental, podem tratá-los fazendo-os deitar em um divä.//" +room_descriptions.psych[3] = "A Psiquiatria requer um Médico especializado em Psiquiatria. " room_descriptions.operating_theatre[1] = "Sala de Cirurgia//" -room_descriptions.operating_theatre[2] = "Esta importante instalaçäo serve para curar um grande número de doenças. A Sala de Cirurgia tem que ser espaçosa e deve estar bem equipada. É uma parte essencial do seu hospital.//" -room_descriptions.operating_theatre[3] = "A Sala de Cirurgia requer dois médicos especializados em cirurgia. " +room_descriptions.operating_theatre[2] = "Esta importante instalaçäo serve para curar um grande número de doenças. A Sala de Cirurgia deve ser espaçosa e estar bem equipada. É uma parte essencial do seu hospital.//" +room_descriptions.operating_theatre[3] = "A Sala de Cirurgia requer dois Médicos especializados em cirurgia. " room_descriptions.no_room[1] = "" room_descriptions.x_ray[1] = "Sala de Raio-X//" -room_descriptions.x_ray[2] = "O Raio-X fotografa o interior do paciente empregando uma radiaçäo especial para ajudar a equipe a descobrir o que acontece.//" -room_descriptions.x_ray[3] = "A sala de Raio-X requer um médico. Também precisa de manutençäo. " +room_descriptions.x_ray[2] = "A Sala de Raio-X utiliza radiaçäo especial para fotografar o interior do Paciente, ajudando a equipe a descobrir o que acontece.//" +room_descriptions.x_ray[3] = "A Sala de Raio-X requer um Médico. Também precisa de manutençäo. " room_descriptions.tv_room[1] = "TV ROOM NOT USED" room_descriptions.staff_room[1] = "Sala de Descanso//" -room_descriptions.staff_room[2] = "Os seus funcionários se cansam quando realizam o seu trabalho. Precisam desta sala para descansar e se refrescar. Os funcionários cansados säo mais lentos, pedem mais dinheiro e por fim väo embora. Também cometem mais erros. Vale a pena construir uma sala que tenha muitos passatempos. Assegure-se de que há lugar para vários funcionários ao mesmo tempo. " +room_descriptions.staff_room[2] = "Os seus funcionários se cansam quando realizam o seu trabalho. Precisam desta sala para descansar e se refrescar. Os funcionários cansados säo mais lentos, pedem mais dinheiro e por fim väo embora. Também cometem mais erros. Vale a pena construir uma sala que tenham muitos passatempos. Assegure-se de que há lugar para vários funcionários ao mesmo tempo. " room_descriptions.slack_tongue[1] = "Laringologia//" -room_descriptions.slack_tongue[2] = "Os pacientes diagnosticados com língua comprida no Consultório de Clínica Geral seräo enviados aqui para receber tratamento. O médico utilizará uma máquina de alta tecnologia para esticar a língua e cortá-la, assim o paciente ficará curado.//" -room_descriptions.slack_tongue[3] = "A sala de laringologia requer um médico. Também precisa de manutençäo muito frequente. " -room_descriptions.dna_fixer[1] = "Genética//" -room_descriptions.dna_fixer[2] = "Os pacientes que foram manipulados por alienígenas devem ter seu DNA substituído nesta sala. O reparador de DNA é uma máquina complexa e seria sensato ter um extintor na sala, só por garantia.//" -room_descriptions.dna_fixer[3] = "O reparador de DNA requer que um zelador o revise de vez em quando. Também requer um médico especializado em pesquisa para poder usá-lo. " -room_descriptions.training[1] = "Sala de Formaçäo//" -room_descriptions.training[2] = "Os seus residentes e médicos podem obter uma valiosa qualificaçäo extra aprendendo nesta sala. Um especialista em cirurgia, pesquisa ou psiquiatria ensinará a sua especialidade aos médicos que recebem formaçäo. Os médicos que já possuem estas especialidades veräo a sua habilidade aumentar enquanto estäo aqui.//" -room_descriptions.training[3] = "A Sala de Formaçäo requer um especialista. " +room_descriptions.slack_tongue[2] = "Os Pacientes diagnosticados com Língua Comprida no Consultório de Clínica Geral seräo enviados aqui para receber tratamento. O Médico utilizará uma máquina de alta tecnologia para esticar a língua e cortá-la, assim o Paciente ficará curado.//" +room_descriptions.slack_tongue[3] = "A Sala de Laringologia requer um Médico. Também precisa de manutençäo de tempos em tempos. " +room_descriptions.dna_fixer[1] = "Clínica de DNA//" +room_descriptions.dna_fixer[2] = "Os Pacientes que foram manipulados por alienígenas devem ter seu DNA substituído nesta sala. O Reparador de DNA é uma máquina complexa e seria sensato ter um extintor na sala, só por garantia.//" +room_descriptions.dna_fixer[3] = "O Reparador de DNA requer que um Zelador o revise de vez em quando. Também requer um Médico especializado em pesquisa para poder usá-lo. " +room_descriptions.training[1] = "Sala de Treinamento//" +room_descriptions.training[2] = "Os residentes e Médicos podem obter uma valiosa qualificaçäo extra aprendendo nesta sala. Um Consultor com habilidades em Cirurgia, Pesquisa ou Psiquiatria transmitirá essas habilidades a qualquer Médico em treinamento. Os Médicos que já possuem essas especialidades veräo sua habilidade aumentar enquanto estäo aqui.//" +room_descriptions.training[3] = "A Sala de Treinamento requer um Consultor. " room_descriptions.toilets[1] = "Banheiro//" -room_descriptions.toilets[2] = "Os pacientes estäo sentindo um chamado da natureza e precisam se aliviar no conforto de suas instalaçöes de banheiro. Pode construir mais banheiros e pias se esperar muitos visitantes. Em alguns casos, terá que colocar mais banheiros em outras partes do hospital. " +room_descriptions.toilets[2] = "Os Pacientes estäo sentindo o chamado da natureza e precisam se aliviar no conforto das suas instalaçöes de banheiro. Você pode construir mais banheiros e pias se esperar muitos visitantes. Em alguns casos, terá que colocar mais banheiros em outras partes do hospital. " room_descriptions.ultrascan[1] = "Ultra Scanner//" -room_descriptions.ultrascan[2] = "O ultra scanner é, virtualmente, o mais avançado em equipamentos de diagnóstico. Tem um preço alto, mas vale a pena se quiser que o seu hospital realize diagnósticos excelentes.//" -room_descriptions.ultrascan[3] = "O ultra scanner requer um médico. Também precisa de manutençäo. " +room_descriptions.ultrascan[2] = "O Ultra Scanner é, virtualmente, o mais avançado em equipamentos de diagnóstico. Tem um preço alto, mas vale a pena se você quiser que o seu hospital realize diagnósticos excelentes.//" +room_descriptions.ultrascan[3] = "O Ultra Scanner requer um Médico. Também precisa de manutençäo. " room_descriptions.pharmacy[1] = "Farmácia//" -room_descriptions.pharmacy[2] = "Os pacientes que foram diagnosticados e que devem tomar um medicamento devem visitar a farmácia para tomá-lo. Quantos mais remédios forem descobertos e estiverem disponíveis, mais concorrida estará a farmácia. Possivelmente queira construir outra farmácia mais para frente.//" -room_descriptions.pharmacy[3] = "A farmácia requer uma enfermeira. " +room_descriptions.pharmacy[2] = "Os Pacientes diagnosticados que devem tomar um medicamento precisam visitar a farmácia para obtê-lo. Quanto mais remédios forem descobertos e estiverem disponíveis, mais concorrida estará a Farmácia. Possivelmente, você queira construir outra Farmácia mais para frente.//" +room_descriptions.pharmacy[3] = "A Farmácia requer uma Enfermeira. " room_descriptions.research[1] = "Centro de Pesquisa//" -room_descriptions.research[2] = "No centro de pesquisa säo inventados ou melhorados novos remédios e curas. É uma parte essencial do seu hospital e fará maravilhas para elevar a sua porcentagem de curas.//" -room_descriptions.research[3] = "O Centro de Pesquisa requer um médico especializado em pesquisa. " +room_descriptions.research[2] = "No Centro de Pesquisa, novos remédios e curas säo inventados ou melhorados. É uma parte essencial do seu hospital e fará maravilhas para elevar sua porcentagem de curas.//" +room_descriptions.research[3] = "O Centro de Pesquisa requer um Médico especializado em Pesquisa. " room_descriptions.general_diag[1] = "Diagnóstico Geral//" -room_descriptions.general_diag[2] = "Aqui säo examinados os pacientes que precisam de outro diagnóstico. Se em uma consulta näo descobrir os seus problemas, o diagnosticador geral normalmente consegue. Em seguida, volta a enviar os pacientes para a consulta para analisar os resultados obtidos aqui.//" -room_descriptions.general_diag[3] = "A sala de Diagnóstico Geral requer um médico. " +room_descriptions.general_diag[2] = "Aqui säo examinados os Pacientes que precisam de outro diagnóstico. Se um Consultório de Clínica Geral näo descobrir seus problemas, o Diagnóstico Geral normalmente consegue. Em seguida, os Pacientes säo enviados novamente para a consulta para analisar os resultados obtidos aqui.//" +room_descriptions.general_diag[3] = "A Sala de Diagnóstico Geral requer um Médico. " room_descriptions.scanner[1] = "Scanner//" -room_descriptions.scanner[2] = "É diagnosticado com precisäo os pacientes empregando um sofisticado scanner. Em seguida, väo para o Consultório de Clínica Geral para que o médico veja o tratamento posterior.//" -room_descriptions.scanner[3] = "O scanner requer um médico. Também precisa de manutençäo. " +room_descriptions.scanner[2] = "Os Pacientes säo diagnosticados com precisäo utilizando um sofisticado Scanner. Em seguida, väo para o Consultório de Clínica Geral para que o Médico veja o tratamento posterior.//" +room_descriptions.scanner[3] = "O Scanner requer um Médico. Também precisa de manutençäo. " room_descriptions.electrolysis[1] = "Eletrólise//" -room_descriptions.electrolysis[2] = "Os pacientes com peludismo säo enviados para esta consulta, onde uma máquina especial de eletrólise elimina os pelos e fecha os poros com eletricidade empregando um composto parecido ao cal.//" -room_descriptions.electrolysis[3] = "A sala de eletrólise requer um médico. Também precisa que um zelador faça a sua manutençäo. " +room_descriptions.electrolysis[2] = "Os Pacientes com Peludismo säo enviados para esta sala, onde uma máquina especial de Eletrólise elimina os pelos e fecha os poros com eletricidade empregando um composto parecido ao cal.//" +room_descriptions.electrolysis[3] = "A Sala de Eletrólise requer um Médico. Também precisa que um Zelador faça a sua manutençäo. " staff_list.skill = "NIVEL" staff_list.morale = "MORAL" staff_list.tiredness = "CANSAÇO" From 715c6ee2c85f73f9e42d7ee301d253aa892d6cbc Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Wed, 6 Nov 2024 20:35:09 +0000 Subject: [PATCH 73/85] updating vip names --- CorsixTH/Lua/languages/japanese.lua | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/CorsixTH/Lua/languages/japanese.lua b/CorsixTH/Lua/languages/japanese.lua index b1b296aba4..9f9700b45c 100644 --- a/CorsixTH/Lua/languages/japanese.lua +++ b/CorsixTH/Lua/languages/japanese.lua @@ -2054,16 +2054,16 @@ fax = { } vip_names = { - [1] = "トランプトン市長", - [2] = "ローレンス・ナイチンゲール", - [3] = "オランダ王ベルナルド", - [4] = "ビルマ民主党反対派リーダー、アウンサンスーチー", - [5] = "レジナルド・クランブリー卿", - [6] = "新世紀教会 大司教", - [7] = "クロフォード・パーヴス市議会議員", - [8] = "ロケット・ロニー・ジェプソン", - [9] = "アーロン・マスク", - [10] = "L.F.プロブスト3世", + [1] = "豊臣家康市長", + [2] = "俳優ジェームズ・ポンド", + [3] = "ハヤト=ミヤザキ監督", + [4] = "野々口英世", + [5] = "アバルート・アインシュイタン卿", + [6] = "小泉進三郎 民主自由党代表", + [7] = "チャーチル・チャップリソ市議会議員", + [8] = "音楽家 ジャン・レノ", + [9] = "大リーガー 小谷翔平", + [10] = "アイザック ニュートソ三世", health_minister = "保健省大臣", } From 9a12b692ab8225e7d0e6b1b728238c64982ba9e6 Mon Sep 17 00:00:00 2001 From: lewri Date: Sun, 10 Nov 2024 15:28:57 +0000 Subject: [PATCH 74/85] Stop mouse capture on TH Selection screen --- CorsixTH/Lua/app.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CorsixTH/Lua/app.lua b/CorsixTH/Lua/app.lua index 133a0041bb..38f49b2f5e 100644 --- a/CorsixTH/Lua/app.lua +++ b/CorsixTH/Lua/app.lua @@ -169,7 +169,6 @@ function App:init() self.video:setBlueFilterActive(false) SDL.wm.setIconWin32() - self:setCaptureMouse() self.caption = "CorsixTH" -- Create gamelog file if missing @@ -182,6 +181,7 @@ function App:init() -- Put up the loading screen if good_install_folder then + self:setCaptureMouse() self.video:startFrame() self.gfx:loadRaw("Load01V", 640, 480):draw(self.video, math.floor((self.config.width - 640) / 2), math.floor((self.config.height - 480) / 2)) From 0ddfd256fba2a6bde076ee1e0a35bef0e90eca45 Mon Sep 17 00:00:00 2001 From: lewri Date: Sun, 10 Nov 2024 16:20:20 +0000 Subject: [PATCH 75/85] Shorten French cheat strings Co-Authored-By: Sanndow <35631194+sanndow@users.noreply.github.com> --- CorsixTH/Lua/languages/french.lua | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/CorsixTH/Lua/languages/french.lua b/CorsixTH/Lua/languages/french.lua index 2be3b87a23..62c1d73da0 100644 --- a/CorsixTH/Lua/languages/french.lua +++ b/CorsixTH/Lua/languages/french.lua @@ -1126,11 +1126,11 @@ cheats_window = { toggle_infected = "Faire apparaître des patients contagieux.", increase_prices = "Augmenter les prix", decrease_prices = "Diminuer les prix", - reset_death_count = "Remettre à zéro le nombre de décès à l’hôpital", + reset_death_count = "Remettre à zéro le nombre de décès", toggle_epidemic = "Active la possibilité d'épidémies", - show_infected = "Montrer/cacher les icônes des infectés pour les épidémies découvertes et actives", + show_infected = "Montrer les icônes des infectés", toggle_earthquake = "Activer les tremblements de terre", - max_reputation = "Mettre la réputation de l'hôpital au maximum" + max_reputation = "Réputation de l'hôpital au maximum" }, close = "Fermer" } @@ -1152,7 +1152,7 @@ tooltip.cheats_window = { toggle_infected = "Bascule les icônes infectés pour l'épidémie, découverte active.", increase_prices = "Augmenter tous les prix de 50% (max. 200%)", decrease_prices = "Diminuer tous les prix de 50% (min. 50%)", - reset_death_count = "Remettre à zéro le nombre de décès à l’hôpital", + reset_death_count = "Remettre à zéro le nombre de décès à l'hôpital", toggle_epidemic = "Active la possibilité d'épidémies", show_infected = "Montrer/cacher les icônes des infectés pour les épidémies découvertes et actives", toggle_earthquake = "Activer les tremblements de terre", From 68b2eea580a485bd24777bfcc38008320a213157 Mon Sep 17 00:00:00 2001 From: Toby Lane Date: Thu, 31 Oct 2024 18:05:58 +0000 Subject: [PATCH 76/85] Define log folder better --- CorsixTH/Lua/app.lua | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CorsixTH/Lua/app.lua b/CorsixTH/Lua/app.lua index bbd0d1ff3e..aab9c5b118 100644 --- a/CorsixTH/Lua/app.lua +++ b/CorsixTH/Lua/app.lua @@ -435,6 +435,9 @@ function App:initUserDirectories() self.user_campaign_dir = self.config.campaigns or conf_path:match("^(.-)[^" .. pathsep .. "]*$") .. "Campaigns" self.user_campaign_dir = setUserDir(self.user_campaign_dir, "User Campaigns") + self.user_log_dir = self.config.logs or + conf_path:match("^(.-)[^" .. pathsep .. "]*$") .. "Logs" + self.user_log_dir = setUserDir(self.user_log_dir, "Gamelogs") end --! Tries to initialize the savegame directory, returns true on success and From 191e354674dfbabb5acdffdb885b5b8131bf3427 Mon Sep 17 00:00:00 2001 From: altiereslima Date: Mon, 11 Nov 2024 20:04:17 -0300 Subject: [PATCH 77/85] Update brazilian_portuguese.lua --- CorsixTH/Lua/languages/brazilian_portuguese.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CorsixTH/Lua/languages/brazilian_portuguese.lua b/CorsixTH/Lua/languages/brazilian_portuguese.lua index db78422675..d36e8cde70 100644 --- a/CorsixTH/Lua/languages/brazilian_portuguese.lua +++ b/CorsixTH/Lua/languages/brazilian_portuguese.lua @@ -979,7 +979,7 @@ fax = { [12] = "Estou farto de atrair a atenção pública e de visitar buracos fedorentos como este! Eu me demito.", [13] = "Vá tugúrio! Vou tentar enclausurá-lo.", [14] = "Nunca vi um hospital tão espantoso. Que vergonha!", - [15] = "Estou horrorizado. Chama isso de hospital! Vou sair com um cano.", + [15] = "Estou horrorizado. Chama isso de hospital! Preciso de uma bebida urgentemente.", } } } From e44067c2fa3d808cc3861c2cabe737ea99795894 Mon Sep 17 00:00:00 2001 From: Toby Lane Date: Thu, 31 Oct 2024 12:22:48 +0000 Subject: [PATCH 78/85] Write logs to unique files --- CorsixTH/Lua/app.lua | 23 +++++------------------ CorsixTH/Lua/world.lua | 2 +- 2 files changed, 6 insertions(+), 19 deletions(-) diff --git a/CorsixTH/Lua/app.lua b/CorsixTH/Lua/app.lua index aab9c5b118..868707996f 100644 --- a/CorsixTH/Lua/app.lua +++ b/CorsixTH/Lua/app.lua @@ -179,7 +179,7 @@ function App:init() self:setCaptureMouse() self.caption = "CorsixTH" - -- Create gamelog file if missing + -- Create gamelog file. self:initGamelogFile() -- Prereq 2: Load and initialise the graphics subsystem @@ -389,21 +389,10 @@ function App:init() return true end ---! Works out the intended location of the gamelog file. ---!return full path gamelog should exist at -function App:getGamelogPath() - local config_path = self.command_line["config-file"] or "" - config_path = config_path:match("^(.-)[^" .. pathsep .. "]*$") - return config_path .. "gamelog.txt" -end - ---! Checks and creates the gamelog file if it does not exist. +--! Create the gamelog, using the launch time in the filename, and write the system information. function App:initGamelogFile() - local gamelog_path = self:getGamelogPath() - local gamelog = io.open(gamelog_path, "r") - if gamelog then gamelog:close() return end - - local fi = self:writeToFileOrTmp(gamelog_path) + self.gamelog_path = self.user_log_dir .. os.date("%y-%m-%d--%H-%M-%S--gamelog.txt", os.time(os.date("!*t"))) + local fi = self:writeToFileOrTmp(self.gamelog_path) local sysinfo = self:gamelogHeader() fi:write(sysinfo) fi:close() @@ -1958,8 +1947,6 @@ end --! Generate information about user's system and the program --!return System and program info as a string function App:gamelogHeader() - local gen_date = os.date("%Y-%m-%d %H:%M:%S") - gen_date = string.format("Gamelog generated on %s\n", gen_date) local compile_opts = TH.GetCompileOptions() local comp_details = {} for key, value in pairs(compile_opts) do @@ -1971,7 +1958,7 @@ function App:gamelogHeader() local running = string.format("%s run with api version: %s, game version: %s, savegame version: %s\n", compile_opts.jit or _VERSION, tostring(corsixth.require("api_version")), self:getVersion(), tostring(SAVEGAME_VERSION)) - return (gen_date .. compiled .. running) + return (compiled .. running) end -- Do not remove, for savegame compatibility < r1891 diff --git a/CorsixTH/Lua/world.lua b/CorsixTH/Lua/world.lua index 80d7f3e1b2..b242d6afcb 100644 --- a/CorsixTH/Lua/world.lua +++ b/CorsixTH/Lua/world.lua @@ -2088,7 +2088,7 @@ end --! Dump the contents of the game log into a file. -- This is automatically done on each error. function World:dumpGameLog() - local gamelog_path = TheApp:getGamelogPath() + local gamelog_path = TheApp.gamelog_path local fi = self.app:writeToFileOrTmp(gamelog_path) -- Start the gamelog file with the system information local sysinfo = TheApp:gamelogHeader() From f6aadeec30ae1ec84614a7bc57ba73a306b46e1c Mon Sep 17 00:00:00 2001 From: Toby Lane Date: Thu, 31 Oct 2024 13:00:08 +0000 Subject: [PATCH 79/85] Delete old logs --- CorsixTH/Lua/app.lua | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/CorsixTH/Lua/app.lua b/CorsixTH/Lua/app.lua index 868707996f..cf4b42d2e9 100644 --- a/CorsixTH/Lua/app.lua +++ b/CorsixTH/Lua/app.lua @@ -392,10 +392,25 @@ end --! Create the gamelog, using the launch time in the filename, and write the system information. function App:initGamelogFile() self.gamelog_path = self.user_log_dir .. os.date("%y-%m-%d--%H-%M-%S--gamelog.txt", os.time(os.date("!*t"))) - local fi = self:writeToFileOrTmp(self.gamelog_path) + local fi, success = self:writeToFileOrTmp(self.gamelog_path) local sysinfo = self:gamelogHeader() fi:write(sysinfo) fi:close() + if success then self:trimLogs() end -- Only trim logs if logs folder is writable +end + +--! Trims the logs folder of old game logs down to ten files. +function App:trimLogs() + local log_retention, log_table = 11, {} + for node in lfs.dir(self.user_log_dir) do + local file = self.user_log_dir .. pathsep .. node + if node:sub(-12) == "-gamelog.txt" then + table.insert(log_table, file) + end + end + table.sort(log_table, + function(a, b) return lfs.attributes(a, "modification") > lfs.attributes(b, "modification") end) + for i=log_retention, #log_table do os.remove(log_table[i]) end end --! Tries to initialize the user level and campaign directories @@ -1011,7 +1026,7 @@ function App:saveConfig() end --! Tries to open the given file or a file in OS's temp dir. --- Returns the file handler +-- Returns the file handler, and true if it was written to the intended file. --!param file The full path of the intended file --!param mode The mode in which the file is opened, defaults to write function App:writeToFileOrTmp(file, mode) @@ -1026,7 +1041,7 @@ function App:writeToFileOrTmp(file, mode) end end assert(f, "Error: cannot write to filesystem") - return f + return f, not err end function App:fixHotkeys() From e79d3eae61b001afbb5296423460e80d0465dc1f Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Wed, 13 Nov 2024 18:39:31 +0000 Subject: [PATCH 80/85] updated japanese translation --- CorsixTH/Lua/languages/japanese.lua | 374 ++++++++++++++-------------- 1 file changed, 182 insertions(+), 192 deletions(-) diff --git a/CorsixTH/Lua/languages/japanese.lua b/CorsixTH/Lua/languages/japanese.lua index 9f9700b45c..64283c9a24 100644 --- a/CorsixTH/Lua/languages/japanese.lua +++ b/CorsixTH/Lua/languages/japanese.lua @@ -47,7 +47,7 @@ tooltip.main_menu = { options = "いろいろな設定をします", map_edit = "カスタムマップを作ります", exit = "いやいや、ゲームをやめないでください!", - quit = "CorsixTHをやめようとしています。本当にやめていいですか?", + quit = "CorsixTHをやめようとしています。 本当にやめていいですか?", } new_game_window = { @@ -105,7 +105,7 @@ folders_window = { savegames_label = "セーブデータ", screenshots_label = "スクリーンショット", -- next four are the captions for the browser window, which are called from the folder setting menu - new_th_location = "ここで、新しくテーマホスピタルが インストールされたディレクトリ または ISOファイルを指定できます。新しいディレクトリを選択するとすぐにゲームが再起動されます。ファイル拡張子は現在表示されません。", + new_th_location = "ここで、新しくテーマホスピタルが インストールされたディレクトリ または ISOファイルを指定できます。 新しいディレクトリを選択するとすぐにゲームが再起動されます。 ファイル拡張子は現在表示されません。", savegames_location = "保存に使用するディレクトリを選択してください", music_location = "音楽に使用するディレクトリを選択してください", screenshots_location = "スクリーンショットに使用するディレクトリを選択してください", @@ -115,9 +115,9 @@ folders_window = { tooltip.folders_window = { browse = "フォルダの場所を参照", data_location = "CorsixTHを実行するために必要な、元のテーマホスピタルをインストールしたディレクトリまたはISOファイルの場所", - font_location = "選択した言語に必要なUnicode文字を表示できるフォントファイルの場所。これを指定しない場合、元のゲームで提供されている文字種よりも多くの文字を必要とする言語を選択できなくなります。例: 日本語、ロシア語や中国語", - savegames_location = "デフォルトでは、保存ディレクトリは設定ファイルの隣にあり、セーブデータを保存するために使用されます。または、使用するディレクトリを参照して独自のディレクトリを選択することもできます。", - screenshots_location = "デフォルトでは、スクリーンショットは設定ファイルの隣にあるフォルダに保存されます。または、使用するディレクトリを参照して独自のディレクトリを選択することもできます。", + font_location = "選択した言語に必要なUnicode文字を表示できるフォントファイルの場所 。これを指定しない場合、元のゲームで提供されている文字種よりも多くの文字を必要とする言語を選択できなくなります。 例: 日本語、ロシア語や中国語", + savegames_location = "デフォルトでは、保存ディレクトリは設定ファイルの隣にあり、セーブデータを保存するために使用されます。 または、使用するディレクトリを参照して独自のディレクトリを選択することもできます。", + screenshots_location = "デフォルトでは、スクリーンショットは設定ファイルの隣にあるフォルダに保存されます。 または、使用するディレクトリを参照して独自のディレクトリを選択することもできます。", music_location = "ディレクトリを参照して音楽ファイルの場所を選択します。 (ディレクトリは既に存在している必要があります)", browse_data = "テーマホスピタルがインストールされている別の場所を選択します (現在の場所: %1% ) ", browse_font = "別のフォントを選択します ( 現在の場所: %1% ) ", @@ -148,11 +148,11 @@ customise_window = { tooltip.customise_window = { movies = "すべてのムービーをオフに設定できます", - intro = "オープニングムービーをオン/オフできます。CorsixTHをロードするたびにオープニングムービーを再生したい場合は、グローバルムービーをオンにする必要があります", + intro = "オープニングムービーをオン/オフできます。 CorsixTHをロードするたびにオープニングムービーを再生したい場合は、グローバルムービーをオンにする必要があります", paused = "テーマホスピタルではゲームが一時停止されている場合、プレーヤーはメニューのみを使用できます。 これはCorsixTHでもデフォルト設定ですが、これをオンにすると、ゲームが一時停止されている間にすべての行動が許可されます", volume = "ボリュームを下げるボタンでケースブックも開いてしまう場合には、これをオンにしてケースブックのホットキーを Shift + C に変更します", - aliens = "適切なアニメーションがないため、エイリアンDNA病の患者は緊急要請の場合のみに来院する設定をデフォルトとしています。エイリアンDNA病の患者が緊急要請以外でも来院するようにするには、これをオフにします。", - fractured_bones = "アニメーションが不十分であるため、骨折した女性患者が来院しない設定をデフォルトとしています。骨折した女性患者も来院するようにするには、このオプションをオフにしてください。", + aliens = "適切なアニメーションがないため、エイリアンDNA病の患者は緊急要請の場合のみに来院する設定をデフォルトとしています。 エイリアンDNA病の患者が緊急要請以外でも来院するようにするには、これをオフにします。", + fractured_bones = "アニメーションが不十分であるため、骨折した女性患者が来院しない設定をデフォルトとしています。 骨折した女性患者も来院するようにするには、このオプションをオフにしてください。", average_contents = "部屋を建てるときにあなたがいつも追加する設備をゲームに記憶させたい場合は、このオプションをオンにしてください", remove_destroyed_rooms = "破壊された部屋を有料で撤去したい場合は、このオプションをオンにしてください", back = "メニューを閉じて設定メニューに戻ります", @@ -210,8 +210,8 @@ tooltip.options_window = { language_dropdown_no_font = "この言語を選択するためにはフォルダの設定からフォントを選択してください", back = "ウインドウを閉じて戻ります", scrollspeed = "スクロール速度を 1(遅い) から 10(速い) の間で設定します。デフォルトは2です。", - shift_scrollspeed = "Shiftキーを押した時のスクロール速度を 1(遅い) から 10(速い) の間で設定します。デフォルトは4です。", - zoom_speed = "カメラのズーム速度を 10(遅い) から 1000(速い) の間で設定します。デフォルトは80です。", + shift_scrollspeed = "Shiftキーを押した時のスクロール速度を 1(遅い) から 10(速い) の間で設定します。 デフォルトは4です。", + zoom_speed = "カメラのズーム速度を 10(遅い) から 1000(速い) の間で設定します。 デフォルトは80です。", apply_scrollspeed = "入力したスクロール速度で決定する", cancel_scrollspeed = "スクロール速度を変更せずに戻る", apply_shift_scrollspeed = "入力した+Shiftスクロール速度で決定する", @@ -362,7 +362,7 @@ tooltip.hotkey_window = { caption_panels = "パネルキーの設定画面を開きます", button_gameSpeedKeys = "ゲームスピードを変更するキー設定の設定画面を開きます", button_recallPosKeys = "カメラポジションを変更するキー設定の設定画面を開きます", - button_back_02 = "ホットキーの設定メイン画面に戻ります。この画面での変更内容は適用・保存されます", + button_back_02 = "ホットキーの設定メイン画面に戻ります。 この画面での変更内容は適用・保存されます", } tooltip.new_game_window = { @@ -457,7 +457,7 @@ dynamic_info = { queueing_for = "%s の順番待ち", epidemic_vaccinated = "ワクチン接種済!", }, - diagnosed = "病気が特定されました: %s ", + diagnosed = "診断確定: %s ", }, health_inspector = "衛生検査官", vip = "VIP", @@ -510,7 +510,7 @@ progress_report = { too_cold = "めちゃくちゃ寒いです。暖房機を設置してください。", percentage_pop = "% 母集団/人口", very_unhappy = "人々は不幸せです。", - too_hot = "めちゃくちゃ暑いです。暖房を調整してください。", + too_hot = "めちゃくちゃ暑いです。 暖房を調整してください。", win_criteria = "勝利条件", free_build = "自由建築", } @@ -518,7 +518,7 @@ progress_report = { policy = { staff_leave_rooms = "人手の足りない部屋へ行く", header = "病院の方針", - staff_rest = "スタッフを休憩させる疲労度", + staff_rest = "休憩させる疲労度", diag_procedure = "診断手法", diag_termination = "診断終了", sliders = { @@ -534,17 +534,8 @@ tooltip.policy = { staff_rest = "スタッフが休憩できるようになるまでの疲労度", staff_leave = "暇しているスタッフが人手を必要としている部屋に手伝いに行かせるにはここをクリック", diag_procedure = "医師の診断が「家に帰らせる」の値未満の場合は患者は自宅に送り返されます。 診断が「とにかく治療」以上の場合は患者は適切な治療が施されます。", - diag_termination = "患者の診療は「処置をストップ」の指す値と診断医師の確信が同じになるまでか、病院内全ての診断機で検査を受け終わるまで続きます。", + diag_termination = "患者の診断は、医師の診断判定が「処置をストップ」の指す値と同じになるまでか、病院内全ての診断機で検査を受け終わるまで続きます。", } -tooltip.policy = { - staff_stay = "", - close = "", - staff_rest = "", - staff_leave = "", - diag_procedure = "", - diag_termination = "患者の診断は、医師がSTOP PROCEDUREのパーセンテージに達するまで、またはすべての診断機械が試されるまで続けられます", -} - menu_charts = { casebook = " (%1%) 帳簿 ", staff_listing = " (%1%) スタッフリスト ", @@ -563,7 +554,7 @@ misc = { save_success = "セーブが成功しました", save_failed = "注意:セーブに失敗しました", low_res = "ローレゾ", - no_heliport = "病気はまだ発見されていないか、この地図にはヘリポートがありません。受付デスクを建てて受付係を雇う必要があるかもしれません。", + no_heliport = "病気はまだ発見されていないか、この地図にはヘリポートがありません。 受付デスクを建てて受付係を雇う必要があるかもしれません。", grade_adverb = { extremely = "かなり", mildly = "そこそこ", @@ -579,7 +570,7 @@ misc = { -- force = "Прискорення", pause = "一時停止", send_message_all = "すべてのプレイヤーにメッセージを送信する", - cant_treat_emergency = "病気が発見されていないため、あなたの病院はこの緊急事態を治療できません。遠慮なくもう一度試してください。", + cant_treat_emergency = "病気が発見されていないため、あなたの病院はこの緊急事態を治療できません。 遠慮なくもう一度試してください。", epidemic_no_diseases = "伝染病を作成できません - 利用可能な伝染病はありません", earthquakes_on = "地震は無効になっています", earthquakes_off = "地震が再び有効になります", @@ -735,27 +726,27 @@ object = { room_descriptions = { gp = { [1] = "診察室//", - [2] = "あなたの病院の治療の中心となるのはこの診察室です。すべての患者は自分のどこが悪いのかを知るためにまず最初にここに送られます。彼らはここからさらなる検査または治療のために各施設へ送られます。患者が多すぎる場合は別の部屋を建ててください。充実した設備と広々とした部屋は治療の効率を上げます。これはすべての部屋に当てはまります。//", + [2] = "あなたの病院の治療の中心となるのはこの診察室です 。すべての患者は自分のどこが悪いのかを知るためにまず最初にここに送られます。 彼らはここからさらなる検査または治療のために各施設へ送られます。 患者が多すぎる場合は別の部屋を建ててください。 充実した設備と広々とした部屋は治療の効率を上げます。 これはすべての部屋に当てはまります。//", [3] = "どんな医師でも診察室で働くことができます。", }, general_diag = { [1] = "検査室//", - [2] = "追加の検査が必要な患者はここに来ます。この部屋では診察室よりも医師が患者をより詳細に診察することができます。患者は診断を決定するために検査の結果を持って診察室へ戻ります。//", + [2] = "追加の検査が必要な患者はここに来ます。 この部屋では診察室よりも医師が患者をより詳細に診察することができます。 患者は診断を決定するために検査の結果を持って診察室へ戻ります。//", [3] = "どんな医師でも検査室で働くことができます。", }, ultrascan = { [1] = "超音波検査室//", - [2] = "超音波検査機は最高の検査ツールの1つです。患者に最高の検査を提供したい場合はぜひ導入してください。検査の後は再診察のため診察室に行きます。//", + [2] = "超音波検査機は最高の検査ツールの1つです。 患者に最高の検査を提供したい場合はぜひ導入してください。 検査の後は再診察のため診察室に行きます。//", [3] = "どんな医師でも診察室で働くことができます。この装置は定期メンテナンスが必要です。", }, scanner = { [1] = "スキャナー室//", - [2] = "患者はスキャナーを使用してより正確な診断を受けます。その後、再診察のため診察室に行きます。//", + [2] = "患者はスキャナーを使用してより正確な診断を受けます。 その後、再診察のため診察室に行きます。//", [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", }, blood_machine = { [1] = "血液調整機室//", - [2] = "血液調整機は、患者の血球の色をチェックして状態を判断します。血液の調査を行った後は再診察のため診察室に行きます。//", + [2] = "血液調整機は、患者の血球の色をチェックして状態を判断します。 血液の調査を行った後は再診察のため診察室に行きます。//", [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", }, x_ray = { @@ -765,62 +756,62 @@ room_descriptions = { }, cardiogram = { [1] = "心臓科//", - [2] = "ここでは、まったくスポーツをしない患者が、血圧を激しく上昇させる嫌いなランニングをさせられます。これらの指標は、医師が診断を下すのに役立ちます。//", + [2] = "ここでは、まったくスポーツをしない患者が、血圧を激しく上昇させる嫌いなランニングをさせられます。 これらの指標は、医師が診断を下すのに役立ちます。//", [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", }, fracture_clinic = { [1] = "整骨科//", - [2] = "骨を折ってしまった不幸な患者がここに来ます。接骨マシンが患者体内から不要な小骨を除去します。石膏カッターは強力な工業用レーザーを使用して、患者がほとんど痛みを感じない間に硬化したギプスを切断します。//", + [2] = "骨を折ってしまった不幸な患者がここに来ます。 接骨マシンが患者体内から不要な小骨を除去します。 石膏カッターは強力な工業用レーザーを使用して、患者がほとんど痛みを感じない間に硬化したギプスを切断します。//", [3] = "看護師のみが整骨科で働くことができます。この装置は定期メンテナンスが必要です。", }, inflation = { [1] = "空気注入室//", - [2] = "風船あたま病を持つ患者は、ここに来ます。巨大化した頭蓋骨に穴を開けてから、適切な空気圧になるよう空気を注入します。//", + [2] = "風船あたま病を持つ患者は、ここに来ます。 巨大化した頭蓋骨に穴を開けてから、適切な空気圧になるよう空気を注入します。//", [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", }, jelly_vat = { [1] = "ゼリー槽室//", - [2] = "ゼリー病で苦しんでいる患者は、ゼリー槽室へいかなければなりません。ゼリー病はゼリー槽によって直されますが、なぜこの方法で直るかは、医学的に解明されていません。//", + [2] = "ゼリー病で苦しんでいる患者は、ゼリー槽室へいかなければなりません。 ゼリー病はゼリー槽によって直されますが、なぜこの方法で直るかは、医学的に解明されていません。//", [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", }, pharmacy = { [1] = "薬局//", - [2] = "診断によって薬が必要とされた患者は、薬局を訪れるべきです。新しい治療薬が開発されるに従って、薬局の忙しさも増していくことでしょう。もし必要なら追加で薬局を建てるようにしましょう。//", + [2] = "診断によって薬が必要とされた患者は、薬局を訪れるべきです。 新しい治療薬が開発されるに従って、薬局の忙しさも増していくことでしょう。 もし必要なら追加で薬局を建てるようにしましょう。//", [3] = "看護師のみが薬局で働くことができます。", }, ward = { [1] = "病室//", - [2] = "診断の間、観察のためにここで時間を過ごします。彼らはまた手術の前に休息も取ります。横になってレモンティーを飲むという治療を受ける人もいます。//", + [2] = "診断の間、観察のためにここで時間を過ごします。彼らはまた手術の前に休息も取ります。 横になってレモンティーを飲むという治療を受ける人もいます。//", [3] = "看護師のみが病室で働くことができます", }, psych = { [1] = "精神科//", - [2] = "精神疾患のある患者は精神科医のオフィスを訪れなければなりません。そこでは精神科医が快適な椅子に座って待っています。それから彼らはカウチに横たわって診断され、最終的には魔法と賄賂で治療されます。//", + [2] = "精神疾患のある患者は精神科医のオフィスを訪れなければなりません。そこでは精神科医が快適な椅子に座って待っています。 それから彼らはカウチに横たわって診断され、最終的には魔法と賄賂で治療されます。//", [3] = "精神科医の資格を持つ医師のみが精神科で働くことができます", }, operating_theatre = { [1] = "手術室//", - [2] = "ここは、メス、時にはチェーンソーも必要になるような、様々な病気を治療する重要な部屋です。適度に広い室内に、適切な設備が必要です。//", + [2] = "ここは、メス、時にはチェーンソーも必要になるような、様々な病気を治療する重要な部屋です。 適度に広い室内に、適切な設備が必要です。//", [3] = "外科医の資格を持つ2人の医師を必要とします。定期メンテナンスも必要です。", }, dna_fixer = { [1] = "DNA修復室//", - [2] = "宇宙人によって遺伝子組換を受けた人々は、DNAを体から抽出し、完全に精製して、患者のすべての細胞に戻さなければなりません。、DNA修復機は非常に繊細な機械ですので、 事故に備え、部屋に消火器を用意するのが賢明です。//", + [2] = "宇宙人によって遺伝子組換を受けた人々は、DNAを体から抽出し、完全に精製して、患者のすべての細胞に戻さなければなりません。 DNA修復機は非常に繊細な機械ですので、事故に備え、部屋に消火器を用意するのが賢明です。//", [3] = "DNA修復機の扱いには、研究医の資格を持つ医師が必要です。定期メンテナンスも必要です。", }, hair_restoration = { [1] = "増毛科//", - [2] = "ハゲ病の極端な症状に苦しむ患者は、増毛科へ送られます。医師が機械を操作し、患者の頭に新鮮な毛を植え付けます。もちろん性格は治療できませんが...//", + [2] = "ハゲ病の極端な症状に苦しむ患者は、増毛科へ送られます。 医師が機械を操作し、患者の頭に新鮮な毛を植え付けます。 もちろん性格は治療できませんが...//", [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", }, electrolysis = { [1] = "電気脱毛室", - [2] = "毛むくじゃら病の患者はこの部屋へ送られます。そこで電気脱毛機と呼ばれる特別な機械が電気的に毛を引き抜き、粘性のある混合溶液で毛穴を閉じます。//", + [2] = "毛むくじゃら病の患者はこの部屋へ送られます。 そこで電気脱毛機と呼ばれる特別な機械が電気的に毛を引き抜き、粘性のある混合溶液で毛穴を閉じます。//", [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", }, slack_tongue = { [1] = "ベロだし病クリニック//", - [2] = "ベロ出し病と診断された患者は、このクリニックに送られます。医師は最新の精密な装置を使用して舌を伸ばしてちょん切って、舌を正しい長さに戻します。//", + [2] = "ベロ出し病と診断された患者は、このクリニックに送られます。 医師は最新の精密な装置を使用して舌を伸ばしてちょん切って、舌を正しい長さに戻します。//", [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", }, no_room = { @@ -828,7 +819,7 @@ room_descriptions = { }, decontamination = { [1] = "汚染除去室//", - [2] = "過剰な放射線を浴びた患者はすぐに汚染除去室に送られます。この部屋には恐ろしい放射線と死の灰を洗い流すシャワーがあり、その後患者は髪をとかされます。//", + [2] = "過剰な放射線を浴びた患者はすぐに汚染除去室に送られます。 この部屋には恐ろしい放射線と死の灰を洗い流すシャワーがあり、その後患者は髪をとかされます。//", [3] = "装置を操作するには医師が必要です。この装置は定期メンテナンスが必要です。", }, tv_room = { @@ -836,20 +827,20 @@ room_descriptions = { }, staff_room = { [1] = "スタッフルーム//", - [2] = "スタッフたちは働くことで疲れてしまいます。彼らには休息と体力の回復のためにこの部屋が必要です。疲れたスタッフは仕事が遅くなり、より多くの賃金を要求し始め、最終的には辞めてしまうかもしれません。もちろんミスも多くなります。広い部屋でテレビを見たりビデオゲームをしたりできるようにすると、より疲れから解放されるでしょう。複数のスタッフが同時にゆっくりできるスペースがあることを確認してください。", + [2] = "スタッフたちは働くことで疲れてしまいます。 彼らには休息と体力の回復のためにこの部屋が必要です。 疲れたスタッフは仕事が遅くなり、より多くの賃金を要求し始め、最終的には辞めてしまうかもしれません もちろんミスも多くなります。 広い部屋でテレビを見たりビデオゲームをしたりできるようにすると、より疲れから解放されるでしょう。 複数のスタッフが同時にゆっくりできるスペースがあることを確認してください。", }, training = { [1] = "講義室//", - [2] = "ジュニアとドクターは、この部屋で学習することで、貴重な追加スキルを習得できます。外科医、精神科医、研究医のスキルを持つコンサルタントが、勉強中の医師にそれらのスキルを伝えていきます。//", + [2] = "ジュニアとドクターは、この部屋で学習することで、貴重な追加スキルを習得できます。 外科医、精神科医、研究医のスキルを持つコンサルタントが、勉強中の医師にそれらのスキルを伝えていきます。//", [3] = "講義室はコンサルタントを必要とします。", }, toilets = { [1] = "トイレ//", - [2] = "自然の欲求に従って、患者はここにやってきます。もし来院数が多い場合は、追加の個室と洗面台を建設できます。他の場所に追加のトイレを建設することをも検討する必要があるかもしれません。", + [2] = "自然の欲求に従って、患者はここにやってきます。 もし来院数が多い場合は、追加の個室と洗面台を建設できます。 他の場所に追加のトイレを建設することをも検討する必要があるかもしれません。", }, research = { [1] = "研究室//", - [2] = "この病院で最も賢明な医師たちは、新しい薬や設備を発明し、改良しています。治癒率を高めるために信じられないほどのことを行う、病院の重要な部分です!//", + [2] = "この病院で最も賢明な医師たちは、新しい薬や設備を発明し、改良しています。 治癒率を高めるために信じられないほどのことを行う、病院の重要な部分です!//", [3] = "研究医の資格を持つ医師のみが研究室で働くことができます", }, } @@ -972,7 +963,7 @@ tooltip = { }, objects = { litter = "ゴミ: 捨てるためのゴミ箱が見つからなかったので、患者は床に放り投げました", - bench = "長イス:患者1人分の座席を提供し、痛みを伴う処置の待ち時間をより快適にします。", + bench = "ベンチ:患者1人分の座席を提供し、痛みを伴う処置の待ち時間をより快適にします。", sofa = "ソファ: スタッフルームで休んでいるスタッフは、他に何か気を紛らわす良い方法がない限り、静かにソファに座ります", video_game = "ビデオゲーム: スタッフをペトリスでリラックスさせましょう", auto_autopsy = "自動解剖機: 新治療法の発見に非常に役立ちます", @@ -992,9 +983,9 @@ tooltip = { atom_analyser = "原子分析機: 研究室に設置するとすべての研究プロセスを高速化します", plant = "観葉植物: 患者の満足度を上げ、空気を浄化します", fire_extinguisher = "消火器: 機器の故障による危険を軽減します", - lecture_chair = "講義イス: 生徒たちはここに座って、メモを取り、退屈して、ただ絵を描いています。椅子を置けば置くほど、より多くの医師が勉強できるようになります。", + lecture_chair = "講義イス: 生徒たちはここに座って、メモを取り、退屈して、ただ絵を描いています。 椅子を置けば置くほど、より多くの医師が勉強できるようになります。", toilet = "トイレ: 患者さん、ええと、トイレを使ってください", - toilet_sink = "流し台: 衛生的な患者は汚れた手をそこで洗うことができます。流し台が十分にないと、患者は不満を抱くでしょう。", + toilet_sink = "流し台: 衛生的な患者は汚れた手をそこで洗うことができます。 流し台が十分にないと、患者は不満を抱くでしょう。", cabinet = "キャビネット: 患者カード、メモ、検査結果が入っています", }, machine_window = { @@ -1077,9 +1068,9 @@ tooltip = { }, watch = { - hospital_opening = "建設時間: 病院が開院するまでの残り時間です。GOボタンをクリックすると病院が即座に開院します。", + hospital_opening = "建設時間: 病院が開院するまでの残り時間です。 GOボタンをクリックすると病院が即座に開院します。", emergency = "緊急事態: すべての緊急患者を治療するまでの残り時間です。", - epidemic = "伝染病: 伝染病を隠蔽するための残り時間です。この時間が切れるか、感染患者が病院を去ると、健康検査官が訪れます。このボタンで予防接種モードのオン/オフを切り替えます。患者をクリックして、看護師による予防接種を受けさせてください。", + epidemic = "伝染病: 伝染病を隠蔽するための残り時間です。 この時間が切れるか、感染患者が病院を去ると、健康検査官が訪れます。 このボタンで予防接種モードのオン/オフを切り替えます。 患者をクリックして、看護師による予防接種を受けさせてください。", }, } @@ -1223,29 +1214,29 @@ tooltip = { } pay_rise = { - definite_quit = "もう我慢できない!どんな条件で引き止めても無駄だ!この病院にはうんざりだ!", + definite_quit = "もう我慢できない! どんな条件で引き止めても無駄だ! この病院にはうんざりだ!", regular = { - [1] = "もう疲れた。休息と$%dの昇給がなければ病院をやめてやる!", - [2] = "もうヘトヘトだ! $%dの昇給と休息を要求する。今すぐやれよ、悪徳経営者め!", - [3] = "おいおい俺は犬のように働いているんだぞ!$%dのボーナスをくれればやめないでいてやる。", - [4] = "不満しかないよ。%dの賃金アップを要求する!さもなければ出て行くよ。", - [5] = "医療職は給料が高いと聞いていたのに!$%dの給料アップをしないならゲームのプロデューサーに転職するよ。", - [6] = "もううんざり。まともな給料を払って!$%dの昇給で手をうってもいいよ。", + [1] = "もう疲れた。 休息と$%dの昇給がなければ病院をやめてやる!", + [2] = "もうヘトヘトだ! $%dの昇給と休息を要求する。 今すぐやれよ、悪徳経営者め!", + [3] = "おいおい俺は馬車馬のように働いているんだぞ! $%dのボーナスをくれればやめないでいてやる。", + [4] = "不満しかないよ。 %dの賃金アップを要求する! さもなければ出て行くよ。", + [5] = "医療職は給料が高いと聞いていたのに! $%dの給料アップをしないならゲームのプロデューサーに転職するよ。", + [6] = "もううんざり。まともな給料を払って! $%dの昇給で手をうってもいいよ。", }, poached = "%s から%dのオファーを受けている。同じ給料を払わないなら辞めちゃうよ。", } confirmation = { - abort_edit_room = "現在部屋を設置または編集中です。必要なアイテムがすべて配置されていれば完了します。配置されていない場合は削除されます。続けますか?", + abort_edit_room = "現在部屋を設置または編集中です。 必要なアイテムがすべて配置されていれば完了します。 配置されていない場合は削除されます。 続けますか?", return_to_blueprint = "部屋の設置モードに戻りますか?", delete_room = "この部屋を削除してもよろしいですか?", quit = "ゲームを終了します。本当によろしいですか?", - needs_restart = "このオプションを変更するには、CorsixTHの再起動が必要です。保存されていない内容はすべて失われます。本当にこれを実行しますか?", + needs_restart = "このオプションを変更するには、CorsixTHの再起動が必要です。 保存されていない内容はすべて失われます。 本当にこれを実行しますか?", overwrite_save = "ゲームは既にこの名前で保存されています。上書きしてもよろしいですか?", sack_staff = "このスタッフを解雇してよろしいですか?", replace_machine = "%s を$%dで置き換えてもよろしいですか?", restart_level = "レベルをリスタートしてもよろしいですか?", - maximum_screen_size = "入力した画面解像度は 3000 x 2000 を超えています。スムーズなフレーム レートでゲームを処理できるハードウェアがある場合は、この解像度を変更できます。続行してもよろしいですか?", + maximum_screen_size = "入力した画面解像度は 3000 x 2000 を超えています。 スムーズなフレームレートでゲームを処理できるハードウェアがある場合は、この解像度を変更できます。 続行してもよろしいですか?", remove_destroyed_room = "$%dかかりますが、破壊された部屋を撤去してもよろしいですか?", replace_machine_extra_info = "新しいマシンの状態は%d(現在 %d) になります。", quit_mapeditor = "マップエディターを終了してもよろしいですか?", @@ -1492,19 +1483,19 @@ diseases = { adviser = { level_progress = { halfway_won = "このレベルをクリアするまであと半分です。", - close_to_win_increase_value = "もうすぐクリアです。|病院価値をあと$%dアップさせてください。", - another_patient_killed = "ああ、大変!またを殺してしまいましたよ。これで死亡者数は%d人になりました...", - reputation_good_enough = "よし、病院の評判はこのレベルをクリアするのに十分です。%d以上を保つよう心がけてください。他の問題を解決すれば完了です。", - financial_criteria_met = "このレベルの財務基準を満たしました。引き続き病院が効率的に運営されていることを確認しながら、残高$%d以上を維持してください。", + close_to_win_increase_value = "もうすぐクリアです。 病院価値をあと$%dアップさせてください。", + another_patient_killed = "ああ、大変!またを殺してしまいましたよ。 これで死亡者数は%d人になりました...", + reputation_good_enough = "よし、病院の評判はこのレベルをクリアするのに十分です。 %d以上を保つよう心がけてください。 他の問題を解決すれば完了です。", + financial_criteria_met = "このレベルの財務基準を満たしました。 引き続き病院が効率的に運営されていることを確認しながら、残高$%d以上を維持してください。", dont_kill_more_patients = "もう1人も患者を死なせるわけにはいきません!", hospital_value_enough = "病院の価値を%d以上に維持し、その他の問題に対処してこのレベルをクリアしましょう。", halfway_lost = "このレベルを失敗するまであと半分です。", three_quarters_lost = "このレベルはあと4分の1で失敗です。", three_quarters_won = "このレベルはクリアまであと4分の1です。", improve_reputation = "このレベルをクリアするには、%d以上の評判が必要です。", - another_patient_cured = "よくやりました!また1人患者が回復しました。これで%d人目ですよ。", + another_patient_cured = "よくやりました! また1人患者が回復しました。 これで%d人目ですよ。", nearly_lost = "もうすぐゲームオーバーです!", - cured_enough_patients = "このレベルをクリアするのに十分な患者を治療しました。あとは病院をもっとまとめてください。", + cured_enough_patients = "このレベルをクリアするのに十分な患者を治療しました。 あとは病院をもっとまとめてください。", nearly_won = "もうすぐクリアです!", }, vomit_wave = { @@ -1512,67 +1503,67 @@ adviser = { ended = "ふぅ!あのゲロ爆弾を引き起こしたウイルスはほぼ消滅したようですね。今後は病院を清潔に保ってください。", }, warnings = { - patient_stuck = "誰かが行き詰まっています。病院をよりよく計画してください。", + patient_stuck = "誰かが行き詰まっています。 病院をよりよく計画してください。", need_staffroom = "スタッフたちが休めるスタッフルームを建てましょう。", - build_staffroom = "すぐにスタッフルームを建ててください。スタッフは働きすぎて崩壊寸前です。さあ、理性を取り戻してください!", - doctors_tired = "医師は非常に疲れています。早く休ませてあげてください。", - doctors_tired2 = "医師はクタクタです。すぐに休ませてあげてください。", - nurses_tired = "看護師は非常に疲れています。早く休ませてあげてください。", - nurses_tired2 = "看護師はクタクタです。すぐに休ませてあげてください。", - handymen_tired = "作業員は非常に疲れています。早く休ませてあげてください。", - handymen_tired2 = "作業員はクタクタです。すぐに休ませてあげてください。", - receptionists_tired = "受付係は非常に疲れています。早く休ませてあげてください。", - receptionists_tired2 = "受付係はクタクタです。すぐに休ませてあげてください。", - staff_tired = "スタッフは非常に疲れています。スタッフルームで休憩を取らせないと、過労で倒れてしまいますよ。", - staff_overworked = "スタッフを働かせすぎです。疲れとストレスで効率が悪くなり、悲惨なミスを犯し始めるでしょう。", - doctor_crazy_overwork = "ああ大変!医師の1人が過労で気が狂ってしまいました。すぐに休ませれば回復するかもしれません。", - reduce_staff_rest_threshold = "設定画面でスタッフの休憩閾値を下げて、スタッフがもっと頻繁に休憩できるようにしてみてください。単なるアイデアですが。", - staff_unhappy = "スタッフに不満が広がっています。彼らにボーナスを与えるか、もっと良い方法としてはスタッフルームを作ってみてください。また、方針画面でスタッフの休憩基準を変更することもできます。", + build_staffroom = "すぐにスタッフルームを建ててください。 スタッフは働きすぎて崩壊寸前です。 さあ、理性を取り戻してください!", + doctors_tired = "医師は非常に疲れています。 早く休ませてあげてください。", + doctors_tired2 = "医師はクタクタです。 すぐに休ませてあげてください。", + nurses_tired = "看護師は非常に疲れています。 早く休ませてあげてください。", + nurses_tired2 = "看護師はクタクタです。 すぐに休ませてあげてください。", + handymen_tired = "作業員は非常に疲れています。 早く休ませてあげてください。", + handymen_tired2 = "作業員はクタクタです。 すぐに休ませてあげてください。", + receptionists_tired = "受付係は非常に疲れています。 早く休ませてあげてください。", + receptionists_tired2 = "受付係はクタクタです。 すぐに休ませてあげてください。", + staff_tired = "スタッフは非常に疲れています。 スタッフルームで休憩を取らせないと、過労で倒れてしまいますよ。", + staff_overworked = "スタッフを働かせすぎです。 疲れとストレスで効率が悪くなり、悲惨なミスを犯し始めるでしょう。", + doctor_crazy_overwork = "ああ大変! 医師の1人が過労で気が狂ってしまいました。 すぐに休ませれば回復するかもしれません。", + reduce_staff_rest_threshold = "設定画面でスタッフの休憩閾値を下げて、スタッフがもっと頻繁に休憩できるようにしてみてください。 単なる思い付きですが。", + staff_unhappy = "スタッフに不満が広がっています。 彼らにボーナスを与えるか、もっと良い方法としてはスタッフルームを作ってみてください。 また、方針画面でスタッフの休憩基準を変更することもできます。", staff_unhappy2 = "スタッフに不満が広がっています。金銭面の不満も大きいようです。", - falling_1 = "おい!おかしいじゃないか。マウスをクリックする場所に気をつけろ。誰かが怪我をするかもしれないぞ!", - falling_2 = "ふざけるのはやめましょう。何がしたいんですか?", - falling_3 = "痛そう、きっと痛かったでしょうね。誰か医師を呼んで!", + falling_1 = "おい!おかしいじゃないか。 マウスをクリックする場所に気をつけろ。 誰かが怪我をするかもしれないぞ!", + falling_2 = "ふざけるのはやめましょう。 何がしたいんですか?", + falling_3 = "痛そう、きっと痛かったでしょうね。 誰か医師を呼んで!", falling_4 = "ここは病院であって、テーマパークではありません!", falling_5 = "ここは人を倒す場所じゃないですよ、彼らは病気なんですから!", - falling_6 = "ここはボーリング場ではありません!病人をそんな風に扱うべきではありません!", + falling_6 = "ここはボーリング場ではありません! 病人をそんな風に扱うべきではありません!", -- 【研究者】 research_screen_open_1 = "研究画面にアクセスするには、研究室を建てる必要があります。", research_screen_open_2 = "現在のレベルでは研究は無効です。", researcher_needs_desk_1 = "研究者には作業用のデスクが必要です。", - researcher_needs_desk_2 = "研究者は休憩をとらせてもらえて喜んでいます。もっと多くのスタッフに研究させるつもりなら、それぞれに作業用のデスクを用意する必要があります。", + researcher_needs_desk_2 = "研究者は休憩をとらせてもらえて喜んでいます。 もっと多くのスタッフに研究させるつもりなら、それぞれに作業用のデスクを用意する必要があります。", researcher_needs_desk_3 = "各研究者が研究室で働くためには人数分のデスクが必要です。", -- 【看護師】 nurse_needs_desk_1 = "各看護師が病室で働くためには人数分のデスクが必要です。", - nurse_needs_desk_2 = "看護師は休憩をとらせてもらえて喜んでいます。病室で複数人働かせるためには、それぞれにデスクを用意する必要があります。", + nurse_needs_desk_2 = "看護師は休憩をとらせてもらえて喜んでいます。 病室で複数人働かせるためには、それぞれにデスクを用意する必要があります。", -- 【作業員】 -- 観葉植物 - plants_dying = "観葉植物が枯れそうです。もっと作業員を雇用してください。枯れた観葉植物が好きな患者はいませんよ。", - place_plants3 = "患者が病院の居心地が悪いと言っています。観葉植物で病院内の雰囲気をかえてみては?", + plants_dying = "観葉植物が枯れそうです。 もっと作業員を雇用してください。 枯れた観葉植物が好きな患者はいませんよ。", + place_plants3 = "患者が病院の居心地が悪いと言っています。 観葉植物で病院内の雰囲気をかえてみては?", place_plants4 = "患者を元気づけるために、施設のあちこちに植物をもっと置いてください。", desperate_need_for_watering = "観葉植物に水やりをするために作業員を雇う必要があります。", - too_many_plants = "観葉植物が多すぎます。中はジャングルのようです。", - place_plants2 = "みんな病院を去っていきます。観葉植物で引き止めてみてはいかがですか?", - plants_thirsty = "植物の世話をする必要があります。水が欲しくなってきています。", + too_many_plants = "観葉植物が多すぎます。 中はジャングルのようです。", + place_plants2 = "みんな病院を去っていきます。 観葉植物で引き止めてみてはいかがですか?", + plants_thirsty = "植物の世話をする必要があります。 水が欲しくなってきています。", change_priorities_to_plants = "観葉植物に水をまくように作業員の仕事の優先順位を変えなければなりません。 ", - place_plants_to_keep_people = "People are leaving. Placing plants might persuade them to stay.", + place_plants_to_keep_people = "人々が去っていきます。 観葉植物で引き止められるかもしれません。", -- ゴミ - litter_everywhere = "いたるところにゴミが散乱しています。この問題に対処するために作業員を雇ってください。", - people_did_it_on_the_floor = "患者の中には耐えられない人もいます。清掃はとても大切な仕事です。", - litter_catastrophy = "ゴミ問題が深刻化しています。今すぐ作業員のチームを雇って対処してもらいましょう!", + litter_everywhere = "いたるところにゴミが散乱しています。 この問題に対処するために作業員を雇ってください。", + people_did_it_on_the_floor = "患者の中には耐えられない人もいます。 清掃はとても大切な仕事です。", + litter_catastrophy = "ゴミ問題が深刻化しています。 今すぐ作業員のチームを雇って対処してもらいましょう!", some_litter = "深刻な問題になる前に作業員にゴミを処分してもらいましょう。", - too_much_litter = "ゴミの問題があります。もっと作業員を雇えば解決できるかもしれません。", + too_much_litter = "ゴミの問題があります。 もっと作業員を雇えば解決できるかもしれません。", -- 設備の修理 - machinery_slightly_damaged = "病院の設備が少し傷んできています。メンテナンスをしっかりしてください。", - machinery_damaged = "設備をすぐに直してください。すぐに故障を起こしはじめますよ!", + machinery_slightly_damaged = "病院の設備が少し傷んできています。 メンテナンスをしっかりしてください。", + machinery_damaged = "設備をすぐに直してください。 すぐに故障を起こしはじめますよ!", machinery_damaged2 = "設備修理のため、すぐに作業員を雇用してください!", - machinery_very_damaged = "緊急です!すぐに作業員を呼んで設備を修理させてください。もうすぐ壊れそうです!", - machines_falling_apart = "設備が壊れかけています。作業員をすぐに呼んでください!", + machinery_very_damaged = "緊急です! すぐに作業員を呼んで設備を修理させてください。もうすぐ壊れそうです!", + machines_falling_apart = "設備が壊れかけています。 作業員をすぐに呼んでください!", machine_severely_damaged = "%sがもうすぐ修復不可能なまでに壊れそうです。", - machinery_deteriorating = "設備が酷使されて壊れはじめましたよ!注意が必要です。", + machinery_deteriorating = "設備が酷使されて壊れはじめましたよ! 注意が必要です。", -- 【受付係】 queue_too_long_at_reception = "受付で待っている患者が多すぎます。 受付デスクをもう1つ設置し、受付係をもう1人雇ってください。", @@ -1588,8 +1579,8 @@ adviser = { no_desk_7 = "受付デスクは作ったので、次は受付係を雇ってみてはいかがですか? これが準備できるまでは患者を診ることはできませんよ!", -- 伝染病 - deal_with_epidemic_now = "伝染病が重大な問題になっています。一刻も早く対処を! もし今伝染病を防がなければ、ひどい事になりますよ!", - epidemic_getting_serious = "伝染病が重大な問題になっています。何か手を打って下さい!", + deal_with_epidemic_now = "伝染病が重大な問題になっています。 一刻も早く対処を! もし今伝染病を防がなければ、ひどい事になりますよ!", + epidemic_getting_serious = "伝染病が重大な問題になっています。 何か手を打って下さい!", many_epidemics = "同時に複数の伝染病が発生しているようです。 これは大惨事になる恐れがありますので、迅速に行動してください。", -- 料金 @@ -1601,23 +1592,23 @@ adviser = { low_prices = "%s の料金が安すぎます。 これで患者は病院に来るでしょうが、一人あたりの利益はあまり上がりません。", -- 財務状況 - cash_low_consider_loan = "財政状況があまり良くないですね。ローンを考えてみては?", - money_very_low_take_loan = "銀行残高がひどく少ないです。ローンがありますよ。", - financial_trouble = "深刻な財政難に陥っています。今すぐなんとかしてください。あと$%d減ったらこのレベルを無駄にしてしまうことになります。", - finanical_trouble2 = "財政状況が危機的です。もしあと$%dを失えばこのレベルは失敗です。 ", - financial_trouble3 = "銀行残高が少し心配です。もっとお金を稼ぐことを考えてください。あと$%dで大惨事です。", - pay_back_loan = "お金がたっぷりあります。ローンの返済について考えてみてはいかがですか?", + cash_low_consider_loan = "財政状況があまり良くないですね。 ローンを考えてみては?", + money_very_low_take_loan = "銀行残高がひどく少ないです。 ローンがありますよ。", + financial_trouble = "深刻な財政難に陥っています。 今すぐなんとかしてください。 あと$%d減ったらこのレベルを無駄にしてしまうことになります。", + finanical_trouble2 = "財政状況が危機的です。 もしあと$%dを失えばこのレベルは失敗です。 ", + financial_trouble3 = "銀行残高が少し心配です。 もっとお金を稼ぐことを考えてください。 あと$%dで大惨事です。", + pay_back_loan = "お金がたっぷりあります。 ローンの返済について考えてみてはいかがですか?", money_low = "銀行残高が少なくなっています!", cannot_afford = "その人を雇うにはお金が足りません!", cannot_afford_2 = "それを買うためにはお金が足りません!", -- 暖房 - patients_very_cold = "患者が寒がっています。暖房機をもっと設置するか、設定温度を上げてください。", - people_freezing = "信じられないことですが、このセントラルヒーティングの時代に、患者の中には凍えるほど寒い人もいます。部屋を温めるために暖房機を設置して設定温度を上げてください。", - patients_getting_hot = "患者が暑いと言っています。暖房機を減らすか、設定温度を下げてください。", - patients_too_hot = "患者は暑くなりすぎています。暖房機をいくつか撤去するか、設定温度を下げるか、自販機をもっと設置してください。", - staff_very_cold = "スタッフは寒いと文句を言っています。暖房機をもっと設置するか、設定温度を上げてください。", - staff_too_hot = "スタッフは暑いと文句を言っています。暖房機を減らすか、設定温度を下げてください。", + patients_very_cold = "患者が寒がっています。 暖房機をもっと設置するか、設定温度を上げてください。", + people_freezing = "信じられないことですが、このセントラルヒーティングの時代に、患者の中には凍えるほど寒い人もいます。 部屋を温めるために暖房機を設置して設定温度を上げてください。", + patients_getting_hot = "患者が暑いと言っています。 暖房機を減らすか、設定温度を下げてください。", + patients_too_hot = "患者は暑くなりすぎています。 暖房機をいくつか撤去するか、設定温度を下げるか、自販機をもっと設置してください。", + staff_very_cold = "スタッフは寒いと文句を言っています。 暖房機をもっと設置するか、設定温度を上げてください。", + staff_too_hot = "スタッフは暑いと文句を言っています。 暖房機を減らすか、設定温度を下げてください。", -- 自販機 patients_thirsty = "患者は喉が渇いています。自販機を設置した方がいいかもしれません。", @@ -1664,15 +1655,15 @@ adviser = { new_available = "新しい%sが利用可能になりました。", }, earthquake = { - alert = "震警報!病院内の設備が損傷します。メンテナンスが不十分だと破壊される可能性があります。", + alert = "震警報!病院内の設備が損傷します。 メンテナンスが不十分だと破壊される可能性があります。", damage = "地震が病院内の%d台の機械と、%d人の患者にダメージを与えました。", - ended = "うひゃー!すごい地震でしたね?|地震計では震度%dでした。", + ended = "うひゃー! すごい地震でしたね? 地震計では震度%dでした。", }, multiplayer = { players_failed = "以下のプレイヤーは最後の目標を達成できませんでした: ", poaching = { - not_interested = "ハッ!彼らはあなたの病院で働くことに興味がありません。彼らは今いる場所で満足しています。", - already_poached_by_someone = "なんてことでしょう!誰かがそのスタッフを引き抜こうとしています。", + not_interested = "ハッ! 彼らはあなたの病院で働くことに興味がありません。 彼らは今いる場所で満足しています。", + already_poached_by_someone = "なんてことでしょう! 誰かがそのスタッフを引き抜こうとしています。", in_progress = "このスタッフがあなたの病院で働きたいかどうかお知らせします。", }, objective_failed = "あなたは目標を達成できませんでした。", @@ -1680,16 +1671,16 @@ adviser = { objective_completed = "あなたは目的を達成しました。おめでとうございます!", }, epidemic = { - serious_warning = "伝染病が重大な問題になっています。何か手を打って下さい!", - hurry_up = "伝染病が重大な問題になっています。一刻も早く対処を!もし今伝染病を防がなければ、ひどい事になりますよ!", - multiple_epidemies = "同時に複数の伝染病が発生しているようです。これは大惨事になる恐れがありますので、迅速に行動してください。", + serious_warning = "伝染病が重大な問題になっています。 何か手を打って下さい!", + hurry_up = "伝染病が重大な問題になっています。 一刻も早く対処を! もし今伝染病を防がなければ、ひどい事になりますよ!", + multiple_epidemies = "同時に複数の伝染病が発生しているようです 。これは大惨事になる恐れがありますので、迅速に行動してください。", }, cheats = { - th_cheat = "おめでとうございます。チートを解除しました!", - norest_on_cheat = "えぇ、嘘でしょ!スタッフはカフェインを摂りすぎて、もう休む必要を感じていないようです。", - norest_off_cheat = "やれやれ。やっと興奮が収まったみたいです。スタッフはこれでちゃんと休めるでしょう。", - roujin_on_cheat = "Roujinのチャレンジが起動しました!今後数か月間の幸運を祈ります...", - roujin_off_cheat = "Roujinのチャレンジが無効になりました。すぐにすべて正常に戻ります。", + th_cheat = "おめでとうございます。 チートを解除しました!", + norest_on_cheat = "えぇ、嘘でしょ! スタッフはカフェインを摂りすぎて、もう休む必要を感じていないようです。", + norest_off_cheat = "やれやれ。やっと興奮が収まったみたいです。 スタッフはこれでちゃんと休めるでしょう。", + roujin_on_cheat = "Roujinのチャレンジが起動しました! 今後数か月間の幸運を祈ります...", + roujin_off_cheat = "Roujinのチャレンジが無効になりました。 すぐにすべて正常に戻ります。", }, goals = { win = { @@ -1705,11 +1696,11 @@ adviser = { room_forbidden_non_reachable_parts = "この場所に部屋を設置すると、病院の一部にアクセスできなくなります。", praise = { many_benches = "患者用の座席が十分に確保されました。素晴らしいです。", - plants_thriving = "素晴らしい。植物は間違いなく元気に育っています。とてもいいですね。このまま続ければ、トロフィーをもらえるかもしれません。", + plants_thriving = "素晴らしい。植物は間違いなく元気に育っています。 とてもいいですね。 このまま続ければ、トロフィーをもらえるかもしれません。", plenty_of_benches = "座席が十分にあるので、問題ありません。", - plants_are_well = "いいですね。植物をきちんと手入れしていますね。素晴らしいです。", - few_have_to_stand = "あなたの病院では、立っている人はほとんどいません。患者たちも喜ぶでしょう。", - many_plants = "素晴らしいです。植物がたくさんあります。患者たちも喜ぶでしょう。", + plants_are_well = "いいですね。植物をきちんと手入れしていますね。 素晴らしいです。", + few_have_to_stand = "あなたの病院では、立っている人はほとんどいません。 患者たちも喜ぶでしょう。", + many_plants = "素晴らしいです。植物がたくさんあります。 患者たちも喜ぶでしょう。", patients_cured = "%d人の患者が治癒されました。", }, room_requirements = { @@ -1729,17 +1720,17 @@ adviser = { need_surgeons_ward_op = "手術を行うには、外科医を2人雇用し、病室と手術室を建設する必要があります", }, boiler_issue = { - minimum_heat = "ああ、そこにいましたか。地下のボイラーが壊れました。病院内の人々が寒さに襲われてしまうでしょう。", - maximum_heat = "地下室のボイラーがおかしくなりました。暖房機の出力が最大になっています。人々は溶け始めています! 自販機を置けば少し状況を改善できるでしょう。", - resolved = "朗報です。ボイラーと暖房機は正常運転を再開しました。温度は患者とスタッフにとって適切なものになるはずです。", + minimum_heat = "ああ、そこにいましたか。地下のボイラーが壊れました。 病院内の人々が寒さに襲われてしまうでしょう。", + maximum_heat = "地下室のボイラーがおかしくなりました 。暖房機の出力が最大になっています。人々は溶け始めています! 自販機を置けば少し状況を改善できるでしょう。", + resolved = "朗報です。ボイラーと暖房機は正常運転を再開しました。 温度は患者とスタッフにとって適切なものになるはずです。", }, staff_advice = { - need_handyman_litter = "病院にゴミが散乱しています。片付けをするために作業員を雇用してください。", - need_doctors = "もっと多くの医師が必要です。最も長い待ち行列のある部屋に、最も優秀な医師を配置してみてください。", + need_handyman_litter = "病院にゴミが散乱しています。 片付けをするために作業員を雇用してください。", + need_doctors = "もっと多くの医師が必要です。 最も長い待ち行列のある部屋に、最も優秀な医師を配置してみてください。", need_handyman_machines = "病院の機械をメンテナンスするには、作業員を雇用する必要があります。", - too_many_doctors = "医師が多すぎます。現在暇している医師もいます。", + too_many_doctors = "医師が多すぎます。 現在暇している医師もいます。", need_handyman_plants = "観葉植物に水やりをするために作業員を雇う必要があります。", - need_nurses = "看護師をもっと雇用する必要があります。病室と薬局には看護師が必要です。", + need_nurses = "看護師をもっと雇用する必要があります。 病室と薬局には看護師が必要です。", too_many_nurses = "看護師を雇いすぎているようです。", }, staff_place_advice = { @@ -1755,7 +1746,7 @@ adviser = { }, build_advice = { door_not_reachable = "人々はそのドアにたどり着くことができません。考えてみてください。", - blueprint_would_block = "その設置で他の部屋をブロックしてしまいます。部屋のサイズを変更するか、別の場所に移動してみてください。", + blueprint_would_block = "その設置で他の部屋をブロックしてしまいます。 部屋のサイズを変更するか、別の場所に移動してみてください。", placing_object_blocks_door = "そのオブジェクトをそこに置くと、人々はドアにたどり着けなくなります。", blueprint_invalid = "この設置は無効です。", }, @@ -1764,7 +1755,7 @@ adviser = { place_windows = "窓を設置すると部屋が明るくなり、スタッフのやる気も向上します。", extra_items = "部屋に追加のアイテムを設置することで、スタッフの快適性が高まり、パフォーマンスが向上します。", emergency = "緊急事態です!とにかく!急いで!早く!", - epidemic_health_inspector = "伝染病のニュースが保健省の耳に入りました。すぐに保健検査官の視察に備えてください。", + epidemic_health_inspector = "伝染病のニュースが保健省の耳に入りました。 すぐに保健検査官の視察に備えてください。", epidemic = "病院で伝染病が発生しました。すぐに対処する必要があります。", handyman_adjust = "作業員の優先順位を調整することで、より効率的にゴミ掃除することができます。.", patient_abducted = "患者の1人がエイリアンに誘拐されています。", @@ -1772,7 +1763,7 @@ adviser = { patient_leaving_too_expensive = "患者が%sの料金を支払わずに去っています。高すぎます。", promotion_to_specialist = "あなたの医師の1人が%sに昇格しました。", fax_received = "画面の左下に表示されたアイコンは、重要な情報や決定が必要なことを知らせるものです。", - promotion_to_consultant = "人のドクターがコンサルタントに昇格しました。", + promotion_to_consultant = "1人のドクターがコンサルタントに昇格しました。", initial_general_advice = { place_radiators = "患者たちが寒がっています。メニューから暖房機をさらに設置できます。", first_patients_thirsty = "患者たちは喉が渇いています。彼らのために飲料機を設置してください。", @@ -1780,21 +1771,21 @@ adviser = { psychiatric_symbol = "精神科医の資格を持つ医師は: |のアイコンを持ちます。", surgeon_symbol = "手術が可能な医師は: {のアイコンを持ちます。", research_symbol = "研究が可能な医師は: }のアイコンを持ちます。", - taking_your_staff = "誰かがあなたのスタッフを引き抜いています。彼らを引き留めるために戦わなければなりません。", - epidemic_spreading = "病院で伝染病が発生しています。感染した人が病院を出る前に治療してください。", - first_epidemic = "あなたの病院で伝染病が発生しています。隠蔽するか、白状するかを決めてください。", - autopsy_available = "自動解剖機が開発されました。これを使用して、厄介な患者や歓迎されない患者を処分し、研究に活用することができます。警告 - この機械の使用は非常に物議を醸す可能性があります。", - first_VIP = "最初の VIP訪問を受け入れようとしています。VIPが不衛生なものや不機嫌な患者を見ないように注意してください。", - machine_needs_repair = "修理が必要な機械があります。煙が出ている機械を見つけてクリックしてください。次に作業員便利屋ボタンをクリックしてください。", - increase_heating = "人々は寒がっています。タウンマップの画面から設定温度を上げてください。", - rats_have_arrived = "病院にネズミがはびこっています。マウスでマウスを撃退しましょう。", - first_emergency = "緊急患者の頭上には青い光が点滅しています。死ぬか時間切れになる前に治療してください。", - decrease_heating = "人々は暑がっています。タウンマップの画面から設定温度を上げてください。", - }, - first_death = "あなたはたった今、初めて患者を殺してしまいました。どんな気分ですか?", - pay_rise = "スタッフの1人が仕事を辞めてやると脅しています。彼らの要求に同意するか、彼らを解雇するかを選択してください。左下のアイコンをクリックすると、どのスタッフが辞めると脅しているかがわかります。", + taking_your_staff = "誰かがあなたのスタッフを引き抜いています。 彼らを引き留めるために戦わなければなりません。", + epidemic_spreading = "病院で伝染病が発生しています。 感染した人が病院を出る前に治療してください。", + first_epidemic = "あなたの病院で伝染病が発生しています。 隠蔽するか、白状するかを決めてください。", + autopsy_available = "自動解剖機が開発されました。 これを使用して、厄介な患者や歓迎されない患者を処分し、研究に活用することができます。 警告 - この機械の使用は非常に物議を醸す可能性があります。", + first_VIP = "最初の VIP訪問を受け入れようとしています。 VIPが不衛生なものや不機嫌な患者を見ないように注意してください。", + machine_needs_repair = "修理が必要な機械があります。 煙が出ている機械を見つけてクリックしてください。 次に作業員便利屋ボタンをクリックしてください。", + increase_heating = "人々は寒がっています。 タウンマップの画面から設定温度を上げてください。", + rats_have_arrived = "病院にネズミがはびこっています。 マウスでマウスを撃退しましょう。", + first_emergency = "緊急患者の頭上には青い光が点滅しています。 死ぬか時間切れになる前に治療してください。", + decrease_heating = "人々は暑がっています。 タウンマップの画面から設定温度を上げてください。", + }, + first_death = "あなたはたった今、初めて患者を殺してしまいました。 どんな気分ですか?", + pay_rise = "スタッフの1人が仕事を辞めてやると脅しています。 彼らの要求に同意するか、彼らを解雇するかを選択してください。 左下のアイコンをクリックすると、どのスタッフが辞めると脅しているかがわかります。", larger_rooms = "部屋が広いと、スタッフはより大切にされていると感じ、パフォーマンスが向上します。", - vip_arrived = "気をつけてください! %sがあなたの病院を見学するために到着しました!彼を喜ばせるために、すべてをスムーズに進めてください。", + vip_arrived = "気をつけてください! %sがあなたの病院を見学するために到着しました! 彼を喜ばせるために、すべてをスムーズに進めてください。", }, placement_info = { door_can_place = "このドアはここに配置できます。", @@ -1811,41 +1802,41 @@ adviser = { object_cannot_place = "ねぇ、このオブジェクトはここに配置できませんよ。", }, tutorial = { - place_receptionist = "受付係を動かして好きな場所に配置します。賢いことに、受付係はデスクまでやって来ます。", + place_receptionist = "受付係を動かして好きな場所に配置します。 賢いことに、受付係はデスクまでやって来ます。", accept_purchase = "点滅しているアイコンを左クリックして購入します。", click_gps_office = "点滅している線を左クリックして、診察室を選択します。", - door_in_invalid_position = "おっと!ドアを無効な位置に配置しようとしました。設計図の壁の別の場所を試してください。", + door_in_invalid_position = "おっと! ドアを無効な位置に配置しようとしました。 設計図の壁の別の場所を試してください。", start_tutorial = "ミッション説明を読んでから、マウスの左ボタンをクリックしてチュートリアルを開始してください。", - room_too_small = "この部屋の設計図は小さすぎるため赤くなっています。さらにドラッグして大きくしてください。", + room_too_small = "この部屋の設計図は小さすぎるため赤くなっています。 さらにドラッグして大きくしてください。", hire_receptionist = "患者を部屋に案内するために受付係が必要になります。", hire_doctor = "病気の人を診断し治療するには医師が必要です。", - room_in_invalid_position = "おっと、この設計図は無効です。赤い部分は他の部屋や病院の壁と重なっている場所を示しています。", + room_in_invalid_position = "おっと、この設計図は無効です。 赤い部分は他の部屋や病院の壁と重なっている場所を示しています。", reception_invalid_position = "受付デスクがグレーアウトされているのは、無効な位置にあるからです。移動または回転させてみてください。", - place_doctor = "医師を病院内のどこかに配置してください。診断する患者がいれば、医師は診察室に向かいます。", + place_doctor = "医師を病院内のどこかに配置してください。 診断する患者がいれば、医師は診察室に向かいます。", select_doctors = "点滅しているアイコンを左クリックして、雇うことができる医師を確認してください。", - build_reception = "こんにちは。まず、病院には受付デスクが必要です。設備メニューから選んでください。", + build_reception = "こんにちは。まず、病院には受付デスクが必要です。 設備メニューから選んでください。", receptionist_invalid_position = "受付係をその場所に配置することはできません。", select_diagnosis_rooms = "点滅しているアイコンを左クリックして、診断設備のリストを表示してください。", - click_and_drag_to_build = "診察室を建設するには、まずその大きさを決める必要があります。左マウスボタンを押しながらドラッグして部屋のサイズを決めてください。", + click_and_drag_to_build = "診察室を建設するには、まずその大きさを決める必要があります。 左マウスボタンを押しながらドラッグして部屋のサイズを決めてください。", rotate_and_place_reception = "右マウスボタンをクリックしてデスクを回転させ、左マウスボタンで配置してください。", - select_receptionists = "点滅しているアイコンを左クリックすると、現在雇うことができる受付係が表示されます。アイコンの数字は候補者の人数を示しています。", - next_receptionist = "これがリスト内の最初の受付係です。点滅しているアイコンを左クリックして次の受付係を確認してください。", + select_receptionists = "点滅しているアイコンを左クリックすると、現在雇うことができる受付係が表示されます。 アイコンの数字は候補者の人数を示しています。", + next_receptionist = "これがリスト内の最初の受付係です。 点滅しているアイコンを左クリックして次の受付係を確認してください。", prev_receptionist = "点滅しているアイコンを左クリックして、前の受付係を確認してください。", choose_receptionist = "良い能力と適正な給与を持つ受付係を選び、点滅しているアイコンを左クリックして雇用してください。", confirm_room = "点滅しているアイコンを左クリックして部屋を設置するか、Xアイコンをクリックして前のステップに戻ってください。", place_objects = "右クリックで部屋のアイテムを回転させ、左クリックで配置してください。", choose_doctor = "各医師の能力をよく確認してから選んでください。", - doctor_in_invalid_position = "おっと!そこに医師を配置することはできません。", - room_too_small_and_invalid = "設計図が小さすぎて無効な場所にあります。設置を続けてください。", + doctor_in_invalid_position = "おっと! そこに医師を配置することはできません。", + room_too_small_and_invalid = "設計図が小さすぎて無効な場所にあります。 設置を続けてください。", information_window = "ヘルプボックスは、あなたがちょうど建設した素敵な診察室についての情報を教えてくれます。", place_door = "設計図の壁に沿ってマウスを動かし、ドアを配置したい場所に作成してください。", - place_windows = "ドアと同じように窓を配置してください。窓は必須ではありませんが、スタッフが外を見ることができるとより幸せです。", - window_in_invalid_position = "この窓は無効な場所にあります。もしよろしければ壁の他の場所に配置してみてください。", - room_big_enough = "設計図の大きさが十分になりました。マウスボタンを離すと配置されます。必要に応じて移動またはサイズ変更ができます。", + place_windows = "ドアと同じように窓を配置してください。 窓は必須ではありませんが、スタッフが外を見ることができるとより幸せです。", + window_in_invalid_position = "この窓は無効な場所にあります。 もしよろしければ壁の他の場所に配置してみてください。", + room_big_enough = "設計図の大きさが十分になりました。 マウスボタンを離すと配置されます。必要に応じて移動またはサイズ変更ができます。", order_one_reception = "点滅しているラインを左マウスボタンで一度クリックして、受付デスクを注文してください。", - build_pharmacy = "おめでとうございます!それでは薬局を建設し、看護師を雇って稼働する病院を作ってください。", + build_pharmacy = "おめでとうございます! それでは薬局を建設し、看護師を雇って稼働する病院を作ってください。", build_gps_office = "患者の病気の診断を開始するために診察室を建設してください。", - object_in_invalid_position = "このアイテムは無効な場所にあります。別の場所に配置するか、回転させて設置できるようにしてください。", + object_in_invalid_position = "このアイテムは無効な場所にあります。 別の場所に配置するか、回転させて設置できるようにしてください。", }, } @@ -2219,14 +2210,14 @@ trophy_room = { trophies = { [1] = "ネズミの射撃精度が%d%%であったことを称えて、シンジケートウォーズ賞を贈ります。", [2] = "昨年、病院で狙ったネズミの%d%%を退治するという正確無比な腕を称えて、このトロフィーを授与します。", - [3] = "病院内のすべてのネズミの%d%%を殺したことを記念して、ダンジョンキーパートロフィーを授与します。おめでとうございまチュ~!", + [3] = "病院内のすべてのネズミの%d%%を殺したことを記念して、ダンジョンキーパートロフィーを授与します。 おめでとうございまチュ~!", }, }, no_deaths = { trophies = { [1] = "ノーお悔やみ賞の受賞おめでとう! 昨年は1人の死人も出しませんでしたね。", [2] = "ライフ フォーエバー コーポレーションが、昨年の死亡者ゼロの達成を称え、このトロフィーを贈ります。", - [3] = "あなたの素晴らしい病院で死亡者ゼロを達成したことで、サバイバル賞を授与されました。素晴らしいです。", + [3] = "あなたの素晴らしい病院で死亡者ゼロを達成したことで、サバイバル賞を授与されました。 素晴らしいです。", }, awards = { [1] = "今年、あなたの病院での死亡者数が非常に少ないことを記念して、この賞を贈ります。 素晴らしいです。", @@ -2420,21 +2411,20 @@ trophy_room = { }, } - bank_manager = { - current_loan = "Current Loan", - interest_rate = "Interest Rate", - interest_payment = "Interest Payment", - hospital_value = "Hospital Value", + current_loan = "現在のローン", + interest_rate = "利率", + interest_payment = "利息", + hospital_value = "病院の価値", statistics_page = { - date = "Date", - money_in = "In", - money_out = "Out", - balance = "Balance", - current_balance = "Current Balance", - details = "Details", - }, - balance = "Balance", - insurance_owed = "Insurance Owed", - inflation_rate = "Inflation Rate", + date = "日付", + money_in = "収入", + money_out = "支出", + balance = "残高", + current_balance = "現在の残高", + details = "詳細", + }, + balance = "残高", + insurance_owed = "未払の保険", + inflation_rate = "インフレ率", } \ No newline at end of file From 96615b90240d64c8940b5e46b7ddea1f75a95661 Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Wed, 13 Nov 2024 18:51:53 +0000 Subject: [PATCH 81/85] Update CorsixTH/Lua/languages/japanese.lua added extra line break at bottom of file Co-authored-by: lewri --- CorsixTH/Lua/languages/japanese.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CorsixTH/Lua/languages/japanese.lua b/CorsixTH/Lua/languages/japanese.lua index 64283c9a24..67207369c8 100644 --- a/CorsixTH/Lua/languages/japanese.lua +++ b/CorsixTH/Lua/languages/japanese.lua @@ -2427,4 +2427,4 @@ bank_manager = { balance = "残高", insurance_owed = "未払の保険", inflation_rate = "インフレ率", -} \ No newline at end of file +} From 98eb7b37d90019b26e2122c6044a2d7cc3f1ca53 Mon Sep 17 00:00:00 2001 From: MandrakeHorse <142453312+MandrakeHorse@users.noreply.github.com> Date: Tue, 19 Nov 2024 23:04:07 +0000 Subject: [PATCH 82/85] added tooltips to Hotkey Assignment screen --- CorsixTH/Lua/dialogs/resizables/hotkey_assign.lua | 12 ++++++------ CorsixTH/Lua/languages/english.lua | 12 +++++++++--- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/CorsixTH/Lua/dialogs/resizables/hotkey_assign.lua b/CorsixTH/Lua/dialogs/resizables/hotkey_assign.lua index 2f9889ed39..cbb874bc78 100644 --- a/CorsixTH/Lua/dialogs/resizables/hotkey_assign.lua +++ b/CorsixTH/Lua/dialogs/resizables/hotkey_assign.lua @@ -311,7 +311,7 @@ function UIHotkeyAssign:UIHotkeyAssign(ui, mode) self.key_options = {{ id = "global", title = _S.hotkey_window.panel_globalKeys, - tooltip = _S.hotkey_window.panel_globalKeys, + tooltip = _S.tooltip.hotkey_window.panel_globalKeys, sections = {{ title = _S.hotkey_window.panel_globalKeys, keys = { @@ -324,7 +324,7 @@ function UIHotkeyAssign:UIHotkeyAssign(ui, mode) { id = "ingame", title = _S.hotkey_window.panel_generalInGameKeys, - tooltip = _S.hotkey_window.panel_generalInGameKeys, + tooltip = _S.tooltip.hotkey_window.panel_generalInGameKeys, sections = {{ title = _S.hotkey_window.panel_generalInGameKeys, keys = { @@ -357,7 +357,7 @@ function UIHotkeyAssign:UIHotkeyAssign(ui, mode) { id = "scroll", title = _S.hotkey_window.panel_scrollKeys, - tooltip = _S.hotkey_window.panel_scrollKeys, + tooltip = _S.tooltip.hotkey_window.panel_scrollKeys, sections = {{ title = _S.hotkey_window.panel_scrollKeys, keys = { @@ -370,7 +370,7 @@ function UIHotkeyAssign:UIHotkeyAssign(ui, mode) { id = "zoom", title = _S.hotkey_window.panel_zoomKeys, - tooltip = _S.hotkey_window.panel_zoomKeys, + tooltip = _S.tooltip.hotkey_window.panel_zoomKeys, sections = {{ title = _S.hotkey_window.panel_zoomKeys, keys = { @@ -382,7 +382,7 @@ function UIHotkeyAssign:UIHotkeyAssign(ui, mode) { id = "toggle", title = _S.hotkey_window.panel_toggleKeys, - tooltip = _S.hotkey_window.panel_toggleKeys, + tooltip = _S.tooltip.hotkey_window.panel_toggleKeys, sections = {{ title = _S.hotkey_window.panel_toggleKeys, keys = { @@ -450,7 +450,7 @@ function UIHotkeyAssign:UIHotkeyAssign(ui, mode) table.insert(self.key_options, { id = "debug", title = _S.hotkey_window.panel_debugKeys, - tooltip = _S.hotkey_window.panel_debugKeys, + tooltip = _S.tooltip.hotkey_window.panel_debugKeys, sections = {{ title = _S.hotkey_window.panel_debugKeys, keys = { diff --git a/CorsixTH/Lua/languages/english.lua b/CorsixTH/Lua/languages/english.lua index ad958f5cf1..3aee425151 100644 --- a/CorsixTH/Lua/languages/english.lua +++ b/CorsixTH/Lua/languages/english.lua @@ -682,9 +682,15 @@ tooltip.hotkey_window = { button_accept = "Accept and save hotkey assignments", button_defaults = "Reset all hotkeys to the program's defaults", button_cancel = "Cancel the assignment and go back to the options menu", - caption_panels = "Open window to assign panel keys", - button_gameSpeedKeys = "Open window to set keys to control game speed", - button_recallPosKeys = "Open window to set keys to store and recall camera positions", + panel_globalKeys = "Assign global hotkeys", + panel_generalInGameKeys = "Assign general in-game hotkeys", + button_gameSpeedKeys = "Assign hotkeys to control the game speed", + panel_scrollKeys = "Assign hotkeys to scroll the screen", + panel_zoomKeys = "Assign hotkeys to zoom in and out", + panel_toggleKeys = "Assign hotkeys to toggle options", + caption_panels = "Assign hotkeys to open panels", + button_recallPosKeys = "Assign hotkeys to save and recall camera positions", + panel_debugKeys = "Assign hotkeys for debugging", button_back_02 = "Go back to the main hotkey window. Hotkeys changed in this window can be accepted there", } From 222f01fa38d54d0a8c6d5c606693fa1e949d90f6 Mon Sep 17 00:00:00 2001 From: SlightPersimmon1 <65872044+SlightPersimmon1@users.noreply.github.com> Date: Sat, 24 Aug 2024 11:09:41 +0100 Subject: [PATCH 83/85] soda price can now configurable in the level file Allows soda price to be configurable in the level file in order to expand level creation capabilities. --- CorsixTH/Levels/example.level | 3 +++ CorsixTH/Lua/app.lua | 2 +- CorsixTH/Lua/base_config.lua | 2 ++ CorsixTH/Lua/hospital.lua | 5 +++-- CorsixTH/Lua/map.lua | 3 +++ 5 files changed, 12 insertions(+), 3 deletions(-) diff --git a/CorsixTH/Levels/example.level b/CorsixTH/Levels/example.level index 4fedfb2f0d..bded8c231d 100644 --- a/CorsixTH/Levels/example.level +++ b/CorsixTH/Levels/example.level @@ -41,6 +41,9 @@ InterestRate is defined as centiprocent to allow for two decimals precision, i.e 300 means 3 % #town.StartCash.InterestRate 100000 300 +Soda price at drinks machines +#gbv.SodaPrice 20 + -------------------- Disease Configuration ------------------------- When a drug is researched, what effectiveness does it have diff --git a/CorsixTH/Lua/app.lua b/CorsixTH/Lua/app.lua index 5fb8bed6e9..8fec5b82e8 100644 --- a/CorsixTH/Lua/app.lua +++ b/CorsixTH/Lua/app.lua @@ -28,7 +28,7 @@ local SDL = require("sdl") -- and add compatibility code in afterLoad functions -- Recommended: Also replace/Update the summary comment -local SAVEGAME_VERSION = 208 -- Game tick speed adjustment +local SAVEGAME_VERSION = 209 -- Add soda price to level config class "App" diff --git a/CorsixTH/Lua/base_config.lua b/CorsixTH/Lua/base_config.lua index 5c1f687979..cce67d3f42 100644 --- a/CorsixTH/Lua/base_config.lua +++ b/CorsixTH/Lua/base_config.lua @@ -145,6 +145,8 @@ local configuration = { VeryTired = 700, -- Per mille point of attribute fatigue to be crack up (extremely) tired CrackUpTired = 800, + -- How much soda costs at a drinks machine + SodaPrice = 20, }, towns = { diff --git a/CorsixTH/Lua/hospital.lua b/CorsixTH/Lua/hospital.lua index 9fe0917c95..6a37a34e04 100644 --- a/CorsixTH/Lua/hospital.lua +++ b/CorsixTH/Lua/hospital.lua @@ -1417,10 +1417,11 @@ function Hospital:receiveMoneyForTreatment(patient) end end ---! Sell a soda to a patient. +--! Sell a soda to a patient for the price in the level config (default $20). --!param patient (patient) The patient buying the soda. function Hospital:sellSodaToPatient(patient) - self:receiveMoneyForProduct(patient, 20, _S.transactions.drinks) + local soda_price = self.world.map.level_config.gbv.SodaPrice + self:receiveMoneyForProduct(patient, soda_price, _S.transactions.drinks) self.sodas_sold = self.sodas_sold + 1 end diff --git a/CorsixTH/Lua/map.lua b/CorsixTH/Lua/map.lua index 67a6c30116..e4ad4f54b0 100644 --- a/CorsixTH/Lua/map.lua +++ b/CorsixTH/Lua/map.lua @@ -847,4 +847,7 @@ function Map:afterLoad(old, new) gbv.VeryTired = gbv.VeryTired or 700 gbv.CrackUpTired = gbv.CrackUpTired or 800 end + if old < 209 then + self.level_config.gbv.SodaPrice = 20 + end end From c0c9d26d79c6b319dbe0a34d29a16f6d446f0521 Mon Sep 17 00:00:00 2001 From: Toby Lane Date: Fri, 12 Apr 2024 17:44:10 +0100 Subject: [PATCH 84/85] Add new criteria - staff and patient happiness --- CorsixTH/Lua/endconditions.lua | 5 +++++ CorsixTH/Lua/languages/english.lua | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/CorsixTH/Lua/endconditions.lua b/CorsixTH/Lua/endconditions.lua index e210a8d91e..5d1bc28ce1 100644 --- a/CorsixTH/Lua/endconditions.lua +++ b/CorsixTH/Lua/endconditions.lua @@ -29,11 +29,16 @@ local local_criteria_variable = { {name = "num_cured" , icon = 13, formats = 2}, {name = "percentage_killed",icon = 14, formats = 2}, {name = "value", icon = 15, formats = 2}, -- Hospital value + -- New criteria + {name = "staff_happiness", icon = 16, icon_file = "MPointer", formats = 2, two_tooltips = true}, + {name = "patient_happiness",icon = 18, icon_file = "MPointer", formats = 2, two_tooltips = true}, } -- A table of functions for fetching criteria values that cannot be measured -- directly from a hospital attribute of the same name. local get_custom_criteria = { + staff_happiness = function(hospital) return 100 * hospital:getAverageStaffAttribute("happiness", 0.5) end, + patient_happiness = function(hospital) return 100 * hospital:getAveragePatientAttribute("happiness", 0.5) end, } class "EndConditions" diff --git a/CorsixTH/Lua/languages/english.lua b/CorsixTH/Lua/languages/english.lua index ad958f5cf1..b2e2b6ed6b 100644 --- a/CorsixTH/Lua/languages/english.lua +++ b/CorsixTH/Lua/languages/english.lua @@ -790,6 +790,8 @@ information = { balance = "Your bank balance fell below %d.", percentage_killed = "You killed more than %d percent of the patients.", cheat = "This was your choice or did you select the wrong button? So you can't even cheat correctly, not that funny huh?", + staff_happiness = "Your average staff happiness fell below %d%.", + patient_happiness = "Your average patient happiness fell below %d%.", }, cheat_not_possible = "Cannot use that cheat on this level. You even fail to cheat, not that funny huh?", } @@ -969,6 +971,17 @@ hotkeys_file_err = { } transactions.remove_room = "Build: Remove destroyed room" + +tooltip.status = { + over = { + staff_happiness = "Your average staff happiness should be over %d%. Currently it's %d%", + patient_happiness = "Your average patient happiness should be over %d%. Currently it's %d%", + }, + under = { + staff_happiness = "Your average staff happiness should not be less than %d%. Currently it's %d%", + patient_happiness = "Your average patient happiness should not be less than %d%. Currently it's %d%", + } +} -------------------------------- UNUSED ----------------------------------- ------------------- (kept for backwards compatibility) ---------------------- From c79bb6b0fda4803efb6ccf8f42e2d9a46abe3fe5 Mon Sep 17 00:00:00 2001 From: Artem Argus Date: Thu, 28 Nov 2024 17:58:41 +0300 Subject: [PATCH 85/85] Set minimum possible machine strength after repair to 2 (#2727) * Set minimum possible machine strength after repair is 2 --- CorsixTH/Lua/entities/machine.lua | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/CorsixTH/Lua/entities/machine.lua b/CorsixTH/Lua/entities/machine.lua index c389e06095..e3283bf82a 100644 --- a/CorsixTH/Lua/entities/machine.lua +++ b/CorsixTH/Lua/entities/machine.lua @@ -289,6 +289,19 @@ end function Machine:machineRepaired(room) room.needs_repair = nil + self:reduceStrengthOnRepair(room) + self.times_used = 0 + self:setRepairing(nil) + setSmoke(self, false) + local taskIndex = self.hospital:getIndexOfTask(self.tile_x, self.tile_y, "repairing") + self.hospital:removeHandymanTask(taskIndex, "repairing") +end + +--! Calculates if machine strength should be reduced as a result of repair +--!param room (object) machine room +function Machine:reduceStrengthOnRepair(room) + local minimum_possible_strength = 2 + if self.strength <= minimum_possible_strength then return end local current_strength = self.strength local used_out_rate = self.times_used / current_strength @@ -298,12 +311,6 @@ function Machine:machineRepaired(room) if should_reduce_strength then self.strength = current_strength - 1 end - - self.times_used = 0 - self:setRepairing(nil) - setSmoke(self, false) - local taskIndex = self.hospital:getIndexOfTask(self.tile_x, self.tile_y, "repairing") - self.hospital:removeHandymanTask(taskIndex, "repairing") end --! Tells the machine to start showing the icon that it needs repair.