diff --git a/lang/po/hu.po b/lang/po/hu.po index 841034da1b4c..9e677586fd27 100644 --- a/lang/po/hu.po +++ b/lang/po/hu.po @@ -1,12 +1,13 @@ # # Translators: # Coolthulhu , 2023 +# Péter Bodrog, 2023 # msgid "" msgstr "" "Project-Id-Version: cataclysm-bn\n" "POT-Creation-Date: 2023-08-03 04:45+0000\n" -"Last-Translator: Coolthulhu , 2023\n" +"Last-Translator: Péter Bodrog, 2023\n" "Language-Team: Hungarian (https://app.transifex.com/bn-team/teams/113585/hu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -31,6 +32,13 @@ msgid "" "survivors you must stay alert, since someone may be plotting behind your " "back to take your hard-earned loot." msgstr "" +"Valóban, a Cataclysm-ban fel kell készülnöd arra, hogy szembe nézz sok " +"nehézséggel, mint például a fogyó készletek, ellenséges lények és káros " +"időjárási viszonyok. Még a túlélő társaid között is óvatosnak kell lenned, " +"mivel valaki lehet, hogy titokban tervezi megszerezni a keményen megkeresett" +" zsákmányodat, amikor legkevésbé számítasz rá. A bizalom és a túlélési " +"ösztön próbára lesz téve, ahogy megbirkózol ennek a poszt-apokaliptikus " +"világnak a kihívásaival." #: data/help/texts.json msgid "" @@ -43,6 +51,15 @@ msgid "" "survival situation, and at least a dozen more from the eldritch and sci-fi " "nature of the Cataclysm itself." msgstr "" +"Cataclysm különbözik a hagyományos roguelike játékoktól több szempontból. " +"Nem egy földalatti labirintust fedezel fel, ahol korlátozott terület van " +"minden szinten, hanem egy valóban végtelen világot fedezel fel, amely minden" +" négy égtáj felé terjed. Ebben a túlélő roguelike játékban élelem után kell " +"kutatnod; emellett hidratált maradásra és időről időre alvásra is szükséged " +"lesz. A játék alapja a realizmus elve, így számíts arra, hogy minden " +"nehézséggel találkozol majd, amelyekre egy túlélő helyzetben számítanál, és " +"még legalább tucatnyi más nehézséggel a Cataclysm eldritch és tudományos-" +"fantasztikus jellegéből eredően." #: data/help/texts.json msgid "" diff --git a/lang/po/zh_CN.po b/lang/po/zh_CN.po index e51759742367..cce6bb3ac762 100644 --- a/lang/po/zh_CN.po +++ b/lang/po/zh_CN.po @@ -2782,7 +2782,7 @@ msgstr "" #: data/json/bionics.json data/json/items/bionics.json msgid "Bionic-Induced Deformity" msgid_plural "Bionic-Induced Deformities" -msgstr[0] "" +msgstr[0] "生化畸形" #. ~ Description for {'str': 'Bionic-Induced Deformity'} #: data/json/bionics.json @@ -2820,7 +2820,7 @@ msgstr "" #: data/json/bionics.json data/json/items/bionics.json msgid "Acidic Discharge" msgid_plural "Acidic Discharges" -msgstr[0] "" +msgstr[0] "自体排酸" #. ~ Description for {'str': 'Acidic Discharge'} #: data/json/bionics.json @@ -2832,7 +2832,7 @@ msgstr "一个出故障的生化插件,会不时向你的肌肉里释放酸液 #: data/json/bionics.json data/json/items/bionics.json msgid "Electrical Discharge" msgid_plural "Electrical Discharges" -msgstr[0] "" +msgstr[0] "自体漏电" #. ~ Description for {'str': 'Electrical Discharge'} #: data/json/bionics.json @@ -220784,6 +220784,9 @@ msgid "" "\n" "Select Yes to abandon the character to their fate, select No to return to main menu." msgstr "" +"您的角色已经死亡,您是否接受?\n" +"\n" +"选择“是”来放弃角色的命运,选择“否”返回主菜单。" #: src/game.cpp msgid "Watch the last moments of your life…?" @@ -221654,6 +221657,7 @@ msgid "" "flat surface (for ex. a table, a leather tarp, etc.). Yields are plentiful " "and varied, but it is time consuming." msgstr "" +"这种屠宰技术适合用于正确地屠宰一具尸体。对于尺寸较大的尸体,你将需要附近有绳索与树或者屠宰架或者一个平坦表面(例如桌子或防水皮革)。产量要高的多,而且产出种类也更多,但是很耗费时间。" #: src/game.cpp msgid "Field dress corpse" @@ -239681,11 +239685,11 @@ msgstr "没有名称(%s)" #: src/mod_manager.cpp msgid "CORE GAME DATA" -msgstr "" +msgstr "核心游戏资料" #: src/mod_manager.cpp msgid "CONTENT PACKS" -msgstr "" +msgstr "内容包" #: src/mod_manager.cpp msgid "ITEM ADDITION MODS" @@ -245462,14 +245466,14 @@ msgstr "基础" #: src/options.cpp msgid "Prompt on character death" -msgstr "" +msgstr "角色死亡提示" #: src/options.cpp msgid "" "If enabled, when your character dies, the player is given a prompt that " "gives the option to cancel savefile deletion and other death effects, " "returning to the main menu without saving instead." -msgstr "" +msgstr "如果启用此选项,在您的角色死亡时,玩家将收到一个提示,可以选择取消存档删除和其他死亡效果,从而返回主菜单而不保存。" #: src/options.cpp msgid "Default character name" @@ -245892,7 +245896,7 @@ msgstr "速度单位" #: src/options.cpp msgid "Switch between km/h, mph and tiles/turn." -msgstr "" +msgstr "在公里/小时,英里/小时及格/回合之间切换。" #: src/options.cpp src/units_utility.cpp msgid "km/h" @@ -245928,7 +245932,7 @@ msgstr "体积单位" #: src/options.cpp msgid "Switch between the Liter ( L ), Cup ( c ), or Quart ( qt )." -msgstr "" +msgstr "选择升(L)、杯(C)或者夸脱(qt)作为体积单位。" #: src/options.cpp msgid "Cup" @@ -246015,12 +246019,12 @@ msgstr "开启后,射击/投掷时将会自动锁定目标。" #: src/options.cpp msgid "Reaim after firing" -msgstr "" +msgstr "开火后重新瞄准" #: src/options.cpp msgid "" "If true, after firing automatically aim again if targets are available." -msgstr "" +msgstr "如果设置为true,在开火后,如果有目标可瞄准,将自动再次瞄准。" #: src/options.cpp msgid "Query on disassembly while butchering" @@ -246833,13 +246837,13 @@ msgstr "开启后,尝试使用彩色调制纹理加速ASCII渲染。需要重 #: src/options.cpp msgid "Display scaling factor" -msgstr "" +msgstr "显示比例系数" #: src/options.cpp msgid "" "Factor by which to scale the game display, 1x means no scaling. Requires " "restart." -msgstr "" +msgstr "显示游戏的缩放比例,1x 表示无缩放。需要重启。" #: src/options.cpp msgid "1x" @@ -246855,11 +246859,11 @@ msgstr "4x" #: src/options.cpp msgid "Strict JSON checks" -msgstr "" +msgstr "严格的JSON检查" #: src/options.cpp msgid "If true, will show additional warnings for JSON data correctness." -msgstr "" +msgstr "如果设置为true,将对JSON数据的正确性显示额外的警告。" #: src/options.cpp msgid "Force tileset reload" @@ -247041,18 +247045,18 @@ msgstr "如果打开,则启用尚未完全完成的电网系统,这可能会 #: src/options.cpp msgid "Made of explodium" -msgstr "" +msgstr "爆炸性材料构造" #: src/options.cpp msgid "" "Explosive items and traps will detonate when hit by damage exceeding the " "threshold. A higher number means more damage is required to detonate. Set " "to 0 to disable." -msgstr "" +msgstr "当受到超过阈值的伤害时,爆炸物品和陷阱将会引爆。较高的数字意味着需要更多的伤害来引爆。将其设置为0以禁用该功能。" #: src/options.cpp msgid "Old explosions system" -msgstr "" +msgstr "旧版爆炸系统" #: src/options.cpp msgid "" @@ -247061,6 +247065,7 @@ msgid "" " parts) will block shrapnel, while blast will bash obstacles and throw " "creatures outward. If obstacles are destroyed, blast continues outward." msgstr "" +"如果为true,则禁用基于新射线投射的爆炸系统,而采用旧系统。在新系统中,障碍物(无法通过的地形、家具或车辆部件)会阻挡弹片,而爆炸会击碎障碍物并将生物抛出。如果障碍物被摧毁,爆炸会继续向外扩散。" #: src/options.cpp msgid "World end handling" @@ -247112,11 +247117,11 @@ msgstr "设置怪物生成的密度系数。" #: src/options.cpp msgid "Animal spawn rate scaling factor" -msgstr "" +msgstr "动物生成系数" #: src/options.cpp msgid "A scaling factor that determines density of animal spawns." -msgstr "" +msgstr "设置动物生成的密度系数。" #: src/options.cpp msgid "Carrion spawn rate scaling factor" diff --git a/lang/po/zh_TW.po b/lang/po/zh_TW.po index 74db5dece748..50928b35cdc1 100644 --- a/lang/po/zh_TW.po +++ b/lang/po/zh_TW.po @@ -2783,7 +2783,7 @@ msgstr "" #: data/json/bionics.json data/json/items/bionics.json msgid "Bionic-Induced Deformity" msgid_plural "Bionic-Induced Deformities" -msgstr[0] "" +msgstr[0] "生化畸形" #. ~ Description for {'str': 'Bionic-Induced Deformity'} #: data/json/bionics.json @@ -2821,7 +2821,7 @@ msgstr "" #: data/json/bionics.json data/json/items/bionics.json msgid "Acidic Discharge" msgid_plural "Acidic Discharges" -msgstr[0] "" +msgstr[0] "自体排酸" #. ~ Description for {'str': 'Acidic Discharge'} #: data/json/bionics.json @@ -2833,7 +2833,7 @@ msgstr "一個故障的生化插件讓你偶爾出現釋放酸液到肌肉的狀 #: data/json/bionics.json data/json/items/bionics.json msgid "Electrical Discharge" msgid_plural "Electrical Discharges" -msgstr[0] "" +msgstr[0] "自体漏电" #. ~ Description for {'str': 'Electrical Discharge'} #: data/json/bionics.json @@ -220507,6 +220507,9 @@ msgid "" "\n" "Select Yes to abandon the character to their fate, select No to return to main menu." msgstr "" +"您的角色已经死亡,您是否接受?\n" +"\n" +"选择“是”来放弃角色的命运,选择“否”返回主菜单。" #: src/game.cpp msgid "Watch the last moments of your life…?" @@ -221378,6 +221381,7 @@ msgid "" "flat surface (for ex. a table, a leather tarp, etc.). Yields are plentiful " "and varied, but it is time consuming." msgstr "" +"这种屠宰技术适合用于正确地屠宰一具尸体。对于尺寸较大的尸体,你将需要附近有绳索与树或者屠宰架或者一个平坦表面(例如桌子或防水皮革)。产量要高的多,而且产出种类也更多,但是很耗费时间。" #: src/game.cpp msgid "Field dress corpse" @@ -239403,11 +239407,11 @@ msgstr "沒有名稱 (%s)" #: src/mod_manager.cpp msgid "CORE GAME DATA" -msgstr "" +msgstr "核心游戏资料" #: src/mod_manager.cpp msgid "CONTENT PACKS" -msgstr "" +msgstr "内容包" #: src/mod_manager.cpp msgid "ITEM ADDITION MODS" @@ -245193,14 +245197,14 @@ msgstr "基本" #: src/options.cpp msgid "Prompt on character death" -msgstr "" +msgstr "角色死亡提示" #: src/options.cpp msgid "" "If enabled, when your character dies, the player is given a prompt that " "gives the option to cancel savefile deletion and other death effects, " "returning to the main menu without saving instead." -msgstr "" +msgstr "如果启用此选项,在您的角色死亡时,玩家将收到一个提示,可以选择取消存档删除和其他死亡效果,从而返回主菜单而不保存。" #: src/options.cpp msgid "Default character name" @@ -245624,7 +245628,7 @@ msgstr "速度單位" #: src/options.cpp msgid "Switch between km/h, mph and tiles/turn." -msgstr "" +msgstr "在公里/小时,英里/小时及格/回合之间切换。" #: src/options.cpp src/units_utility.cpp msgid "km/h" @@ -245660,7 +245664,7 @@ msgstr "體積單位" #: src/options.cpp msgid "Switch between the Liter ( L ), Cup ( c ), or Quart ( qt )." -msgstr "" +msgstr "选择升(L)、杯(C)或者夸脱(qt)作为体积单位。" #: src/options.cpp msgid "Cup" @@ -245748,12 +245752,12 @@ msgstr "設定為 [是], 會自動把游標移動到可攻擊或投擲的目標 #: src/options.cpp msgid "Reaim after firing" -msgstr "" +msgstr "开火后重新瞄准" #: src/options.cpp msgid "" "If true, after firing automatically aim again if targets are available." -msgstr "" +msgstr "如果设置为true,在开火后,如果有目标可瞄准,将自动再次瞄准。" #: src/options.cpp msgid "Query on disassembly while butchering" @@ -246566,13 +246570,13 @@ msgstr "如果為是,則嘗試使用顏色調製紋理來加速ASCII繪圖。 #: src/options.cpp msgid "Display scaling factor" -msgstr "" +msgstr "显示比例系数" #: src/options.cpp msgid "" "Factor by which to scale the game display, 1x means no scaling. Requires " "restart." -msgstr "" +msgstr "显示游戏的缩放比例,1x 表示无缩放。需要重启。" #: src/options.cpp msgid "1x" @@ -246588,11 +246592,11 @@ msgstr "4x" #: src/options.cpp msgid "Strict JSON checks" -msgstr "" +msgstr "严格的JSON检查" #: src/options.cpp msgid "If true, will show additional warnings for JSON data correctness." -msgstr "" +msgstr "如果设置为true,将对JSON数据的正确性显示额外的警告。" #: src/options.cpp msgid "Force tileset reload" @@ -246777,18 +246781,18 @@ msgstr "如果打开,则启用尚未完全完成的电网系统,这可能会 #: src/options.cpp msgid "Made of explodium" -msgstr "" +msgstr "爆炸性材料构造" #: src/options.cpp msgid "" "Explosive items and traps will detonate when hit by damage exceeding the " "threshold. A higher number means more damage is required to detonate. Set " "to 0 to disable." -msgstr "" +msgstr "当受到超过阈值的伤害时,爆炸物品和陷阱将会引爆。较高的数字意味着需要更多的伤害来引爆。将其设置为0以禁用该功能。" #: src/options.cpp msgid "Old explosions system" -msgstr "" +msgstr "旧版爆炸系统" #: src/options.cpp msgid "" @@ -246797,6 +246801,7 @@ msgid "" " parts) will block shrapnel, while blast will bash obstacles and throw " "creatures outward. If obstacles are destroyed, blast continues outward." msgstr "" +"如果为true,则禁用基于新射线投射的爆炸系统,而采用旧系统。在新系统中,障碍物(无法通过的地形、家具或车辆部件)会阻挡弹片,而爆炸会击碎障碍物并将生物抛出。如果障碍物被摧毁,爆炸会继续向外扩散。" #: src/options.cpp msgid "World end handling" @@ -246848,11 +246853,11 @@ msgstr "設定怪物產生的密度。" #: src/options.cpp msgid "Animal spawn rate scaling factor" -msgstr "" +msgstr "动物生成系数" #: src/options.cpp msgid "A scaling factor that determines density of animal spawns." -msgstr "" +msgstr "设置动物生成的密度系数。" #: src/options.cpp msgid "Carrion spawn rate scaling factor" diff --git a/src/cata_tiles.cpp b/src/cata_tiles.cpp index 902036cca7dc..f179a190473f 100644 --- a/src/cata_tiles.cpp +++ b/src/cata_tiles.cpp @@ -3975,9 +3975,9 @@ std::vector cata_tiles::build_renderer_list() # if defined(_WIN32) { "direct3d", translate_marker( "direct3d" ) }, # endif - { "software", translate_marker( "software" ) }, { "opengl", translate_marker( "opengl" ) }, { "opengles2", translate_marker( "opengles2" ) }, + { "software", translate_marker( "software" ) }, }; int numRenderDrivers = SDL_GetNumRenderDrivers(); DebugLog( DL::Info, DC::Main ) << "Number of render drivers on your system: " << numRenderDrivers; diff --git a/src/options.cpp b/src/options.cpp index ba3e0ff03bb4..64ad7c5cd109 100644 --- a/src/options.cpp +++ b/src/options.cpp @@ -1868,14 +1868,14 @@ void options_manager::add_options_graphics() 8, 100, 8, COPT_CURSES_HIDE ); static auto font_size_options = std::array, 8> {{ - {"FONT_HEIGHT", translate_marker( "Font height" ), translate_marker( "Set the font height. Requires restart." )}, - {"FONT_SIZE", translate_marker( "Font size" ), translate_marker( "Set the font size. Requires restart." )}, - {"MAP_FONT_WIDTH", translate_marker( "Map font width" ), translate_marker( "Set the map font width. Requires restart." )}, - {"MAP_FONT_HEIGHT", translate_marker( "Map font height" ), translate_marker( "Set the map font height. Requires restart." )}, - {"MAP_FONT_SIZE", translate_marker( "Map font size" ), translate_marker( "Set the map font size. Requires restart." )}, - {"OVERMAP_FONT_WIDTH", translate_marker( "Overmap font width" ), translate_marker( "Set the overmap font width. Requires restart." )}, - {"OVERMAP_FONT_HEIGHT", translate_marker( "Overmap font height" ), translate_marker( "Set the overmap font height. Requires restart." )}, - {"OVERMAP_FONT_SIZE", translate_marker( "Overmap font size" ), translate_marker( "Set the overmap font size. Requires restart." )} + {"FONT_HEIGHT", translate_marker( "Font height" ), translate_marker( "Set the font height. Requires restart." )}, + {"FONT_SIZE", translate_marker( "Font size" ), translate_marker( "Set the font size. Requires restart." )}, + {"MAP_FONT_WIDTH", translate_marker( "Map font width" ), translate_marker( "Set the map font width. Requires restart." )}, + {"MAP_FONT_HEIGHT", translate_marker( "Map font height" ), translate_marker( "Set the map font height. Requires restart." )}, + {"MAP_FONT_SIZE", translate_marker( "Map font size" ), translate_marker( "Set the map font size. Requires restart." )}, + {"OVERMAP_FONT_WIDTH", translate_marker( "Overmap font width" ), translate_marker( "Set the overmap font width. Requires restart." )}, + {"OVERMAP_FONT_HEIGHT", translate_marker( "Overmap font height" ), translate_marker( "Set the overmap font height. Requires restart." )}, + {"OVERMAP_FONT_SIZE", translate_marker( "Overmap font size" ), translate_marker( "Set the overmap font size. Requires restart." )} } }; for( auto &&[option, option_name, option_desc] : font_size_options ) { diff --git a/src/sdlsound.cpp b/src/sdlsound.cpp index 5906116328c7..790164948aad 100644 --- a/src/sdlsound.cpp +++ b/src/sdlsound.cpp @@ -340,8 +340,7 @@ static Mix_Chunk *load_chunk( const std::string &path ) { Mix_Chunk *result = Mix_LoadWAV( path.c_str() ); if( result == nullptr ) { - // Failing to load a sound file is not a fatal error worthy of a backtrace - dbg( DL::Warn ) << "Failed to load sfx audio file " << path << ": " << Mix_GetError(); + debugmsg( "Failed to load sfx audio file %s: %s", path.c_str(), Mix_GetError() ); result = make_null_chunk(); } return result; @@ -571,18 +570,21 @@ void sfx::play_variant_sound( const std::string &id, const std::string &variant, effect_to_play ) == 0 ) { // We'll be unable to de-allocate the chunk, stop the playback right now. failed = true; - dbg( DL::Warn ) << "Mix_RegisterEffect failed: " << Mix_GetError(); + dbg( DL::Warn ) << "Mix_RegisterEffect failed { id: " << id << ", variant: " << variant << " }: " << + Mix_GetError(); Mix_HaltChannel( channel ); } } if( !failed ) { if( Mix_SetPosition( channel, static_cast( to_degrees( angle ) ), 1 ) == 0 ) { // Not critical - dbg( DL::Info ) << "Mix_SetPosition failed: " << Mix_GetError(); + dbg( DL::Info ) << "Mix_SetPosition failed { id: " << id << ", variant: " << variant << " }: " << + Mix_GetError(); } } if( failed ) { - dbg( DL::Error ) << "Failed to play sound effect: " << Mix_GetError(); + dbg( DL::Error ) << "Failed to play sound effect { id: " << id << ", variant: " << variant << " }: " + << Mix_GetError(); if( is_pitched ) { cleanup_when_channel_finished( channel, effect_to_play ); } @@ -625,12 +627,14 @@ void sfx::play_ambient_variant_sound( const std::string &id, const std::string & if( Mix_RegisterEffect( ch, empty_effect, cleanup_when_channel_finished, effect_to_play ) == 0 ) { // We'll be unable to de-allocate the chunk, stop the playback right now. failed = true; - dbg( DL::Warn ) << "Mix_RegisterEffect failed: " << Mix_GetError(); + dbg( DL::Warn ) << "Mix_RegisterEffect failed { id: " << id << ", variant: " << variant << " }: " << + Mix_GetError(); Mix_HaltChannel( ch ); } } if( failed ) { - dbg( DL::Error ) << "Failed to play sound effect: " << Mix_GetError(); + dbg( DL::Error ) << "Failed to play sound effect { id: " << id << ", variant: " << variant << " }: " + << Mix_GetError(); if( is_pitched ) { cleanup_when_channel_finished( ch, effect_to_play ); }