From 5c9ef5a2649da198f5928fda9267b731ff701f4e Mon Sep 17 00:00:00 2001 From: Pavel Stupnikov Date: Sat, 2 Apr 2016 00:50:09 +0300 Subject: [PATCH] update to 1.6.0 --HG-- branch : openttd --- Makefile.bundle.in | 2 +- Makefile.grf.in | 11 +- bin/ai/regression/regression_info.nut | 4 +- bin/baseset/opntitle.dat | Bin 166748 -> 138710 bytes changelog.txt | 31 + config.lib | 378 ++++------- docs/landscape_grid.html | 2 +- known-bugs.txt | 4 +- media/extra_grf/shore.nfo | 4 +- media/openttd.desktop.in | 2 +- os/debian/changelog | 12 + os/os2/installer/make_installer.cmd | 2 +- os/rpm/openttd.spec | 4 +- os/windows/installer/install.nsi | 4 +- projects/generate | 17 +- projects/generate.vbs | 17 +- projects/openttd_vs100.vcxproj | 1 + projects/openttd_vs100.vcxproj.filters | 3 + projects/openttd_vs80.vcproj | 4 + projects/openttd_vs90.vcproj | 4 + readme.txt | 8 +- source.list | 1 + src/3rdparty/squirrel/squirrel/sqcompiler.cpp | 2 +- src/ai/ai_gui.cpp | 5 +- src/ai/ai_info.cpp | 4 +- src/aircraft_cmd.cpp | 2 +- src/base_consist.cpp | 2 +- src/clear_cmd.cpp | 2 +- src/company_base.h | 4 +- src/company_gui.cpp | 2 +- src/core/pool_func.hpp | 4 +- src/crashlog.cpp | 17 +- src/depot_gui.cpp | 26 +- src/direction_func.h | 2 +- src/economy.cpp | 2 +- src/error_gui.cpp | 2 +- src/game/game_info.cpp | 4 +- src/genworld.h | 13 +- src/genworld_gui.cpp | 16 +- src/gfx.cpp | 9 +- src/gfx_layout.cpp | 12 +- src/gfx_layout.h | 12 +- src/gfx_type.h | 4 +- src/group_gui.cpp | 4 +- src/industry_gui.cpp | 27 +- src/industry_type.h | 8 +- src/ini.cpp | 2 +- src/lang/afrikaans.txt | 14 +- src/lang/arabic_egypt.txt | 76 +-- src/lang/basque.txt | 78 ++- src/lang/belarusian.txt | 8 +- src/lang/brazilian_portuguese.txt | 12 +- src/lang/bulgarian.txt | 6 +- src/lang/catalan.txt | 368 +++++------ src/lang/croatian.txt | 246 +++---- src/lang/czech.txt | 259 ++++---- src/lang/danish.txt | 8 +- src/lang/dutch.txt | 10 +- src/lang/english.txt | 6 +- src/lang/english_AU.txt | 10 +- src/lang/english_US.txt | 8 +- src/lang/esperanto.txt | 12 +- src/lang/estonian.txt | 10 +- src/lang/faroese.txt | 6 +- src/lang/finnish.txt | 6 +- src/lang/french.txt | 40 +- src/lang/gaelic.txt | 162 ++--- src/lang/galician.txt | 12 +- src/lang/german.txt | 28 +- src/lang/greek.txt | 368 +++++++---- src/lang/hebrew.txt | 22 +- src/lang/hungarian.txt | 8 +- src/lang/icelandic.txt | 10 +- src/lang/indonesian.txt | 8 +- src/lang/irish.txt | 79 ++- src/lang/italian.txt | 8 +- src/lang/japanese.txt | 18 +- src/lang/korean.txt | 102 +-- src/lang/latin.txt | 622 +++++++++--------- src/lang/latvian.txt | 22 +- src/lang/lithuanian.txt | 562 ++++++++-------- src/lang/luxembourgish.txt | 10 +- src/lang/malay.txt | 8 +- src/lang/norwegian_bokmal.txt | 16 +- src/lang/norwegian_nynorsk.txt | 6 +- src/lang/polish.txt | 98 +-- src/lang/portuguese.txt | 8 +- src/lang/romanian.txt | 8 +- src/lang/russian.txt | 42 +- src/lang/serbian.txt | 171 ++++- src/lang/simplified_chinese.txt | 10 +- src/lang/slovak.txt | 12 +- src/lang/slovenian.txt | 12 +- src/lang/spanish.txt | 164 ++--- src/lang/swedish.txt | 8 +- src/lang/tamil.txt | 8 +- src/lang/thai.txt | 29 +- src/lang/traditional_chinese.txt | 6 +- src/lang/turkish.txt | 136 +++- src/lang/ukrainian.txt | 68 +- src/lang/unfinished/chuvash.txt | 6 +- src/lang/unfinished/frisian.txt | 207 +++++- src/lang/unfinished/ido.txt | 6 +- src/lang/unfinished/macedonian.txt | 6 +- src/lang/unfinished/maltese.txt | 4 +- src/lang/unfinished/marathi.txt | 4 +- src/lang/unfinished/persian.txt | 20 +- src/lang/unfinished/urdu.txt | 14 +- src/lang/vietnamese.txt | 18 +- src/lang/welsh.txt | 12 +- src/language.h | 10 +- src/misc/array.hpp | 61 +- src/misc/binaryheap.hpp | 22 +- src/misc/blob.hpp | 26 +- src/misc/countedobj.cpp | 9 +- src/misc/countedptr.hpp | 98 ++- src/misc/dbg_helpers.h | 4 +- src/misc/fixedsizearray.hpp | 72 +- src/misc/hashtable.hpp | 64 +- src/misc/str.hpp | 10 +- src/misc_gui.cpp | 5 +- src/music/dmusic.cpp | 3 +- src/network/network.cpp | 2 +- src/network/network_content.h | 4 +- src/network/network_content_gui.cpp | 137 +++- src/network/network_content_gui.h | 4 +- src/network/network_func.h | 2 +- src/network/network_gui.cpp | 2 +- src/network/network_udp.cpp | 2 +- src/newgrf.cpp | 22 +- src/newgrf.h | 2 +- src/newgrf_debug_gui.cpp | 11 +- src/newgrf_gui.cpp | 4 +- src/newgrf_industries.cpp | 8 +- src/newgrf_railtype.cpp | 7 +- src/newgrf_railtype.h | 4 +- src/newgrf_sound.cpp | 35 +- src/newgrf_sound.h | 3 +- src/object.h | 5 +- src/object_gui.cpp | 75 ++- src/order_gui.cpp | 2 +- src/os/os2/os2.cpp | 5 +- src/os/unix/unix.cpp | 7 +- src/os/windows/crashlog_win.cpp | 4 +- src/os/windows/ottdres.rc.in | 8 +- src/os/windows/win32.cpp | 14 +- src/pathfinder/follow_track.hpp | 2 +- src/pathfinder/yapf/nodelist.hpp | 64 +- src/pathfinder/yapf/yapf_base.hpp | 30 +- src/pathfinder/yapf/yapf_common.hpp | 18 +- src/pathfinder/yapf/yapf_costcache.hpp | 32 +- src/pathfinder/yapf/yapf_costrail.hpp | 23 +- src/pathfinder/yapf/yapf_destrail.hpp | 35 +- src/pathfinder/yapf/yapf_node.hpp | 71 +- src/pathfinder/yapf/yapf_node_rail.hpp | 14 +- src/pathfinder/yapf/yapf_node_road.hpp | 10 +- src/pathfinder/yapf/yapf_node_ship.hpp | 9 +- src/pathfinder/yapf/yapf_rail.cpp | 107 ++- src/pathfinder/yapf/yapf_road.cpp | 24 +- src/pathfinder/yapf/yapf_ship.cpp | 12 +- src/pbs.cpp | 2 +- src/rail.h | 26 +- src/rail_cmd.cpp | 179 ++--- src/rail_gui.cpp | 2 +- src/rev.cpp | 8 +- src/rev.cpp.in | 4 +- src/road.cpp | 2 +- src/road_cmd.cpp | 2 +- src/road_gui.cpp | 8 +- src/saveload/afterload.cpp | 7 +- src/saveload/engine_sl.cpp | 2 +- src/saveload/industry_sl.cpp | 16 +- src/saveload/newgrf_sl.cpp | 4 +- src/saveload/saveload.cpp | 6 +- src/script/api/ai_changelog.hpp | 6 +- src/script/api/game_changelog.hpp | 6 +- src/script/api/script_cargo.hpp | 13 +- src/script/api/script_execmode.cpp | 8 +- src/script/api/script_execmode.hpp | 4 +- src/script/api/script_list.cpp | 2 +- src/script/api/script_road.cpp | 6 +- src/script/api/script_testmode.cpp | 8 +- src/script/api/script_testmode.hpp | 4 +- src/script/api/script_tilelist.hpp | 8 +- src/script/api/script_window.hpp | 4 +- src/settings.cpp | 4 +- src/settings_gui.cpp | 2 +- src/signs_gui.cpp | 4 +- src/smallmap_gui.cpp | 14 +- src/sound/win32_s.cpp | 2 +- src/sound_type.h | 4 +- src/station_cmd.cpp | 96 ++- src/station_gui.cpp | 6 +- src/stdafx.h | 6 +- src/strgen/strgen_base.cpp | 15 +- src/string.cpp | 29 +- src/strings.cpp | 38 +- src/table/newgrf_debug_data.h | 4 +- src/table/palettes.h | 23 +- src/table/settings.ini | 6 +- src/table/strgen_tables.h | 189 +++--- src/terraform_cmd.cpp | 4 +- src/terraform_gui.cpp | 28 +- src/texteff.cpp | 2 +- src/textfile_gui.cpp | 4 +- src/tgp.cpp | 28 +- src/timetable_cmd.cpp | 2 +- src/town_cmd.cpp | 2 +- src/town_gui.cpp | 2 +- src/train_cmd.cpp | 2 +- src/tree_cmd.cpp | 6 +- src/tunnelbridge_cmd.cpp | 2 +- src/vehicle.cpp | 13 +- src/vehicle_cmd.cpp | 2 +- src/vehicle_gui.cpp | 2 +- src/viewport.cpp | 20 +- src/viewport_type.h | 2 +- src/water_cmd.cpp | 2 +- src/widget.cpp | 6 +- src/widgets/dropdown.cpp | 6 +- src/window.cpp | 2 +- src/window_type.h | 4 +- src/zoom_func.h | 8 +- 223 files changed, 4115 insertions(+), 3050 deletions(-) diff --git a/Makefile.bundle.in b/Makefile.bundle.in index 3da99689cd..4948dc642e 100644 --- a/Makefile.bundle.in +++ b/Makefile.bundle.in @@ -1,4 +1,4 @@ -# $Id: Makefile.bundle.in 27430 2015-11-01 11:55:45Z frosch $ +# $Id: Makefile.bundle.in 27399 2015-09-17 13:12:21Z planetmaker $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. diff --git a/Makefile.grf.in b/Makefile.grf.in index aa81428358..6c6ad429c7 100644 --- a/Makefile.grf.in +++ b/Makefile.grf.in @@ -1,20 +1,17 @@ -# $Id: Makefile.grf.in 26708 2014-07-30 17:21:42Z rubidium $ +# $Id: Makefile.grf.in 27263 2015-05-02 09:59:55Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. # OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . # -# Building requires GRFCodec and NFORenum. Older versions of GRFCodec are -# known to miscompile the graphics. +# Building requires GRFCodec. # -# Recent nightlies (including sources) of both can be found at: +# Recent versions (including sources) can be found at: # http://www.openttd.org/download-grfcodec -# http://www.openttd.org/download-nforenum # -# The mercurial repository of both can be found at: +# The mercurial repository can be found at: # http://hg.openttdcoop.org/grfcodec -# http://hg.openttdcoop.org/nforenum # diff --git a/bin/ai/regression/regression_info.nut b/bin/ai/regression/regression_info.nut index 71352645f3..1f1e8e1267 100644 --- a/bin/ai/regression/regression_info.nut +++ b/bin/ai/regression/regression_info.nut @@ -1,4 +1,4 @@ -/* $Id: regression_info.nut 26895 2014-09-21 16:41:03Z fonsinchen $ */ +/* $Id: regression_info.nut 27192 2015-03-17 20:33:44Z frosch $ */ class Regression extends AIInfo { function GetAuthor() { return "OpenTTD NoAI Developers Team"; } @@ -6,7 +6,7 @@ class Regression extends AIInfo { function GetShortName() { return "REGR"; } function GetDescription() { return "This runs regression-tests on some commands. On the same map the result should always be the same."; } function GetVersion() { return 1; } - function GetAPIVersion() { return "1.5"; } + function GetAPIVersion() { return "1.6"; } function GetDate() { return "2007-03-18"; } function CreateInstance() { return "Regression"; } } diff --git a/bin/baseset/opntitle.dat b/bin/baseset/opntitle.dat index 730c176e0c7adf96426dc7e5bf04a07359fd6f08..264aaff60b5e58cad978bd390ad459da6cc06808 100644 GIT binary patch literal 138710 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%0AW(A5mRI`K#>0oLR6rC#<<~7E8cCF)i~K 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 RwY!6F{P^^ragp^+Jpc%4;iCWm literal 166748 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%0D`7 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≷L`8DkBNpqd}x8JOsr%lmF`|QB* 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 diff --git a/changelog.txt b/changelog.txt index c110109386..df0745b15b 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,3 +1,34 @@ +1.6.0 (2016-04-01) +------------------------------------------------------------------------ +(None) + + +1.6.0-RC1 (2016-03-01) +------------------------------------------------------------------------ +- Feature: [NewGRF] Allow custom sound IDs in RV property 0x12, ship property 0x10 and aircraft property 0x12 (r27507) +- Feature: When viewing online content of a particular type, hide content of other types unless they have been (auto)selected for download (r27469, r27468, r27444) +- Feature: [NewGRF] Move sprite 8 positions in sprite aligner with ctrl+click [FS#6241] (r27451) +- Feature: Lower the sell-vehicle and sell-chain buttons in the train depot GUI while dragging a vehicle over it [FS#6391] (r27450, r27446) +- Feature: Make the object placement GUI an independent window (r27438, r27397, r27346) +- Feature: [Build] Project files and compilation with MSVC2015 (r27385, r27382, r27381, r27380, r27379) +- Feature: [NewGRF] Allow railtype NewGRF to define separate sprites for the fences on either track side [FS#6315] (r27354, r27343) +- Feature: [NewGRF] Increase the maximum amount of industry types to 128 per NewGRF and 240 in total (r27279) +- Feature: Make Ctrl+Remove-Roadstop also remove the road, just like for rail stations [FS#6252] (r27251) +- Change: [NewGRF] Allow static NewGRF to enable the second rocky tile set (r27497) +- Change: Round loading percentage in loading indicators and conditional orders towards 50%, so that 0% and 100% mean completely empty or full (r27426) +- Change: [Build] Rework the configure system to make more use of pkg-config (r27377:r27366, r27361, r27360) +- Change: Enable YAPF cache debugging with desync debug level 2 (r27332) +- Change: [strgen] Default plural subparameter position for CARGO_xxx string control codes is subparameter 1 (r27295) +- Change: [NewGRF] Translate industry variable A6 (r27267) +- Change: Do not consider cargo that is already being loaded as waiting cargo wrt. the station rating [FS#6165] (r27256) +- Change: Tune down terrain generation to reduce amount of long slopes (r27230) +- Change: Generate more detailed curves at the coast (r27229) +- Change: Slightly more water in the non-custom sea levels (r27228) +- Change: Be more lenient about road stop removal when at least one stop could be removed [FS#6262] (r27225) +- Fix: [Win32] Stdin/out/err need to be re-assigned differently if the runtime lib of MSVC2015 is used (r27481) +- Fix: [Haiku] On Haiku use the appropriate system variable to obtain the include dir [FS#6401] (r27472) + + 1.5.3 (2015-12-01) ------------------------------------------------------------------------ (None) diff --git a/config.lib b/config.lib index 8022045b46..bd69093d8f 100644 --- a/config.lib +++ b/config.lib @@ -1,4 +1,4 @@ -# $Id: config.lib 27462 2015-12-01 19:36:48Z frosch $ +# $Id: config.lib 27532 2016-04-01 18:32:32Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -29,6 +29,7 @@ set_default() { strip="" lipo="" awk="awk" + pkg_config="pkg-config" os="DETECT" endian="AUTO" cpu_type="DETECT" @@ -84,7 +85,8 @@ set_default() { with_libtimidity="1" with_freetype="1" with_fontconfig="1" - with_icu="1" + with_icu_layout="1" + with_icu_sort="1" static_icu="0" with_psp_config="1" with_threads="1" @@ -105,6 +107,7 @@ set_default() { strip lipo awk + pkg_config os endian cpu_type @@ -159,7 +162,8 @@ set_default() { with_libtimidity with_freetype with_fontconfig - with_icu + with_icu_layout + with_icu_sort static_icu with_psp_config with_threads @@ -213,6 +217,8 @@ detect_params() { --windres=*) windres="$optarg";; --awk) prev_p="awk";; --awk=*) awk="$optarg";; + --pkg-config) prev_p="pkg_config";; + --pkg-config=*) pkg_config="$optarg";; --strip) prev_p="strip";; --strip=*) strip="$optarg";; --lipo) prev_p="lipo";; @@ -383,12 +389,18 @@ detect_params() { --without-libfontconfig) with_fontconfig="0";; --with-libfontconfig=*) with_fontconfig="$optarg";; - --with-icu) with_icu="2";; - --without-icu) with_icu="0";; - --with-icu=*) with_icu="$optarg";; - --with-libicu) with_icu="2";; - --without-libicu) with_icu="0";; - --with-libicu=*) with_icu="$optarg";; + --with-icu) with_icu_layout="2";with_icu_sort="2";; + --without-icu) with_icu_layout="0";with_icu_sort="0";; + --with-icu=*) with_icu_layout="$optarg";with_icu_sort="$optarg";; + --with-libicu) with_icu_layout="2";with_icu_sort="2";; + --without-libicu) with_icu_layout="0";with_icu_sort="0";; + --with-libicu=*) with_icu_layout="$optarg";with_icu_sort="$optarg";; + --with-icu-layout) with_icu_layout="2";; + --without-icu-layout) with_icu_layout="0";; + --with-icu-layout=*) with_icu_layout="$optarg";; + --with-icu-sort) with_icu_sort="2";; + --without-icu-sort) with_icu_sort="0";; + --with-icu-sort=*) with_icu_sort="$optarg";; --static-icu) static_icu="1";; --static-icu=*) static_icu="$optarg";; --static-libicu) static_icu="1";; @@ -787,7 +799,7 @@ check_params() { pre_detect_with_zlib=$with_zlib detect_zlib - if [ "$with_zlib" = "0" ] || [ -z "$zlib" ]; then + if [ "$with_zlib" = "0" ] || [ -z "$zlib-config" ]; then log 1 "WARNING: zlib was not detected or disabled" log 1 "WARNING: OpenTTD doesn't require zlib, but it does mean that many features" log 1 "WARNING: (like loading most old savegames/scenarios, loading heightmaps," @@ -838,7 +850,8 @@ check_params() { detect_png detect_freetype detect_fontconfig - detect_icu + detect_icu_layout + detect_icu_sort detect_pspconfig detect_libtimidity @@ -1653,12 +1666,13 @@ make_cflags_and_ldflags() { fi if [ "$with_zlib" != "0" ]; then - if [ "$enable_static" != "0" ] && [ "$os" != "OSX" ]; then - LIBS="$LIBS $zlib" - else - LIBS="$LIBS -lz" - fi CFLAGS="$CFLAGS -DWITH_ZLIB" + CFLAGS="$CFLAGS `$zlib_config --cflags | tr '\n\r' ' '`" + if [ "$enable_static" != "0" ]; then + LIBS="$LIBS `$zlib_config --libs --static | tr '\n\r' ' '`" + else + LIBS="$LIBS `$zlib_config --libs | tr '\n\r' ' '`" + fi fi if [ -n "$lzma_config" ]; then @@ -1704,13 +1718,7 @@ make_cflags_and_ldflags() { CFLAGS="$CFLAGS `$png_config --cflags | tr '\n\r' ' '`" if [ "$enable_static" != "0" ]; then - if [ "$os" = "OSX" ]; then - # fontconfig_config goes via pkg-config on all systems, which doesn't know --prefix - # Also, despite the reason we link to the .a file ourself (because we can't use -static), we do need to ask pkg-config about possible other deps - LIBS="$LIBS `$png_config --variable=prefix`/lib/libpng.a `$png_config --libs --static | sed s@-lpng[0-9]*@@`" - else - LIBS="$LIBS `$png_config --libs --static | tr '\n\r' ' '`" - fi + LIBS="$LIBS `$png_config --libs --static | tr '\n\r' ' '`" else LIBS="$LIBS `$png_config --libs | tr '\n\r' ' '`" fi @@ -1721,13 +1729,7 @@ make_cflags_and_ldflags() { CFLAGS="$CFLAGS `$fontconfig_config --cflags | tr '\n\r' ' '`" if [ "$enable_static" != "0" ]; then - if [ "$os" = "OSX" ]; then - # fontconfig_config goes via pkg-config on all systems, which doesn't know --prefix - # Also, despite the reason we link to the .a file ourself (because we can't use -static), we do need to ask pkg-config about possible other deps - LIBS="$LIBS `$fontconfig_config --variable=prefix`/lib/libfontconfig.a `$fontconfig_config --libs --static | sed s@-lfontconfig@@`" - else - LIBS="$LIBS `$fontconfig_config --libs --static | tr '\n\r' ' '`" - fi + LIBS="$LIBS `$fontconfig_config --libs --static | tr '\n\r' ' '`" else LIBS="$LIBS `$fontconfig_config --libs | tr '\n\r' ' '`" fi @@ -1738,26 +1740,31 @@ make_cflags_and_ldflags() { CFLAGS="$CFLAGS `$freetype_config --cflags | tr '\n\r' ' '`" if [ "$enable_static" != "0" ]; then - if [ "$os" = "OSX" ]; then - LIBS="$LIBS `$freetype_config --prefix`/lib/libfreetype.a" - else - # Is it possible to do static with freetype, if so: how? - LIBS="$LIBS `$freetype_config --libs | tr '\n\r' ' '`" - fi + LIBS="$LIBS `$freetype_config --libs --static | tr '\n\r' ' '`" else LIBS="$LIBS `$freetype_config --libs | tr '\n\r' ' '`" fi fi - if [ -n "$icu_config" ]; then - CFLAGS="$CFLAGS -DWITH_ICU" - CFLAGS="$CFLAGS `$icu_config --cppflags | tr '\n\r' ' '`" + if [ -n "$icu_layout_config" ]; then + CFLAGS="$CFLAGS -DWITH_ICU_LAYOUT" + CFLAGS="$CFLAGS `$icu_layout_config --cflags | tr '\n\r' ' '`" - # Some icu-configs have the 'feature' of not adding a space where others do add the space if [ "$static_icu" != "0" ]; then - LIBS="$LIBS `$icu_config --ldflags-searchpath` `($icu_config --ldflags-libsonly; $icu_config --ldflags-layout) | tr '\n\r' ' ' | sed s/licu/lsicu/g`" + LIBS="$LIBS `$icu_layout_config --libs --static | tr '\n\r' ' ' | sed s/-licu/-lsicu/g`" else - LIBS="$LIBS `$icu_config --ldflags-searchpath` `($icu_config --ldflags-libsonly; $icu_config --ldflags-layout) | tr '\n\r' ' '`" + LIBS="$LIBS `$icu_layout_config --libs | tr '\n\r' ' '`" + fi + fi + + if [ -n "$icu_sort_config" ]; then + CFLAGS="$CFLAGS -DWITH_ICU_SORT" + CFLAGS="$CFLAGS `$icu_sort_config --cflags | tr '\n\r' ' '`" + + if [ "$static_icu" != "0" ]; then + LIBS="$LIBS `$icu_sort_config --libs --static | tr '\n\r' ' ' | sed s/-licu/-lsicu/g`" + else + LIBS="$LIBS `$icu_sort_config --libs | tr '\n\r' ' '`" fi fi @@ -1772,13 +1779,15 @@ make_cflags_and_ldflags() { fi fi - if [ -n "$libtimidity" ]; then - if [ "$enable_static" != "0" ]; then - LIBS="$LIBS $libtimidity" - else - LIBS="$LIBS -ltimidity" - fi + if [ -n "$libtimidity_config" ]; then CFLAGS="$CFLAGS -DLIBTIMIDITY" + CFLAGS="$CFLAGS `$libtimidity_config --cflags | tr '\n\r' ' '`" + + if [ "$enable_static" != "0" ]; then + LIBS="$LIBS `$libtimidity_config --libs --static | tr '\n\r' ' '`" + else + LIBS="$LIBS `$libtimidity_config --libs | tr '\n\r' ' '`" + fi fi if [ "$with_iconv" != "0" ]; then @@ -1938,9 +1947,26 @@ check_compiler() { log 2 " exit code $ret" if ( [ -z "$machine" ] && [ "$8" != "3" ] ) || [ "$ret" != "0" ]; then - log 1 "checking $1... $compiler not found" - log 1 "I couldn't detect any $6 binary for $3" - exit 1 + if [ -z "$5" ]; then + log 1 "checking $1... $compiler not found" + log 1 "I couldn't detect any $6 binary for $3" + exit 1 + else + compiler="$3-$5" + fi + machine=`eval $compiler $9 2>/dev/null` + ret=$? + eval "$2=\"$compiler\"" + + log 2 "executing $compiler $9" + log 2 " returned $machine" + log 2 " exit code $ret" + + if ( [ -z "$machine" ] && [ "$8" != "3" ] ) || [ "$ret" != "0" ]; then + log 1 "checking $1... $compiler not found" + log 1 "I couldn't detect any $5 binary for $3" + exit 1 + fi fi if [ "$machine" != "$3" ] && ( [ "$8" = "0" ] || [ "$8" = "1" ] ); then @@ -2349,7 +2375,7 @@ detect_allegro() { return 0 fi - # By default on OSX we don't use SDL. The rest is auto-detect + # By default on OSX we don't use Allegro. The rest is auto-detect if [ "$with_allegro" = "1" ] && [ "$os" = "OSX" ] && [ "$with_cocoa" != "0" ]; then log 1 "checking Allegro... OSX, skipping" @@ -2357,33 +2383,7 @@ detect_allegro() { return 0 fi - if [ "$with_allegro" = "1" ] || [ "$with_allegro" = "" ] || [ "$with_allegro" = "2" ]; then - allegro_config="allegro-config" - else - allegro_config="$with_allegro" - fi - - version=`$allegro_config --version 2>/dev/null` - ret=$? - log 2 "executing $allegro_config --version" - log 2 " returned $version" - log 2 " exit code $ret" - - if [ -z "$version" ] || [ "$ret" != "0" ]; then - log 1 "checking Allegro... not found" - - # It was forced, so it should be found. - if [ "$with_allegro" != "1" ]; then - log 1 "configure: error: allegro-config couldn't be found" - log 1 "configure: error: you supplied '$with_allegro', but it seems invalid" - exit 1 - fi - - allegro_config="" - return 0 - fi - - log 1 "checking Allegro... found" + detect_pkg_config "$with_allegro" "allegro" "allegro_config" "4.4" } @@ -2429,33 +2429,7 @@ detect_sdl() { sleep 5 fi - if [ "$with_sdl" = "1" ] || [ "$with_sdl" = "" ] || [ "$with_sdl" = "2" ]; then - sdl_config="sdl-config" - else - sdl_config="$with_sdl" - fi - - version=`$sdl_config --version 2>/dev/null` - ret=$? - log 2 "executing $sdl_config --version" - log 2 " returned $version" - log 2 " exit code $ret" - - if [ -z "$version" ] || [ "$ret" != "0" ]; then - log 1 "checking SDL... not found" - - # It was forced, so it should be found. - if [ "$with_sdl" != "1" ]; then - log 1 "configure: error: sdl-config couldn't be found" - log 1 "configure: error: you supplied '$with_sdl', but it seems invalid" - exit 1 - fi - - sdl_config="" - return 0 - fi - - log 1 "checking SDL... found" + detect_pkg_config "$with_sdl" "sdl" "sdl_config" "1.2" } detect_osx_sdk() { @@ -2636,10 +2610,13 @@ detect_library() { fi fi if [ -z "$res" ] && [ "$os" = "HAIKU" ]; then - eval "$2=`ls -1 /boot/common/include/$4*.h 2>/dev/null | egrep \"\/$5\$\"`" + if [ -z "$includeDir" ]; then + includeDir=`finddir B_SYSTEM_HEADERS_DIRECTORY` + fi + eval "$2=`ls -1 $includeDir/$4*.h 2>/dev/null | egrep \"\/$5\$\"`" eval "res=\$$2" if [ -z "$res" ]; then - log 2 " trying /boot/common/include/$4$5... no" + log 2 " trying $includeDir/$4$5... no" fi fi @@ -2708,7 +2685,7 @@ detect_library() { } detect_zlib() { - detect_library "$with_zlib" "zlib" "libz.a" "" "zlib.h" + detect_pkg_config "$with_zlib" "zlib" "zlib_config" "1.2" } detect_lzo2() { @@ -2716,7 +2693,7 @@ detect_lzo2() { } detect_libtimidity() { - detect_library "$with_libtimidity" "libtimidity" "libtimidity.a" "" "timidity.h" + detect_pkg_config "$with_libtimidity" "libtimidity" "libtimidity_config" "0.1" "1" } detect_pkg_config() { @@ -2724,6 +2701,7 @@ detect_pkg_config() { # $2 - package name ('liblzma') # $3 - config name ('lzma_config', sets $lzma_config) # $4 - minimum module version ('2.3') + # $5 - check for dedicated, 1 is "skif if dedicated" # 0 means no, 1 is auto-detect, 2 is force if [ "$1" = "0" ]; then @@ -2733,10 +2711,17 @@ detect_pkg_config() { return 0 fi + if [ "$5" = "1" ] && [ "$1" = "1" ] && [ "$enable_dedicated" != "0" ]; then + log 1 "checking $2... dedicated server, skipping" + + eval "$3=\"\"" + return 0 + fi + log 2 "detecting $2" if [ "$1" = "1" ] || [ "$1" = "" ] || [ "$1" = "2" ]; then - pkg_config_call="pkg-config $2" + pkg_config_call="$pkg_config $2" else pkg_config_call="$1" fi @@ -2758,7 +2743,7 @@ detect_pkg_config() { # It was forced, so it should be found. if [ "$1" != "1" ]; then - log 1 "configure: error: pkg-config $2 couldn't be found" + log 1 "configure: error: $pkg_config $2 couldn't be found" log 1 "configure: error: you supplied '$1', but it seems invalid" exit 1 fi @@ -2780,89 +2765,11 @@ detect_xdg_basedir() { } detect_png() { - # 0 means no, 1 is auto-detect, 2 is force - if [ "$with_png" = "0" ]; then - log 1 "checking libpng... disabled" - - png_config="" - return 0 - fi - - if [ "$with_zlib" = "0" ] || [ -z "$zlib" ]; then - if [ "$with_png" != "1" ]; then - log 1 "checking libpng... no zlib" - log 1 "ERROR: libpng was forced, but zlib was not detected / disabled." - log 1 "ERROR: libpng depends on zlib." - - exit 1 - fi - - log 1 "checking libpng... no zlib, skipping" - - png_config="" - return 0 - fi - detect_pkg_config "$with_png" "libpng" "png_config" "1.2" } detect_freetype() { - # 0 means no, 1 is auto-detect, 2 is force - if [ "$with_freetype" = "0" ]; then - log 1 "checking libfreetype... disabled" - - freetype_config="" - return 0 - fi - if [ "$with_freetype" = "1" ] && [ "$enable_dedicated" != "0" ]; then - log 1 "checking libfreetype... dedicated server, skipping" - - freetype_config="" - return 0 - fi - - if [ "$with_zlib" = "0" ] || [ -z "$zlib" ]; then - if [ "$with_freetype" != "1" ]; then - log 1 "checking libfreetype... no zlib" - log 1 "ERROR: libfreetype was forced, but zlib was not detected / disabled." - log 1 "ERROR: libfreetype depends on zlib." - - exit 1 - fi - - log 1 "checking libfreetype... no zlib, skipping" - - freetype_config="" - return 0 - fi - - if [ "$with_freetype" = "1" ] || [ "$with_freetype" = "" ] || [ "$with_freetype" = "2" ]; then - freetype_config="freetype-config" - else - freetype_config="$with_freetype" - fi - - version=`$freetype_config --version 2>/dev/null` - ret=$? - log 2 "executing freetype_config --version" - log 2 " returned $version" - log 2 " exit code $ret" - - if [ -z "$version" ] || [ "$ret" != "0" ]; then - log 1 "checking libfreetype... not found" - - # It was forced, so it should be found. - if [ "$with_freetype" != "1" ]; then - log 1 "configure: error: freetype-config couldn't be found" - log 1 "configure: error: you supplied '$with_freetype', but it seems invalid" - exit 1 - fi - - freetype_config="" - return 0 - fi - - log 1 "checking libfreetype... found" + detect_pkg_config "$with_freetype" "freetype2" "freetype_config" "2.2" "1" } detect_fontconfig() { @@ -2873,19 +2780,6 @@ detect_fontconfig() { fontconfig_config="" return 0 fi - if [ "$with_fontconfig" = "1" ] && [ "$enable_dedicated" != "0" ]; then - log 1 "checking libfontconfig... dedicated server, skipping" - - fontconfig_config="" - return 0 - fi - if [ "$with_fontconfig" != "2" ] && [ -z "$freetype_config" ]; then - log 1 "checking libfontconfig... no freetype, skipping" - - fontconfig_config="" - return 0 - fi - if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "WINCE" ]; then log 1 "checking libfontconfig... WIN32, skipping" fontconfig_config="" @@ -2898,57 +2792,15 @@ detect_fontconfig() { return 0 fi - detect_pkg_config "$with_fontconfig" "fontconfig" "fontconfig_config" "2.3" + detect_pkg_config "$with_fontconfig" "fontconfig" "fontconfig_config" "2.3" "1" } -detect_icu() { - # 0 means no, 1 is auto-detect, 2 is force - if [ "$with_icu" = "0" ]; then - log 1 "checking libicu... disabled" +detect_icu_layout() { + detect_pkg_config "$with_icu_layout" "icu-lx" "icu_layout_config" "4.8" "1" +} - icu_config="" - return 0 - fi - if [ "$with_icu" = "1" ] && [ "$enable_dedicated" != "0" ]; then - log 1 "checking libicu... dedicated server, skipping" - - icu_config="" - return 0 - fi - - if [ "$with_icu" = "1" ] || [ "$with_icu" = "" ] || [ "$with_icu" = "2" ]; then - icu_config="icu-config" - else - icu_config="$with_icu" - fi - - version=`$icu_config --version 2>/dev/null` - ret=$? - check_version '3.6' "$version" - version_ok=$? - log 2 "executing $icu_config --version" - log 2 " returned $version" - log 2 " exit code $ret" - - if [ -z "$version" ] || [ "$ret" != "0" ] || [ "$version_ok" != "1" ]; then - if [ -n "$version" ] && [ "$version_ok" != "1" ]; then - log 1 "checking libicu... needs at least version 3.6.0, icu NOT enabled" - else - log 1 "checking libicu... not found" - fi - - # It was forced, so it should be found. - if [ "$with_icu" != "1" ]; then - log 1 "configure: error: icu-config couldn't be found" - log 1 "configure: error: you supplied '$with_icu', but it seems invalid" - exit 1 - fi - - icu_config="" - return 0 - fi - - log 1 "checking libicu... found" +detect_icu_sort() { + detect_pkg_config "$with_icu_sort" "icu-i18n" "icu_sort_config" "4.8" "1" } detect_pspconfig() { @@ -3588,6 +3440,7 @@ showhelp() { echo " --windres=WINDRES the windres to use [HOST-windres]" echo " --strip=STRIP the strip to use [HOST-strip]" echo " --awk=AWK the awk to use in configure [awk]" + echo " --pkg-config=PKG-CONFIG the pkg-config to use in configure [pkg-config]" echo " --lipo=LIPO the lipo to use (OSX ONLY) [HOST-lipo]" echo " --os=OS the OS we are compiling for [DETECT]" echo " DETECT/UNIX/OSX/FREEBSD/DRAGONFLY/OPENBSD/" @@ -3662,23 +3515,30 @@ showhelp() { echo " --with-midi=midi define which midi-player to use" echo " --with-midi-arg=arg define which args to use for the" echo " midi-player" - echo " --with-libtimidity enables libtimidity support" - echo " --with-allegro[=allegro-config]" + echo " --with-libtimidity[=\"pkg-config libtimidity\"]" + echo " enables libtimidity support" + echo " --with-allegro[=\"pkg-config allegro\"]" echo " enables Allegro video driver support" echo " --with-cocoa enables COCOA video driver (OSX ONLY)" - echo " --with-sdl[=sdl-config] enables SDL video driver support" - echo " --with-zlib[=zlib.a] enables zlib support" + echo " --with-sdl[=\"pkg-config sdl\"] enables SDL video driver support" + echo " --with-zlib[=\"pkg-config zlib\"]" + echo " enables zlib support" echo " --with-liblzma[=\"pkg-config liblzma\"]" echo " enables liblzma support" echo " --with-liblzo2[=liblzo2.a] enables liblzo2 support" - echo " --with-png[=libpng-config] enables libpng support" - echo " --with-freetype[=freetype-config]" + echo " --with-png[=\"pkg-config libpng\"]" + echo " enables libpng support" + echo " --with-freetype[=\"pkg-config freetype2\"]" echo " enables libfreetype support" echo " --with-fontconfig[=\"pkg-config fontconfig\"]" echo " enables fontconfig support" echo " --with-xdg-basedir[=\"pkg-config libxdg-basedir\"]" echo " enables XDG base directory support" - echo " --with-icu[=icu-config] enables icu (used for right-to-left support)" + echo " --with-icu enables icu components for layout and sorting" + echo " --with-icu-layout[=\"pkg-config icu-lx\"]" + echo " enables icu components for layouting (right-to-left support)" + echo " --with-icu-sort[=\"pkg-config icu-i18n\"]" + echo " enables icu components for locale specific string sorting" echo " --static-icu try to link statically (libsicu instead of" echo " libicu; can fail as the new name is guessed)" echo " --with-iconv[=iconv-path] enables iconv support" diff --git a/docs/landscape_grid.html b/docs/landscape_grid.html index 98351fcdcc..d34fe9840c 100644 --- a/docs/landscape_grid.html +++ b/docs/landscape_grid.html @@ -17,7 +17,7 @@

Landscape

-Six attributes hold the information about a tile. +Nine attributes hold the information about a tile. This can be seen in the
Landscape document. This page tries to give an overview of used and free bits of the array so you can quickly see what is used and what is not.
    diff --git a/known-bugs.txt b/known-bugs.txt index ed10aab79a..3cf3a2c7c3 100644 --- a/known-bugs.txt +++ b/known-bugs.txt @@ -1,6 +1,6 @@ OpenTTD's known bugs -Last updated: 2015-12-01 -Release version: 1.5.3 +Last updated: 2016-04-01 +Release version: 1.6.0 ------------------------------------------------------------------------ diff --git a/media/extra_grf/shore.nfo b/media/extra_grf/shore.nfo index b7ff62b925..7040841549 100644 --- a/media/extra_grf/shore.nfo +++ b/media/extra_grf/shore.nfo @@ -1,5 +1,5 @@ // -// $Id: shore.nfo 23993 2012-02-26 08:23:32Z rubidium $ +// $Id: shore.nfo 27265 2015-05-03 10:10:04Z frosch $ // // This file is part of OpenTTD. // OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -47,7 +47,7 @@ -1 sprites/shore.png 8bpp 82 200 64 32 -31 -1 normal -1 sprites/shore.png 8bpp 162 200 64 31 -31 -8 normal -1 * 6 07 83 01 \7! 03 0C - -1 * 44 0C "Missing shore tile graphics for the toyland climate" + -1 * 52 0C "Missing shore tile graphics for the toyland climate" -1 * 3 05 0D 0A -1 sprites/shore.png 8bpp 290 200 64 15 -31 0 normal -1 sprites/shore.png 8bpp 370 200 64 31 -31 -8 normal diff --git a/media/openttd.desktop.in b/media/openttd.desktop.in index 1045eac88a..9b16c1acc4 100644 --- a/media/openttd.desktop.in +++ b/media/openttd.desktop.in @@ -1,4 +1,4 @@ -# $Id: openttd.desktop.in 27270 2015-05-08 17:23:55Z frosch $ +# $Id: openttd.desktop.in 27221 2015-04-07 21:30:04Z frosch $ # http://standards.freedesktop.org/desktop-entry-spec/desktop-entry-spec-1.0.html [Desktop Entry] Type=Application diff --git a/os/debian/changelog b/os/debian/changelog index 4dd5b1155f..945a70e579 100644 --- a/os/debian/changelog +++ b/os/debian/changelog @@ -1,3 +1,15 @@ +openttd (1.6.0-0) unstable; urgency=low + + * New upstream release 1.6.0 + + -- OpenTTD Fri, 01 Apr 2016 21:00:00 +0200 + +openttd (1.6.0~RC1-0) unstable; urgency=low + + * New upstream release 1.6.0-RC1 + + -- OpenTTD Tue, 01 Mar 2016 21:00:00 +0100 + openttd (1.5.3-0) unstable; urgency=low * New upstream release 1.5.3 diff --git a/os/os2/installer/make_installer.cmd b/os/os2/installer/make_installer.cmd index 289b6ea54a..6fe6dace66 100644 --- a/os/os2/installer/make_installer.cmd +++ b/os/os2/installer/make_installer.cmd @@ -1,6 +1,6 @@ @echo off -set OPENTTD_VERSION=1.5.0 +set OPENTTD_VERSION=1.6.0 set OPENSFX_VERSION=0.8.0 set NOSOUND_VERSION=0.8.0 set OPENGFX_VERSION=1.2.0 diff --git a/os/rpm/openttd.spec b/os/rpm/openttd.spec index cd19fd9219..5ad5a53cab 100644 --- a/os/rpm/openttd.spec +++ b/os/rpm/openttd.spec @@ -17,9 +17,9 @@ # Name: openttd -Version: 1.5.beta1 +Version: 1.6.beta1 Release: 0 -%define srcver 1.5.0-beta1 +%define srcver 1.6.0-beta1 Summary: An open source reimplementation of Chris Sawyer's Transport Tycoon Deluxe License: GPL-2.0 Group: Amusements/Games/Strategy/Other diff --git a/os/windows/installer/install.nsi b/os/windows/installer/install.nsi index 2abec4a844..eb2445b62b 100644 --- a/os/windows/installer/install.nsi +++ b/os/windows/installer/install.nsi @@ -1,7 +1,7 @@ # Version numbers to update !define APPV_MAJOR 1 -!define APPV_MINOR 5 -!define APPV_MAINT 3 +!define APPV_MINOR 6 +!define APPV_MAINT 0 !define APPV_BUILD 1 !define APPV_EXTRA "" diff --git a/projects/generate b/projects/generate index 269d018630..78fd3b437b 100755 --- a/projects/generate +++ b/projects/generate @@ -1,6 +1,6 @@ #!/bin/bash -# $Id: generate 27152 2015-02-15 14:56:21Z frosch $ +# $Id: generate 27382 2015-08-10 20:36:57Z michi_cc $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -22,6 +22,15 @@ then exit 1 fi +# openttd_vs140.sln is for MSVC 2015 +# openttd_vs140.vcxproj is for MSVC 2015 +# openttd_vs140.vcxproj.filters is for MSVC 2015 +# langs_vs140.vcxproj is for MSVC 2015 +# strgen_vs140.vcxproj is for MSVC 2015 +# strgen_vs140.vcxproj.filters is for MSVC 2015 +# generate_vs140.vcxproj is for MSVC 2015 +# version_vs140.vcxproj is for MSVC 2015 + # openttd_vs100.sln is for MSVC 2010 # openttd_vs100.vcxproj is for MSVC 2010 # openttd_vs100.vcxproj.filters is for MSVC 2010 @@ -306,11 +315,17 @@ generate "$openttd" "openttd_vs80.vcproj" generate "$openttd" "openttd_vs90.vcproj" generate "$openttdvcxproj" "openttd_vs100.vcxproj" generate "$openttdfiles" "openttd_vs100.vcxproj.filters" "$openttdfilters" +generate "$openttdvcxproj" "openttd_vs140.vcxproj" +generate "$openttdfiles" "openttd_vs140.vcxproj.filters" "$openttdfilters" generate "$lang" "langs_vs80.vcproj" generate "$lang" "langs_vs90.vcproj" generate "$langvcxproj" "langs_vs100.vcxproj" generate "$langfiles" "langs_vs100.vcxproj.filters" +generate "$langvcxproj" "langs_vs140.vcxproj" +generate "$langfiles" "langs_vs140.vcxproj.filters" generate "$settings" "settings_vs80.vcproj" "$settingscommand" generate "$settings" "settings_vs90.vcproj" "$settingscommand" generate "$settingsvcxproj" "settings_vs100.vcxproj" "$settingscommand" generate "$settingsfiles" "settings_vs100.vcxproj.filters" +generate "$settingsvcxproj" "settings_vs140.vcxproj" "$settingscommand" +generate "$settingsfiles" "settings_vs140.vcxproj.filters" diff --git a/projects/generate.vbs b/projects/generate.vbs index e9ba2cb51a..25001f3e13 100755 --- a/projects/generate.vbs +++ b/projects/generate.vbs @@ -1,6 +1,6 @@ Option Explicit -' $Id: generate.vbs 26227 2014-01-05 10:19:59Z zuu $ +' $Id: generate.vbs 27382 2015-08-10 20:36:57Z michi_cc $ ' ' This file is part of OpenTTD. ' OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -10,6 +10,15 @@ Option Explicit Dim FSO Set FSO = CreateObject("Scripting.FileSystemObject") +' openttd_vs140.sln is for MSVC 2015 +' openttd_vs140.vcxproj is for MSVC 2015 +' openttd_vs140.vcxproj.filters is for MSVC 2015 +' langs_vs140.vcxproj is for MSVC 2015 +' strgen_vs140.vcxproj is for MSVC 2015 +' strgen_vs140.vcxproj.filters is for MSVC 2015 +' generate_vs140.vcxproj is for MSVC 2015 +' version_vs140.vcxproj is for MSVC 2015 + ' openttd_vs100.sln is for MSVC 2010 ' openttd_vs100.vcxproj is for MSVC 2010 ' openttd_vs100.vcxproj.filters is for MSVC 2010 @@ -369,6 +378,8 @@ generate openttd, ROOT_DIR & "/projects/openttd_vs80.vcproj", Null generate openttd, ROOT_DIR & "/projects/openttd_vs90.vcproj", Null generate openttdvcxproj, ROOT_DIR & "/projects/openttd_vs100.vcxproj", Null generate openttdfiles, ROOT_DIR & "/projects/openttd_vs100.vcxproj.filters", openttdfilters +generate openttdvcxproj, ROOT_DIR & "/projects/openttd_vs140.vcxproj", Null +generate openttdfiles, ROOT_DIR & "/projects/openttd_vs140.vcxproj.filters", openttdfilters Dim lang, langvcxproj, langfiles lang = load_lang_data(ROOT_DIR & "/src/lang", langvcxproj, langfiles) @@ -376,6 +387,8 @@ generate lang, ROOT_DIR & "/projects/langs_vs80.vcproj", Null generate lang, ROOT_DIR & "/projects/langs_vs90.vcproj", Null generate langvcxproj, ROOT_DIR & "/projects/langs_vs100.vcxproj", Null generate langfiles, ROOT_DIR & "/projects/langs_vs100.vcxproj.filters", Null +generate langvcxproj, ROOT_DIR & "/projects/langs_vs140.vcxproj", Null +generate langfiles, ROOT_DIR & "/projects/langs_vs140.vcxproj.filters", Null Dim settings, settingsvcxproj, settingscommand, settingsfiles settings = load_settings_data(ROOT_DIR & "/src/table", settingsvcxproj, settingscommand, settingsfiles) @@ -383,3 +396,5 @@ generate settings, ROOT_DIR & "/projects/settings_vs80.vcproj", settingscommand generate settings, ROOT_DIR & "/projects/settings_vs90.vcproj", settingscommand generate settingsvcxproj, ROOT_DIR & "/projects/settings_vs100.vcxproj", settingscommand generate settingsfiles, ROOT_DIR & "/projects/settings_vs100.vcxproj.filters", Null +generate settingsvcxproj, ROOT_DIR & "/projects/settings_vs140.vcxproj", settingscommand +generate settingsfiles, ROOT_DIR & "/projects/settings_vs140.vcxproj.filters", Null diff --git a/projects/openttd_vs100.vcxproj b/projects/openttd_vs100.vcxproj index 08ba13cbf7..a1a1bfc9c4 100644 --- a/projects/openttd_vs100.vcxproj +++ b/projects/openttd_vs100.vcxproj @@ -898,6 +898,7 @@ + diff --git a/projects/openttd_vs100.vcxproj.filters b/projects/openttd_vs100.vcxproj.filters index b5dcdfc5a5..06800ffdaf 100644 --- a/projects/openttd_vs100.vcxproj.filters +++ b/projects/openttd_vs100.vcxproj.filters @@ -1923,6 +1923,9 @@ Tables + + Tables + Tables diff --git a/projects/openttd_vs80.vcproj b/projects/openttd_vs80.vcproj index 4d45cce34a..7670578c3e 100644 --- a/projects/openttd_vs80.vcproj +++ b/projects/openttd_vs80.vcproj @@ -2890,6 +2890,10 @@ RelativePath=".\..\src\table\strgen_tables.h" > + + diff --git a/projects/openttd_vs90.vcproj b/projects/openttd_vs90.vcproj index b7991fa979..7ecfbd661d 100644 --- a/projects/openttd_vs90.vcproj +++ b/projects/openttd_vs90.vcproj @@ -2887,6 +2887,10 @@ RelativePath=".\..\src\table\strgen_tables.h" > + + diff --git a/readme.txt b/readme.txt index c2f8ce65b2..bda00f9f0f 100644 --- a/readme.txt +++ b/readme.txt @@ -1,5 +1,5 @@ -Last updated: 2015-12-01 -Release version: 1.5.3 +Last updated: 2016-04-01 +Release version: 1.6.0 ------------------------------------------------------------------------ @@ -308,9 +308,9 @@ chosen main OpenTTD directory: 32bpp Sets: newgrf (or a subdirectory thereof) Music Sets: baseset (or a subdirectory thereof) AIs: ai (or a subdirectory thereof) - AI Libraries: ai/libraries (or a subdirectory thereof) + AI Libraries: ai/library (or a subdirectory thereof) Game Scripts (GS): game (or a subdirectory thereof) - GS Libraries: game/libraries (or a subdirectory thereof) + GS Libraries: game/library (or a subdirectory thereof) Savegames: save Automatic Savegames: save/autosave Scenarios: scenario diff --git a/source.list b/source.list index 3b66ab9fca..df35cdd26e 100644 --- a/source.list +++ b/source.list @@ -664,6 +664,7 @@ table/roadveh_movement.h table/sprites.h table/station_land.h table/strgen_tables.h +table/string_colours.h ../objs/langs/table/strings.h table/town_land.h table/townname.h diff --git a/src/3rdparty/squirrel/squirrel/sqcompiler.cpp b/src/3rdparty/squirrel/squirrel/sqcompiler.cpp index 2cc5f3d344..ace9d201e9 100644 --- a/src/3rdparty/squirrel/squirrel/sqcompiler.cpp +++ b/src/3rdparty/squirrel/squirrel/sqcompiler.cpp @@ -57,7 +57,7 @@ typedef sqvector ExpStateVec; class SQCompiler { public: - SQCompiler(SQVM *v, SQLEXREADFUNC rg, SQUserPointer up, const SQChar* sourcename, bool raiseerror, bool lineinfo) : _lex(_ss(v), rg, up,ThrowError,this) + SQCompiler(SQVM *v, SQLEXREADFUNC rg, SQUserPointer up, const SQChar* sourcename, bool raiseerror, bool lineinfo) : _token(0), _fs(NULL), _lex(_ss(v), rg, up, ThrowError, this), _debugline(0), _debugop(0) { _vm=v; _sourcename = SQString::Create(_ss(v), sourcename); diff --git a/src/ai/ai_gui.cpp b/src/ai/ai_gui.cpp index b854d2e2af..35f72beb68 100644 --- a/src/ai/ai_gui.cpp +++ b/src/ai/ai_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: ai_gui.cpp 27187 2015-03-15 12:19:58Z frosch $ */ +/* $Id: ai_gui.cpp 27468 2015-12-10 18:28:01Z zuu $ */ /* * This file is part of OpenTTD. @@ -901,8 +901,7 @@ struct AIConfigWindow : public Window { ShowErrorMessage(STR_NETWORK_ERROR_NOTAVAILABLE, INVALID_STRING_ID, WL_ERROR); } else { #if defined(ENABLE_NETWORK) - ShowNetworkContentListWindow(NULL, CONTENT_TYPE_AI); - _network_content_client.RequestContentList(CONTENT_TYPE_GAME); + ShowNetworkContentListWindow(NULL, CONTENT_TYPE_AI, CONTENT_TYPE_GAME); #endif } break; diff --git a/src/ai/ai_info.cpp b/src/ai/ai_info.cpp index 194f65bcb6..24f16fe817 100644 --- a/src/ai/ai_info.cpp +++ b/src/ai/ai_info.cpp @@ -1,4 +1,4 @@ -/* $Id: ai_info.cpp 26774 2014-09-06 17:46:56Z rubidium $ */ +/* $Id: ai_info.cpp 27193 2015-03-17 20:45:57Z frosch $ */ /* * This file is part of OpenTTD. @@ -28,7 +28,7 @@ static bool CheckAPIVersion(const char *api_version) { return strcmp(api_version, "0.7") == 0 || strcmp(api_version, "1.0") == 0 || strcmp(api_version, "1.1") == 0 || strcmp(api_version, "1.2") == 0 || strcmp(api_version, "1.3") == 0 || strcmp(api_version, "1.4") == 0 || - strcmp(api_version, "1.5") == 0; + strcmp(api_version, "1.5") == 0 || strcmp(api_version, "1.6") == 0; } #if defined(WIN32) diff --git a/src/aircraft_cmd.cpp b/src/aircraft_cmd.cpp index 60ea45fd0b..faf11a818d 100644 --- a/src/aircraft_cmd.cpp +++ b/src/aircraft_cmd.cpp @@ -1,4 +1,4 @@ -/* $Id: aircraft_cmd.cpp 27432 2015-11-01 12:03:13Z frosch $ */ +/* $Id: aircraft_cmd.cpp 27422 2015-10-30 16:20:00Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/base_consist.cpp b/src/base_consist.cpp index f7f4dfbb11..08ffd2b982 100644 --- a/src/base_consist.cpp +++ b/src/base_consist.cpp @@ -1,4 +1,4 @@ -/* $Id: base_consist.cpp 27348 2015-07-30 18:45:29Z frosch $ */ +/* $Id: base_consist.cpp 27280 2015-05-11 16:40:06Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/clear_cmd.cpp b/src/clear_cmd.cpp index 57dc395e1a..6800dae4fb 100644 --- a/src/clear_cmd.cpp +++ b/src/clear_cmd.cpp @@ -1,4 +1,4 @@ -/* $Id: clear_cmd.cpp 27214 2015-03-31 18:45:30Z frosch $ */ +/* $Id: clear_cmd.cpp 27200 2015-03-20 19:27:15Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/company_base.h b/src/company_base.h index b220669c8c..cb8a6fe259 100644 --- a/src/company_base.h +++ b/src/company_base.h @@ -1,4 +1,4 @@ -/* $Id: company_base.h 26081 2013-11-24 09:52:35Z rubidium $ */ +/* $Id: company_base.h 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -45,7 +45,7 @@ struct CompanyInfrastructure { } }; -typedef Pool CompanyPool; +typedef Pool CompanyPool; extern CompanyPool _company_pool; diff --git a/src/company_gui.cpp b/src/company_gui.cpp index cc0b983074..a0e7498474 100644 --- a/src/company_gui.cpp +++ b/src/company_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: company_gui.cpp 27432 2015-11-01 12:03:13Z frosch $ */ +/* $Id: company_gui.cpp 27427 2015-10-30 17:24:30Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/core/pool_func.hpp b/src/core/pool_func.hpp index 2c57dacba5..b89082b9f4 100644 --- a/src/core/pool_func.hpp +++ b/src/core/pool_func.hpp @@ -1,4 +1,4 @@ -/* $Id: pool_func.hpp 26057 2013-11-23 13:12:19Z rubidium $ */ +/* $Id: pool_func.hpp 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -121,7 +121,7 @@ DEFINE_POOL_METHOD(inline void *)::AllocateItem(size_t size, size_t index) item = (Titem *)MallocT(size); } this->data[index] = item; - item->index = (uint)index; + item->index = (Tindex)(uint)index; return item; } diff --git a/src/crashlog.cpp b/src/crashlog.cpp index cecbb63120..a876afb85e 100644 --- a/src/crashlog.cpp +++ b/src/crashlog.cpp @@ -1,4 +1,4 @@ -/* $Id: crashlog.cpp 26538 2014-04-28 21:06:51Z rubidium $ */ +/* $Id: crashlog.cpp 27367 2015-08-09 12:33:27Z rubidium $ */ /* * This file is part of OpenTTD. @@ -196,9 +196,9 @@ char *CrashLog::LogConfiguration(char *buffer, const char *last) const # include # include FT_FREETYPE_H #endif /* WITH_FREETYPE */ -#ifdef WITH_ICU +#if defined(WITH_ICU_LAYOUT) || defined(WITH_ICU_SORT) # include -#endif /* WITH_ICU */ +#endif /* WITH_ICU_SORT || WITH_ICU_LAYOUT */ #ifdef WITH_LZMA # include #endif @@ -241,14 +241,19 @@ char *CrashLog::LogLibraries(char *buffer, const char *last) const buffer += seprintf(buffer, last, " FreeType: %d.%d.%d\n", major, minor, patch); #endif /* WITH_FREETYPE */ -#ifdef WITH_ICU +#if defined(WITH_ICU_LAYOUT) || defined(WITH_ICU_SORT) /* 4 times 0-255, separated by dots (.) and a trailing '\0' */ char buf[4 * 3 + 3 + 1]; UVersionInfo ver; u_getVersion(ver); u_versionToString(ver, buf); - buffer += seprintf(buffer, last, " ICU: %s\n", buf); -#endif /* WITH_ICU */ +#ifdef WITH_ICU_SORT + buffer += seprintf(buffer, last, " ICU i18n: %s\n", buf); +#endif +#ifdef WITH_ICU_LAYOUT + buffer += seprintf(buffer, last, " ICU lx: %s\n", buf); +#endif +#endif /* WITH_ICU_SORT || WITH_ICU_LAYOUT */ #ifdef WITH_LZMA buffer += seprintf(buffer, last, " LZMA: %s\n", lzma_version_string()); diff --git a/src/depot_gui.cpp b/src/depot_gui.cpp index bddfc7c2d7..43a58f870f 100644 --- a/src/depot_gui.cpp +++ b/src/depot_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: depot_gui.cpp 27134 2015-02-01 20:54:24Z frosch $ */ +/* $Id: depot_gui.cpp 27450 2015-11-20 09:25:27Z alberth $ */ /* * This file is part of OpenTTD. @@ -229,6 +229,7 @@ struct DepotWindow : Window { VehicleID vehicle_over; ///< Rail vehicle over which another one is dragged, \c INVALID_VEHICLE if none. VehicleType type; bool generate_list; + int hovered_widget; ///< Index of the widget being hovered during drag/drop. -1 if no drag is in progress. VehicleList vehicle_list; VehicleList wagon_list; uint unitnumber_digits; @@ -243,6 +244,7 @@ struct DepotWindow : Window { this->sel = INVALID_VEHICLE; this->vehicle_over = INVALID_VEHICLE; this->generate_list = true; + this->hovered_widget = -1; this->type = type; this->num_columns = 1; // for non-trains this gets set in FinishInitNested() this->unitnumber_digits = 2; @@ -867,11 +869,29 @@ struct DepotWindow : Window { this->sel = INVALID_VEHICLE; this->vehicle_over = INVALID_VEHICLE; this->SetWidgetDirty(WID_D_MATRIX); + + if (this->hovered_widget != -1) { + this->SetWidgetLoweredState(this->hovered_widget, false); + this->SetWidgetDirty(this->hovered_widget); + this->hovered_widget = -1; + } } virtual void OnMouseDrag(Point pt, int widget) { - if (this->type != VEH_TRAIN || this->sel == INVALID_VEHICLE) return; + if (this->sel == INVALID_VEHICLE) return; + if (widget != this->hovered_widget) { + if (this->hovered_widget == WID_D_SELL || this->hovered_widget == WID_D_SELL_CHAIN) { + this->SetWidgetLoweredState(this->hovered_widget, false); + this->SetWidgetDirty(this->hovered_widget); + } + this->hovered_widget = widget; + if (this->hovered_widget == WID_D_SELL || this->hovered_widget == WID_D_SELL_CHAIN) { + this->SetWidgetLoweredState(this->hovered_widget, true); + this->SetWidgetDirty(this->hovered_widget); + } + } + if (this->type != VEH_TRAIN) return; /* A rail vehicle is dragged.. */ if (widget != WID_D_MATRIX) { // ..outside of the depot matrix. @@ -958,7 +978,9 @@ struct DepotWindow : Window { default: this->sel = INVALID_VEHICLE; this->SetDirty(); + break; } + this->hovered_widget = -1; _cursor.vehchain = false; } diff --git a/src/direction_func.h b/src/direction_func.h index d124f84f45..bd10c8515b 100644 --- a/src/direction_func.h +++ b/src/direction_func.h @@ -1,4 +1,4 @@ -/* $Id: direction_func.h 27432 2015-11-01 12:03:13Z frosch $ */ +/* $Id: direction_func.h 27422 2015-10-30 16:20:00Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/economy.cpp b/src/economy.cpp index 674f00f7b5..3ecc8fcc10 100644 --- a/src/economy.cpp +++ b/src/economy.cpp @@ -1,4 +1,4 @@ -/* $Id: economy.cpp 27348 2015-07-30 18:45:29Z frosch $ */ +/* $Id: economy.cpp 27282 2015-05-11 16:58:09Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/error_gui.cpp b/src/error_gui.cpp index ddb291067b..6b1c869dd0 100644 --- a/src/error_gui.cpp +++ b/src/error_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: error_gui.cpp 27349 2015-07-30 18:48:25Z frosch $ */ +/* $Id: error_gui.cpp 27307 2015-06-20 12:57:34Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/game/game_info.cpp b/src/game/game_info.cpp index d753fa63f5..9733dfdde7 100644 --- a/src/game/game_info.cpp +++ b/src/game/game_info.cpp @@ -1,4 +1,4 @@ -/* $Id: game_info.cpp 26774 2014-09-06 17:46:56Z rubidium $ */ +/* $Id: game_info.cpp 27192 2015-03-17 20:33:44Z frosch $ */ /* * This file is part of OpenTTD. @@ -25,7 +25,7 @@ static bool CheckAPIVersion(const char *api_version) { return strcmp(api_version, "1.2") == 0 || strcmp(api_version, "1.3") == 0 || strcmp(api_version, "1.4") == 0 || - strcmp(api_version, "1.5") == 0; + strcmp(api_version, "1.5") == 0 || strcmp(api_version, "1.6") == 0; } #if defined(WIN32) diff --git a/src/genworld.h b/src/genworld.h index 06560926a9..a50164cea9 100644 --- a/src/genworld.h +++ b/src/genworld.h @@ -1,4 +1,4 @@ -/* $Id: genworld.h 23611 2011-12-19 20:56:50Z truebrain $ */ +/* $Id: genworld.h 27231 2015-04-11 18:45:18Z alberth $ */ /* * This file is part of OpenTTD. @@ -32,6 +32,17 @@ enum GenWorldMode { GWM_HEIGHTMAP = 3, ///< Generate a newgame from a heightmap }; +/** Smoothness presets. */ +enum TgenSmoothness { + TGEN_SMOOTHNESS_BEGIN, ///< First smoothness value. + TGEN_SMOOTHNESS_VERY_SMOOTH = TGEN_SMOOTHNESS_BEGIN, ///< Smoothness preset 'very smooth'. + TGEN_SMOOTHNESS_SMOOTH, ///< Smoothness preset 'smooth'. + TGEN_SMOOTHNESS_ROUGH, ///< Smoothness preset 'rough'. + TGEN_SMOOTHNESS_VERY_ROUGH, ///< Smoothness preset 'very rough'. + + TGEN_SMOOTHNESS_END, ///< Used to iterate. +}; + static const uint CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY = 4; ///< Value for custom sea level in difficulty settings. static const uint CUSTOM_SEA_LEVEL_MIN_PERCENTAGE = 1; ///< Minimum percentage a user can specify for custom sea level. static const uint CUSTOM_SEA_LEVEL_MAX_PERCENTAGE = 90; ///< Maximum percentage a user can specify for custom sea level. diff --git a/src/genworld_gui.cpp b/src/genworld_gui.cpp index e0128e9243..714d2d2d01 100644 --- a/src/genworld_gui.cpp +++ b/src/genworld_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: genworld_gui.cpp 27140 2015-02-08 21:05:48Z alberth $ */ +/* $Id: genworld_gui.cpp 27285 2015-05-16 12:01:19Z alberth $ */ /* * This file is part of OpenTTD. @@ -403,10 +403,10 @@ struct GenerateLandscapeWindow : public Window { /* You can't select smoothness / non-water borders if not terragenesis */ if (mode == GLWM_GENERATE) { - this->SetWidgetDisabledState(WID_GL_SMOOTHNESS_PULLDOWN, _settings_newgame.game_creation.land_generator == 0); - this->SetWidgetDisabledState(WID_GL_VARIETY_PULLDOWN, _settings_newgame.game_creation.land_generator == 0); - this->SetWidgetDisabledState(WID_GL_BORDERS_RANDOM, _settings_newgame.game_creation.land_generator == 0 || !_settings_newgame.construction.freeform_edges); - this->SetWidgetsDisabledState(_settings_newgame.game_creation.land_generator == 0 || !_settings_newgame.construction.freeform_edges || _settings_newgame.game_creation.water_borders == BORDERS_RANDOM, + this->SetWidgetDisabledState(WID_GL_SMOOTHNESS_PULLDOWN, _settings_newgame.game_creation.land_generator == LG_ORIGINAL); + this->SetWidgetDisabledState(WID_GL_VARIETY_PULLDOWN, _settings_newgame.game_creation.land_generator == LG_ORIGINAL); + this->SetWidgetDisabledState(WID_GL_BORDERS_RANDOM, _settings_newgame.game_creation.land_generator == LG_ORIGINAL || !_settings_newgame.construction.freeform_edges); + this->SetWidgetsDisabledState(_settings_newgame.game_creation.land_generator == LG_ORIGINAL || !_settings_newgame.construction.freeform_edges || _settings_newgame.game_creation.water_borders == BORDERS_RANDOM, WID_GL_WATER_NW, WID_GL_WATER_NE, WID_GL_WATER_SE, WID_GL_WATER_SW, WIDGET_LIST_END); this->SetWidgetLoweredState(WID_GL_BORDERS_RANDOM, _settings_newgame.game_creation.water_borders == BORDERS_RANDOM); @@ -416,7 +416,7 @@ struct GenerateLandscapeWindow : public Window { this->SetWidgetLoweredState(WID_GL_WATER_SE, HasBit(_settings_newgame.game_creation.water_borders, BORDER_SE)); this->SetWidgetLoweredState(WID_GL_WATER_SW, HasBit(_settings_newgame.game_creation.water_borders, BORDER_SW)); - this->SetWidgetsDisabledState(_settings_newgame.game_creation.land_generator == 0 && (_settings_newgame.game_creation.landscape == LT_ARCTIC || _settings_newgame.game_creation.landscape == LT_TROPIC), + this->SetWidgetsDisabledState(_settings_newgame.game_creation.land_generator == LG_ORIGINAL && (_settings_newgame.game_creation.landscape == LT_ARCTIC || _settings_newgame.game_creation.landscape == LT_TROPIC), WID_GL_TERRAIN_PULLDOWN, WID_GL_WATER_PULLDOWN, WIDGET_LIST_END); } @@ -432,7 +432,7 @@ struct GenerateLandscapeWindow : public Window { this->SetWidgetDisabledState(WID_GL_SNOW_LEVEL_UP, _settings_newgame.game_creation.snow_line_height >= MAX_SNOWLINE_HEIGHT || _settings_newgame.game_creation.landscape != LT_ARCTIC); /* Do not allow a custom sea level with the original land generator. */ - if (_settings_newgame.game_creation.land_generator == 0 && + if (_settings_newgame.game_creation.land_generator == LG_ORIGINAL && _settings_newgame.difficulty.quantity_sea_lakes == CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY) { _settings_newgame.difficulty.quantity_sea_lakes = CUSTOM_SEA_LEVEL_MIN_PERCENTAGE; } @@ -655,7 +655,7 @@ struct GenerateLandscapeWindow : public Window { case WID_GL_WATER_PULLDOWN: { // Water quantity uint32 hidden_mask = 0; /* Disable custom water level when the original map generator is active. */ - if (_settings_newgame.game_creation.land_generator == 0) { + if (_settings_newgame.game_creation.land_generator == LG_ORIGINAL) { SetBit(hidden_mask, CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY); } ShowDropDownMenu(this, _sea_lakes, _settings_newgame.difficulty.quantity_sea_lakes, WID_GL_WATER_PULLDOWN, 0, hidden_mask); diff --git a/src/gfx.cpp b/src/gfx.cpp index f318c724dc..34e5f43660 100644 --- a/src/gfx.cpp +++ b/src/gfx.cpp @@ -1,4 +1,4 @@ -/* $Id: gfx.cpp 27351 2015-07-30 18:53:31Z frosch $ */ +/* $Id: gfx.cpp 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -23,6 +23,7 @@ #include "newgrf_debug.h" #include "table/palettes.h" +#include "table/string_colours.h" #include "table/sprites.h" #include "table/control_codes.h" @@ -185,7 +186,7 @@ static inline void GfxDoDrawLine(void *video, int x, int y, int x2, int y2, int int grade_x = x2 - x; /* Clipping rectangle. Slightly extended so we can ignore the width of the line. */ - uint extra = CeilDiv(3 * width, 4); // not less then "width * sqrt(2) / 2" + int extra = (int)CeilDiv(3 * width, 4); // not less then "width * sqrt(2) / 2" Rect clip = { -extra, -extra, screen_width - 1 + extra, screen_height - 1 + extra }; /* prevent integer overflows. */ @@ -585,7 +586,7 @@ int GetStringLineCount(StringID str, int maxw) */ Dimension GetStringMultiLineBoundingBox(StringID str, const Dimension &suggestion) { - Dimension box = {suggestion.width, GetStringHeight(str, suggestion.width)}; + Dimension box = {suggestion.width, (uint)GetStringHeight(str, suggestion.width)}; return box; } @@ -597,7 +598,7 @@ Dimension GetStringMultiLineBoundingBox(StringID str, const Dimension &suggestio */ Dimension GetStringMultiLineBoundingBox(const char *str, const Dimension &suggestion) { - Dimension box = {suggestion.width, GetStringHeight(str, suggestion.width)}; + Dimension box = {suggestion.width, (uint)GetStringHeight(str, suggestion.width)}; return box; } diff --git a/src/gfx_layout.cpp b/src/gfx_layout.cpp index f24a80413a..5df42745e3 100644 --- a/src/gfx_layout.cpp +++ b/src/gfx_layout.cpp @@ -1,4 +1,4 @@ -/* $Id: gfx_layout.cpp 26482 2014-04-23 20:13:33Z rubidium $ */ +/* $Id: gfx_layout.cpp 27367 2015-08-09 12:33:27Z rubidium $ */ /* * This file is part of OpenTTD. @@ -17,9 +17,9 @@ #include "table/control_codes.h" -#ifdef WITH_ICU +#ifdef WITH_ICU_LAYOUT #include -#endif /* WITH_ICU */ +#endif /* WITH_ICU_LAYOUT */ #include "safeguards.h" @@ -42,7 +42,7 @@ Font::Font(FontSize size, TextColour colour) : assert(size < FS_END); } -#ifdef WITH_ICU +#ifdef WITH_ICU_LAYOUT /* Implementation details of LEFontInstance */ le_int32 Font::getUnitsPerEM() const @@ -213,7 +213,7 @@ static ParagraphLayouter *GetParagraphLayout(UChar *buff, UChar *buff_end, FontM return new ICUParagraphLayout(p); } -#endif /* WITH_ICU */ +#endif /* WITH_ICU_LAYOUT */ /*** Paragraph layout ***/ /** @@ -654,7 +654,7 @@ Layouter::Layouter(const char *str, int maxw, TextColour colour, FontSize fontsi line.layout->Reflow(); } else { /* Line is new, layout it */ -#ifdef WITH_ICU +#ifdef WITH_ICU_LAYOUT FontState old_state = state; const char *old_str = str; diff --git a/src/gfx_layout.h b/src/gfx_layout.h index 1b9b9bbb4a..63afe478bb 100644 --- a/src/gfx_layout.h +++ b/src/gfx_layout.h @@ -1,4 +1,4 @@ -/* $Id: gfx_layout.h 26029 2013-11-17 17:08:20Z michi_cc $ */ +/* $Id: gfx_layout.h 27367 2015-08-09 12:33:27Z rubidium $ */ /* * This file is part of OpenTTD. @@ -19,12 +19,12 @@ #include #include -#ifdef WITH_ICU +#ifdef WITH_ICU_LAYOUT #include "layout/ParagraphLayout.h" #define ICU_FONTINSTANCE : public LEFontInstance -#else /* WITH_ICU */ +#else /* WITH_ICU_LAYOUT */ #define ICU_FONTINSTANCE -#endif /* WITH_ICU */ +#endif /* WITH_ICU_LAYOUT */ /** * Text drawing parameters, which can change while drawing a line, but are kept between multiple parts @@ -75,7 +75,7 @@ public: Font(FontSize size, TextColour colour); -#ifdef WITH_ICU +#ifdef WITH_ICU_LAYOUT /* Implementation details of LEFontInstance */ le_int32 getUnitsPerEM() const; @@ -91,7 +91,7 @@ public: LEGlyphID mapCharToGlyph(LEUnicode32 ch) const; void getGlyphAdvance(LEGlyphID glyph, LEPoint &advance) const; le_bool getGlyphPoint(LEGlyphID glyph, le_int32 pointNumber, LEPoint &point) const; -#endif /* WITH_ICU */ +#endif /* WITH_ICU_LAYOUT */ }; /** Mapping from index to font. */ diff --git a/src/gfx_type.h b/src/gfx_type.h index b209d6e2db..3d0da98454 100644 --- a/src/gfx_type.h +++ b/src/gfx_type.h @@ -1,4 +1,4 @@ -/* $Id: gfx_type.h 27167 2015-02-22 23:06:45Z frosch $ */ +/* $Id: gfx_type.h 27340 2015-07-26 09:47:17Z frosch $ */ /* * This file is part of OpenTTD. @@ -237,7 +237,7 @@ enum Colours { }; template <> struct EnumPropsT : MakeEnumPropsT {}; -/** Colour of the strings, see _string_colourmap in table/palettes.h or docs/ottd-colourtext-palette.png */ +/** Colour of the strings, see _string_colourmap in table/string_colours.h or docs/ottd-colourtext-palette.png */ enum TextColour { TC_BEGIN = 0x00, TC_FROMSTRING = 0x00, diff --git a/src/group_gui.cpp b/src/group_gui.cpp index 420f70f283..8d9be9a504 100644 --- a/src/group_gui.cpp +++ b/src/group_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: group_gui.cpp 26960 2014-10-05 11:20:02Z peter1138 $ */ +/* $Id: group_gui.cpp 27300 2015-06-20 11:05:11Z frosch $ */ /* * This file is part of OpenTTD. @@ -669,7 +669,7 @@ public: case WID_GL_REPLACE_PROTECTION: { const Group *g = Group::GetIfValid(this->vli.index); if (g != NULL) { - DoCommandP(0, this->vli.index, !g->replace_protection | (_ctrl_pressed << 1), CMD_SET_GROUP_REPLACE_PROTECTION); + DoCommandP(0, this->vli.index, (g->replace_protection ? 0 : 1) | (_ctrl_pressed << 1), CMD_SET_GROUP_REPLACE_PROTECTION); } break; } diff --git a/src/industry_gui.cpp b/src/industry_gui.cpp index e287fbd98d..f8ac814017 100644 --- a/src/industry_gui.cpp +++ b/src/industry_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: industry_gui.cpp 26960 2014-10-05 11:20:02Z peter1138 $ */ +/* $Id: industry_gui.cpp 27277 2015-05-09 09:24:19Z frosch $ */ /* * This file is part of OpenTTD. @@ -42,12 +42,12 @@ #include "table/strings.h" +#include + #include "safeguards.h" bool _ignore_restrictions; -uint64 _displayed_industries; ///< Communication from the industry chain window to the smallmap window about what industries to display. - -assert_compile(NUM_INDUSTRYTYPES <= 64); // Make sure all industry types fit in _displayed_industries. +std::bitset _displayed_industries; ///< Communication from the industry chain window to the smallmap window about what industries to display. /** Cargo suffix type (for which window is it requested) */ enum CargoSuffixType { @@ -229,7 +229,7 @@ class BuildIndustryWindow : public Window { * The tests performed after the enabled allow to load the industries * In the same way they are inserted by grf (if any) */ - for (uint8 i = 0; i < NUM_INDUSTRYTYPES; i++) { + for (uint i = 0; i < NUM_INDUSTRYTYPES; i++) { IndustryType ind = _sorted_industry_types[i]; const IndustrySpec *indsp = GetIndustrySpec(ind); if (indsp->enabled) { @@ -2295,7 +2295,8 @@ struct IndustryCargoesWindow : public Window { { this->GetWidget(WID_IC_CAPTION)->widget_data = STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION; this->ind_cargo = it; - _displayed_industries = 1ULL << it; + _displayed_industries.reset(); + _displayed_industries.set(it); this->fields.Clear(); CargoesRow *row = this->fields.Append(); @@ -2339,12 +2340,12 @@ struct IndustryCargoesWindow : public Window { if (HasCommonValidCargo(central_sp->accepts_cargo, lengthof(central_sp->accepts_cargo), indsp->produced_cargo, lengthof(indsp->produced_cargo))) { this->PlaceIndustry(1 + supp_count * num_indrows / num_supp, 0, it); - SetBit(_displayed_industries, it); + _displayed_industries.set(it); supp_count++; } if (HasCommonValidCargo(central_sp->produced_cargo, lengthof(central_sp->produced_cargo), indsp->accepts_cargo, lengthof(indsp->accepts_cargo))) { this->PlaceIndustry(1 + cust_count * num_indrows / num_cust, 4, it); - SetBit(_displayed_industries, it); + _displayed_industries.set(it); cust_count++; } } @@ -2373,7 +2374,7 @@ struct IndustryCargoesWindow : public Window { { this->GetWidget(WID_IC_CAPTION)->widget_data = STR_INDUSTRY_CARGOES_CARGO_CAPTION; this->ind_cargo = cid + NUM_INDUSTRYTYPES; - _displayed_industries = 0; + _displayed_industries.reset(); this->fields.Clear(); CargoesRow *row = this->fields.Append(); @@ -2408,12 +2409,12 @@ struct IndustryCargoesWindow : public Window { if (HasCommonValidCargo(&cid, 1, indsp->produced_cargo, lengthof(indsp->produced_cargo))) { this->PlaceIndustry(1 + supp_count * num_indrows / num_supp, 0, it); - SetBit(_displayed_industries, it); + _displayed_industries.set(it); supp_count++; } if (HasCommonValidCargo(&cid, 1, indsp->accepts_cargo, lengthof(indsp->accepts_cargo))) { this->PlaceIndustry(1 + cust_count * num_indrows / num_cust, 2, it); - SetBit(_displayed_industries, it); + _displayed_industries.set(it); cust_count++; } } @@ -2604,7 +2605,7 @@ struct IndustryCargoesWindow : public Window { case WID_IC_IND_DROPDOWN: { DropDownList *lst = new DropDownList; - for (uint8 i = 0; i < NUM_INDUSTRYTYPES; i++) { + for (uint i = 0; i < NUM_INDUSTRYTYPES; i++) { IndustryType ind = _sorted_industry_types[i]; const IndustrySpec *indsp = GetIndustrySpec(ind); if (!indsp->enabled) continue; @@ -2691,7 +2692,7 @@ const int IndustryCargoesWindow::VERT_TEXT_PADDING = 5; ///< Vertical padding ar static void ShowIndustryCargoesWindow(IndustryType id) { if (id >= NUM_INDUSTRYTYPES) { - for (uint8 i = 0; i < NUM_INDUSTRYTYPES; i++) { + for (uint i = 0; i < NUM_INDUSTRYTYPES; i++) { const IndustrySpec *indsp = GetIndustrySpec(_sorted_industry_types[i]); if (indsp->enabled) { id = _sorted_industry_types[i]; diff --git a/src/industry_type.h b/src/industry_type.h index 97b82c52d4..7bd2e2031e 100644 --- a/src/industry_type.h +++ b/src/industry_type.h @@ -1,4 +1,4 @@ -/* $Id: industry_type.h 26729 2014-08-13 19:31:45Z alberth $ */ +/* $Id: industry_type.h 27279 2015-05-09 10:21:55Z frosch $ */ /* * This file is part of OpenTTD. @@ -22,13 +22,13 @@ struct IndustryTileSpec; static const IndustryID INVALID_INDUSTRY = 0xFFFF; -static const IndustryType NUM_INDUSTRYTYPES_PER_GRF = 64; ///< maximum number of industry types per NewGRF +static const IndustryType NUM_INDUSTRYTYPES_PER_GRF = 128; ///< maximum number of industry types per NewGRF; limited to 128 because bit 7 has a special meaning in some variables/callbacks (see MapNewGRFIndustryType). static const IndustryType NEW_INDUSTRYOFFSET = 37; ///< original number of industry types -static const IndustryType NUM_INDUSTRYTYPES = 64; ///< total number of industry types, new and old +static const IndustryType NUM_INDUSTRYTYPES = 240; ///< total number of industry types, new and old; limited to 240 because we need some special ids like INVALID_INDUSTRYTYPE, IT_AI_UNKNOWN, IT_AI_TOWN, ... static const IndustryType INVALID_INDUSTRYTYPE = NUM_INDUSTRYTYPES; ///< one above amount is considered invalid -static const IndustryGfx NUM_INDUSTRYTILES_PER_GRF = 255; ///< Maximum number of industry tiles per NewGRF; limited to 255 to allow extending Action3 with an extended byte later on. +static const IndustryGfx NUM_INDUSTRYTILES_PER_GRF = 255; ///< Maximum number of industry tiles per NewGRF; limited to 255 to allow extending Action3 with an extended byte later on. static const IndustryGfx INDUSTRYTILE_NOANIM = 0xFF; ///< flag to mark industry tiles as having no animation static const IndustryGfx NEW_INDUSTRYTILEOFFSET = 175; ///< original number of tiles diff --git a/src/ini.cpp b/src/ini.cpp index b18bf915da..f42ebedd05 100644 --- a/src/ini.cpp +++ b/src/ini.cpp @@ -1,4 +1,4 @@ -/* $Id: ini.cpp 27430 2015-11-01 11:55:45Z frosch $ */ +/* $Id: ini.cpp 27389 2015-08-20 20:47:45Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/lang/afrikaans.txt b/src/lang/afrikaans.txt index 6be906314e..888cd19f05 100644 --- a/src/lang/afrikaans.txt +++ b/src/lang/afrikaans.txt @@ -11,7 +11,7 @@ ##gender male -# $Id: afrikaans.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: afrikaans.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2688,7 +2688,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Maatskappy-besi STR_ABOUT_OPENTTD :{WHITE}Oor OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Oorspronklike kopiereg {COPYRIGHT} 1995 Chris Sawyer, Alle regte voorbehou STR_ABOUT_VERSION :{BLACK}OpenTTD uitgawe {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Die OpenTTD span +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 Die OpenTTD span # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Spaar Spel @@ -2875,7 +2875,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Gaan na STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Vorige sprite STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Gaan na vorige normale sprite, en ignoreer enige pseudo/her-kleur/font sprite en spring terug na die einde STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Voorstelling van geselekteerde sprite. Die belyning word geignoreer waneer sprite geteken word -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Beweeg die sprite rond, verander die X en Y afwyking +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Beweeg die sprite rond, verander die X en Y afwyking. Ctrl-klik om die sprite agt lengtes rond te beweeg op 'n slag STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Relatiewe herstel STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Herstel die huidige relatiewe verplasing STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X verplasing: {NUM}, Y verplasing: {NUM} (Werklik) @@ -2890,7 +2890,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Waarskuwing: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Fout: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fataal: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}'n Fataale NewGRF fout het gebeur: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}'n Fataale NewGRF fout het gebeur:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} sal nie met die TTDPatch uitgawe rapporteer deur OpenTTD werk nie. STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} is vir die {STRING} uitgawe van TTD. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} is onderwerp om saam met {STRING} gebruik te word @@ -2924,7 +2924,7 @@ STR_NEWGRF_TOO_MANY_NEWGRFS :{WHITE}Kan nie STR_NEWGRF_COMPATIBLE_LOAD_WARNING :{WHITE}Versoenbare GRF(s) gelaai vir vermiste lêers STR_NEWGRF_DISABLED_WARNING :{WHITE}Vermiste GRF lêers is gedeaktiveer STR_NEWGRF_UNPAUSE_WARNING_TITLE :{YELLOW}GRF leêr(s) ontbreek -STR_NEWGRF_UNPAUSE_WARNING :{WHITE}Hervatting kan veroorsaak dat OpenTTD bots. Moet nie daaropeenvolgende botsings verslae rapporteer nie. {}Will jy rêrig unpause? +STR_NEWGRF_UNPAUSE_WARNING :{WHITE}Hervatting kan veroorsaak dat OpenTTD bots. Moet nie daaropeenvolgende botsings verslae rapporteer nie.{}Will jy rêrig unpause? # NewGRF status STR_NEWGRF_LIST_NONE :Geen @@ -4064,7 +4064,7 @@ STR_MESSAGE_ESTIMATED_COST :{WHITE}Beraamde STR_MESSAGE_ESTIMATED_INCOME :{WHITE}Beraamde Inkomste: {CURRENCY_LONG} # Saveload messages -STR_ERROR_SAVE_STILL_IN_PROGRESS :{WHITE}Stoor van speletjie is nog besig, {}wag asb tot dit klaar is! +STR_ERROR_SAVE_STILL_IN_PROGRESS :{WHITE}Stoor van speletjie is nog besig,{}wag asb tot dit klaar is! STR_ERROR_AUTOSAVE_FAILED :{WHITE}Outostoor het misluk STR_ERROR_UNABLE_TO_READ_DRIVE :{BLACK}Kan nie skyf lees nie STR_ERROR_GAME_SAVE_FAILED :{WHITE}Speletjie Spaar Misluk{}{STRING} @@ -4173,7 +4173,7 @@ STR_ERROR_TOO_MANY_TOWNS :{WHITE}... te v STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... daar is nie meer spasie oor op die kaart nie STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE} Die dorp sal nie paaie bou nie. Jy kan dit verander deur die bou van paaie via Stellings-> Omgewings-> Dorpe te aktiveer STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Pad werke in verloop -STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Kan nie die dorp verwyder nie... {}'n Stasie of depot verwys na die dorp of die blok wat deur die dorp besit word kan nie verwyder word nie. +STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Kan nie die dorp verwyder nie...{}'n Stasie of depot verwys na die dorp of die blok wat deur die dorp besit word kan nie verwyder word nie. STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... daar is geen plek vir 'n standbeeld in die middel van die dorp # Industry related errors diff --git a/src/lang/arabic_egypt.txt b/src/lang/arabic_egypt.txt index c9e3dd7b25..d36ba9a039 100644 --- a/src/lang/arabic_egypt.txt +++ b/src/lang/arabic_egypt.txt @@ -10,7 +10,7 @@ ##grflangid 0x14 -# $Id: arabic_egypt.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: arabic_egypt.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -750,17 +750,17 @@ STR_NEWS_CUSTOM_ITEM :{BIG_FONT}{BLAC STR_NEWS_FIRST_TRAIN_ARRIVAL :{BIG_FONT}{BLACK} ... المواطنون يحتفلون{} اول قطار وصل في {STATION}! STR_NEWS_FIRST_BUS_ARRIVAL :{BIG_FONT}{BLACK}يحتفل الأهالي ...{}بوصول اول باص للمحطة ...{STATION}! -STR_NEWS_FIRST_TRUCK_ARRIVAL :{BIG_FONT}{BLACK}الأهالي يحتفلون ... {}بوصول اول عربة الى .. {STATION}! +STR_NEWS_FIRST_TRUCK_ARRIVAL :{BIG_FONT}{BLACK}الأهالي يحتفلون ...{}بوصول اول عربة الى .. {STATION}! STR_NEWS_FIRST_PASSENGER_TRAM_ARRIVAL :{BIG_FONT}{BLACK}المواطنون يحتفلون . . .{}بوصول اول عربة ركاب ترام الى {STATION}! -STR_NEWS_FIRST_CARGO_TRAM_ARRIVAL :{BIG_FONT}{BLACK}المواطنون يحتفلون . . . {}بوصول اول عربة ترام لمحطة {STATION}! -STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK}المواطنون يحتفلون ... {}بوصول اول سفينة الى {STATION}! -STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK}الأهالي يحتفلون . . . {}بوصول أول طائرة الى {STATION}! +STR_NEWS_FIRST_CARGO_TRAM_ARRIVAL :{BIG_FONT}{BLACK}المواطنون يحتفلون . . .{}بوصول اول عربة ترام لمحطة {STATION}! +STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK}المواطنون يحتفلون ...{}بوصول اول سفينة الى {STATION}! +STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK}الأهالي يحتفلون . . .{}بوصول أول طائرة الى {STATION}! STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLACK}تحطم قطاراً!{}{COMMA} مات فى الحريق بعد الحادث STR_NEWS_ROAD_VEHICLE_CRASH_DRIVER :{BIG_FONT}{BLACK}العربة تحطمت !{}السائق توفي في شعلة الحريق بعد الاصطدام بقطار STR_NEWS_ROAD_VEHICLE_CRASH :{BIG_FONT}{BLACK}العربة تحطمت !{}{COMMA} توفي في شعلة الحريق بعد الاصطدام بقطار STR_NEWS_AIRCRAFT_CRASH :{BIG_FONT}{BLACK}تحطم طائرة !{}{COMMA}ماتوا في الحريق بمطار {STATION} -STR_NEWS_PLANE_CRASH_OUT_OF_FUEL :{BIG_FONT}{BLACK}تحطم طائرة ! {}انتهى الوقود من الطائرة, {COMMA}توفي اثر الحادث ! +STR_NEWS_PLANE_CRASH_OUT_OF_FUEL :{BIG_FONT}{BLACK}تحطم طائرة !{}انتهى الوقود من الطائرة, {COMMA}توفي اثر الحادث ! STR_NEWS_DISASTER_ZEPPELIN :{BIG_FONT}{BLACK}حادثة منطاد في {STATION}! STR_NEWS_DISASTER_SMALL_UFO :{BIG_FONT}{BLACK}تحطم عربة في حادث تصادم بجسم غامض ! @@ -790,7 +790,7 @@ STR_NEWS_INDUSTRY_CLOSURE_GENERAL :{BIG_FONT}{BLAC STR_NEWS_INDUSTRY_CLOSURE_SUPPLY_PROBLEMS :{BIG_FONT}{BLACK}تسبب نقص في الامدادات الى الاغلاق الفوري ل {STRING} STR_NEWS_INDUSTRY_CLOSURE_LACK_OF_TREES :{BIG_FONT}{BLACK} النقص في الشجر بالجوار ادى الى الاغلاق الفوري ل {STRING}. -STR_NEWS_EURO_INTRODUCTION :{BIG_FONT}{BLACK}العملة الموحدة للدول الأوربية! {}{}تم اعتماد العملة الأوربية الموحدة - اليورو - للمعاملات اليومية في دولتك! +STR_NEWS_EURO_INTRODUCTION :{BIG_FONT}{BLACK}العملة الموحدة للدول الأوربية!{}{}تم اعتماد العملة الأوربية الموحدة - اليورو - للمعاملات اليومية في دولتك! STR_NEWS_BEGIN_OF_RECESSION :{BIG_FONT}{BLACK}ركود اقتصادي!{}{}خبراء الأقتصاد خائفون من ركود اقتصادي وشيك STR_NEWS_END_OF_RECESSION :{BIG_FONT}{BLACK}الركود انتهى!{}{}العودة للصعود في الاقتصاد اعطى الثقة في قوة الاقتصاد @@ -835,9 +835,9 @@ STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}{STATION STR_NEWS_STATION_NOW_ACCEPTS_CARGO :{WHITE}{STATION} الآن تقبل {STRING} STR_NEWS_STATION_NOW_ACCEPTS_CARGO_AND_CARGO :{WHITE}{STATION}الآن تقبل {STRING} و {STRING} -STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK} اعلان عن انتهاء عرض {}{} نقل {STRING} من {STRING} الى {STRING} لن يعطي ارباح اضافية بعد الآن . -STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK} تم سحب العرض {}{} نقل {STRING} من {STRING} الى {STRING} لم يعد معروض -STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}اعلان عن عرض {}{} نقل اول {STRING} من {STRING} الى {STRING} سوف يعطي زيادة ارباح في السنة القادمة. +STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK} اعلان عن انتهاء عرض{}{} نقل {STRING} من {STRING} الى {STRING} لن يعطي ارباح اضافية بعد الآن . +STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK} تم سحب العرض{}{} نقل {STRING} من {STRING} الى {STRING} لم يعد معروض +STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}اعلان عن عرض{}{} نقل اول {STRING} من {STRING} الى {STRING} سوف يعطي زيادة ارباح في السنة القادمة. STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK} العرض قد اعطي لـ {STRING}!{}{} نقل {STRING} من {STRING} الى {STRING} سوف يعطي زيادة 50% ارباح للسنة القادمة STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}العرض قد اعطي لـ {STRING}!{}{} نقل {STRING}من {STRING}الى {STRING} سوف يعطي ضعف الدخل للسنة القادمة STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}شركة {STRING} فازت بالعرض{}{} نقل {STRING} من {STRING} الى {STRING} سوف يعطي 3 اضعاف الدخل للسنة القادمة @@ -1066,7 +1066,7 @@ STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :اعدادات STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :اعدادات اللعبة (يخزن في الحفظ ؛ يطبق على اللعبة الحالية فقط) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :اعدادات الشركة (يخزن في الحفظ ؛ يطبق على الالعاب الجديدة فقط) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :اعدادات الشركة (يخزن في الحفظ ؛ يطبق على الشركة الحالية فقط) -STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}عرض جميع النتائج بالنسبة للإعداد {}{SILVER} الفئة {BLACK} إلى {WHITE}{STRING} {BLACK}و{SILVER}نوع {BLACK} إلى{WHITE} جميع انواع الإعدادات +STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}عرض جميع النتائج بالنسبة للإعداد{}{SILVER} الفئة {BLACK} إلى {WHITE}{STRING} {BLACK}و{SILVER}نوع {BLACK} إلى{WHITE} جميع انواع الإعدادات STR_CONFIG_SETTINGS_NONE :{WHITE} - بدون - STR_CONFIG_SETTING_OFF :قفل @@ -1841,7 +1841,7 @@ STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} ق STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} اعطى شركتك : {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** انت اعطيت {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}اقفل الخادم الجلسة -STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}يتم بدأ الخادم من جديد ... {} الرجاء الأنتظار +STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}يتم بدأ الخادم من جديد ...{} الرجاء الأنتظار # Content downloading window STR_CONTENT_TITLE :{WHITE}تنزيل المحتوى @@ -1849,7 +1849,7 @@ STR_CONTENT_TYPE_CAPTION :{BLACK} نوع STR_CONTENT_TYPE_CAPTION_TOOLTIP :{BLACK} نوع المحتوى STR_CONTENT_NAME_CAPTION :{BLACK} الاسم STR_CONTENT_NAME_CAPTION_TOOLTIP :{BLACK} اسم المحتوى -STR_CONTENT_MATRIX_TOOLTIP :{BLACK} اضغط على الخط لرؤية التفاصيل. {} اضغط على مربع الاختيار لتحميل. +STR_CONTENT_MATRIX_TOOLTIP :{BLACK} اضغط على الخط لرؤية التفاصيل.{} اضغط على مربع الاختيار لتحميل. STR_CONTENT_SELECT_ALL_CAPTION :{BLACK} اختيار الكل STR_CONTENT_SELECT_ALL_CAPTION_TOOLTIP :{BLACK} تحميل كامل المحتوى STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK} اختر التحديث @@ -1992,17 +1992,17 @@ STR_STATION_CLASS_WAYP :نقطة عبو STR_BUILD_SIGNAL_CAPTION :{WHITE}اختيار الإشارات STR_BUILD_SIGNAL_SEMAPHORE_NORM_TOOLTIP :{BLACK}اشارة اقفال (بالاعلام){}هذة الاشارة الأساسية. تسمح بتواجد قطار واحد في القسم و الوقت الواحد STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}اشارة دخول (بالاعلام){} تكون خضراء عندما توجد اشارة خضراء في اشارات الخروج التالية لها. والا تكون حمراء. -STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}اشارة خروج (بالاعلام) {}تعمل مثل اشارة الاقفال, لكن يجب تنشيط الوضع الصحيح في الدخول و الاشارة المزدوجة. -STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}اشارة مزدوجة (بالاعلام) {} الاشارة المزدوجة تعمل للدخول و الخروج. فهي تسمح لك بعمل شجرة كبيرة من الاشارات +STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}اشارة خروج (بالاعلام){}تعمل مثل اشارة الاقفال, لكن يجب تنشيط الوضع الصحيح في الدخول و الاشارة المزدوجة. +STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}اشارة مزدوجة (بالاعلام){} الاشارة المزدوجة تعمل للدخول و الخروج. فهي تسمح لك بعمل شجرة كبيرة من الاشارات STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}اشارة طريق (بالاعلام){}تسمح بمرور اكثر من قطارفي القسم التالي اذا كان القطار يستطيع الوصول الى نقطة آمنة. يمكن تخطي الاشارة بالاتجاهين. STR_BUILD_SIGNAL_SEMAPHORE_PBS_OWAY_TOOLTIP :{BLACK}اشارة الاتجاة الواحد (بالاعلام){}اشارة طريق تسمح باكثر من قطار يدخل في القسم التالي في نفس الوقت, اذا كان القطار يستطيع الوصول الى نقطة آمنة. لا يمكن تخطي اشارة الاتجاة الواحد من الخلف. STR_BUILD_SIGNAL_ELECTRIC_NORM_TOOLTIP :{BLACK}اشارة اقفال (كهربائية){}هذة الاشارة الأساسية. تسمح بتواجد قطار واحد في القسم و الوقت الواحد STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}اشارة دخول (كهربائية){} تكون خضراء عندما توجد اشارة خضراء في اشارات الخروج التالية لها. والا تكون حمراء. -STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}اشارة خروج (كهربائية) {}تعمل مثل اشارة الاقفال, لكن يجب تنشيط الوضع الصحيح في الدخول و الاشارة المزدوجة. -STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}اشارة مزدوجة (كهربائية) {} الاشارة المزدوجة تعمل للدخول و الخروج. فهي تسمح لك بعمل شجرة كبيرة من الاشارات. +STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}اشارة خروج (كهربائية){}تعمل مثل اشارة الاقفال, لكن يجب تنشيط الوضع الصحيح في الدخول و الاشارة المزدوجة. +STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}اشارة مزدوجة (كهربائية){} الاشارة المزدوجة تعمل للدخول و الخروج. فهي تسمح لك بعمل شجرة كبيرة من الاشارات. STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}اشارة طريق(كهربائية){}تسمح بمروراكثرمن قطارفي القسم التالي اذا كان القطار يستطيع الوصول الى نقطة آمنة. يمكن تخطي الاشارة بالاتجاهين. STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}اشارة الاتجاة الواحد (كهربائية){}اشارة طريق تسمح باكثر من قطار يدخل في القسم التالي في نفس الوقت, اذا كان القطار يستطيع الوصول الى نقطة آمنة. لا يمكن تخطي اشارة الاتجاة الواحد من الخلف. -STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK} تغيير الاشارات {} عند الاختيار, سوف يتم تغيير الاشارة الى النوع المختار. الضغط على مفتاح كنترول سوف يبدل بين انواع الاشارات. +STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK} تغيير الاشارات{} عند الاختيار, سوف يتم تغيير الاشارة الى النوع المختار. الضغط على مفتاح كنترول سوف يبدل بين انواع الاشارات. STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}سرعة السحب STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}تقليل سرعة السحب STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}زيادة سرعة السحب @@ -2134,7 +2134,7 @@ STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}زراع # Land generation window (SE) STR_TERRAFORM_TOOLBAR_LAND_GENERATION_CAPTION :{WHITE}بناء المسطحات الأرضية STR_TERRAFORM_TOOLTIP_PLACE_ROCKY_AREAS_ON_LANDSCAPE :{BLACK}اضافة مناطق صخرية على المنظر -STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK}عرف منطقة صحراوية. {}اضغط بشكل متواصل مفتاح كنترول لأزالتها +STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK}عرف منطقة صحراوية.{}اضغط بشكل متواصل مفتاح كنترول لأزالتها STR_TERRAFORM_TOOLTIP_INCREASE_SIZE_OF_LAND_AREA :{BLACK}زيادة ارتفاع و انخفاض المسطحات الأرضية STR_TERRAFORM_TOOLTIP_DECREASE_SIZE_OF_LAND_AREA :{BLACK}انقاص ارتفاع و انخفاض المسطحات الأرضية STR_TERRAFORM_TOOLTIP_GENERATE_RANDOM_LAND :{BLACK}انشاء مسطحات عشوائية @@ -2167,7 +2167,7 @@ STR_FOUND_TOWN_INITIAL_SIZE_LARGE_BUTTON :{BLACK}كبير STR_FOUND_TOWN_SIZE_RANDOM :{BLACK} عشوائي STR_FOUND_TOWN_INITIAL_SIZE_TOOLTIP :{BLACK}حدد حجم المدينه STR_FOUND_TOWN_CITY :{BLACK}مدينة -STR_FOUND_TOWN_CITY_TOOLTIP :{BLACK} المدن الكبيرة تنمو اسرع من المدن العادية. {} كلما كانت اكبر عند انشائها, بالاعتماد على الاعدادات. +STR_FOUND_TOWN_CITY_TOOLTIP :{BLACK} المدن الكبيرة تنمو اسرع من المدن العادية.{} كلما كانت اكبر عند انشائها, بالاعتماد على الاعدادات. STR_FOUND_TOWN_ROAD_LAYOUT :{YELLOW} تصميم طرق المدينة STR_FOUND_TOWN_SELECT_TOWN_ROAD_LAYOUT :{BLACK} اختر تصميم الطرق لهذه المدينة @@ -2320,7 +2320,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :ارض مملو STR_ABOUT_OPENTTD :{WHITE}حول النسخة المفتوحة STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}الحقوق الاصلية {COPYRIGHT} كريس سوير 1995 , جميع الحقوق محفوظة STR_ABOUT_VERSION :{BLACK}النسخة المفتوحة رقم {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}النسخة المفتوحة {COPYRIGHT}2002-2015 فريق النسخة المفتوحة +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}النسخة المفتوحة {COPYRIGHT}2002-2016 فريق النسخة المفتوحة # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}حفظ اللعبة @@ -2512,7 +2512,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED} تحذير: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED} خطأ: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED} خطأ قاتل: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}حدث خظأ في NewGRF لا يمكن اصلاحة: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}حدث خظأ في NewGRF لا يمكن اصلاحة:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} لن يعمل مع اصدار الباتش المسجل في النسخة المفتوحة STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} يعمل مع {STRING} اصدار من TTD. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} مصمم ليستخدم مع {STRING} @@ -2537,7 +2537,7 @@ STR_NEWGRF_COMPATIBLE_LOADED :{ORANGE}الم STR_NEWGRF_COMPATIBLE_LOAD_WARNING :{WHITE}تم تحميل ملف GFR مطابق بدلا من المفقود STR_NEWGRF_DISABLED_WARNING :{WHITE}تم تعطيل ملف GRF المفقود STR_NEWGRF_UNPAUSE_WARNING_TITLE :{YELLOW}ملف NewGRF مفقود -STR_NEWGRF_UNPAUSE_WARNING :{WHITE}عدم الايقاف قد يتسبب في تعطل النسخة المفتوحة. لا تنشأ ملف اخطاء لاالخطاء التالية. {} هل تود بالفعل اكمال اللعب؟ +STR_NEWGRF_UNPAUSE_WARNING :{WHITE}عدم الايقاف قد يتسبب في تعطل النسخة المفتوحة. لا تنشأ ملف اخطاء لاالخطاء التالية.{} هل تود بالفعل اكمال اللعب؟ # NewGRF status STR_NEWGRF_LIST_NONE :لا يوجد @@ -2637,14 +2637,14 @@ STR_LOCAL_AUTHORITY_ACTION_NEW_BUILDINGS :مول انشا STR_LOCAL_AUTHORITY_ACTION_EXCLUSIVE_TRANSPORT :اشتري حقوق النقل الحصرية للمدينة STR_LOCAL_AUTHORITY_ACTION_BRIBE :ارشي السلطات المحلية -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{YELLOW}البدء في حملة دعائية صغيرة للشركة, لكي تجلب ركاب و بضائع اكثر لمحطاتك. {} التكلفة: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{YELLOW} البدء في حملة دعائية متوسطة للشركة, لكي تجلب ركاب و بضائع اكثر لمحطاتك. {} التكلفة: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{YELLOW}البدء في حملة دعائية كبيرة للشركة, لكي تجلب ركاب و بضائع اكثر لمحطاتك. {} التكلفة: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW} مول اعمال الصيانة للطرق و الشوارع بالمدينة. يتسبب في تعطيل حركة النقل داخل المدينة لمدة قد تصل ستة اشهر. {} التكلفة {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{YELLOW} بناء مجسم تقديرا للشركة في اعمال النقل. {} التكلفة {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW} مول بناء مباني تجارية جديدة في المدينة. {}التكلفة {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW} اشتري حقوق النقل لسنة كاملة في هذة المدينة و المصانع التابعة لها. البلدية سوف تسمح للركاب و البضائع باستخدام محطاتك فقط. {}التكلفة: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW} ارشي السلطات المحلية لزيادة كفائة الشركة. هناك عقاب شديد اذا ما اكتشفت الرشوة. {} التكلفة: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{YELLOW}البدء في حملة دعائية صغيرة للشركة, لكي تجلب ركاب و بضائع اكثر لمحطاتك.{} التكلفة: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{YELLOW} البدء في حملة دعائية متوسطة للشركة, لكي تجلب ركاب و بضائع اكثر لمحطاتك.{} التكلفة: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{YELLOW}البدء في حملة دعائية كبيرة للشركة, لكي تجلب ركاب و بضائع اكثر لمحطاتك.{} التكلفة: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW} مول اعمال الصيانة للطرق و الشوارع بالمدينة. يتسبب في تعطيل حركة النقل داخل المدينة لمدة قد تصل ستة اشهر.{} التكلفة {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{YELLOW} بناء مجسم تقديرا للشركة في اعمال النقل.{} التكلفة {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW} مول بناء مباني تجارية جديدة في المدينة.{}التكلفة {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW} اشتري حقوق النقل لسنة كاملة في هذة المدينة و المصانع التابعة لها. البلدية سوف تسمح للركاب و البضائع باستخدام محطاتك فقط.{}التكلفة: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW} ارشي السلطات المحلية لزيادة كفائة الشركة. هناك عقاب شديد اذا ما اكتشفت الرشوة.{} التكلفة: {CURRENCY_LONG} # Goal window STR_GOALS_TEXT :{ORANGE}{STRING} @@ -2794,7 +2794,7 @@ STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}بيع 2 STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :اسم الشركة STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :اسم صاحب الشركة -STR_BUY_COMPANY_MESSAGE :{WHITE}نحن نبحث عن شركة لتشتري شركتنا. {}{} عل ترغب في شراء {COMPANY} بـ {CURRENCY_LONG}؟ +STR_BUY_COMPANY_MESSAGE :{WHITE}نحن نبحث عن شركة لتشتري شركتنا.{}{} عل ترغب في شراء {COMPANY} بـ {CURRENCY_LONG}؟ # Company infrastructure window @@ -2827,7 +2827,7 @@ STR_INDUSTRY_VIEW_PRODUCES_CARGO_CARGO :{BLACK}ينتج ############ range for produces ends STR_CONFIG_GAME_PRODUCTION :{WHITE}تغيير الانتاج مضاعف من 8 الى 2040 -STR_CONFIG_GAME_PRODUCTION_LEVEL :{WHITE}غير مستوى الانتاج {}نسبة مئوية حتى 800%. +STR_CONFIG_GAME_PRODUCTION_LEVEL :{WHITE}غير مستوى الانتاج{}نسبة مئوية حتى 800%. # Vehicle lists STR_VEHICLE_LIST_TRAIN_CAPTION :{WHITE}{STRING} - {COMMA}قطار @@ -3037,7 +3037,7 @@ STR_ENGINE_PREVIEW_SHIP :سفينة STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE :قاطرة سكة قطار احادية STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE :قاطرة سكة قطار ممغنطة -STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK} التكلفة: {CURRENCY_LONG} الوزن: {WEIGHT_SHORT} {} السرعة: {VELOCITY} الطاقة: {POWER}{} كلفة التشغيل: {CURRENCY_LONG} / سنة {} السعة: {CARGO_LONG} +STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK} التكلفة: {CURRENCY_LONG} الوزن: {WEIGHT_SHORT}{} السرعة: {VELOCITY} الطاقة: {POWER}{} كلفة التشغيل: {CURRENCY_LONG} / سنة{} السعة: {CARGO_LONG} STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}التكلفة {CURRENCY_LONG} الوزن {WEIGHT_SHORT}{}السرعة {VELOCITY} Power: {POWER}قوة السحب {6:FORCE}{}التكلفة التشغيلية {4:CURRENCY_LONG}/سنة{}السعة: {5:CARGO_LONG} STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAPACITY_CAPACITY_RUNCOST :{BLACK} التكلفة {CURRENCY_LONG} السرعة القصوى {VELOCITY}{}Capacity السعة {CARGO_LONG} {CARGO_LONG}{} كلفة التشغيل {CURRENCY_LONG} / سنة STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAPACITY_RUNCOST :{BLACK} التكلفة {CURRENCY_LONG} السرعة القصوى {VELOCITY}{} السعة {CARGO_LONG}{} كلفة التشغيل {CURRENCY_LONG} / سنة @@ -3463,7 +3463,7 @@ STR_AI_DEBUG_CONTINUE :{BLACK}استم STR_AI_DEBUG_CONTINUE_TOOLTIP :{BLACK}عدم توقيف ومواصلة الذكاء الصناعي STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}عرض صائد الاخطاء لهذه الاضافة -STR_ERROR_AI_NO_AI_FOUND :لا يوجد اضافات مناسبة للتحميل {} هذه اضافة غبية ولن تفعل شيئا لك {} تستطيع تحميل اضافات من الشبكة عن طريق نظام التحميل +STR_ERROR_AI_NO_AI_FOUND :لا يوجد اضافات مناسبة للتحميل{} هذه اضافة غبية ولن تفعل شيئا لك{} تستطيع تحميل اضافات من الشبكة عن طريق نظام التحميل STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}واحد من الذكاء الصناعي فشل. الرجاء ابلاغ المبرمج عنه مصحوبا بصورة من شاشة مصحح الاخطاء. STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW} شاشة اخطاء الذكاء الصناعي متوفرة فقط للخادم @@ -3533,7 +3533,7 @@ STR_ERROR_AUTOSAVE_FAILED :{WHITE}فشل STR_ERROR_UNABLE_TO_READ_DRIVE :{BLACK}لا يمكن قرائة القرص STR_ERROR_GAME_SAVE_FAILED :{WHITE}فشل حفظ اللعبة{}{STRING} STR_ERROR_UNABLE_TO_DELETE_FILE :{WHITE}لا يمكن حذف الملف -STR_ERROR_GAME_LOAD_FAILED :{WHITE}فشل فتح اللعبة {}{STRING} +STR_ERROR_GAME_LOAD_FAILED :{WHITE}فشل فتح اللعبة{}{STRING} STR_GAME_SAVELOAD_ERROR_BROKEN_INTERNAL_ERROR :خطأ داخلي: {STRING} STR_GAME_SAVELOAD_ERROR_BROKEN_SAVEGAME :لعبه محفوظه غير صالحه - {STRING} STR_GAME_SAVELOAD_ERROR_TOO_NEW_SAVEGAME :اللعبة حفظت بنسخة أحدث @@ -3544,7 +3544,7 @@ STR_GAME_SAVELOAD_NOT_AVAILABLE :<غير متا STR_WARNING_LOADGAME_REMOVED_TRAMS :{WHITE}اللعبة حفظت بنسخة لا تدعم الترام. كل ما يتعلق بالترام حذف. # Map generation messages -STR_ERROR_COULD_NOT_CREATE_TOWN :{WHITE}مولد الخريطة توقف ... {} ... لا يوجد مواقع مناسبة للمدن +STR_ERROR_COULD_NOT_CREATE_TOWN :{WHITE}مولد الخريطة توقف ...{} ... لا يوجد مواقع مناسبة للمدن STR_ERROR_NO_TOWN_IN_SCENARIO :{WHITE}... لا يوجد مدن في هذه الخريطة STR_ERROR_PNGMAP :{WHITE}لا يمكن تحميل الخريطة من PNG ... @@ -3633,7 +3633,7 @@ STR_ERROR_TOO_MANY_TOWNS :{WHITE}... ال STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... لا يوجد فراغ في الخريطة STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}لن تبني البلدية طرق جديدة. بإمكانك تمكين بناء الطرق الجديدة عن طريق الاعدادات --> البيئة--> المدن STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}اعمال الطرق قيد التنفيذ -STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}لا يمكن ازالة هذه المدينة {}محطة او ورشة مرتبطة بالمدينة او هناك مربع مملوك للمدينة لا يمكن لزالته +STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}لا يمكن ازالة هذه المدينة{}محطة او ورشة مرتبطة بالمدينة او هناك مربع مملوك للمدينة لا يمكن لزالته STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... لا يوجد مكان مناسب للمجسم بداخل هذة المدينة/البلدة # Industry related errors diff --git a/src/lang/basque.txt b/src/lang/basque.txt index f8aea3151c..88b2eed5a8 100644 --- a/src/lang/basque.txt +++ b/src/lang/basque.txt @@ -10,7 +10,7 @@ ##grflangid 0x21 -# $Id: basque.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: basque.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -215,6 +215,8 @@ STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}ga STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litro{P "" ak} STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft @@ -238,7 +240,7 @@ STR_TOOLTIP_CLOSE_WINDOW :{BLACK}Lehioa i STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Leiho izena - Arrastatu hau leihoa mugitzeko STR_TOOLTIP_SHADE :{BLACK}Itzal leihoa - titulu barra bakarrik ikusten da STR_TOOLTIP_DEBUG :{BLACK}NewGRF garbiketa informazioa ikusi -STR_TOOLTIP_STICKY :{BLACK}Markatu leiho hau itxiezina bezala 'Zarratu Leiho Guztiak' gakoarekin +STR_TOOLTIP_STICKY :{BLACK}Markatu leiho hau itxiezina bezala 'Itxi Leiho Guztiak' gakoarekin. Ctrl+Klik hau beti gertatzeko STR_TOOLTIP_RESIZE :{BLACK}Klik eta arrastatu leiho honi tamaina aldatzeko STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}Aldatu handia/txikia leihoaren tamaina STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra mugitu - zerrendan gora/behera mugitzeko @@ -246,7 +248,12 @@ STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra mu STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Eraikinak etab. edo lur karratu bat eraistea. Ctrl area diagonalki aukeratzen du. Mayus eraikinaren kostu estimatua erakusten du. # Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Ezkutuak erakutsi +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Ezkutuak erakutsi +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Ezkutuak erakutsi +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Ezkutuak erakutsi +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Botoi hau gaituz, ezkutuak dauden trenak erakusten dira # Query window STR_BUTTON_DEFAULT :{BLACK}Lehenetsia @@ -285,6 +292,8 @@ STR_SORT_BY_LENGTH :Luzera STR_SORT_BY_LIFE_TIME :Geratzen zaion bizitza denbora STR_SORT_BY_TIMETABLE_DELAY :Ordutegiko atzerapena STR_SORT_BY_FACILITY :Geltoki mota +STR_SORT_BY_WAITING_TOTAL :Itxaroten dagoen zama totala +STR_SORT_BY_WAITING_AVAILABLE :Itxaroten dagoen zama eskuragarria STR_SORT_BY_RATING_MAX :Zama balorazio handiena STR_SORT_BY_RATING_MIN :Zama balorazio txikiena STR_SORT_BY_ENGINE_ID :MotoreID (ordenatze klasikoa) @@ -357,6 +366,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Irten ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Jokoaren aukerak +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Ezarpenak STR_SETTINGS_MENU_SCRIPT_SETTINGS :IA/Jokoaren scriptaren ezaugarriak STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF ezarpenak STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Transparentzia ezarpenak @@ -902,6 +912,8 @@ STR_GAME_OPTIONS_CURRENCY_LTL :Lituaniako Lita STR_GAME_OPTIONS_CURRENCY_KRW :Hego koreako Won-a (KRW) STR_GAME_OPTIONS_CURRENCY_ZAR :Hego Afrikako Rand-a (ZAR) STR_GAME_OPTIONS_CURRENCY_CUSTOM :Pertsonalizatua... +STR_GAME_OPTIONS_CURRENCY_GEL :Lari Georgiarra (GEL) +STR_GAME_OPTIONS_CURRENCY_IRR :Rial Iraniarra (IRR) ############ end of currency region STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Errepideko garraioak @@ -958,6 +970,9 @@ STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Pantaila STR_GAME_OPTIONS_RESOLUTION_OTHER :besteak +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normala +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Tamaina doblea +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Tamaina laukoitza STR_GAME_OPTIONS_BASE_GRF :{BLACK}Grafiko basea markatu STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Aukeratu erabili beharreko grafiko paketea @@ -1051,6 +1066,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Oso laua STR_TERRAIN_TYPE_FLAT :Laua STR_TERRAIN_TYPE_HILLY :Mendixkekin STR_TERRAIN_TYPE_MOUNTAINOUS :Menditsua +STR_TERRAIN_TYPE_ALPINIST :Alpinista STR_CITY_APPROVAL_PERMISSIVE :Jasankorra STR_CITY_APPROVAL_TOLERANT :Jasanbera @@ -1059,6 +1075,7 @@ STR_CITY_APPROVAL_HOSTILE :Kontrakoa STR_WARNING_NO_SUITABLE_AI :{WHITE}Ez dago IA egokirik aukeratzeko..{}IA asko jaitsi ditzakezu 'Online edukiera' sistemaren bidez # Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Ezarpenak STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Lokarri iragazkia: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Guztia haunditu STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Guztia kolapsatu @@ -1115,13 +1132,13 @@ STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Erosketa eta er STR_CONFIG_SETTING_RECESSIONS :Atzerapen ekonomikoak: {STRING} STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Gaitua dagoenean, atzeratze ekonomikoa urte gutxika gertatuko da. Atzeratze ekonomikoan, ekoizpen orokorra dexente gutxituko da (Aurreko balioetara bueltatuko da atzerapena amaitzerakoan) STR_CONFIG_SETTING_TRAIN_REVERSING :Trenak geltokietan buelta eman ahal izatea: {STRING} -STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Gaitua dagoenean, trenak ezingo dute geltokietan (trebidea bertan bukatzen ez denean) buelta eman, nahiz eta biderik motzena izan helmugara iristeko +STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Gaitua dagoenean, trenak ezingo dute geltoki ez-finaletan buelta eman, nahiz eta biderik motzena izan helmugara iristeko STR_CONFIG_SETTING_DISASTERS :Hondamendiak: {STRING} STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Azpiegiturak eta ibilgailuak suntsitu edo blokeatu ditzaketen hondamendiak txandakatu STR_CONFIG_SETTING_CITY_APPROVAL :Udaletxearen jarrera bere lurrak berregituratzeko: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Aukeratu zenbateraino eragingo dion konpainia bati herri batean zarata sortzea eta ingurumena kaltetzea, herrian duen balorazioa txartuz eta eraikin berriak egiteko baimena mugatuz -STR_CONFIG_SETTING_AUTOSLOPE :Eraikinen, trenbideen etabarren azpian paisaia aldatzea baimendu. (autoaldapak): {STRING} +STR_CONFIG_SETTING_AUTOSLOPE :Eraikinen, trenbideen etabarren azpian paisaia aldatzea baimendu.: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Eraikin eta bideen azpian paisaia aldatzea baimendu hauek kendu gabe STR_CONFIG_SETTING_CATCHMENT :Geltokien irismen eremu hedapena errealagoa egitea baimendu: {STRING} STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Tamaina ezberdinetako jasotze eremuak izan mota ezberdinetako geltoki eta aireportuentzat @@ -1235,7 +1252,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Lehio gorrian a STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} segundu STR_CONFIG_SETTING_HOVER_DELAY :Erakutsi argibideak: {STRING} STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Sagua, interfazeko elementu batzuen gainean jartzerakoan, argibideak bistaratu aurretik pasa beharko den denbora. Elementu batzuetan saguko eskuineko botoia sakatu beharko da -STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Sagua gainean mantendu {COMMA} segunduz +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Sagua gainean mantendu milisegundu {COMMA} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Klikatu eskuineko botoiarekin STR_CONFIG_SETTING_POPULATION_IN_LABEL :Herriaren bistanleria herriaren izen kartelan ikusgai izan: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Herriaren bistanleria herriaren izen kartelan ikusgai izan @@ -1245,6 +1262,7 @@ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Grafikoen marre STR_CONFIG_SETTING_LAND_GENERATOR :Lur sortzailea: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Jatorrizkoa STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis +STR_CONFIG_SETTING_INDUSTRY_DENSITY :Industria dentsitatea: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Petroleo findegietatik maparen ertzera dagoen gehienezko distantzia: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Petroleo findegiak bakarrik maparen ertzatik hurbil eraiki daitezke, kostan irla mapetan STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Elur garaiera: {STRING} @@ -1253,10 +1271,13 @@ STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Oso Leuna STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Leuna STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Zakarra STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Oso Zakarra +STR_CONFIG_SETTING_VARIETY :Barietateen distribuzioa: {STRING} +STR_CONFIG_SETTING_RIVER_AMOUNT :Ibai kantitatea: {STRING} STR_CONFIG_SETTING_TREE_PLACER :Zuhaitz kokatzeko algoritmoa: {STRING} STR_CONFIG_SETTING_TREE_PLACER_NONE :Ezer ez STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Jatorrizkoa STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Hobetua +STR_CONFIG_SETTING_ROAD_SIDE :Errepideko garraioak: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Garaiera maparen norabidea: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Erlojuko orratzen kontrara STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Erlojuko orratzen erara @@ -1311,6 +1332,7 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :Itzalita STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Saguaren ezkerreko botoiarekin mapan zehar mugitzea: {STRING} STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING_HELPTEXT :Gaitu mapatik zehar mugitzea saguaren ezkerreko botoia mapan arrastratzerakoan. Oso erabilgarria da ukipen pantailak erabiltzerakoan +STR_CONFIG_SETTING_AUTOSAVE :Auto-gordea: {STRING} STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Gordetako jokoen izenetan {STRING} data fomatua erabili STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Gordetako fitxeroen dataren formatoa @@ -1326,7 +1348,7 @@ STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_NO_ACTIONS :Ekintzarik ez STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_CONSTRUCTION :Eraikitzeko ez diren ekintza guztiak STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_LANDSCAPING :Guztia paisaia eraldatzeko ekintzak ezik STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_ACTIONS :Ekintza guztiak -STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Hobetutako ibilgailu zerrendak erabili: {STRING} +STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Taldeak erabili ibilgailu zerrendan: {STRING} STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_HELPTEXT :Gaitu ibilgailu zerrenda aurreratuak erabiltzea ibilgailu taldeentzako STR_CONFIG_SETTING_LOADING_INDICATORS :Zama adierazleak erabili: {STRING} STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT :Aukeratu ibilgailuen zama lanen adierazlea ikusgai dagoen ibilgailuen gainean @@ -1348,6 +1370,11 @@ STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Mantendu zubi, STR_CONFIG_SETTING_EXPENSES_LAYOUT :Talde gastuak konpainiaren finantza leihoan: {STRING} STR_CONFIG_SETTING_EXPENSES_LAYOUT_HELPTEXT :Konpainiako gastuen lehioaren diseinua +STR_CONFIG_SETTING_SOUND_NEWS :Periodikoa: {STRING} +STR_CONFIG_SETTING_SOUND_NEW_YEAR :Amaiera urtea: {STRING} +STR_CONFIG_SETTING_SOUND_CONFIRM :Eraikuntza: {STRING} +STR_CONFIG_SETTING_SOUND_DISASTER :Desastreak/istripuak: {STRING} +STR_CONFIG_SETTING_SOUND_VEHICLE :Garraioak: {STRING} STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Azpiturak eraikitzea debekatu ibilgailu egokiak ez daudenean eskuragarri: {STRING} STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Gaitua dagoenean, ezingo da azpiegiturarik eraiki azpiegitura horren ibilgailuak ez badaude eskuragarri, denbora eta dirua aurreztuz @@ -1512,6 +1539,8 @@ STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Joko hasieran h STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :eskuz egin STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asimetrikoa STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :simetrikoa +STR_CONFIG_SETTING_DISTRIBUTION_PAX :Bidaiariek banaketa modua: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Korreoaren banaketa modua: {STRING} STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Banaketen zehaztasuna: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :Abiadura unitateak: {STRING} @@ -1525,6 +1554,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metrikoa (zp) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Pisu unitateak: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Imperial (ton/tona) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metrikoa (t/tona) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) @@ -1533,6 +1563,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Inperiala (galo STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metrikoa (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Imperiala (libra) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metrikoa (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) @@ -1546,6 +1577,7 @@ STR_CONFIG_SETTING_GRAPHICS :{ORANGE}Grafiko STR_CONFIG_SETTING_SOUND :{ORANGE}Soinua STR_CONFIG_SETTING_INTERFACE :{ORANGE}Interfazea STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Orokorra +STR_CONFIG_SETTING_INTERFACE_VIEWPORTS :{ORANGE}Leihoak STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}Eraikuntza STR_CONFIG_SETTING_COMPANY :{ORANGE}Konpainia STR_CONFIG_SETTING_VEHICLES :{ORANGE}Ibilgailuak @@ -1608,6 +1640,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Multijok STR_INTRO_GAME_OPTIONS :{BLACK}Jokoaren Aukerak STR_INTRO_HIGHSCORE :{BLACK}Puntuazio taula +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Ezarpenak STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-ren Ezarpenak STR_INTRO_ONLINE_CONTENT :{BLACK}Edukiak Online Kontsultatu STR_INTRO_SCRIPT_SETTINGS :{BLACK}IA/Joko Scripten Ezarpenak @@ -1627,6 +1660,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Aukeratu STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Jokoaren aukerak erakutsi STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Puntuazioen taula erakutsi +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Ezarpenak erakutsi STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF ezarpenak erakutsi STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Bilatu eduki berria eta eguneratua deskargatzeko STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}IA/Joko Scripten Ezarpenak @@ -1786,7 +1820,7 @@ STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION_TOOLTIP :{BLACK}Jokoaren STR_NETWORK_SERVER_LIST_DATE_CAPTION :{BLACK}Data STR_NETWORK_SERVER_LIST_DATE_CAPTION_TOOLTIP :{BLACK}Egungo data STR_NETWORK_SERVER_LIST_YEARS_CAPTION :{BLACK}Urteak -STR_NETWORK_SERVER_LIST_YEARS_CAPTION_TOOLTIP :{BLACK}Jokoa martxan dagoenetik pasa diren urteak {} +STR_NETWORK_SERVER_LIST_YEARS_CAPTION_TOOLTIP :{BLACK}Jokoa martxan dagoenetik pasa diren urteak{} STR_NETWORK_SERVER_LIST_INFO_ICONS_TOOLTIP :{BLACK}Hizkuntza, zerbitzariaren bertsioa, etab. STR_NETWORK_SERVER_LIST_CLICK_GAME_TO_SELECT :{BLACK}Joko bat aukeratzeko Klikatu @@ -2067,7 +2101,7 @@ STR_CONTENT_NAME_CAPTION_TOOLTIP :{BLACK}Edukien STR_CONTENT_MATRIX_TOOLTIP :{BLACK}Lerroan sakatu ezaugarriak ikusteko{}Laukitxoan sakatu aukeratzeko STR_CONTENT_SELECT_ALL_CAPTION :{BLACK}Guztia aukeratu STR_CONTENT_SELECT_ALL_CAPTION_TOOLTIP :{BLACK}Markatu deskargatuak izango diren edukiak -STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Bertsio berriak haukeratu +STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Eguneraketak Aukeratu STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Haukeratu dituzun edukiak berrituko dituzten edukiak deskargatuak izateko STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Guztia desmarkatu STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Dekargatuak izango ez diren eduki guztiak markatu @@ -2548,7 +2582,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Konpainia jabe STR_ABOUT_OPENTTD :{WHITE}OpenTTD-ri buruz STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original copyright {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD bertsioa {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Gordetako jokoa @@ -2720,7 +2754,11 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Emandako STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Aldez aurreko "sprit"-a STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Aurreko grafiko arruntera joan, pseudo/birkoloretu/grafiko tipoak desgaituz STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Orain aukeratutako grafikoaren aurkezpena. Alineazioa ez da kontua hartzen grafiko hau egiterakoan -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}"Sprit"-a mugitu inguruan, X eta Y-ren desplazamenduak aldatuz +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Sprite-a mugitu ingurunean, X eta Y-ren desplazamenduak aldatuz. Ctrl+Klik sprite-a zortzi unitatero mugitzeko +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Erlatiboa berezarri +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Momentuan dauden desplazamendu erlatiboak erreseteatu +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X desplazamendua: {NUM}, Y desplazamendua: {NUM} (Absolutua) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X desplazamendua: {NUM}, Y desplazamendua: {NUM} (Erlatiboa) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}"Sprit"-a aukeratu STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Pantaillako edozein lekutatik aukeratu "sprite" bat @@ -2731,7 +2769,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Kontuz: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Akatsa {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Larria: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}NewGRF-an akats larria gertatu da: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}NewGRF-an akats larria gertatu da:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} ez du funtzionatuko OpenTTD-k esandakoTTDPatch bertsioarekin STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} {STRING} TTD bertsioarentzat da STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} {STRING}arekin erabiltzeko diseinatua izan da @@ -2749,6 +2787,7 @@ STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING STR_NEWGRF_ERROR_MULTIPLE_ACTION_8 :Action 8 sarrera asko ditu (sprite {3:NUM}) STR_NEWGRF_ERROR_READ_BOUNDS :Pseudo spritea baino hurrunago irakurri (sprite {3:NUM}) STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}Aukeratuta daukazun oinarrizko grafiko paketean "sprite" batzuk falta dira.{}Mesedez eguneratu oinarrizko grafiko paketea +STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}Erabiltzen ari den grafiko baseari sprite batzuk falta zaizkio.{}Mesedez zure grafiko basea eguneratu ezazu.{}OpenTTD-ren {YELLOW}garapen bertsio bat erabiltzen ari zarenez{WHITE}, grafiko basearen {YELLOW}garapen bertsio bat behar izango duzu{WHITE} STR_NEWGRF_ERROR_GRM_FAILED :Eskatutako GRFa ez dago eskuragarri (sprite {3:NUM}) STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{1:STRING} desgaitua izan da {STRING}(en)gatik STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Grafiko deseinu formatu ezezaguna/baliogabea (sprite {3:NUM}) @@ -2759,6 +2798,7 @@ STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Abiaraz STR_NEWGRF_DUPLICATE_GRFID :{WHITE}Ezin artxiboa gehitu: GRF ID bikoiztua STR_NEWGRF_COMPATIBLE_LOADED :{ORANGE}Bat datorren artxiboa ez da aurkitu (GRF bateragarria kargatua) +STR_NEWGRF_TOO_MANY_NEWGRFS :{WHITE}Ezin da artxiboa gehitu: NewGRF-ren artxibo limitera iritsia STR_NEWGRF_COMPATIBLE_LOAD_WARNING :{WHITE}Falta diren artxiboentzako GRF bateragarria deskargatua STR_NEWGRF_DISABLED_WARNING :{WHITE}Falta de GRF artxiboa desgaitua izan da @@ -2878,6 +2918,7 @@ STR_GOALS_SPECTATOR_CAPTION :{WHITE}Helburu STR_GOALS_GLOBAL_TITLE :{BLACK}Helburu orokorrak: STR_GOALS_TEXT :{ORANGE}{STRING} STR_GOALS_NONE :{ORANGE}- Ezer ez - +STR_GOALS_SPECTATOR_NONE :{ORANGE}- Ez aplikagarria - STR_GOALS_PROGRESS :{ORANGE}{STRING} STR_GOALS_PROGRESS_COMPLETE :{GREEN}{STRING} STR_GOALS_COMPANY_TITLE :{BLACK}Konpainiaren helburuak: @@ -2920,6 +2961,8 @@ STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klikatu garraio zerbitzuan ikuspegi nagusia industria/herrian zentratzeko. Ktrl+Klik ikuspegi lehio berria irekiko du indutri/herriaren kokapenean # Story book window +STR_STORY_BOOK_CAPTION :{WHITE}{COMPANY} Istorio Liburua +STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}Istorio Liburu Globala STR_STORY_BOOK_TITLE :{YELLOW}{STRING} STR_STORY_BOOK_GENERIC_PAGE_ITEM :Orrialdea {NUM} STR_STORY_BOOK_PREV_PAGE :{BLACK}Aurrekoa @@ -2955,6 +2998,7 @@ STR_STATION_VIEW_RATINGS_BUTTON :{BLACK}Zama bal STR_STATION_VIEW_RATINGS_TOOLTIP :{BLACK}Geltokiaren zama balorazioak erakutsi STR_STATION_VIEW_CARGO_SUPPLY_RATING :{WHITE}{STRING}: {YELLOW}{COMMA} / {STRING} ({COMMA}%) +STR_STATION_VIEW_GROUP :{BLACK}Taldekatu STR_STATION_VIEW_WAITING_STATION :Geltokia: Itxaroten STR_STATION_VIEW_WAITING_AMOUNT :Kopurua: Itxoiten STR_STATION_VIEW_FROM :{YELLOW}{CARGO_SHORT} {STATION}-tik @@ -3185,6 +3229,7 @@ STR_GROUP_DELETE_TOOLTIP :{BLACK}Aukeratu STR_GROUP_RENAME_TOOLTIP :{BLACK}Aukeratutako taldea berrizendatu STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Klikatu taldean ordezkatze orokorretik babesteko +STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Taldea Ezabatu STR_GROUP_ADD_SHARED_VEHICLE :Geheitu konpartituako ibilgailuak STR_GROUP_REMOVE_ALL_VEHICLES :Ibilgailu guztiak ezabatu @@ -3248,7 +3293,15 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Errepide STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Itsasontzia berrizendatu STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Hegazkina berrizendatu +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Ezkutatu +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Ezkutatu +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Ezkutatu +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Ezkutatu +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Erakutsi +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Erakutsi +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Erakutsi +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Erakutsi STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Tren ibilgailua berrizendatu @@ -3355,6 +3408,8 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Errepide ibilga STR_REPLACE_VEHICLE_SHIP :Itsasontzia STR_REPLACE_VEHICLE_AIRCRAFT :Hegazkina +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Erabilitako garraioak +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Garraio eskuragarriak STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Aukeratu aldatu beharreko motore mota STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK} Aukeratu motore mota zaharra ordezkatuko duen motore berria @@ -4690,6 +4745,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (ezkutua) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} diff --git a/src/lang/belarusian.txt b/src/lang/belarusian.txt index 72ee1dfba2..42bf095fb7 100644 --- a/src/lang/belarusian.txt +++ b/src/lang/belarusian.txt @@ -12,7 +12,7 @@ ##case m f n p nom gen dat acc abl pre -# $Id: belarusian.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: belarusian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2225,7 +2225,7 @@ STR_NETWORK_SERVER_LIST_GAME_NAME :{BLACK}Назв STR_NETWORK_SERVER_LIST_GAME_NAME_TOOLTIP :{BLACK}Назва гэтай гульні STR_NETWORK_SERVER_LIST_GENERAL_ONLINE :{BLACK}{COMMA}/{COMMA} — {COMMA}/{COMMA} STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION :{BLACK}Кліенты -STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION_TOOLTIP :{BLACK}Клиентаў анлайн/макс. {}Кампаніяў анлайн/макс. +STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION_TOOLTIP :{BLACK}Клиентаў анлайн/макс.{}Кампаніяў анлайн/макс. STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT :{BLACK}{COMMA}x{COMMA} STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION :{BLACK}Памер мапы STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION_TOOLTIP :{BLACK}Памер мапы гульні{}Клікніце для сартаваньня па плошчы @@ -3020,7 +3020,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Зямля на STR_ABOUT_OPENTTD :{WHITE}Аб OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Арыґінальныя аўтарскія правы {COPYRIGHT} 1995 Chris Sawyer. Усе правы абароненыя. STR_ABOUT_VERSION :{BLACK}OpenTTD вэрсія {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002–2015 Каманда распрацоўнікаў OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002–2016 Каманда распрацоўнікаў OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Захаваць гульню @@ -3222,7 +3222,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Увага: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Памылка: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Крытычная памылка: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Памылка пры рабоце з NewGRF: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Памылка пры рабоце з NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} ня будзе працаваць з вэрсіяй TTDPatch, паведламленай OpenTTD. STR_NEWGRF_ERROR_DOS_OR_WINDOWS :Файл {1:STRING} патрабуе {STRING}-вэрсію TTD. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} зроблены для выкарыстаньня сумесна з {STRING} diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index e10fe620b1..d1635288c2 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -11,7 +11,7 @@ ##gender m f -# $Id: brazilian_portuguese.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: brazilian_portuguese.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2688,7 +2688,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :O terreno é pr STR_ABOUT_OPENTTD :{WHITE}Sobre o OpenTTD... STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright original {COPYRIGHT} 1995 Chris Sawyer, Todos os direitos reservados STR_ABOUT_VERSION :{BLACK}OpenTTD versão {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 A equipe do OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 A equipe do OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Salvar Jogo @@ -2890,7 +2890,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Atenção: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Erro: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Erro Fatal: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Um erro de NewGRF fatal ocorreu: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Um erro de NewGRF fatal ocorreu:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} não irá funcionar com a versão do TTDPatch encontrada pelo OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} funciona na versão {STRING} de TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} é projetado para ser usado com {STRING} @@ -3975,7 +3975,7 @@ STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Ver a de STR_AI_GAME_SCRIPT :{BLACK}Game Script STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Checando o log do Game Script -STR_ERROR_AI_NO_AI_FOUND :Nenhuma IA adequada encontrada para carregar. {} Esta IA é falsa e não irá fazer nada. {} Você pode pode baixar várias IA através do sistema de 'Conteúdo Online' +STR_ERROR_AI_NO_AI_FOUND :Nenhuma IA adequada encontrada para carregar.{} Esta IA é falsa e não irá fazer nada.{} Você pode pode baixar várias IA através do sistema de 'Conteúdo Online' STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Um dos scripts em execução travou. Favor relatar isto ao autor do script com uma captura de tela da Janela de Depuração da I.A./Script do jogo STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Depuração de I.A./Script do jogo só é acessível pelo servidor @@ -4080,7 +4080,7 @@ STR_GAME_SAVELOAD_NOT_AVAILABLE :Ambiente->Cidades STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Recapeamento rodoviário em progresso -STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Impossível remover cidade... {}Uma estação ou depósito referente à essa cidade não pode ser removido +STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Impossível remover cidade...{}Uma estação ou depósito referente à essa cidade não pode ser removido STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... não há local para uma estátua no centro dessa cidade # Industry related errors diff --git a/src/lang/bulgarian.txt b/src/lang/bulgarian.txt index 3b278fab0e..328546ba9e 100644 --- a/src/lang/bulgarian.txt +++ b/src/lang/bulgarian.txt @@ -12,7 +12,7 @@ ##case m f n p -# $Id: bulgarian.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: bulgarian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2626,7 +2626,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Земя, пр STR_ABOUT_OPENTTD :{WHITE}Относно OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Авторски права {COPYRIGHT} 1995 Крис Сойер (Chris Sawyer), Всички права са запазени STR_ABOUT_VERSION :{BLACK}OpenTTD версия {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Запази играта @@ -2821,7 +2821,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Внимание: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Грешка: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Критично: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Настъпи фатална грешка в NewGRF: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Настъпи фатална грешка в NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} няма да работи с версията на TTDPatch указана от OpenTTD. STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} е за {STRING} версията на TTD. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} е проектиран да работи с {STRING} diff --git a/src/lang/catalan.txt b/src/lang/catalan.txt index 86f3b49826..f9e550c67b 100644 --- a/src/lang/catalan.txt +++ b/src/lang/catalan.txt @@ -11,7 +11,7 @@ ##gender Masculin Femenin -# $Id: catalan.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: catalan.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -43,7 +43,7 @@ STR_CARGO_PLURAL_COPPER_ORE :{G=Masculin}Min STR_CARGO_PLURAL_MAIZE :{G=Masculin}Blat de moro STR_CARGO_PLURAL_FRUIT :{G=Femenin}Fruita STR_CARGO_PLURAL_DIAMONDS :{G=Masculin}Diamants -STR_CARGO_PLURAL_FOOD :{G=Masculin}Menjar +STR_CARGO_PLURAL_FOOD :{G=Masculin}Queviures STR_CARGO_PLURAL_PAPER :{G=Masculin}Paper STR_CARGO_PLURAL_GOLD :{G=Masculin}Or STR_CARGO_PLURAL_WATER :Aigua @@ -52,11 +52,11 @@ STR_CARGO_PLURAL_RUBBER :{G=Masculin}Cau STR_CARGO_PLURAL_SUGAR :{G=Masculin}Sucre STR_CARGO_PLURAL_TOYS :{G=Femenin}Joguines STR_CARGO_PLURAL_CANDY :{G=Masculin}Dolços -STR_CARGO_PLURAL_COLA :{G=Masculin}Refrescs +STR_CARGO_PLURAL_COLA :{G=Masculin}Refrescos STR_CARGO_PLURAL_COTTON_CANDY :{G=Masculin}Cotó de sucre STR_CARGO_PLURAL_BUBBLES :{G=Femenin}Bombolles STR_CARGO_PLURAL_TOFFEE :{G=Masculin}Caramels -STR_CARGO_PLURAL_BATTERIES :{G=Femenin}Bateries +STR_CARGO_PLURAL_BATTERIES :{G=Femenin}Piles STR_CARGO_PLURAL_PLASTIC :{G=Masculin}Plàstic STR_CARGO_PLURAL_FIZZY_DRINKS :{G=Femenin}Begudes gasoses @@ -159,7 +159,7 @@ STR_ABBREV_COLA :{TINY_FONT}RF STR_ABBREV_CANDYFLOSS :{TINY_FONT}CS STR_ABBREV_BUBBLES :{TINY_FONT}BB STR_ABBREV_TOFFEE :{TINY_FONT}CA -STR_ABBREV_BATTERIES :{TINY_FONT}BA +STR_ABBREV_BATTERIES :{TINY_FONT}PI STR_ABBREV_PLASTIC :{TINY_FONT}PL STR_ABBREV_FIZZY_DRINKS :{TINY_FONT}BG STR_ABBREV_NONE :{TINY_FONT}NO @@ -342,7 +342,7 @@ STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}Construe STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Obre la barra d'eines del terreny per elevar/rebaixar el terreny, plantar arbres, etc. STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK}Mostra la finestra de so/música STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Mostra els darrers missatges/notícies i l'historial disponible -STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Informació de terreny, consola, depuració d'scripts, captures de pantalla, informació de l'OpenTTD... +STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Informació de terreny, consola, depuració de scripts, captures de pantalla, informació de l'OpenTTD... STR_TOOLBAR_TOOLTIP_SWITCH_TOOLBAR :{BLACK}Commuta barres d'eines # Extra tooltips for the scenario editor toolbar @@ -468,10 +468,10 @@ STR_NEWS_MENU_MESSAGE_HISTORY_MENU :Historial de mi ############ range ends here ############ range for about menu starts -STR_ABOUT_MENU_LAND_BLOCK_INFO :Informació de la casella de terreny +STR_ABOUT_MENU_LAND_BLOCK_INFO :Informació de la casella STR_ABOUT_MENU_SEPARATOR : -STR_ABOUT_MENU_TOGGLE_CONSOLE :Mostra/oculta la consola -STR_ABOUT_MENU_AI_DEBUG :Depuració de les IA i l'script de la partida +STR_ABOUT_MENU_TOGGLE_CONSOLE :Commuta la consola +STR_ABOUT_MENU_AI_DEBUG :Depuració de les IA i l'script de partida STR_ABOUT_MENU_SCREENSHOT :Captura de pantalla STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Captura de pantalla amb el zoom màxim STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Captura de pantalla amb el zoom predeterminat @@ -479,7 +479,7 @@ STR_ABOUT_MENU_GIANT_SCREENSHOT :Captura de pant STR_ABOUT_MENU_ABOUT_OPENTTD :Quant a l'OpenTTD STR_ABOUT_MENU_SPRITE_ALIGNER :Alineador d'sprites STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :Commuta les caixes delimitadores -STR_ABOUT_MENU_TOGGLE_DIRTY_BLOCKS :Commuta el colorejat dels blocs bruts +STR_ABOUT_MENU_TOGGLE_DIRTY_BLOCKS :Commuta l'acoloriment de blocs bruts ############ range ends here ############ range for ordinal numbers used for the place in the highscore window @@ -594,11 +594,11 @@ STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP :{BLACK}Clica aq # Company league window STR_COMPANY_LEAGUE_TABLE_CAPTION :{WHITE}Taula de la lliga d'empreses -STR_COMPANY_LEAGUE_COMPANY_NAME :{ORANGE}{COMPANY} {BLACK}{COMPANY_NUM} '{STRING}' +STR_COMPANY_LEAGUE_COMPANY_NAME :{ORANGE}{COMPANY} {BLACK}{COMPANY_NUM} «{STRING}» STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_ENGINEER :Enginyer STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRAFFIC_MANAGER :Director de trànsit STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRANSPORT_COORDINATOR :Coordinador de transport -STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_ROUTE_SUPERVISOR :Supervisor de ruta +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_ROUTE_SUPERVISOR :Supervisor de rutes STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_DIRECTOR :Director STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHIEF_EXECUTIVE :Cap executiu STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHAIRMAN :Conseller delegat @@ -867,7 +867,7 @@ STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}{STATION STR_NEWS_STATION_NOW_ACCEPTS_CARGO :{WHITE}{STATION} ara accepta {STRING} STR_NEWS_STATION_NOW_ACCEPTS_CARGO_AND_CARGO :{WHITE}{STATION} ara accepta {STRING} i {STRING} -STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Oferta de subvenció caducada: {}{}El transport de {STRING} des de {STRING} fins a {STRING} no tindrà subvenció +STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Oferta de subvenció caducada:{}{}El transport de {STRING} des de {STRING} fins a {STRING} no tindrà subvenció STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Subvenció retirada:{}{}El transport de {STRING} des de {STRING} fins a {STRING} ja no està subvencionat STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Oferta de subvenció per a un servei:{}{}La primera companyia en transportar {STRING} des de {STRING} fins a {STRING} tindrà una subvenció d'un any per part de l'autoritat local STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Subvenció concedida a {STRING}{}{}El transport de {STRING} des de {STRING} fins a {STRING} rebrà uns ingressos addicionals del 50% durant el pròxim any @@ -990,7 +990,7 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quàdruple STR_GAME_OPTIONS_BASE_GRF :{BLACK}Conjunt de gràfics base STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Selecciona el conjunt de gràfics base a utilitzar -STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} arxiu{P "" s} absent{P "" s}/corromput{P "" s} +STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} arxiu{P "" s} absent{P "" s} o corromput{P "" s}. STR_GAME_OPTIONS_BASE_GRF_DESCRIPTION_TOOLTIP :{BLACK}Informació addicional sobre el conjunt de gràfics base STR_GAME_OPTIONS_BASE_SFX :{BLACK}Conjunt de sons base @@ -1050,11 +1050,11 @@ STR_VARIETY_MEDIUM :Mitjana STR_VARIETY_HIGH :Alta STR_VARIETY_VERY_HIGH :Molt alta -STR_AI_SPEED_VERY_SLOW :Molt lent -STR_AI_SPEED_SLOW :Lent -STR_AI_SPEED_MEDIUM :Mitjà -STR_AI_SPEED_FAST :Ràpid -STR_AI_SPEED_VERY_FAST :Molt ràpid +STR_AI_SPEED_VERY_SLOW :Molt lenta +STR_AI_SPEED_SLOW :Lenta +STR_AI_SPEED_MEDIUM :Mitjana +STR_AI_SPEED_FAST :Ràpida +STR_AI_SPEED_VERY_FAST :Molt ràpida STR_SEA_LEVEL_VERY_LOW :Molt baix STR_SEA_LEVEL_LOW :Baix @@ -1705,22 +1705,22 @@ STR_CONFIG_SETTING_REVERSE_AT_SIGNALS_HELPTEXT :Permetre als tr STR_CONFIG_SETTING_QUERY_CAPTION :{WHITE}Canvia el valor de l'ajustament # Config errors -STR_CONFIG_ERROR :{WHITE}Error en l'arxiu de configuració... -STR_CONFIG_ERROR_ARRAY :{WHITE}... error en la sèrie '{STRING}' +STR_CONFIG_ERROR :{WHITE}S'ha produït un error en l'arxiu de configuració... +STR_CONFIG_ERROR_ARRAY :{WHITE}...error en la matriu «{STRING}». STR_CONFIG_ERROR_INVALID_VALUE :{WHITE}... valor invàlid '{STRING}' per '{STRING}' STR_CONFIG_ERROR_TRAILING_CHARACTERS :{WHITE}... caràcters de fi al final de la configuració '{STRING}' -STR_CONFIG_ERROR_DUPLICATE_GRFID :{WHITE}... ignorant NewGRF '{STRING}': GRF ID duplicada amb '{STRING}' -STR_CONFIG_ERROR_INVALID_GRF :{WHITE}... ignorant NewGRF invàlid '{STRING}': {STRING} -STR_CONFIG_ERROR_INVALID_GRF_NOT_FOUND :no trobat +STR_CONFIG_ERROR_DUPLICATE_GRFID :{WHITE}...s'ignorarà l'arxiu NewGRF «{STRING}» perquè l'identificador del GRF és el mateix que el de «{STRING}». +STR_CONFIG_ERROR_INVALID_GRF :{WHITE}...s'ignorarà l'arxiu NewGRF invàlid «{STRING}»: {STRING} +STR_CONFIG_ERROR_INVALID_GRF_NOT_FOUND :no s'ha trobat. STR_CONFIG_ERROR_INVALID_GRF_UNSAFE :insegur per a ús estàtic -STR_CONFIG_ERROR_INVALID_GRF_SYSTEM :sistema NewGRF -STR_CONFIG_ERROR_INVALID_GRF_INCOMPATIBLE :incompatible amb aquesta versió d'OpenTTD +STR_CONFIG_ERROR_INVALID_GRF_SYSTEM :arxiu NewGRF compatible només amb el TTDPatch. +STR_CONFIG_ERROR_INVALID_GRF_INCOMPATIBLE :no és compatible amb aquesta versió de l'OpenTTD. STR_CONFIG_ERROR_INVALID_GRF_UNKNOWN :desconegut STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_LEVEL :{WHITE}... el nivell de compressió '{STRING}' no és vàlid STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... el format de partida '{STRING}' no està disponible. Tornant a '{STRING}' -STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ignorant el conjunt de gràfics base '{STRING}': no trobats -STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ignorant el conjunt de sons base '{STRING}': no trobats -STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignorant el conjunt de músiques base '{STRING}': no trobats +STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}...s'ignorarà el conjunt de gràfics base «{STRING}» perquè no s'ha trobat. +STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}...s'ignorarà el conjunt de sons base «{STRING}» perquè no s'ha trobat. +STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}...s'ignorarà el conjunt de peces de música «{STRING}» perquè no s'ha trobat. STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Memòria exhaurida STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}L'assignació de {BYTES} de la memòria cau d'sprites ha fallat. La memòria cau d'sprites s'ha reduït a {BYTES}. Això reduirà el rendiment d'OpenTTD. Per reduir els requeriments de memòria pots probar a desactivar els gràfics de 32bpp i/o els nivells amb zoom @@ -1783,19 +1783,19 @@ STR_OSNAME_OS2 :OS/2 STR_OSNAME_SUNOS :SunOS # Abandon game -STR_ABANDON_GAME_CAPTION :{WHITE}Abandona la Partida -STR_ABANDON_GAME_QUERY :{YELLOW}Estàs segur que vols abandonar aquesta partida? -STR_ABANDON_SCENARIO_QUERY :{YELLOW}Estàs segur que vols sortir d'aquest escenari? +STR_ABANDON_GAME_CAPTION :{WHITE}Abandona la partida +STR_ABANDON_GAME_QUERY :{YELLOW}Esteu segur que voleu abandonar la partida? +STR_ABANDON_SCENARIO_QUERY :{YELLOW}Esteu segur que voleu sortir de l'escenari? # Cheat window STR_CHEATS :{WHITE}Trampes -STR_CHEATS_TOOLTIP :{BLACK}Els quadres marcats indiquen que ja has fet servir aquesta trampa -STR_CHEATS_WARNING :{BLACK}Atenció! Estàs a punt d'enredar als teus companys competidors. Pensa que una cosa així serà recordada per tota la eternitat -STR_CHEAT_MONEY :{LTBLUE}Incrementa els diners en {CURRENCY_LONG} -STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Jugant com la companyia: {ORANGE}{COMMA} -STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Eruga màgica (treu indústries, objectes inamovibles): {ORANGE}{STRING} +STR_CHEATS_TOOLTIP :{BLACK}Les caselles de selecció indiquen si heu fet servir aquesta trampa. +STR_CHEATS_WARNING :{BLACK}Atenció! Esteu a punt d'enredar als altres jugadors. Penseu que una cosa així serà recordada per tota l'eternitat. +STR_CHEAT_MONEY :{LTBLUE}Augmenta els diners de la companyia actual en {CURRENCY_LONG}. +STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Juga amb la companyia: {ORANGE}{COMMA} +STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Eruga màgica (treu indústries i altres objectes inamovibles): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Els túnels es poden creuar: {ORANGE}{STRING} -STR_CHEAT_NO_JETCRASH :{LTBLUE}Els avions a reacció no tindran accidents (freqüents) en els aeroports petits: {ORANGE}{STRING} +STR_CHEAT_NO_JETCRASH :{LTBLUE}Els avions a reacció en aeroports petits tindran menys accidents: {ORANGE}{STRING} STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Edita l'alçada màxima del mapa: {ORANGE}{NUM} STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Edita l'alçada màxima del terreny en el mapa STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Paisatge temperat @@ -1804,7 +1804,7 @@ STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Paisatge subtro STR_CHEAT_SWITCH_CLIMATE_TOYLAND_LANDSCAPE :Paisatge de joguines STR_CHEAT_CHANGE_DATE :{LTBLUE}Canvia la data: {ORANGE}{DATE_SHORT} STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Canvia l'any actual -STR_CHEAT_SETUP_PROD :{LTBLUE}Activa la modificació de valors de producció: {ORANGE}{STRING} +STR_CHEAT_SETUP_PROD :{LTBLUE}Activa la modificació dels valors de producció: {ORANGE}{STRING} # Livery window STR_LIVERY_CAPTION :{WHITE}Nou esquema de colors @@ -2089,18 +2089,18 @@ STR_NETWORK_GIVE_MONEY_CAPTION :{WHITE}Introdue STR_NETWORK_TOOLBAR_LIST_SPECTATOR :{BLACK}Espectador # Network set password -STR_COMPANY_PASSWORD_CANCEL :{BLACK}No desis la contrasenya introduïda -STR_COMPANY_PASSWORD_OK :{BLACK}Dóna a la companyia una nova contrasenya +STR_COMPANY_PASSWORD_CANCEL :{BLACK}No desis la nova contrasenya. +STR_COMPANY_PASSWORD_OK :{BLACK}Estableix aquesta nova contrasenya per a la companyia. STR_COMPANY_PASSWORD_CAPTION :{WHITE}Contrasenya de la companyia -STR_COMPANY_PASSWORD_MAKE_DEFAULT :{BLACK}Contrasenya de la companyia predeterminada -STR_COMPANY_PASSWORD_MAKE_DEFAULT_TOOLTIP :{BLACK}Utilitza la contrasenya d'aquesta companyia com a predeterminada per a noves companyies +STR_COMPANY_PASSWORD_MAKE_DEFAULT :{BLACK}Contrasenya predeterminada de companyies noves +STR_COMPANY_PASSWORD_MAKE_DEFAULT_TOOLTIP :{BLACK}Utilitza com a contrasenya predeterminada de companyies noves la d'aquesta companyia. # Network company info join/password -STR_COMPANY_VIEW_JOIN :{BLACK}Unir-se -STR_COMPANY_VIEW_JOIN_TOOLTIP :{BLACK}Unir-se i jugar amb aquesta companyia +STR_COMPANY_VIEW_JOIN :{BLACK}Uniu-vos +STR_COMPANY_VIEW_JOIN_TOOLTIP :{BLACK}Uniu-vos a aquesta companyia per poder-hi jugar. STR_COMPANY_VIEW_PASSWORD :{BLACK}Contrasenya -STR_COMPANY_VIEW_PASSWORD_TOOLTIP :{BLACK}Protegeix la teva empresa amb contrasenya per tal d'evitar que la utilitzin usuaris no autoritzats -STR_COMPANY_VIEW_SET_PASSWORD :{BLACK}Estableix la contrasenya de l'Empresa +STR_COMPANY_VIEW_PASSWORD_TOOLTIP :{BLACK}Protegeix la vostra companyia amb una contrasenya per tal d'evitar que la controlin altres usuaris no autoritzats. +STR_COMPANY_VIEW_SET_PASSWORD :{BLACK}Estableix la contrasenya de la companyia. # Network chat STR_NETWORK_CHAT_SEND :{BLACK}Envia @@ -2328,8 +2328,8 @@ STR_RAIL_NAME_MONORAIL :Monorail STR_RAIL_NAME_MAGLEV :Maglev # Rail depot construction window -STR_BUILD_DEPOT_TRAIN_ORIENTATION_CAPTION :{WHITE}Orientació del Dipòsit -STR_BUILD_DEPOT_TRAIN_ORIENTATION_TOOLTIP :{BLACK}Selecciona l'orientació de les cotxeres de tren +STR_BUILD_DEPOT_TRAIN_ORIENTATION_CAPTION :{WHITE}Orientació del dipòsit +STR_BUILD_DEPOT_TRAIN_ORIENTATION_TOOLTIP :{BLACK}Seleccioneu l'orientació desitjada del dipòsit i taller de trens. # Rail waypoint construction window STR_WAYPOINT_CAPTION :{WHITE}Punt de pas @@ -2354,22 +2354,22 @@ STR_STATION_CLASS_WAYP :Punt de pas # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}Selecció de senyals -STR_BUILD_SIGNAL_SEMAPHORE_NORM_TOOLTIP :{BLACK}Senyal de tram (mecànic){}Aquest es el tipus més bàsic de senyal, permetent només un tren dins el mateix tram cada vegada -STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}Senyal d'entrada (mecànic){}En verd mentre hi hagi un o més senyals de sortida en verd en la següent secció de vies. En cas contrari està en vermell -STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}Senyal de sortida (mecànic){}Es comporta com un senyal de tram però és necessari per activar els pre-senyals d'entrada -STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}Senyal combinat (mecànic){}El senyal combinat simplement actua alhora com a senyal d'entrada i de sortida. Això permet construir grans "arbres" de pre-senyals -STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}Senyal de camí (mecànic){}Un senyal de camí permet entrar més d'un tren dins del mateix tram si són capaços de reservar una ruta cap a un punt de parada segur. Els senyals de camí poden ser passats des del darrera -STR_BUILD_SIGNAL_SEMAPHORE_PBS_OWAY_TOOLTIP :{BLACK}Senyal de camí d'un sentit (mecànic){}Un senyal de camí permet entrar més d'un tren dins del mateix tram si són capaços de reservar una ruta cap a un punt de parada segur. Els senyals de camí d'un sentit no poden ser passats des del darrera -STR_BUILD_SIGNAL_ELECTRIC_NORM_TOOLTIP :{BLACK}Senyal de tram (elèctric){}Aquest es el tipus més bàsic de senyal, permetent només un tren dins el mateix tram cada vegada -STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}Senyal d'entrada (elèctric){}En verd mentre hi hagi un o més senyals de sortida en verd en la següent secció de vies. En cas contrari està en vermell -STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}Senyal de sortida (elèctric){}Es comporta com un senyal de tram però és necessari per activar els pre-senyals d'entrada -STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Senyal combinat (elèctric){}El senyal combinat simplement actua alhora com a senyal d'entrada i de sortida. Això permet construir grans "arbres" de pre-senyals -STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}Senyal de camí (elèctric){}Un senyal de camí permet entrar més d'un tren dins del mateix tram si són capaços de reservar una ruta cap a un punt de parada segur. Els senyals de camí poden ser passats des del darrera -STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}Senyal de camí d'un sentit (elèctric){}Un senyal de camí permet entrar més d'un tren dins del mateix tram si són capaços de reservar una ruta cap a un punt de parada segur. Els senyals de camí d'un sentit no poden ser passats des del darrera -STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Conversió de senyals{}Quan està seleccionat, clicant un senyal existent el converteix al tipus de senyal seleccionat. CTRL+Clic commuta la variant existent. Shift+Clic mostra el cost estimat de conversió -STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}Densitat de senyals en arrossegar -STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}Disminueix la densitat de senyals en arrossegar -STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Incrementa la densitat de senyals en arrossegar +STR_BUILD_SIGNAL_SEMAPHORE_NORM_TOOLTIP :{BLACK}Senyal de secció (mecànic){}Aquest és el tipus de senyal més senzill. Permet l'entrada a la següent secció de vies només si no hi ha cap altre tren. +STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}Senyal previ d'entrada (mecànic){}En verd si a la següent secció no hi ha trens i, a més a més, hi ha almenys un senyal previ de sortida en verd. En cas contrari, en vermell. +STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}Senyal previ de sortida (mecànic){}Es comporta com un senyal de secció i activa correctament els senyals previs d'entrada i combinats. +STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}Senyal previ combinat (mecànic){}El senyal combinat actua alhora com a senyal previ d'entrada i senyal previ de sortida. Això permet organitzar diverses seccions amb senyals previs, situant els d'entrada a un extrem, els de sortida a l'altre i els combinats al mig. +STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}Senyal de ruta (mecànic){}Un senyal de ruta permet entrar més d'un tren dins de la mateixa secció de vies. Cal, però, que sigui capaç de reservar una ruta fins un punt de parada segur sense creuar-se amb cap altre tren. Es pot travessar en el sentit contrari al senyal. +STR_BUILD_SIGNAL_SEMAPHORE_PBS_OWAY_TOOLTIP :{BLACK}Senyal de ruta d'un sentit (mecànic){}Un senyal de ruta permet entrar més d'un tren dins de la mateixa secció de vies. Cal, però, que sigui capaç de reservar una ruta fins un punt de parada segur sense creuar-se amb cap altre tren. No es pot travessar en el sentit contrari al senyal. +STR_BUILD_SIGNAL_ELECTRIC_NORM_TOOLTIP :{BLACK}Senyal de secció (elèctric){}Aquest és el tipus de senyal més senzill. Permet l'entrada a la següent secció de vies només si no hi ha cap altre tren. +STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}Senyal previ d'entrada (elèctric){}En verd si a la següent secció no hi ha trens i, a més a més, hi ha almenys un senyal previ de sortida en verd. En cas contrari, en vermell. +STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}Senyal previ de sortida (elèctric){}Es comporta com un senyal de secció i activa correctament els senyals previs d'entrada i combinats. +STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Senyal previ combinat (elèctric){}El senyal combinat actua alhora com a senyal previ d'entrada i senyal previ de sortida. Això permet organitzar diverses seccions amb senyals previs, situant els d'entrada a un extrem, els de sortida a l'altre i els combinats al mig. +STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}Senyal de ruta (elèctric){}Un senyal de ruta permet entrar més d'un tren dins de la mateixa secció de vies. Cal, però, que sigui capaç de reservar una ruta fins un punt de parada segur sense creuar-se amb cap altre tren. Es pot travessar en el sentit contrari al senyal. +STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}Senyal de ruta d'un sentit (elèctric){}Un senyal de ruta permet entrar més d'un tren dins de la mateixa secció de vies. Cal, però, que sigui capaç de reservar una ruta fins un punt de parada segur sense creuar-se amb cap altre tren. No es pot travessar en el sentit contrari al senyal. +STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Conversió de senyals{}Quan aquest botó està premut, si es clica un senyal existent el converteix al tipus de senyal seleccionat. Ctrl+Clic commuta la variant existent. Maj+Clic mostra el cost estimat de conversió. +STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}Espaiat entre senyals +STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}Disminueix l'espai entre senyals consecutives situades automàticament quan s'arrossega el ratolí o es manté premuda la tecla Ctrl. +STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Augmenta l'espai entre senyals consecutives situades automàticament quan s'arrossega el ratolí o es manté premuda la tecla Ctrl. # Bridge selection window STR_SELECT_RAIL_BRIDGE_CAPTION :{WHITE}Selecciona Pont de Tren @@ -2377,14 +2377,14 @@ STR_SELECT_ROAD_BRIDGE_CAPTION :{WHITE}Seleccio STR_SELECT_BRIDGE_SELECTION_TOOLTIP :{BLACK}Selecció de pont - clica sobre el pont triat per construir-lo STR_SELECT_BRIDGE_INFO :{GOLD}{STRING},{} {VELOCITY} {WHITE}{CURRENCY_LONG} STR_SELECT_BRIDGE_SCENEDIT_INFO :{GOLD}{STRING},{} {VELOCITY} -STR_BRIDGE_NAME_SUSPENSION_STEEL :Suspensió, Acer -STR_BRIDGE_NAME_GIRDER_STEEL :Biga, Acer -STR_BRIDGE_NAME_CANTILEVER_STEEL :Volada, Acer -STR_BRIDGE_NAME_SUSPENSION_CONCRETE :Suspensió, Formigó -STR_BRIDGE_NAME_WOODEN :De Fusta -STR_BRIDGE_NAME_CONCRETE :Formigó -STR_BRIDGE_NAME_TUBULAR_STEEL :Tubular, Acer -STR_BRIDGE_TUBULAR_SILICON :Tubular, Silicona +STR_BRIDGE_NAME_SUSPENSION_STEEL :Pont penjant d'acer +STR_BRIDGE_NAME_GIRDER_STEEL :Pont biga d'acer +STR_BRIDGE_NAME_CANTILEVER_STEEL :Pont en mènsula d'acer +STR_BRIDGE_NAME_SUSPENSION_CONCRETE :Pont penjant de formigó +STR_BRIDGE_NAME_WOODEN :Pont de fusta +STR_BRIDGE_NAME_CONCRETE :Pont de formigó +STR_BRIDGE_NAME_TUBULAR_STEEL :Pont tubular d'acer +STR_BRIDGE_TUBULAR_SILICON :Pont tubular de silicona # Road construction toolbar @@ -2409,10 +2409,10 @@ STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Intercan STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}Canvia construeix/treu de la construcció de vies de tramvia # Road depot construction window -STR_BUILD_DEPOT_ROAD_ORIENTATION_CAPTION :{WHITE}Cotxeres -STR_BUILD_DEPOT_ROAD_ORIENTATION_SELECT_TOOLTIP :{BLACK}Selecciona l'orientació de les cotxeres -STR_BUILD_DEPOT_TRAM_ORIENTATION_CAPTION :{WHITE}Orientació de les cotxeres de tramvies -STR_BUILD_DEPOT_TRAM_ORIENTATION_SELECT_TOOLTIP :{BLACK}Selecciona l'orientació de les cotxeres de tramvies +STR_BUILD_DEPOT_ROAD_ORIENTATION_CAPTION :{WHITE}Orientació de la cotxera +STR_BUILD_DEPOT_ROAD_ORIENTATION_SELECT_TOOLTIP :{BLACK}Seleccioneu l'orientació desitjada de la cotxera per a vehicles de carretera. +STR_BUILD_DEPOT_TRAM_ORIENTATION_CAPTION :{WHITE}Orientació de la cotxera de tramvies +STR_BUILD_DEPOT_TRAM_ORIENTATION_SELECT_TOOLTIP :{BLACK}Seleccioneu l'orientació de la cotxera de tramvies. # Road vehicle station construction window STR_STATION_BUILD_BUS_ORIENTATION :{WHITE}Orientació Parada d'autobús @@ -2454,19 +2454,19 @@ STR_STATION_BUILD_AIRPORT_CLASS_LABEL :{BLACK}Classe d STR_STATION_BUILD_AIRPORT_LAYOUT_NAME :{BLACK}Disposició {NUM} STR_AIRPORT_SMALL :Petit -STR_AIRPORT_CITY :de Ciutat +STR_AIRPORT_CITY :De ciutat STR_AIRPORT_METRO :Metropolità STR_AIRPORT_INTERNATIONAL :Internacional STR_AIRPORT_COMMUTER :Regional STR_AIRPORT_INTERCONTINENTAL :Intercontinental STR_AIRPORT_HELIPORT :Heliport -STR_AIRPORT_HELIDEPOT :Helihangar -STR_AIRPORT_HELISTATION :Heliestació +STR_AIRPORT_HELIDEPOT :Hangar d'helicòpters +STR_AIRPORT_HELISTATION :Estació d'helicòpters STR_AIRPORT_CLASS_SMALL :Aeroports petits STR_AIRPORT_CLASS_LARGE :Aeroports grans STR_AIRPORT_CLASS_HUB :Aeroports d'enllaç -STR_AIRPORT_CLASS_HELIPORTS :Aeroports d'helicòpters +STR_AIRPORT_CLASS_HELIPORTS :Heliports STR_STATION_BUILD_NOISE :{BLACK}Soroll generat: {GOLD}{COMMA} @@ -2685,10 +2685,10 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_HEADQUARTERS :Seu de l'Empres STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :terreny propietat de l'Empresa # About OpenTTD window -STR_ABOUT_OPENTTD :{WHITE}Quant a OpenTTD -STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright original {COPYRIGHT} 1995 Chris Sawyer, Tots els drets reservats +STR_ABOUT_OPENTTD :{WHITE}Quant a l'OpenTTD +STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright original {COPYRIGHT} 1995 Chris Sawyer. Tots els drets reservats. STR_ABOUT_VERSION :{BLACK}OpenTTD versió {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 L'equip de l'OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 L'equip de l'OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Desa la Partida @@ -2875,7 +2875,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Va cap a STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Sprite anterior STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Procedeix cap a l'sprite normal anterior, saltant qualsevol sprite pseudo/recolor/font i passant del primer sprite a l'últim STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representació de l'sprite seleccionat actualment. L'alineació s'ignora quan es dibuixa aquest sprite -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Mou l'sprite al voltant, canviant els desplaçaments en X i Y +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Desplaça l'sprite un píxel en el sentit indicat. Amb Ctrl+Clic el desplaça 8 píxels. STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Restableix relatius STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Restableix els desplaçaments relatius actuals STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Desplaçament X: {NUM}, Desplaçament Y: {NUM} (Absolut) @@ -2890,7 +2890,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Alerta: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Error: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatal: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}S'ha produït un error fatal de NewGRF: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}S'ha produït un error fatal de NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} no funcionarà amb la versió TTDPatch informada per l'OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} és per la versió {STRING} de TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} està dissenyat per ser utilitzat amb {STRING} @@ -2937,7 +2937,7 @@ STR_NEWGRF_BROKEN :{WHITE}El compo STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Un vehicle '{1:ENGINE}' ha canviat el seu estat de vagó amb potència mentre estava fora de la cotxera STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Un vehicle '{1:ENGINE}' ha canviat la seva llargada mentre estava fora del dipòsit STR_NEWGRF_BROKEN_CAPACITY :{WHITE}Un vehicle '{1:ENGINE}' ha canviat la seva capacitat mentre estava fora del dipòsit o no s'estava canviant el tipus de càrrega a transportar -STR_BROKEN_VEHICLE_LENGTH :{WHITE}El tren '{VEHICLE}' pertanyent a '{COMPANY}' té una llargada invàlida. Això està causat probablement per problemes amb els NewGRF. La partida podria desincronitzar-se o penjar-se +STR_BROKEN_VEHICLE_LENGTH :{WHITE}El tren '{VEHICLE}' de '{COMPANY}' té una llargada invàlida, probablement a causa de problemes amb els NewGRF. La partida podria dessincronitzar-se o fallar. STR_NEWGRF_BUGGY :{WHITE}El NewGRF '{0:STRING}' està donant informació incorrecta STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}La informació de càrrega/remodelació per '{1:ENGINE}' no encaixa amb la llista de compres després de la construcció. Això podria causar un mal funcionament de autorenova/-substitueix @@ -3058,7 +3058,7 @@ STR_GOAL_QUESTION_BUTTON_OK :OK STR_GOAL_QUESTION_BUTTON_NO :No STR_GOAL_QUESTION_BUTTON_YES :Sí STR_GOAL_QUESTION_BUTTON_DECLINE :Declina -STR_GOAL_QUESTION_BUTTON_ACCEPT :Accepta +STR_GOAL_QUESTION_BUTTON_ACCEPT :D'acord STR_GOAL_QUESTION_BUTTON_IGNORE :Ignora STR_GOAL_QUESTION_BUTTON_RETRY :Reintenta STR_GOAL_QUESTION_BUTTON_PREVIOUS :Anterior @@ -3103,13 +3103,13 @@ STR_STATION_LIST_WAYPOINT :{YELLOW}{WAYPOI STR_STATION_LIST_NONE :{YELLOW}- Cap - STR_STATION_LIST_SELECT_ALL_FACILITIES :{BLACK}Seleccionar totes les instal·lacions STR_STATION_LIST_SELECT_ALL_TYPES :{BLACK}Selecciona tots els tipus de càrrega (incloent carga sense espera) -STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}No hi ha càrrega d'aquest tipus esperant +STR_STATION_LIST_NO_WAITING_CARGO :{BLACK}Selecciona les estacions que no tenen càrrega esperant. # Station view window STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES} STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_LONG} STR_STATION_VIEW_EN_ROUTE_FROM :{YELLOW}({CARGO_SHORT} des de {STATION}) -STR_STATION_VIEW_RESERVED :{YELLOW}({CARGO_SHORT} reservat per carregar) +STR_STATION_VIEW_RESERVED :{YELLOW}(reservat per carregar: {CARGO_SHORT}) STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Accepta STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Mostra la llista de càrregues admeses @@ -3148,11 +3148,11 @@ STR_STATION_VIEW_GROUP_D_V_S :Destincació-Vi ############ range for rating starts STR_CARGO_RATING_APPALLING :Pèssim -STR_CARGO_RATING_VERY_POOR :Molt Pobre +STR_CARGO_RATING_VERY_POOR :Molt pobre STR_CARGO_RATING_POOR :Pobre STR_CARGO_RATING_MEDIOCRE :Mediocre STR_CARGO_RATING_GOOD :Bo -STR_CARGO_RATING_VERY_GOOD :Molt Bo +STR_CARGO_RATING_VERY_GOOD :Molt bo STR_CARGO_RATING_EXCELLENT :Excel·lent STR_CARGO_RATING_OUTSTANDING :Excepcional ############ range for rating ends @@ -3174,7 +3174,7 @@ STR_STATION_VIEW_CLOSE_AIRPORT_TOOLTIP :{BLACK}Evita qu STR_WAYPOINT_VIEW_CAPTION :{WHITE}{WAYPOINT} STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK}Centra la vista principal al lloc del punt de control. Ctrl+Clic obre una nova vista al lloc del punt de control STR_WAYPOINT_VIEW_CHANGE_WAYPOINT_NAME :{BLACK}Canvia el nom del punt de trobada -STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Centra vista principal al lloc de la boia. Ctrl+Clic obre una nova vista al lloc de la boia +STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Centra la vista principal en la boia. Amb Ctrl+Clic, obre una nova vista centrada en la boia. STR_BUOY_VIEW_CHANGE_BUOY_NAME :{BLACK}Canvia el nom de la boia STR_EDIT_WAYPOINT_NAME :{WHITE}Edita nom del punt de pas @@ -3213,16 +3213,16 @@ STR_FINANCES_INFRASTRUCTURE_BUTTON :{BLACK}Infraest STR_COMPANY_VIEW_CAPTION :{WHITE}{COMPANY} {BLACK}{COMPANY_NUM} STR_COMPANY_VIEW_PRESIDENT_MANAGER_TITLE :{WHITE}{PRESIDENT_NAME}{}{GOLD}(President) -STR_COMPANY_VIEW_INAUGURATED_TITLE :{GOLD}Inaugurat: {WHITE}{NUM} +STR_COMPANY_VIEW_INAUGURATED_TITLE :{GOLD}Any d'inici d'activitats: {WHITE}{NUM} STR_COMPANY_VIEW_COLOUR_SCHEME_TITLE :{GOLD}Esquema de colors: STR_COMPANY_VIEW_VEHICLES_TITLE :{GOLD}Vehicles: STR_COMPANY_VIEW_TRAINS :{WHITE}{COMMA} tren{P "" s} -STR_COMPANY_VIEW_ROAD_VEHICLES :{WHITE}{COMMA} automòbil{P "" s} -STR_COMPANY_VIEW_AIRCRAFT :{WHITE}{COMMA} avió{P "" ns} +STR_COMPANY_VIEW_ROAD_VEHICLES :{WHITE}{COMMA} vehicle{P "" s} de carretera +STR_COMPANY_VIEW_AIRCRAFT :{WHITE}{COMMA} aeronau{P "" s} STR_COMPANY_VIEW_SHIPS :{WHITE}{COMMA} vaixell{P "" s} STR_COMPANY_VIEW_VEHICLES_NONE :{WHITE}Cap -STR_COMPANY_VIEW_COMPANY_VALUE :{GOLD}Valor de l'Empresa: {WHITE}{CURRENCY_LONG} -STR_COMPANY_VIEW_SHARES_OWNED_BY :{WHITE}({COMMA}% propietat de {COMPANY}) +STR_COMPANY_VIEW_COMPANY_VALUE :{GOLD}Valor de la companyia: {WHITE}{CURRENCY_LONG} +STR_COMPANY_VIEW_SHARES_OWNED_BY :{WHITE}(un {COMMA}% és propietat de {COMPANY}) STR_COMPANY_VIEW_INFRASTRUCTURE :{GOLD}Infraestructura: STR_COMPANY_VIEW_INFRASTRUCTURE_RAIL :{WHITE}{COMMA} tros{P "" sos} de via STR_COMPANY_VIEW_INFRASTRUCTURE_ROAD :{WHITE}{COMMA} tros{P "" sos} de carretera @@ -3231,37 +3231,37 @@ STR_COMPANY_VIEW_INFRASTRUCTURE_STATION :{WHITE}{COMMA} STR_COMPANY_VIEW_INFRASTRUCTURE_AIRPORT :{WHITE}{COMMA} aeroport{P "" s} STR_COMPANY_VIEW_INFRASTRUCTURE_NONE :{WHITE}Cap -STR_COMPANY_VIEW_BUILD_HQ_BUTTON :{BLACK}Construir Seu -STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP :{BLACK}Construeix seu de la companyia -STR_COMPANY_VIEW_VIEW_HQ_BUTTON :{BLACK}Veure Seu -STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP :{BLACK}Veure seu de la companyia -STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Trasllada la Seu -STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Trasllada la seu de la companyia a un altre lloc amb el cost d'un 1% del seu valor. Shift+Clic mostra el cost estimat sense traslladar la seu +STR_COMPANY_VIEW_BUILD_HQ_BUTTON :{BLACK}Construeix la seu +STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP :{BLACK}Construeix la seu de la companyia. +STR_COMPANY_VIEW_VIEW_HQ_BUTTON :{BLACK}Veure la seu +STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP :{BLACK}Veure la seu de la companyia. +STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Trasllada la seu +STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Trasllada la seu a un altre lloc amb el cost d'un 1% del valor de la companyia. Amb Maj+Clic, mostra el cost estimat sense traslladar la seu. STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Detalls -STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Veure detalls del càlculs de la infraestructura +STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Veure els detalls de la infraestructura de la companyia. -STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Nova Cara -STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Selecciona una nova cara pel president +STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Modifica la cara +STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Modifica la cara del president de la companyia. STR_COMPANY_VIEW_COLOUR_SCHEME_BUTTON :{BLACK}Esquema de colors -STR_COMPANY_VIEW_COLOUR_SCHEME_TOOLTIP :{BLACK}Canvia l'aspecte dels vehicles de la companyia -STR_COMPANY_VIEW_COMPANY_NAME_BUTTON :{BLACK}Nom Empresa -STR_COMPANY_VIEW_COMPANY_NAME_TOOLTIP :{BLACK}Canvia el nom de la companyia -STR_COMPANY_VIEW_PRESIDENT_NAME_BUTTON :{BLACK}Nom President -STR_COMPANY_VIEW_PRESIDENT_NAME_TOOLTIP :{BLACK}Canvia el nom del president +STR_COMPANY_VIEW_COLOUR_SCHEME_TOOLTIP :{BLACK}Canvia l'aspecte dels vehicles de la companyia. +STR_COMPANY_VIEW_COMPANY_NAME_BUTTON :{BLACK}Nom de la companyia +STR_COMPANY_VIEW_COMPANY_NAME_TOOLTIP :{BLACK}Canvia el nom de la companyia. +STR_COMPANY_VIEW_PRESIDENT_NAME_BUTTON :{BLACK}Nom del president +STR_COMPANY_VIEW_PRESIDENT_NAME_TOOLTIP :{BLACK}Canvia el nom del president de la companyia. STR_COMPANY_VIEW_BUY_SHARE_BUTTON :{BLACK}Compra un 25% d'accions STR_COMPANY_VIEW_SELL_SHARE_BUTTON :{BLACK}Vendre un 25% d'accions -STR_COMPANY_VIEW_BUY_SHARE_TOOLTIP :{BLACK}Compra el 25% de les accions d'aquesta companyia. Shift+Clic mostra el cost estimat sense comprar cap acció -STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}Ven un 25% de les accions d'aquesta companyia. Shift+Clic mostra el cost estimat sense vendre cap acció +STR_COMPANY_VIEW_BUY_SHARE_TOOLTIP :{BLACK}Compra el 25% de les accions d'aquesta companyia. Amb Maj+Clic, mostra'n només el cost estimat. +STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}Ven un 25% de les accions d'aquesta companyia. Amb Maj+Clic, mostra el cost estimat sense vendre cap acció. -STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :Nom Empresa -STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Nom President +STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :Nom de la companyia +STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Nom del president -STR_BUY_COMPANY_MESSAGE :{WHITE}Busquem empresa de transports per absorbir la nostra companyia{}{}Vols comprar a {COMPANY} per {CURRENCY_LONG}? +STR_BUY_COMPANY_MESSAGE :{WHITE}Estem venent la nostra companyia de transports.{}{}Vols comprar {COMPANY} per {CURRENCY_LONG}? # Company infrastructure window STR_COMPANY_INFRASTRUCTURE_VIEW_CAPTION :{WHITE}Infraestructura de {COMPANY} -STR_COMPANY_INFRASTRUCTURE_VIEW_RAIL_SECT :{GOLD}Trossos de via: +STR_COMPANY_INFRASTRUCTURE_VIEW_RAIL_SECT :{GOLD}Trossos de vies: STR_COMPANY_INFRASTRUCTURE_VIEW_SIGNALS :{WHITE}Senyals STR_COMPANY_INFRASTRUCTURE_VIEW_ROAD_SECT :{GOLD}Trossos de carretera: STR_COMPANY_INFRASTRUCTURE_VIEW_ROAD :{WHITE}Carretera @@ -3365,15 +3365,15 @@ STR_GROUP_REMOVE_ALL_VEHICLES :Treu tots els v STR_GROUP_RENAME_CAPTION :{BLACK}Canvia de nom el grup # Build vehicle window -STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION :Nous Trens -STR_BUY_VEHICLE_TRAIN_ELRAIL_CAPTION :Nous Trens de Via Electrificada -STR_BUY_VEHICLE_TRAIN_MONORAIL_CAPTION :Nous Trens Monorail -STR_BUY_VEHICLE_TRAIN_MAGLEV_CAPTION :Nous Trens Maglev +STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION :Compra de nous vehicles ferroviaris +STR_BUY_VEHICLE_TRAIN_ELRAIL_CAPTION :Compra de nous vehicles ferroviaris per vies electrificades +STR_BUY_VEHICLE_TRAIN_MONORAIL_CAPTION :Compra de nous vehicles monorail +STR_BUY_VEHICLE_TRAIN_MAGLEV_CAPTION :Compra de nous vehicles Maglev -STR_BUY_VEHICLE_TRAIN_ALL_CAPTION :Nous Vehicles sobre vies -STR_BUY_VEHICLE_ROAD_VEHICLE_CAPTION :Nous Vehicles -STR_BUY_VEHICLE_SHIP_CAPTION :Nous Vaixells -STR_BUY_VEHICLE_AIRCRAFT_CAPTION :Nou Avió +STR_BUY_VEHICLE_TRAIN_ALL_CAPTION :Compra de nous vehicles sobre vies +STR_BUY_VEHICLE_ROAD_VEHICLE_CAPTION :Compra de nous vehicles de carretera +STR_BUY_VEHICLE_SHIP_CAPTION :Compra de nous vaixells +STR_BUY_VEHICLE_AIRCRAFT_CAPTION :Compra de noves aeronaus STR_PURCHASE_INFO_COST_WEIGHT :{BLACK}Cost: {GOLD}{CURRENCY_LONG}{BLACK} Pes: {GOLD}{WEIGHT_SHORT} STR_PURCHASE_INFO_SPEED_POWER :{BLACK}Velocitat: {GOLD}{VELOCITY}{BLACK} Potència: {GOLD}{POWER} @@ -3396,30 +3396,30 @@ STR_PURCHASE_INFO_ALL_BUT :Tots menys {CAR STR_PURCHASE_INFO_MAX_TE :{BLACK}Màx. Esforç de Tracció: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Abast: {GOLD}{COMMA} cel·les -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Llista de selecció de vehicles ferroviaris. Clica al vehicle per més informació. Ctrl+Click per a alternar entre mostrar/ocultar el vehicle ferroviari -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Llista de selecció de vehicles de carretera. Clica en un vehicle per més informació. Ctrl+Click per a alternar entre mostrar/ocultar el vehicle de carretera -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Llista de selecció de vaixells. Clica en un vaixell per més informació. Ctrl+Click per a alternar entre mostrar/ocultar el vaixell -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Llista de selecció d'aeronaus. Clica sobre l'aeronau per més informació. Ctrl+Click per a alternar entre mostrar/ocultar l'aeronau +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Llista de selecció de trens i vagons. Clica al vehicle per més informació. Ctrl+Click per a alternar entre mostrar/ocultar el vehicle ferroviari +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Llista de models de vehicles de carretera. Clica sobre el model per més informació. Amb Ctrl+Clic, commuta entre mostrar o ocultar el model. +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Llista de models de vaixells. Clica sobre el model per més informació. Amb Ctrl+Clic, commuta entre mostrar o ocultar el model. +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Llista de selecció d'aeronaus. Clica sobre l'aeronau per més informació. Amb Ctrl+Clic, commuta entre mostrar o ocultar l'aeronau. -STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Compra Vehicle -STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Compra Vehicle -STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_BUTTON :{BLACK}Compra Vaixell -STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}Compra Avió +STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Compra el tren/vagó +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Compra el vehicle +STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_BUTTON :{BLACK}Compra el vaixell +STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}Compra l'aeronau -STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Compra el vehicle ferroviari destacat. Shift+Clic mostra el cost estimat sense comprar-lo -STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Compra l'automòbil destacat. Shift+Clic mostra el cost estimat sense comprar-lo -STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Compra el vaixell destacat. Shift+Clic mostra el cost estimat sense comprar-lo -STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Compra l'avió destacat. Shift+Clic mostra el cost estimat sense comprar-lo +STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Compra el tren/vagó seleccionat. Amb Maj+Clic, mostra el cost estimat sense comprar-lo. +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Compra el vehicle marcat. Amb Maj+Clic, mostra el cost estimat sense comprar-lo. +STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Compra el vaixell seleccionat. Amb Maj+Clic, mostra el cost estimat sense comprar-lo. +STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Compra l'avió marcat. Amb Maj+Clic, mostra el cost estimat sense comprar-lo. STR_BUY_VEHICLE_TRAIN_RENAME_BUTTON :{BLACK}Canvia el nom STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_BUTTON :{BLACK}Canvia el nom STR_BUY_VEHICLE_SHIP_RENAME_BUTTON :{BLACK}Canvia el nom STR_BUY_VEHICLE_AIRCRAFT_RENAME_BUTTON :{BLACK}Canvia el nom -STR_BUY_VEHICLE_TRAIN_RENAME_TOOLTIP :{BLACK}Canvia el nom del model de vehicle ferroviari -STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Canvia el nom del model d'automòbil -STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Canvia el nom del model de vaixell -STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Canvia el nom del model d'avió +STR_BUY_VEHICLE_TRAIN_RENAME_TOOLTIP :{BLACK}Canvia el nom del model de vehicle. +STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Canvia el nom del model de vehicle de carretera. +STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Canvia el nom del model de vaixell. +STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Canvia el nom del model d'avió. STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Oculta STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Oculta @@ -3431,10 +3431,10 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Mostra STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Mostra STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Mostra -STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Alterna mostrar/ocultar el vehicle ferroviari -STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Alterna mostrar/ocultar l'automòbil -STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Alterna mostrar/ocultar el vaixell -STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Alterna mostrar/ocultar l'aeronau +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Commuta entre mostrar o ocultar aquest model de vehicle. +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Commuta entre mostrar o ocultar aquest model de vehicle de carretera. +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Commuta entre mostrar o ocultar aquest model de vaixell. +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Commuta entre mostrar o amagar l'aeronau. STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Canvia el nom del model de vehicle ferroviari STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Canvia el nom del model d'automòbil @@ -3956,76 +3956,76 @@ STR_DATE_YEAR_TOOLTIP :{BLACK}Seleccio # AI debug window -STR_AI_DEBUG :{WHITE}Depuració de les IA/Script de la Partida +STR_AI_DEBUG :{WHITE}Depuració de les IA/script de partida STR_AI_DEBUG_NAME_AND_VERSION :{BLACK}{STRING} (v{NUM}) STR_AI_DEBUG_NAME_TOOLTIP :{BLACK}Nom de l'script STR_AI_DEBUG_SETTINGS :{BLACK}Paràmetres -STR_AI_DEBUG_SETTINGS_TOOLTIP :{BLACK}Canvia els paràmetres de l'script -STR_AI_DEBUG_RELOAD :{BLACK}Recarrega IA -STR_AI_DEBUG_RELOAD_TOOLTIP :{BLACK}Mata la IA, recarrega l'script, i reinicia la IA -STR_AI_DEBUG_BREAK_STR_ON_OFF_TOOLTIP :{BLACK}Activa/Desactiva la pausa automàtica quan un missatge del registre de l'IA coincideixi amb la cadena de parada +STR_AI_DEBUG_SETTINGS_TOOLTIP :{BLACK}Canvia els paràmetres de l'script de la IA. +STR_AI_DEBUG_RELOAD :{BLACK}Recarrega la IA +STR_AI_DEBUG_RELOAD_TOOLTIP :{BLACK}Para, recarrega i reinicia la IA. +STR_AI_DEBUG_BREAK_STR_ON_OFF_TOOLTIP :{BLACK}Commuta la pausa automàtica quan un missatge del registre de la IA coincideixi amb la cadena de parada. STR_AI_DEBUG_BREAK_ON_LABEL :{BLACK}Posa en pausa amb: -STR_AI_DEBUG_BREAK_STR_OSKTITLE :{BLACK}Posa en pausa quan l'script registri aquesta cadena -STR_AI_DEBUG_BREAK_STR_TOOLTIP :{BLACK}Quan un missatge del registre d'IA coincideixi amb aquesta cadena, la partida es posarà en pausa +STR_AI_DEBUG_BREAK_STR_OSKTITLE :{BLACK}Posa en pausa quan es registri aquesta cadena +STR_AI_DEBUG_BREAK_STR_TOOLTIP :{BLACK}Quan un missatge del registre d'IA coincideixi amb aquesta cadena, la partida es posarà en pausa. STR_AI_DEBUG_MATCH_CASE :{BLACK}Distingeix entre majúscules i minúscules -STR_AI_DEBUG_MATCH_CASE_TOOLTIP :{BLACK}Commuta la distinció entre majúscules i minúscules quan es comparin els missatges de registre d'IA amb la cadena de parada +STR_AI_DEBUG_MATCH_CASE_TOOLTIP :{BLACK}Commuta la distinció entre majúscules i minúscules quan es comparin els missatges de registre d'IA amb la cadena de parada. STR_AI_DEBUG_CONTINUE :{BLACK}Continua -STR_AI_DEBUG_CONTINUE_TOOLTIP :{BLACK}Reprèn i continua la IA -STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Veure la sortida de depuració per aquesta IA -STR_AI_GAME_SCRIPT :{BLACK}Script de la partida -STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Comprova el registre de l'script de la partida +STR_AI_DEBUG_CONTINUE_TOOLTIP :{BLACK}Reprèn i continua l'execució de la IA. +STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Mostra la sortida de depuració d'aquesta IA. +STR_AI_GAME_SCRIPT :{BLACK}Script de partida +STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Mostra el registre de l'script de partida. STR_ERROR_AI_NO_AI_FOUND :No s'ha trobat una IA adequada per carregar.{}Aquesta IA és una IA falsa i no farà res.{}Pots descarregar diverses IA via el sistema de "Contingut en línia" STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Un dels scripts executant-se s'ha penjat. Si us plau, reporta això a l'autor de l'script amb una captura de pantalla de la finestra de depuració IA/Script de la Partida STR_ERROR_AI_DEBUG_SERVER_ONLY :{WHITE}Configuració de les IA/Script de la Partida # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Configuració de la IA/Script de Joc -STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}L'Script de la Partida que serà carregat a la propera partida -STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Les IA que seran carregades a la propera partida +STR_AI_CONFIG_CAPTION :{WHITE}Configuració de la IA/script de partida +STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Aquest és l'script que s'usarà a la propera partida. +STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Aquesta llista conté les IA que es carregaran a la propera partida. STR_AI_CONFIG_HUMAN_PLAYER :Jugador humà STR_AI_CONFIG_RANDOM_AI :IA aleatòria STR_AI_CONFIG_NONE :(cap) STR_AI_CONFIG_MOVE_UP :{BLACK}Mou amunt -STR_AI_CONFIG_MOVE_UP_TOOLTIP :{BLACK}Mou la IA selecionada amunt a la llista +STR_AI_CONFIG_MOVE_UP_TOOLTIP :{BLACK}Desplaça la IA seleccionada una posició cap amunt STR_AI_CONFIG_MOVE_DOWN :{BLACK}Mou avall -STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Mou la IA selecionada avall a la llista +STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Desplaça la IA seleccionada una posició cap avall. -STR_AI_CONFIG_GAMESCRIPT :{SILVER}Script de la Partida +STR_AI_CONFIG_GAMESCRIPT :{SILVER}Script de partida STR_AI_CONFIG_AI :{SILVER}IA STR_AI_CONFIG_CHANGE :{BLACK}Selecciona {STRING} STR_AI_CONFIG_CHANGE_NONE : -STR_AI_CONFIG_CHANGE_AI :IA -STR_AI_CONFIG_CHANGE_GAMESCRIPT :Script de la Partida +STR_AI_CONFIG_CHANGE_AI :una IA +STR_AI_CONFIG_CHANGE_GAMESCRIPT :un script de partida STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Carrega un altre script STR_AI_CONFIG_CONFIGURE :{BLACK}Configura STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}Configura els paràmetres de l'script # Available AIs window -STR_AI_LIST_CAPTION :{WHITE}{STRING} Disponibles +STR_AI_LIST_CAPTION :{WHITE}{STRING} disponibles STR_AI_LIST_CAPTION_AI :IA -STR_AI_LIST_CAPTION_GAMESCRIPT :Scripts de la Partida -STR_AI_LIST_TOOLTIP :{BLACK}Clica per a seleccionar un script +STR_AI_LIST_CAPTION_GAMESCRIPT :Scripts de partida +STR_AI_LIST_TOOLTIP :{BLACK}Cliqueu un element per seleccionar un script. -STR_AI_LIST_AUTHOR :{LTBLUE}Autor: {ORANGE}{STRING} +STR_AI_LIST_AUTHOR :{LTBLUE}Obra de: {ORANGE}{STRING} STR_AI_LIST_VERSION :{LTBLUE}Versió: {ORANGE}{NUM} STR_AI_LIST_URL :{LTBLUE}URL: {ORANGE}{STRING} -STR_AI_LIST_ACCEPT :{BLACK}Accepta -STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Selecciona l'script realçat +STR_AI_LIST_ACCEPT :{BLACK}D'acord +STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Selecciona l'script marcat. STR_AI_LIST_CANCEL :{BLACK}Cancel·la -STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}No canvïis l'script +STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}No canviïs l'script. # AI Parameters STR_AI_SETTINGS_CAPTION :{WHITE}Paràmetres {STRING} STR_AI_SETTINGS_CAPTION_AI :de la IA -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :de l'Script de la Partida +STR_AI_SETTINGS_CAPTION_GAMESCRIPT :de l'script de partida STR_AI_SETTINGS_CLOSE :{BLACK}Tanca STR_AI_SETTINGS_RESET :{BLACK}Restableix STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} -STR_AI_SETTINGS_START_DELAY :Número de dies per començar aquesta IA després de l'anterior (aproximadament): {ORANGE}{STRING} +STR_AI_SETTINGS_START_DELAY :Dies des de l'inici de la IA prèvia fins que s'inicia aquesta: {ORANGE}{STRING} # Textfile window @@ -4465,14 +4465,14 @@ STR_ERROR_CAN_T_DELETE_SIGN :{WHITE}El senya STR_DESKTOP_SHORTCUT_COMMENT :Un joc de simulació basat en Transport Tycoon Deluxe # Translatable descriptions in media/baseset/*.ob* files -STR_BASEGRAPHICS_DOS_DESCRIPTION :Gràfics originals de Transport Tycoon Deluxe per a DOS. -STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Gràfics originals de Transport Tycoon Deluxe per a DOS (Alemany). -STR_BASEGRAPHICS_WIN_DESCRIPTION :Gràfics originals de Transport Tycoon Deluxe per a Windows. -STR_BASESOUNDS_DOS_DESCRIPTION :Sons originals de Transport Tycoon Deluxe per a DOS. -STR_BASESOUNDS_WIN_DESCRIPTION :Sons originals de Transport Tycoon Deluxe per a Windows. -STR_BASESOUNDS_NONE_DESCRIPTION :Un joc de sons sense cap so. -STR_BASEMUSIC_WIN_DESCRIPTION :Música Original de Transport Tycoon Deluxe per a Windows. -STR_BASEMUSIC_NONE_DESCRIPTION :Un joc de música sense cap música. +STR_BASEGRAPHICS_DOS_DESCRIPTION :Gràfics originals del Transport Tycoon Deluxe pel DOS. +STR_BASEGRAPHICS_DOS_DE_DESCRIPTION :Gràfics originals del Transport Tycoon Deluxe (alemany) pel DOS. +STR_BASEGRAPHICS_WIN_DESCRIPTION :Gràfics originals del Transport Tycoon Deluxe pel Windows. +STR_BASESOUNDS_DOS_DESCRIPTION :Sons originals del Transport Tycoon Deluxe pel DOS. +STR_BASESOUNDS_WIN_DESCRIPTION :Sons originals del Transport Tycoon Deluxe pel Windows. +STR_BASESOUNDS_NONE_DESCRIPTION :Una llista de sons buida. +STR_BASEMUSIC_WIN_DESCRIPTION :Música original del Transport Tycoon Deluxe pel Windows. +STR_BASEMUSIC_NONE_DESCRIPTION :Una llista de música sense cap peça. ##id 0x2000 # Town building names @@ -4874,7 +4874,7 @@ STR_FORMAT_DEPOT_NAME_AIRCRAFT :Hangar de {STAT STR_UNKNOWN_STATION :{G=Femenin}estació desconeguda STR_DEFAULT_SIGN_NAME :{G=Femenin}Senyal -STR_COMPANY_SOMEONE :algú +STR_COMPANY_SOMEONE :Desconegut STR_SAVEGAME_NAME_DEFAULT :{COMPANY}, {STRING} STR_SAVEGAME_NAME_SPECTATOR :{G=Masculin}Espectador, {1:STRING} diff --git a/src/lang/croatian.txt b/src/lang/croatian.txt index dbd1d8a136..736e3359ba 100644 --- a/src/lang/croatian.txt +++ b/src/lang/croatian.txt @@ -12,7 +12,7 @@ ##case nom gen dat aku vok lok ins -# $Id: croatian.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: croatian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -229,7 +229,7 @@ STR_ABBREV_PASSENGERS :{TINY_FONT}PU STR_ABBREV_COAL :{TINY_FONT}UG STR_ABBREV_MAIL :{TINY_FONT}PT STR_ABBREV_OIL :{TINY_FONT}NF -STR_ABBREV_LIVESTOCK :{TINY_FONT}DŽ +STR_ABBREV_LIVESTOCK :{TINY_FONT}ST STR_ABBREV_GOODS :{TINY_FONT}RB STR_ABBREV_GRAIN :{TINY_FONT}ŽT STR_ABBREV_WOOD :{TINY_FONT}DV @@ -325,8 +325,8 @@ STR_LIST_FILTER_OSKTITLE :{BLACK}Unesi zn STR_LIST_FILTER_TOOLTIP :{BLACK}Unesite ključnu riječ kako bi filtrirali popis STR_TOOLTIP_GROUP_ORDER :{BLACK}Odaberi naredbu za grupiranje -STR_TOOLTIP_SORT_ORDER :{BLACK}Izaberi način sortiranja (silazno/uzlazno) -STR_TOOLTIP_SORT_CRITERIA :{BLACK}Izaberi kriterij za sortiranje +STR_TOOLTIP_SORT_ORDER :{BLACK}Odaberi način sortiranja (silazno/uzlazno) +STR_TOOLTIP_SORT_CRITERIA :{BLACK}Odaberi kriterij za sortiranje STR_TOOLTIP_FILTER_CRITERIA :{BLACK}Odaberi kriterij filtriranja STR_BUTTON_SORT_BY :{BLACK}Sortiraj prema STR_BUTTON_LOCATION :{BLACK}Lokacija @@ -385,7 +385,7 @@ STR_SORT_BY_PROFIT_THIS_YEAR :Dobit ove godin STR_SORT_BY_AGE :Godine STR_SORT_BY_RELIABILITY :Pouzdanost STR_SORT_BY_TOTAL_CAPACITY_PER_CARGOTYPE :Ukupna nosivost prema vrsti tereta -STR_SORT_BY_MAX_SPEED :Maksimalna brzina +STR_SORT_BY_MAX_SPEED :Najveća brzina STR_SORT_BY_MODEL :Model STR_SORT_BY_VALUE :Vrijednost STR_SORT_BY_LENGTH :Dužina @@ -437,7 +437,7 @@ STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}Izgradi STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Otvori alatnu traku za krajolik kako bi spustio/izdignuo zemlju, posadio drveće, itd. STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK}Pokaži prozor za zvuk/glazbu STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Pokaži zadnju poruku/vijest, pokaži postavke poruka -STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Podaci o zemlji, konzola, debug skripte, snimke ekrana, o OpenTTD-u +STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Podaci o terenu, konzola, debugiranje skripte, snimke zaslona, o OpenTTD-u STR_TOOLBAR_TOOLTIP_SWITCH_TOOLBAR :{BLACK}Promijeni alatne trake # Extra tooltips for the scenario editor toolbar @@ -570,7 +570,7 @@ STR_ABOUT_MENU_AI_DEBUG :Debugiranje UI- STR_ABOUT_MENU_SCREENSHOT :Slika zaslona STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Zumirano do kraja na slici zaslona STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Standardno zumiranje slike zaslona -STR_ABOUT_MENU_GIANT_SCREENSHOT :Slika zaslona cijele mape +STR_ABOUT_MENU_GIANT_SCREENSHOT :Slika zaslona cijele karte STR_ABOUT_MENU_ABOUT_OPENTTD :O 'OpenTTD' STR_ABOUT_MENU_SPRITE_ALIGNER :Poravnjanje sprite-a STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :Odaberi granične okvire @@ -712,7 +712,7 @@ STR_PERFORMANCE_DETAIL_VEHICLES :{BLACK}Vozila: STR_PERFORMANCE_DETAIL_STATIONS :{BLACK}Postaje: STR_PERFORMANCE_DETAIL_MIN_PROFIT :{BLACK}Min. dobit: STR_PERFORMANCE_DETAIL_MIN_INCOME :{BLACK}Min. prihod: -STR_PERFORMANCE_DETAIL_MAX_INCOME :{BLACK}Maks. prihod: +STR_PERFORMANCE_DETAIL_MAX_INCOME :{BLACK}Najveći prihod: STR_PERFORMANCE_DETAIL_DELIVERED :{BLACK}Dostavljeno: STR_PERFORMANCE_DETAIL_CARGO :{BLACK}Teret: STR_PERFORMANCE_DETAIL_MONEY :{BLACK}Novac: @@ -857,8 +857,8 @@ STR_SMALLMAP_TOOLTIP_ENABLE_ALL_INDUSTRIES :{BLACK}Prikaži STR_SMALLMAP_TOOLTIP_SHOW_HEIGHT :{BLACK}Aktiviraj prikaz visinske karte STR_SMALLMAP_TOOLTIP_DISABLE_ALL_COMPANIES :{BLACK}Prikaži sve što nije vlasništvo tvrtke na karti STR_SMALLMAP_TOOLTIP_ENABLE_ALL_COMPANIES :{BLACK}Prikaži sve vlasništvo tvrtke na karti -STR_SMALLMAP_TOOLTIP_DISABLE_ALL_CARGOS :{BLACK}Prikaži bez tereta na mapi -STR_SMALLMAP_TOOLTIP_ENABLE_ALL_CARGOS :{BLACK}Prikaži sve terete na mapi +STR_SMALLMAP_TOOLTIP_DISABLE_ALL_CARGOS :{BLACK}Nemoj pokazivati terete na karti +STR_SMALLMAP_TOOLTIP_ENABLE_ALL_CARGOS :{BLACK}Prikaži sve terete na karti # Status bar messages STR_STATUSBAR_TOOLTIP_SHOW_LAST_NEWS :{BLACK}Pokaži zadnju poruku ili vijest @@ -1014,7 +1014,7 @@ STR_GAME_OPTIONS_CURRENCY_SEK :Švedska kruna STR_GAME_OPTIONS_CURRENCY_TRY :Turska lira (TRY) STR_GAME_OPTIONS_CURRENCY_SKK :Slovačka kruna (SKK) STR_GAME_OPTIONS_CURRENCY_BRL :Brazilski real (BRL) -STR_GAME_OPTIONS_CURRENCY_EEK :estonska kruna (EEK) +STR_GAME_OPTIONS_CURRENCY_EEK :Estonska kruna (EEK) STR_GAME_OPTIONS_CURRENCY_LTL :Litvanski Litas (LTL) STR_GAME_OPTIONS_CURRENCY_KRW :Južnokorejski Won (KRW) STR_GAME_OPTIONS_CURRENCY_ZAR :Južnoafrički Rand (ZAR) @@ -1067,13 +1067,13 @@ STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_12_MONTHS :Svakih 12 mjese ############ end of autosave dropdown STR_GAME_OPTIONS_LANGUAGE :{BLACK}Jezik -STR_GAME_OPTIONS_LANGUAGE_TOOLTIP :{BLACK}Izaberi jezično sučelje +STR_GAME_OPTIONS_LANGUAGE_TOOLTIP :{BLACK}Odaberi jezik sučelja -STR_GAME_OPTIONS_FULLSCREEN :{BLACK}Cijeli ekran -STR_GAME_OPTIONS_FULLSCREEN_TOOLTIP :{BLACK}Označi ovu kućicu kako bi igrao OpenTTD preko cijelog ekrana +STR_GAME_OPTIONS_FULLSCREEN :{BLACK}Cijeli zaslon +STR_GAME_OPTIONS_FULLSCREEN_TOOLTIP :{BLACK}Označi ovu kućicu kako bi igrao OpenTTD preko cijelog zaslona -STR_GAME_OPTIONS_RESOLUTION :{BLACK}Razlučivost ekrana -STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Izaberi razlučivost ekrana +STR_GAME_OPTIONS_RESOLUTION :{BLACK}Razlučivost zaslona +STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Odaberi razlučivost zaslona STR_GAME_OPTIONS_RESOLUTION_OTHER :ostalo STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Veličina sučelja @@ -1098,7 +1098,7 @@ STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} neis STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Dodatne informacije o setu osnovne glazbe STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Povlačenje liste podržanih rezolucija nije uspjelo -STR_ERROR_FULLSCREEN_FAILED :{WHITE}Neuspješan prelazak na prikaz na cijelom ekranu +STR_ERROR_FULLSCREEN_FAILED :{WHITE}Prikaz na cijelom zaslonu nije uspio # Custom currency window @@ -1126,11 +1126,11 @@ STR_CURRENCY_PREVIEW :{LTBLUE}Prikaz: STR_CURRENCY_CUSTOM_CURRENCY_PREVIEW_TOOLTIP :{BLACK}10000 funti (£) u vašoj valuti STR_CURRENCY_CHANGE_PARAMETER :{BLACK}Promijeni parametre proizvoljne valute -STR_DIFFICULTY_LEVEL_SETTING_MAXIMUM_NO_COMPETITORS :{LTBLUE}Maksimalan broj natjecatelja: {ORANGE}{COMMA} +STR_DIFFICULTY_LEVEL_SETTING_MAXIMUM_NO_COMPETITORS :{LTBLUE}Najveći broj natjecatelja: {ORANGE}{COMMA} STR_NONE :Ništa STR_FUNDING_ONLY :Samo financiranje -STR_MINIMAL :Minimalno +STR_MINIMAL :Najmanje STR_NUM_VERY_LOW :Vrlo nisko STR_NUM_LOW :Nisko STR_NUM_NORMAL :Normalno @@ -1258,11 +1258,11 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Uključivanje n STR_CONFIG_SETTING_CITY_APPROVAL :Stav gradske uprave prema restrukturiranju područja: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Odaberi koliko buka i ekološka šteta utječu na gradsku ocjenu pojedine tvrtke i na daljnja građevinska djelovanja u njihovim područjima -STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maksimalna visina mape: {STRING} -STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Postavi maksimalnu dozvoljenu visinu planina na mapi -STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Ne možete postavini maksimalnu visinu mape na ovu vijednost. Barem jedna planina na mapi je viša. -STR_CONFIG_SETTING_AUTOSLOPE :Dopusti modeliranje zemlje ispod građevina, tračnica, itd.: {STRING} -STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Dopusti uređivanje terena ispod građevina i pruga bez njihovog uklanjanja +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Najveća visina karte: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Postavi najveću dopuštenu visinu planina na karti +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Nije moguće postaviti najveću visinu karte na ovu vrijednost. Barem jedna planina na karti je viša. +STR_CONFIG_SETTING_AUTOSLOPE :Dopusti uređivanje krajolika ispod građevina, tračnica, itd.: {STRING} +STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Dopusti uređivanje krajolika ispod građevina i pruga bez njihovog uklanjanja STR_CONFIG_SETTING_CATCHMENT :Dopusti realističnije veličine područja zahvaćanja: {STRING} STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Različiti dohvati za različite vrste stanica i zračnih luka STR_CONFIG_SETTING_EXTRADYNAMITE :Dopusti rušenje više cesta, mostova i tunela u vlasništvu grada: {STRING} @@ -1284,17 +1284,17 @@ STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Kosina nagiba p STR_CONFIG_SETTING_FORBID_90_DEG :Zabrani vlakovima i brodovima skretanja pod 90 stupnjeva: {STRING} STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Okreti za 90 stupnjeva se događaju kada vodoravni dio pruge odmah nastavlja okomiti dio pruge na sljedećem polju, dakle čineći zaokret vlaka od 90 stupnjeva prelaskom ruba polja umjesto uobičajenih 45 stupnjeva kod drugih kombinacija pruge. Ovo se primjenjuje i na radijus okretanja brodova STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Dopusti spajanje postaja koje nisu izravno jedna do druge {STRING} -STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Dozvoli dodavanje dijelova stanice bez direktog dodira s postojećim dijelovima. Potrebno pritisnuti Ctrl+Klik dok se dodaju novi dijelovi +STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Dopusti dodavanje dijelova stanice bez izravnog dodira s postojećim dijelovima. Potrebno pritisnuti Ctrl+klik dok se dodaju novi dijelovi STR_CONFIG_SETTING_INFLATION :Inflacija: {STRING} STR_CONFIG_SETTING_INFLATION_HELPTEXT :Uključi inflaciju u ekonomiji, gdje troškovi rastu malo brže od plaćanja STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Najveća dužina mostova: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Najveća dužina za izgradnju mostova -STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Maksimalna visina mostova: {STRING} -STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Maksimalna visina za gradnju mostova +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Najveća visina mostova: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Najveća visina za gradnju mostova STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Najveća dužina tunela: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Najveća dužina za izgradnju tunela STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Ručna metoda izgradnje primarne industrije: {STRING} -STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_HELPTEXT :Metoda financiranja primarnih industrija. "Ništa" znači da nije moguće financirati nijednu, "istraživanje" znači da je financiranje moguće ali da će se izgraditi na slučajno odabranom mjestu na mapi i da ne mora i uspjeti, "kao i druge industrije" znači da se primarne industrije mogu graditi kao i procesne industrije na bilo kojem mjestu +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_HELPTEXT :Metoda financiranja primarnih industrija. "Ništa" znači da nije moguće financirati nijednu, "istraživanje" znači da je financiranje moguće ali da će se izgraditi na slučajno odabranom mjestu na karti i da ne mora i uspjeti, "kao i druge industrije" znači da se primarne industrije mogu graditi kao i procesne industrije na bilo kojem mjestu STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NONE :Nijedna STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NORMAL :Kao i druge industrije STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_PROSPECTING :Istraživanje @@ -1319,7 +1319,7 @@ STR_CONFIG_SETTING_STOP_LOCATION_FAR_END :kraja STR_CONFIG_SETTING_AUTOSCROLL :Pomakni prozor kada je miš na rubu: {STRING} STR_CONFIG_SETTING_AUTOSCROLL_HELPTEXT :Kada je uključeno, prikazna polja će se početi pomicati kada se miš nalazi blizu ruba prozora STR_CONFIG_SETTING_AUTOSCROLL_DISABLED :Isključeno -STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT_FULLSCREEN :Glavno prikazno polje, samo prikaz na punom ekranu +STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT_FULLSCREEN :Glavno prikazno polje, samo prikaz na cijelom zaslonu STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT :Glavno prikazno polje STR_CONFIG_SETTING_AUTOSCROLL_EVERY_VIEWPORT :Svako prikazno polje STR_CONFIG_SETTING_BRIBE :Dopusti potkupljivanje lokalne samouprave: {STRING} @@ -1371,7 +1371,7 @@ STR_CONFIG_SETTING_AUTORENEW_MONTHS_HELPTEXT :Relativna staro STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_BEFORE :{COMMA} mjeseci prije STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_AFTER :{COMMA} mjeseci nakon STR_CONFIG_SETTING_AUTORENEW_MONEY :Minimum novca potrebnih za automatsko obnavljanje: {STRING} -STR_CONFIG_SETTING_AUTORENEW_MONEY_HELPTEXT :Minimalni iznos novca koji mora ostati u banci prije razmatranja automatske obnove vozila +STR_CONFIG_SETTING_AUTORENEW_MONEY_HELPTEXT :Najmanji iznos novca koji mora ostati u banci prije razmatranja automatske obnove vozila STR_CONFIG_SETTING_ERRMSG_DURATION :Trajanje poruke s greškom: {STRING} STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Trajanje prikaza poruke s greškom u crvenom prozoru. Uzmite u obzir da se neke (kritične) poruke s greškom ne zatvaraju automatski nakon isteka ovog vremena, nego ih je potrebno zatvoriti ručno STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} sekundi @@ -1379,12 +1379,12 @@ STR_CONFIG_SETTING_HOVER_DELAY :Prikaži pojaš STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Odgoda prije prikaza objašnjenja alata kada se miš postavi iznad nekog elementa sučelja. Alternativno, objašnjena alata se mogu vezati uz desnu tipku na mišu kada je ova vrijednost postavljena na 0. STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Lebdi na {COMMA} milisekund{P 0 u i i} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Desni klik -STR_CONFIG_SETTING_POPULATION_IN_LABEL :Pokaži broj stanovnika u oznaci imena grada: {STRING} -STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Prikaži populaciju gradova u njihovim oznakama na mapi +STR_CONFIG_SETTING_POPULATION_IN_LABEL :Prikaži broj stanovnika uz naziv grada: {STRING} +STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Prikaži broj stanovnika uz nazive gradova na karti STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Debljina linija u grafikonima: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Debljina linije u grafikonima. Tanja linija je preciznija za čitanje, deblja linija je lakša za vidjeti i boje su lakše za razabrati -STR_CONFIG_SETTING_LANDSCAPE :Teren: {STRING} +STR_CONFIG_SETTING_LANDSCAPE :Krajolik: {STRING} STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Tereni definiraju osnovne scenarije za igru sa različitim teretima i preduvjetima za rast gradova. NewGRF-ovi i Skripte Igre dozvoljavaju detaljnije kontrole i postavke. STR_CONFIG_SETTING_LAND_GENERATOR :Generator zemlje: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :Originalni generator ovisi o baznom grafičkom setu i stvara fiksne oblike u terenu. TerraGenesis je generator baziran na Perlinu sa detaljnijim kontrolama i postavkama. @@ -1394,10 +1394,10 @@ STR_CONFIG_SETTING_TERRAIN_TYPE :Vrsta terena: { STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(Samo TerraGenesis) Brdovitost terena STR_CONFIG_SETTING_INDUSTRY_DENSITY :Gustoća industrija: {STRING} STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Odredite koliko će industrija biti stvoreno i kolika će količina biti održavana tijekom igre. -STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Najveća udaljenost rafinerija nafte od rubova mape: {STRING} -STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Rafinerije nafte se grade samo uz rubove mape odnosno na obali za otočne mape +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Najveća udaljenost rafinerija nafte od rubova karte: {STRING} +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Rafinerije nafte grade se samo uz rubove karte odnosno na obali za otočne karte STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Visina linije snijega: {STRING} -STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Upravljajte na kojoj visini počinje snijeg u subarktičkoj klimi. Snijeg također utječe na stvaranje industrija i preduvjeta za rast gradova. +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Odredi na kojoj visini počinje snijeg u subarktičkoj klimi. Snijeg također utječe na stvaranje industrija i preduvjeta za rast gradova. STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Grubost terena: {STRING} STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Samo TerraGenesis) Odaberite učestalost brda: Blaži tereni imaju rjeđa ali raširenija brda. Teži tereni imaju više brda koja bi mogla izgledati kao da se ponavljaju. STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Vrlo glatko @@ -1405,11 +1405,11 @@ STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Glatko STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Grubo STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Vrlo grubo STR_CONFIG_SETTING_VARIETY :Raspodjela raznolikosti: {STRING} -STR_CONFIG_SETTING_VARIETY_HELPTEXT :(Samo TerraGenesis) Upravljajte da li će mapa sadržati i planinska i ravna područja. Pošto ovo samo radi mapu ravnijom, druge postavke bi trebali biti podešene na planinske. +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(Samo TerraGenesis) Odredite hoće li karta sadržavati i planinska i ravna područja. Kako ovo čini kartu još ravnijom, ostale bi postavke trebale biti postavljene na planinske. STR_CONFIG_SETTING_RIVER_AMOUNT :Količina rijeka: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Odaberite koliko rijeka želite stvoriti STR_CONFIG_SETTING_TREE_PLACER :Algoritam za sađenje drveća: {STRING} -STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Odaberite raspored drveća na mapi: 'Original' sadi drveće ravnomjerno raspoređeno, 'Napredno' ih sadi u skupinama. +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Odaberite raspored drveća na karti: 'Original' sadi drveće ravnomjerno raspoređeno, 'Napredno' ih sadi u skupinama. STR_CONFIG_SETTING_TREE_PLACER_NONE :Nijedan STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Izvorni STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Unaprijeđen @@ -1418,7 +1418,7 @@ STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Odaberite stran STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Rotacija visinske karte: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Obrnuto od smjera kazaljke na satu STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :U smjeru kazaljke na satu -STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Visinski nivo koji ravna mapa u scenariju dobiva: {STRING} +STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Razina visine za scenarije s ravnim terenom: {STRING} STR_CONFIG_SETTING_EDGES_NOT_EMPTY :{WHITE}Jedno ili više polja na sjevernom rubu nisu prazne STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Jedno ili više polja na jednom od rubova nije voda @@ -1429,14 +1429,14 @@ STR_CONFIG_SETTING_SERVICEATHELIPAD_HELPTEXT :Servisiraj heli STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR :Poveži alatnu traku za krajolik s alatnim trakama za željeznicu/ceste/vodu/zračne luke: {STRING} STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR_HELPTEXT :Kada se otvara alatna traka za građenje neke vrste transporta, istodobno se otvara i alatna traka za uređivanje terena STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR :Boja polja korištena na maloj karti: {STRING} -STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_HELPTEXT :Boja terena na maloj mapi +STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_HELPTEXT :Boja terena na maloj karti STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_GREEN :{G=female}Zelena STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_DARK_GREEN :{G=female}Tamno zelena STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :{G=female}Ljubičasta STR_CONFIG_SETTING_REVERSE_SCROLLING :Promijeni smjer klizanja: {STRING} -STR_CONFIG_SETTING_REVERSE_SCROLLING_HELPTEXT :Ponašanje kod pomicanja mape sa desnom tipkom na mišu. Kada je isključeno, miš pomiče kameru. Kada je uključeno, miš pomiče mapu +STR_CONFIG_SETTING_REVERSE_SCROLLING_HELPTEXT :Ponašanje kod pomicanja karte desnim gumbom miša. Kada je isključeno, miš pomiče kameru. Kada je uključeno, miš pomiče kartu STR_CONFIG_SETTING_SMOOTH_SCROLLING :Glatko klizanje kroz mini pogled: {STRING} -STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Kontroliraj kako se glavni prikaz pomiče na neku lokaciju kada se klikne na malu mapu ili kada se izda naredba za pomicanje na određeni objekt na mapi. Ako je uključeno, prikaz se pomiče glatko, ako je isključeno, prikaz odmah preskoči na ciljnu lokaciju +STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Odredi kako se glavni prikaz pomiče na određeno mjesto kada se klikne na malu kartu ili kada se izda naredba za pomicanje na određeni objekt na karti. Ako je uključeno, prikaz se pomiče glatko, ako je isključeno, prikaz izravno skače na ciljnu lokaciju STR_CONFIG_SETTING_MEASURE_TOOLTIP :Pokaži mjerni naputak prilikom korištenja raznih alata za izgradnju: {STRING} STR_CONFIG_SETTING_MEASURE_TOOLTIP_HELPTEXT :Prikaži udaljenost u poljima i visinsku razliku kod povlačenja prilikom gradnje STR_CONFIG_SETTING_LIVERIES :Pokaži specifične livreje prema tipu vozila: {STRING} @@ -1453,8 +1453,8 @@ STR_CONFIG_SETTING_SCROLLWHEEL_SCROLL :Kliži kartom STR_CONFIG_SETTING_SCROLLWHEEL_OFF :Isključeno STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER :Brzina kotačića za klizanje: {STRING} STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER_HELPTEXT :Kontroliraj osjetljivost pomicanja kotačićima miša -STR_CONFIG_SETTING_OSK_ACTIVATION :Tipkovnica na ekranu: {STRING} -STR_CONFIG_SETTING_OSK_ACTIVATION_HELPTEXT :Odaberi metodu otvaranja tipkovnice na ekranu za unošenje teksta u polja korištenjem samo pokazujući uređaj. Ovo je namijenjeno malim uređajima bez prave tipkovnice +STR_CONFIG_SETTING_OSK_ACTIVATION :Tipkovnica na zaslonu: {STRING} +STR_CONFIG_SETTING_OSK_ACTIVATION_HELPTEXT :Odaberi način uporabe tipkovnice na zaslonu za unos teksta u polja korištenjem samo pokazivača. Ovo je namijenjeno malim uređajima bez fizičke tipkovnice. STR_CONFIG_SETTING_OSK_ACTIVATION_DISABLED :Isključeno STR_CONFIG_SETTING_OSK_ACTIVATION_DOUBLE_CLICK :Dvostruki klik STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK_FOCUS :Jedan klik (kada je usredotočen) @@ -1467,7 +1467,7 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_CONTROL :Control+klik STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :Isključeno STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Skrolanje lijevim klikom: {STRING} -STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING_HELPTEXT :Uključi pomicanje mape povlačenjem sa lijevom tipkom miša. Ovo je posebno korisno kada se koristi ekran na dodir za pomicanje +STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING_HELPTEXT :Uključi pomicanje karte povlačenjem pomoću lijevog gumba miša. Ovo je posebno korisno kada se koristi zaslon osjetljiv na dodir STR_CONFIG_SETTING_AUTOSAVE :Automatsko snimanje: {STRING} STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Odaberite interval između automatskog snimanja igre @@ -1488,8 +1488,8 @@ STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_LANDSCAPING :Sve osim akcija STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_ACTIONS :Sve akcije STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Koristi grupe u listi vozila: {STRING} STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_HELPTEXT :Uključi korištenje naprednih lista vozila za grupiranje vozila -STR_CONFIG_SETTING_LOADING_INDICATORS :Koristi pokazatelje utovara: {STRING} -STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT :Odaberi da li će prikazivači utovara biti prikazani iznad vozila koja se utovaruju ili iznad vozila koja se istovaruju +STR_CONFIG_SETTING_LOADING_INDICATORS :Koristi pokazatelje ukrcaja: {STRING} +STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT :Odaberi hoće li oznake za ukrcaj biti prikazane iznad vozila koja se ukrcavaju ili iskrcavaju STR_CONFIG_SETTING_TIMETABLE_IN_TICKS :Pokaži vozni red u otkucajima rađe nego u danima: {STRING} STR_CONFIG_SETTING_TIMETABLE_IN_TICKS_HELPTEXT :Prikaži trajanje putovanja u voznim redovima u otkucajima igre umjesto u danima STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE :Pokaži dolaske i odlaske u voznim redovima: {STRING} @@ -1527,13 +1527,13 @@ STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Sviraj zvučne STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Isključi gradnju infrastrukture kada odgovarajuća vozila nisu dostupna: {STRING} STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Kada je uključeno, infrastruktura je dostupna samo ako su dostupna i vozila za nju, sprečavajući trošenje vremena i novca na neupotrebljivu infrastrukturu -STR_CONFIG_SETTING_MAX_TRAINS :Maksimalni broj vlakova po tvrtki: {STRING} +STR_CONFIG_SETTING_MAX_TRAINS :Najveći broj vlakova po tvrtki: {STRING} STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT :Najveći broj vlakova koje tvrtka može imati -STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Maksimalni broj cestovnih vozila po tvrtki: {STRING} +STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Najveći broj cestovnih vozila po tvrtki: {STRING} STR_CONFIG_SETTING_MAX_ROAD_VEHICLES_HELPTEXT :Najveći broj cestovnih vozila koje tvrtka može imati -STR_CONFIG_SETTING_MAX_AIRCRAFT :Maksimalni broj zrakoplova po tvrtki: {STRING} +STR_CONFIG_SETTING_MAX_AIRCRAFT :Najveći broj zrakoplova po tvrtki: {STRING} STR_CONFIG_SETTING_MAX_AIRCRAFT_HELPTEXT :Najveći broj zrakoplova koje tvrtka može imati -STR_CONFIG_SETTING_MAX_SHIPS :Maksimalni broj brodova po tvrtki: {STRING} +STR_CONFIG_SETTING_MAX_SHIPS :Najveći broj brodova po tvrtki: {STRING} STR_CONFIG_SETTING_MAX_SHIPS_HELPTEXT :Najveći broj brodova koje tvrtka može imati STR_CONFIG_SETTING_AI_BUILDS_TRAINS :Isključi vlakove za računalo: {STRING} @@ -1553,11 +1553,11 @@ STR_CONFIG_SETTING_AI_PROFILE_HARD :Teško STR_CONFIG_SETTING_AI_IN_MULTIPLAYER :Dopusti UI u mrežnoj igri: {STRING} STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Dopusti UI računalnim-igračima da sudjeluju u igrama za više igrača -STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#op-kodova prije suspendiranja skripti: {STRING} +STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#op-kodova prije prekida skripte: {STRING} STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Najveći broj računalnih koraka koje skripta može poduzeti u jednom krugu STR_CONFIG_SETTING_SERVINT_ISPERCENT :Servisni su intervali u postotcima: {STRING} -STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Odaberi da li će se servisiranje vozila pokrenuti nakon isteka vremena od zadnjeg servisa ili padom pouzdanosti za određenu vrijednost od najveće pouzdanosti +STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Odaberi hoće li servis vozila potaknuti količina vremana koja je prošla od zadnjeg servisa ili postotni pad u odnosu na najveću pouzdanost STR_CONFIG_SETTING_SERVINT_TRAINS :Zadani interval servisiranja za vlakove: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Postavi osnovni interval servisa za nova pružna vozila, ako nije postavljen drugi specifični interval za određeno vozilo STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}dan{P 0 "" a a}/% @@ -1617,7 +1617,7 @@ STR_CONFIG_SETTING_SMOOTH_ECONOMY :Uključi tečnu STR_CONFIG_SETTING_SMOOTH_ECONOMY_HELPTEXT :Kada je uključeno, promjene u industrijskoj proizvodnji su češće ali u manjim rasponima. Ova postavka obično nema efekta ukoliko su industrije postavljene iz nekog NewGRF-a STR_CONFIG_SETTING_ALLOW_SHARES :Dopusti kupovanje udjela u drugim tvrtkama: {STRING} STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Kada je uključeno, dopušta se kupnja i prodaja dionica tvrtki. Dionice će postati dostupne samo za tvrtke određene starosti -STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :Postotak profita za dionicu koji se plaća kod sistema feeder-a: {STRING} +STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :Postotak dobiti za dionicu koji se plaća kod sustava feedera: {STRING} STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE_HELPTEXT :Postotak prihoda koji će biti predan srednjim dionicama prijevoza feeder sustavima, daje više kontrole nad prihodima STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :Kod povlačenja, postavi signale svakih: {STRING} STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Postavi razmak između signala koji će se graditi do sljedeće prepreke (signal, raskrižje), ukoliko se signali povlače @@ -1647,7 +1647,7 @@ STR_CONFIG_SETTING_TOWN_LAYOUT_2X2_GRID :2x2 mreža STR_CONFIG_SETTING_TOWN_LAYOUT_3X3_GRID :3x3 mreža STR_CONFIG_SETTING_TOWN_LAYOUT_RANDOM :Nasumično STR_CONFIG_SETTING_ALLOW_TOWN_ROADS :Gradovi mogu graditi ceste: {STRING} -STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Dozvoli gradovima građenje cesta za rast i širenje. Isključi za sprečavanje da gradske vlasti same grade ceste +STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Dopusti gradovima građenje cesta u svrhu rasta. Isključi za sprečavanje gradskih vlasti u samostalnoj gradnji cesta STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Gradovi smiju graditi pružne prijelaze: {STRING} STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Uključivanje ove postavke dozvoljava se gradovima da grade cestovno-pružne prijelaze STR_CONFIG_SETTING_NOISE_LEVEL :Omogući određivanje razine buke za zračne luke od strane gradova: {STRING} @@ -1665,9 +1665,9 @@ STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_RAINFOREST :Samo u kišnim STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_ALL :Posvuda STR_CONFIG_SETTING_TOOLBAR_POS :Položaj glavne alatne trake: {STRING} -STR_CONFIG_SETTING_TOOLBAR_POS_HELPTEXT :Vodoravna pozicija glavne alatne trake na vrhu ekrana +STR_CONFIG_SETTING_TOOLBAR_POS_HELPTEXT :Vodoravna pozicija glavne alatne trake na vrhu zaslona STR_CONFIG_SETTING_STATUSBAR_POS :Pozicija status trake: {STRING} -STR_CONFIG_SETTING_STATUSBAR_POS_HELPTEXT :Vodoravna pozicija statusne trake na dnu ekrana +STR_CONFIG_SETTING_STATUSBAR_POS_HELPTEXT :Vodoravna pozicija statusne trake na dnu zaslona STR_CONFIG_SETTING_SNAP_RADIUS :Radius zahvata prozora: {STRING} STR_CONFIG_SETTING_SNAP_RADIUS_HELPTEXT :Razmak između prozora prije nego se pomicani prozor automatski poravna sa drugima prozorima u blizini STR_CONFIG_SETTING_SNAP_RADIUS_VALUE :{COMMA} piksela @@ -1709,7 +1709,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asimetrično STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :simetrično STR_CONFIG_SETTING_DISTRIBUTION_PAX :Način distribucije za putnike: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"Simetrično" znači da će se otprilike isti broj putnika slati od stanice A prema stanici B ako od B prema A. "Asimetrično" znači da će se proizvoljni brojevi putnika slati u oba smjera. "Ručno" znači da se distribucija za putnike neće vršiti automatski. -STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Način distribucije poštu: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Način distribucije pošte: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"Simetrično" znači da će se otprilike ista količina pošte slati od stanice A prema stanici B ako od B prema A. "Asimetrično" znači da će se proizvoljne količine pošte slati u oba smjera. "Ručno" znači da se distribucija neće vršiti automatski. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Način distribucije za OKLOPLJENU klasu tereta: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :OKLOPLJENA klasa tereta sadrži vrijednosnice u umjerenoj klimi, dijamante u subtropskoj klimi ili zlato u subarktičkoj klimi. NewGFR-ovi bi mogli ovo izmijeniti. "Simetrično" znači da će se otprilike ista količina tereta slati od stanice A prema stanici B kao od B prema A. "Asimetrično" znači da će se proizvoljne količine tereta slati u oba smjera. "Ručno" znači da se distribucija tih tereta neće vršiti automatski. Preporučljivo je namjestiti ovu postavku na "asimetrično" ili "ručno" kod subarktičke klime jer banke neće slati zlato natrag prema rudnicima zlata. Za umjerenu i subtropsku klimu možete namjestiti i "simetrično" jer će banke slati neke vrijednosnice natrag prema izvorišnoj banci. @@ -1775,7 +1775,7 @@ STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE}Fizika STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Rutanje STR_CONFIG_SETTING_LIMITATIONS :{ORANGE}Ograničenja STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Katastrofe / nesreće -STR_CONFIG_SETTING_GENWORLD :{ORANGE}Generacija svijeta +STR_CONFIG_SETTING_GENWORLD :{ORANGE}Stvaranje svijeta STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Okoliš STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Vlasti STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Gradovi @@ -1809,13 +1809,13 @@ STR_CONFIG_ERROR_INVALID_GRF :{WHITE}... igno STR_CONFIG_ERROR_INVALID_GRF_NOT_FOUND :nije pronađeno STR_CONFIG_ERROR_INVALID_GRF_UNSAFE :nesigurno za statičku uporabu STR_CONFIG_ERROR_INVALID_GRF_SYSTEM :sistemski NewGRF -STR_CONFIG_ERROR_INVALID_GRF_INCOMPATIBLE :nekompatibilno sa ovom verzijom OpenTTD-a +STR_CONFIG_ERROR_INVALID_GRF_INCOMPATIBLE :neusklađeno s ovom verzijom OpenTTD-a STR_CONFIG_ERROR_INVALID_GRF_UNKNOWN :nepoznat STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_LEVEL :{WHITE}... nivo sažimanja '{STRING}' nije važeći STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... format snimljene igre '{STRING}' nije dostupan. Vraćam u '{STRING}' STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... zaobilazim Osnovni Grafički set '{STRING}': nije pronađen STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... zaobilazim Osnovni Zvukovni set '{STRING}': nije pronađen -STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... zaobilazim Osnovni Muzički set '{STRING}': nije pronađen +STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... zaobilazim Osnovni glazbeni set '{STRING}': nije pronađen STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Nedostaje memorije STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Dodjeljivanje {BYTES} predmemorije spriteova nije uspjelo. Predmemorija spriteova je smanjena na {BYTES}. Ovo će smanjiti performanse OpenTTD-a. Za smanjivanje potreba memorije you možete pokušati isključiti 32bpp grafiku i/ili razine zumiranja. @@ -1842,7 +1842,7 @@ STR_INTRO_TOOLTIP_LOAD_GAME :{BLACK}Učitaj STR_INTRO_TOOLTIP_PLAY_HEIGHTMAP :{BLACK}Pokreni novu igru, koristeći visinsku kartu kao krajolik STR_INTRO_TOOLTIP_PLAY_SCENARIO :{BLACK}Započni novu igru koristeći proizvoljni scenarij STR_INTRO_TOOLTIP_SCENARIO_EDITOR :{BLACK}Izradi proizvoljni igrački svijet/scenarij -STR_INTRO_TOOLTIP_MULTIPLAYER :{BLACK}Pokreni igru sa više igrača +STR_INTRO_TOOLTIP_MULTIPLAYER :{BLACK}Pokreni igru s više igrača STR_INTRO_TOOLTIP_TEMPERATE :{BLACK}Odaberi 'blagi' stil krajolika STR_INTRO_TOOLTIP_SUB_ARCTIC_LANDSCAPE :{BLACK}Odaberi 'subarktički' stil krajolika @@ -1891,8 +1891,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Igraj k STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Magični buldožer (uklanja industrije, nepokretne objekte): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tuneli se mogu ukrštavati međusobno: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Veliki avioni se ne će rušiti (često) na malim zračnim lukama: {ORANGE} {STRING} -STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Uredi maksimalnu visinu mape: {ORANGE}{NUM} -STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Uredi maksimalnu visinu planina na mapi +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Uredi najveću visinu karte: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Uredi najveću visinu planina na karti STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Blagi krajolik STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Subarktički krajolik STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Suptropski krajolik @@ -1909,9 +1909,9 @@ STR_LIVERY_TRAIN_TOOLTIP :{BLACK}Pokaži STR_LIVERY_ROAD_VEHICLE_TOOLTIP :{BLACK}Pokaži sheme boja za cestovno vozilo STR_LIVERY_SHIP_TOOLTIP :{BLACK}Pokaži sheme boja za brod STR_LIVERY_AIRCRAFT_TOOLTIP :{BLACK}Pokaži sheme boja za zrakoplov -STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Izaberi primarnu boju za odabranu shemu. Ctrl+Klik odabire tu boju za sve sheme. +STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Odaberi primarnu boju za odabranu shemu. Ctrl+klik odabire tu boju za sve sheme. STR_LIVERY_SECONDARY_TOOLTIP :{BLACK}Odaberi sekundardnu boju za odabranu shemu. Ctrl+Klik odabire tu boju za sve sheme. -STR_LIVERY_PANEL_TOOLTIP :{BLACK}Izaberi shemu boja za promjenu, ili višestruke sheme pomoću Ctrl+klik. Klikni na kućicu kako bi odredio uporabu sheme +STR_LIVERY_PANEL_TOOLTIP :{BLACK}Odaberi shemu boja za promjenu, ili višestruke sheme pomoću Ctrl+klik. Klikni na kućicu kako bi odredio uporabu sheme STR_LIVERY_DEFAULT :Standardna boja STR_LIVERY_STEAM :Parna lokomotiva @@ -1962,12 +1962,12 @@ STR_FACE_FACECODE_CAPTION :{WHITE}Pogledaj STR_FACE_FACECODE_SET :{WHITE}Novi kod za broj igračevog lica je postavljen STR_FACE_FACECODE_ERR :{WHITE}Nemoguće namjestiti broj predsjednikovog lica - mora biti broj između 0 and 4,294,967,295! STR_FACE_SAVE :{BLACK}Spremi -STR_FACE_SAVE_TOOLTIP :{BLACK}Izaberi omiljeno lice +STR_FACE_SAVE_TOOLTIP :{BLACK}Spremi omiljeno lice STR_FACE_SAVE_DONE :{WHITE}Ovo lice bit će spremljeno kao tvoje omiljeno u OpenTTD konfiguracijsku datoteku. STR_FACE_EUROPEAN :{BLACK}Europljanin -STR_FACE_SELECT_EUROPEAN :{BLACK}Izaberi europska lica +STR_FACE_SELECT_EUROPEAN :{BLACK}Odaberi europska lica STR_FACE_AFRICAN :{BLACK}Afrikanac -STR_FACE_SELECT_AFRICAN :{BLACK}Izaberi afrička lica +STR_FACE_SELECT_AFRICAN :{BLACK}Odaberi afrička lica STR_FACE_YES :Da STR_FACE_NO :Ne STR_FACE_MOUSTACHE_EARRING_TOOLTIP :{BLACK}Uključi brkove ili naušnicu @@ -2020,7 +2020,7 @@ STR_NETWORK_SERVER_LIST_INFO_ICONS_TOOLTIP :{BLACK}Jezik, v STR_NETWORK_SERVER_LIST_CLICK_GAME_TO_SELECT :{BLACK}Klikni na igru s popisa kako bi ju odabrao STR_NETWORK_SERVER_LIST_LAST_JOINED_SERVER :{BLACK}Poslužitelj kojemu si zadnji put pristupio: -STR_NETWORK_SERVER_LIST_CLICK_TO_SELECT_LAST :{BLACK}Klikni kako bi izabrao poslužitelj koji si igrao zadnji put +STR_NETWORK_SERVER_LIST_CLICK_TO_SELECT_LAST :{BLACK}Klikni kako bi odabrao poslužitelj koji si igrao zadnji put STR_NETWORK_SERVER_LIST_GAME_INFO :{SILVER}INFO O IGRI STR_NETWORK_SERVER_LIST_CLIENTS :{SILVER}Klijenti: {WHITE}{COMMA} / {COMMA} - {COMMA} / {COMMA} @@ -2062,13 +2062,13 @@ STR_NETWORK_START_SERVER_PASSWORD_TOOLTIP :{BLACK}Zaštiti STR_NETWORK_START_SERVER_UNADVERTISED :Ne STR_NETWORK_START_SERVER_ADVERTISED :Da STR_NETWORK_START_SERVER_CLIENTS_SELECT :{BLACK}{NUM} klijen{P t ta ata} -STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}Maksimalni broj klijenata: -STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS_TOOLTIP :{BLACK}Izaberi maksimalan broj klijenata. Ne moraju sva mjesta biti popunjena. +STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}Najveći broj klijenata: +STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS_TOOLTIP :{BLACK}Odaberi najveći broj klijenata. Ne moraju sva mjesta biti popunjena. STR_NETWORK_START_SERVER_COMPANIES_SELECT :{BLACK}{NUM} tvrtk{P a e i} -STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES :{BLACK}Maksimalni broj tvrtki: +STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES :{BLACK}Najveći broj tvrtki: STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES_TOOLTIP :{BLACK}Ograniči poslužitelj na određeni broj tvrtki STR_NETWORK_START_SERVER_SPECTATORS_SELECT :{BLACK}{NUM} gledatelj{P "" a a} -STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS :{BLACK}Maksimalni broj promatrača: +STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS :{BLACK}Najveći broj promatrača: STR_NETWORK_START_SERVER_NUMBER_OF_SPECTATORS_TOOLTIP :{BLACK}Ograniči poslužitelj na određeni broj gledatelja STR_NETWORK_START_SERVER_LANGUAGE_SPOKEN :{BLACK}Jezik kojim se govori: STR_NETWORK_START_SERVER_LANGUAGE_TOOLTIP :{BLACK}Drugi igrači znat će kojim se jezikom govori na poslužitelju @@ -2294,16 +2294,16 @@ STR_CONTENT_TYPE_CAPTION_TOOLTIP :{BLACK}Vrsta sa STR_CONTENT_NAME_CAPTION :{BLACK}Ime STR_CONTENT_NAME_CAPTION_TOOLTIP :{BLACK}Ime sadržaja STR_CONTENT_MATRIX_TOOLTIP :{BLACK}Kliknite na liniju kako bi vidjeli detalje{}Kliknite na kućicu kako bi ju označili za preuzimanje -STR_CONTENT_SELECT_ALL_CAPTION :{BLACK}Izaberi sve +STR_CONTENT_SELECT_ALL_CAPTION :{BLACK}Odaberi sve STR_CONTENT_SELECT_ALL_CAPTION_TOOLTIP :{BLACK}Označi sav sadržaj za preuzimanje -STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Izaberi nadogradnje +STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Odaberi nadogradnje STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Označi sav sadržaj koji je nadogradnja postojećem sadržaju kako bi ga preuzeo STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Odznači sve STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Označi sav sadržaj koji se ne preuzima STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Pretraži vanjske web stranice STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Traženje sadržaja nije dostupno u OpenTTD-ovom servisu za sadržaje za web stranice koje nisu pridružene OpenTTD-u STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Napuštate OpenTTD! -STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Pravila i uvjeti za preuzimanje sadržaja sa vanjskih web stranica variraju.{}Morate pogledati vanjske stranice za upute kako instalirati sadržaj u OpenTTD.{}Da li želite nastaviti? +STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Pravila i uvjeti preuzimanja sadržaja s vanjskih internetskih stranica variraju.{}Morate pogledati vanjske stranice za upute kako instalirati sadržaj u OpenTTD.{}Želite li nastaviti? STR_CONTENT_FILTER_TITLE :{BLACK}Ime/Tag filter: STR_CONTENT_OPEN_URL :{BLACK}Posjetite web-stranicu STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Posjetite web-stranicu za ovaj sadržaj @@ -2335,7 +2335,7 @@ STR_CONTENT_TYPE_NEWGRF :NewGRF STR_CONTENT_TYPE_AI :UI STR_CONTENT_TYPE_AI_LIBRARY :Zbirka UI STR_CONTENT_TYPE_SCENARIO :Scenarij -STR_CONTENT_TYPE_HEIGHTMAP :Visinska mapa +STR_CONTENT_TYPE_HEIGHTMAP :Visinska karta STR_CONTENT_TYPE_BASE_SOUNDS :Osnovni zvukovi STR_CONTENT_TYPE_BASE_MUSIC :Osnovna glazba STR_CONTENT_TYPE_GAME_SCRIPT :Skripta igre @@ -2343,7 +2343,7 @@ STR_CONTENT_TYPE_GS_LIBRARY :GS knjižnica # Content downloading progress window STR_CONTENT_DOWNLOAD_TITLE :{WHITE}Preuzimanje sadržaja -STR_CONTENT_DOWNLOAD_INITIALISE :{WHITE}Zahtjevanje datoteka +STR_CONTENT_DOWNLOAD_INITIALISE :{WHITE}Dohvaćanje datoteka... STR_CONTENT_DOWNLOAD_FILE :{WHITE}Trenutno preuzimam {STRING} ({NUM} of {NUM}) STR_CONTENT_DOWNLOAD_COMPLETE :{WHITE}Preuzimanje završeno STR_CONTENT_DOWNLOAD_PROGRESS_SIZE :{WHITE}{BYTES} od {BYTES} preuzeto ({NUM} %) @@ -2356,7 +2356,7 @@ STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_FILE_NOT_WRITABLE :{WHITE}... dato STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}Nije moguća dekompresija preuzete datoteke STR_MISSING_GRAPHICS_SET_CAPTION :{WHITE}Nedostaje grafika -STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD treba grafiku za funkcioniranje ali nijedna nije pronađena. Da li dozvoljavate da OpenTTD preuzme i instalira potrebne grafike? +STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD zahtijeva grafičke datoteke za rad, ali ništa nije pronađeno. Dopuštate li preuzimanje i instalaciju potrebne grafike? STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Da, preuzmi grafike STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Ne, izađi iz OpenTTD-a @@ -2493,7 +2493,7 @@ STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_VEHICLE_DEPOT :{BLACK}Izgradi STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAM_VEHICLE_DEPOT :{BLACK}Izgradi spremište tramvajskih vozila (za kupnju i servisiranje vozila). Shift mijenja prikaz građenje/procjena troškova. STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Izgradi autobusnu postaju. Ctrl omogućava spajanje postaja. Shift mijenja prikaz građenje/procjena troškova. STR_ROAD_TOOLBAR_TOOLTIP_BUILD_PASSENGER_TRAM_STATION :{BLACK}Izgradi putničku tramvajsku postaju. Ctrl omogućava spajanje postaja. Shift mijenja prikaz građenje/procjena troškova. -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Izgradi pretovarni kamionski terminal. Ctrl omogućava spajanje postaja. Shift mijenja prikaz građenje/procjena troškova. +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Izgradi prekrcajni kamionski terminal. Ctrl omogućava spajanje postaja. Shift mijenja prikaz građenje/procjena troškova. STR_ROAD_TOOLBAR_TOOLTIP_BUILD_CARGO_TRAM_STATION :{BLACK}Izgradi teretnu tramvajsku postaju. Ctrl omogućava spajanje postaja. Shift mijenja prikaz građenje/procjena troškova. STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_ONE_WAY_ROAD :{BLACK}Aktiviraj/deaktiviraj jednosmjerne ceste STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_BRIDGE :{BLACK}Izgradi cestovni most. Shift mijenja prikaz građenje/procjena troškova. @@ -2638,7 +2638,7 @@ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Nasumič # Fund new industry window STR_FUND_INDUSTRY_CAPTION :{WHITE}Financiraj novu industriju -STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Izaberi prikladnu industriju s ovog popisa +STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Odaberi prikladnu industriju s ovog popisa STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :Brojne nasumične industrije STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Popuni kartu nasumce smještenim industrijama STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Cijena: {YELLOW}{CURRENCY_LONG} @@ -2657,7 +2657,7 @@ STR_INDUSTRY_CARGOES_CARGO_TOOLTIP :{BLACK}{STRING} STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}Prikaži slijed STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP :{BLACK}Prikaži industrije koje dobavljaju i primaju teret STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP :{BLACK}Poveznica na malu mapu -STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}Odaberi prikazane industrije također i na maloj mapi +STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}Odaberi prikazane industrije i na maloj karti STR_INDUSTRY_CARGOES_SELECT_CARGO :{BLACK}Odaberi teret STR_INDUSTRY_CARGOES_SELECT_CARGO_TOOLTIP :{BLACK}Odaberi teret koji želiš prikazati STR_INDUSTRY_CARGOES_SELECT_INDUSTRY :{BLACK}Odaberi industriju @@ -2783,7 +2783,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Zemlja u posjed STR_ABOUT_OPENTTD :{WHITE}O OpenTTD-u STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Izvorno autorsko pravo {COPYRIGHT} 1995 Chris Sawyer, sva prava pridržana STR_ABOUT_VERSION :{BLACK}OpenTTD verzija {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD tim +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 OpenTTD tim # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Spremi igru @@ -2818,9 +2818,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Broj gradova: STR_MAPGEN_DATE :{BLACK}Datum: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Broj industrija: -STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maksimalna visina mape: -STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Povećaj maksimalnu visinu planina na mapi za jedan -STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Smanji maksimalnu visinu planina na mapi za jedan +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Najveća visina karte: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Povećaj za jedan najveću visinu planina na karti +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Smanji za jedan najveću visinu planina na karti STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Visina linije snijega STR_MAPGEN_SNOW_LINE_UP :{BLACK}Pomakni visinu linije snijega za jedan gore STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Pomakni visinu linije snijega za jedan dolje @@ -2850,7 +2850,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Ime visi STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Veličina: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} -STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Promijeni maksimalnu visinu mape +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Promijeni najveću visinu karte STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Promijeni visinu linije snijega STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Promijeni početnu godinu @@ -2894,7 +2894,7 @@ STR_NEWGRF_SETTINGS_PRESET_SAVE :{BLACK}Spremi z STR_NEWGRF_SETTINGS_PRESET_SAVE_TOOLTIP :{BLACK}Spremi trenutni popis kao zadano postavljanje STR_NEWGRF_SETTINGS_PRESET_SAVE_QUERY :{BLACK}Upiši ime zadanog postavljanja STR_NEWGRF_SETTINGS_PRESET_DELETE :{BLACK}Obriši zadano postavljanje -STR_NEWGRF_SETTINGS_PRESET_DELETE_TOOLTIP :{BLACK}Obriši trenutno izabrano zadano postavljanje +STR_NEWGRF_SETTINGS_PRESET_DELETE_TOOLTIP :{BLACK}Obriši trenutno odabrano zadano postavljanje STR_NEWGRF_SETTINGS_ADD :{BLACK}Dodaj STR_NEWGRF_SETTINGS_ADD_FILE_TOOLTIP :{BLACK}Dodaj odabrane NewGRF datoteke u svoju konfiguraciju STR_NEWGRF_SETTINGS_RESCAN_FILES :{BLACK}Ponovno skeniraj datoteke @@ -2912,7 +2912,7 @@ STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Popis in STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Postavi parametre STR_NEWGRF_SETTINGS_SHOW_PARAMETERS :{BLACK}Prikaži parametre STR_NEWGRF_SETTINGS_TOGGLE_PALETTE :{BLACK}Aktiviraj paletu -STR_NEWGRF_SETTINGS_TOGGLE_PALETTE_TOOLTIP :{BLACK}Prilagodi paletu izabranog NewGRF-a.{}Učini ovo kada grafike iz ovog NewGRF-a izgledaju ljubičasto tijekom igre. +STR_NEWGRF_SETTINGS_TOGGLE_PALETTE_TOOLTIP :{BLACK}Prilagodi paletu odabranog NewGRF-a.{}Učini ovo kada grafike iz ovog NewGRF-a izgledaju ljubičasto tijekom igre. STR_NEWGRF_SETTINGS_APPLY_CHANGES :{BLACK}Potvrdi promjene STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_BUTTON :{BLACK}Pronađi nedostajeći sadržaj online @@ -2970,13 +2970,13 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Otiđi n STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Prethodni sprite STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Otiđi na prethodni normalni sprite, preskačući svaki pseudo/prebojani/font sprite i {BLACK}Otiđi na sljedeći normalni sprite, preskačući svaki pseudo/prebojani/font sprite i nakon dolaska na prvi prebaci na zadnjeg STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Prikaz trenutno odabranog spritea. Poravnjanje se ignorira kod crtanja ovog spritea. -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Pomakni sprite mijenjajući X i Y pomake +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Pomakni sprite mijenjajući X i Y pomake. Ctrl+Click za micanje po 8 jedinica odjednom. STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Poništi relativne STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Poništi trenutne relativne pomake STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X pomak: {NUM}, Y pomak: {NUM} (Apsolutni) STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X pomak: {NUM}, Y pomak: {NUM} (Relativni) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Odaberi sprite -STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Odaberi sprite od bilo gdje na ekranu +STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Odaberi bilo koji sprite na zaslonu STR_SPRITE_ALIGNER_GOTO_CAPTION :{WHITE}Otiđi na sprite @@ -2985,7 +2985,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Upozorenje: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Greška: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Kobno: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Dogodila se kobna pogreška u NewGRF-u: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Dogodila se kobna pogreška u NewGRF-u:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} neće raditi sa TTDPatch verzijom prijavljenom u OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} je za {STRING} verziju TTD-a. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} je napravljen da se koristi sa {STRING} @@ -3023,9 +3023,9 @@ STR_NEWGRF_UNPAUSE_WARNING :{WHITE}Odpauzir # NewGRF status STR_NEWGRF_LIST_NONE :Nijedan -STR_NEWGRF_LIST_ALL_FOUND :Svi fajlovi prisutni -STR_NEWGRF_LIST_COMPATIBLE :{YELLOW}Pronađeni kompatibilni fajlovi -STR_NEWGRF_LIST_MISSING :{RED}Nedostaju fajlovi +STR_NEWGRF_LIST_ALL_FOUND :Sve datoteke prisutne +STR_NEWGRF_LIST_COMPATIBLE :{YELLOW}Pronađene kompatibilne datoteke +STR_NEWGRF_LIST_MISSING :{RED}Nedostaju datoteke # NewGRF 'it's broken' warnings STR_NEWGRF_BROKEN :{WHITE}Ponašanje NewGRF '{0:STRING}' će vjerojatno uzrokovati deharmonizaciju i/ili rušenje igre @@ -3078,8 +3078,8 @@ STR_TOWN_POPULATION :{BLACK}Svjetsko STR_TOWN_VIEW_TOWN_CAPTION :{WHITE}{TOWN} STR_TOWN_VIEW_CITY_CAPTION :{WHITE}{TOWN} (Metropola) STR_TOWN_VIEW_POPULATION_HOUSES :{BLACK}Stanovništvo: {ORANGE}{COMMA}{BLACK} Kuće: {ORANGE}{COMMA} -STR_TOWN_VIEW_PASSENGERS_LAST_MONTH_MAX :{BLACK}Putnika prošli mjesec: {ORANGE}{COMMA}{BLACK} maks: {ORANGE}{COMMA} -STR_TOWN_VIEW_MAIL_LAST_MONTH_MAX :{BLACK}Pošte prošli mjesec: {ORANGE}{COMMA}{BLACK} maks: {ORANGE}{COMMA} +STR_TOWN_VIEW_PASSENGERS_LAST_MONTH_MAX :{BLACK}Putnika prošli mjesec: {ORANGE}{COMMA}{BLACK} najviše: {ORANGE}{COMMA} +STR_TOWN_VIEW_MAIL_LAST_MONTH_MAX :{BLACK}Pošte prošli mjesec: {ORANGE}{COMMA}{BLACK} najviše: {ORANGE}{COMMA} STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Potrebno tereta za rast grada: STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{ORANGE}{STRING}{RED} potrebno STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING}{BLACK} potrebno zimi @@ -3089,7 +3089,7 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_ STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Grad raste svaki {ORANGE}{COMMA}{BLACK}{NBSP}dan STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Grad raste svaki {ORANGE}{COMMA}{BLACK}{NBSP}dan (financirano) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Grad {RED}ne{BLACK} raste -STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Ograničenje buke u gradu: {ORANGE}{COMMA}{BLACK} maks: {ORANGE}{COMMA} +STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Ograničenje buke u gradu: {ORANGE}{COMMA}{BLACK} najviše: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Centriraj glavni pogled na lokaciju grada. Ctrl+klik otvara novi prozor sa lokacijom grada STR_TOWN_VIEW_LOCAL_AUTHORITY_BUTTON :{BLACK}Lokalna samouprava STR_TOWN_VIEW_LOCAL_AUTHORITY_TOOLTIP :{BLACK}Pokaži informacije o lokalnoj samoupravi @@ -3296,7 +3296,7 @@ STR_FINANCES_POSITIVE_INCOME :{BLACK}+{CURREN STR_FINANCES_TOTAL_CAPTION :{WHITE}Ukupno: STR_FINANCES_BANK_BALANCE_TITLE :{WHITE}Bankovna bilanca STR_FINANCES_LOAN_TITLE :{WHITE}Zajam -STR_FINANCES_MAX_LOAN :{WHITE}Maksimalni kredit: {BLACK}{CURRENCY_LONG} +STR_FINANCES_MAX_LOAN :{WHITE}Najveći zajam: {BLACK}{CURRENCY_LONG} STR_FINANCES_TOTAL_CURRENCY :{BLACK}{CURRENCY_LONG} STR_FINANCES_BORROW_BUTTON :{BLACK}Pozajmi {CURRENCY_LONG} STR_FINANCES_BORROW_TOOLTIP :{BLACK}Povećaj iznos zajma. Ctrl+klik posuđuje najveći mogući iznos @@ -3452,7 +3452,7 @@ STR_GROUP_RENAME_TOOLTIP :{BLACK}Preimenu STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Klikni kako bi zaštitio ovu grupu od globalne automatske zamjene STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Izbriši grupu -STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Da li ste sigurni da želite izbrisati ovu grupu i sve njene podgrupe? +STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Jeste li sigurni da želite izbrisati ovu grupu i sve njene podgrupe? STR_GROUP_ADD_SHARED_VEHICLE :Dodaj dijeljena vozila STR_GROUP_REMOVE_ALL_VEHICLES :Ukloni sva vozila @@ -3479,7 +3479,7 @@ STR_PURCHASE_INFO_RUNNINGCOST :{BLACK}Trošak STR_PURCHASE_INFO_CAPACITY :{BLACK}Nosivost: {GOLD}{CARGO_LONG}{STRING} STR_PURCHASE_INFO_REFITTABLE :(prenamjenjiv) STR_PURCHASE_INFO_DESIGNED_LIFE :{BLACK}Dizajnirano: {GOLD}{NUM}{BLACK} Životni vijek: {GOLD}{COMMA} godina -STR_PURCHASE_INFO_RELIABILITY :{BLACK}Maks. pouzdanost: {GOLD}{COMMA}% +STR_PURCHASE_INFO_RELIABILITY :{BLACK}Najveća pouzdanost: {GOLD}{COMMA}% STR_PURCHASE_INFO_COST :{BLACK}Cijena: {GOLD}{CURRENCY_LONG} STR_PURCHASE_INFO_WEIGHT_CWEIGHT :{BLACK}Težina: {GOLD}{WEIGHT_SHORT} ({WEIGHT_SHORT}) STR_PURCHASE_INFO_COST_SPEED :{BLACK}Trošak: {GOLD}{CURRENCY_LONG}{BLACK} Brzina: {GOLD}{VELOCITY} @@ -3488,7 +3488,7 @@ STR_PURCHASE_INFO_PWAGPOWER_PWAGWEIGHT :{BLACK} Pokretn STR_PURCHASE_INFO_REFITTABLE_TO :{BLACK}Prenamjenjivo u: {GOLD}{STRING} STR_PURCHASE_INFO_ALL_TYPES :Sve vrste tereta STR_PURCHASE_INFO_ALL_BUT :Sve osim {CARGO_LIST} -STR_PURCHASE_INFO_MAX_TE :{BLACK} Maks. vučni napor: {GOLD}{FORCE} +STR_PURCHASE_INFO_MAX_TE :{BLACK} Najveća vučna sila: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Domet: {GOLD}{COMMA} polja STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Popis vlakova za odabir. Klikni na vozilo za informacije. Ctrl+klik za uključivanje ili isključivanje prikaza vrste vozila @@ -3640,7 +3640,7 @@ STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Stupac s STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Dostupna vozila STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Stupac sa vozilima dostupnim za zamjenjivanje -STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Izaberi vrstu motora koju želiš zamijeniti +STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Odaberi vrstu motora koju želiš zamijeniti STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Odaberite novu vrstu lokomotive koji želite koristiti umjesto lijevo odabrane vrste lokomotive STR_REPLACE_VEHICLES_START :{BLACK}Počni zamijenjivati vozila @@ -3712,7 +3712,7 @@ STR_VEHICLE_VIEW_SHIP_STATE_START_STOP_TOOLTIP :{BLACK}Trenutna STR_VEHICLE_VIEW_AIRCRAFT_STATE_START_STOP_TOOLTIP :{BLACK}Trenutna radnja zrakoplova - pritisni za zaustavljanje/pokretanje zrakoplova. Ctrl+klik za odlazak do odredišta. # Messages in the start stop button in the vehicle view -STR_VEHICLE_STATUS_LOADING_UNLOADING :{LTBLUE}Utovar / Istovar +STR_VEHICLE_STATUS_LOADING_UNLOADING :{LTBLUE}Ukrcaj / Iskrcaj STR_VEHICLE_STATUS_LEAVING :{LTBLUE}Odlazeći STR_VEHICLE_STATUS_CRASHED :{RED}Slupan! STR_VEHICLE_STATUS_BROKEN_DOWN :{RED}Pokvareno @@ -3748,10 +3748,10 @@ STR_VEHICLE_INFO_AGE_RUNNING_COST_YR :{BLACK}Godine: STR_VEHICLE_INFO_AGE :{COMMA} godin{P a e a} ({COMMA}) STR_VEHICLE_INFO_AGE_RED :{RED}{COMMA} godin{P a e a} ({COMMA}) -STR_VEHICLE_INFO_MAX_SPEED :{BLACK}Maks. brzina: {LTBLUE}{VELOCITY} -STR_VEHICLE_INFO_MAX_SPEED_RANGE :{BLACK}Maks. brzina: {LTBLUE}{VELOCITY} {BLACK}Domet: {LTBLUE}{COMMA} polja -STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED :{BLACK}Težina: {LTBLUE}{WEIGHT_SHORT} {BLACK}Snaga: {LTBLUE}{POWER}{BLACK} Maks. brzina: {LTBLUE}{VELOCITY} -STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE :{BLACK}Težina: {LTBLUE}{WEIGHT_SHORT} {BLACK}Snaga: {LTBLUE}{POWER}{BLACK} Maks. brzina: {LTBLUE}{VELOCITY} {BLACK}Maks. T.E.: {LTBLUE}{FORCE} +STR_VEHICLE_INFO_MAX_SPEED :{BLACK}Najveća brzina: {LTBLUE}{VELOCITY} +STR_VEHICLE_INFO_MAX_SPEED_RANGE :{BLACK}Najveća brzina: {LTBLUE}{VELOCITY} {BLACK}Domet: {LTBLUE}{COMMA} polj{P e a a} +STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED :{BLACK}Težina: {LTBLUE}{WEIGHT_SHORT} {BLACK}Snaga: {LTBLUE}{POWER}{BLACK} Najveća brzina: {LTBLUE}{VELOCITY} +STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE :{BLACK}Težina: {LTBLUE}{WEIGHT_SHORT} {BLACK}Snaga: {LTBLUE}{POWER}{BLACK} Najveća brzina: {LTBLUE}{VELOCITY} {BLACK}Najveća vučna sila: {LTBLUE}{FORCE} STR_VEHICLE_INFO_PROFIT_THIS_YEAR_LAST_YEAR :{BLACK}Dobit ove godine: {LTBLUE}{CURRENCY_LONG} (prošle godine: {CURRENCY_LONG}) STR_VEHICLE_INFO_RELIABILITY_BREAKDOWNS :{BLACK}Pouzdanost: {LTBLUE}{COMMA}% {BLACK}Broj kvarova od posljednjeg servisa: {LTBLUE}{COMMA} @@ -3863,7 +3863,7 @@ STR_ORDER_TOOLTIP_UNLOAD :{BLACK}Promijen STR_ORDER_REFIT :{BLACK}Prenamijeni STR_ORDER_REFIT_TOOLTIP :{BLACK}Odaberi vrstu tereta za prenamijenu u ovoj naredbi. Ctrl+klik kako bi uklonio naputak za prenamjenu STR_ORDER_REFIT_AUTO :{BLACK}Auto-remont na postaji -STR_ORDER_REFIT_AUTO_TOOLTIP :{BLACK}Odaberi za koji tip tereta odraditi auto-remont. Ctrl+Click za micanje remontnih uputa. Auto-remont će se odraditi samo ako ga vozilo dopušta. +STR_ORDER_REFIT_AUTO_TOOLTIP :{BLACK}Odaberi za koji tip tereta odraditi auto-remont. Ctrl+klik za micanje remontnih uputa. Auto-remont će se odraditi samo ako ga vozilo dopušta. STR_ORDER_DROP_REFIT_AUTO :Popravljen teret STR_ORDER_DROP_REFIT_AUTO_ANY :Dostupni teret @@ -3878,7 +3878,7 @@ STR_ORDER_CONDITIONAL_VARIABLE_TOOLTIP :{BLACK}Podaci v # Conditional order variables, must follow order of OrderConditionVariable enum STR_ORDER_CONDITIONAL_LOAD_PERCENTAGE :Postotak ukrcaja STR_ORDER_CONDITIONAL_RELIABILITY :Pouzdanost -STR_ORDER_CONDITIONAL_MAX_SPEED :Maksimalna brzina +STR_ORDER_CONDITIONAL_MAX_SPEED :Najveća brzina STR_ORDER_CONDITIONAL_AGE :Starost vozila (godine) STR_ORDER_CONDITIONAL_REQUIRES_SERVICE :Treba servis STR_ORDER_CONDITIONAL_UNCONDITIONALLY :Uvijek @@ -4022,10 +4022,10 @@ STR_TIMETABLE_CLEAR_TIME :{BLACK}Obriši STR_TIMETABLE_CLEAR_TIME_TOOLTIP :{BLACK}Obriši vrijeme potrebno za označenu naredbu STR_TIMETABLE_CHANGE_SPEED :{BLACK}Izmijeni limit brzine -STR_TIMETABLE_CHANGE_SPEED_TOOLTIP :{BLACK}Izmijeni maksimalnu putnu brzinu za označenu naredbu +STR_TIMETABLE_CHANGE_SPEED_TOOLTIP :{BLACK}Promijeni najveću putnu brzinu označene naredbe STR_TIMETABLE_CLEAR_SPEED :{BLACK}Izbriši limit brzine -STR_TIMETABLE_CLEAR_SPEED_TOOLTIP :{BLACK}Izbriši maksimalnu putnu brzinu za označenu naredbu +STR_TIMETABLE_CLEAR_SPEED_TOOLTIP :{BLACK}Obriši najveću putnu brzinu za označenu naredbu STR_TIMETABLE_RESET_LATENESS :{BLACK}Poništi brojač kašnjenja STR_TIMETABLE_RESET_LATENESS_TOOLTIP :{BLACK}Resetiraj brojač kašnjenja, kako bi vozilo stiglo na vrijeme @@ -4096,7 +4096,7 @@ STR_AI_CONFIG_CHANGE_AI :UI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Skripta Igre STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Učitaj drugu skriptu STR_AI_CONFIG_CONFIGURE :{BLACK}Konfiguriraj -STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}Konfiguriraj parametre izabrane skripte +STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}Prilagodi parametre odabrane skripte # Available AIs window STR_AI_LIST_CAPTION :{WHITE}Dostupno {STRING} @@ -4109,7 +4109,7 @@ STR_AI_LIST_VERSION :{LTBLUE}Verzija STR_AI_LIST_URL :{LTBLUE}URL: {ORANGE}{STRING} STR_AI_LIST_ACCEPT :{BLACK}Prihvati -STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Odaberi posvijetljenu skriptu +STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Odaberi označenu skriptu STR_AI_LIST_CANCEL :{BLACK}Odustani STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Nemoj mijenjati skriptu @@ -4175,7 +4175,7 @@ STR_GAME_SAVELOAD_NOT_AVAILABLE : STR_WARNING_LOADGAME_REMOVED_TRAMS :{WHITE}Igra je bila spremljena u verziji bez podrške za tramvaje. Svi tramvaji su uklonjeni. # Map generation messages -STR_ERROR_COULD_NOT_CREATE_TOWN :{WHITE}Generiranje mape prekinuto...{}... ne postoje pogodne lokacije za gradove +STR_ERROR_COULD_NOT_CREATE_TOWN :{WHITE}Generiranje karte prekinuto...{}... ne postoje pogodne lokacije za gradove STR_ERROR_NO_TOWN_IN_SCENARIO :{WHITE}... u ovom scenariju nema gradova STR_ERROR_PNGMAP :{WHITE}Nije moguće učitati krajolik iz PNG-a... @@ -4189,14 +4189,14 @@ STR_ERROR_BMPMAP_IMAGE_TYPE :{WHITE}... ne m STR_ERROR_HEIGHTMAP_TOO_LARGE :{WHITE}... slika je prevelika STR_WARNING_HEIGHTMAP_SCALE_CAPTION :{WHITE}Upozorenje o veličini -STR_WARNING_HEIGHTMAP_SCALE_MESSAGE :{YELLOW}Prekomjerna promjena veličine karte nije preporučena. Nastaviti sa kreiranjem? +STR_WARNING_HEIGHTMAP_SCALE_MESSAGE :{YELLOW}Pretjerana promjena veličine karte nije preporučena. Nastaviti sa stvaranjem? # Soundset messages STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Pronađen je samo sigurnosni zvučni sustav. Ako želite zvukove, instalirajte set zvukova kroz sustav za preuzimanje sadržaja. # Screenshot related messages STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Velika slika -STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}Slika će imati rezoluciju od {COMMA} x {COMMA} piksela. Slikanje može potrajati. Da li želite nastaviti? +STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}Slika će imati rezoluciju od {COMMA} x {COMMA} piksela. Slikanje može potrajati. Želite li nastaviti? STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Slika zaslona uspješno spremljena kao '{STRING}' STR_ERROR_SCREENSHOT_FAILED :{WHITE}Slika zaslona nije uspjela! @@ -4291,7 +4291,7 @@ STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... mogu STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... moguće graditi samo ispod razine snijega STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Nije bilo odgovarajućih mjesta za '{STRING}' industrije -STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Izmijenite parametre za generaciju mape kako bi dobili bolju mapu +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Promijeni parametre stvaranja karte kako biste dobili bolju kartu # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Ovdje nije moguće izgraditi željezničku postaju... @@ -4385,7 +4385,7 @@ STR_ERROR_MUST_REMOVE_SIGNALS_FIRST :{WHITE}Najprije STR_ERROR_NO_SUITABLE_RAILROAD_TRACK :{WHITE}Nije prikladno za želježnicku prugu STR_ERROR_MUST_REMOVE_RAILROAD_TRACK :{WHITE}Najprije je potrebno ukloniti željezničku prugu STR_ERROR_CROSSING_ON_ONEWAY_ROAD :{WHITE}Cesta je jednosmjerna ili je blokirana -STR_ERROR_CROSSING_DISALLOWED :{WHITE}Pružni prijelazi nisu dozvoljeni za ovu vrstu pruge +STR_ERROR_CROSSING_DISALLOWED :{WHITE}Pružni prijelazi nisu dopušteni za ovu vrstu pruge STR_ERROR_CAN_T_BUILD_SIGNALS_HERE :{WHITE}Ovdje nije moguće postaviti signale... STR_ERROR_CAN_T_BUILD_RAILROAD_TRACK :{WHITE}Ovdje nije moguće izgraditi željezničke tračnice... STR_ERROR_CAN_T_REMOVE_RAILROAD_TRACK :{WHITE}Nije moguće ukloniti željezničku prugu odavde... @@ -4433,7 +4433,7 @@ STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Most je STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Početak i kraj moraju biti u ravnini STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... oba kraja mosta moraju biti na zemlji STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... predugačak most -STR_ERROR_BRIDGE_THROUGH_MAP_BORDER :{WHITE}Most bi završio izvan mape +STR_ERROR_BRIDGE_THROUGH_MAP_BORDER :{WHITE}Most bi završio izvan karte # Tunnel related errors STR_ERROR_CAN_T_BUILD_TUNNEL_HERE :{WHITE}Ovdje nije moguće izgraditi tunel... @@ -4566,8 +4566,8 @@ STR_BASEGRAPHICS_WIN_DESCRIPTION :Originalna graf STR_BASESOUNDS_DOS_DESCRIPTION :Originalni zvukovi za Transport Tycoon Deluxe DOS izdanje. STR_BASESOUNDS_WIN_DESCRIPTION :Originalni zvukovi za Transport Tycoon Deluxe Windows izdanje. STR_BASESOUNDS_NONE_DESCRIPTION :Zvučni paket bez ikakvih zvukova. -STR_BASEMUSIC_WIN_DESCRIPTION :Originalna muzika za Transport Tycoon Deluxe Windows izdanje. -STR_BASEMUSIC_NONE_DESCRIPTION :Muzički paket bez ikakve muzike. +STR_BASEMUSIC_WIN_DESCRIPTION :Originalna glazba za Transport Tycoon Deluxe Windows izdanje. +STR_BASEMUSIC_NONE_DESCRIPTION :Glazbeni paket bez ikakve glazbe. ##id 0x2000 # Town building names diff --git a/src/lang/czech.txt b/src/lang/czech.txt index 7b0737303c..9a246b62a5 100644 --- a/src/lang/czech.txt +++ b/src/lang/czech.txt @@ -12,7 +12,7 @@ ##case nom gen dat acc voc loc ins big small -# $Id: czech.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: czech.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -35,14 +35,14 @@ STR_CARGO_PLURAL_PASSENGERS.big :Cestující STR_CARGO_PLURAL_COAL :Uhlí STR_CARGO_PLURAL_COAL.big :Uhlí STR_CARGO_PLURAL_MAIL :{G=f}Pošta -STR_CARGO_PLURAL_MAIL.nom :{G=f}pošta -STR_CARGO_PLURAL_MAIL.gen :{G=f}pošty -STR_CARGO_PLURAL_MAIL.dat :{G=f}poštu -STR_CARGO_PLURAL_MAIL.acc :{G=f}poštu -STR_CARGO_PLURAL_MAIL.loc :{G=f}poště -STR_CARGO_PLURAL_MAIL.ins :{G=f}poštou +STR_CARGO_PLURAL_MAIL.nom :pošta +STR_CARGO_PLURAL_MAIL.gen :pošty +STR_CARGO_PLURAL_MAIL.dat :poštu +STR_CARGO_PLURAL_MAIL.acc :poštu +STR_CARGO_PLURAL_MAIL.loc :poště +STR_CARGO_PLURAL_MAIL.ins :poštou STR_CARGO_PLURAL_MAIL.big :Pošta -STR_CARGO_PLURAL_MAIL.small :{G=f}pošta +STR_CARGO_PLURAL_MAIL.small :pošta STR_CARGO_PLURAL_OIL :Ropa STR_CARGO_PLURAL_OIL.gen :Ropy STR_CARGO_PLURAL_OIL.acc :Ropu @@ -1205,9 +1205,9 @@ STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Nastavení hry STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Nastavení hry (uchováno v uložené hře; ovlivní pouze stávající hru) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Nastavení společnosti (uchováno v uložených hrách; ovlivní pouze nové hry) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Nastavení společnosti (uchováno v uložené hře; ovlivní pouze stávající společnost) -STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}Všechny výsledky vyhledávání zobrazíš nastavením {}{SILVER}kategorie {BLACK}na {WHITE}{STRING} -STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Všechny výsledky vyhledávání zobrazíš nastavením {}{SILVER}typu {BLACK}na {WHITE}Všechny typy nastavení -STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Všechny výsledky vyhledávání zobrazíš nastavením {}{SILVER}kategorie {BLACK}na {WHITE}{STRING} {BLACK}a {SILVER}typu {BLACK}na {WHITE}Všechny typy nastavení +STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}Všechny výsledky vyhledávání zobrazíš nastavením{}{SILVER}kategorie {BLACK}na {WHITE}{STRING} +STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Všechny výsledky vyhledávání zobrazíš nastavením{}{SILVER}typu {BLACK}na {WHITE}Všechny typy nastavení +STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Všechny výsledky vyhledávání zobrazíš nastavením{}{SILVER}kategorie {BLACK}na {WHITE}{STRING} {BLACK}a {SILVER}typu {BLACK}na {WHITE}Všechny typy nastavení STR_CONFIG_SETTINGS_NONE :{WHITE}- Nic - STR_CONFIG_SETTING_OFF :Vypnuto @@ -2780,7 +2780,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Půda vlastněn STR_ABOUT_OPENTTD :{WHITE}O OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Původní copyright: {COPYRIGHT} 1995 Chris Sawyer, všechna práva vyhrazena STR_ABOUT_VERSION :{BLACK}OpenTTD verze {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Tým OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 Tým OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Uložit hru @@ -2967,7 +2967,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Jít na STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Předchozí sprite STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Jít na předchozí normální sprite (s grafikou), přičemž se přeskakují pseudo-/barvící/znakové sprity a při dosažení začátku se jde na konec STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Zobrazení vybraného spritu. Posun se při jeho vykreslení neuvažoval -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Posouvání spritu změnou souřadnic X a Y +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Posouvání spritu změnou souřadnic X a Y. Ctrl+kliknutí posouvá o osm jednotek najednou. STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Resetovat STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Resetovat aktuání relativní posunutí STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Posunutí v ose X: {NUM}, Posunutí v ose Y: {NUM} (Absolutní) @@ -2982,7 +2982,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Varování: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Chyba: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Závažná chyba: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Vyskytla se kritická chyba v NewGRF: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Vyskytla se kritická chyba v NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} nebude fungovat s verzí TTDPatche, kterou OpenTTD hlásí STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} je pro TTD verzi {STRING} STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} je navržen pro práci s {STRING} @@ -3612,17 +3612,14 @@ STR_DEPOT_SELL_CONFIRMATION_TEXT :{YELLOW}Chceš STR_ENGINE_PREVIEW_CAPTION :{WHITE}Zpráva od výrobce dopravních prostředků STR_ENGINE_PREVIEW_MESSAGE :{GOLD}Právě jsme vyvinuli nov{G ý ou é é é é á} {STRING.acc}. Měl byste zájem o roční výhradní právo na používání tohoto prostředku, aby byl otestován před uvedením na trh? STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE :{G=f}lokomotiva -STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE.dat : -STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE.acc :{G=f}lokomotivu +STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE.acc :lokomotivu STR_ENGINE_PREVIEW_ROAD_VEHICLE :{G=n}silniční vozidlo STR_ENGINE_PREVIEW_AIRCRAFT :{G=n}letadlo STR_ENGINE_PREVIEW_SHIP :{G=f}loď STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE :{G=f}lokomotiva pro monorail -STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE.dat : -STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE.acc :{G=f}lokomotivu pro monorail +STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE.acc :lokomotivu pro monorail STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE :{G=f}lokomotiva Maglev -STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE.dat : -STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE.acc :{G=f}lokomotivu Maglev +STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE.acc :lokomotivu Maglev STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Cena: {CURRENCY_LONG} Hmotnost: {WEIGHT_SHORT}{}Rychlost: {VELOCITY} Výkon: {POWER}{}Cena provozu: {CURRENCY_LONG} ročně{}Kapacita: {CARGO_LONG} STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Cena: {CURRENCY_LONG} Váha: {WEIGHT_SHORT}{}Rychlost: {VELOCITY} Síla: {POWER} Maximální tažná síla: {6:FORCE}{}Provozní náklady: {4:CURRENCY_LONG}/rok{}Kapacita: {5:CARGO_LONG} @@ -4618,153 +4615,153 @@ STR_TOWN_BUILDING_NAME_PIGGY_BANK_1 :Banka prasátko ##id 0x4800 # industry names STR_INDUSTRY_NAME_COAL_MINE :{G=m}Uhelný důl -STR_INDUSTRY_NAME_COAL_MINE.gen :{G=m}uhelného dolu -STR_INDUSTRY_NAME_COAL_MINE.loc :{G=m}v uhelném dole -STR_INDUSTRY_NAME_COAL_MINE.small :{G=m}uhelný důl +STR_INDUSTRY_NAME_COAL_MINE.gen :uhelného dolu +STR_INDUSTRY_NAME_COAL_MINE.loc :v uhelném dole +STR_INDUSTRY_NAME_COAL_MINE.small :uhelný důl STR_INDUSTRY_NAME_POWER_STATION :{G=f}Elektrárna -STR_INDUSTRY_NAME_POWER_STATION.gen :{G=f}elektrárny -STR_INDUSTRY_NAME_POWER_STATION.loc :{G=f}v elektrárně -STR_INDUSTRY_NAME_POWER_STATION.small :{G=f}elektrárna +STR_INDUSTRY_NAME_POWER_STATION.gen :elektrárny +STR_INDUSTRY_NAME_POWER_STATION.loc :v elektrárně +STR_INDUSTRY_NAME_POWER_STATION.small :elektrárna STR_INDUSTRY_NAME_SAWMILL :{G=f}Pila -STR_INDUSTRY_NAME_SAWMILL.gen :{G=f}pily -STR_INDUSTRY_NAME_SAWMILL.loc :{G=f}na pile -STR_INDUSTRY_NAME_SAWMILL.small :{G=f}pila +STR_INDUSTRY_NAME_SAWMILL.gen :pily +STR_INDUSTRY_NAME_SAWMILL.loc :na pile +STR_INDUSTRY_NAME_SAWMILL.small :pila STR_INDUSTRY_NAME_FOREST :{G=m}Les -STR_INDUSTRY_NAME_FOREST.gen :{G=m}lesa -STR_INDUSTRY_NAME_FOREST.loc :{G=m}v lese -STR_INDUSTRY_NAME_FOREST.small :{G=m}les +STR_INDUSTRY_NAME_FOREST.gen :lesa +STR_INDUSTRY_NAME_FOREST.loc :v lese +STR_INDUSTRY_NAME_FOREST.small :les STR_INDUSTRY_NAME_OIL_REFINERY :{G=f}Rafinerie -STR_INDUSTRY_NAME_OIL_REFINERY.gen :{G=f}rafinerie -STR_INDUSTRY_NAME_OIL_REFINERY.loc :{G=f}v rafinerii -STR_INDUSTRY_NAME_OIL_REFINERY.small :{G=f}rafinerie +STR_INDUSTRY_NAME_OIL_REFINERY.gen :rafinerie +STR_INDUSTRY_NAME_OIL_REFINERY.loc :v rafinerii +STR_INDUSTRY_NAME_OIL_REFINERY.small :rafinerie STR_INDUSTRY_NAME_OIL_RIG :{G=f}Ropná plošina -STR_INDUSTRY_NAME_OIL_RIG.gen :{G=f}ropné plošiny -STR_INDUSTRY_NAME_OIL_RIG.loc :{G=f}na ropné plošině -STR_INDUSTRY_NAME_OIL_RIG.small :{G=f}ropná plošina +STR_INDUSTRY_NAME_OIL_RIG.gen :ropné plošiny +STR_INDUSTRY_NAME_OIL_RIG.loc :na ropné plošině +STR_INDUSTRY_NAME_OIL_RIG.small :ropná plošina STR_INDUSTRY_NAME_FACTORY :{G=f}Továrna -STR_INDUSTRY_NAME_FACTORY.gen :{G=f}továrny -STR_INDUSTRY_NAME_FACTORY.loc :{G=f}v továrně -STR_INDUSTRY_NAME_FACTORY.small :{G=f}továrna +STR_INDUSTRY_NAME_FACTORY.gen :továrny +STR_INDUSTRY_NAME_FACTORY.loc :v továrně +STR_INDUSTRY_NAME_FACTORY.small :továrna STR_INDUSTRY_NAME_PRINTING_WORKS :{G=f}Tiskárna -STR_INDUSTRY_NAME_PRINTING_WORKS.gen :{G=f}tiskárny -STR_INDUSTRY_NAME_PRINTING_WORKS.loc :{G=f}v tiskárně -STR_INDUSTRY_NAME_PRINTING_WORKS.small :{G=f}tiskárna +STR_INDUSTRY_NAME_PRINTING_WORKS.gen :tiskárny +STR_INDUSTRY_NAME_PRINTING_WORKS.loc :v tiskárně +STR_INDUSTRY_NAME_PRINTING_WORKS.small :tiskárna STR_INDUSTRY_NAME_STEEL_MILL :{G=f}Ocelárna -STR_INDUSTRY_NAME_STEEL_MILL.gen :{G=f}ocelárny -STR_INDUSTRY_NAME_STEEL_MILL.loc :{G=f}v ocelárně -STR_INDUSTRY_NAME_STEEL_MILL.small :{G=f}ocelárna +STR_INDUSTRY_NAME_STEEL_MILL.gen :ocelárny +STR_INDUSTRY_NAME_STEEL_MILL.loc :v ocelárně +STR_INDUSTRY_NAME_STEEL_MILL.small :ocelárna STR_INDUSTRY_NAME_FARM :{G=f}Farma -STR_INDUSTRY_NAME_FARM.gen :{G=f}farmy -STR_INDUSTRY_NAME_FARM.loc :{G=f}na farmě -STR_INDUSTRY_NAME_FARM.small :{G=f}farma +STR_INDUSTRY_NAME_FARM.gen :farmy +STR_INDUSTRY_NAME_FARM.loc :na farmě +STR_INDUSTRY_NAME_FARM.small :farma STR_INDUSTRY_NAME_COPPER_ORE_MINE :{G=m}Důl na měděnou rudu -STR_INDUSTRY_NAME_COPPER_ORE_MINE.gen :{G=m}dolu na měděnou rudu -STR_INDUSTRY_NAME_COPPER_ORE_MINE.loc :{G=m}v dole na měděnou rudu -STR_INDUSTRY_NAME_COPPER_ORE_MINE.small :{G=m}důl na měděnou rudu +STR_INDUSTRY_NAME_COPPER_ORE_MINE.gen :dolu na měděnou rudu +STR_INDUSTRY_NAME_COPPER_ORE_MINE.loc :v dole na měděnou rudu +STR_INDUSTRY_NAME_COPPER_ORE_MINE.small :důl na měděnou rudu STR_INDUSTRY_NAME_OIL_WELLS :{G=m}Ropný vrt -STR_INDUSTRY_NAME_OIL_WELLS.gen :{G=m}ropného vrtu -STR_INDUSTRY_NAME_OIL_WELLS.loc :{G=m}v ropném vrtu -STR_INDUSTRY_NAME_OIL_WELLS.small :{G=m}ropný vrt +STR_INDUSTRY_NAME_OIL_WELLS.gen :ropného vrtu +STR_INDUSTRY_NAME_OIL_WELLS.loc :v ropném vrtu +STR_INDUSTRY_NAME_OIL_WELLS.small :ropný vrt STR_INDUSTRY_NAME_BANK :{G=f}Banka -STR_INDUSTRY_NAME_BANK.gen :{G=f}banky -STR_INDUSTRY_NAME_BANK.loc :{G=f}v bance -STR_INDUSTRY_NAME_BANK.small :{G=f}banka +STR_INDUSTRY_NAME_BANK.gen :banky +STR_INDUSTRY_NAME_BANK.loc :v bance +STR_INDUSTRY_NAME_BANK.small :banka STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT :{G=m}Potravinářský závod -STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.gen :{G=m}potravinářského závodu -STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.loc :{G=m}v potravinářském závodu -STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.small :{G=m}potravinářský závod +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.gen :potravinářského závodu +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.loc :v potravinářském závodu +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.small :potravinářský závod STR_INDUSTRY_NAME_PAPER_MILL :{G=f}Papírna -STR_INDUSTRY_NAME_PAPER_MILL.gen :{G=f}papírny -STR_INDUSTRY_NAME_PAPER_MILL.loc :{G=f}v papírně -STR_INDUSTRY_NAME_PAPER_MILL.small :{G=f}papírna +STR_INDUSTRY_NAME_PAPER_MILL.gen :papírny +STR_INDUSTRY_NAME_PAPER_MILL.loc :v papírně +STR_INDUSTRY_NAME_PAPER_MILL.small :papírna STR_INDUSTRY_NAME_GOLD_MINE :{G=m}Zlatý důl -STR_INDUSTRY_NAME_GOLD_MINE.gen :{G=m}zlatého dolu -STR_INDUSTRY_NAME_GOLD_MINE.loc :{G=m}ve zlatém dole -STR_INDUSTRY_NAME_GOLD_MINE.small :{G=m}zlatý důl +STR_INDUSTRY_NAME_GOLD_MINE.gen :zlatého dolu +STR_INDUSTRY_NAME_GOLD_MINE.loc :ve zlatém dole +STR_INDUSTRY_NAME_GOLD_MINE.small :zlatý důl STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC :{G=f}Banka -STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.gen :{G=f}banky -STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.loc :{G=f}v bance -STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.small :{G=f}banka +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.gen :banky +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.loc :v bance +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.small :banka STR_INDUSTRY_NAME_DIAMOND_MINE :{G=m}Diamantový důl -STR_INDUSTRY_NAME_DIAMOND_MINE.gen :{G=m}diamantového dolu -STR_INDUSTRY_NAME_DIAMOND_MINE.loc :{G=m}v diamantovém dole -STR_INDUSTRY_NAME_DIAMOND_MINE.small :{G=m}diamantový důl +STR_INDUSTRY_NAME_DIAMOND_MINE.gen :diamantového dolu +STR_INDUSTRY_NAME_DIAMOND_MINE.loc :v diamantovém dole +STR_INDUSTRY_NAME_DIAMOND_MINE.small :diamantový důl STR_INDUSTRY_NAME_IRON_ORE_MINE :{G=m}Důl na železnou rudu -STR_INDUSTRY_NAME_IRON_ORE_MINE.gen :{G=m}dolu na železnou rudu -STR_INDUSTRY_NAME_IRON_ORE_MINE.loc :{G=m}v dole na železnou rudu -STR_INDUSTRY_NAME_IRON_ORE_MINE.small :{G=m}důl na železnou rudu +STR_INDUSTRY_NAME_IRON_ORE_MINE.gen :dolu na železnou rudu +STR_INDUSTRY_NAME_IRON_ORE_MINE.loc :v dole na železnou rudu +STR_INDUSTRY_NAME_IRON_ORE_MINE.small :důl na železnou rudu STR_INDUSTRY_NAME_FRUIT_PLANTATION :{G=m}Ovocný sad -STR_INDUSTRY_NAME_FRUIT_PLANTATION.gen :{G=m}ovocného sadu -STR_INDUSTRY_NAME_FRUIT_PLANTATION.loc :{G=m}v ovocném sadu -STR_INDUSTRY_NAME_FRUIT_PLANTATION.small :{G=m}ovocný sad +STR_INDUSTRY_NAME_FRUIT_PLANTATION.gen :ovocného sadu +STR_INDUSTRY_NAME_FRUIT_PLANTATION.loc :v ovocném sadu +STR_INDUSTRY_NAME_FRUIT_PLANTATION.small :ovocný sad STR_INDUSTRY_NAME_RUBBER_PLANTATION :{G=f}Kaučuková plantáž -STR_INDUSTRY_NAME_RUBBER_PLANTATION.gen :{G=f}kaučukové plantáže -STR_INDUSTRY_NAME_RUBBER_PLANTATION.loc :{G=f}na kaučukové plantáži -STR_INDUSTRY_NAME_RUBBER_PLANTATION.small :{G=f}kaučuková plantáž +STR_INDUSTRY_NAME_RUBBER_PLANTATION.gen :kaučukové plantáže +STR_INDUSTRY_NAME_RUBBER_PLANTATION.loc :na kaučukové plantáži +STR_INDUSTRY_NAME_RUBBER_PLANTATION.small :kaučuková plantáž STR_INDUSTRY_NAME_WATER_SUPPLY :{G=m}Zdroj vody -STR_INDUSTRY_NAME_WATER_SUPPLY.gen :{G=m}zdroje vody -STR_INDUSTRY_NAME_WATER_SUPPLY.loc :{G=m}ve zdroji vody -STR_INDUSTRY_NAME_WATER_SUPPLY.small :{G=m}zdroj vody +STR_INDUSTRY_NAME_WATER_SUPPLY.gen :zdroje vody +STR_INDUSTRY_NAME_WATER_SUPPLY.loc :ve zdroji vody +STR_INDUSTRY_NAME_WATER_SUPPLY.small :zdroj vody STR_INDUSTRY_NAME_WATER_TOWER :{G=m}Vodojem -STR_INDUSTRY_NAME_WATER_TOWER.gen :{G=m}vodojemu -STR_INDUSTRY_NAME_WATER_TOWER.loc :{G=m}ve vodojemu -STR_INDUSTRY_NAME_WATER_TOWER.small :{G=m}vodojem +STR_INDUSTRY_NAME_WATER_TOWER.gen :vodojemu +STR_INDUSTRY_NAME_WATER_TOWER.loc :ve vodojemu +STR_INDUSTRY_NAME_WATER_TOWER.small :vodojem STR_INDUSTRY_NAME_FACTORY_2 :{G=f}Továrna -STR_INDUSTRY_NAME_FACTORY_2.gen :{G=f}továrny -STR_INDUSTRY_NAME_FACTORY_2.loc :{G=f}v továrně -STR_INDUSTRY_NAME_FACTORY_2.small :{G=f}továrna +STR_INDUSTRY_NAME_FACTORY_2.gen :továrny +STR_INDUSTRY_NAME_FACTORY_2.loc :v továrně +STR_INDUSTRY_NAME_FACTORY_2.small :továrna STR_INDUSTRY_NAME_FARM_2 :{G=f}Farma -STR_INDUSTRY_NAME_FARM_2.gen :{G=f}farmy -STR_INDUSTRY_NAME_FARM_2.loc :{G=f}na farmě -STR_INDUSTRY_NAME_FARM_2.small :{G=f}farma +STR_INDUSTRY_NAME_FARM_2.gen :farmy +STR_INDUSTRY_NAME_FARM_2.loc :na farmě +STR_INDUSTRY_NAME_FARM_2.small :farma STR_INDUSTRY_NAME_LUMBER_MILL :{G=f}Pila -STR_INDUSTRY_NAME_LUMBER_MILL.gen :{G=f}pily -STR_INDUSTRY_NAME_LUMBER_MILL.loc :{G=f}na pile -STR_INDUSTRY_NAME_LUMBER_MILL.small :{G=f}pila +STR_INDUSTRY_NAME_LUMBER_MILL.gen :pily +STR_INDUSTRY_NAME_LUMBER_MILL.loc :na pile +STR_INDUSTRY_NAME_LUMBER_MILL.small :pila STR_INDUSTRY_NAME_COTTON_CANDY_FOREST :{G=m}Les cukrové vaty -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.gen :{G=m}lesa cukrové vaty -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.loc :{G=m}v lese cukrové vaty -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.small :{G=m}les cukrové vaty +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.gen :lesa cukrové vaty +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.loc :v lese cukrové vaty +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.small :les cukrové vaty STR_INDUSTRY_NAME_CANDY_FACTORY :{G=f}Továrna na sladkosti -STR_INDUSTRY_NAME_CANDY_FACTORY.gen :{G=f}továrny na sladkosti -STR_INDUSTRY_NAME_CANDY_FACTORY.loc :{G=f}továrně na sladkosti -STR_INDUSTRY_NAME_CANDY_FACTORY.small :{G=f}továrna na sladkosti +STR_INDUSTRY_NAME_CANDY_FACTORY.gen :továrny na sladkosti +STR_INDUSTRY_NAME_CANDY_FACTORY.loc :továrně na sladkosti +STR_INDUSTRY_NAME_CANDY_FACTORY.small :továrna na sladkosti STR_INDUSTRY_NAME_BATTERY_FARM :{G=f}Farma na baterie -STR_INDUSTRY_NAME_BATTERY_FARM.gen :{G=f}farmy na baterie -STR_INDUSTRY_NAME_BATTERY_FARM.loc :{G=f}na farmě na baterie -STR_INDUSTRY_NAME_BATTERY_FARM.small :{G=f}farma na baterie +STR_INDUSTRY_NAME_BATTERY_FARM.gen :farmy na baterie +STR_INDUSTRY_NAME_BATTERY_FARM.loc :na farmě na baterie +STR_INDUSTRY_NAME_BATTERY_FARM.small :farma na baterie STR_INDUSTRY_NAME_COLA_WELLS :{G=fp}Kolové studny -STR_INDUSTRY_NAME_COLA_WELLS.gen :{G=fp}kolových studen -STR_INDUSTRY_NAME_COLA_WELLS.loc :{G=fp}v kolových studnách -STR_INDUSTRY_NAME_COLA_WELLS.small :{G=fp}kolové studny +STR_INDUSTRY_NAME_COLA_WELLS.gen :kolových studen +STR_INDUSTRY_NAME_COLA_WELLS.loc :v kolových studnách +STR_INDUSTRY_NAME_COLA_WELLS.small :kolové studny STR_INDUSTRY_NAME_TOY_SHOP :{G=n}Hračkářství -STR_INDUSTRY_NAME_TOY_SHOP.gen :{G=n}hračkářství -STR_INDUSTRY_NAME_TOY_SHOP.loc :{G=n}v hračkářství -STR_INDUSTRY_NAME_TOY_SHOP.small :{G=n}hračkářství +STR_INDUSTRY_NAME_TOY_SHOP.gen :hračkářství +STR_INDUSTRY_NAME_TOY_SHOP.loc :v hračkářství +STR_INDUSTRY_NAME_TOY_SHOP.small :hračkářství STR_INDUSTRY_NAME_TOY_FACTORY :{G=f}Továrna na hračky -STR_INDUSTRY_NAME_TOY_FACTORY.gen :{G=f}továrny na hračky -STR_INDUSTRY_NAME_TOY_FACTORY.loc :{G=f}v továrně na hračky -STR_INDUSTRY_NAME_TOY_FACTORY.small :{G=f}továrna na hračky +STR_INDUSTRY_NAME_TOY_FACTORY.gen :továrny na hračky +STR_INDUSTRY_NAME_TOY_FACTORY.loc :v továrně na hračky +STR_INDUSTRY_NAME_TOY_FACTORY.small :továrna na hračky STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS :{G=fp}Plastové fontány -STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.gen :{G=fp}plastových fontán -STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.loc :{G=fp}v plastových fontánách -STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.small :{G=fp}plastové fontány +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.gen :plastových fontán +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.loc :v plastových fontánách +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.small :plastové fontány STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY :{G=f}Sodovkárna -STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.gen :{G=f}sodovkárny -STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.loc :{G=f}v sodovkárně -STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.small :{G=f}sodovkárna +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.gen :sodovkárny +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.loc :v sodovkárně +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.small :sodovkárna STR_INDUSTRY_NAME_BUBBLE_GENERATOR :{G=m}Generátor bublin -STR_INDUSTRY_NAME_BUBBLE_GENERATOR.gen :{G=m}generátoru bublin -STR_INDUSTRY_NAME_BUBBLE_GENERATOR.loc :{G=m}v generátoru bublin -STR_INDUSTRY_NAME_BUBBLE_GENERATOR.small :{G=m}generátor bublin +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.gen :generátoru bublin +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.loc :v generátoru bublin +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.small :generátor bublin STR_INDUSTRY_NAME_TOFFEE_QUARRY :{G=m}Karamelolom -STR_INDUSTRY_NAME_TOFFEE_QUARRY.gen :{G=m}karamelolomu -STR_INDUSTRY_NAME_TOFFEE_QUARRY.loc :{G=m}v karamelolomu -STR_INDUSTRY_NAME_TOFFEE_QUARRY.small :{G=m}karamelolom +STR_INDUSTRY_NAME_TOFFEE_QUARRY.gen :karamelolomu +STR_INDUSTRY_NAME_TOFFEE_QUARRY.loc :v karamelolomu +STR_INDUSTRY_NAME_TOFFEE_QUARRY.small :karamelolom STR_INDUSTRY_NAME_SUGAR_MINE :{G=m}Cukerný důl -STR_INDUSTRY_NAME_SUGAR_MINE.gen :{G=m}cukerného dolu -STR_INDUSTRY_NAME_SUGAR_MINE.loc :{G=m}v cukerném dole -STR_INDUSTRY_NAME_SUGAR_MINE.small :{G=m}cukerný důl +STR_INDUSTRY_NAME_SUGAR_MINE.gen :cukerného dolu +STR_INDUSTRY_NAME_SUGAR_MINE.loc :v cukerném dole +STR_INDUSTRY_NAME_SUGAR_MINE.small :cukerný důl ############ WARNING, using range 0x6000 for strings that are stored in the savegame ############ These strings may never get a new id, or savegames will break! diff --git a/src/lang/danish.txt b/src/lang/danish.txt index 6a8ee45737..4475972032 100644 --- a/src/lang/danish.txt +++ b/src/lang/danish.txt @@ -10,7 +10,7 @@ ##grflangid 0x2d -# $Id: danish.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: danish.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -1120,7 +1120,7 @@ STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Firma indstilli STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Firma indstilling (lagret i gemt spil; påvirker kun aktuelt selskab) STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}Vis alle søgeresultater ved at sætte{}{SILVER}Kategori {BLACK}to {WHITE}{STRING} STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Vis alle søgeresultater ved at sætte{}{SILVER}Indtast {BLACK}til {WHITE}Alle Indstillingstyper -STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Vis alle søgeresultater ved at sætte {} {SILVER}Kategori {BLACK}til {WHITE} {STRING} {BLACK}og {SILVER} Indtast {BLACK}til {WHITE}Alle Indstillingstyper +STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Vis alle søgeresultater ved at sætte{} {SILVER}Kategori {BLACK}til {WHITE} {STRING} {BLACK}og {SILVER} Indtast {BLACK}til {WHITE}Alle Indstillingstyper STR_CONFIG_SETTINGS_NONE :{WHITE}- Ingen - STR_CONFIG_SETTING_OFF :Fra @@ -2687,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Land ejet af se STR_ABOUT_OPENTTD :{WHITE}Om OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original copyright {COPYRIGHT} 1995 Chris Sawyer, Alle rettigheder reserveret STR_ABOUT_VERSION :{BLACK}OpenTTD version {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD teamet +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 OpenTTD teamet # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Gem spil @@ -2889,7 +2889,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Advarsel: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Fejl: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatalt: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}En fatal NewGRF-fejl er opstået: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}En fatal NewGRF-fejl er opstået:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} virker ikke med TTDPatch-versionen rapporteret af OpenTTD. STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} er beregnet til {STRING}-versionen af TTD. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} er designet til brug sammen med {STRING} diff --git a/src/lang/dutch.txt b/src/lang/dutch.txt index dcdfb462e7..bf88dcb2b8 100644 --- a/src/lang/dutch.txt +++ b/src/lang/dutch.txt @@ -10,7 +10,7 @@ ##grflangid 0x1f -# $Id: dutch.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: dutch.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2687,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terrein in bedr STR_ABOUT_OPENTTD :{WHITE}Over OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Originele copyright {COPYRIGHT} 1995 Chris Sawyer, alle rechten voorbehouden STR_ABOUT_VERSION :{BLACK}OpenTTD versie {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Het OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 Het OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Spel Opslaan @@ -2889,7 +2889,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Waarschuwing: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Fout: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatale fout: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Een fatale NewGRF-fout is ontstaan: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Een fatale NewGRF-fout is ontstaan:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} werkt niet met de TTDPatch-versie die is opgegeven door OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} is voor de {STRING} versie van TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} is ontwikkeld voor {STRING} @@ -2907,7 +2907,7 @@ STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING STR_NEWGRF_ERROR_MULTIPLE_ACTION_8 :Bevat meerdere acties 8 (sprite {3:NUM}) STR_NEWGRF_ERROR_READ_BOUNDS :Voorbij het einde van pseudo-sprite gelezen (sprite {3:NUM}) STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}De huidige basis graphics-set mist een aantal sprites..{}Werk de graphics-set bij aub -STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}De momenteel gebruikte basis graphics set mist een aantal sprites. {} Werk de ingestelde basis graphics bij. {} Aangezien u een {YELLOW} ontwikkeling momentopname van OpenTTD{WHITE} speelt, heeft u ook een {YELLOW} ontwikkeling snapshot van de basis graphics set{WHITE} nodig +STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}De momenteel gebruikte basis graphics set mist een aantal sprites.{} Werk de ingestelde basis graphics bij.{} Aangezien u een {YELLOW} ontwikkeling momentopname van OpenTTD{WHITE} speelt, heeft u ook een {YELLOW} ontwikkeling snapshot van de basis graphics set{WHITE} nodig STR_NEWGRF_ERROR_GRM_FAILED :Gevraagde GRF middelen niet beschikbaar (sprite {3:NUM}) STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{1:STRING} is uitgeschakeld door {STRING} STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Ongeldig/onbekend sprite lay-out-formaat (sprite {3:NUM}) @@ -3974,7 +3974,7 @@ STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Toon deb STR_AI_GAME_SCRIPT :{BLACK}Game Script STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Controleer het Game Script log -STR_ERROR_AI_NO_AI_FOUND :Geen geschikte AI gevonden. {} Deze AI is een 'dummy' en voert niets uit.{}Verschillende AI's kunnen worden gedownload via het 'Online Content' systeem +STR_ERROR_AI_NO_AI_FOUND :Geen geschikte AI gevonden.{} Deze AI is een 'dummy' en voert niets uit.{}Verschillende AI's kunnen worden gedownload via het 'Online Content' systeem STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Eén van de actieve scripts is vastgelopen. Meld dit a.u.b. bij de auteur van dit script met een schermprint van het AI/Spel script Debugscherm STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI/Spel script debugvenster is alleen beschikbaar voor de server diff --git a/src/lang/english.txt b/src/lang/english.txt index f19c135e08..7518d37e29 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -10,7 +10,7 @@ ##grflangid 0x01 -# $Id: english.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: english.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2687,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Company-owned l STR_ABOUT_OPENTTD :{WHITE}About OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original copyright {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD version {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Save Game @@ -2874,7 +2874,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Go to th STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Previous sprite STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Proceed to the previous normal sprite, skipping any pseudo/recolour/font sprites and wrapping around from the first sprite to the last STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representation of the currently selected sprite. The alignment is ignored when drawing this sprite -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Move the sprite around, changing the X and Y offsets +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Move the sprite around, changing the X and Y offsets. Ctrl+Click to move the sprite eight units at a time STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Reset relative STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Reset the current relative offsets STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X offset: {NUM}, Y offset: {NUM} (Absolute) diff --git a/src/lang/english_AU.txt b/src/lang/english_AU.txt index 8b9377dbee..21803191fa 100644 --- a/src/lang/english_AU.txt +++ b/src/lang/english_AU.txt @@ -7,10 +7,10 @@ ##digitsepcur , ##decimalsep . ##winlangid 0x0c09 -##grflangid 0x3D +##grflangid 0x3d -# $Id: english_AU.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: english_AU.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -971,6 +971,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Screen r STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Select the screen resolution to use STR_GAME_OPTIONS_RESOLUTION_OTHER :other + + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Base graphics set STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Select the base graphics set to use STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} missing/corrupted file{P "" s} @@ -2660,7 +2662,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Company-owned l STR_ABOUT_OPENTTD :{WHITE}About OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original copyright {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD version {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Save Game @@ -2854,7 +2856,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Warning: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Error: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatal: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}A fatal NewGRF error has occurred: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}A fatal NewGRF error has occurred:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} will not work with the TTDPatch version reported by OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} is for the {STRING} version of TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} is designed to be used with {STRING} diff --git a/src/lang/english_US.txt b/src/lang/english_US.txt index 7f16a7e423..cd654491db 100644 --- a/src/lang/english_US.txt +++ b/src/lang/english_US.txt @@ -10,7 +10,7 @@ ##grflangid 0x00 -# $Id: english_US.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: english_US.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2687,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Company-owned l STR_ABOUT_OPENTTD :{WHITE}About OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original copyright {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD version {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Save Game @@ -2874,7 +2874,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Go to th STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Previous sprite STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Proceed to the previous normal sprite, skipping any pseudo/recolour/font sprites and wrapping around from the first sprite to the last STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representation of the currently selected sprite. The alignment is ignored when drawing this sprite -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Move the sprite around, changing the X and Y offsets +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Move the sprite around, changing the X and Y offsets. Ctrl+Click to move the sprite eight units at a time STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Reset relative STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Reset the current relative offsets STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X offset: {NUM}, Y offset: {NUM} (Absolute) @@ -2889,7 +2889,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Warning: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Error: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatal: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}A fatal NewGRF error has occurred: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}A fatal NewGRF error has occurred:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} will not work with the TTDPatch version reported by OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} is for the {STRING} version of TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} is designed to be used with {STRING} diff --git a/src/lang/esperanto.txt b/src/lang/esperanto.txt index 3e9c82244a..2e4c255b56 100644 --- a/src/lang/esperanto.txt +++ b/src/lang/esperanto.txt @@ -11,7 +11,7 @@ ##case n -# $Id: esperanto.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: esperanto.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -1349,6 +1349,7 @@ STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Komenca urbgran +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metriko (hp) @@ -2262,7 +2263,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Kompanie poseda STR_ABOUT_OPENTTD :{WHITE}Pri OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Origina kopirajto {COPYRIGHT} 1995 Chris Sawyer, Ĉiuj rajtoj rezervitaj STR_ABOUT_VERSION :{BLACK}OpenTTD-versio {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 La teamo de OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 La teamo de OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Konservu Ludon @@ -2426,7 +2427,7 @@ STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT_RAIL_TYPE :Tipo de relo STR_SPRITE_ALIGNER_NEXT_BUTTON :{BLACK}Sekvanta bildeto STR_SPRITE_ALIGNER_GOTO_BUTTON :{BLACK}Iru al bildeto STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Antaŭa bildeto -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Movu ĉirkaŭ la bildeton, ŝanĝante la X kaj Y distancojn +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Movadi la bildeton, ŝanĝante la X kaj Y distancojn. Stir-klako por movi la bildeton je 8 unuoj samtempe STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Elektu bildeto STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Elektu bildeton ie el la ekrano @@ -2437,7 +2438,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Averto: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Eraro: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatalo: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Neriparebla NewGRF-eraro okazis: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Neriparebla NewGRF-eraro okazis:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} ne funkcios kun la versio de TTDPatch menciata de OpenTTD. STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} estas por la {STRING} versio de TTD. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} estas intencita por uzo kun {STRING} @@ -2563,6 +2564,7 @@ STR_GOALS_TEXT :{ORANGE}{STRING # Goal question window ############ Start of Goal Question button list +STR_GOAL_QUESTION_BUTTON_CONTINUE :Daŭrigu ############ End of Goal Question button list # Subsidies window @@ -3365,12 +3367,14 @@ STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Vidu for STR_AI_CONFIG_CAPTION :{WHITE}AI/Ludo Skripto Agordo STR_AI_CONFIG_HUMAN_PLAYER :Homa ludanto STR_AI_CONFIG_RANDOM_AI :Hazarda AI +STR_AI_CONFIG_NONE :(neniu) STR_AI_CONFIG_MOVE_UP :{BLACK}Movi supren STR_AI_CONFIG_MOVE_UP_TOOLTIP :{BLACK}Movi elektitan AI-on supren en la listo STR_AI_CONFIG_MOVE_DOWN :{BLACK}Movi suben STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Movi elektitan AI-on suben en la listo +STR_AI_CONFIG_AI :{SILVER}AIj STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CONFIGURE :{BLACK}Agordi diff --git a/src/lang/estonian.txt b/src/lang/estonian.txt index 4702bef892..5f270ec407 100644 --- a/src/lang/estonian.txt +++ b/src/lang/estonian.txt @@ -11,7 +11,7 @@ ##case g in sü -# $Id: estonian.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: estonian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -912,7 +912,7 @@ STR_NEWS_VEHICLE_IS_UNPROFITABLE :{WHITE}{VEHICLE STR_NEWS_AIRCRAFT_DEST_TOO_FAR :{WHITE}{VEHICLE} ei pääse järgmisse sihtpunkti, sest see asub tegevusraadiusest väljas STR_NEWS_ORDER_REFIT_FAILED :{WHITE}{VEHICLE} - Sõiduk peatus, sest ümberseadistamine ebaõnnestus -STR_NEWS_VEHICLE_AUTORENEW_FAILED :{WHITE}{VEHICLE} uuendamine ebaõnnestus {}{STRING} +STR_NEWS_VEHICLE_AUTORENEW_FAILED :{WHITE}{VEHICLE} uuendamine ebaõnnestus{}{STRING} STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}Uus {STRING} saadaval! STR_NEWS_NEW_VEHICLE_TYPE :{BIG_FONT}{BLACK}{ENGINE} @@ -923,7 +923,7 @@ STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}Jaam {ST STR_NEWS_STATION_NOW_ACCEPTS_CARGO :{WHITE}Jaam {STATION} võtab nüüd vastu veost {STRING} STR_NEWS_STATION_NOW_ACCEPTS_CARGO_AND_CARGO :{WHITE}Jaam {STATION} võtab nüüd vastu veoseid {STRING} ja {STRING} -STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Toetuse pakkumine lõppes: {}{}{STRING.g} kohast {STRING} kohta {STRING} veoste eest ei maksta enam toetusi +STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Toetuse pakkumine lõppes:{}{}{STRING.g} kohast {STRING} kohta {STRING} veoste eest ei maksta enam toetusi STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Toetuse maksmise aeg sai läbi:{}{}{STRING}kohast {STRING} kohta {STRING} eest ei maksta enam edaspidi toetust STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Veoteenusele pakutakse toetust:{}{}{STRING.g}veo eest linnast {STRING} linna {STRING}. Esimesele teenusepakkujale makstakse aasta läbi toetusi! STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Teenusetoetust makstakse ettevõttele {STRING}!{}{}{STRING} kohast {STRING} kohta {STRING} teenuse eest makstakse järgmisel aastal 50% rohkem! @@ -2745,7 +2745,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Ettevõtte maa STR_ABOUT_OPENTTD :{WHITE}OpenTTD lisainfo STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Algne autorikaitse {COPYRIGHT} 1995 Chris Sawyer, kõik õigused kaitstud STR_ABOUT_VERSION :{BLACK}OpenTTD osa {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 OpenTTD meeskond +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 OpenTTD meeskond # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Mängu salvestamine @@ -2947,7 +2947,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Hoiatus: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Viga: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Saatuslik viga: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Esines raske NewGRF-i tõrge: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Esines raske NewGRF-i tõrge:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :OpenTTD väitel {1:STRING} ei tööta selle TTDPatch osaga. STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} on {STRING} TTD osa jaoks. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} on mõeldud kasutamiseks {STRING} diff --git a/src/lang/faroese.txt b/src/lang/faroese.txt index f976204660..0f9dd1d7a4 100644 --- a/src/lang/faroese.txt +++ b/src/lang/faroese.txt @@ -11,7 +11,7 @@ ##gender m f n -# $Id: faroese.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: faroese.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -951,6 +951,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Skerm up STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Vel hvørja skermupploysn tú vil brúka STR_GAME_OPTIONS_RESOLUTION_OTHER :annað + + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Base grafikk sett STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Vel ta base grafikk setti tú vil brúka STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} vantandi/oyðiløgd fíl{P a ir} @@ -2425,7 +2427,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Ogn hjá fyrit STR_ABOUT_OPENTTD :{WHITE}Um OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Upprunalig upphavsrættindi {COPYRIGHT} 1995 Chris Sawyer, Øll rættindi umbiðin STR_ABOUT_VERSION :{BLACK}OpenTTD útgáva {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD toymi +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 OpenTTD toymi # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Goym spæl diff --git a/src/lang/finnish.txt b/src/lang/finnish.txt index f0c8e6ad24..ad18d225ad 100644 --- a/src/lang/finnish.txt +++ b/src/lang/finnish.txt @@ -10,7 +10,7 @@ ##grflangid 0x35 -# $Id: finnish.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: finnish.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2687,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Yhtiön omistam STR_ABOUT_OPENTTD :{WHITE}Tietoja OpenTTD:stä STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Alkuperäiset oikeudet {COPYRIGHT} 1995 Chris Sawyer, kaikki oikeudet pidätetään STR_ABOUT_VERSION :{BLACK}OpenTTD-versio {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Tallenna peli @@ -2889,7 +2889,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Varoitus: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Virhe: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Virhe: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Vakava NewGRF-virhe on tapahtunut: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Vakava NewGRF-virhe on tapahtunut:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} ei toimi OpenTTD:n ilmoittaman TTDPatch-version kanssa STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} on TTD:n {STRING}-versiota varten STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} ja {STRING} on suunniteltu toimimaan yhdessä diff --git a/src/lang/french.txt b/src/lang/french.txt index f2671d4cd4..8982712a75 100644 --- a/src/lang/french.txt +++ b/src/lang/french.txt @@ -11,7 +11,7 @@ ##gender m m2 f -# $Id: french.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: french.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -167,7 +167,7 @@ STR_ABBREV_ALL :{TINY_FONT}ALL # 'Mode' of transport for cargoes STR_PASSENGERS :{COMMA}{NBSP}passager{P "" s} -STR_BAGS :{COMMA}{NBSP}sac{P "" s} +STR_BAGS :{COMMA}{NBSP}sac{P 0 "" s} STR_TONS :{COMMA}{NBSP}tonne{P "" s} STR_LITERS :{COMMA}{NBSP}litre{P "" s} STR_ITEMS :{COMMA}{NBSP}unité{P "" s} @@ -717,7 +717,7 @@ STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Afficher STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Afficher les propriétaires sur la mini-carte STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Cliquer sur un type d'industrie pour activer ou non son affichage.{}Ctrl-clic pour désactiver tous les types d'industrie excepté celui sélectionné.{}Ctrl-clic à nouveau pour réactiver tous les types d'industrie. STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Cliquer sur une compagnie pour afficher ou non ses propriétés.{}Ctr-clic pour désactiver toutes les compagnies exceptée celle sélectionnée.{}Ctrl-clic à nouveau pour réactiver toutes les compagnies. -STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Cliquer sur une marchandise pour basculer l'affichage de ses propriétés. Ctrl-Clic désactive toute les marchandises sauf celle sélectionnée. Ctrl-Clic à nouveau dessus pour activer toutes les marchandises +STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Cliquer sur une marchandise pour basculer l'affichage de ses propriétés. Ctrl-clic désactive toute les marchandises sauf celle sélectionnée. Ctrl-clic à nouveau dessus pour activer toutes les marchandises STR_SMALLMAP_LEGENDA_ROADS :{TINY_FONT}{BLACK}Routes STR_SMALLMAP_LEGENDA_RAILROADS :{TINY_FONT}{BLACK}Voies ferrées @@ -815,8 +815,8 @@ STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDE STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}{STRING} a sponsorisé la construction de la nouvelle ville {TOWN}{NBSP}! -STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}Un{G "" "" e} nouv{G eau el elle} {STRING} en construction près de {TOWN}{NBSP}! -STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}Un{G "" "" e} nouv{G eau el elle} {STRING} s'implante près de {TOWN}{NBSP}! +STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}Un{G 0 "" "" e} nouv{G 0 eau el elle} {STRING} en construction près de {TOWN}{NBSP}! +STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}Un{G 0 "" "" e} nouv{G 0 eau el elle} {STRING} s'implante près de {TOWN}{NBSP}! STR_NEWS_INDUSTRY_CLOSURE_GENERAL :{BIG_FONT}{BLACK}{STRING} annonce une fermeture imminente{NBSP}! STR_NEWS_INDUSTRY_CLOSURE_SUPPLY_PROBLEMS :{BIG_FONT}{BLACK}Des problèmes d'approvisionnement obligent {STRING} à fermer bientôt{NBSP}! @@ -858,9 +858,9 @@ STR_NEWS_AIRCRAFT_DEST_TOO_FAR :{WHITE}{VEHICLE STR_NEWS_ORDER_REFIT_FAILED :{WHITE}L'échec du réaménagement a stoppé {VEHICLE} STR_NEWS_VEHICLE_AUTORENEW_FAILED :{WHITE}Le renouvellement automatique de {VEHICLE} a échoué{}{STRING} -STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}Nouv{G eau el elle} {STRING} disponible{NBSP}! +STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}Nouv{G 0 eau el elle} {STRING} disponible{NBSP}! STR_NEWS_NEW_VEHICLE_TYPE :{BIG_FONT}{BLACK}{ENGINE} -STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Nouv{G eau el elle} {STRING} disponible{NBSP}! - {ENGINE} +STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Nouv{G 0 eau el elle} {STRING} disponible{NBSP}! - {ENGINE} STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO :{WHITE}{STATION} n'accepte plus {STRING} STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}{STATION} n'accepte plus {STRING} ou {STRING} @@ -1215,8 +1215,8 @@ STR_CONFIG_SETTING_SIGNALSIDE_RIGHT :à droite de la STR_CONFIG_SETTING_SHOWFINANCES :Afficher le bilan financier en fin d'année{NBSP}: {STRING} STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :Si activé, le bilan financier sera affiché à la fin de chaque année pour permettre un contrôle rapide de l'état de la compagnie. STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Les nouveaux ordres sont « sans arrêt » par défaut{NBSP}: {STRING} -STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Normalement, un véhicule s'arrête dans chaque station qu'il traverse. En activant ce paramètre, il traversera toutes les stations sur le chemin de sa destination finale sans s'arrêter. Noter que ce paramètre défini uniquement une valeur par défaut pour les nouveaux ordres. Les ordres peuvent par ailleurs être réglés individuellement avec un autre comportement -STR_CONFIG_SETTING_STOP_LOCATION :Les nouveaux ordres arrêtent les trains {G 0:2 au au "à la"} {STRING} du quai par défaut +STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Normalement, un véhicule s'arrête dans chaque station qu'il traverse. En activant ce paramètre, il traversera toutes les stations sur le chemin de sa destination finale sans s'arrêter. Noter que ce paramètre définit uniquement une valeur par défaut pour les nouveaux ordres. Les ordres peuvent par après être réglés individuellement avec un autre comportement +STR_CONFIG_SETTING_STOP_LOCATION :Les nouveaux ordres arrêtent les trains {G 0 au au "à la"} {STRING} du quai par défaut STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :Endroit du quai où un train s'arrête par défaut. "queue" signifie proche du point d'entrée. "milieu" signifie au milieu du quai. "tête" signifie à l'opposé du point d'entrée. Noter que ce paramètre défini uniquement une valeur par défaut pour les nouveaux ordres. Les ordres peuvent par ailleurs être réglés individuellement avec un autre comportement STR_CONFIG_SETTING_STOP_LOCATION_NEAR_END :{G=f}queue STR_CONFIG_SETTING_STOP_LOCATION_MIDDLE :{G=m}milieu @@ -1407,7 +1407,7 @@ STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST :Premier disponi STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_LAST :Dernier disponible STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_MOST_USED :Le plus utilisé STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION :Afficher les réservations de chemin sur les voies{NBSP}: {STRING} -STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION_HELPTEXT :Donne une couleur différente aux voies réservées pour aider à résoudre les problèmes de trains refusant d'entrer dans des blocs basés sur le chemin +STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION_HELPTEXT :Donne une couleur différente aux voies réservées afin d'aider à résoudre les problèmes de trains refusant de s'engager dans des tronçons encadrés par des signaux de passage STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Conserver les outils de construction actifs après usage{NBSP}: {STRING} STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Garde les outils de construction de ponts, tunnels, etc. ouverts après usage STR_CONFIG_SETTING_EXPENSES_LAYOUT :Regrouper les dépenses dans la fenêtre des finances{NBSP}: {STRING} @@ -1464,15 +1464,15 @@ STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Nombre maximum STR_CONFIG_SETTING_SERVINT_ISPERCENT :Les intervalles de service sont en pourcentage{NBSP}: {STRING} STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Choisir si l'entretien des véhicule est activé par le temps passé depuis le dernier entretien ou par la fiabilité passant sous un pourcentage de la fiabilité maximum STR_CONFIG_SETTING_SERVINT_TRAINS :Intervalle d'entretien par défaut pour les trains{NBSP}: {STRING} -STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Défini l'intervalle d'entretien par défaut des nouveaux véhicules ferroviaires, si aucun intervalle d'entretien n'est définit pour le véhicule +STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Définit l'intervalle d'entretien par défaut des nouveaux véhicules ferroviaires, si aucun intervalle d'entretien n'est défini pour le véhicule STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}jour{P 0 "" s}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Désactivé STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Intervalle d'entretien par défaut pour les véhicules routiers{NBSP}: {STRING} -STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Défini l'intervalle d'entretien par défaut des nouveaux véhicules routiers, si aucun intervalle d'entretien n'est définit pour le véhicule +STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Définit l'intervalle d'entretien par défaut des nouveaux véhicules routiers, si aucun intervalle d'entretien n'est défini pour le véhicule STR_CONFIG_SETTING_SERVINT_AIRCRAFT :Intervalle d'entretien par défaut pour les aéronefs{NBSP}: {STRING} -STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Défini l'intervalle d'entretien par défaut des nouveaux aéronefs, si aucun intervalle d'entretien n'est définit pour le véhicule +STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Définit l'intervalle d'entretien par défaut des nouveaux aéronefs, si aucun intervalle d'entretien n'est défini pour le véhicule STR_CONFIG_SETTING_SERVINT_SHIPS :Intervalle d'entretien par défaut pour les navires{NBSP}: {STRING} -STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Défini l'intervalle d'entretien par défaut des nouveaux navires, si aucun intervalle d'entretien n'est définit pour le véhicule +STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Définit l'intervalle d'entretien par défaut des nouveaux navires, si aucun intervalle d'entretien n'est défini pour le véhicule STR_CONFIG_SETTING_NOSERVICE :Désactiver l'entretien quand les pannes sont inactives{NBSP}: {STRING} STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Lorsqu'il est activé, les véhicules ne sont pas entretenus s'ils ne peuvent pas tomber en panne STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Activer la vitesse limite des wagons{NBSP}: {STRING} @@ -1814,8 +1814,8 @@ STR_LIVERY_TRAIN_TOOLTIP :{BLACK}Montrer STR_LIVERY_ROAD_VEHICLE_TOOLTIP :{BLACK}Montrer les livrées de véhicules routiers STR_LIVERY_SHIP_TOOLTIP :{BLACK}Montrer les livrées de navires STR_LIVERY_AIRCRAFT_TOOLTIP :{BLACK}Montrer les livrées d'aéronefs -STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Choisir la couleur primaire de la livrée sélectionnée. Ctrl-Clic appliquera cette couleur à toutes les livrées. -STR_LIVERY_SECONDARY_TOOLTIP :{BLACK}Choisir la couleur secondaire de la livrée sélectionnée. Ctrl-Clic appliquera cette couleur à toutes les livrées. +STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Choisir la couleur primaire de la livrée sélectionnée. Ctrl-clic appliquera cette couleur à toutes les livrées. +STR_LIVERY_SECONDARY_TOOLTIP :{BLACK}Choisir la couleur secondaire de la livrée sélectionnée. Ctrl-clic appliquera cette couleur à toutes les livrées. STR_LIVERY_PANEL_TOOLTIP :{BLACK}Sélectionner la livrée à modifier ou plusieurs d'entre elles par Ctrl-clic. Cliquer sur la case à cocher pour en activer l'utilisation ou non. STR_LIVERY_DEFAULT :Livrée standard @@ -2221,7 +2221,7 @@ STR_CONTENT_DETAIL_SUBTITLE_SELECTED :{SILVER}Pré-s STR_CONTENT_DETAIL_SUBTITLE_AUTOSELECTED :{SILVER}Cette dépendance a été sélectionnée pour être téléchargée STR_CONTENT_DETAIL_SUBTITLE_ALREADY_HERE :{SILVER}Vous avez déjà ceci STR_CONTENT_DETAIL_SUBTITLE_DOES_NOT_EXIST :{SILVER}Ce module est inconnu et ne peut pas être téléchargé dans OpenTTD -STR_CONTENT_DETAIL_UPDATE :{SILVER}Ceci est un remplacement pour {G "un" "des" "une"} {STRING} existant{G 0 "" "s" "e"} +STR_CONTENT_DETAIL_UPDATE :{SILVER}Ceci est un remplacement pour {G 0 "un" "des" "une"} {STRING} existant{G 0 "" "s" "e"} STR_CONTENT_DETAIL_NAME :{SILVER}Nom{NBSP}: {WHITE}{STRING} STR_CONTENT_DETAIL_VERSION :{SILVER}Version{NBSP}: {WHITE}{STRING} STR_CONTENT_DETAIL_DESCRIPTION :{SILVER}Description{NBSP}: {WHITE}{STRING} @@ -2688,7 +2688,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terrain apparte STR_ABOUT_OPENTTD :{WHITE}À propos de OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright original {COPYRIGHT} 1995 Chris Sawyer, Tous droits réservés STR_ABOUT_VERSION :{BLACK}OpenTTD version {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 L'équipe OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 L'équipe OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Sauvegarder la partie @@ -2875,7 +2875,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Se rendr STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Sprite précédent STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Se rendre au précédent sprite normal, en ignorant les pseudo-sprites et les sprites de recoloration et de police, et en bouclant du premier vers le dernier STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representation du sprite actuellement séléctionné. L'alignement est ignoré lors de l'affichage de ce sprite -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Déplacer le sprite, en modifiant les décalages X et Y +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Déplacer le sprite, en modifiant les décalages X et Y. Ctrl-clic pour déplacer le sprite de 8 unités à la fois. STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Réinitialiser les relatifs STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Réinitialiser les décalages relatifs courants STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Décalage X{NBSP}: {NUM}, décalage Y{NBSP}: {NUM} (Absolu) @@ -3768,7 +3768,7 @@ STR_ORDER_TOOLTIP_UNLOAD :{BLACK}Modifier STR_ORDER_REFIT :{BLACK}Réaménager STR_ORDER_REFIT_TOOLTIP :{BLACK}Choisir pour quelle cargaison réaménager avec cet ordre.{}Ctrl-clic pour retirer l'instruction de réaménagement. STR_ORDER_REFIT_AUTO :{BLACK}Réaménagement aux stations -STR_ORDER_REFIT_AUTO_TOOLTIP :{BLACK}Sélectionner pour quel type de cargaison cet ordre va réaménager.{}Ctrl-Clic pour retirer l'instruction de réaménagement. Le réaménagement aux stations ne sera fait que si le véhicule l'autorise. +STR_ORDER_REFIT_AUTO_TOOLTIP :{BLACK}Sélectionner pour quel type de cargaison cet ordre va réaménager. Ctrl-clic pour retirer l'instruction de réaménagement. Le réaménagement aux stations ne sera fait que si le véhicule l'autorise. STR_ORDER_DROP_REFIT_AUTO :Cargaison fixée STR_ORDER_DROP_REFIT_AUTO_ANY :Cargaison disponible diff --git a/src/lang/gaelic.txt b/src/lang/gaelic.txt index f7ccae0a12..213b4d4659 100644 --- a/src/lang/gaelic.txt +++ b/src/lang/gaelic.txt @@ -12,7 +12,7 @@ ##case nom gen dat voc -# $Id: gaelic.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: gaelic.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -930,9 +930,9 @@ STR_SMALLMAP_LEGENDA_TRANSPORT_ROUTES :{TINY_FONT}{BLA STR_SMALLMAP_LEGENDA_FOREST :{TINY_FONT}{BLACK}Coille STR_SMALLMAP_LEGENDA_RAILROAD_STATION :{TINY_FONT}{BLACK}Stèisean rèile STR_SMALLMAP_LEGENDA_TRUCK_LOADING_BAY :{G=m}{TINY_FONT}{BLACK}Ionad-luchdaidh nan làraidh -STR_SMALLMAP_LEGENDA_TRUCK_LOADING_BAY.nom :{G=m}{TINY_FONT}{BLACK}Ionad-luchdaidh nan làraidh -STR_SMALLMAP_LEGENDA_TRUCK_LOADING_BAY.gen :{G=m}{TINY_FONT}{BLACK}Ionaid-luchdaidh nan làraidh -STR_SMALLMAP_LEGENDA_TRUCK_LOADING_BAY.dat :{G=m}{TINY_FONT}{BLACK}Ionad-luchdaidh nan làraidh +STR_SMALLMAP_LEGENDA_TRUCK_LOADING_BAY.nom :{TINY_FONT}{BLACK}Ionad-luchdaidh nan làraidh +STR_SMALLMAP_LEGENDA_TRUCK_LOADING_BAY.gen :{TINY_FONT}{BLACK}Ionaid-luchdaidh nan làraidh +STR_SMALLMAP_LEGENDA_TRUCK_LOADING_BAY.dat :{TINY_FONT}{BLACK}Ionad-luchdaidh nan làraidh STR_SMALLMAP_LEGENDA_BUS_STATION :{TINY_FONT}{BLACK}Stèisean bus STR_SMALLMAP_LEGENDA_AIRPORT_HELIPORT :{TINY_FONT}{BLACK}Port-adhair/port-heileacoptair STR_SMALLMAP_LEGENDA_DOCK :{G=m}{TINY_FONT}{BLACK}Port @@ -2643,9 +2643,9 @@ STR_DEPOT_BUILD_SHIP_ORIENTATION_TOOLTIP :{BLACK}Tagh com # Dock construction window STR_STATION_BUILD_DOCK_CAPTION :{G=m}{WHITE}Port -STR_STATION_BUILD_DOCK_CAPTION.nom :{G=m}{WHITE}Port -STR_STATION_BUILD_DOCK_CAPTION.gen :{G=m}{WHITE}Puirt -STR_STATION_BUILD_DOCK_CAPTION.dat :{G=m}{WHITE}Port +STR_STATION_BUILD_DOCK_CAPTION.nom :{WHITE}Port +STR_STATION_BUILD_DOCK_CAPTION.gen :{WHITE}Puirt +STR_STATION_BUILD_DOCK_CAPTION.dat :{WHITE}Port # Airport toolbar STR_TOOLBAR_AIRCRAFT_CAPTION :{WHITE}Puirt-adhair @@ -2664,14 +2664,14 @@ STR_AIRPORT_INTERNATIONAL :Eadar-nàiseant STR_AIRPORT_COMMUTER :Iomlaideach STR_AIRPORT_INTERCONTINENTAL :Thar chuain STR_AIRPORT_HELIPORT :{G=m}Port-heileacoptair -STR_AIRPORT_HELIPORT.nom :{G=m}Port-heileacoptair -STR_AIRPORT_HELIPORT.gen :{G=m}Puirt-heileacoptair -STR_AIRPORT_HELIPORT.dat :{G=m}Port-heileacoptair +STR_AIRPORT_HELIPORT.nom :Port-heileacoptair +STR_AIRPORT_HELIPORT.gen :Puirt-heileacoptair +STR_AIRPORT_HELIPORT.dat :Port-heileacoptair STR_AIRPORT_HELIDEPOT :Hangar-heileacoptair STR_AIRPORT_HELISTATION :{G=m}Stèisean heileacoptair -STR_AIRPORT_HELISTATION.nom :{G=m}Stèisean heileacoptair -STR_AIRPORT_HELISTATION.gen :{G=m}Stèisein heileacoptair -STR_AIRPORT_HELISTATION.dat :{G=m}Stèisean heileacoptair +STR_AIRPORT_HELISTATION.nom :Stèisean heileacoptair +STR_AIRPORT_HELISTATION.gen :Stèisein heileacoptair +STR_AIRPORT_HELISTATION.dat :Stèisean heileacoptair STR_AIRPORT_CLASS_SMALL :Puirt-adhair beaga STR_AIRPORT_CLASS_LARGE :Puirt-adhair mòra @@ -2851,26 +2851,26 @@ STR_LAI_TREE_NAME_RAINFOREST :Coille-uisge STR_LAI_TREE_NAME_CACTUS_PLANTS :Cactasan STR_LAI_STATION_DESCRIPTION_RAILROAD_STATION :{G=m}Stèisean rèile -STR_LAI_STATION_DESCRIPTION_RAILROAD_STATION.nom :{G=m}Stèisean rèile -STR_LAI_STATION_DESCRIPTION_RAILROAD_STATION.gen :{G=m}Stèisein rèile -STR_LAI_STATION_DESCRIPTION_RAILROAD_STATION.dat :{G=m}Stèisean rèile +STR_LAI_STATION_DESCRIPTION_RAILROAD_STATION.nom :Stèisean rèile +STR_LAI_STATION_DESCRIPTION_RAILROAD_STATION.gen :Stèisein rèile +STR_LAI_STATION_DESCRIPTION_RAILROAD_STATION.dat :Stèisean rèile STR_LAI_STATION_DESCRIPTION_AIRCRAFT_HANGAR :{G=m}Hangar -STR_LAI_STATION_DESCRIPTION_AIRCRAFT_HANGAR.nom :{G=m}Hangar -STR_LAI_STATION_DESCRIPTION_AIRCRAFT_HANGAR.gen :{G=m}Hangair -STR_LAI_STATION_DESCRIPTION_AIRCRAFT_HANGAR.dat :{G=m}Hangar +STR_LAI_STATION_DESCRIPTION_AIRCRAFT_HANGAR.nom :Hangar +STR_LAI_STATION_DESCRIPTION_AIRCRAFT_HANGAR.gen :Hangair +STR_LAI_STATION_DESCRIPTION_AIRCRAFT_HANGAR.dat :Hangar STR_LAI_STATION_DESCRIPTION_AIRPORT :{G=m}Port-adhair -STR_LAI_STATION_DESCRIPTION_AIRPORT.nom :{G=m}Port-adhair -STR_LAI_STATION_DESCRIPTION_AIRPORT.gen :{G=m}Puirt-adhair -STR_LAI_STATION_DESCRIPTION_AIRPORT.dat :{G=m}Port-adhair +STR_LAI_STATION_DESCRIPTION_AIRPORT.nom :Port-adhair +STR_LAI_STATION_DESCRIPTION_AIRPORT.gen :Puirt-adhair +STR_LAI_STATION_DESCRIPTION_AIRPORT.dat :Port-adhair STR_LAI_STATION_DESCRIPTION_TRUCK_LOADING_AREA :Ionad-luchdaidh nan làraidh STR_LAI_STATION_DESCRIPTION_BUS_STATION :{G=m}Stèisean bus -STR_LAI_STATION_DESCRIPTION_BUS_STATION.nom :{G=m}Stèisean bus -STR_LAI_STATION_DESCRIPTION_BUS_STATION.gen :{G=m}Stèisein bus -STR_LAI_STATION_DESCRIPTION_BUS_STATION.dat :{G=m}Stèisean bus +STR_LAI_STATION_DESCRIPTION_BUS_STATION.nom :Stèisean bus +STR_LAI_STATION_DESCRIPTION_BUS_STATION.gen :Stèisein bus +STR_LAI_STATION_DESCRIPTION_BUS_STATION.dat :Stèisean bus STR_LAI_STATION_DESCRIPTION_SHIP_DOCK :{G=m}Port -STR_LAI_STATION_DESCRIPTION_SHIP_DOCK.nom :{G=m}Port -STR_LAI_STATION_DESCRIPTION_SHIP_DOCK.gen :{G=m}Puirt -STR_LAI_STATION_DESCRIPTION_SHIP_DOCK.dat :{G=m}Port +STR_LAI_STATION_DESCRIPTION_SHIP_DOCK.nom :Port +STR_LAI_STATION_DESCRIPTION_SHIP_DOCK.gen :Puirt +STR_LAI_STATION_DESCRIPTION_SHIP_DOCK.dat :Port STR_LAI_STATION_DESCRIPTION_BUOY :Fleodrainn STR_LAI_STATION_DESCRIPTION_WAYPOINT :Puing-thurais @@ -2880,9 +2880,9 @@ STR_LAI_WATER_DESCRIPTION_LOCK :Loc STR_LAI_WATER_DESCRIPTION_RIVER :Abhainn STR_LAI_WATER_DESCRIPTION_COAST_OR_RIVERBANK :Oirthir no bot STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT :{G=m}Cala -STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT.nom :{G=m}Cala -STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT.gen :{G=m}Calaidh -STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT.dat :{G=m}Cala +STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT.nom :Cala +STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT.gen :Calaidh +STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT.dat :Cala # Industries come directly from their industry names @@ -2916,7 +2916,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Tìr a' chompan STR_ABOUT_OPENTTD :{WHITE}Mu dheidhinn OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Còir-lethbhreac tùsail {COPYRIGHT} 1995 Chris Sawyer, a h-uile còir glèidhte STR_ABOUT_VERSION :{BLACK}OpenTTD tionndadh {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 An sgioba OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 An sgioba OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Sàbhail an geama @@ -3118,7 +3118,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Rabhadh: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Mearachd: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Marbhtach: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Thachair mearachd NewGRF marbhtach: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Thachair mearachd NewGRF marbhtach:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :Chan obraich {1:STRING} leis an tionndadh aig TTDPatch a chaidh aithris le OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :Tha {1:STRING} airson tionndadh {STRING} aig TTD STR_NEWGRF_ERROR_UNSET_SWITCH :Chaidh {1:STRING} a dhealbhachadh gus cleachdadh le {STRING} @@ -4712,9 +4712,9 @@ STR_TOWN_BUILDING_NAME_LARGE_OFFICE_BLOCK_1 :{G=m}Ionad oifi STR_TOWN_BUILDING_NAME_TOWN_HOUSES_1 :Taighean-baile STR_TOWN_BUILDING_NAME_HOTEL_1 :{G=m}Taigh-òsta STR_TOWN_BUILDING_NAME_STATUE_1 :{G=f}Ìomhaigh -STR_TOWN_BUILDING_NAME_STATUE_1.nom :{G=f}Ìomhaigh -STR_TOWN_BUILDING_NAME_STATUE_1.gen :{G=f}Ìomhaighe -STR_TOWN_BUILDING_NAME_STATUE_1.dat :{G=f}Ìomhaigh +STR_TOWN_BUILDING_NAME_STATUE_1.nom :Ìomhaigh +STR_TOWN_BUILDING_NAME_STATUE_1.gen :Ìomhaighe +STR_TOWN_BUILDING_NAME_STATUE_1.dat :Ìomhaigh STR_TOWN_BUILDING_NAME_FOUNTAIN_1 :{G=m}Fuaran STR_TOWN_BUILDING_NAME_PARK_1 :{G=f}Pàirc STR_TOWN_BUILDING_NAME_OFFICE_BLOCK_2 :{G=m}Ionad oifisean @@ -4731,42 +4731,42 @@ STR_TOWN_BUILDING_NAME_TALL_OFFICE_BLOCK_2 :Ionad oifisean STR_TOWN_BUILDING_NAME_SHOPS_AND_OFFICES_2 :Bùthan is oifisean STR_TOWN_BUILDING_NAME_SHOPS_AND_OFFICES_3 :Bùthan is oifisean STR_TOWN_BUILDING_NAME_THEATER_1 :{G=m}Taigh-cluiche -STR_TOWN_BUILDING_NAME_THEATER_1.nom :{G=m}Taigh-cluiche -STR_TOWN_BUILDING_NAME_THEATER_1.gen :{G=m}Taighe-chluiche -STR_TOWN_BUILDING_NAME_THEATER_1.dat :{G=m}Taigh-cluiche +STR_TOWN_BUILDING_NAME_THEATER_1.nom :Taigh-cluiche +STR_TOWN_BUILDING_NAME_THEATER_1.gen :Taighe-chluiche +STR_TOWN_BUILDING_NAME_THEATER_1.dat :Taigh-cluiche STR_TOWN_BUILDING_NAME_STADIUM_2 :{G=m}Stèideam -STR_TOWN_BUILDING_NAME_STADIUM_2.nom :{G=m}Stèideam -STR_TOWN_BUILDING_NAME_STADIUM_2.gen :{G=m}Stèideim -STR_TOWN_BUILDING_NAME_STADIUM_2.dat :{G=m}Stèideam +STR_TOWN_BUILDING_NAME_STADIUM_2.nom :Stèideam +STR_TOWN_BUILDING_NAME_STADIUM_2.gen :Stèideim +STR_TOWN_BUILDING_NAME_STADIUM_2.dat :Stèideam STR_TOWN_BUILDING_NAME_OFFICES_1 :{G=f}Oifisean STR_TOWN_BUILDING_NAME_HOUSES_2 :{G=m}Taighean -STR_TOWN_BUILDING_NAME_HOUSES_2.nom :{G=m}Taighean -STR_TOWN_BUILDING_NAME_HOUSES_2.gen :{G=m}Thaighean -STR_TOWN_BUILDING_NAME_HOUSES_2.dat :{G=m}Taighean +STR_TOWN_BUILDING_NAME_HOUSES_2.nom :Taighean +STR_TOWN_BUILDING_NAME_HOUSES_2.gen :Thaighean +STR_TOWN_BUILDING_NAME_HOUSES_2.dat :Taighean STR_TOWN_BUILDING_NAME_CINEMA_1 :{G=m}Taigh-dhealbh -STR_TOWN_BUILDING_NAME_CINEMA_1.nom :{G=m}Taigh-dhealbh -STR_TOWN_BUILDING_NAME_CINEMA_1.gen :{G=m}Taighe-dhealbh -STR_TOWN_BUILDING_NAME_CINEMA_1.dat :{G=m}Taigh-dhealbh +STR_TOWN_BUILDING_NAME_CINEMA_1.nom :Taigh-dhealbh +STR_TOWN_BUILDING_NAME_CINEMA_1.gen :Taighe-dhealbh +STR_TOWN_BUILDING_NAME_CINEMA_1.dat :Taigh-dhealbh STR_TOWN_BUILDING_NAME_SHOPPING_MALL_1 :{G=m}Ionad bhùthan -STR_TOWN_BUILDING_NAME_SHOPPING_MALL_1.nom :{G=m}Ionad bhùthan -STR_TOWN_BUILDING_NAME_SHOPPING_MALL_1.gen :{G=m}Ionaid bhùthan -STR_TOWN_BUILDING_NAME_SHOPPING_MALL_1.dat :{G=m}Ionad bhùthan +STR_TOWN_BUILDING_NAME_SHOPPING_MALL_1.nom :Ionad bhùthan +STR_TOWN_BUILDING_NAME_SHOPPING_MALL_1.gen :Ionaid bhùthan +STR_TOWN_BUILDING_NAME_SHOPPING_MALL_1.dat :Ionad bhùthan STR_TOWN_BUILDING_NAME_IGLOO_1 :{G=m}Taigh-sneachda -STR_TOWN_BUILDING_NAME_IGLOO_1.nom :{G=m}Taigh-sneachda -STR_TOWN_BUILDING_NAME_IGLOO_1.gen :{G=m}Taighe-shneachda -STR_TOWN_BUILDING_NAME_IGLOO_1.dat :{G=m}Taigh-sneachda +STR_TOWN_BUILDING_NAME_IGLOO_1.nom :Taigh-sneachda +STR_TOWN_BUILDING_NAME_IGLOO_1.gen :Taighe-shneachda +STR_TOWN_BUILDING_NAME_IGLOO_1.dat :Taigh-sneachda STR_TOWN_BUILDING_NAME_TEPEES_1 :{G=m}Tìpidhean -STR_TOWN_BUILDING_NAME_TEPEES_1.nom :{G=m}Tìpidhean -STR_TOWN_BUILDING_NAME_TEPEES_1.gen :{G=m}Thìpidhean -STR_TOWN_BUILDING_NAME_TEPEES_1.dat :{G=m}Tìpidhean +STR_TOWN_BUILDING_NAME_TEPEES_1.nom :Tìpidhean +STR_TOWN_BUILDING_NAME_TEPEES_1.gen :Thìpidhean +STR_TOWN_BUILDING_NAME_TEPEES_1.dat :Tìpidhean STR_TOWN_BUILDING_NAME_TEAPOT_HOUSE_1 :{G=m}Taigh poit-teatha -STR_TOWN_BUILDING_NAME_TEAPOT_HOUSE_1.nom :{G=m}Taigh poit-teatha -STR_TOWN_BUILDING_NAME_TEAPOT_HOUSE_1.gen :{G=m}Taighe poit-teatha -STR_TOWN_BUILDING_NAME_TEAPOT_HOUSE_1.dat :{G=m}Taigh poit-teatha +STR_TOWN_BUILDING_NAME_TEAPOT_HOUSE_1.nom :Taigh poit-teatha +STR_TOWN_BUILDING_NAME_TEAPOT_HOUSE_1.gen :Taighe poit-teatha +STR_TOWN_BUILDING_NAME_TEAPOT_HOUSE_1.dat :Taigh poit-teatha STR_TOWN_BUILDING_NAME_PIGGY_BANK_1 :{G=f}Mucag-airgid -STR_TOWN_BUILDING_NAME_PIGGY_BANK_1.nom :{G=f}Mucag-airgid -STR_TOWN_BUILDING_NAME_PIGGY_BANK_1.gen :{G=f}Mucaige-airgid -STR_TOWN_BUILDING_NAME_PIGGY_BANK_1.dat :{G=f}Mucag-airgid +STR_TOWN_BUILDING_NAME_PIGGY_BANK_1.nom :Mucag-airgid +STR_TOWN_BUILDING_NAME_PIGGY_BANK_1.gen :Mucaige-airgid +STR_TOWN_BUILDING_NAME_PIGGY_BANK_1.dat :Mucag-airgid ##id 0x4800 # industry names @@ -4940,15 +4940,15 @@ STR_SV_STNAME_WOODS :Coille {STRING} STR_SV_STNAME_LAKESIDE :Loch {STRING} STR_SV_STNAME_EXCHANGE :Iomlaid {STRING} STR_SV_STNAME_AIRPORT :{G=m}Port-adhair {STRING} -STR_SV_STNAME_AIRPORT.nom :{G=m}Port-adhair - {STRING} -STR_SV_STNAME_AIRPORT.gen :{G=m}Puirt-adhair - {STRING} -STR_SV_STNAME_AIRPORT.dat :{G=m}Port-adhair - {STRING} +STR_SV_STNAME_AIRPORT.nom :Port-adhair - {STRING} +STR_SV_STNAME_AIRPORT.gen :Puirt-adhair - {STRING} +STR_SV_STNAME_AIRPORT.dat :Port-adhair - {STRING} STR_SV_STNAME_OILFIELD :Achadh-ola {STRING} STR_SV_STNAME_MINES :Mèinnean {STRING} STR_SV_STNAME_DOCKS :{G=m}Port {STRING} -STR_SV_STNAME_DOCKS.nom :{G=m}Port - {STRING} -STR_SV_STNAME_DOCKS.gen :{G=m}Puirt - {STRING} -STR_SV_STNAME_DOCKS.dat :{G=m}Port - {STRING} +STR_SV_STNAME_DOCKS.nom :Port - {STRING} +STR_SV_STNAME_DOCKS.gen :Puirt - {STRING} +STR_SV_STNAME_DOCKS.dat :Port - {STRING} STR_SV_STNAME_BUOY :{STRING} STR_SV_STNAME_WAYPOINT :{STRING} ##id 0x6020 @@ -4958,9 +4958,9 @@ STR_SV_STNAME_BRANCH :Meur {STRING} STR_SV_STNAME_UPPER :{STRING} Uachdarach STR_SV_STNAME_LOWER :{STRING} Iochdarach STR_SV_STNAME_HELIPORT :{G=m}Port-heileacoptair {STRING} -STR_SV_STNAME_HELIPORT.nom :{G=m}Port-heileacoptair - {STRING} -STR_SV_STNAME_HELIPORT.gen :{G=m}Puirt-heileacoptair - {STRING} -STR_SV_STNAME_HELIPORT.dat :{G=m}Port-heileacoptair - {STRING} +STR_SV_STNAME_HELIPORT.nom :Port-heileacoptair - {STRING} +STR_SV_STNAME_HELIPORT.gen :Puirt-heileacoptair - {STRING} +STR_SV_STNAME_HELIPORT.dat :Port-heileacoptair - {STRING} STR_SV_STNAME_FOREST :Coille {STRING} STR_SV_STNAME_FALLBACK :{STRING} Stèisean {NUM} ############ end of savegame specific region! @@ -5240,21 +5240,21 @@ STR_FORMAT_WAYPOINT_NAME :Puing-thurais { STR_FORMAT_WAYPOINT_NAME_SERIAL :Puing-thurais {1:COMMA} {0:TOWN} STR_FORMAT_DEPOT_NAME_TRAIN :{G=f}Trèan-lann {TOWN} -STR_FORMAT_DEPOT_NAME_TRAIN.nom :{G=f}Trèan-lann - {TOWN} -STR_FORMAT_DEPOT_NAME_TRAIN.gen :{G=f}Trèan-lainn - {TOWN} -STR_FORMAT_DEPOT_NAME_TRAIN.dat :{G=f}Trèan-lann - {TOWN} +STR_FORMAT_DEPOT_NAME_TRAIN.nom :Trèan-lann - {TOWN} +STR_FORMAT_DEPOT_NAME_TRAIN.gen :Trèan-lainn - {TOWN} +STR_FORMAT_DEPOT_NAME_TRAIN.dat :Trèan-lann - {TOWN} STR_FORMAT_DEPOT_NAME_TRAIN_SERIAL :Trèan-lann {1:COMMA} {0:TOWN} STR_FORMAT_DEPOT_NAME_ROAD_VEHICLE :{G=f}Garaids {TOWN} STR_FORMAT_DEPOT_NAME_ROAD_VEHICLE_SERIAL :{G=f}Garaids {1:COMMA} {0:TOWN} STR_FORMAT_DEPOT_NAME_SHIP :{G=m}Cala {TOWN} -STR_FORMAT_DEPOT_NAME_SHIP.nom :{G=m}Cala - {TOWN} -STR_FORMAT_DEPOT_NAME_SHIP.gen :{G=m}Calaidh - {TOWN} -STR_FORMAT_DEPOT_NAME_SHIP.dat :{G=m}Cala - {TOWN} +STR_FORMAT_DEPOT_NAME_SHIP.nom :Cala - {TOWN} +STR_FORMAT_DEPOT_NAME_SHIP.gen :Calaidh - {TOWN} +STR_FORMAT_DEPOT_NAME_SHIP.dat :Cala - {TOWN} STR_FORMAT_DEPOT_NAME_SHIP_SERIAL :{G=m}Cala {1:COMMA} {0:TOWN} STR_FORMAT_DEPOT_NAME_AIRCRAFT :{G=m}Hangar {STATION} -STR_FORMAT_DEPOT_NAME_AIRCRAFT.nom :{G=m}Hangar - {STATION} -STR_FORMAT_DEPOT_NAME_AIRCRAFT.gen :{G=m}Hangair - {STATION} -STR_FORMAT_DEPOT_NAME_AIRCRAFT.dat :{G=m}Hangar - {STATION} +STR_FORMAT_DEPOT_NAME_AIRCRAFT.nom :Hangar - {STATION} +STR_FORMAT_DEPOT_NAME_AIRCRAFT.gen :Hangair - {STATION} +STR_FORMAT_DEPOT_NAME_AIRCRAFT.dat :Hangar - {STATION} STR_UNKNOWN_STATION :stèisean neo-aithnichte STR_DEFAULT_SIGN_NAME :Sanas diff --git a/src/lang/galician.txt b/src/lang/galician.txt index d5f3c15c43..f00c1578c7 100644 --- a/src/lang/galician.txt +++ b/src/lang/galician.txt @@ -11,7 +11,7 @@ ##gender m f n -# $Id: galician.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: galician.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -792,7 +792,7 @@ STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLAC STR_NEWS_ROAD_VEHICLE_CRASH_DRIVER :{BIG_FONT}{BLACK}Accidente de tráfico!{}O condutor morre na deflagración producida trala colisión cun tren STR_NEWS_ROAD_VEHICLE_CRASH :{BIG_FONT}{BLACK}Accidente de tráfico!{}{COMMA} mortos na deflagración producida trala colisión cun tren STR_NEWS_AIRCRAFT_CRASH :{BIG_FONT}{BLACK}Accidente aéreo!{}{COMMA} mortos na deflagración en {STATION} -STR_NEWS_PLANE_CRASH_OUT_OF_FUEL :{BIG_FONT}{BLACK}Accidente de aéreo!O avión {} quedou sen combustible, {COMMA} mortos na deflagración! +STR_NEWS_PLANE_CRASH_OUT_OF_FUEL :{BIG_FONT}{BLACK}Accidente de aéreo!O avión{} quedou sen combustible, {COMMA} mortos na deflagración! STR_NEWS_DISASTER_ZEPPELIN :{BIG_FONT}{BLACK}Desastre dun zeppelin en {STATION}! STR_NEWS_DISASTER_SMALL_UFO :{BIG_FONT}{BLACK}Vehículo de estrada destruído tras colisionar cun 'OVNI'! @@ -2646,7 +2646,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terreo propieda STR_ABOUT_OPENTTD :{WHITE}Acerca de OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright orixinal {COPYRIGHT} 1995 Chris Sawyer, Tódolos dereitos reservados STR_ABOUT_VERSION :{BLACK}OpenTTD versión {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 O equipo de OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 O equipo de OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Gravar partida @@ -2843,7 +2843,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Coidado: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Erro: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Erro fatal: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ocorreu un erro fatal de NewGRF: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ocorreu un erro fatal de NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} non funcionará coa versión de TTDPatch reportada por OpenTTD. STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} é para a versión {STRING} de TTD. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} está deseñado para ser usado con {STRING} @@ -2860,8 +2860,8 @@ STR_NEWGRF_ERROR_INVALID_ID :Intento de usar STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING} contén un sprite corrupto. Tódolos sprites corruptos mostraranse coma unha interrogación vermella (?). STR_NEWGRF_ERROR_MULTIPLE_ACTION_8 :Contén múltiples entradas de acción 8 (sprite {3:NUM}) STR_NEWGRF_ERROR_READ_BOUNDS :Lectura máis aló da fin dun pseudo-sprite (sprite {3:NUM}) -STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE} Ao conxunto de gráficos básicos empregado actualmente fáltalle un número de sprites. {}Por favor, actualiza o conxunto de gráficos básico -STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE} Ao conxunto de gráficos básicos empregado actualmente fáltalle un número de sprites. {}Por favor, actualiza o conxunto de gráficos básico.{}Dado que estás a xogar unha {YELLOW}versión de desenrolo de OpenTTD{WHITE}, é posíbel que tamén necesites unha {YELLOW}versión de desenrolo do conjunto de gráficos base{WHITE} +STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE} Ao conxunto de gráficos básicos empregado actualmente fáltalle un número de sprites.{}Por favor, actualiza o conxunto de gráficos básico +STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE} Ao conxunto de gráficos básicos empregado actualmente fáltalle un número de sprites.{}Por favor, actualiza o conxunto de gráficos básico.{}Dado que estás a xogar unha {YELLOW}versión de desenrolo de OpenTTD{WHITE}, é posíbel que tamén necesites unha {YELLOW}versión de desenrolo do conjunto de gráficos base{WHITE} STR_NEWGRF_ERROR_GRM_FAILED :Os recursos GRF solicitados non están disponíbeis (sprite {3:NUM}) STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{1:STRING} foi desactivado por {2:STRING} STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Formato de colocación de sprites inválido ou descoñecido (sprite {3:NUM}) diff --git a/src/lang/german.txt b/src/lang/german.txt index 971fbf847c..62877f6721 100644 --- a/src/lang/german.txt +++ b/src/lang/german.txt @@ -11,7 +11,7 @@ ##gender m w n p -# $Id: german.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: german.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -1617,7 +1617,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"Symmetrisch" h STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Verteilungsschema für Post: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"Symmetrisch" heißt, dass etwa die selbe Menge Post von einer Station A zu einer anderen Station B geschickt wird, wie von B nach A. "Asymmetrisch" heißt, dass Post in beliebigen Mengen hin- und her geschickt werden kann. "Manuell" heißt, dass keine automatische Verteilung der Post stattfindet. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Verteilungsschema für Wertsachen: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Neben den Wertsachen im gemäßigten Klima fallen hierunter auch Diamanten im subtropischen und Gold im subarktischen Klima. Bei Verwendung von NewGRFs evtl. auch weitere ähnliche Güter. "Symmetrisch" heißt, dass etwa dieselbe Menge an Waren von Station A zur Station B gelangen möchte, wie umgekehrt von B nach A. "Asymmetrisch" heißt, dass Waren in unterschiedlichen Mengen hin- und hergelangen möchten. "Manuell" heißt, dass keine automatische Verteilung dieser Waren stattfindet. Im gemäßigten Klima kann "symmetrisch" gewählt werden, da Banken sich gegenseitig Wertsachen zusenden. Ansonsten ist "asymmetrisch" oder "manuell" zu empfehlen, da Banken dann nur Gold bzw. Diamanten annehmen und nichts produzieren. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Werttransporte umfassen Wertsachen im gemäßigten, Diamanten im subtropischen und Gold im subarktischen Klima. NewGRFs könnte dies ändern. „Symmetrisch“ bedeutet, dass etwa dieselbe Anzahl von Station A nach Station B transportiert wird wie umgekehrt von B nach A. „Asymmetrisch“ bedeutet, dass eine unteschiedliche Menge in die jeweiligen Richtungen gesendet wird. „Manuell“ bedeudeutet, dass keine automatische Verteilung stattfindet. Es wird die Einstellung „asymmetrisch“ oder „manuell“ im subarktischen Gebiet empfohlen, da Banken kein Gold bzw. Diamanten zu den Minen senden. Für das gemäßigte und subtropische Klima kann die Einstellung „symmetrisch“ genommen werden, da Banken Wertsachen untereinander versenden. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Verteilungsschema für sonstige Frachtarten: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"Symmetrisch" heißt, dass etwa die selbe Menge Waren von einer Station A zu einer anderen Station B geschickt wird, wie von B nach A. "Asymmetrisch" heißt, dass Waren in beliebigen Mengen hin- und her geschickt werden können. "Manuell" heißt, dass keine automatische Verteilung der Waren stattfindet. Hier sollte fast immer "asymmetrisch" oder "manuell" gewählt werden. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Genauigkeit für die Berechnung der Warenverteilung: {STRING} @@ -1766,7 +1766,7 @@ STR_INTRO_TRANSLATION :{BLACK}Dieser # Quit window STR_QUIT_CAPTION :{WHITE}Verlassen -STR_QUIT_ARE_YOU_SURE_YOU_WANT_TO_EXIT_OPENTTD :{YELLOW}OpenTTD wirklich beenden und zu {}{STRING} zurückkehren? +STR_QUIT_ARE_YOU_SURE_YOU_WANT_TO_EXIT_OPENTTD :{YELLOW}OpenTTD wirklich beenden und zu{}{STRING} zurückkehren? STR_QUIT_YES :{BLACK}Ja STR_QUIT_NO :{BLACK}Nein @@ -2688,7 +2688,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Firmeneigenes G STR_ABOUT_OPENTTD :{WHITE}OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Transport Tycoon-Urheberrecht {COPYRIGHT} 1995 Chris Sawyer, alle Rechte vorbehalten STR_ABOUT_VERSION :{BLACK}OpenTTD-Version {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD-Team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 OpenTTD-Team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Spiel speichern @@ -2875,7 +2875,11 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Gehe zum STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Vorheriges Sprite STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Gehe zum vorherigen normalen Sprite und überspringe alle Pseudo-, Recolour- und Schriftsprites (springt ggf. vom letzten bis zum ersten Sprite) STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Darstellung des aktuellen Sprites. Die Ausrichtung wird beim Zeichnen des Sprites ignoriert -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Bewege die Sprites und ändere dadurch die X- und Y-Offsets +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Bewege die Sprites und ändere dadurch die X- und Y-Offsets. Drücke Strg+Click um die Sprites 8 Blöcke weit zu bewegen. +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Setze zurück +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Setze die aktuelle Verschiebung zurück. +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X offset: {NUM}, Y offset: {NUM} (Absolut) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X offset: {NUM}, Y offset: {NUM} (Relativ) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Sprite auswählen STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Wähle ein Sprite vom Bildschirm aus @@ -2886,7 +2890,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Warnung: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Fehler: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Schwerer Fehler: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ein schwerer NewGRF-Fehler ist aufgetreten: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ein schwerer NewGRF-Fehler ist aufgetreten:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} funktioniert nicht im Zusammenhang mit der von OpenTTD ermittelten TTDPatch-Version STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} ist für die {STRING}-Version von TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} ist für die Nutzung mit {STRING} vorgesehen @@ -2920,7 +2924,7 @@ STR_NEWGRF_TOO_MANY_NEWGRFS :{WHITE}Datei ka STR_NEWGRF_COMPATIBLE_LOAD_WARNING :{WHITE}Kompatible NewGRF(s) für fehlende Dateien geladen STR_NEWGRF_DISABLED_WARNING :{WHITE}Fehlende NewGRF-Dateien wurden deaktiviert STR_NEWGRF_UNPAUSE_WARNING_TITLE :{YELLOW}NewGRF-Datei(en) fehlen -STR_NEWGRF_UNPAUSE_WARNING :{WHITE}Das Beenden der Pause kann OpenTTD zum Absturz bringen. Bitte keine Fehlerberichte bei auftretenden Fehlern senden. {}Pause wirklich beenden? +STR_NEWGRF_UNPAUSE_WARNING :{WHITE}Das Beenden der Pause kann OpenTTD zum Absturz bringen. Bitte keine Fehlerberichte bei auftretenden Fehlern senden.{}Pause wirklich beenden? # NewGRF status STR_NEWGRF_LIST_NONE :Keine @@ -3514,7 +3518,7 @@ STR_DEPOT_SELL_CONFIRMATION_TEXT :{YELLOW}Sollen # Engine preview window STR_ENGINE_PREVIEW_CAPTION :{WHITE}Nachricht vom Fahrzeughersteller -STR_ENGINE_PREVIEW_MESSAGE :{GOLD}Wir haben {G "einen" "eine" "ein" ""} neue{G n "" s ""} {0:STRING} entwickelt. {}Besteht Interesse, {G 0 den die das die} {0:STRING} ein Jahr lang exklusiv zu nutzen, so dass wir die Funktionen testen können, bevor {G 0 er sie es sie} allgemein zur Verfügung gestellt {G 0 wird wird wird werden}? +STR_ENGINE_PREVIEW_MESSAGE :{GOLD}Wir haben {G "einen" "eine" "ein" ""} neue{G n "" s ""} {0:STRING} entwickelt.{}Besteht Interesse, {G 0 den die das die} {0:STRING} ein Jahr lang exklusiv zu nutzen, so dass wir die Funktionen testen können, bevor {G 0 er sie es sie} allgemein zur Verfügung gestellt {G 0 wird wird wird werden}? STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE :{G=w}Lokomotive STR_ENGINE_PREVIEW_ROAD_VEHICLE :{G=n}Straßenfahrzeug STR_ENGINE_PREVIEW_AIRCRAFT :{G=n}Flugzeug @@ -4378,10 +4382,10 @@ STR_ERROR_CAN_T_RENAME_ROAD_VEHICLE :{WHITE}Fahrzeug STR_ERROR_CAN_T_RENAME_SHIP :{WHITE}Schiff kann nicht benannt werden... STR_ERROR_CAN_T_RENAME_AIRCRAFT :{WHITE}Flugzeug kann nicht benannt werden... -STR_ERROR_CAN_T_STOP_START_TRAIN :{WHITE}Zug kann nicht angehalten {} oder losgeschickt werden ... -STR_ERROR_CAN_T_STOP_START_ROAD_VEHICLE :{WHITE}Fahrzeug kann nicht angehalten {} oder losgeschickt werden... -STR_ERROR_CAN_T_STOP_START_SHIP :{WHITE}Schiff kann nicht angehalten {} oder losgeschickt werden... -STR_ERROR_CAN_T_STOP_START_AIRCRAFT :{WHITE}Flugzeug kann nicht angehalten {} oder losgeschickt werden... +STR_ERROR_CAN_T_STOP_START_TRAIN :{WHITE}Zug kann nicht angehalten{} oder losgeschickt werden ... +STR_ERROR_CAN_T_STOP_START_ROAD_VEHICLE :{WHITE}Fahrzeug kann nicht angehalten{} oder losgeschickt werden... +STR_ERROR_CAN_T_STOP_START_SHIP :{WHITE}Schiff kann nicht angehalten{} oder losgeschickt werden... +STR_ERROR_CAN_T_STOP_START_AIRCRAFT :{WHITE}Flugzeug kann nicht angehalten{} oder losgeschickt werden... STR_ERROR_CAN_T_SEND_TRAIN_TO_DEPOT :{WHITE}Zug kann nicht ins Depot geschickt werden... STR_ERROR_CAN_T_SEND_ROAD_VEHICLE_TO_DEPOT :{WHITE}Fahrzeug kann nicht ins Depot geschickt werden... diff --git a/src/lang/greek.txt b/src/lang/greek.txt index 3f4d323e84..881a0660d5 100644 --- a/src/lang/greek.txt +++ b/src/lang/greek.txt @@ -12,7 +12,7 @@ ##case subs date geniki -# $Id: greek.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: greek.txt 27503 2016-01-24 18:45:36Z translators $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -30,31 +30,31 @@ STR_JUST_NOTHING :Τίποτα # Plural cargo name STR_CARGO_PLURAL_NOTHING : STR_CARGO_PLURAL_PASSENGERS :{G=m}Επιβάτες -STR_CARGO_PLURAL_PASSENGERS.geniki :{G=m}Επιβάτη +STR_CARGO_PLURAL_PASSENGERS.geniki :Επιβάτη STR_CARGO_PLURAL_COAL :{G=m}Άνθρακες -STR_CARGO_PLURAL_COAL.geniki :{G=m}Άνθρακα +STR_CARGO_PLURAL_COAL.geniki :Άνθρακων STR_CARGO_PLURAL_MAIL :{G=f}Αλληλογραφία -STR_CARGO_PLURAL_MAIL.geniki :{G=f}Αλληλογραφία +STR_CARGO_PLURAL_MAIL.geniki :Αλληλογραφίας STR_CARGO_PLURAL_OIL :{G=n}Πετρέλαια -STR_CARGO_PLURAL_OIL.geniki :{G=n}Πετρελαίου +STR_CARGO_PLURAL_OIL.geniki :Πετρελαίου STR_CARGO_PLURAL_LIVESTOCK :{G=n}Ζώα STR_CARGO_PLURAL_LIVESTOCK.geniki :Ζώων STR_CARGO_PLURAL_GOODS :{G=n}Αγαθά STR_CARGO_PLURAL_GOODS.geniki :Αγαθών STR_CARGO_PLURAL_GRAIN :{G=n}Σιτηρά -STR_CARGO_PLURAL_GRAIN.geniki :{G=n}Σιτηρών +STR_CARGO_PLURAL_GRAIN.geniki :Σιτηρών STR_CARGO_PLURAL_WOOD :{G=f}Ξυλεία STR_CARGO_PLURAL_WOOD.geniki :Ξυλείας STR_CARGO_PLURAL_IRON_ORE :{G=n}Σιδηρομεταλλεύματα -STR_CARGO_PLURAL_IRON_ORE.geniki :{G=n}Σιδηρομεταλλευμάτων +STR_CARGO_PLURAL_IRON_ORE.geniki :Σιδηρομεταλλευμάτων STR_CARGO_PLURAL_STEEL :{G=m}Χάλυβες -STR_CARGO_PLURAL_STEEL.geniki :{G=m}Χάλυβα +STR_CARGO_PLURAL_STEEL.geniki :Χάλυβα STR_CARGO_PLURAL_VALUABLES :{G=n}Πολύτιμα είδη -STR_CARGO_PLURAL_VALUABLES.geniki :{G=n}Πολύτιμων ειδών +STR_CARGO_PLURAL_VALUABLES.geniki :Πολύτιμων ειδών STR_CARGO_PLURAL_COPPER_ORE :{G=n}Μεταλλεύματα Χαλκού -STR_CARGO_PLURAL_COPPER_ORE.geniki :{G=n}Μεταλλευμάτων Χαλκού +STR_CARGO_PLURAL_COPPER_ORE.geniki :Μεταλλευμάτων Χαλκού STR_CARGO_PLURAL_MAIZE :{G=n}Καλαμπόκια -STR_CARGO_PLURAL_MAIZE.geniki :{G=n}Καλαμποκιών +STR_CARGO_PLURAL_MAIZE.geniki :Καλαμποκιών STR_CARGO_PLURAL_FRUIT :{G=n}Φρούτα STR_CARGO_PLURAL_FRUIT.geniki :Φρούτων STR_CARGO_PLURAL_DIAMONDS :{G=n}Διαμάντια @@ -71,90 +71,90 @@ STR_CARGO_PLURAL_WHEAT :Σιτάρια STR_CARGO_PLURAL_WHEAT.geniki :Σιταριών STR_CARGO_PLURAL_RUBBER :{G=n}Λάστιχα STR_CARGO_PLURAL_RUBBER.geniki :Λάστιχων -STR_CARGO_PLURAL_SUGAR :{G=f}Ζάχαρες -STR_CARGO_PLURAL_SUGAR.geniki :Ζάχαρων +STR_CARGO_PLURAL_SUGAR :{G=f}Ζάχαρη +STR_CARGO_PLURAL_SUGAR.geniki :Ζάχαρης STR_CARGO_PLURAL_TOYS :{G=n}Παιχνίδια STR_CARGO_PLURAL_TOYS.geniki :Παιχνιδιών STR_CARGO_PLURAL_CANDY :{G=n}Γλυκίσματα -STR_CARGO_PLURAL_CANDY.geniki :{G=n}Γλυκισμάτων +STR_CARGO_PLURAL_CANDY.geniki :Γλυκισμάτων STR_CARGO_PLURAL_COLA :{G=f}Κόλα -STR_CARGO_PLURAL_COLA.geniki :{G=f}Κόλας +STR_CARGO_PLURAL_COLA.geniki :Κόλας STR_CARGO_PLURAL_COTTON_CANDY :{G=n}Μαλλιά της γριάς -STR_CARGO_PLURAL_COTTON_CANDY.geniki :{G=n}Μαλλιών της γριάς +STR_CARGO_PLURAL_COTTON_CANDY.geniki :Μαλλιών της γριάς STR_CARGO_PLURAL_BUBBLES :{G=f}Φυσαλίδες -STR_CARGO_PLURAL_BUBBLES.geniki :{G=f}Φυδαλίδων -STR_CARGO_PLURAL_TOFFEE :{G=n}Ζαχαρωτά -STR_CARGO_PLURAL_TOFFEE.geniki :{G=n}Ζαχαρωτών +STR_CARGO_PLURAL_BUBBLES.geniki :Φυσαλίδων +STR_CARGO_PLURAL_TOFFEE :{G=n}Καραμέλες βουτύρου +STR_CARGO_PLURAL_TOFFEE.geniki :Καραμέλων βουτύρου STR_CARGO_PLURAL_BATTERIES :{G=f}Μπαταρίες -STR_CARGO_PLURAL_BATTERIES.geniki :{G=f}Μπαταριών +STR_CARGO_PLURAL_BATTERIES.geniki :Μπαταριών STR_CARGO_PLURAL_PLASTIC :{G=n}Πλαστικά -STR_CARGO_PLURAL_PLASTIC.geniki :{G=n}Πλαστικών +STR_CARGO_PLURAL_PLASTIC.geniki :Πλαστικών STR_CARGO_PLURAL_FIZZY_DRINKS :{G=n}Αναψυκτικά -STR_CARGO_PLURAL_FIZZY_DRINKS.geniki :{G=n}Αναψυκτικών +STR_CARGO_PLURAL_FIZZY_DRINKS.geniki :Αναψυκτικών # Singular cargo name STR_CARGO_SINGULAR_NOTHING : STR_CARGO_SINGULAR_PASSENGER :{G=m}Επιβάτης -STR_CARGO_SINGULAR_PASSENGER.subs :{G=m}Επιβάτες +STR_CARGO_SINGULAR_PASSENGER.subs :Επιβάτες STR_CARGO_SINGULAR_COAL :{G=m}Άνθρακας -STR_CARGO_SINGULAR_COAL.subs :{G=m}Άνθρακες +STR_CARGO_SINGULAR_COAL.subs :Άνθρακες STR_CARGO_SINGULAR_MAIL :{G=f}Αλληλογραφία -STR_CARGO_SINGULAR_MAIL.subs :{G=f}Αλληλογραφία +STR_CARGO_SINGULAR_MAIL.subs :Αλληλογραφία STR_CARGO_SINGULAR_OIL :{G=n}Πετρέλαιο -STR_CARGO_SINGULAR_OIL.subs :{G=n}Πετρέλαιο +STR_CARGO_SINGULAR_OIL.subs :Πετρέλαιο STR_CARGO_SINGULAR_LIVESTOCK :{G=n}Ζώο -STR_CARGO_SINGULAR_LIVESTOCK.subs :{G=n}Ζώα +STR_CARGO_SINGULAR_LIVESTOCK.subs :Ζώα STR_CARGO_SINGULAR_GOODS :{G=n}Αγαθό -STR_CARGO_SINGULAR_GOODS.subs :{G=n}Αγαθα +STR_CARGO_SINGULAR_GOODS.subs :Αγαθα STR_CARGO_SINGULAR_GRAIN :{G=n}Σιτηρό -STR_CARGO_SINGULAR_GRAIN.subs :{G=n}Σιτηρα +STR_CARGO_SINGULAR_GRAIN.subs :Σιτηρα STR_CARGO_SINGULAR_WOOD :{G=f}Ξυλεία -STR_CARGO_SINGULAR_WOOD.subs :{G=f}Ξυλεία +STR_CARGO_SINGULAR_WOOD.subs :Ξυλεία STR_CARGO_SINGULAR_IRON_ORE :{G=n}Σιδηρομετάλλευμα -STR_CARGO_SINGULAR_IRON_ORE.subs :{G=n}Σιδηρομετάλλευμα +STR_CARGO_SINGULAR_IRON_ORE.subs :Σιδηρομετάλλευμα STR_CARGO_SINGULAR_STEEL :{G=m}Χάλυβας -STR_CARGO_SINGULAR_STEEL.subs :{G=m}Χάλυβα +STR_CARGO_SINGULAR_STEEL.subs :Χάλυβα STR_CARGO_SINGULAR_VALUABLES :{G=n}Πολύτιμο είδος -STR_CARGO_SINGULAR_VALUABLES.subs :{G=n}Πολύτιμα είδη +STR_CARGO_SINGULAR_VALUABLES.subs :Πολύτιμα είδη STR_CARGO_SINGULAR_COPPER_ORE :{G=n}Μετάλλευμα Χαλκού -STR_CARGO_SINGULAR_COPPER_ORE.subs :{G=n}Μετάλλευμα Χαλκού +STR_CARGO_SINGULAR_COPPER_ORE.subs :Μετάλλευμα Χαλκού STR_CARGO_SINGULAR_MAIZE :{G=n}Καλαμπόκι -STR_CARGO_SINGULAR_MAIZE.subs :{G=n}Καλαμπόκι +STR_CARGO_SINGULAR_MAIZE.subs :Καλαμπόκι STR_CARGO_SINGULAR_FRUIT :{G=n}Φρούτο -STR_CARGO_SINGULAR_FRUIT.subs :{G=n}Φρούτα +STR_CARGO_SINGULAR_FRUIT.subs :Φρούτα STR_CARGO_SINGULAR_DIAMOND :{G=n}Διαμάντι -STR_CARGO_SINGULAR_DIAMOND.subs :{G=n}Διαμάντια +STR_CARGO_SINGULAR_DIAMOND.subs :Διαμάντια STR_CARGO_SINGULAR_FOOD :{G=n}Τρόφιμο -STR_CARGO_SINGULAR_FOOD.subs :{G=n}Τρόφιμα +STR_CARGO_SINGULAR_FOOD.subs :Τρόφιμα STR_CARGO_SINGULAR_PAPER :{G=n}Χαρτί -STR_CARGO_SINGULAR_PAPER.subs :{G=n}Χαρτία +STR_CARGO_SINGULAR_PAPER.subs :Χαρτία STR_CARGO_SINGULAR_GOLD :{G=m}Χρυσός -STR_CARGO_SINGULAR_GOLD.subs :{G=m}Χρυσό +STR_CARGO_SINGULAR_GOLD.subs :Χρυσό STR_CARGO_SINGULAR_WATER :{G=n}Νερό -STR_CARGO_SINGULAR_WATER.subs :{G=n}Νερα +STR_CARGO_SINGULAR_WATER.subs :Νερα STR_CARGO_SINGULAR_WHEAT :{G=n}Σιτάρι -STR_CARGO_SINGULAR_WHEAT.subs :{G=n}Σιτάρια +STR_CARGO_SINGULAR_WHEAT.subs :Σιτάρια STR_CARGO_SINGULAR_RUBBER :{G=n}Λάστιχο -STR_CARGO_SINGULAR_RUBBER.subs :{G=n}Λάστιχα +STR_CARGO_SINGULAR_RUBBER.subs :Λάστιχα STR_CARGO_SINGULAR_SUGAR :{G=f}Ζάχαρη -STR_CARGO_SINGULAR_SUGAR.subs :{G=f}Ζάχαρες +STR_CARGO_SINGULAR_SUGAR.subs :Ζάχαρες STR_CARGO_SINGULAR_TOY :{G=n}Παιχνίδι -STR_CARGO_SINGULAR_TOY.subs :{G=n}Παιχνίδια +STR_CARGO_SINGULAR_TOY.subs :Παιχνίδια STR_CARGO_SINGULAR_CANDY :{G=n}Γλυκό -STR_CARGO_SINGULAR_CANDY.subs :{G=n}Γλυκα +STR_CARGO_SINGULAR_CANDY.subs :Γλυκα STR_CARGO_SINGULAR_COLA :{G=f}Κόλα STR_CARGO_SINGULAR_COTTON_CANDY :{G=n}Μαλλί της γριάς -STR_CARGO_SINGULAR_COTTON_CANDY.subs :{G=n}Μαλλί της γριάς +STR_CARGO_SINGULAR_COTTON_CANDY.subs :Μαλλί της γριάς STR_CARGO_SINGULAR_BUBBLE :{G=f}Φυσαλίδα -STR_CARGO_SINGULAR_BUBBLE.subs :{G=f}Φυσαλίδες -STR_CARGO_SINGULAR_TOFFEE :{G=n}Ζαχαρωτό -STR_CARGO_SINGULAR_TOFFEE.subs :{G=n}Ζαχαρωτα +STR_CARGO_SINGULAR_BUBBLE.subs :Φυσαλίδες +STR_CARGO_SINGULAR_TOFFEE :{G=n}Καραμέλα βουτύρου +STR_CARGO_SINGULAR_TOFFEE.subs :Ζαχαρωτα STR_CARGO_SINGULAR_BATTERY :{G=f}Μπαταρία -STR_CARGO_SINGULAR_BATTERY.subs :{G=f}Μπαταρίες +STR_CARGO_SINGULAR_BATTERY.subs :Μπαταρίες STR_CARGO_SINGULAR_PLASTIC :{G=n}Πλαστικό -STR_CARGO_SINGULAR_PLASTIC.subs :{G=n}Πλαστικα +STR_CARGO_SINGULAR_PLASTIC.subs :Πλαστικα STR_CARGO_SINGULAR_FIZZY_DRINK :{G=n}Αναψυκτικό -STR_CARGO_SINGULAR_FIZZY_DRINK.subs :{G=n}Αναψυκτικα +STR_CARGO_SINGULAR_FIZZY_DRINK.subs :Αναψυκτικα # Quantity of cargo STR_QUANTITY_NOTHING : @@ -165,7 +165,7 @@ STR_QUANTITY_OIL :{VOLUME_LONG} STR_QUANTITY_LIVESTOCK :{COMMA}{NBSP}τεμάχι{P ο α} ζώων STR_QUANTITY_GOODS :{COMMA}{NBSP}κιβώτι{P ο α} αγαθών STR_QUANTITY_GRAIN :{WEIGHT_LONG} σιτηρών -STR_QUANTITY_WOOD :{WEIGHT_LONG} ξύλου +STR_QUANTITY_WOOD :{WEIGHT_LONG} ξυλείας STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} μεταλλεύματος σιδήρου STR_QUANTITY_STEEL :{WEIGHT_LONG} χάλυβα STR_QUANTITY_VALUABLES :{COMMA}{NBSP}σάκ{P ος οι} με πολύτιμα είδη @@ -175,7 +175,7 @@ STR_QUANTITY_FRUIT :{WEIGHT_LONG} STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}σάκ{P ος οι} με διαμάντια STR_QUANTITY_FOOD :{WEIGHT_LONG} τροφίμων STR_QUANTITY_PAPER :{WEIGHT_LONG} χαρτιού -STR_QUANTITY_GOLD :{COMMA}{NBSP}σάκ{P ος οι} με χρυσό +STR_QUANTITY_GOLD :{COMMA}{NBSP}σάκ{P ος οι} χρυσού STR_QUANTITY_WATER :{VOLUME_LONG} νερού STR_QUANTITY_WHEAT :{WEIGHT_LONG} σιταριού STR_QUANTITY_RUBBER :{VOLUME_LONG} λάστιχου @@ -185,7 +185,7 @@ STR_QUANTITY_SWEETS :{COMMA}{NBSP}σ STR_QUANTITY_COLA :{VOLUME_LONG} κόλας STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} μαλλιού της γριάς STR_QUANTITY_BUBBLES :{COMMA} φυσαλίδ{P α ες} -STR_QUANTITY_TOFFEE :{WEIGHT_LONG} ζαχαρωτών +STR_QUANTITY_TOFFEE :{WEIGHT_LONG} καραμέλων βουτύρου STR_QUANTITY_BATTERIES :{COMMA} μπαταρί{P α ες} STR_QUANTITY_PLASTIC :{VOLUME_LONG} πλαστικού STR_QUANTITY_FIZZY_DRINKS :{COMMA} αναψυκτικ{P ό ά} @@ -194,7 +194,7 @@ STR_QUANTITY_N_A :Μ/Δ # Two letter abbreviation of cargo name STR_ABBREV_NOTHING : STR_ABBREV_PASSENGERS :{TINY_FONT}ΕΠ -STR_ABBREV_COAL :{TINY_FONT}CL +STR_ABBREV_COAL :{TINY_FONT}AΘ STR_ABBREV_MAIL :{TINY_FONT}ΑΓ STR_ABBREV_OIL :{TINY_FONT}ΠΤ STR_ABBREV_LIVESTOCK :{TINY_FONT}ΖΩ @@ -203,7 +203,7 @@ STR_ABBREV_GRAIN :{TINY_FONT}ΣΡ STR_ABBREV_WOOD :{TINY_FONT}ΞΛ STR_ABBREV_IRON_ORE :{TINY_FONT}ΣΜ STR_ABBREV_STEEL :{TINY_FONT}ΧΒ -STR_ABBREV_VALUABLES :{TINY_FONT}ΤΜ +STR_ABBREV_VALUABLES :{TINY_FONT}ΠΕ STR_ABBREV_COPPER_ORE :{TINY_FONT}ΧΜ STR_ABBREV_MAIZE :{TINY_FONT}ΚΛ STR_ABBREV_FRUIT :{TINY_FONT}ΦΡ @@ -220,7 +220,7 @@ STR_ABBREV_SWEETS :{TINY_FONT}ΓΛ STR_ABBREV_COLA :{TINY_FONT}ΚΟ STR_ABBREV_CANDYFLOSS :{TINY_FONT}ΜΓ STR_ABBREV_BUBBLES :{TINY_FONT}ΦΥ -STR_ABBREV_TOFFEE :{TINY_FONT}ΖΤ +STR_ABBREV_TOFFEE :{TINY_FONT}ΚΒ STR_ABBREV_BATTERIES :{TINY_FONT}ΜΠ STR_ABBREV_PLASTIC :{TINY_FONT}ΠΛ STR_ABBREV_FIZZY_DRINKS :{TINY_FONT}ΑΨ @@ -229,7 +229,7 @@ STR_ABBREV_ALL :{TINY_FONT}ΟΛ # 'Mode' of transport for cargoes STR_PASSENGERS :{COMMA}{NBSP}επιβάτ{P ης ες} -STR_BAGS :{COMMA}{NBSP}σάκκ {P ος οι} +STR_BAGS :{COMMA}{NBSP}σάκ{P ος οι} STR_TONS :{COMMA}{NBSP}τόνο{P ς οι} STR_LITERS :{COMMA}{NBSP}λίτρ{P ο α} STR_ITEMS :{COMMA}{NBSP}αντικείμεν{P ο α} @@ -241,7 +241,7 @@ STR_COLOUR_PALE_GREEN :Ανοικτό STR_COLOUR_PINK :Ροζ STR_COLOUR_YELLOW :Κίτρινο STR_COLOUR_RED :Κόκκινο -STR_COLOUR_LIGHT_BLUE :Ανοιχτό μπλέ +STR_COLOUR_LIGHT_BLUE :Γαλάζιο STR_COLOUR_GREEN :Πράσινο STR_COLOUR_DARK_GREEN :Σκούρο Πράσινο STR_COLOUR_BLUE :Μπλε @@ -254,16 +254,16 @@ STR_COLOUR_GREY :Γκρι STR_COLOUR_WHITE :Λευκό # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}χλμ/ω +STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}μίλια/ώρα +STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}χλμ/ώρα STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}τ. +STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}τ. STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}τόνο{P ς ι} @@ -282,7 +282,7 @@ STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lb STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}πόδια +STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}πόδ{P "ι" "ια"} STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}μ STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m @@ -386,6 +386,7 @@ STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Εμφά STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Εμφάνιση λίστας σταθμών της εταιρίας STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Εμφάνιση οικονομικών πληροφοριών εταιρίας STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Εμφάνιση γενικών πληροφοριών της εταιρίας +STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Εμφάνιση βιβλίου ιστορίας STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Εμφάνιση λίστας στόχων STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Εμφάνιση γραφημάτων STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Εμφάνιση πίνακα κατάταξης των εταιριών @@ -402,7 +403,7 @@ STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}Κατα STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}Κατασκευάστε αεροδρόμια STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Ανοίξτε την μπάρα εργαλείων μορφοποίησης εδάφους για ανύψωση/βύθιση γης, δενδροφύτευση, κλπ. STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK}Εμφάνιση παραθύρου ήχου/μουσικής -STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Εμφάνιση τελευταίου μηνύματος/αναφοράς νέων, επιλογές μηνυμάτων +STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Εμφάνιση τελευταίου μηνύματος/αναφοράς ειδήσεων, επιλογές μηνυμάτων STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Πληροφορίες περιοχής, κονσόλα, αποσφαλμάτωση δέσμης ενεργειών, φωτογραφίες οθόνης, περί του OpenTTD STR_TOOLBAR_TOOLTIP_SWITCH_TOOLBAR :{BLACK}Εναλλάγη μπαρών εργασίας @@ -524,7 +525,7 @@ STR_TOOLBAR_SOUND_MUSIC :Ήχος/Μου ############ range ends here ############ range for message menu starts -STR_NEWS_MENU_LAST_MESSAGE_NEWS_REPORT :Τελευταίο μήνυμα/αναφορά νέων +STR_NEWS_MENU_LAST_MESSAGE_NEWS_REPORT :Τελευταίο μήνυμα/αναφορά ειδήσεων STR_NEWS_MENU_MESSAGE_HISTORY_MENU :Ιστορικό μηνυμάτων ############ range ends here @@ -824,6 +825,7 @@ STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Εμφα STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Εμφανίστε ιδιοκτήτες γης στον χάρτη STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Επιλέξτε μια βιομηχανία για εναλλαγή εμφάνισής της. Με Ctrl+Κλικ απενεργοποιούνται όλοι οι τύποι εκτός του επιλεγμένου. Πατήστε Ctrl+Κλικ ξανά για την επαναφορά όλων των τύπων STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Επιλέξτε μια εταιρεία για εναλλαγή εμφάνισης της περιουσίας της. Με Ctrl+Κλικ απενεργοποιούνται όλες οι εταιρείες εκτός της επιλεγμένης. Πατήστε Ctrl+Κλικ ξανά για την επαναφορά όλων των εταιρειών +STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Επιλέξτε ένα φορτίο για εναλλαγή εμφάνισής της. Με Ctrl+Κλικ απενεργοποιούνται όλα τα φορτία εκτός του επιλεγμένου. Πατήστε Ctrl+Κλικ ξανά για την επαναφορά όλων των φορτίων STR_SMALLMAP_LEGENDA_ROADS :{TINY_FONT}{BLACK}Δρόμοι STR_SMALLMAP_LEGENDA_RAILROADS :{TINY_FONT}{BLACK}Σιδηρόδρομοι @@ -872,7 +874,7 @@ STR_SMALLMAP_TOOLTIP_DISABLE_ALL_CARGOS :{BLACK}Απόκ STR_SMALLMAP_TOOLTIP_ENABLE_ALL_CARGOS :{BLACK}Εμφάνιση όλων των φορτίων στο χάρτη # Status bar messages -STR_STATUSBAR_TOOLTIP_SHOW_LAST_NEWS :{BLACK}Εμφάνιση τελευταίου μηνύματος ή αναφοράς νέων +STR_STATUSBAR_TOOLTIP_SHOW_LAST_NEWS :{BLACK}Εμφάνιση τελευταίου μηνύματος ή αναφοράς ειδήσεων STR_STATUSBAR_COMPANY_NAME :{SILVER}- - {COMPANY} - - STR_STATUSBAR_PAUSED :{YELLOW}* * ΠΑΥΣΗ * * STR_STATUSBAR_AUTOSAVE :{RED}ΑΥΤΟΜΑΤΗ ΑΠΟΘΗΚΕΥΣΗ @@ -1081,12 +1083,14 @@ STR_GAME_OPTIONS_LANGUAGE :{BLACK}Γλώσ STR_GAME_OPTIONS_LANGUAGE_TOOLTIP :{BLACK}Επιλογή της γλώσσας του παιχνιδιού STR_GAME_OPTIONS_FULLSCREEN :{BLACK}Πλήρης οθόνη -STR_GAME_OPTIONS_FULLSCREEN_TOOLTIP :{BLACK}Τσεκάρεται αυτό το κουτάκι ωστε να παίξετε το OpenTTD σε όλη την οθόνη +STR_GAME_OPTIONS_FULLSCREEN_TOOLTIP :{BLACK}Τσεκάρετε αυτό το κουτάκι ωστε να παίξετε το OpenTTD σε όλη την οθόνη STR_GAME_OPTIONS_RESOLUTION :{BLACK}Ανάλυση οθόνης STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Διαλέξτε την ανάλυση της οθόνης που θέλετε STR_GAME_OPTIONS_RESOLUTION_OTHER :άλλη +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Μέγεθος διεπαφής +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Επιλέξτε το μέγεθος στοιχείου διεπαφής STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Κανονικό STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Διπλό μέγεθος @@ -1185,6 +1189,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Πολύ Επί STR_TERRAIN_TYPE_FLAT :Επίπεδο STR_TERRAIN_TYPE_HILLY :Λοφώδες STR_TERRAIN_TYPE_MOUNTAINOUS :Βουνώδες +STR_TERRAIN_TYPE_ALPINIST :Αλπικό STR_CITY_APPROVAL_PERMISSIVE :Ανεκτική STR_CITY_APPROVAL_TOLERANT :Υπομονετική @@ -1262,10 +1267,13 @@ STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Όταν είν STR_CONFIG_SETTING_TRAIN_REVERSING :Απαγορεύεται η αντιστροφή τρένων στους σταθμούς: {STRING} STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Όταν είναι ενεργοποιημένο, τα τρένα δεν θα κάνουν όπισθεν σε μη-τελικούς σταθμούς, ακόμα και εάν υπάρχει κοντινότερη διαδρομή προς τον επόμενή τους προορισμό όταν κάνουν όπισθεν STR_CONFIG_SETTING_DISASTERS :Καταστροφές: {STRING} +STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Εναλλαγή καταστροφών που μπορούν περιστασιακά να εμποδίσουν ή να καταστρέψουν οχήματα ή υποδομές STR_CONFIG_SETTING_CITY_APPROVAL :Στάση δημοτικού συμβουλίου ως προς τον μετασχηματισμό της περιοχής: {STRING} +STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Επιλογή πόσο ο θόρυβος και η περιβαλλοντικη καταστροφή άπο εταιρίες επηρεάζουν τα ποσοστά αποδοχής και περαιτέρω έργα στη περιοχή STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Μέγιστο ύψος χάρτη: {STRING} STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Ορισμός του μέγιστου επιτρεπτού ύψους βουνών στο χάρτη +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE} Δεν μπορείτε να θέσετε το μέγιστο ύψος χάρτη σε αυτή τη τιμή. Τουλάχιστον ένα βουνό στο χάρτη είναι πιο ψηλό. STR_CONFIG_SETTING_AUTOSLOPE :Να επιτρέπεται η διαμόρφωση εδάφους κάτω από κτίρια, γραμμές, κλπ.: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Επιτρέπεται η διαμόρφωση του εδάφους κάτω από κτίρια και σιδηροτροχιές χωρίς αυτά να αφαιρούνται STR_CONFIG_SETTING_CATCHMENT :Επιτρέπονται πιο ρεαλιστικά ταξινομημένες περιοχές συλλογής : {STRING} @@ -1366,7 +1374,7 @@ STR_CONFIG_SETTING_ORDER_REVIEW_OFF :Όχι STR_CONFIG_SETTING_ORDER_REVIEW_EXDEPOT :Ναι, αλλά εξαιρούνται τα σταματημένα οχήματα STR_CONFIG_SETTING_ORDER_REVIEW_ON :Για όλα τα οχήματα STR_CONFIG_SETTING_WARN_INCOME_LESS :Ειδοποίηση όταν τα έσοδα ενός οχήματου είναι αρνητικά: {STRING} -STR_CONFIG_SETTING_WARN_INCOME_LESS_HELPTEXT :Όταν είναι ενεργοποιημένη, στέλνεται μήνυμα νέων όταν κάποιο όχημα δεν έχει αποφέρει κέρδος εντός ενός ημερολογιακού έτους +STR_CONFIG_SETTING_WARN_INCOME_LESS_HELPTEXT :Όταν είναι ενεργοποιημένη, στέλνεται μήνυμα ειδήσεων όταν κάποιο όχημα δεν έχει αποφέρει κέρδος εντός ενός ημερολογιακού έτους STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Τα οχήματα δεν λήγουν ποτέ: {STRING} STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :Όταν είναι ενεργοποιημένη, όλα τα μοντέλα οχημάτων παραμένουν διαθέσιμα για πάντα μετά την παρουσίασή τους STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Αυτόματη ανανέωση όταν ένα όχημα παλιώνει: {STRING} @@ -1390,22 +1398,31 @@ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Πάχος γρ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Πάχος γραμμών στα γραφήματα. Οι λεπτές γραμμές διαβάζονται με μεγαλύτερη ακρίβεια, οι παχύτερες είναι πιο ευδιάκριτες και τα χρώματα ξεχωρίσουν ευκολότερα STR_CONFIG_SETTING_LANDSCAPE :Τοπίο: {STRING} +STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Τα τοπία ορίζουν βασικά σενάρια παιχνιδιού με διαφορετικά φορτία και προϋποθέσεις επέκτασης πόλεων. Παρ' όλα αυτά, τα NewGRF και οι Δέσμες Ενεργειών Παιχνιδιού επιτρέπουν πιο λεπτό χειρισμό STR_CONFIG_SETTING_LAND_GENERATOR :Γεννήτρια γης: {STRING} +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :Η πρωτότυπη γεννήτρια εξαρτάται από το βασικό σετ γραφικών και συνθέτει σταθερά σχήματα τοπίων. Η TerraGenesis είναι μια γεννήτρια βασισμένη στον ήχο Perlin με λεπτότερες ρυθμίσεις STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Αυθεντική STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_TERRAIN_TYPE :Σχηματισμός εδάφους: {STRING} +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(TerraGenesis μόνο) Λοφώδησ χαρακτήρας του εδάφους STR_CONFIG_SETTING_INDUSTRY_DENSITY :Πυκνότητα βιομηχανιών: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Θέτει πόσες βιομηχανίες θα δημιουργηθούν και σε τι επίπεδο θα μέινουν κάτα τη διάρκεια το παιχνιδιού STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Μέγιστη απόσταση από την άκρη του χάρτη για τα Διυλιστήρια: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Τα Διυλιστήρια κατασκευάζονται κοντά στην άκρη του χάρτη, η οποία είναι ακτή σε νησιωτικούς χάρτες STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Κορυφογραμμή χιονιού: {STRING} +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Έλεγχος του ύψους στο οποίο ξεκινά το χιόνι στο υπαρκτικό τοπίο. Το χιόνι επηρεάζει επίσης τη δημιουργία βιομηχανιών και τις προυποθέσεις επέκτασης πόλης STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Ανωμαλία επιφάνειας (μόνο με TerraGenesis) : {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis μόνο) Επιλογή της συψνότητας των λόφων: Τα λεία τοπία έχουν λιγότερους, πιο πλατείς λόφους. Τα τραχιά τοπία έχουν πολλούς λόφους που μπορεί να δείχνει μονότονο STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Πολύ Απαλή STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Απαλή STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Ανώμαλη STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Πολύ Ανώμαλη +STR_CONFIG_SETTING_VARIETY :Διανομή ποικιλομορφίας: {STRING} +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(TerraGenesis μόνο) Ελέγξτε εάν ο χάρτης θα περιέχει και ορεινές και πεδινές εκτάσεις. Μιας και αυτό μονάχα κάνει το χάρτη πιο επίπεδο, οι άλλες ρυθμίσιες θα πρεπει να τεθούν στο ορεινό STR_CONFIG_SETTING_RIVER_AMOUNT :Πλήθος ποταμών: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Επιλέξτε πόσα ποτάμια να δημιουργηθούν STR_CONFIG_SETTING_TREE_PLACER :Αλγόριθμος τοποθέτησης δέντρων: {STRING} +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Επιλογή διανομής δέντρων στο χάρτη: Το «Πρωτότυπο» φυτεύει δέντρα ομοιόμορφα μοιρασμένα, ενώ το «Βελτιωμένο» φυτεύει σε ομάδες STR_CONFIG_SETTING_TREE_PLACER_NONE :Κανένας STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Αυθεντικός STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Βελτιωμένος @@ -1450,6 +1467,7 @@ STR_CONFIG_SETTING_SCROLLWHEEL_OFF :Απενεργ STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER :Ταχύτητα ροδέλας μετακίνησης χάρτη: {STRING} STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER_HELPTEXT :Έλεγχος της ευαισθησίας του τροχού του ποντικιού κατά την κύλιση STR_CONFIG_SETTING_OSK_ACTIVATION :Πληκτρολόγιο στην οθόνη: {STRING} +STR_CONFIG_SETTING_OSK_ACTIVATION_HELPTEXT :Επιλογή της μεθόδου για το άνοιγμα του πληκτρολογίου της οθόνης για την εισαγωγή κειμένου σε κουτιά με τη χρήση μόνο της δεικτικής συσκευής. Αυτή η ρύθμιση προορίζεται για μικρότερες συσκευές χωρίς πραγματικό πληκτρολόγιο STR_CONFIG_SETTING_OSK_ACTIVATION_DISABLED :Απενεργοποιημένο STR_CONFIG_SETTING_OSK_ACTIVATION_DOUBLE_CLICK :Με διπλό κλικ STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK_FOCUS :Με απλό κλικ (όταν είναι επικεντρωμένο) @@ -1503,6 +1521,7 @@ STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Διατήρη STR_CONFIG_SETTING_EXPENSES_LAYOUT :Ομαδοποίηση εξόδων στο παράθυρο οικονομικών της εταιρίας: {STRING} STR_CONFIG_SETTING_EXPENSES_LAYOUT_HELPTEXT :Ορίστε τη μορφή για το παράθυρο των εξόδων της εταιρείας +STR_CONFIG_SETTING_SOUND_TICKER :Ήχος ειδήσεων: {STRING} STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Παίζει ήχο για περιληπτικά μηνύματα ειδήσεων STR_CONFIG_SETTING_SOUND_NEWS :Εφημερίδα: {STRING} STR_CONFIG_SETTING_SOUND_NEWS_HELPTEXT :Παίζει ήχο όταν εμφανίζονται εφημερίδες @@ -1510,9 +1529,10 @@ STR_CONFIG_SETTING_SOUND_NEW_YEAR :Στο τέλο STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Παίζει ηχητικό εφέ στο τέλος του χρόνου που συνοψίζει την επίδοση της εταιρείας κατά την διάρκεια αυτού του χρόνου σε σχέση με τον προηγούμενο χρόνο STR_CONFIG_SETTING_SOUND_CONFIRM :Οικοδομή: {STRING} STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Παίζει ηχητικό εφέ σε επιτυχής οικοδομές ή άλλες δράσεις +STR_CONFIG_SETTING_SOUND_CLICK :πατήματα κουμπιού: {STRING} STR_CONFIG_SETTING_SOUND_CLICK_HELPTEXT :Παίζει ήχο όταν γίνεται κλικ σε κουμπιά STR_CONFIG_SETTING_SOUND_DISASTER :Καταστροφές/ατυχήματα: {STRING} -STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Παίζει ήχους για ατυχήματα και συμφορές +STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Παίζει ήχους για ατυχήματα και καταστροφές STR_CONFIG_SETTING_SOUND_VEHICLE :Οχήματα: {STRING} STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT :Παίζει τα ηχητικά εφέ των οχημάτων STR_CONFIG_SETTING_SOUND_AMBIENT :Περιβαλλοντικά: {STRING} @@ -1573,7 +1593,7 @@ STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN_HELPTEXT :Παρουσί STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER :Άφιξη του πρώτου οχήματος σε σταθμό του αντιπάλου: {STRING} STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER_HELPTEXT :Παρουσίασε τα νέα όταν το πρώτο όχημα φτάνει σε νέο σταθμό ενός ανταγωνιστή STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS :Ατυχήματα / καταστροφές: {STRING} -STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Προβάλλει εφημερίδα όταν συμβαίνουν ατυχήματα ή συμφορές +STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT :Προβάλλει εφημερίδα όταν συμβαίνουν ατυχήματα ή καταστροφές STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION :Πληροφορίες εταιρίας: {STRING} STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT :Προβάλλει εφημερίδα όταν αρχίζει νέα εταιρεία ή όταν οι εταιρίες ρισκάρουν χρεωκοπία STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN :Έναρξη των βιομηχανιών: {STRING} @@ -1693,49 +1713,87 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Καμία STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Αρχικός πολλαπλασιαστής μεγέθους πόλης: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Μέσο μέγεθος μεγάλων πόλεων σε σχέση με τις κανονικές στην αρχή του παιχνιδιού +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Ενημέρωση γραφήματος κάθε {STRING}{NBSP}μέρ{P 0:2 α ες} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Χρόνος που μεσολαβεί μεταξύ επαναυπολογισμών του γραφήματος συνδέσμου. Κάθε επαναυπολογισμός υπολογίζει το σχέδιο για ένα τμήματος του γραφήματος. Αυτό σημαίνει ότι μια τιμή Χ για αυτή τη ρύθμιση δεν σημαίνει ότι ολόκληρο το γράφημα θα ενημερώνεται κάθε Χ ημέρες, μονάχα κάποια τμήματα. Όσο μικρότερη ρύθμιση τεθεί τόσο μεγαλύτερος χρόνος επεξεργαστή απαιτείται για τον υπολογσιμό του. Όσο μεγαλύτερη ρύθμιση τεθεί τόσο περισσότερο θα πάρει για να ξεκινήσει η διανομή φορτίου σε νέες διαδρομές. +STR_CONFIG_SETTING_LINKGRAPH_TIME :Πάρε {STRING}{NBSP}μέρ{P 0:2 α ες} για επανυπολογσιμό του γραφήματος διανομής +STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Χρόνος που απαιτείται για επαναυπολογισμούς τμήματος γραφήματος συνδέσμου. Όταν ένας επαναυπολογισμός αρχίζει, προκύπτει ένα νήμα το οποίο επιτρέπεται να τρέξει για έναν συγκεκριμένο αριθμό ημερών. Όσο μικρότερος αριθμός τόσο μεγαλύτερες πιθανότητες ότι το νήμα δεν τελείωνει όταν πρέπει. Τότε το παιχνίδι σταματά μέχρι να ολοκληρωθεί («λαγκάρει»). Όσο μεγαλύτερος αριθμός τόσο μεγαλύτερο χρόνο παίρνει για να για να ενημερωθεί διανομή όταν αλλάζουν οι διαδρομές. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :χειροκίνητη STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :μη συμμετρική STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :συμμετρική STR_CONFIG_SETTING_DISTRIBUTION_PAX :Τρόπος διανομής επιβατών: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :Το «συμμετρικό» σημαίνει ότι περίπου ο ίδιος αριθμός επιβατών θα σταλέι από έναν σταθμό Α σε ένα σταθμό Β όσο από τον Β στον Α. Το «ασυμμετρικό» σημαίνει ότι αυθαίρετος αριθμός επιβατών μπορεί να σταλούν σε οποιαδήποτε εκ των δύο κατευθύνσεων. Το «χειροκίνητο» σημαίνει ότι καμία αυτόματη διανομή δε θα γίνεται για τους επιβάτες. STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Τρόπος διανομής αλληλογραφίας: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :Το «συμμετρικό» σημαίνει ότι περίπου η ίδια ποσότητα αλληλογραφίας θα σταλέι από έναν σταθμό Α σε ένα σταθμό Β όσο από τον Β στον Α. Το «ασυμμετρικό» σημαίνει ότι αυθαίρετες ποσότητες αλληλογραφίας μπορεί να σταλούν σε οποιαδήποτε εκ των δύο κατευθύνσεων. Το «χειροκίνητο» σημαίνει ότι καμία αυτόματη διανομή δε θα γίνεται για την αλληλογραφία. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Τρόπος διανομής για το ΘΩΡΑΚΙΣΜΕΝΟ είδος φορτίου: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Ο ΘΩΡΑΚΙΣΜΕΝΟΣ τύπος φορτίου περιέχει πολύτιμα στο εύκρατο, διαμάντια στο υποτροπικό ή χρυσό στο υποαρκτικό κλίμα. Τα NewGRF μπορούν να το αλλάξουν αυτό. Το «συμμετρικό» σημαίνει ότι περίπου η ίδια ποσότητα φορτίου θα σταλέι από έναν σταθμό Α σε ένα σταθμό Β όσο από τον Β στον Α. Το «ασυμμετρικό» σημαίνει ότι αυθαίρετες ποσότητες αυτού του φορτίου μπορεί να σταλούν σε οποιαδήποτε εκ των δύο κατευθύνσεων. Το «χειροκίνητο» σημαίνει ότι καμία αυτόματη διανομή δε θα γίνεται για το συκγεκριμένο τύπο φορτίου. Συνιστάται η χρήση του ασυμμετρικού ή χειροκίνητου μοντέλου ο΄ταν παίζετε στο υποαρκτικό κλίμα, καθώς οι τράπεζες δε θα στέλνουν χρυσό πίσω στα χρυσωρυχεία. Για το εύκρατο ή υποτροπικό κλίμα μπορείτε επίσης να χρησιμοιήσετε το συμμετρικό καθώς οι τράπεζες θα στέλνουν πολύτιμα πίσω στην τράπεζα προέλευσης. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Τρόπος διανομής άλλων ειδών φορτίου: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :Το «ασυμμετρικό» σημαίνει ότι αυθαίρετες ποσότητες αυτού του φορτίου μπορεί να σταλούν σε οποιαδήποτε εκ των δύο κατευθύνσεων. Το «χειροκίνητο» σημαίνει ότι καμία αυτόματη διανομή δε θα γίνεται για αυτά τα φορτία. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Ακρίβεια διανομής: {STRING} +STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Όσο μεγαλύτερη ή τιμή τόσο περισσότερος χρόνος επεξεργαστή χρειάζεται για τον υπολογσιμό του γραφήματος συνδέσμου. Εάν όμως θέσετε χαμηλή τιμή, η διανομή θα είναι ανακριβής και μπορεί να παρατηρήσετε φορτία να μην στέλνονται στοθς προορισμούς που θα έπρεπε να πηγαίνουν. STR_CONFIG_SETTING_DEMAND_DISTANCE :Επίδραση της απόστασης στη ζήτηση προϊόντων: {STRING} +STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Αν ορίσετε αυτό σε μια τιμή μεγαλύτερη από 0, η απόσταση μεταξύ ενός αρχικού σταθμού Α ενός φορτίου και ενός πιθανού προορισμού Β θα επηρεάσει το ποσό του φορτίου που θα αποσταλεί από τον Α στον Β. Όσο πιο μακριά βρίσκεται ο Β από τον Α, τόσο λιγότερο φορτίο θα αποσταλεί. Όσο πιο μεγάλη τιμή ορίσετε, θα αποστέλλεται λιγότερο φορτίο σε μακρινούς προορισμούς και περισσότερο σε κοντινούς. +STR_CONFIG_SETTING_DEMAND_SIZE :Ποσότητα επιστρεφόμενου φορτίου στη συμμετρική ρύθμιση: {STRING} +STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Θέτοντας αυτή τη ρύθμιση σε τιμή λιγότερη του 100% κάνετε τη συμμετρική διανομή να συμπεριφέρεται πιο πολύ σαν την ασυμμετρική. Λιγότερο φορτίο θα στέλνεται πίσω εαν μια συγκεκριμένη ποσότητα έχει σταλεί σε έναν σταθμό. Αν τεθεί στο 0% η συμμετρική διανομή συμπεριφέρεται ακριβώς όπως η ασυμμετρική. +STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Κορεσμός σύντομων οδών πριν τη χρήση οδών μεγάλης χωρητικότητας: {STRING} +STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Συχνά υπάρχουν πολλαπλές οδοί μεατξύ δύο σταθμών. Η διανομή φορτίων θα κορέσει την πιο σύντομη οδό πρώτα, και μετέπειτα θα χρησιμοποιήσει τη δεύτερ συντομότερη οδό μέχρι αυτή να κορεστεί και τα λοιπά. Ο κορεσμός εξαρτάται από μια εκτίμηση της χωρητικότητας και ενδεχόμενης χρήσης. Όταν έχει κορεστεί όλες οι οδοί, θα υπερφορτώσει όλες τισ οδούς, προτιμώντας αυτές με μεγάλη χωρητικότητα. Τις περισσότερες φορές όμως ο αλγόριθμος δεν εκτιμά σωστά την χωριτικότητα. Αυτή η ρύθμιση επιτρέπει τον προσδιορισμό μέχρι ποιό ποσοστό μια σύντομοτερη οδός πρέπει να κορεστεί τη πρώτη φορά πριν διαλέξει μια μακρύτερη. Θέστε τη σε λιγότερο απο το 100% για την αποφυγή υπερφορτωμένων σταθμών σε περίπτωση υπερεκτιμημένης χωρητικότητας. STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :Μονάδες μέτρησης ταχύτητας: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_IMPERIAL :Αυτοκρατορικό (mph) -STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :Μετρικό (km/h) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_HELPTEXT :Όποτε εμφανίζεται μια ταχύτητα στη διεπαφή χρήστη, να εμφανίζεται στην επιλεγμένη μονάδα +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_IMPERIAL :Αυτοκρατορικό (μίλια/ώρα) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :Μετρικό (χλμ/ώρα) STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_SI :SI (m/s) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER :Μονάδες ισχύος οχημάτων: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT :Όποτε εμφανίζεται η ισχύς ενός οχήματος στη διεπαφή χρήστη, να εμφανίζεται στην επιλεγμένη μονάδα STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_IMPERIAL :Αυτοκρατορικό (hp) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Μετρικό (hp) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT :Μονάδες μέτρησης βάρους: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT :Όποτε εμφανίζεται ένα βάρος στη διεπαφή χρήστη, να εμφανίζεται στην επιλεγμένη μονάδα +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Αυτοκρατορικό (τόννοι) +STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Μετρικό (t/τόννος) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Μονάδες μέτρησης όγκου: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Αυτοκρατορικό (gal) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Όποτε εμφανίζεται ένας όγκος στη διεπαφή χρήστη, να εμφανίζεται στην επιλεγμένη μονάδα +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Αυτοκρατορικό (γαλ) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Μετρικό (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Μονάδες ελκτικής δύναμης: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Όποτε εμφανίζεται μια ελκτική δύναμη στη διεπαφή χρήστη, να εμφανίζεται στην επιλεγμένη μονάδα +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Αυτοκρατορικό (lbf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Μετρικό (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT :Μονάδες μέτρησης ύψους: {STRING} -STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Μετρικές (m) +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT :Όποτε εμφανίζεται ένα ύψος στη διεπαφή χρήστη, να εμφανίζεται στην επιλεγμένη μονάδα +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL :Αυτοκρατορικό (πόδια) +STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Μετρικό (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Τοπικοποίηση +STR_CONFIG_SETTING_GRAPHICS :{ORANGE}Γραφικά STR_CONFIG_SETTING_SOUND :{ORANGE}Ήχος STR_CONFIG_SETTING_INTERFACE :{ORANGE}Περιβάλλον Λειτουργίας +STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Γενικά +STR_CONFIG_SETTING_INTERFACE_VIEWPORTS :{ORANGE}Παράθυρα προβολών STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}Κατασκευή +STR_CONFIG_SETTING_ADVISORS :{ORANGE}Ειδήσεις / Σύμβουλοι +STR_CONFIG_SETTING_COMPANY :{ORANGE}Εταιρία +STR_CONFIG_SETTING_ACCOUNTING :{ORANGE}Λογιστικά STR_CONFIG_SETTING_VEHICLES :{ORANGE}Οχήματα +STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE}Φυσική STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Δρομολογήσεις +STR_CONFIG_SETTING_LIMITATIONS :{ORANGE}Περιορισμοί +STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Καταστροφές/Ατυχήματα +STR_CONFIG_SETTING_GENWORLD :{ORANGE}Δημιουργία Κόσμου +STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Περιβάλλον +STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Αρχές STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Πόλεις STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Βιομηχανίες +STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Κατανομή φορτίων STR_CONFIG_SETTING_AI :{ORANGE}Ανταγωνιστές STR_CONFIG_SETTING_AI_NPC :{ORANGE}Παίκτες υπολογιστή @@ -1772,6 +1830,7 @@ STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... αγ STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... αγνόηση βασικού σετ ήχων «{STRING}»: δεν βρέθηκε STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... αγνόηση βασικού σετ μουσικής «{STRING}»: δεν βρέθηκε STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Έλληψη μνήμης +STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Η κατανομή {BYTES} του spritecache απέτυχε. Το spritecache μειώθηκε σε {BYTES}. Αυτό θα μειώσει την απόδοση του OpenTTD. Για να μειώσετε τις ανάγκες μνήμς μπορείτε να απενεργοποιήσετε τα γραφικά 32bpp graphics ή/και τα επίπεδα μεγέθυνσης # Intro window STR_INTRO_CAPTION :{WHITE}OpenTTD {REV} @@ -1951,6 +2010,8 @@ STR_FACE_TIE_EARRING_TOOLTIP :{BLACK}Αλλα # Network server list STR_NETWORK_SERVER_LIST_CAPTION :{WHITE}Παιχνίδι πολλών παικτών +STR_NETWORK_SERVER_LIST_ADVERTISED :{BLACK}Διαφημιζόμενο +STR_NETWORK_SERVER_LIST_ADVERTISED_TOOLTIP :{BLACK}Επιλογή ανάμεσα σε ένα διαφημιζόμενο (διαδίκτυο) ή μη διαφημιζόμενο (Τοπικό Δίκτυο/LAN) παιχνίδι STR_NETWORK_SERVER_LIST_ADVERTISED_NO :Όχι STR_NETWORK_SERVER_LIST_ADVERTISED_YES :Ναι STR_NETWORK_SERVER_LIST_PLAYER_NAME :{BLACK}Όνομα παίκτη: @@ -2326,10 +2387,15 @@ STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Εναλ STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Επιλέξτε τα αντικείμενα που θα είναι αόρατα αντί για διάφανα # Linkgraph legend window +STR_LINKGRAPH_LEGEND_CAPTION :{BLACK}Υπόμνημα ροής Φορτίου STR_LINKGRAPH_LEGEND_ALL :{BLACK}Όλες STR_LINKGRAPH_LEGEND_NONE :{BLACK}Καμία +STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Επιλογή εταιριών για να εμφανιστούν # Linkgraph legend window and linkgraph legend in smallmap +STR_LINKGRAPH_LEGEND_UNUSED :{TINY_FONT}{BLACK}μη χρησιμοποιημένο +STR_LINKGRAPH_LEGEND_SATURATED :{TINY_FONT}{BLACK}κορεσμένο +STR_LINKGRAPH_LEGEND_OVERLOADED :{TINY_FONT}{BLACK}υπερφορτωμένο # Base for station construction window(s) STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Κάλυψη περιοχής @@ -2397,15 +2463,15 @@ STR_STATION_CLASS_WAYP :Σημείο κ # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}Επιλογή Σηματοδότη STR_BUILD_SIGNAL_SEMAPHORE_NORM_TOOLTIP :{BLACK}Σηματοδότες Τμήματος (σηματοφόρος){}Αυτός είναι ο πιο βασικός τύπος σηματοδότη, επιτρέποντας μόνο ένα τρένο να βρίσκεται σε κάθε τμήμα κάθε φορά -STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}Σηματοδότης-Εισόδου (σηματοφόρος){}Πράσινο όσο υπάρχει ένας ή περισσότεροι πράσινοι σηματοδότες-εξόδου στο επόμενο τμήμα γράμμης. Αλλιώς δείχνει κόκκινο -STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}Σηματοδότης-Εξόδου (σηματοφόρος){}Συμπεριφέρεται με τον ίδιο τρόπο οπως οι σηματοδότες τμήματος αλλά είναι απαραίτητο να τεθεί το σωστό χρώμα στους προ-σηματοδότες είσοδου και συνδιασμένους -STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}Συνδυασμένος Σηματοδότης (σηματοφόρος){}Ο συνδυασμένος σηματοδότης απλά λειτουργεί ταυτόχρονα ως σηματοδότης εισόδου και εξόδου. Αυτό επιτρέπει το κτίσιμο μεγάλυτερων «δέντρων» με προ-σηματοδότες +STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}Σηματοδότης-Εισόδου (σηματοφόρος){}Πράσινο όσο υπάρχει ένας ή περισσότεροι πράσινοι σηματοδότες-εξόδου στο επόμενο τμήμα γράμμης. Διαφορετικά δείχνει κόκκινο +STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}Σηματοδότης-Εξόδου (σηματοφόρος){}Συμπεριφέρεται με τον ίδιο τρόπο οπως οι σηματοδότες τμήματος αλλά είναι απαραίτητο να τεθεί το σωστό χρώμα στους προ-σηματοδότες είσοδου και συνδυαστικούς +STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}Συνδυαστικός Σηματοδότης (σηματοφόρος){}Ο συνδυαστικός σηματοδότης απλά λειτουργεί ταυτόχρονα ως σηματοδότης εισόδου και εξόδου. Αυτό επιτρέπει το κτίσιμο μεγάλυτερων «δέντρων» με προ-σηματοδότες STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}Σηματοδότης Τροχιάς (σηματοφόρος){}Ένας σηματοδότης τροχιάς επιτρέπει σε περισσότερα από ένα τρένο να είναι σε ένα κομμάτι ελέγχου την ίδια στιγμή, εάν το τρένο μπορεί να δεσμεύσει τροχιά σε ασφαλές σημείο στάσης. Κανονικοί σηματοδότες τροχιάς μπορούν να περαστούν από την πίσω πλευρά STR_BUILD_SIGNAL_SEMAPHORE_PBS_OWAY_TOOLTIP :{BLACK}Μονόδρομος Σηματοδότης Τροχιάς (σηματοφόρος){}Ένας σηματοδότης τροχιάς επιτρέπει σε περισσότερα από ένα τρένο να είναι σε ένα κομμάτι ελέγχου την ίδια στιγμή, εάν το τρένο μπορεί να δεσμεύσει τροχιά σε ασφαλές σημείο στάσης. Μονόδρομοι σηματοδότες τροχιάς δεν μπορούν να περαστούν από την πίσω πλευρά. STR_BUILD_SIGNAL_ELECTRIC_NORM_TOOLTIP :{BLACK}Σηματοδότης Τμήματος (ηλεκτρικός){}Αυτός είναι ο πιο βασικός τύπος σηματοδότη, επιτρέποντας μόνο ένα τρένο να είναι στο ίδιο τμήμα την ίδια στιγμή. -STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}Σηματοδότης Εισόδου (ηλεκτρικός){}Πράσινο όσο υπάρχει ένας ή περισσότεροι πράσινοι σηματοδότες εξόδου από το επόμενο τμήμα γραμμής. Αλλιώς είναι κόκκινο -STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}Σηματοδότης Εξόδου (ηλεκτρικός){}Συμπεριφέρεται με τον ίδιο τρόπο όπως οι σηματοδότες τμήματος αλλά είναι απαραίτητο να θέσει το σωστό χρώμα στους προ-σηματοδότες εισόδου και συνδυασμένους -STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Συνδυασμένος Σηματοδότης (ηλεκτρικός){}Ο συνδυασμένος σηματοδότης δουλεύει απλά ως σηματοδότης εισόδου και εξόδου. Αυτό σας επιτρέπει το κτίσιμο μεγαλύτερων «δέντρων» με προ-σηματοδότες +STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}Σηματοδότης Εισόδου (ηλεκτρικός){}Πράσινο όσο υπάρχει ένας ή περισσότεροι πράσινοι σηματοδότες εξόδου στο επόμενο τμήμα γραμμής. Διαφορετικά είναι κόκκινο +STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}Σηματοδότης Εξόδου (ηλεκτρικός){}Συμπεριφέρεται με τον ίδιο τρόπο όπως οι σηματοδότες τμήματος αλλά είναι απαραίτητο να θέσει το σωστό χρώμα στους προ-σηματοδότες εισόδου και συνδυαστικούς +STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Συνδυαστικός Σηματοδότης (ηλεκτρικός){}Ο συνδυαστικός σηματοδότης δουλεύει απλά ως σηματοδότης εισόδου και εξόδου ταυτόχρονα. Αυτό σας επιτρέπει το κτίσιμο μεγάλων «δέντρων» με προ-σηματοδότες STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}Σηματοδότης Τροχιάς (ηλεκτρικός){}Ένας σηματοδότης τροχιάς επιτρέπει σε περισσότερα από ένα τρένο να είναι σε ένα κομμάτι ελέγχου την ίδια στιγμή, εάν το τρένο μπορεί να δεσμεύσει τροχιά σε ασφαλές σημείο στάσης. Κανονικοί σηματοδότες τροχιάς μπορούν να περαστούν από την πίσω πλευρά STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}Μονόδρομος Σηματοδότης Τροχιάς (ηλεκτρικός){}Ένας σηματοδότης τροχιάς επιτρέπει σε περισσότερα από ένα τρένο να είναι σε ένα κομμάτι ελέγχου την ίδια στιγμή, εάν το τρένο μπορεί να δεσμεύσει τροχιά σε ασφαλές σημείο στάσης. Μονόδρομοι σηματοδότες τροχιάς δεν μπορούν να περαστούν από την πίσω πλευρά STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Μετατροπέας Σηματοδότη{}Όταν επιλέγεται, κάνοντας κλικ σε έναν υπάρχον σηματοδότη θα τον μετατρέψει στον επιλεγμένο τύπο και παραλλαγή σηματοδότη. Με Ctrl+Κλικ εναλλάσσεται με την υπάρχουσα παραλλαγή. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος μετατροπής @@ -2603,7 +2669,7 @@ STR_INDUSTRY_CARGOES_INDUSTRY_TOOLTIP :{BLACK}Κάντ STR_INDUSTRY_CARGOES_CARGO_TOOLTIP :{BLACK}{STRING}{}Κάντε κλικ στο εμπόρευμα για να δείτε τους προμηθευτές και τους πελάτες STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}Εμφάνιση αλυσίδας STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP :{BLACK}Εμφάνιση βιομηχανιών προμήθειας και αποδοχής για το εμπόρευμα -STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP :{BLACK}Σύνδεση με το μικρό χάρτη +STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP :{BLACK}Σύνδεση στο μικρό χάρτη STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}Επιλογή των εμφανιζόμενων βιομηχανιών και στο μικρό χάρτη STR_INDUSTRY_CARGOES_SELECT_CARGO :{BLACK}Επιλογή εμπορευμάτων STR_INDUSTRY_CARGOES_SELECT_CARGO_TOOLTIP :{BLACK}Επιλέξτε το εμπόρευμα που θέλετε να εμφανίσετε @@ -2614,10 +2680,10 @@ STR_INDUSTRY_CARGOES_SELECT_INDUSTRY_TOOLTIP :{BLACK}Επιλ STR_LAND_AREA_INFORMATION_CAPTION :{WHITE}Πληροφορίες Περιοχής Εδάφους STR_LAND_AREA_INFORMATION_COST_TO_CLEAR_N_A :{BLACK}Κόστος καθαρισμού: {LTBLUE}Μ/Δ STR_LAND_AREA_INFORMATION_COST_TO_CLEAR :{BLACK}Κόστος καθαρισμού: {RED}{CURRENCY_LONG} -STR_LAND_AREA_INFORMATION_REVENUE_WHEN_CLEARED :{BLACK}Όφελος όταν καθαριστεί: {LTBLUE}{CURRENCY_LONG} -STR_LAND_AREA_INFORMATION_OWNER_N_A :Μη Διαθέσιμο +STR_LAND_AREA_INFORMATION_REVENUE_WHEN_CLEARED :{BLACK}Κέρδος όταν καθαριστεί: {LTBLUE}{CURRENCY_LONG} +STR_LAND_AREA_INFORMATION_OWNER_N_A :Μ/Δ STR_LAND_AREA_INFORMATION_OWNER :{BLACK}Ιδιοκτήτης: {LTBLUE}{STRING} -STR_LAND_AREA_INFORMATION_ROAD_OWNER :{BLACK}Ιδιοκτήτης της οδούς: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_ROAD_OWNER :{BLACK}Ιδιοκτήτης δρόμου: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Ιδιοκτήτης του τροχιοδρόμου: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_RAIL_OWNER :{BLACK}Ιδιοκτήτης του σιδηροδρόμου: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY :{BLACK}Τοπική αρχή: {LTBLUE}{STRING} @@ -2653,7 +2719,7 @@ STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBSSIGNALS :{STRING} σιδ STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NOENTRYSIGNALS :{STRING} σιδηροτροχιά με σήματα μονόδρομους διαδρομής STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PRESIGNALS :{STRING} σιδηροτροχιά με σήματα τμήματος και ειδοποίησης STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_EXITSIGNALS :{STRING} σιδηροτροχιά με σήματα τμήματος και εξόδου -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_COMBOSIGNALS :{STRING} σιδηροτροχιά με σήματα τμήματος και συνδιαστικά +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_COMBOSIGNALS :{STRING} σιδηροτροχιά με σήματα τμήματος και συνδυαστικά STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PBSSIGNALS :{STRING} σιδηροτροχιά με σήματα τμήματος και διαδρομής STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_NOENTRYSIGNALS :{STRING} σιδηροτροχιά με σήματα τμήματος και μονόδρομους διαδρομής STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_EXITSIGNALS :{STRING} σιδηροτροχιά με σήματα ειδοποίησης και εξόδου @@ -2719,7 +2785,7 @@ STR_LAI_BRIDGE_DESCRIPTION_ROAD_WOODEN :Ξύλινη γ STR_LAI_BRIDGE_DESCRIPTION_ROAD_CONCRETE :Τσιμεντένια γέφυρα δρόμου STR_LAI_BRIDGE_DESCRIPTION_ROAD_TUBULAR_STEEL :Κυλινδρική γέφυρα δρόμου -STR_LAI_BRIDGE_DESCRIPTION_AQUEDUCT :Κανάλι +STR_LAI_BRIDGE_DESCRIPTION_AQUEDUCT :Υπερυψωμένο κανάλι STR_LAI_OBJECT_DESCRIPTION_TRANSMITTER :Αναμεταδότης STR_LAI_OBJECT_DESCRIPTION_LIGHTHOUSE :Φάρος @@ -2730,7 +2796,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Ιδιοκτη STR_ABOUT_OPENTTD :{WHITE}Σχετικά με το OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Αρχικά Πνευματικά Δικαιώματα {COPYRIGHT} 1995 Chris Sawyer, Όλα τα δικαιώματα διατηρούνται STR_ABOUT_VERSION :{BLACK}Έκδοση OpenTTD{REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Η ομάδα του OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 Η ομάδα του OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Αποθήκευση Παιχνιδιού @@ -2749,6 +2815,7 @@ STR_SAVELOAD_SAVE_BUTTON :{BLACK}Αποθ STR_SAVELOAD_SAVE_TOOLTIP :{BLACK}Αποθήκευση παιχνιδιού, χρησιμοποιώντας το επιλεγμένο όνομα STR_SAVELOAD_LOAD_BUTTON :{BLACK}Φόρτωση STR_SAVELOAD_LOAD_TOOLTIP :{BLACK}Φόρτωση του επιλεγμένου παιχνιδιού +STR_SAVELOAD_LOAD_HEIGHTMAP_TOOLTIP :{BLACK}Φόρτωση του επιλεγμένου χάρτη υψομετρίας STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Λεπτομέρειες Παιχνιδιού STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Δεν υπάρχουν πληροφορίες. STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} @@ -2851,6 +2918,8 @@ STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Μετα STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Μετακινήστε το επιλεγμένο αρχείο NewGRF πάνω στη λίστα STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Μετακίνηση Κάτω STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Μετακινήστε το επιλεγμένο αρχείο NewGRF κάτω στη λίστα +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Αναβάθμιση +STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Αναβάθμιση αρχείων NewGRF για τα οποία μια νεότερη έκδοση έχει εγκατασταθεί STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Μία λίστα που περιέχει τα εγκατεστημένα αρχεία NewGRF STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Ρύθμιση παραμέτρων @@ -2876,6 +2945,14 @@ STR_NEWGRF_SETTINGS_DISABLED :{RED}Απενε STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Μη συμβατό με αυτήν την έκδοση του OpenTTD # NewGRF save preset window +STR_SAVE_PRESET_CAPTION :{WHITE}Αποθήκευση προκαθορισμένου +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Λίστα διαθέσιμων προκαθορισμένων, επιλέχτε ένα για την αντιγραφή το στο όνομα αποθήκευσης απο κάτω +STR_SAVE_PRESET_TITLE :{BLACK}Δώστε ένα όνομα για το προκαθορισμένο +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Τρέχον επιλεγμένο όνομα για το προκαθορισμένο για αποθήκευση +STR_SAVE_PRESET_CANCEL :{BLACK}Ακύρωση +STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Μη αλλαγή του προκαθορισμένου +STR_SAVE_PRESET_SAVE :{BLACK}Αποθήκευση +STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Αποθήκευση προκαθορισμένου, χρησιμοποιώντας το επιλεγμένο όνομα # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Αλλαγή παραμέτρων NewGRF @@ -2906,7 +2983,11 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Μετα STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Προηγούμενο στοιχείο STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Προχώρησε στο προηγούμενο κανονικό sprite, προσπερνώντας οποιαδήποτε ψευδό/επαναχρωματιζόμενα/γραμματοσειράς sprites και ξαναεκτέλεσε τη διαδικασία από το πρώτο sprite ως το τελεταίο STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Επανεμφάνιση του επιλεγμένου sprite. Η ευθυγράμμιση αγνοείται όταν γίνεται η σχεδίαση του sprite -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Μετακίνηση του sprite τριγύρω, αλλάζοντας τα στίγματα Χ και Υ +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Μετακίνηση του sprite τριγύρω, αλλάζοντας τα στίγματα Χ και Υ. Ctrl+Κλικ για να μετακινήσετε το sprite μονάδες τη φορά. +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Επαναφορά σχετικού +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Επαναφορά των τρεχούμενων σχετικών στιγμάτων +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Στίγμα X: {NUM}, Στίγμα Y: {NUM} (Απόλυτο) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK} Στίγμα X: {NUM}, Στίγμα Y: {NUM} (Σχετικό) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Επιλογή sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Επιλογή ενός sprite από οπουδήποτε στη οθόνη @@ -2917,7 +2998,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Προειδοποίηση: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Λάθος: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Καταστροφικό: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ένα καταστροφικό λάθος για τα NewGRF έχει συμβεί: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ένα καταστροφικό λάθος για τα NewGRF έχει συμβεί:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :Το {1:STRING} δεν θα δουλέψει με την έκδοση του TTDPatch όπως αναφέρεται από το OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :Το {1:STRING} είναι για την έκδοση {STRING} του TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} είναι σχεδιασμένο να δουλέψει με το {STRING} @@ -3059,12 +3140,15 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW}Επι STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{YELLOW}Χτίστε ένα άγαλμα προς τιμήν της εταιρίας σας.{} Κόστος: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW}Χρηματοδοτήστε την κατασκευή νέων εμπορικών κτιρίων στην πόλη.{} Κόστος: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW}Αγορά αποκλειστικών δικαιωμάτων διάρκειας ενός χρόνου για αυτήν την πόλη. Η τοπική αρχή θα επιτρέπει στους επιβάτες και τα φορτία να χρησιμοποιούν μόνο τους σταθμούς της εταιρίας σας.{} Κόστος: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}Δωροδοκήστε τις τοπικές αρχές για να αυξήσετε τα ποσοστά σας, με ρίσκο ένα μεγάλο πρόστιμο εάν συλληφθείτε.{}Κόστος: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}Δωροδοκήστε τις τοπικές αρχές για να αυξήσετε τα ποσοστά αποδοχής σας, με ρίσκο ένα μεγάλο πρόστιμο εάν συλληφθείτε.{}Κόστος: {CURRENCY_LONG} # Goal window +STR_GOALS_CAPTION :{WHITE}{COMPANY} Στόχοι: +STR_GOALS_SPECTATOR_CAPTION :{BLACK}Καθολικοί στόχοι: STR_GOALS_GLOBAL_TITLE :{BLACK}Καθολικοί στόχοι: STR_GOALS_TEXT :{ORANGE}{STRING} STR_GOALS_NONE :{ORANGE}- Κανένας - +STR_GOALS_SPECTATOR_NONE :{ORANGE}- Μη εφαρμόσιμος - STR_GOALS_PROGRESS :{ORANGE}{STRING} STR_GOALS_PROGRESS_COMPLETE :{GREEN}{STRING} STR_GOALS_COMPANY_TITLE :{BLACK}Εταιρικοί στόχοι: @@ -3107,12 +3191,16 @@ STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Κάνετε κλικ στην υπηρεσία για κεντράρισμα στην βιομηχανία/πόλη. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία της βιομηχανίας/πόλης # Story book window +STR_STORY_BOOK_CAPTION :{WHITE}{COMPANY} Βιβλίο Ιστορίας +STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}Παγκόσμιο Βιβλίο Ιστορίας STR_STORY_BOOK_TITLE :{YELLOW}{STRING} STR_STORY_BOOK_GENERIC_PAGE_ITEM :Σελίδα {NUM} +STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Μεταβείτε σε μια συγκεκριμένη σελίδα επιλέγοντάς την από αυτή τη λίστα. STR_STORY_BOOK_PREV_PAGE :{BLACK}Προηγούμενη STR_STORY_BOOK_PREV_PAGE_TOOLTIP :{BLACK}Μεταβαίνει στη προηγούμενη σελίδα STR_STORY_BOOK_NEXT_PAGE :{BLACK}Επόμενη STR_STORY_BOOK_NEXT_PAGE_TOOLTIP :{BLACK}Μεταβαίνει στην επόμενη σελίδα +STR_STORY_BOOK_INVALID_GOAL_REF :{RED}Μη έγκυρη αναφορά στόχου # Station list window STR_STATION_LIST_TOOLTIP :{BLACK}Ονόματα σταθμών - κάνετε κλικ στο όνομα για κεντράρισμα στο σταθμό. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία του σταθμού @@ -3136,16 +3224,35 @@ STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Εμφά STR_STATION_VIEW_ACCEPTS_CARGO :{BLACK}Δέχεται: {WHITE}{CARGO_LIST} STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_SELF :{BLACK}Αυτός ο σταθμός έχει αποκλειστικά δικαιώματα μεταφοράς σε αυτήν την πόλη. -STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_COMPANY :{YELLOW}{COMPANY}{BLACK} αγόρασε αποκλειστικά δικαιώματα για αυτήν την πόλη. +STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_COMPANY :Η {YELLOW}{COMPANY}{BLACK} αγόρασε αποκλειστικά δικαιώματα για αυτήν την πόλη. STR_STATION_VIEW_RATINGS_BUTTON :{BLACK}Βαθμολογίες STR_STATION_VIEW_RATINGS_TOOLTIP :{BLACK}Εμφάνιση στατιστικών σταθμού +STR_STATION_VIEW_SUPPLY_RATINGS_TITLE :{BLACK}Μηνιαία προμήθεια και τοπικό ποσοστό αποδοχής: STR_STATION_VIEW_CARGO_SUPPLY_RATING :{WHITE}{STRING}: {YELLOW}{COMMA} / {STRING} ({COMMA}%) +STR_STATION_VIEW_GROUP :{BLACK}Ομαδοποίηση από +STR_STATION_VIEW_WAITING_STATION :Σταθμός: Σε αναμονή +STR_STATION_VIEW_WAITING_AMOUNT :Ποσότητα: Σε αναμονή +STR_STATION_VIEW_PLANNED_STATION :Σταθμός: Προγραμματισμένο +STR_STATION_VIEW_PLANNED_AMOUNT :Ποσότητα: Σχεδιασμένο STR_STATION_VIEW_FROM :{YELLOW}{CARGO_SHORT} από {STATION} STR_STATION_VIEW_VIA :{YELLOW}{CARGO_SHORT} μέσω {STATION} STR_STATION_VIEW_TO :{YELLOW}{CARGO_SHORT} προς {STATION} +STR_STATION_VIEW_FROM_ANY :{RED}{CARGO_SHORT} από άγνωστο σταθμό +STR_STATION_VIEW_TO_ANY :{RED}{CARGO_SHORT} φορτίο σε οποινδήποτε σταθμό +STR_STATION_VIEW_VIA_ANY :{RED}{CARGO_SHORT} μέσω οποιουδήποτε σταθμού +STR_STATION_VIEW_FROM_HERE :{GREEN}{CARGO_SHORT} από αυτό το σταθμό +STR_STATION_VIEW_VIA_HERE :{GREEN}{CARGO_SHORT} σταματάει σε αυτόν τον σταθμό +STR_STATION_VIEW_TO_HERE :{GREEN}{CARGO_SHORT} σε αυτό το σταθμό +STR_STATION_VIEW_NONSTOP :{YELLOW}{CARGO_SHORT} χωρίς στάση +STR_STATION_VIEW_GROUP_S_V_D :Πηγή-Μέσω-Προορισμός-Μέσω +STR_STATION_VIEW_GROUP_S_D_V :Πηγή-Προορισμός-Μέσω +STR_STATION_VIEW_GROUP_V_S_D :Μέσω-Πηγή-Προορισμός +STR_STATION_VIEW_GROUP_V_D_S :Μέσω-Προορισμός-Πηγή +STR_STATION_VIEW_GROUP_D_S_V :Προορισμός-Πηγή-Μέσω +STR_STATION_VIEW_GROUP_D_V_S :Προορισμός-Μέσω-Πηγή ############ range for rating starts STR_CARGO_RATING_APPALLING :Απαίσια @@ -3288,6 +3395,7 @@ STR_INDUSTRY_VIEW_PRODUCTION_LAST_MONTH_TITLE :{BLACK}Παρα STR_INDUSTRY_VIEW_TRANSPORTED :{YELLOW}{CARGO_LONG}{STRING}{BLACK} ({COMMA}% μεταφέρθηκαν) STR_INDUSTRY_VIEW_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα εικόνας στην περιοχή της βιομηχανίας. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην περιοχή της βιομηχανίας STR_INDUSTRY_VIEW_PRODUCTION_LEVEL :{BLACK}Επίπεδο παραγωγής: {YELLOW}{COMMA}% +STR_INDUSTRY_VIEW_INDUSTRY_ANNOUNCED_CLOSURE :{YELLOW}Η βιομηχανία έχει ανακοινώσει άμεσο κλείσιμο! ############ range for requires starts STR_INDUSTRY_VIEW_REQUIRES_CARGO :{BLACK}Απαιτεί: {YELLOW}{STRING}{STRING} @@ -3350,12 +3458,14 @@ STR_GROUP_DEFAULT_ROAD_VEHICLES :Μη ομαδο STR_GROUP_DEFAULT_SHIPS :Μη ομαδοποιημένα πλοία STR_GROUP_DEFAULT_AIRCRAFTS :Μη ομαδοποιημένα αεροσκάφη -STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Ομάδες - κάντε κλικ σε μία ομάδα για δείτε όλα τα οχήματα που της ανήκουν +STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Ομάδες - κάντε κλικ σε μία ομάδα για να δείτε όλα τα οχήματα που της ανήκουν. Σύρρτε ομάδες για να ρυθμίσετα την ιεραρχία. STR_GROUP_CREATE_TOOLTIP :{BLACK}Κάντε κλικ για δημιουργήσετε ομάδα STR_GROUP_DELETE_TOOLTIP :{BLACK}Διαγραφή της επιλεγμένης ομάδας STR_GROUP_RENAME_TOOLTIP :{BLACK}Μετονομασία της επιλεγμένης ομάδας STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Κάντε κλικ για προστατέψετε αυτήν την ομάδα από την γενική αυτόματη αντικατάσταση +STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Διαγραφή ομάδας +STR_GROUP_DELETE_QUERY_TEXT :Είστε σίγουροι ότι θέλετε να διαγράψετε αυτή την ομάδα και οποιουσδήποτε απογόνους; STR_GROUP_ADD_SHARED_VEHICLE :Προσθήκη κοινόχρηστων οχημάτων STR_GROUP_REMOVE_ALL_VEHICLES :Αφαίρεση όλων των οχημάτων @@ -3472,7 +3582,7 @@ STR_DEPOT_AUTOREPLACE_ROAD_VEHICLE_TOOLTIP :{BLACK}Αυτό STR_DEPOT_AUTOREPLACE_SHIP_TOOLTIP :{BLACK}Αυτόματη αντικατάσταση όλων των πλοίων στο ναυπηγείο STR_DEPOT_AUTOREPLACE_AIRCRAFT_TOOLTIP :{BLACK}Αυτόματη αντικατάσταση όλων των αεροσκαφών του υποστέγου -STR_DEPOT_TRAIN_NEW_VEHICLES_BUTTON :{BLACK}Νέα Τρένα/Βαγόνια +STR_DEPOT_TRAIN_NEW_VEHICLES_BUTTON :{BLACK}Νέα Οχήματα STR_DEPOT_ROAD_VEHICLE_NEW_VEHICLES_BUTTON :{BLACK}Νέα Οχήματα STR_DEPOT_SHIP_NEW_VEHICLES_BUTTON :{BLACK}Νέα Πλοία STR_DEPOT_AIRCRAFT_NEW_VEHICLES_BUTTON :{BLACK}Νέα Αεροσκάφη @@ -3518,17 +3628,17 @@ STR_DEPOT_SELL_CONFIRMATION_TEXT :{YELLOW}Πρό STR_ENGINE_PREVIEW_CAPTION :{WHITE}Μήνυμα από κατασκευαστή οχημάτων STR_ENGINE_PREVIEW_MESSAGE :{GOLD}Μόλις ολοκληρώσαμε την σχεδίαση {G ενός μίας ενός} {G νέου νέας νέου} {STRING.geniki} - θα ενδιαφερόσασταν για ενός έτους αποκλειστικής χρήσης αυτού του οχήματος, για να δούμε την απόδοση του πριν το κάνουμε ευρέως διαθέσιμο; STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE :{G=f}ατμομηχανή -STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE.geniki :{G=f}ατμομηχανής +STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE.geniki :ατμομηχανής STR_ENGINE_PREVIEW_ROAD_VEHICLE :{G=n}οχήματος δρόμου -STR_ENGINE_PREVIEW_ROAD_VEHICLE.geniki :{G=n}Οχήματος δρόμου +STR_ENGINE_PREVIEW_ROAD_VEHICLE.geniki :Οχήματος δρόμου STR_ENGINE_PREVIEW_AIRCRAFT :{G=n}αεροσκάφους -STR_ENGINE_PREVIEW_AIRCRAFT.geniki :{G=n}αεροπλάνου +STR_ENGINE_PREVIEW_AIRCRAFT.geniki :αεροσκάφους STR_ENGINE_PREVIEW_SHIP :{G=n}πλοίου -STR_ENGINE_PREVIEW_SHIP.geniki :{G=n}πλοιού +STR_ENGINE_PREVIEW_SHIP.geniki :πλοίου STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE :{G=f}μηχανής μονοτρόχιου -STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE.geniki :{G=f}μηχανής monorail +STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE.geniki :μηχανής monorail STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE :{G=f}μηχανής maglev -STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE.geniki :{G=f}μηχανής maglev +STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE.geniki :μηχανής maglev STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Κόστος: {CURRENCY_LONG} Βάρος: {WEIGHT_SHORT}{}Ταχύτητα: {VELOCITY} Δύναμη Κινητήρα: {POWER}{}Κόστος Λειτουργίας: {CURRENCY_LONG}/έτος{}Χωρητικότητα: {CARGO_LONG} STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Κόστος: {CURRENCY_LONG} Βάρος: {WEIGHT_SHORT}{}Ταχύτητα: {VELOCITY} Δύναμη Κινητήρα: {POWER} Μεγ. Ε.Δ: {6:FORCE}{}Λειτουργικό Κόστος: {4:CURRENCY_LONG}/έτος{}Χωρητικότητα: {5:CARGO_LONG} @@ -3568,7 +3678,7 @@ STR_REPLACE_ENGINES :Μηχανές STR_REPLACE_WAGONS :Βαγόνια STR_REPLACE_HELP_RAILTYPE :{BLACK}Επιλέξτε τον τύπο σιδηροδρόμου για τον οποίο θέλετε να γίνει η αντικατάσταση των μηχανών -STR_REPLACE_HELP_REPLACE_INFO_TAB :{BLACK}Εμφανίζει ποια μηχανή στα αριστερά θα αντικατασταθεί, εάν υπάρχει +STR_REPLACE_HELP_REPLACE_INFO_TAB :{BLACK}Εμφανίζει ποια μηχανή αυτή στα αριστερά θα αντικατασταθεί, εάν υπάρχει STR_REPLACE_RAIL_VEHICLES :Οχήματα Σιδηροδρόμου STR_REPLACE_ELRAIL_VEHICLES :Οχήματα Ηλεκτρικού Σιδηροδρόμου STR_REPLACE_MONORAIL_VEHICLES :Οχήματα Μονοτρόχιου @@ -3603,7 +3713,7 @@ STR_VEHICLE_VIEW_SHIP_REFIT_TOOLTIP :{BLACK}Μετα STR_VEHICLE_VIEW_AIRCRAFT_REFIT_TOOLTIP :{BLACK}Μετατροπή του αεροσκάφους για μεταφέρει διαφορετικό τύπο εμπορεύματος STR_VEHICLE_VIEW_TRAIN_REVERSE_TOOLTIP :{BLACK}Αναστροφή κατεύθυνσης τρένου -STR_VEHICLE_VIEW_ROAD_VEHICLE_REVERSE_TOOLTIP :{BLACK}Εξανάγκαση του οχήματος να γυρίσει ανάποδα +STR_VEHICLE_VIEW_ROAD_VEHICLE_REVERSE_TOOLTIP :{BLACK}Εξανάγκαση του οχήματος να κάνει αναστροφή STR_VEHICLE_VIEW_TRAIN_ORDERS_TOOLTIP :{BLACK}Εμφάνιση των εντολών του τρένου. Με Ctrl+Κλικ εμφανίζεται το δρομολόγιο του τρένου STR_VEHICLE_VIEW_ROAD_VEHICLE_ORDERS_TOOLTIP :{BLACK}Εμφάνιση των εντολών του οχήματος. Με Ctrl+Κλικ εμφανίζεται το δρομολόγιο @@ -3621,13 +3731,13 @@ STR_VEHICLE_VIEW_SHIP_STATE_START_STOP_TOOLTIP :{BLACK}Τρέχ STR_VEHICLE_VIEW_AIRCRAFT_STATE_START_STOP_TOOLTIP :{BLACK}Τρέχουσα ενέργεια αεροσκάφους - κάντε κλικ εδώ για ξεκινήσετε/σταματήσετε το πλοίο. Με Ctrl+Κλικ πηγαίνετε στον προορισμό # Messages in the start stop button in the vehicle view -STR_VEHICLE_STATUS_LOADING_UNLOADING :{LTBLUE}Φόρτωση / Ξεφόρτωση +STR_VEHICLE_STATUS_LOADING_UNLOADING :{LTBLUE}Φόρτωση / Εκφόρτωση STR_VEHICLE_STATUS_LEAVING :{LTBLUE}Αναχωρεί -STR_VEHICLE_STATUS_CRASHED :{RED}Κατεστραμμένο! +STR_VEHICLE_STATUS_CRASHED :{RED}Καταστράφηκε! STR_VEHICLE_STATUS_BROKEN_DOWN :{RED}Χαλασμένο STR_VEHICLE_STATUS_STOPPED :{RED}Σταματημένο STR_VEHICLE_STATUS_TRAIN_STOPPING_VEL :{RED}Σταματάει, {VELOCITY} -STR_VEHICLE_STATUS_TRAIN_NO_POWER :{RED}Χωρίς ενέργεια κίνησης +STR_VEHICLE_STATUS_TRAIN_NO_POWER :{RED}Χωρίς ενέργεια STR_VEHICLE_STATUS_TRAIN_STUCK :{ORANGE}Αναμονή για ελεύθερη τροχιά STR_VEHICLE_STATUS_AIRCRAFT_TOO_FAR :{ORANGE}Υπερβολικά μακριά από τον επόμενο προορισμό @@ -3718,7 +3828,7 @@ STR_REFIT_NEW_CAPACITY_COST_OF_REFIT :{BLACK}Νέα STR_REFIT_NEW_CAPACITY_INCOME_FROM_REFIT :{BLACK}Νέα χωρητικότητα: {GOLD}{CARGO_LONG}{}{BLACK}Κέρδος από τη μετατροπή: {GREEN}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_COST_OF_AIRCRAFT_REFIT :{BLACK}Νέα χωρητικότητα: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Κόστος μετατροπής: {RED}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_INCOME_FROM_AIRCRAFT_REFIT :{BLACK}Νέα χωρητικότητα: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Κέρδος από τη μετατροπή: {GREEN}{CURRENCY_LONG} -STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Επιλέξτε τα οχήματα για μετατροπή. Σύροντας με το ποντίκι επιτρέπει επιλογή πολλαπλών οχημάτων. Κάνοντας κλικ σε άδειο χώρο θα επιλέξει ολόκληρο το όχημα. Με Ctrl+Κλικ θα γίνει επιλογή του οχήματος και της επόμενης αλυσίδας +STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Επιλέξτε τα οχήματα για μετατροπή. Σύροντας με το ποντίκι επιτρέπει την επιλογή πολλαπλών οχημάτων. Κάνοντας κλικ σε άδειο χώρο θα επιλέξει ολόκληρο το όχημα. Με Ctrl+Κλικ θα γίνει επιλογή του οχήματος και της ακολουθούμενης αλυσίδας. STR_REFIT_TRAIN_LIST_TOOLTIP :{BLACK}Επιλέξτε τον τύπο εμπορεύματος που θα μεταφέρει το τρένο STR_REFIT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Επιλέξτε τον τύπο εμπορεύματος που θα μεταφέρει το όχημα @@ -3771,7 +3881,7 @@ STR_ORDER_TOOLTIP_UNLOAD :{BLACK}Αλλά STR_ORDER_REFIT :{BLACK}Μετατροπή STR_ORDER_REFIT_TOOLTIP :{BLACK}Επιλέξτε τον τύπο εμπορεύματος για μετατροπή σε αυτήν την εντολή. Με Ctrl+Κλικ αφαιρείται η εντολή μετατροπής -STR_ORDER_REFIT_AUTO :{BLACK}Αυτόματη μετατροπή +STR_ORDER_REFIT_AUTO :{BLACK}Μετατροπή στο σταθμό STR_ORDER_REFIT_AUTO_TOOLTIP :{BLACK}Επιλογή του τύπου φορτίου για αυτόματη μετατροπή σε αυτήν την εντολή. Με Ctrl+Κλικ αφαιρείται η εντολή μετατροπής. Η αυτόματη μετατροπή θα γίνεται μόνο όταν το επιτρέπει το όχημα STR_ORDER_DROP_REFIT_AUTO :Προκαθορισμένο φορτίο STR_ORDER_DROP_REFIT_AUTO_ANY :Διαθέσιμο φορτίο @@ -3782,7 +3892,7 @@ STR_ORDER_DROP_SERVICE_DEPOT :Επισκευ STR_ORDER_DROP_HALT_DEPOT :Στάση STR_ORDER_SERVICE_TOOLTIP :{BLACK}Παράλειψη αυτής της εντολής εκτός αν χρειάζεται επισκευή -STR_ORDER_CONDITIONAL_VARIABLE_TOOLTIP :{BLACK}Δεδομένα οχήματος για να γίνει άλμα +STR_ORDER_CONDITIONAL_VARIABLE_TOOLTIP :{BLACK}Δεδομένα οχήματος για να βασιστεί το άλμα # Conditional order variables, must follow order of OrderConditionVariable enum STR_ORDER_CONDITIONAL_LOAD_PERCENTAGE :{G=n}Ποσοστό φόρτωσης @@ -3813,7 +3923,7 @@ STR_ORDERS_DELETE_BUTTON :{BLACK}Διαγ STR_ORDERS_DELETE_TOOLTIP :{BLACK}Διαγραφή της επιλεγμένης εντολής STR_ORDERS_DELETE_ALL_TOOLTIP :{BLACK}Διαγραφή όλων των εντολών STR_ORDERS_STOP_SHARING_BUTTON :{BLACK}Διακοπή μοιράσματος -STR_ORDERS_STOP_SHARING_TOOLTIP :{BLACK}Διακοπή μοιράσματος της λίστας εντολών. Με Ctrl+Κλικ διαγράφει επιπλέον όλες τις εντολές από αυτό το όχημα +STR_ORDERS_STOP_SHARING_TOOLTIP :{BLACK}Διακοπή μοιράσματος της λίστας εντολών. Με Ctrl+Κλικ διαγράφονται επιπλέον όλες τις εντολές από αυτό το όχημα STR_ORDERS_GO_TO_BUTTON :{BLACK}Πήγαινε Στο STR_ORDER_GO_TO_NEAREST_DEPOT :Πήγαινε στο κοντινότερο αμαξοστάσιο @@ -3900,9 +4010,13 @@ STR_TIMETABLE_TOOLTIP :{BLACK}Δρομ STR_TIMETABLE_NO_TRAVEL :Μην ταξιδέψεις STR_TIMETABLE_NOT_TIMETABLEABLE :Ταξίδι (αυτόματα· με δρομολόγιο στην επόμενη μη αυτόματη εντολή) STR_TIMETABLE_TRAVEL_NOT_TIMETABLED :Ταξίδεψε (όχι μεσώ δρομολογίου) -STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :Ταξίδεψε με μέγιστη ταχύτητα {2:VELOCITY} (όχι στο δρομολόγιο) +STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :Ταξίδι (μη δρομολογημένο) με μέγιστη ταχύτητα {2:VELOCITY} STR_TIMETABLE_TRAVEL_FOR :Ταξίδεψε για {STRING} -STR_TIMETABLE_TRAVEL_FOR_SPEED :Ταξίδεψε για {STRING} με κατά περισσότερο {VELOCITY} +STR_TIMETABLE_TRAVEL_FOR_SPEED :Ταξίδεψε για {STRING} με στο μέγιστο {VELOCITY} +STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :Ταξίδι (για {STRING}, μη δρομολογημένο) +STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :Ταξίδι γιά {STRING}, (μη δρομολογημένο) με μέγιστη ταχύτητα {VELOCITY} +STR_TIMETABLE_STAY_FOR_ESTIMATED :(αναμονή για {STRING}, μη δρομολογημένο) +STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(ταξίδι για {STRING}, μη δρομολογημένο) STR_TIMETABLE_STAY_FOR :και μείνε για {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :και ταξίδεψε για {STRING} STR_TIMETABLE_DAYS :{COMMA}{NBSP}μέρ{P α ες} @@ -3918,12 +4032,13 @@ STR_TIMETABLE_STATUS_NOT_STARTED :{BLACK}Αυτό STR_TIMETABLE_STATUS_START_AT :{BLACK}Αυτό το δρομολόγιο θα ξεκινήσει στις {STRING} STR_TIMETABLE_STARTING_DATE :{BLACK}Εναρκτήρια ημερομηνία +STR_TIMETABLE_STARTING_DATE_TOOLTIP :{BLACK}Διαλέξτε μια ημερομηνία ως αρχικό σημείο του πίνακα δρομολογίων. Το Ctrl+κλικ θέτει το αρχικό σημείο του πίνακα δρομολογίων και διανέμει τα οχήματα που μοιράζονται τις διαταγές ίσα με βάση τη σχετική τους σειρά αν η διαταγή είναι εξολοκλήρου δρομολογημένη STR_TIMETABLE_CHANGE_TIME :{BLACK}Αλλαγή Χρόνων STR_TIMETABLE_WAIT_TIME_TOOLTIP :{BLACK}Αλλάζει ο χρόνος που παίρνει η επιλεγμένη επιλογή για να εκτελεστεί STR_TIMETABLE_CLEAR_TIME :{BLACK}Εκκαθάριση Χρόνων -STR_TIMETABLE_CLEAR_TIME_TOOLTIP :{BLACK}Εκκαθαρίζει το ποσοστό χρόνου για την επιλεγμένη εντολή +STR_TIMETABLE_CLEAR_TIME_TOOLTIP :{BLACK}Εκκαθαρίζει το χρόνο για την επιλεγμένη εντολή STR_TIMETABLE_CHANGE_SPEED :{BLACK}Αλλαγή Ορίου Ταχύτητας STR_TIMETABLE_CHANGE_SPEED_TOOLTIP :{BLACK}Αλλαγή της μέγιστης ταχύτητας ταξιδιού της επιλεγμένης εντολής @@ -3935,7 +4050,7 @@ STR_TIMETABLE_RESET_LATENESS :{BLACK}Επαν STR_TIMETABLE_RESET_LATENESS_TOOLTIP :{BLACK}Επαναφορά του μετρητή καθυστέρησης, ώστε το όχημα να είναι στην ώρα του STR_TIMETABLE_AUTOFILL :{BLACK}Αυτόματη Γέμιση -STR_TIMETABLE_AUTOFILL_TOOLTIP :{BLACK}Συμπληρώστε το δρομολόγιο αυτόματα με τιμές από το επόμενο ταξίδι (Ctrl+Κλικ για να προσπαθήσει να κρατήσει τους χρόνους αναμονής) +STR_TIMETABLE_AUTOFILL_TOOLTIP :{BLACK}Συμπληρώστε το δρομολόγιο αυτόματα με τις τιμές από το επόμενο ταξίδι (Ctrl+Κλικ για να προσπαθήσει να κρατήσει τους χρόνους αναμονής) STR_TIMETABLE_EXPECTED :{BLACK}Αναμενόμενη STR_TIMETABLE_SCHEDULED :{BLACK}Προγραμματισμένη @@ -4014,7 +4129,7 @@ STR_AI_LIST_URL :{LTBLUE}Ιστ STR_AI_LIST_ACCEPT :{BLACK}Αποδοχή STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Αποδοχή της επιλεγμένης δέσμης ενεργειών -STR_AI_LIST_CANCEL :{BLACK}Άκυρο +STR_AI_LIST_CANCEL :{BLACK}Άκυρωση STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Να μην γίνει αλλαγή δέσμης ενεργειών # AI Parameters @@ -4031,6 +4146,8 @@ STR_AI_SETTINGS_START_DELAY :Αριθμός STR_TEXTFILE_README_CAPTION :{WHITE}{STRING} readme του {STRING} STR_TEXTFILE_CHANGELOG_CAPTION :{G=m}{WHITE}{STRING} ιστορικό αλλαγών του {STRING} STR_TEXTFILE_LICENCE_CAPTION :{WHITE}{STRING} άδεια του {STRING} +STR_TEXTFILE_WRAP_TEXT :{WHITE}Αναδίπλωση κειμένου +STR_TEXTFILE_WRAP_TEXT_TOOLTIP :{BLACK}Αναδίπλωση του κειμένου του παραθύρου ώστε να χωρά χωρίς να απαιτέιται κύλιση STR_TEXTFILE_VIEW_README :{BLACK}Εμφάνιση readme STR_TEXTFILE_VIEW_CHANGELOG :{BLACK}Ιστορικό αλλαγών STR_TEXTFILE_VIEW_LICENCE :{BLACK}Άδεια @@ -4331,6 +4448,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Πρέπ STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Δεν γίνεται να ξεκινάει και να τελειώνει στο ίδιο σημείο STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Η γέφυρα δεν καταλήγει στο ίδιο επίπεδο STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Η γέφυρα είναι πολύ χαμηλή για το έδαφος +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Η γέφυρα είναι πολύ ψηλή για το έδαφος αυτό. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Η αρχή και το τέλος πρέπει να είναι σε ευθεία STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... και τα δύο άκρα της γέφυρας πρέπει να είναι σε έδαφος STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... η γέφυρα είναι πολλή μακρυά @@ -4357,15 +4475,16 @@ STR_ERROR_YOU_ALREADY_OWN_IT :{WHITE}... εί STR_ERROR_GROUP_CAN_T_CREATE :{WHITE}Δεν μπορεί να δημιουργηθεί ομάδα... STR_ERROR_GROUP_CAN_T_DELETE :{WHITE}Δεν μπορεί να διαγραφεί αυτή η ομάδα... STR_ERROR_GROUP_CAN_T_RENAME :{WHITE}Δεν μπορεί να μετονομαστεί η ομάδα... +STR_ERROR_GROUP_CAN_T_SET_PARENT :{WHITE}Δε γίνεται να τεθεί γονική ομάδα... STR_ERROR_GROUP_CAN_T_REMOVE_ALL_VEHICLES :{WHITE}Δεν μπορεί να αφαιρεθούν όλα τα οχήματα από την ομάδα... STR_ERROR_GROUP_CAN_T_ADD_VEHICLE :{WHITE}Δεν μπορεί να προστεθεί το όχημα στην ομάδα... STR_ERROR_GROUP_CAN_T_ADD_SHARED_VEHICLE :{WHITE}Δεν μπορεί να προστεθούν κοινά οχήματα στην ομάδα... # Generic vehicle errors -STR_ERROR_TRAIN_IN_THE_WAY :{WHITE}Τρένο καθ'οδόν -STR_ERROR_ROAD_VEHICLE_IN_THE_WAY :{WHITE}Όχημα δρόμου καθ'οδόν -STR_ERROR_SHIP_IN_THE_WAY :{WHITE}Πλοίο καθ'οδόν -STR_ERROR_AIRCRAFT_IN_THE_WAY :{WHITE}Αεροσκάφος καθ'οδόν +STR_ERROR_TRAIN_IN_THE_WAY :{WHITE}Τρένο στη μέση +STR_ERROR_ROAD_VEHICLE_IN_THE_WAY :{WHITE}Όχημα δρόμου στη μέση +STR_ERROR_SHIP_IN_THE_WAY :{WHITE}Πλοίο στη μέση +STR_ERROR_AIRCRAFT_IN_THE_WAY :{WHITE}Αεροσκάφος στη μέση STR_ERROR_CAN_T_REFIT_TRAIN :{WHITE}Δεν μπορεί να μετατραπεί το τρένο... STR_ERROR_CAN_T_REFIT_ROAD_VEHICLE :{WHITE}Δεν μπορεί να υποστεί μετατροπή το όχημα... @@ -4412,7 +4531,10 @@ STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Δεν STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... το όχημα καταστράφηκε +STR_ERROR_NO_VEHICLES_AVAILABLE_AT_ALL :{WHITE}Δεν θα είναι κανένα όχημα διαθέσιμο STR_ERROR_NO_VEHICLES_AVAILABLE_AT_ALL_EXPLANATION :{WHITE}Αλλάξτε τις ρύθμισεις NewGRF σας +STR_ERROR_NO_VEHICLES_AVAILABLE_YET :{WHITE}Κανένα όχημα δεν είναι διαθέσιμο ακόμη +STR_ERROR_NO_VEHICLES_AVAILABLE_YET_EXPLANATION :{WHITE}Ξεκινήστε ένα νέο παιχνίδι αργότερα από {DATE_SHORT} η χρησιμοποιήστε ένα NewGRF το οποίο προσφέρει νωρίτερα οχήματα # Specific vehicle errors STR_ERROR_CAN_T_MAKE_TRAIN_PASS_SIGNAL :{WHITE}Δεν μπορεί το τρένο να περάσει σήμα με κίνδυνο... @@ -4499,7 +4621,7 @@ STR_TOWN_BUILDING_NAME_CINEMA_1 :Κινηματ STR_TOWN_BUILDING_NAME_SHOPPING_MALL_1 :Εμπορικό κέντρο STR_TOWN_BUILDING_NAME_IGLOO_1 :Ιγκλού STR_TOWN_BUILDING_NAME_TEPEES_1 :Σκηνές Ινδιάνων -STR_TOWN_BUILDING_NAME_TEAPOT_HOUSE_1 :Σπίτι-Καφετιέρα +STR_TOWN_BUILDING_NAME_TEAPOT_HOUSE_1 :Σπίτι-Τσαγιέρα STR_TOWN_BUILDING_NAME_PIGGY_BANK_1 :Τράπεζα-Κουμπαράς ##id 0x4800 @@ -4539,7 +4661,7 @@ STR_INDUSTRY_NAME_TOY_FACTORY :{G=n}Εργοσ STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS :{G=f}Πηγές Πλαστικού STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY :{G=n}Εργοστάσιο Αναψυκτικών STR_INDUSTRY_NAME_BUBBLE_GENERATOR :{G=f}Γεννήτρια Φυσαλίδων -STR_INDUSTRY_NAME_TOFFEE_QUARRY :{G=n}Λατομείο Ζαχαρωτών +STR_INDUSTRY_NAME_TOFFEE_QUARRY :{G=n}Λατομείο Καραμέλας Βουτύρου STR_INDUSTRY_NAME_SUGAR_MINE :{G=n}Ορυχείο Ζάχαρης ############ WARNING, using range 0x6000 for strings that are stored in the savegame @@ -4628,7 +4750,7 @@ STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_STEEL_TRUCK :Βαγόνι Χ STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_ARMORED_VAN :Θωρακισμένο Βαγόνι STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_FOOD_VAN :Βαγόνι Τροφίμων STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_PAPER_TRUCK :Βαγόνι Χαρτιού -STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COPPER_ORE_HOPPER :Βαγόνι Χαλκού +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COPPER_ORE_HOPPER :Βαγόνι Μεταλλευμάτων Χαλκού STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_WATER_TANKER :Βαγόνι Νερού STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_FRUIT_TRUCK :Βαγόνι Φρούτων STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_RUBBER_TRUCK :Βαγόνι Λάστιχου diff --git a/src/lang/hebrew.txt b/src/lang/hebrew.txt index 7946e7d9e9..97b0694790 100644 --- a/src/lang/hebrew.txt +++ b/src/lang/hebrew.txt @@ -12,7 +12,7 @@ ##case singular plural gen -# $Id: hebrew.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: hebrew.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -792,10 +792,10 @@ STR_NEWS_FIRST_CARGO_TRAM_ARRIVAL :{BIG_FONT}{BLAC STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK}התושבים חוגגים . . .{}ספינה ראשונה הגיעה ל{STATION}! STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK}התושבים חוגגים . . .{}מטוס ראשון הגיע ל{STATION}! -STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLACK} !התנגשות רכבות {}{NBSP} נספו בפיצוץ כתוצאה מהתאונה {COMMA} +STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLACK} !התנגשות רכבות{}{NBSP} נספו בפיצוץ כתוצאה מהתאונה {COMMA} STR_NEWS_ROAD_VEHICLE_CRASH_DRIVER :{BIG_FONT}{BLACK}תאונת כלי רכב!{}נהג נהרג לאחר התנגשות ברכבת STR_NEWS_ROAD_VEHICLE_CRASH :{BIG_FONT}{BLACK}תאונת כלי רכב!{}{NBSP}נהרגו לאחר התנגשות עם רכבת {COMMA} -STR_NEWS_AIRCRAFT_CRASH :{BIG_FONT}{BLACK} !התרסקות מטוס {}{NBSP}{1:STATION} נספו בפיצוץ בשדה התעופה {NBSP}{0:COMMA} +STR_NEWS_AIRCRAFT_CRASH :{BIG_FONT}{BLACK} !התרסקות מטוס{}{NBSP}{1:STATION} נספו בפיצוץ בשדה התעופה {NBSP}{0:COMMA} STR_NEWS_PLANE_CRASH_OUT_OF_FUEL :{BIG_FONT}{BLACK}התרסקות מטוס!{}הדלק אזל במהלך הטיסה, {COMMA} נספו בפיצוץ STR_NEWS_DISASTER_ZEPPELIN :{BIG_FONT}{BLACK} אסון ספינת אוויר ב-{STATION}! @@ -826,7 +826,7 @@ STR_NEWS_INDUSTRY_CLOSURE_GENERAL :{BIG_FONT}{BLAC STR_NEWS_INDUSTRY_CLOSURE_SUPPLY_PROBLEMS :{BIG_FONT}{BLACK}בעיות בהספקת חומרי גלם גרמו ל{STRING}להכריז על סגירה בקרוב! STR_NEWS_INDUSTRY_CLOSURE_LACK_OF_TREES :{BIG_FONT}{BLACK}מחסור בעצים בסביבה הקרובה גרם ל{STRING} להכריז על סגירה בקרוב! -STR_NEWS_EURO_INTRODUCTION :{BIG_FONT}{BLACK}!היורו הינו המטבע היחידי המשמש לסחר חליפין בארצך {} האיחוד המוניטרי האירופאי +STR_NEWS_EURO_INTRODUCTION :{BIG_FONT}{BLACK}!היורו הינו המטבע היחידי המשמש לסחר חליפין בארצך{} האיחוד המוניטרי האירופאי STR_NEWS_BEGIN_OF_RECESSION :{BIG_FONT}{BLACK}מיתון עולמי!{}{}מומחי כלכלה חוששים מהגרוע מכל בזמן שהכלכלה בשפל! STR_NEWS_END_OF_RECESSION :{BIG_FONT}{BLACK}המיתון נגמר!{}{}מגמת עלייה במסחר מעניקה בטחון בזמן שהכלכלה מתחזקת! @@ -1115,8 +1115,8 @@ STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :הגדרות מ STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :הגדרות משחק (מאוחסנות במשחק שמור; משפיעות רק על משחק נוכחי) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :הגדרות חברה (מאוחסנות במשחקים שמורים; משפיעות רק על משחקים חדשים) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :הגדרות חברה (מאוחסנות במשחק שמור; משפיעות רק על חברה נוכחית) -STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}הצג את תוצאות החיפוש בהגדרת {SILVER}הקטגוריה {} {BLACK} ל{WHITE}{STRING} -STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}הצג את תוצאות החיפוש בהגדרת {SILVER}הסוג {} {BLACK}ל{WHITE}כל סוגי ההגדרות +STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}הצג את תוצאות החיפוש בהגדרת {SILVER}הקטגוריה{} {BLACK} ל{WHITE}{STRING} +STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}הצג את תוצאות החיפוש בהגדרת {SILVER}הסוג{} {BLACK}ל{WHITE}כל סוגי ההגדרות STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}הצג את תוצאות החיפוש בהגדרת{SILVER}הקטגוריה{} {BLACK}ל{WHITE}{STRING} {BLACK}וגם את {SILVER}הסוג {BLACK}ל{WHITE}כל סוגי ההגדרות STR_CONFIG_SETTINGS_NONE :{WHITE}- אין - @@ -2308,7 +2308,7 @@ STR_STATION_CLASS_WAYP :נקודות ד # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}בחירת רמזורים STR_BUILD_SIGNAL_SEMAPHORE_NORM_TOOLTIP :{BLACK}רמזור בלוק (מכאניים){}זהו הרמזורי הפשוט ביותר, מאפשר לרכבת אחת בלבד להמצא בבלוק מסויים בזמן נתון -STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}רמזור כניסה (סמפור) {}ירוקים כל עוד יש לפחות רמזור יציאה ירוק מקטע המסילה העוקב. אחרת מראה אדום +STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}רמזור כניסה (סמפור){}ירוקים כל עוד יש לפחות רמזור יציאה ירוק מקטע המסילה העוקב. אחרת מראה אדום STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}רמזור יציאה (סמפור){} מתנהג בדומה לרמזור הבלוק, אבל נחוץ להצגת הצבע הנכון ברמזורי כניסה ורמזורים משולבים STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}רמזור משולב (סמפור){}מתפקד כרמזור כניסה ויציאה במשולב. דבר זה מאפשר יצירת "עצים" מורכבים של רמזורים מקדימים STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}רמזור נתיב (סמפור){} מאפשר ליותר מרכבת אחת להכנס לאותו הבלוק בו זמנית, כל עוד קיים נתיב פנוי למקום עצירה בטוח. ניתן לחלוף על פני רמזור נתיב מאחורה @@ -2641,7 +2641,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :שטח בבעל STR_ABOUT_OPENTTD :{WHITE}OpenTTD אודות STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}כל הזכויות שמורות , {COPYRIGHT}1995 כריס סויר - {NBSP}זכויות יוצרים מקוריות STR_ABOUT_VERSION :{BLACK}{REV} גירסה , OpenTTD -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}שמור משחק @@ -2839,7 +2839,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}אזהרה: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{SILVER}{STRING}{RED}: שגיאה STR_NEWGRF_ERROR_MSG_FATAL :{SILVER}{STRING}{RED} :שגיאה חמורה -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}התרחשה שגיאה קריטית ב-NewGRF: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}התרחשה שגיאה קריטית ב-NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} לא יעבוד עם גרסת ה-TTDPatch שדווחה ע"י OpenTTD. STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} היא עבור גרסת {STRING} של TTD. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} נועד להיות בשימוש יחד עם {STRING} @@ -3447,7 +3447,7 @@ STR_ENGINE_PREVIEW_SHIP :כלי שייט STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE :קטר חד-פס STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE :קטר פס מגנטי -STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}{1:WEIGHT_SHORT} :משקל {NBSP}{0:CURRENCY_LONG} :מחיר {} {NBSP}{3:POWER} :עצמת מנוע {NBSP}{2:VELOCITY} :מהירות {NBSP}{}{5:CARGO_LONG} : קיבולת {NBSP} לשנה {NBSP}{4:CURRENCY_LONG} :עלות תפעולית +STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}{1:WEIGHT_SHORT} :משקל {NBSP}{0:CURRENCY_LONG} :מחיר{} {NBSP}{3:POWER} :עצמת מנוע {NBSP}{2:VELOCITY} :מהירות {NBSP}{}{5:CARGO_LONG} : קיבולת {NBSP} לשנה {NBSP}{4:CURRENCY_LONG} :עלות תפעולית STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}עלות: {CURRENCY_LONG} משקל: {WEIGHT_SHORT}{}מהירות: {VELOCITY} הספק: {POWER} מקסימלי T.E.: {6:FORCE}{}עלות תפעולית: {4:CURRENCY_LONG}/לשנה{}קיבולת: {5:CARGO_LONG} STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAPACITY_CAPACITY_RUNCOST :{BLACK}עלות: {CURRENCY_LONG} מהירות מקסימלית: {VELOCITY}{}קיבולת: {CARGO_LONG}, {CARGO_LONG}{}עלות שוטפת: {CURRENCY_LONG}/לשנה STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAPACITY_RUNCOST :{BLACK}עלות: {CURRENCY_LONG} מהירות מקסימלית: {VELOCITY}{}קיבולת: {CARGO_LONG}{}הוצאה שוטפת: {CURRENCY_LONG}/לשנה @@ -3623,7 +3623,7 @@ STR_VEHICLE_DETAILS_TRAIN_ARTICULATED_RV_CAPACITY :{BLACK} :קיב # Vehicle refit STR_REFIT_CAPTION :{WHITE}(התאם) {VEHICLE} STR_REFIT_TITLE :{GOLD}בחר את סוג המטען עבור כלי שייט זה -STR_REFIT_NEW_CAPACITY_COST_OF_REFIT :{RED}{1:CURRENCY_LONG}{BLACK} :עלות ההתאמה {}{GOLD}{0:CARGO_LONG}{BLACK} :קיבולת +STR_REFIT_NEW_CAPACITY_COST_OF_REFIT :{RED}{1:CURRENCY_LONG}{BLACK} :עלות ההתאמה{}{GOLD}{0:CARGO_LONG}{BLACK} :קיבולת STR_REFIT_NEW_CAPACITY_INCOME_FROM_REFIT :{BLACK}קיבולת חדשה: {GOLD}{CARGO_LONG}{}{BLACK}רווח מציוד מחדש: {GREEN}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_COST_OF_AIRCRAFT_REFIT :{BLACK}קיבולת חדשה: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}עלות אבזור מחדש: {RED}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_INCOME_FROM_AIRCRAFT_REFIT :{BLACK}קיבולת חדשה: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}רווח מציוד מחדש: {GREEN}{CURRENCY_LONG} diff --git a/src/lang/hungarian.txt b/src/lang/hungarian.txt index 04a61b6da0..01e6a58019 100644 --- a/src/lang/hungarian.txt +++ b/src/lang/hungarian.txt @@ -11,7 +11,7 @@ ##case t ba -# $Id: hungarian.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: hungarian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2751,7 +2751,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Vállalat álta STR_ABOUT_OPENTTD :{WHITE}Az OpenTTD-ről STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Eredeti copyright {COPYRIGHT} 1995 Chris Sawyer, Minden jog fenntartva STR_ABOUT_VERSION :{BLACK}OpenTTD {REV} verzió -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 Az OpenTTD csapat +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 Az OpenTTD csapat # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Játék mentése @@ -2938,7 +2938,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Ugrás a STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Előző sprite STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Továbbhaladás az előző normál spritera, kihagyva bármilyen ál/átszínező/betű spriteokat, az elején folytatva az utolsóval STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}A jelenleg kiválasztott sprite ábrázolása. Az elhelyezkedés kikapcsolt sprite-rajzolás közben -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Sprite elmozdítása, módosítva az X és Y offszeteket +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Sprite elmozdítása, módosítva az X és Y offszeteket. Ctrl+kattintással a spriteot nyolc egységgel mozgatja STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Eltolás visszaállítása STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}A jelenlegi relatív eltolás visszaállítása STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X eltolás: {NUM}, Y eltolás: {NUM} (Abszolút) @@ -2953,7 +2953,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Figyelmeztetés: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Hiba: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Végzetes hiba: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Egy végzetes NewGRF hiba történt: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Egy végzetes NewGRF hiba történt:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} nem fog működni az OpenTTD által jelentett TTDPatch verzióval STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} a TTD {STRING} verziójához van STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} úgy lett tervezve, hogy együtt lesz használva ezzel: {STRING} diff --git a/src/lang/icelandic.txt b/src/lang/icelandic.txt index b5e0bafde5..8805837e8a 100644 --- a/src/lang/icelandic.txt +++ b/src/lang/icelandic.txt @@ -11,7 +11,7 @@ ##gender karlkyn kvenkyn hvorugkyn -# $Id: icelandic.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: icelandic.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -839,7 +839,7 @@ STR_NEWS_STATION_NOW_ACCEPTS_CARGO_AND_CARGO :{WHITE}{STATION STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Tilboð til samstarfssamnings runnið út:{}{}{STRING} frá {STRING} til {STRING} mun ekki vera samningsbundið. STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Samsarfssamningur gerður ógildur:{}{} {STRING}flutningur frá {STRING} til {STRING} er ekki lengur samningsbundinn. -STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Nýtt tilboð til samstarfssamnings: {}{}Fyrsti {STRING}flutningur frá {STRING} til {STRING} mun stofna til eins árs samstarfssamnings við bæjaryfirvöld! +STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Nýtt tilboð til samstarfssamnings:{}{}Fyrsti {STRING}flutningur frá {STRING} til {STRING} mun stofna til eins árs samstarfssamnings við bæjaryfirvöld! STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Samstarfssamningur gerður við {STRING}!{}{}{STRING}flutningur frá {STRING} til {STRING} mun borga 50% aukalega í heilt ár! STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Samstarfssamningur gerður við {STRING}!{}{}{STRING}flutningur frá {STRING} til {STRING} mun borga tvöfalt í heilt ár! STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Samstarfssamningur gerður við {STRING}!{}{}{STRING}flutningur frá {STRING} til {STRING} mun borga þrefalt í heilt ár! @@ -951,6 +951,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Skjáupp STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Stilla skjáupplausn STR_GAME_OPTIONS_RESOLUTION_OTHER :annað + + STR_GAME_OPTIONS_BASE_GRF :{BLACK}Grunngrafík STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Nota grunngrafíkina STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} týnd{P "" ar} eða ónýt{P "" ar} skrá{P "" r} @@ -2534,7 +2536,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Land í eigu fy STR_ABOUT_OPENTTD :{WHITE}Um OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Upphaflegur höfundarréttur {COPYRIGHT} 1995 Chris Sawyer, Öll réttindi áskilin STR_ABOUT_VERSION :{BLACK}OpenTTD útgáfa {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 OpenTTD hópurinn +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 OpenTTD hópurinn # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Vista leik @@ -2717,7 +2719,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Aðvörun: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Villa: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Banvænt: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Alvarleg NewGRF villa átti sér stað: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Alvarleg NewGRF villa átti sér stað:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} Mun ekki virka með útgáfu TTDPatch sem OpenTTD gefur til kynna. STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} er fyrir {STRING} útgáfu af TTD. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} er hannað til að notast með {STRING} diff --git a/src/lang/indonesian.txt b/src/lang/indonesian.txt index 24a39f9892..1137713bd3 100644 --- a/src/lang/indonesian.txt +++ b/src/lang/indonesian.txt @@ -10,7 +10,7 @@ ##grflangid 0x5a -# $Id: indonesian.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: indonesian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2687,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Tanah milik Per STR_ABOUT_OPENTTD :{WHITE}Tentang OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Hak Cipta asli {COPYRIGHT} 1995 Chris Sawyer, Hak Cipta dilindungi STR_ABOUT_VERSION :{BLACK}OpenTTD versi {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Tim OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 Tim OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Simpan Permainan @@ -2885,7 +2885,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Peringatan: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Kesalahan: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatal: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Kesalahan fatal NewGRF telah terjadi: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Kesalahan fatal NewGRF telah terjadi:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} tidak akan bekerja dengan versi TTDPatch yang telah dilaporkan oleh OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} untuk TTD versi {STRING} STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} didesain untuk digunakan dengan {STRING} @@ -2910,7 +2910,7 @@ STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Format sprite s # NewGRF related 'general' warnings STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}Peringatan! -STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Anda akan mengubah game yg sudah berjalan. Ini dapat menghentikan OpenTTD. Jangan melaporkan kesalahan tentang hal ini. {}Apakah anda yakin? +STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Anda akan mengubah game yg sudah berjalan. Ini dapat menghentikan OpenTTD. Jangan melaporkan kesalahan tentang hal ini.{}Apakah anda yakin? STR_NEWGRF_DUPLICATE_GRFID :{WHITE}Tidak dapat menambahkan: GRF ID sudah ada STR_NEWGRF_COMPATIBLE_LOADED :{ORANGE}Berkas yang cocok tidak diketemukan (GRF kompatibel telah dimuat) diff --git a/src/lang/irish.txt b/src/lang/irish.txt index ce755713ff..8f7c071771 100644 --- a/src/lang/irish.txt +++ b/src/lang/irish.txt @@ -10,7 +10,7 @@ ##grflangid 0x08 -# $Id: irish.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: irish.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -52,7 +52,7 @@ STR_CARGO_PLURAL_SUGAR :Siúcra STR_CARGO_PLURAL_TOYS :Bréagáin STR_CARGO_PLURAL_CANDY :Milseáin STR_CARGO_PLURAL_COLA :Cóla -STR_CARGO_PLURAL_COTTON_CANDY :Féasóg Daideo +STR_CARGO_PLURAL_COTTON_CANDY :Scamall siúcra STR_CARGO_PLURAL_BUBBLES :Súilíní STR_CARGO_PLURAL_TOFFEE :Taifí STR_CARGO_PLURAL_BATTERIES :Cadhnraí @@ -86,7 +86,7 @@ STR_CARGO_SINGULAR_SUGAR :Siúcra STR_CARGO_SINGULAR_TOY :Bréagán STR_CARGO_SINGULAR_CANDY :Milseán STR_CARGO_SINGULAR_COLA :Cóla -STR_CARGO_SINGULAR_COTTON_CANDY :Féasóg Daideo +STR_CARGO_SINGULAR_COTTON_CANDY :Scamall siúcra STR_CARGO_SINGULAR_BUBBLE :Súilín STR_CARGO_SINGULAR_TOFFEE :Taifí STR_CARGO_SINGULAR_BATTERY :Ceallra @@ -120,7 +120,7 @@ STR_QUANTITY_SUGAR :{WEIGHT_LONG} d STR_QUANTITY_TOYS :{COMMA}{NBSP}{P bh bh bh mb b}réagán STR_QUANTITY_SWEETS :{COMMA}{NBSP}{P mh mh mh m m}ála de mhilseáin STR_QUANTITY_COLA :{VOLUME_LONG} de chóla -STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} d'fhéasóg Daideo +STR_QUANTITY_CANDYFLOSS :{WEIGHT_LONG} de scamall siúcra STR_QUANTITY_BUBBLES :{COMMA} {P sh sh sh s s}úilín STR_QUANTITY_TOFFEE :{WEIGHT_LONG} de thaifí STR_QUANTITY_BATTERIES :{COMMA} {P ch ch ch gc c}eallra{P "" "" "" "" ""} @@ -155,7 +155,7 @@ STR_ABBREV_SUGAR :{TINY_FONT}SI STR_ABBREV_TOYS :{TINY_FONT}BR STR_ABBREV_SWEETS :{TINY_FONT}MI STR_ABBREV_COLA :{TINY_FONT}CL -STR_ABBREV_CANDYFLOSS :{TINY_FONT}FD +STR_ABBREV_CANDYFLOSS :{TINY_FONT}SS STR_ABBREV_BUBBLES :{TINY_FONT}SÚ STR_ABBREV_TOFFEE :{TINY_FONT}TF STR_ABBREV_BATTERIES :{TINY_FONT}CE @@ -390,7 +390,7 @@ STR_SETTINGS_MENU_TRANSPARENT_SIGNS :Comharthaí tr ############ range for file menu starts STR_FILE_MENU_SAVE_GAME :Sábháil an cluiche STR_FILE_MENU_LOAD_GAME :Lódáil cluiche -STR_FILE_MENU_QUIT_GAME :Fág cluiche +STR_FILE_MENU_QUIT_GAME :Fág an cluiche STR_FILE_MENU_SEPARATOR : STR_FILE_MENU_EXIT :Scoir ############ range ends here @@ -785,7 +785,7 @@ STR_NEWS_FIRST_TRUCK_ARRIVAL :{BIG_FONT}{BLAC STR_NEWS_FIRST_PASSENGER_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Saoránaigh ag ceiliúradh . . .{}Tagann an chéad tram paisinéirí isteach ag {STATION}! STR_NEWS_FIRST_CARGO_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Saoránaigh ag ceiliúradh . . .{}Tagann an chéad tram lastais isteach ag {STATION}! STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK}Saoránaigh ag ceiliúradh . . .{}Tagann an chéad long isteach ag {STATION}! -STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK}Saoránaigh ag ceiliúradh . . .{}Tagann an chéad aerártha isteach ag {STATION}! +STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK}Saoránaigh ag ceiliúradh . . .{}Tagann an chéad aerárthach isteach ag {STATION}! STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLACK}Tubaiste Traenach!{}Maraítear {COMMA} i liathróid tine tar éis imbhuailte STR_NEWS_ROAD_VEHICLE_CRASH_DRIVER :{BIG_FONT}{BLACK}Tubaiste Feithicle Bóthair!{}Maraítear an tiománaí i liathróid tine tar éis imbhuailte @@ -1168,6 +1168,7 @@ STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Ní féi STR_CONFIG_SETTING_AUTOSLOPE :Ceadaigh athrú talún faoi fhoirgnimh, ráillí iarnróid srl.: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Ceadaigh tírdhreachú faoi fhoirgneamh agus ráillí gan iad a bhaint STR_CONFIG_SETTING_CATCHMENT :Ceadaigh ceantair stáisiún ar mhéid níos realaíoch: {STRING} +STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Bíodh an ceantar máguaird a bhaineann le cineálacha éagsúla stáisiún agus aerfort ar mhéideanna éagsúla STR_CONFIG_SETTING_EXTRADYNAMITE :Ceadaigh tuilleadh bóithre, droichid agus tolláin ar le baile iad a bhaint: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Fág go mbeidh sé níos éasca bonneagar agus foirgnimh ar le bailte iad a bhaint STR_CONFIG_SETTING_TRAIN_LENGTH :Uasfhad na dtraenacha: {STRING} @@ -1200,7 +1201,7 @@ STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :An modh chun ti STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_HELPTEXT :An modh a úsáidfear chun tionscal príomhúil a mhaoiniú. Ciallaíonn 'ceann ar bith' nach féidir aon cheann a mhaoiniú, ciallaíonn 'taiscéaladh' gur féidir maoiniú a dhéanamh, ach go ndéanfar an tógáil ar áit randamach ar an léarscáil, agus d'fhéadfadh teip a bheith ann freisin, ciallaíonn 'cosúil le tionscail eile' gur féidir le cuideachtaí tionscail na n-amhábhar a thógáil cosúil le tionscail phróiseála aon áit is mian leo STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NONE :Ceann ar bith STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NORMAL :Cosúil le tionscail eile -STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_PROSPECTING :Cuardach (mianraí srl.) +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_PROSPECTING :Taiscéaladh STR_CONFIG_SETTING_INDUSTRY_PLATFORM :Limistéar réidh thart ar thionscail: {STRING} STR_CONFIG_SETTING_INDUSTRY_PLATFORM_HELPTEXT :Méid na talún réidh thart timpeall ar thionscal. Cinntíonn sé seo go mbeidh spás folamh ann fós thart timpeall ar thionscal chun ráillí, srl. a thógáil STR_CONFIG_SETTING_MULTIPINDTOWN :Ceadaigh tionscail cosúla iolracha in aon bhaile amháin: {STRING} @@ -1213,6 +1214,7 @@ STR_CONFIG_SETTING_SIGNALSIDE_RIGHT :Ar dheis STR_CONFIG_SETTING_SHOWFINANCES :Taispeáin an fhuinneoig airgeadais ag deireadh na bliana: {STRING} STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :Má tá sé cumasaithe, preabann an fhuinneog airgeadais aníos ag deireadh gach bliana le gur féidir stádas airgeadais na cuideachta a scrúdú go héasca STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Bíonn orduithe nua 'gan-stad' mar réamhshocrú: {STRING} +STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Go hiondúil, stopfaidh feithicil ag gach stáisiún a rachaidh sé tharais. Má dhéantar an socrú seo a chumasú, tiománfaidh sí trí gach stáisiún ar an mbealach chuig an gceann scríbe deiridh gan stopadh. Tabhair faoi deara nach socraítear leis an socrú seo ach an luach tosaigh a bheidh ann d'orduithe nua. Is féidir orduithe aonair a shocrú go sainráite go ceachtar den dá rogha mar sin féin STR_CONFIG_SETTING_STOP_LOCATION :Stopann orduithe traenach nua ag {STRING} an ardáin mar reamhshocrú STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :An áit ag a stopfaidh traein ar an ardán mar réamhshocrú. Ciallaíonn 'taobh is gaire' in aice leis an pointe iontrála, ciallaíonn 'an lár' lár an ardáin, agus ciallaíonn 'taobh is faide' an áit is faide ón bpointe iontrála. Tabhair faoi deara nach bhfuil i gceist leis an socrú seo ach réamhshocrú d'orduithe nua. Is féidir orduithe aonair a shocrú go sainráite ag aon cheann de na socruithe STR_CONFIG_SETTING_STOP_LOCATION_NEAR_END :taobh abhus @@ -1235,6 +1237,7 @@ STR_CONFIG_SETTING_ALLOW_FUND_ROAD_HELPTEXT :Tabhair cead do STR_CONFIG_SETTING_ALLOW_GIVE_MONEY :Ceadaigh airgead a sheoladh chuig cuideachtaí eile: {STRING} STR_CONFIG_SETTING_ALLOW_GIVE_MONEY_HELPTEXT :Tabhair cead airgead a aistriú idir chuideachtaí sa mhód ilimreoirí STR_CONFIG_SETTING_FREIGHT_TRAINS :Iolraitheoir meáchain don lastas le traenacha troma a ionsamhladh: {STRING} +STR_CONFIG_SETTING_FREIGHT_TRAINS_HELPTEXT :Socraigh an tionchar a bhíonn ag iompar lastais ar thraenacha. Dá airde an luach, is é is deacra a bheidh sé ar thraenacha lastas a iompar, go háirithe ar chnoic STR_CONFIG_SETTING_PLANE_SPEED :Fachtóir luais na n-eitleán: {STRING} STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Socraigh luas coimhneasta na n-aerárthach i gcomparáid le cineálacha eile feithiclí, chun an méid ioncaim ó iompar aerárthaigh a laghdú STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} @@ -1286,7 +1289,9 @@ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Tiús na línte STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Leithead na líne sna graif. Is féidir líne thanaí a léamh go beacht, agus tá líne níos tiubhe níos éasca le feiceáil agus tá sé níos éasca na dathanna a idirdhealú óna gcéile STR_CONFIG_SETTING_LANDSCAPE :Tírdhreach: {STRING} +STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Sonraíonn na tírdhreacha an cúlra bunúsach don imirt, le lastais éagsúla agus riachtanais éagsúla d'fhás na mbailte. Is féidir é sin a mhionathrú tuilleadh le NewGRFanna agus Scripteanna Cluiche mar sin féin STR_CONFIG_SETTING_LAND_GENERATOR :Gineadóir talún: {STRING} +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :Tá an gineadóir bunaidh ag brath ar an tacar grafaicí bunaidh, agus cruthaíonn sé limistéir réamhshocraithe tírdhreacha. Is gineadóir bunaithe ar thorann Perlin é TerraGenesis agus tá socruithe níos míne ar fáil dó STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Bunaidh STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_TERRAIN_TYPE :Cineál tír-raoin: {STRING} @@ -1298,6 +1303,7 @@ STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Ní thógtar sc STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Airde na líne sneachta: {STRING} STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Rialaigh an leibhéal ar a dtosaíonn sneachta ar thírdhreach fo-artach. Bíonn tionchar ag sneachta freisin ar ghiniúint tionscail agus riachtanais bailte ó thaobh fáis de STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Chomh garbh agus atá an tír-raon: {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis amháin) Roghnaigh minicíocht na gcnoc: Tá níos lú cnoic ag tírdhreacha míne, agus iad níos scaipthe amach. Bíonn go leor cnoic ar thírdhreacha garbha, agus d'fhéadfadh an chuma a bheith air go bhfuil an tírdhreach ar fad mar a chéile STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :An-mhín STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Mín STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Garbh @@ -1325,6 +1331,7 @@ STR_CONFIG_SETTING_STATION_SPREAD_HELPTEXT :An limistéar u STR_CONFIG_SETTING_SERVICEATHELIPAD :Déan seirbhísiú ar héileacaptair ag héileapadanna go huathoibríoch: {STRING} STR_CONFIG_SETTING_SERVICEATHELIPAD_HELPTEXT :Déan seirbhísiú ar heileacaptair tar éis gach tuirlingte, fiú mura bhfuil iosta ag an aerfort STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR :Ceangail an barra uirlisí tírdhreacha leis na barraí uirlisí iarnróid/bóíthre/uisce/aerfort: {STRING} +STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR_HELPTEXT :Nuair a osclaítear barra uirlisí tógála do chineál iompair, oscail an barra uirlisí do chóiriú na talún freisin STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR :Dath na talún a úsáidtear sa léarscáil bheag: {STRING} STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_HELPTEXT :Dath an tír-raoin ar an léarscáil bheag STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_GREEN :Uaine @@ -1333,13 +1340,16 @@ STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :Corcairghorm STR_CONFIG_SETTING_REVERSE_SCROLLING :Aisiompaigh an treo scrollaithe: {STRING} STR_CONFIG_SETTING_REVERSE_SCROLLING_HELPTEXT :An méid a tharlaíonn agus an léarscáil á scrollú leis an gcnaipe luchóige deas. Má bhíonn sé díchumasaithe, bogann an luchóg leis an gceamara. Má bhíonn sé cumasaithe, bogann an luchóg an léarscáil STR_CONFIG_SETTING_SMOOTH_SCROLLING :Scrollú mín do na fuinneoga amhairc: {STRING} +STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Roghnaigh an chaoi a scrollóidh an príomhamharc chuig suíomh ar leith má chliceálann tú ar an léarscáil bheag nó má thugann tú ordú scrollú chuig oibiacht ar leith ar an léarscáil. Má tá sé cumasaithe, scrollóidh an fhuinneog amhairc go mín, má tá sé díchumasaithe léimfidh sé go díreach chuig an suíomh sin. STR_CONFIG_SETTING_MEASURE_TOOLTIP :Taispeáin leid uirlise tomhais agu uirlisí tógála áirithe in úsáid: {STRING} +STR_CONFIG_SETTING_MEASURE_TOOLTIP_HELPTEXT :Taispeánfar faid na dtíleanna agus difríochtaí san airde agus tú ag tarraingt le linn duit a bheith i mbun tógála STR_CONFIG_SETTING_LIVERIES :Taispeáin libhréithe sonracha d'fheithiclí: {STRING} STR_CONFIG_SETTING_LIVERIES_HELPTEXT :Rialaigh úsáid libhréithe a bhaineann go sonrach leis an gcineál feithicle d'fheithiclí (seachas libhréithe a bhaineann go sonrach le cuideachta) STR_CONFIG_SETTING_LIVERIES_NONE :Ná taispeáin STR_CONFIG_SETTING_LIVERIES_OWN :Do chuideachta féin STR_CONFIG_SETTING_LIVERIES_ALL :Gach cuideachta STR_CONFIG_SETTING_PREFER_TEAMCHAT :Tús áite do chomhrá foirne le : {STRING} +STR_CONFIG_SETTING_PREFER_TEAMCHAT_HELPTEXT :Usáid don chomhrá laistigh den chuideachta agus úsáid don chomhrá poiblí. STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING :Feidhm an rotha scrollaithe: {STRING} STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING_HELPTEXT :Cumasaigh scrollú le rothaí luchóige déthoiseacha STR_CONFIG_SETTING_SCROLLWHEEL_ZOOM :Zúmáil an léarscáil @@ -1348,6 +1358,7 @@ STR_CONFIG_SETTING_SCROLLWHEEL_OFF :As STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER :Luas roth scrollaithe an léarscáil: {STRING} STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER_HELPTEXT :Rialaigh íogaireacht scrollú an rotha luchóige STR_CONFIG_SETTING_OSK_ACTIVATION :Méarchlár scáileáin: {STRING} +STR_CONFIG_SETTING_OSK_ACTIVATION_HELPTEXT :Roghnaigh an modh a úsáidfear chun an méarchlár scáileáin a oscailt chun téacs a chlóscríobh i mboscaí téacs gan ach an gléas pointeála a úsáid. Tá an socrú seo le húsáid i gcás gléasanna beaga nach bhfuil méarchlár dá gcuid féin acu STR_CONFIG_SETTING_OSK_ACTIVATION_DISABLED :Díchumasaithe STR_CONFIG_SETTING_OSK_ACTIVATION_DOUBLE_CLICK :Cliceáil dhúbailte STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK_FOCUS :Cliceáil amháin (agus fócas aige) @@ -1360,6 +1371,7 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_CONTROL :Ctrl+Cliceáil STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :As STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Scrollú le cléchliceáil: {STRING} +STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING_HELPTEXT :Cumasaigh scrollú an léarscáil trí bheith ag tarraingt le cnaipe clé na luiche. Tá sé seo thar a bheith úsáideach don scrollú nuair atá scáileán tadhaill á úsáid STR_CONFIG_SETTING_AUTOSAVE :Uathshábháil: {STRING} STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Roghnaigh an t-eatramh idir uathshábhálacha cluichí @@ -1418,6 +1430,7 @@ STR_CONFIG_SETTING_SOUND_AMBIENT :comhthimpeallac STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Seinn maisíochtaí fuaime comhthimpeallach tírdhreacha, tionscail agus bailte STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Díchumasaigh tógáil bonneagair nuair nach bhfuil aon fheithicil oiriúnach ar fáil: {STRING} +STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Má tá seo cumasaithe, ní bhíonn bonneagar ar fáil ach amháin má tá feithiclí ar fáil dó freisin, rud a fhágann nach gcuirfear am agus airgead amú ar bhonneagar neamhoiriúnach STR_CONFIG_SETTING_MAX_TRAINS :Uaslíon na dtraenacha in aghaidh na cuideachta: {STRING} STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT :Uaslíon na dtraenacha is féidir a bheith ag cuideachta STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Uaslíon na bhfeithiclí bóthair in aghaidh na cuideachta: {STRING} @@ -1464,6 +1477,7 @@ STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Má tá sé cum STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Cumasaigh teorainneacha luais vaigíní: {STRING} STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT :Má tá sé cumasaithe, úsáid teorainneacha luais na vaigíní freisin chun luas uasta traenacha a shocrú STR_CONFIG_SETTING_DISABLE_ELRAILS :Díchumasaigh ráillí leictreacha: {STRING} +STR_CONFIG_SETTING_DISABLE_ELRAILS_HELPTEXT :Má dhéantar an socrú seo a chumasú ní bheidh sé riachtanach iarnróid a leictriú chun go mbeidh traenacha leictreacha in ann taisteal orthu STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN :Tagann an chéad fheiticil isteach i stáisiún imreora: {STRING} STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN_HELPTEXT :Taispeáin nuachtán nuair a thagann an chéad traein isteach ag stáisiún imreora nua @@ -1508,6 +1522,7 @@ STR_CONFIG_SETTING_SMOOTH_ECONOMY_HELPTEXT :Má dhéantar STR_CONFIG_SETTING_ALLOW_SHARES :Ceadaigh scaireanna a cheannach ó chuideachtaí eile: {STRING} STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Má tá sé cumasaithe, tá cead scaireanna i gcuideachta a cheannach agus a dhíol. Ní bheidh scaireanna ar fáil ach do chuideachtaí a bhfuil aois áirithe bainte amach acu STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :An céatadán den bhrabús a íocfar ar chuid den turas i gcórais fhriothálacha: {STRING} +STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE_HELPTEXT :An céatadán den bhrabús a thugtar as lastais a thabhairt cuid den bhealach i gcórais fhriothálacha, rud a fhágann go bhfuil tuilleadh smachta agat ar an ioncam STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :Agus tú ag tarraingt, cuir síos comharthaí gach: {STRING} STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Socraigh an fad ag a dtógfar comharthaí ar iarnród suas go dtí an chéad chonstaic eile (comhartha, acomhal), agus comharthaí á dtarraingt STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} {P thíl thíl thíl dtíl tíl} @@ -1516,12 +1531,14 @@ STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Roghnaigh an ch STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Tóg séamafóir go huathoibríoch roimh: {STRING} STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Socraigh an bliain ina n-úsáidfear comharthaí leictreacha ar iarnróid. Roimh an bhliain sin, úsáidfear comharthaí nach comharthaí leictreacha iad (tá an fheidhm cheanainn céanna acu, ach cuma dhifriúil orthu) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Cumasaigh GUI na gcomharthaí: {STRING} +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Taispeáin fuinneog chun na cineálacha comharthaí atá le tógáil a roghnú, seachas dul tríd na cineálacha comharthaí gan fhuinneog a thaispeáint nuair a dhéantar Ctrl+cliceáil ar chomharthaí atá tógtha STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Cineál comhartha le tógáil mar réamhshocrú: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :An cineál comharthaí a úsáidfear mar réamhshocrú STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Comharthaí bloc STR_CONFIG_SETTING_DEFAULT_SIGNAL_PBS :Comharthaí cosán STR_CONFIG_SETTING_DEFAULT_SIGNAL_PBSOWAY :Comharthaí cosán aonbhealaigh STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES :Téigh trí na cineálacha comharthaí in ord: {STRING} +STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES_HELPTEXT :Roghnaigh cad iad na cineálacha comharthaí a rachfar tríd, nuair a dhéánfar Ctrl+cliceáil ar chomhartha tógála le huirlis na gcomharthaí STR_CONFIG_SETTING_CYCLE_SIGNAL_NORMAL :Comharthaí bloc amháin STR_CONFIG_SETTING_CYCLE_SIGNAL_PBS :Comharthaí cosán amháin STR_CONFIG_SETTING_CYCLE_SIGNAL_ALL :Gach @@ -1534,9 +1551,11 @@ STR_CONFIG_SETTING_TOWN_LAYOUT_2X2_GRID :greille 2x2 STR_CONFIG_SETTING_TOWN_LAYOUT_3X3_GRID :greille 3x3 STR_CONFIG_SETTING_TOWN_LAYOUT_RANDOM :randamach STR_CONFIG_SETTING_ALLOW_TOWN_ROADS :Ceadaítear do bhailte bóithre a thógáil: {STRING} +STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Ceadaigh do bhailte bóithre a thógáil le bheith ag fás. Díchumasaigh seo chun cosc a chur ar údaráis na mbailte bóithre a thógáil iad féin STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Ceadaítear do bhailte crosairí comhréidh a thógáil: {STRING} STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Má dhéantar an socrú seo a chumasú, beidh bailte in ann crosairí comhréidh a thógáil STR_CONFIG_SETTING_NOISE_LEVEL :Ceadaigh leibhéal fuaime rialaithe ag an mbaile d'aerfoirt: {STRING} +STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Má tá an socrú seo díchumasaithe, ní féidir dhá aerfort a bheith in aon bhaile. Má tá an socrú seo cumasaithe, beidh líon na n-aerfort i mbaile teoranta ag an méid torainn a ghlactar leis sa bhaile, a bhíonn ag brath ar an daonra agus ar mhéid an aerfoirt agus an fad ón mbaile STR_CONFIG_SETTING_TOWN_FOUNDING :Bailte a bhunú sa chluiche: {STRING} STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Má dhéantar an socrú seo a chumasú beidh imreoirí in ann bailte nua a bhunú sa chluiche STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :coiscthe @@ -1544,6 +1563,7 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :ceadaithe STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :ceadaithe, leagan amach bailte saincheaptha STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Áit a chuirtear crainnte sa chluiche: {STRING} +STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Rialaigh an áit a gcuirfear na crainn go fánach i rith an chluiche. D'fhéadfadh tionchar a bheith aige seo ar thionscail a bhíonn ag brath ar fhás na gcrann, muilte adhmaid mar shampla STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_NONE :ná dean{RED}(bristear an muileann adhmaid) STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_RAINFOREST :i bhforaois bháistí amháin STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_ALL :gach áit @@ -1561,7 +1581,9 @@ STR_CONFIG_SETTING_SOFT_LIMIT_HELPTEXT :Líon na bhfuin STR_CONFIG_SETTING_SOFT_LIMIT_VALUE :{COMMA} STR_CONFIG_SETTING_SOFT_LIMIT_DISABLED :díchumasaithe STR_CONFIG_SETTING_ZOOM_MIN :Zúmáil uasta i leibhéil: {STRING} +STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :An leibhéal uasta zúmála isteach d'fhuinneoga amhairc. Tabhair faoi deara go dtiocfaidh méadú ar an méid cuimhne a bheidh ag teastáil má dhéantar leibhéil níos airde don zúmáil isteach a chumasú STR_CONFIG_SETTING_ZOOM_MAX :Leibhéal uasta zúmala amach: {STRING} +STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :An leibhéal uasta zúmála amach d'fhuinneoga amhairc. D'fhéadfaí leibhéil arda zúmála amach moilleanna a chruthú nuair a úsáidtear iad STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Gnáth @@ -1576,22 +1598,35 @@ STR_CONFIG_SETTING_TOWN_GROWTH_NORMAL :Gnáth STR_CONFIG_SETTING_TOWN_GROWTH_FAST :Scioptha STR_CONFIG_SETTING_TOWN_GROWTH_VERY_FAST :An-scioptha STR_CONFIG_SETTING_LARGER_TOWNS :Líon na mbailte a ndéanfar cathratha díobh: {STRING} +STR_CONFIG_SETTING_LARGER_TOWNS_HELPTEXT :Líon na mbailte a bheidh ina gcathracha, sé sin baile a thosaíonn amach níos mó agus a fhásann níos tapúla STR_CONFIG_SETTING_LARGER_TOWNS_VALUE :1 as {COMMA} STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Ceann ar bith STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Iolraitheoir tosaigh mhéid na gcathracha: {STRING} +STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Meánmhéid na gcathracha i gcomórtas le gnáthbhailte ag tús an chluiche STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Nuashonraigh an graf dáileacháin gach {STRING}{NBSP}lá +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :An t-aga idir gach athríomh ina dhiadh sin ar ghraf na nasc. Déantar na pleananna a ríomh do chomhpháirt amháin den ghraf gach uair a dhéantar athríomh. Mar sin, má shocraíonn tú luach X don socrú seo, ní chiallaíonn sé go ndéanfar an graf iomlá a thabhairt cothrom le dáta gach X lá, ní thabharfar ach comhpháirteanna áirithe de cothrom le dáta. Dá ghiorra an luach a shocraíonn tú is é is mó ama CPU a thógfaidh sé chun é a ríomh. Dá fhaide a shocraíonn tú é is é is faide a thógfaidh sé chun an dáileadh lastais a thosú ar bhealaí nua. STR_CONFIG_SETTING_LINKGRAPH_TIME :Tóg {STRING}{NBSP}lá chun an graf dáileacháin a athríomh +STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :An t-am a thógfar ar gach athríomh ar chomhpháirt de ghraf na nasc. Nuair a thosaítear ar athríomh, gintear snáithe agus ligfear don snáithe sin rith ar feadh an líon sin laethanta. Dá ghiorra an luach a shocróidh tú anseo is mó an seans nach mbeidh an snáithe críochnaithe nuair atá sé in ainm is a bheith. Ansin stopfaidh an cluiche go dtí go mbeidh sé críochnaithe (i.e. beidh "moill" ann). Dá fhaide a shocraíonn tú é is é is faide a thógfaidh sé chun an dáileachán a thabhairt cothrom le dáta nuair nuair a athraíonn na bealaí. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :de láimh STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :neamhshiméadrach STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :siméadrach STR_CONFIG_SETTING_DISTRIBUTION_PAX :An mód dáileacháin do phaisinéirí: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :Ciallaíonn "siméadrach" go rachaidh thart ar an méid céanna paisinéirí ó stáisiún A go stáisiún B agus a rachaidh ó B go A. Ciallaíonn "neamhshiméadrach" gur féidir méideanna neamhshrianta paisinéiri dul i gceachtar den dá threo. Ciallaíonn "de láimh" nach ndéanfar dáileadh uathoibríoch ar phaisinéirí. STR_CONFIG_SETTING_DISTRIBUTION_MAIL :An mód dáileacháin do phost: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :Ciallaíonn "siméadrach" go seolfar thart ar an méid céanna postais ó stáisiún A go stáisiún B agus a sheoltar ó B go A. Ciallaíonn "neamhshiméadrach" gur féidir méideanna neamhshrianta postais a sheoladh i gceachtar den dá threo. Ciallaíonn "de láimh" nach ndéanfar dáileadh uathoibríoch ar an bpostas STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :An mód dáileacháin don aicme lastais ARMÚRTHA: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :San aicme lastais ARMÚRTHA, bíonn earraí luachmhara san aeráid mheasartha, diamaint san aeráid fho-theochreasach nó ór san aeráid fho-artach. Is féidir é sin a athrú le NewGRFanna. Ciallaíonn "siméadrach" go seolfar thart ar an méid céanna den lastas sin ó stáisiún A go stáisiún B agus a sheoltar ó B go A. Ciallaíonn "neamhshiméadrach" gur féidir méideanna neamhshrianta den lastas sin a sheoladh i gceachtar den dá threo. Ciallaíonn "de láimh" nach ndéanfar dáileadh uathoibríoch don lastas sin. Moltar é seo a shocrú go neamhshiméadrach nó de láimh má bhíonn tú ag imirt leis an aeráid fho-artach, toisc nach seolann bainc aon ór ar ais chuig na mianach óir. Sna haeráidí measartha agus fo-theochreasach is féidir leat siméadrach a roghnú freisin, toisc go seolfaidh na bainc earraí luachmhara ar ais chuig an mbanc tosaigh i gcás lastas earraí luachmhara. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :An mód dáileacháin d'aicmí eile lastais: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :Ciallaíonn "neamhshiméadrach" gur féidir méideanna neamhshrianta lastais a sheoladh i gceachtar den dá threo. Ciallaíonn "de láimh" nach ndéanfar dáileadh uathoibríoch do na lastais sin. STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Cruinneas an dáileacháin: {STRING} +STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Dá airde a shocraíonn tú é seo is mó am CPU a thógfaidh sé chun graf na nasc a ríomh. Má thógann sé rófhada seans go bhfeicfidh tú moilleanna. Má shocraíonn tú é seo go luach íseal, áfach, ní bheidh an dáileachán cruinn, agus seans go bhfeicfidh tú nach bhfuil lastas á sheoladh chuig na háiteacha a mbeidh tú ag súil leis go rachaidh sé. STR_CONFIG_SETTING_DEMAND_DISTANCE :An tionchar atá ag fad ar éilimh: {STRING} +STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Má shocraíonn tú é seo ag luach níos airde ná 0, beidh tionchar ag an bhfad idir an stáisiún tosaigh A agus stáisiún ceann scríbe féideartha B ar an méid lastais a chuirfear ó A go B. Dá fhaide B ó A, is é is lú an méid lastais a chuirfear. Dá airde a shocraíonn tú an luach seo, is é is lú an méid lastais a chuirfear chuig stáisiúin atá i bhfad ar siúl agus is é is mó an méid lastais a chuirfear chuig stáisiúin atá níos gaire. STR_CONFIG_SETTING_DEMAND_SIZE :Méid den lastas a thagann ar ais don mhód siméadrach: {STRING} +STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Má shocraíonn tú é seo go luach níos lú ná 100% beidh an chaoi a fheidhmíonn an dáileadh siméadrach níos cosúla leis an dáileadh neamhshiméadrach. Beidh an méid den lastas a sheoltar ar ais ó stáisiún níos lú ná an méid a sheoltar chuige. Má shocraítear an luach seo ag 0% beidh an dáileadh siméadrach díreach ar aon dul leis an dáileadh neamhshiméarach. +STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Líonadh na gconar gearra sula n-úsáidfear na conair a bhfuil acmhainn mhór iompair acu: {STRING} +STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Go minic bíonn cosáin éagsúla idir dhá stáisiún. Líonfaidh Cargodist an cosán is giorra ar dtús, ansin úsáidfear an dara cosán is giorra go dtí go mbeidh sé sin líonta agus mar sin de. Tá líonadh an chosáin bunaithe ar mheastachán den acmhainn iompair agus den úsáid atá pleanáilte. Nuair a bheidh gach cosán líonta, má tá éileamh fós ann, déanfar ró-ualú ar gach cosán, ag tabhairt tús áite dóibh siúd a bhfuil acmhainn mhór iompair acu. Mar sin féin, formhór an ama ní dhéanfaidh an t-algartam meastachán cruinn ar an acmhainn iompair. Ligeann an socrú seo duit céatadán a shonrú don mhéid is gá go mbeadh cosán níos giorra líonta ar dtús sula roghnófar an chéad cheann níos faide eile. Is é is fearr é luach níos lú ná 100% a roghnú le nach ndéanfar stáisiúin a róphlódú sa chás go ndéantar rómheastachán ar an acmhainn iompair. STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :Aonaid luais: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_HELPTEXT :Aon áit a thaispeántar luas sa chomhéadan úsáideora, taispeain sna haonaid roghnaithe é @@ -1747,7 +1782,7 @@ STR_OSNAME_OS2 :OS/2 STR_OSNAME_SUNOS :SunOS # Abandon game -STR_ABANDON_GAME_CAPTION :{WHITE}Fág Cluiche +STR_ABANDON_GAME_CAPTION :{WHITE}Fág an Cluiche STR_ABANDON_GAME_QUERY :{YELLOW}An bhfuil tú cinnte gur mhaith leat an cluiche seo a fhágáil? STR_ABANDON_SCENARIO_QUERY :{YELLOW}An bhfuil tú cinnte gur mhaith leat an scéal seo a fhágáil? @@ -1914,7 +1949,7 @@ STR_NETWORK_SERVER_LIST_FIND_SERVER :{BLACK}Aimsigh STR_NETWORK_SERVER_LIST_FIND_SERVER_TOOLTIP :{BLACK}Cuardaigh líonra le haghaidh freastalaí STR_NETWORK_SERVER_LIST_ADD_SERVER :{BLACK}Cuir freastalaí leis STR_NETWORK_SERVER_LIST_ADD_SERVER_TOOLTIP :{BLACK}Cuirtear freastalaí leis an liosta a sheiceálfar i gcónaí le haghaidh cluichí ar rith. -STR_NETWORK_SERVER_LIST_START_SERVER :{BLACK}Tosaigh an freastalaí +STR_NETWORK_SERVER_LIST_START_SERVER :{BLACK}Tosaigh freastalaí STR_NETWORK_SERVER_LIST_START_SERVER_TOOLTIP :{BLACK}Tosaigh d'fhreastalaí féin STR_NETWORK_SERVER_LIST_PLAYER_NAME_OSKTITLE :{BLACK}Iontráil d'ainm @@ -2652,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Talamh faoi úi STR_ABOUT_OPENTTD :{WHITE}Maidir le OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Cóipcheart bunaidh {COPYRIGHT} 1995 Chris Sawyer, Gach ceart ar cosaint STR_ABOUT_VERSION :{BLACK}OpenTTD leagan {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 An fhoireann OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 An fhoireann OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Sábháil an Cluiche @@ -2839,7 +2874,11 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Téigh c STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Sprite roimhe STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Téigh ar aghaigh chuig an gnáth-sprite roimhe, ag scipeáil thar aon bhréag-sprite nó sprite athdathaithe/clófhoirne agus ag timfhilleadh ag an tús STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Léiriú den sprite atá roghnaithe faoi láthair. Déantar neamhaird den ailíniú agus an sprite seo á tharraingt -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Bog an sprite timpeall, ag athrú an seach-chur X agus Y +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Bog an sprid timpeall, ag athrú an seach-chur X agus Y. Ctrl+Cliceáil chun an sprid a bhogadh ocht n-aonad ag an am céanna +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Athshocraigh coibhneasta +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Athshocraigh na seach-chuir choibhneasta reatha +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Seach-chur X: {NUM}, Seach-chur Y: {NUM} (Dearbh-shuíomh) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}Seach-chur X: {NUM}, Seach-chur Y: {NUM} (Coibhneasta) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Roghnaigh sprite STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Roghnaigh sprite ó áit ar bith ar an scáileán @@ -2850,7 +2889,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Rabhadh: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Earráid: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Marfach: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Tharla earráid mharfach NewGRF: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Tharla earráid mharfach NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :Ní oibreoidh {1:STRING} leis an leagan de TTDPatch a thuairiscigh OpenTTD. STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING}: Is don leagan {STRING} de TTD é STR_NEWGRF_ERROR_UNSET_SWITCH :Tá {1:STRING} deartha le húsáid le {STRING} @@ -4498,7 +4537,7 @@ STR_INDUSTRY_NAME_WATER_TOWER :Túr Uisce STR_INDUSTRY_NAME_FACTORY_2 :Monarcha STR_INDUSTRY_NAME_FARM_2 :Feirm STR_INDUSTRY_NAME_LUMBER_MILL :Muileann Adhmaid -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST :Foraois Féasóg Daideo +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST :Foraois Scamaill Siúcra STR_INDUSTRY_NAME_CANDY_FACTORY :Monarcha Milseán STR_INDUSTRY_NAME_BATTERY_FARM :Feirm Ceallraí STR_INDUSTRY_NAME_COLA_WELLS :Toibreacha Cóla @@ -4597,7 +4636,7 @@ STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_WATER_TANKER :Tancaer Uisce STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_FRUIT_TRUCK :Trucail Torthaí STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_RUBBER_TRUCK :Trucail Rubair STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_SUGAR_TRUCK :Trucail Siúcra -STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COTTON_CANDY_HOPPER :Crannóg Féasóg Daideo +STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COTTON_CANDY_HOPPER :Crannóg Scamaill Siúcra STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_TOFFEE_HOPPER :Crannóg Taifí STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_BUBBLE_VAN :Veain Súilíní STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COLA_TANKER :Tancaer Cóla @@ -4627,7 +4666,7 @@ STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_WATER_TANKER :Tancaer Uisce STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_FRUIT_TRUCK :Trucail Torthaí STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_RUBBER_TRUCK :Trucail Rubair STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_SUGAR_TRUCK :Trucail Siúcra -STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_COTTON_CANDY_HOPPER :Crannóg Féasóg Daideo +STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_COTTON_CANDY_HOPPER :Crannóg Scamaill Siúcra STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_TOFFEE_HOPPER :Crannóg Taifí STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_BUBBLE_VAN :Veain Súilíní STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_COLA_TANKER :Tancaer Cóla @@ -4659,7 +4698,7 @@ STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_WATER_TANKER :Tancaer Uisce STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_FRUIT_TRUCK :Trucail Torthaí STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_RUBBER_TRUCK :Trucail Rubair STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_SUGAR_TRUCK :Trucail Siúcra -STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_COTTON_CANDY_HOPPER :Crannóg Féasóg Daideo +STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_COTTON_CANDY_HOPPER :Crannóg Scamaill Siúcra STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_TOFFEE_HOPPER :Crannóg Taifí STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_BUBBLE_VAN :Veain Súilíní STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_COLA_TANKER :Tancaer Cóla @@ -4732,9 +4771,9 @@ STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_SUGAR_TRUCK :Trucail Siúchr STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_COLA_TRUCK :Trucail Cóla MightyMover STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_COLA_TRUCK :Trucail Cóla Powernaught STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_COLA_TRUCK :Trucail Cóla Wizzowow -STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_COTTON_CANDY :Trucail Féasóg Daideo MightyMover -STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_COTTON_CANDY :Trucail Féasóg Daideo Powernaught -STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_COTTON_CANDY_TRUCK :Trucail Féasóg Daideo Wizzowow +STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_COTTON_CANDY :Trucail Scamaill Siúcra MightyMover +STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_COTTON_CANDY :Trucail Scamaill Siúcra Powernaught +STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_COTTON_CANDY_TRUCK :Trucail Scamaill Siúcra Wizzowow STR_VEHICLE_NAME_ROAD_VEHICLE_MIGHTYMOVER_TOFFEE_TRUCK :Trucail Taifí MightyMover STR_VEHICLE_NAME_ROAD_VEHICLE_POWERNAUGHT_TOFFEE_TRUCK :Trucail Taifí Powernaught STR_VEHICLE_NAME_ROAD_VEHICLE_WIZZOWOW_TOFFEE_TRUCK :Trucail Taifí Wizzowow diff --git a/src/lang/italian.txt b/src/lang/italian.txt index 5ff780c93e..917fd0d4a8 100644 --- a/src/lang/italian.txt +++ b/src/lang/italian.txt @@ -12,7 +12,7 @@ ##case ms mp fs fp -# $Id: italian.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: italian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2717,7 +2717,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terreno possedu STR_ABOUT_OPENTTD :{WHITE}Informazioni su OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright originale {COPYRIGHT} 1995 Chris Sawyer, Tutti i diritti riservati STR_ABOUT_VERSION :{BLACK}OpenTTD versione {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Il team OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 Il team OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Salva partita @@ -2904,7 +2904,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Va allo STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Precedente STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Procede al precedente sprite normale, saltanto qualsiasi sprite speciale, di ricoloramento o carattere e tornando all'ultimo se viene raggiunto il primo della lista STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Rappresentazione dello sprite corrente. L'allineamento viene ignorato in questa casella. -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Sposta lo sprite, cambiando gli spiazzamenti X e Y +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Sposta lo sprite, cambiando gli spiazzamenti X e Y. CTRL+clic sposta lo sprite di otto unità alla volta STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Reimposta posizione relativa STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Reimposta gli spiazzamenti relativi attuali STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Posizione X: {NUM}, Y: {NUM} (assoluto) @@ -2919,7 +2919,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Attenzione: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Errore: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Errore irreversibile: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Si è verificato un errore irreversibile nel NewGRF: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Si è verificato un errore irreversibile nel NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} non funziona con la versione di TTDPatch riferita da OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} è per la versione {STRING} di TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} è progettato per essere usato con {STRING} diff --git a/src/lang/japanese.txt b/src/lang/japanese.txt index 81a81ea89a..e33e9a6c27 100644 --- a/src/lang/japanese.txt +++ b/src/lang/japanese.txt @@ -10,7 +10,7 @@ ##grflangid 0x39 -# $Id: japanese.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: japanese.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2357,14 +2357,14 @@ STR_BUILD_SIGNAL_SEMAPHORE_NORM_TOOLTIP :{BLACK}閉塞 STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}入口信号 (腕木式){}この信号の先にある出口信号のうち最低でも1つが緑であれば緑になりますが、そうでなければ赤になります。場内信号に良く使われます STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}出口信号 (腕木式){}動作は普通の閉塞信号と同様ですが、入口/コンボ信号を使用する場合に必要になります。ホームの入り口に良く使われます STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}コンボ信号 (腕木式){}コンボ信号は入口信号と出口信号の機能を併せ持つ信号です。この信号を使うと多数の分岐のあるような場内信号網を作ることができます -STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}パス信号 (腕木式) {}パス信号では、互いに衝突しない経路が確保できる場合には1つの閉塞内に複数の列車が入ることを許容します。汎用性は高いですが、一方向式しか使えず信号の背面から進行してくる列車を防護することができません。この信号で列車が停車中に正面から対向列車が来ると問答無用で衝突事故を起こします! -STR_BUILD_SIGNAL_SEMAPHORE_PBS_OWAY_TOOLTIP :{BLACK}一方通行パス信号 (腕木式) {}パス信号では、互いに衝突しない経路が確保できる場合には1つの閉塞内に複数の列車が入ることを許容します。このタイプのパス信号は信号の背面から通過することはできません +STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}パス信号 (腕木式){}パス信号では、互いに衝突しない経路が確保できる場合には1つの閉塞内に複数の列車が入ることを許容します。汎用性は高いですが、一方向式しか使えず信号の背面から進行してくる列車を防護することができません。この信号で列車が停車中に正面から対向列車が来ると問答無用で衝突事故を起こします! +STR_BUILD_SIGNAL_SEMAPHORE_PBS_OWAY_TOOLTIP :{BLACK}一方通行パス信号 (腕木式){}パス信号では、互いに衝突しない経路が確保できる場合には1つの閉塞内に複数の列車が入ることを許容します。このタイプのパス信号は信号の背面から通過することはできません STR_BUILD_SIGNAL_ELECTRIC_NORM_TOOLTIP :{BLACK}閉塞信号 (色灯式){}最も一般的な信号で、1つの閉塞内(信号同士の間の区間)には1編成のみが進入できます。配置した信号をクリックすると信号の向きを「一方向→一方向(逆)→二方向」の順で変えられます。一方向式の信号は背面から通過できません STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}入口信号 (色灯式){}この信号の先にある出口信号のうち最低でも1つが緑であれば緑になりますが、そうでなければ赤になります。場内信号に良く使われます STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}出口信号 (色灯式){}動作は普通の閉塞信号と同様ですが、入口/コンボ信号を使用する場合に必要になります。ホームの入り口に良く使われます STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}コンボ信号 (色灯式){}コンボ信号は入口信号と出口信号の機能を併せ持つ信号です。この信号を使うと多数の分岐のあるような場内信号網を作ることができます -STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}パス信号 (色灯式) {}パス信号では、互いに衝突しない経路が確保できる場合には1つの閉塞内に複数の列車が入ることを許容します。汎用性は高いですが、一方向式しか使えず信号の背面から進行してくる列車を防護することができません。この信号で列車が停車中に正面から対向列車が来ると問答無用で衝突事故を起こします! -STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}一方通行パス信号 (色灯式) {}パス信号では、互いに衝突しない経路が確保できる場合には1つの閉塞内に複数の列車が入ることを許容します。このタイプのパス信号は信号の背面から通過することはできません +STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}パス信号 (色灯式){}パス信号では、互いに衝突しない経路が確保できる場合には1つの閉塞内に複数の列車が入ることを許容します。汎用性は高いですが、一方向式しか使えず信号の背面から進行してくる列車を防護することができません。この信号で列車が停車中に正面から対向列車が来ると問答無用で衝突事故を起こします! +STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}一方通行パス信号 (色灯式){}パス信号では、互いに衝突しない経路が確保できる場合には1つの閉塞内に複数の列車が入ることを許容します。このタイプのパス信号は信号の背面から通過することはできません STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}信号交換{}既存の信号を今選択している信号に交換します。Ctrl+クリックで種類は替えずに腕木/色灯の形式のみ切り替えます。Shift+クリックで費用を見積もります STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}ドラッグ時の信号設置間隔を指定します STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}ドラッグ時の信号設置間隔を減らします @@ -2687,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :社有地 STR_ABOUT_OPENTTD :{WHITE}OpenTTDについて STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}オリジナル版権{COPYRIGHT} 1995 Chris Sawyer All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD バージョン {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}ゲームを保存 @@ -2875,6 +2875,10 @@ STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}前の STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}前のノーマルスプライトに戻ります。始端と終端は連続しているものとみなし、疑似/リカラー/フォントスプライトはスキップします STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}現在選択されているスプライトの代表絵を示します。この配列はスプライトを描画するときには無視されます STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}X・Yオフセットを変更し、スプライトを移動します +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK} 相対値リセット +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK} 現在の相対オフセットをリセットします。 +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Xオフセット : {NUM},Yオフセット : {NUM} (絶対値) +STR_SPRITE_ALIGNER_OFFSETS_REL : {BLACK}X オフセット : {NUM}, Y オフセット : {NUM} (相対値) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}スプライトを選ぶ STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}画面内からスプライトを選びます @@ -2885,7 +2889,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}警告: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}エラー: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}致命的エラー: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}NewGRFに致命的なエラーが発生しました: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}NewGRFに致命的なエラーが発生しました:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING}はOpenTTDのTTDPatchバージョンには対応していません STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING}はTTDのバージョン{STRING}にのみ対応しています STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING}を使用時には{STRING}を有効にしなければなりません diff --git a/src/lang/korean.txt b/src/lang/korean.txt index 172f6c4f75..e74d95d09a 100644 --- a/src/lang/korean.txt +++ b/src/lang/korean.txt @@ -11,7 +11,7 @@ ##gender m f -# $Id: korean.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: korean.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -98,28 +98,28 @@ STR_CARGO_SINGULAR_FIZZY_DRINK :{G=f}탄산음 STR_QUANTITY_NOTHING : STR_QUANTITY_PASSENGERS :승객{NBSP}{COMMA}명 STR_QUANTITY_COAL :석탄 {WEIGHT_LONG} -STR_QUANTITY_MAIL :{G=f}우편 {COMMA}{NBSP}자루 +STR_QUANTITY_MAIL :우편 {COMMA}{NBSP}자루 STR_QUANTITY_OIL :석유 {VOLUME_LONG} -STR_QUANTITY_LIVESTOCK :{G=f}가축 {COMMA}{NBSP}마리 -STR_QUANTITY_GOODS :{G=f}상품 {COMMA}{NBSP}상자 +STR_QUANTITY_LIVESTOCK :가축 {COMMA}{NBSP}마리 +STR_QUANTITY_GOODS :상품 {COMMA}{NBSP}상자 STR_QUANTITY_GRAIN :곡물 {WEIGHT_LONG} STR_QUANTITY_WOOD :목재 {WEIGHT_LONG} STR_QUANTITY_IRON_ORE :철광석 {WEIGHT_LONG} STR_QUANTITY_STEEL :철 {WEIGHT_LONG} -STR_QUANTITY_VALUABLES :{G=f}귀금속 {COMMA}{NBSP}자루 +STR_QUANTITY_VALUABLES :귀금속 {COMMA}{NBSP}자루 STR_QUANTITY_COPPER_ORE :구리 광석 {WEIGHT_LONG} STR_QUANTITY_MAIZE :옥수수 {WEIGHT_LONG} STR_QUANTITY_FRUIT :과일 {WEIGHT_LONG} -STR_QUANTITY_DIAMONDS :{G=f}다이아몬드 {COMMA}{NBSP}자루 +STR_QUANTITY_DIAMONDS :다이아몬드 {COMMA}{NBSP}자루 STR_QUANTITY_FOOD :식품 {WEIGHT_LONG} STR_QUANTITY_PAPER :종이 {WEIGHT_LONG} -STR_QUANTITY_GOLD :{G=f}금 {COMMA}{NBSP}자루 +STR_QUANTITY_GOLD :금 {COMMA}{NBSP}자루 STR_QUANTITY_WATER :물 {VOLUME_LONG} STR_QUANTITY_WHEAT :밀 {WEIGHT_LONG} STR_QUANTITY_RUBBER :고무 {VOLUME_LONG} STR_QUANTITY_SUGAR :설탕 {WEIGHT_LONG} -STR_QUANTITY_TOYS :{G=f}장난감 {COMMA}{NBSP}상자 -STR_QUANTITY_SWEETS :{G=f}사탕 {COMMA}{NBSP}자루 +STR_QUANTITY_TOYS :장난감 {COMMA}{NBSP}상자 +STR_QUANTITY_SWEETS :사탕 {COMMA}{NBSP}자루 STR_QUANTITY_COLA :콜라 {VOLUME_LONG} STR_QUANTITY_CANDYFLOSS :솜사탕 {WEIGHT_LONG} STR_QUANTITY_BUBBLES :거품 {COMMA}개 @@ -177,7 +177,7 @@ STR_CRATES :{G=f}{COMMA}{NB STR_COLOUR_DARK_BLUE :어두운 파랑 STR_COLOUR_PALE_GREEN :연한 초록 STR_COLOUR_PINK :분홍 -STR_COLOUR_YELLOW :{G=m}노랑 +STR_COLOUR_YELLOW :노랑 STR_COLOUR_RED :빨강 STR_COLOUR_LIGHT_BLUE :밝은 파랑 STR_COLOUR_GREEN :녹색 @@ -306,7 +306,7 @@ STR_SORT_BY_COST :가격 STR_SORT_BY_POWER :힘 STR_SORT_BY_TRACTIVE_EFFORT :견인력 STR_SORT_BY_INTRO_DATE :도입 날짜 -STR_SORT_BY_RUNNING_COST :{G=f}유지비 +STR_SORT_BY_RUNNING_COST :유지비 STR_SORT_BY_POWER_VS_RUNNING_COST :유지비 분의 힘 STR_SORT_BY_CARGO_CAPACITY :화물 수송량 STR_SORT_BY_RANGE :항속거리 @@ -595,13 +595,13 @@ STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP :{BLACK}특정 # Company league window STR_COMPANY_LEAGUE_TABLE_CAPTION :{WHITE}회사 성취도 순위 STR_COMPANY_LEAGUE_COMPANY_NAME :{ORANGE}{COMPANY} {BLACK}{COMPANY_NUM} '{STRING}' -STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_ENGINEER :{G=f}엔지니어 -STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRAFFIC_MANAGER :{G=f}교통망 관리자 +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_ENGINEER :{G=f}기사 +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRAFFIC_MANAGER :{G=f}교통 매니저 STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRANSPORT_COORDINATOR :{G=f}수송 조정자 STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_ROUTE_SUPERVISOR :{G=f}노선 관리자 -STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_DIRECTOR :{G=f}이사 -STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHIEF_EXECUTIVE :{G=m}이사장 -STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHAIRMAN :{G=m}회장 +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_DIRECTOR :{G=m}임원 +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHIEF_EXECUTIVE :{G=m}최고 경영자 +STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHAIRMAN :{G=m}사장 STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_PRESIDENT :{G=m}회장 STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TYCOON :{G=m}타이쿤! @@ -687,8 +687,8 @@ STR_HIGHSCORE_TOP_COMPANIES_WHO_REACHED :{BIG_FONT}{BLAC STR_HIGHSCORE_TOP_COMPANIES_NETWORK_GAME :{BIG_FONT}{BLACK}{NUM}의 회사 성취도 목록 STR_HIGHSCORE_POSITION :{BIG_FONT}{BLACK}{COMMA}. STR_HIGHSCORE_PERFORMANCE_TITLE_BUSINESSMAN :{G=f}초보자 -STR_HIGHSCORE_PERFORMANCE_TITLE_ENTREPRENEUR :{G=f}사업주 -STR_HIGHSCORE_PERFORMANCE_TITLE_INDUSTRIALIST :{G=f}공업가 +STR_HIGHSCORE_PERFORMANCE_TITLE_ENTREPRENEUR :{G=f}사업가 +STR_HIGHSCORE_PERFORMANCE_TITLE_INDUSTRIALIST :{G=f}기업가 STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :{G=f}자본가 STR_HIGHSCORE_PERFORMANCE_TITLE_MAGNATE :{G=f}권력자 STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :{G=m}거물 @@ -979,7 +979,7 @@ STR_GAME_OPTIONS_FULLSCREEN_TOOLTIP :{BLACK}OpenTTD STR_GAME_OPTIONS_RESOLUTION :{BLACK}화면 해상도 STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}사용하실 화면 해상도를 선택하세요. -STR_GAME_OPTIONS_RESOLUTION_OTHER :{G=f}기타 +STR_GAME_OPTIONS_RESOLUTION_OTHER :기타 STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}인터페이스 크기 STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}인터페이스의 크기를 선택하십시오. @@ -1119,9 +1119,9 @@ STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :게임 설정 ( STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :게임 설정 (게임 저장 파일에 저장됨; 현재 게임에만 적용됨) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :회사 설정 (게임 저장 파일에 저장됨; 새 게임에만 적용됨) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :회사 설정 (게임 저장 파일에 저장됨; 현재 회사에만 적용됨) -STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}검색 결과를 전부 보시려면 {}{SILVER}분류 {BLACK}설정을 {WHITE}{STRING}{BLACK}으로 바꾸십시오. -STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}검색 결과를 전부 보시려면 {}{SILVER}종류 {BLACK}설정을 {WHITE}모든 설정{BLACK}으로 바꾸십시오. -STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}검색 결과를 전부 보시려면 {}{SILVER}분류 {BLACK}설정을 {WHITE}{STRING}{BLACK}으로, {SILVER}종류 {BLACK}설정을 {WHITE}모든 설정{BLACK}으로 바꾸십시오. +STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}검색 결과를 전부 보시려면{}{SILVER}분류 {BLACK}설정을 {WHITE}{STRING}{BLACK}으로 바꾸십시오. +STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}검색 결과를 전부 보시려면{}{SILVER}종류 {BLACK}설정을 {WHITE}모든 설정{BLACK}으로 바꾸십시오. +STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}검색 결과를 전부 보시려면{}{SILVER}분류 {BLACK}설정을 {WHITE}{STRING}{BLACK}으로, {SILVER}종류 {BLACK}설정을 {WHITE}모든 설정{BLACK}으로 바꾸십시오. STR_CONFIG_SETTINGS_NONE :{WHITE}- 없음 - STR_CONFIG_SETTING_OFF :아니요 @@ -1715,7 +1715,7 @@ STR_CONFIG_ERROR_INVALID_GRF_NOT_FOUND :찾을 수 없 STR_CONFIG_ERROR_INVALID_GRF_UNSAFE :사용하기에 불안함 STR_CONFIG_ERROR_INVALID_GRF_SYSTEM :NewGRF 시스템 STR_CONFIG_ERROR_INVALID_GRF_INCOMPATIBLE :현재 OpenTTD 버전과 맞지 않음 -STR_CONFIG_ERROR_INVALID_GRF_UNKNOWN :{G=m}알 수 없음 +STR_CONFIG_ERROR_INVALID_GRF_UNKNOWN :알 수 없음 STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_LEVEL :{WHITE}... 압축 레벨 '{STRING}' : 유효하지 않습니다 STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... '{STRING}' 형식으로 게임을 저장할 수 없습니다. '{STRING}' 형식으로 변환합니다 STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... 기본 그래픽 세트({STRING})가 무시되었습니다: 파일을 찾을 수 없습니다. @@ -1776,7 +1776,7 @@ STR_OSNAME_DOS :{G=f}DOS STR_OSNAME_UNIX :{G=f}Unix STR_OSNAME_OSX :{G=f}OS{NBSP}X STR_OSNAME_BEOS :{G=f}BeOS -STR_OSNAME_HAIKU :Haiku +STR_OSNAME_HAIKU :{G=f}Haiku STR_OSNAME_MORPHOS :{G=f}MorphOS STR_OSNAME_AMIGAOS :{G=f}AmigaOS STR_OSNAME_OS2 :{G=f}OS/2 @@ -1829,8 +1829,8 @@ STR_LIVERY_EMU :{G=f}EMU STR_LIVERY_PASSENGER_WAGON_STEAM :{G=f}객차 (증기) STR_LIVERY_PASSENGER_WAGON_DIESEL :{G=f}객차 (디젤) STR_LIVERY_PASSENGER_WAGON_ELECTRIC :{G=f}객차 (전기) -STR_LIVERY_PASSENGER_WAGON_MONORAIL :객차 (모노레일) -STR_LIVERY_PASSENGER_WAGON_MAGLEV :객차 (자기부상) +STR_LIVERY_PASSENGER_WAGON_MONORAIL :{G=f}객차 (모노레일) +STR_LIVERY_PASSENGER_WAGON_MAGLEV :{G=f}객차 (자기부상) STR_LIVERY_FREIGHT_WAGON :{G=f}화물차 STR_LIVERY_BUS :{G=f}버스 STR_LIVERY_TRUCK :{G=m}트럭 @@ -1839,8 +1839,8 @@ STR_LIVERY_FREIGHT_SHIP :{G=m}화물선 STR_LIVERY_HELICOPTER :{G=f}헬리콥터 STR_LIVERY_SMALL_PLANE :{G=f}소형 항공기 STR_LIVERY_LARGE_PLANE :{G=f}대형 항공기 -STR_LIVERY_PASSENGER_TRAM :승객 전차 -STR_LIVERY_FREIGHT_TRAM :화물 전차 +STR_LIVERY_PASSENGER_TRAM :{G=f}승객 전차 +STR_LIVERY_FREIGHT_TRAM :{G=f}화물 전차 # Face selection window STR_FACE_CAPTION :{WHITE}얼굴 선택 @@ -2332,7 +2332,7 @@ STR_BUILD_DEPOT_TRAIN_ORIENTATION_CAPTION :{WHITE}차량 STR_BUILD_DEPOT_TRAIN_ORIENTATION_TOOLTIP :{BLACK}차량기지의 방향을 선택하세요. # Rail waypoint construction window -STR_WAYPOINT_CAPTION :{G=f}{WHITE}경유지 +STR_WAYPOINT_CAPTION :{WHITE}경유지 STR_WAYPOINT_GRAPHICS_TOOLTIP :{BLACK}경유지 종류 설정 # Rail station construction window @@ -2350,7 +2350,7 @@ STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}표시 STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}건설할 역의 종류를 선택합니다 STR_STATION_CLASS_DFLT :기본 역사 -STR_STATION_CLASS_WAYP :{G=f}경유지 +STR_STATION_CLASS_WAYP :경유지 # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}신호기 선택 @@ -2629,7 +2629,7 @@ STR_LAI_RAIL_DESCRIPTION_TRAIN_DEPOT :{STRING} 차량 STR_LAI_ROAD_DESCRIPTION_ROAD :도로 STR_LAI_ROAD_DESCRIPTION_ROAD_WITH_STREETLIGHTS :가로등이 있는 도로 STR_LAI_ROAD_DESCRIPTION_TREE_LINED_ROAD :가로수가 있는 도로 -STR_LAI_ROAD_DESCRIPTION_ROAD_VEHICLE_DEPOT :{G=f}차고지 +STR_LAI_ROAD_DESCRIPTION_ROAD_VEHICLE_DEPOT :차고지 STR_LAI_ROAD_DESCRIPTION_ROAD_RAIL_LEVEL_CROSSING :철도 건널목 STR_LAI_ROAD_DESCRIPTION_TRAMWAY :전찻길 @@ -2646,8 +2646,8 @@ STR_LAI_STATION_DESCRIPTION_AIRPORT :공항 STR_LAI_STATION_DESCRIPTION_TRUCK_LOADING_AREA :트럭 적하장 STR_LAI_STATION_DESCRIPTION_BUS_STATION :버스 정류장 STR_LAI_STATION_DESCRIPTION_SHIP_DOCK :항구 -STR_LAI_STATION_DESCRIPTION_BUOY :{G=f}부표 -STR_LAI_STATION_DESCRIPTION_WAYPOINT :{G=f}경유지 +STR_LAI_STATION_DESCRIPTION_BUOY :부표 +STR_LAI_STATION_DESCRIPTION_WAYPOINT :경유지 STR_LAI_WATER_DESCRIPTION_WATER :물 STR_LAI_WATER_DESCRIPTION_CANAL :운하 @@ -2688,7 +2688,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :회사 소유 STR_ABOUT_OPENTTD :{WHITE}OpenTTD에 대해서 STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original copyright {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD 버전 {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD 개발팀 +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 OpenTTD 개발팀 # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}게임 저장 @@ -2875,7 +2875,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}입력 STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}이전 스프라이트 STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}(위조/재색상/글씨 스프라이트를 제외한) 이전 보통 스프라이트로 이동하고, 첫 번째 스프라이트에 다다르면 마지막으로 돌아갑니다. STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}현재 선택된 스프라이트를 표시합니다. 이 스프라이트가 그려졌을때의 정렬은 무시합니다. -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}X축이나 Y축 방향으로 스프라이트를 이동시킵니다. +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}X축이나 Y축 방향으로 스프라이트를 이동시킵니다. CTRL+클릭하면 한 번에 8씩 이동시킬 수 있습니다. STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}상대값 초기화 STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}현재 상대값 좌표를 초기화 STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X 좌표: {NUM}, Y 좌표: {NUM} (절댓값) @@ -2890,7 +2890,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}경고: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}오류: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}치명적 오류: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}치명적인 NewGRF 오류가 발생했습니다: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}치명적인 NewGRF 오류가 발생했습니다:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING}은 OpenTTD에서 보고된 TTD패치 버전에서 작동하지 않을 것입니다. STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING}{G 1 "은" "는"} {STRING} 버전의 TTD를 위한 것입니다. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING}{G 1 "은" "는"} {STRING}{G 1 "와" "과"} 같이 사용해야 합니다 @@ -3054,9 +3054,9 @@ STR_GOAL_QUESTION_CAPTION_ERROR :오류 ############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :취소 -STR_GOAL_QUESTION_BUTTON_OK :{G=m}확인 +STR_GOAL_QUESTION_BUTTON_OK :확인 STR_GOAL_QUESTION_BUTTON_NO :아니요 -STR_GOAL_QUESTION_BUTTON_YES :{G=f}예 +STR_GOAL_QUESTION_BUTTON_YES :예 STR_GOAL_QUESTION_BUTTON_DECLINE :거절 STR_GOAL_QUESTION_BUTTON_ACCEPT :수락 STR_GOAL_QUESTION_BUTTON_IGNORE :무시 @@ -3878,11 +3878,11 @@ STR_ORDER_STOP_LOCATION_NEAR_END :[가까운쪽] STR_ORDER_STOP_LOCATION_MIDDLE :[중간] STR_ORDER_STOP_LOCATION_FAR_END :[먼쪽] -STR_ORDER_OUT_OF_RANGE :{RED} (다음 목적지가 항속거리제한을 벗어납니다.) +STR_ORDER_OUT_OF_RANGE :{RED} (다음 목적지가 제한 항속거리보다 멀리 있습니다) -STR_ORDER_CONDITIONAL_UNCONDITIONAL :[조건 경로] {COMMA}번째 경로로 건너뛰기 -STR_ORDER_CONDITIONAL_NUM :[조건 경로] {COMMA}번째 경로로 건너뛰기 ({STRING} {STRING} {COMMA} 일때) -STR_ORDER_CONDITIONAL_TRUE_FALSE :[조건 경로] {COMMA}번째 경로로 건너뛰기 ({STRING}{STRING}) +STR_ORDER_CONDITIONAL_UNCONDITIONAL :[조건 경로] {COMMA}번 경로로 건너뛰기 +STR_ORDER_CONDITIONAL_NUM :[조건 경로] {COMMA}번 경로로 건너뛰기 ({STRING} {STRING} {COMMA} 일때) +STR_ORDER_CONDITIONAL_TRUE_FALSE :[조건 경로] {COMMA}번 경로로 건너뛰기 ({STRING}{STRING}) STR_INVALID_ORDER :{RED} (잘못된 행선지) @@ -3985,7 +3985,7 @@ STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}다음 STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}다음에 게임을 시작할 때 이 인공지능을 불러올 것입니다 STR_AI_CONFIG_HUMAN_PLAYER :사용자 플레이어 STR_AI_CONFIG_RANDOM_AI :무작위 인공지능 -STR_AI_CONFIG_NONE :{G=m}(없음) +STR_AI_CONFIG_NONE :(없음) STR_AI_CONFIG_MOVE_UP :{BLACK}위로 이동 STR_AI_CONFIG_MOVE_UP_TOOLTIP :{BLACK}목록에서 선택한 인공지능의 순서를 한 칸 위로 옮깁니다. @@ -3997,16 +3997,16 @@ STR_AI_CONFIG_AI :{G=m}{SILVER} STR_AI_CONFIG_CHANGE :{BLACK}{STRING} 선택하기 STR_AI_CONFIG_CHANGE_NONE : -STR_AI_CONFIG_CHANGE_AI :{G=m}인공지능 -STR_AI_CONFIG_CHANGE_GAMESCRIPT :{G=f}게임 스크립트 +STR_AI_CONFIG_CHANGE_AI :인공지능 +STR_AI_CONFIG_CHANGE_GAMESCRIPT :게임 스크립트 STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}다른 스크립트 불러오기 STR_AI_CONFIG_CONFIGURE :{BLACK}설정 STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}인공지능의 매개 변수를 설정합니다. # Available AIs window STR_AI_LIST_CAPTION :{WHITE}사용 가능한 {STRING} -STR_AI_LIST_CAPTION_AI :{G=m}인공지능 -STR_AI_LIST_CAPTION_GAMESCRIPT :{G=f}게임 스크립트 +STR_AI_LIST_CAPTION_AI :인공지능 +STR_AI_LIST_CAPTION_GAMESCRIPT :게임 스크립트 STR_AI_LIST_TOOLTIP :{BLACK}스크립트를 선택하려면 클릭하세요. STR_AI_LIST_AUTHOR :{LTBLUE}저자: {ORANGE}{STRING} @@ -4020,7 +4020,7 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}인공 # AI Parameters STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} 매개 변수 -STR_AI_SETTINGS_CAPTION_AI :{G=m}인공지능 +STR_AI_SETTINGS_CAPTION_AI :인공지능 STR_AI_SETTINGS_CAPTION_GAMESCRIPT :게임 스크립트 STR_AI_SETTINGS_CLOSE :{BLACK}닫기 STR_AI_SETTINGS_RESET :{BLACK}초기화 @@ -4554,7 +4554,7 @@ STR_INDUSTRY_NAME_SUGAR_MINE :{G=m}설탕 광 ############ These strings may never get a new id, or savegames will break! ##id 0x6000 STR_SV_EMPTY : -STR_SV_UNNAMED :{G=m}이름 없음 +STR_SV_UNNAMED :이름 없음 STR_SV_TRAIN_NAME :열차 {COMMA} STR_SV_ROAD_VEHICLE_NAME :차량 {COMMA} STR_SV_SHIP_NAME :선박 {COMMA} @@ -4856,7 +4856,7 @@ STR_FORMAT_DATE_SHORT :{1:NUM}년 {0:S STR_FORMAT_DATE_LONG :{2:NUM}년 {1:STRING}월 {0:STRING}일 STR_FORMAT_DATE_ISO :{2:NUM}-{1:STRING}-{0:STRING} -STR_FORMAT_BUOY_NAME :{G=f}{TOWN} 부표 +STR_FORMAT_BUOY_NAME :{TOWN} 부표 STR_FORMAT_BUOY_NAME_SERIAL :{TOWN} 부표 #{COMMA} STR_FORMAT_COMPANY_NUM :(회사 {COMMA}) STR_FORMAT_GROUP_NAME :그룹 {COMMA} @@ -4872,7 +4872,7 @@ STR_FORMAT_DEPOT_NAME_SHIP :{TOWN} 정박 STR_FORMAT_DEPOT_NAME_SHIP_SERIAL :{TOWN} 정박소 #{COMMA} STR_FORMAT_DEPOT_NAME_AIRCRAFT :{STATION} 격납고 -STR_UNKNOWN_STATION :알수없는 정거장 +STR_UNKNOWN_STATION :알 수 없는 정거장 STR_DEFAULT_SIGN_NAME :팻말 STR_COMPANY_SOMEONE :누군가 diff --git a/src/lang/latin.txt b/src/lang/latin.txt index 8363a781a3..2208c19beb 100644 --- a/src/lang/latin.txt +++ b/src/lang/latin.txt @@ -12,7 +12,7 @@ ##case gen acc abl dat -# $Id: latin.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: latin.txt 27486 2016-01-01 18:45:37Z translators $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -30,256 +30,256 @@ STR_JUST_NOTHING :Nihil # Plural cargo name STR_CARGO_PLURAL_NOTHING : STR_CARGO_PLURAL_PASSENGERS :{G=mp}Vectores -STR_CARGO_PLURAL_PASSENGERS.gen :{G=mp}vectorum -STR_CARGO_PLURAL_PASSENGERS.acc :{G=mp}Vectores -STR_CARGO_PLURAL_PASSENGERS.dat :{G=mp}Vectoribus +STR_CARGO_PLURAL_PASSENGERS.gen :vectorum +STR_CARGO_PLURAL_PASSENGERS.acc :Vectores +STR_CARGO_PLURAL_PASSENGERS.dat :Vectoribus STR_CARGO_PLURAL_COAL :{G=m}Carbo -STR_CARGO_PLURAL_COAL.gen :{G=m}carbonis -STR_CARGO_PLURAL_COAL.acc :{G=m}Carbonem -STR_CARGO_PLURAL_COAL.dat :{G=m}Carboni +STR_CARGO_PLURAL_COAL.gen :carbonis +STR_CARGO_PLURAL_COAL.acc :Carbonem +STR_CARGO_PLURAL_COAL.dat :Carboni STR_CARGO_PLURAL_MAIL :{G=fp}Epistulae -STR_CARGO_PLURAL_MAIL.gen :{G=fp}epistularum -STR_CARGO_PLURAL_MAIL.acc :{G=fp}Epistulas -STR_CARGO_PLURAL_MAIL.dat :{G=fp}Epistulis +STR_CARGO_PLURAL_MAIL.gen :epistularum +STR_CARGO_PLURAL_MAIL.acc :Epistulas +STR_CARGO_PLURAL_MAIL.dat :Epistulis STR_CARGO_PLURAL_OIL :{G=n}Petroleum -STR_CARGO_PLURAL_OIL.gen :{G=n}petrolei -STR_CARGO_PLURAL_OIL.acc :{G=n}Petroleum -STR_CARGO_PLURAL_OIL.dat :{G=n}Petroleo +STR_CARGO_PLURAL_OIL.gen :petrolei +STR_CARGO_PLURAL_OIL.acc :Petroleum +STR_CARGO_PLURAL_OIL.dat :Petroleo STR_CARGO_PLURAL_LIVESTOCK :{G=np}Pecora -STR_CARGO_PLURAL_LIVESTOCK.gen :{G=np}pecorum -STR_CARGO_PLURAL_LIVESTOCK.acc :{G=np}Pecora -STR_CARGO_PLURAL_LIVESTOCK.dat :{G=np}Pecoribus +STR_CARGO_PLURAL_LIVESTOCK.gen :pecorum +STR_CARGO_PLURAL_LIVESTOCK.acc :Pecora +STR_CARGO_PLURAL_LIVESTOCK.dat :Pecoribus STR_CARGO_PLURAL_GOODS :{G=fp}Merces -STR_CARGO_PLURAL_GOODS.gen :{G=fp}mercium -STR_CARGO_PLURAL_GOODS.acc :{G=fp}Merces -STR_CARGO_PLURAL_GOODS.dat :{G=fp}Mercibus +STR_CARGO_PLURAL_GOODS.gen :mercium +STR_CARGO_PLURAL_GOODS.acc :Merces +STR_CARGO_PLURAL_GOODS.dat :Mercibus STR_CARGO_PLURAL_GRAIN :{G=n}Frumentum -STR_CARGO_PLURAL_GRAIN.gen :{G=n}frumenti -STR_CARGO_PLURAL_GRAIN.acc :{G=n}Frumentum -STR_CARGO_PLURAL_GRAIN.dat :{G=n}Frumento +STR_CARGO_PLURAL_GRAIN.gen :frumenti +STR_CARGO_PLURAL_GRAIN.acc :Frumentum +STR_CARGO_PLURAL_GRAIN.dat :Frumento STR_CARGO_PLURAL_WOOD :{G=n}Lignum -STR_CARGO_PLURAL_WOOD.gen :{G=n}ligni -STR_CARGO_PLURAL_WOOD.acc :{G=n}Lignum -STR_CARGO_PLURAL_WOOD.dat :{G=n}Ligno +STR_CARGO_PLURAL_WOOD.gen :ligni +STR_CARGO_PLURAL_WOOD.acc :Lignum +STR_CARGO_PLURAL_WOOD.dat :Ligno STR_CARGO_PLURAL_IRON_ORE :{G=n}Ferrum -STR_CARGO_PLURAL_IRON_ORE.gen :{G=n}ferri -STR_CARGO_PLURAL_IRON_ORE.acc :{G=n}Ferrum -STR_CARGO_PLURAL_IRON_ORE.dat :{G=n}Ferro +STR_CARGO_PLURAL_IRON_ORE.gen :ferri +STR_CARGO_PLURAL_IRON_ORE.acc :Ferrum +STR_CARGO_PLURAL_IRON_ORE.dat :Ferro STR_CARGO_PLURAL_STEEL :{G=m}Chalybs -STR_CARGO_PLURAL_STEEL.gen :{G=m}chalybis -STR_CARGO_PLURAL_STEEL.acc :{G=m}Chalybem -STR_CARGO_PLURAL_STEEL.dat :{G=m}Chalybi +STR_CARGO_PLURAL_STEEL.gen :chalybis +STR_CARGO_PLURAL_STEEL.acc :Chalybem +STR_CARGO_PLURAL_STEEL.dat :Chalybi STR_CARGO_PLURAL_VALUABLES :{G=fp}Res Pretiosa -STR_CARGO_PLURAL_VALUABLES.gen :{G=fp}rerum pretiosarum -STR_CARGO_PLURAL_VALUABLES.acc :{G=fp}Res Pretiosas -STR_CARGO_PLURAL_VALUABLES.dat :{G=fp}Rebus Pretiosis +STR_CARGO_PLURAL_VALUABLES.gen :rerum pretiosarum +STR_CARGO_PLURAL_VALUABLES.acc :Res Pretiosas +STR_CARGO_PLURAL_VALUABLES.dat :Rebus Pretiosis STR_CARGO_PLURAL_COPPER_ORE :{G=n}Aes -STR_CARGO_PLURAL_COPPER_ORE.gen :{G=n}aeris -STR_CARGO_PLURAL_COPPER_ORE.acc :{G=n}Aes -STR_CARGO_PLURAL_COPPER_ORE.dat :{G=n}Aeri +STR_CARGO_PLURAL_COPPER_ORE.gen :aeris +STR_CARGO_PLURAL_COPPER_ORE.acc :Aes +STR_CARGO_PLURAL_COPPER_ORE.dat :Aeri STR_CARGO_PLURAL_MAIZE :{G=n}Maizium -STR_CARGO_PLURAL_MAIZE.gen :{G=n}maizii -STR_CARGO_PLURAL_MAIZE.acc :{G=n}Maizium -STR_CARGO_PLURAL_MAIZE.dat :{G=n}Maizio +STR_CARGO_PLURAL_MAIZE.gen :maizii +STR_CARGO_PLURAL_MAIZE.acc :Maizium +STR_CARGO_PLURAL_MAIZE.dat :Maizio STR_CARGO_PLURAL_FRUIT :{G=mp}Fructus -STR_CARGO_PLURAL_FRUIT.gen :{G=mp}fructuum -STR_CARGO_PLURAL_FRUIT.acc :{G=mp}Fructus -STR_CARGO_PLURAL_FRUIT.dat :{G=mp}Fructibus +STR_CARGO_PLURAL_FRUIT.gen :fructuum +STR_CARGO_PLURAL_FRUIT.acc :Fructus +STR_CARGO_PLURAL_FRUIT.dat :Fructibus STR_CARGO_PLURAL_DIAMONDS :{G=mp}Adamantes -STR_CARGO_PLURAL_DIAMONDS.gen :{G=mp}adamantum -STR_CARGO_PLURAL_DIAMONDS.acc :{G=mp}Adamantes -STR_CARGO_PLURAL_DIAMONDS.dat :{G=mp}Adamantibus +STR_CARGO_PLURAL_DIAMONDS.gen :adamantum +STR_CARGO_PLURAL_DIAMONDS.acc :Adamantes +STR_CARGO_PLURAL_DIAMONDS.dat :Adamantibus STR_CARGO_PLURAL_FOOD :{G=m}Cibus -STR_CARGO_PLURAL_FOOD.gen :{G=m}cibi -STR_CARGO_PLURAL_FOOD.acc :{G=m}Cibum -STR_CARGO_PLURAL_FOOD.dat :{G=m}Cibo +STR_CARGO_PLURAL_FOOD.gen :cibi +STR_CARGO_PLURAL_FOOD.acc :Cibum +STR_CARGO_PLURAL_FOOD.dat :Cibo STR_CARGO_PLURAL_PAPER :{G=f}Charta -STR_CARGO_PLURAL_PAPER.gen :{G=f}chartae -STR_CARGO_PLURAL_PAPER.acc :{G=f}Chartam -STR_CARGO_PLURAL_PAPER.dat :{G=f}Chartae +STR_CARGO_PLURAL_PAPER.gen :chartae +STR_CARGO_PLURAL_PAPER.acc :Chartam +STR_CARGO_PLURAL_PAPER.dat :Chartae STR_CARGO_PLURAL_GOLD :{G=n}Aurum -STR_CARGO_PLURAL_GOLD.gen :{G=n}auri -STR_CARGO_PLURAL_GOLD.acc :{G=n}Aurum -STR_CARGO_PLURAL_GOLD.dat :{G=n}Auro +STR_CARGO_PLURAL_GOLD.gen :auri +STR_CARGO_PLURAL_GOLD.acc :Aurum +STR_CARGO_PLURAL_GOLD.dat :Auro STR_CARGO_PLURAL_WATER :{G=f}Aqua -STR_CARGO_PLURAL_WATER.gen :{G=f}aquae -STR_CARGO_PLURAL_WATER.acc :{G=f}Aquam -STR_CARGO_PLURAL_WATER.dat :{G=f}Aquae +STR_CARGO_PLURAL_WATER.gen :aquae +STR_CARGO_PLURAL_WATER.acc :Aquam +STR_CARGO_PLURAL_WATER.dat :Aquae STR_CARGO_PLURAL_WHEAT :{G=n}Triticum -STR_CARGO_PLURAL_WHEAT.gen :{G=n}tritici -STR_CARGO_PLURAL_WHEAT.acc :{G=n}Triticum -STR_CARGO_PLURAL_WHEAT.dat :{G=n}Tritico +STR_CARGO_PLURAL_WHEAT.gen :tritici +STR_CARGO_PLURAL_WHEAT.acc :Triticum +STR_CARGO_PLURAL_WHEAT.dat :Tritico STR_CARGO_PLURAL_RUBBER :{G=f}Gummis -STR_CARGO_PLURAL_RUBBER.gen :{G=f}gummis -STR_CARGO_PLURAL_RUBBER.acc :{G=f}Gummem -STR_CARGO_PLURAL_RUBBER.dat :{G=f}Gummi +STR_CARGO_PLURAL_RUBBER.gen :gummis +STR_CARGO_PLURAL_RUBBER.acc :Gummem +STR_CARGO_PLURAL_RUBBER.dat :Gummi STR_CARGO_PLURAL_SUGAR :{G=n}Saccharum -STR_CARGO_PLURAL_SUGAR.gen :{G=n}sacchari -STR_CARGO_PLURAL_SUGAR.acc :{G=n}Saccharum -STR_CARGO_PLURAL_SUGAR.dat :{G=n}Saccharo +STR_CARGO_PLURAL_SUGAR.gen :sacchari +STR_CARGO_PLURAL_SUGAR.acc :Saccharum +STR_CARGO_PLURAL_SUGAR.dat :Saccharo STR_CARGO_PLURAL_TOYS :{G=np}Ludicra -STR_CARGO_PLURAL_TOYS.gen :{G=np}ludicrorum -STR_CARGO_PLURAL_TOYS.acc :{G=np}Ludicra -STR_CARGO_PLURAL_TOYS.dat :{G=np}Ludicris +STR_CARGO_PLURAL_TOYS.gen :ludicrorum +STR_CARGO_PLURAL_TOYS.acc :Ludicra +STR_CARGO_PLURAL_TOYS.dat :Ludicris STR_CARGO_PLURAL_CANDY :{G=np}Bellaria -STR_CARGO_PLURAL_CANDY.gen :{G=np}bellariorum -STR_CARGO_PLURAL_CANDY.acc :{G=np}Bellaria -STR_CARGO_PLURAL_CANDY.dat :{G=np}Bellariis +STR_CARGO_PLURAL_CANDY.gen :bellariorum +STR_CARGO_PLURAL_CANDY.acc :Bellaria +STR_CARGO_PLURAL_CANDY.dat :Bellariis STR_CARGO_PLURAL_COLA :{G=f}Cola -STR_CARGO_PLURAL_COLA.gen :{G=f}colae -STR_CARGO_PLURAL_COLA.acc :{G=f}Colam -STR_CARGO_PLURAL_COLA.dat :{G=f}Colae +STR_CARGO_PLURAL_COLA.gen :colae +STR_CARGO_PLURAL_COLA.acc :Colam +STR_CARGO_PLURAL_COLA.dat :Colae STR_CARGO_PLURAL_COTTON_CANDY :{G=n}Sacchari Xylinum -STR_CARGO_PLURAL_COTTON_CANDY.gen :{G=n}sacchari xylini -STR_CARGO_PLURAL_COTTON_CANDY.acc :{G=n}Sacchari Xylinum -STR_CARGO_PLURAL_COTTON_CANDY.dat :{G=n}Sacchari Xylino +STR_CARGO_PLURAL_COTTON_CANDY.gen :sacchari xylini +STR_CARGO_PLURAL_COTTON_CANDY.acc :Sacchari Xylinum +STR_CARGO_PLURAL_COTTON_CANDY.dat :Sacchari Xylino STR_CARGO_PLURAL_BUBBLES :{G=fp}Bullae -STR_CARGO_PLURAL_BUBBLES.gen :{G=fp}bullarum -STR_CARGO_PLURAL_BUBBLES.acc :{G=fp}Bullas -STR_CARGO_PLURAL_BUBBLES.dat :{G=fp}Bullis +STR_CARGO_PLURAL_BUBBLES.gen :bullarum +STR_CARGO_PLURAL_BUBBLES.acc :Bullas +STR_CARGO_PLURAL_BUBBLES.dat :Bullis STR_CARGO_PLURAL_TOFFEE :{G=n}Saccharum Tostum -STR_CARGO_PLURAL_TOFFEE.gen :{G=n}sacchari tosti -STR_CARGO_PLURAL_TOFFEE.acc :{G=n}Saccharum Tostum -STR_CARGO_PLURAL_TOFFEE.dat :{G=n}Saccharo Tosto +STR_CARGO_PLURAL_TOFFEE.gen :sacchari tosti +STR_CARGO_PLURAL_TOFFEE.acc :Saccharum Tostum +STR_CARGO_PLURAL_TOFFEE.dat :Saccharo Tosto STR_CARGO_PLURAL_BATTERIES :{G=fp}Pilae Electricae -STR_CARGO_PLURAL_BATTERIES.gen :{G=fp}pilarum electricarum -STR_CARGO_PLURAL_BATTERIES.acc :{G=fp}Pilas Electricas -STR_CARGO_PLURAL_BATTERIES.dat :{G=fp}Pilis Electricis +STR_CARGO_PLURAL_BATTERIES.gen :pilarum electricarum +STR_CARGO_PLURAL_BATTERIES.acc :Pilas Electricas +STR_CARGO_PLURAL_BATTERIES.dat :Pilis Electricis STR_CARGO_PLURAL_PLASTIC :{G=f}Plastica -STR_CARGO_PLURAL_PLASTIC.gen :{G=f}plasticae -STR_CARGO_PLURAL_PLASTIC.acc :{G=f}Plasticam -STR_CARGO_PLURAL_PLASTIC.dat :{G=f}Plasticae +STR_CARGO_PLURAL_PLASTIC.gen :plasticae +STR_CARGO_PLURAL_PLASTIC.acc :Plasticam +STR_CARGO_PLURAL_PLASTIC.dat :Plasticae STR_CARGO_PLURAL_FIZZY_DRINKS :{G=fp}Potiones Carbonatae -STR_CARGO_PLURAL_FIZZY_DRINKS.gen :{G=fp}potionum carbonatarum -STR_CARGO_PLURAL_FIZZY_DRINKS.acc :{G=fp}Potiones Carbonatas -STR_CARGO_PLURAL_FIZZY_DRINKS.dat :{G=fp}Potionibus Carbonatis +STR_CARGO_PLURAL_FIZZY_DRINKS.gen :potionum carbonatarum +STR_CARGO_PLURAL_FIZZY_DRINKS.acc :Potiones Carbonatas +STR_CARGO_PLURAL_FIZZY_DRINKS.dat :Potionibus Carbonatis # Singular cargo name STR_CARGO_SINGULAR_NOTHING : STR_CARGO_SINGULAR_PASSENGER :{G=mp}Vectores -STR_CARGO_SINGULAR_PASSENGER.gen :{G=mp}vectorum -STR_CARGO_SINGULAR_PASSENGER.acc :{G=mp}Vectores -STR_CARGO_SINGULAR_PASSENGER.dat :{G=mp}Vectoribus +STR_CARGO_SINGULAR_PASSENGER.gen :vectorum +STR_CARGO_SINGULAR_PASSENGER.acc :Vectores +STR_CARGO_SINGULAR_PASSENGER.dat :Vectoribus STR_CARGO_SINGULAR_COAL :{G=m}Carbo -STR_CARGO_SINGULAR_COAL.gen :{G=m}carbonis -STR_CARGO_SINGULAR_COAL.acc :{G=m}Carbonem -STR_CARGO_SINGULAR_COAL.dat :{G=m}Carboni +STR_CARGO_SINGULAR_COAL.gen :carbonis +STR_CARGO_SINGULAR_COAL.acc :Carbonem +STR_CARGO_SINGULAR_COAL.dat :Carboni STR_CARGO_SINGULAR_MAIL :{G=fp}Epistulae -STR_CARGO_SINGULAR_MAIL.gen :{G=fp}epistularum -STR_CARGO_SINGULAR_MAIL.acc :{G=fp}Epistulas -STR_CARGO_SINGULAR_MAIL.dat :{G=fp}Epistulis +STR_CARGO_SINGULAR_MAIL.gen :epistularum +STR_CARGO_SINGULAR_MAIL.acc :Epistulas +STR_CARGO_SINGULAR_MAIL.dat :Epistulis STR_CARGO_SINGULAR_OIL :{G=n}Petroleum -STR_CARGO_SINGULAR_OIL.gen :{G=n}petrolei -STR_CARGO_SINGULAR_OIL.acc :{G=n}Petroleum -STR_CARGO_SINGULAR_OIL.dat :{G=n}Petroleo +STR_CARGO_SINGULAR_OIL.gen :petrolei +STR_CARGO_SINGULAR_OIL.acc :Petroleum +STR_CARGO_SINGULAR_OIL.dat :Petroleo STR_CARGO_SINGULAR_LIVESTOCK :{G=np}Pecora -STR_CARGO_SINGULAR_LIVESTOCK.gen :{G=np}pecorum -STR_CARGO_SINGULAR_LIVESTOCK.acc :{G=np}Pecora -STR_CARGO_SINGULAR_LIVESTOCK.dat :{G=np}Pecoribus +STR_CARGO_SINGULAR_LIVESTOCK.gen :pecorum +STR_CARGO_SINGULAR_LIVESTOCK.acc :Pecora +STR_CARGO_SINGULAR_LIVESTOCK.dat :Pecoribus STR_CARGO_SINGULAR_GOODS :{G=fp}Merces -STR_CARGO_SINGULAR_GOODS.gen :{G=fp}mercium -STR_CARGO_SINGULAR_GOODS.acc :{G=fp}Merces -STR_CARGO_SINGULAR_GOODS.dat :{G=fp}Mercibus +STR_CARGO_SINGULAR_GOODS.gen :mercium +STR_CARGO_SINGULAR_GOODS.acc :Merces +STR_CARGO_SINGULAR_GOODS.dat :Mercibus STR_CARGO_SINGULAR_GRAIN :{G=n}Frumentum -STR_CARGO_SINGULAR_GRAIN.gen :{G=n}frumenti -STR_CARGO_SINGULAR_GRAIN.acc :{G=n}Frumentum -STR_CARGO_SINGULAR_GRAIN.dat :{G=n}Frumento +STR_CARGO_SINGULAR_GRAIN.gen :frumenti +STR_CARGO_SINGULAR_GRAIN.acc :Frumentum +STR_CARGO_SINGULAR_GRAIN.dat :Frumento STR_CARGO_SINGULAR_WOOD :{G=n}Lignum -STR_CARGO_SINGULAR_WOOD.gen :{G=n}ligni -STR_CARGO_SINGULAR_WOOD.acc :{G=n}Lignum -STR_CARGO_SINGULAR_WOOD.dat :{G=n}Ligno +STR_CARGO_SINGULAR_WOOD.gen :ligni +STR_CARGO_SINGULAR_WOOD.acc :Lignum +STR_CARGO_SINGULAR_WOOD.dat :Ligno STR_CARGO_SINGULAR_IRON_ORE :{G=n}Ferrum -STR_CARGO_SINGULAR_IRON_ORE.gen :{G=n}ferri -STR_CARGO_SINGULAR_IRON_ORE.acc :{G=n}Ferrum -STR_CARGO_SINGULAR_IRON_ORE.dat :{G=n}Ferro +STR_CARGO_SINGULAR_IRON_ORE.gen :ferri +STR_CARGO_SINGULAR_IRON_ORE.acc :Ferrum +STR_CARGO_SINGULAR_IRON_ORE.dat :Ferro STR_CARGO_SINGULAR_STEEL :{G=m}Chalybs -STR_CARGO_SINGULAR_STEEL.gen :{G=m}chalybis -STR_CARGO_SINGULAR_STEEL.acc :{G=m}Chalybem -STR_CARGO_SINGULAR_STEEL.dat :{G=m}Chalybi +STR_CARGO_SINGULAR_STEEL.gen :chalybis +STR_CARGO_SINGULAR_STEEL.acc :Chalybem +STR_CARGO_SINGULAR_STEEL.dat :Chalybi STR_CARGO_SINGULAR_VALUABLES :{G=fp}Res Pretiosa -STR_CARGO_SINGULAR_VALUABLES.gen :{G=fp}rerum pretiosarum -STR_CARGO_SINGULAR_VALUABLES.acc :{G=fp}Res Pretiosas -STR_CARGO_SINGULAR_VALUABLES.dat :{G=fp}Rebus Pretiosis +STR_CARGO_SINGULAR_VALUABLES.gen :rerum pretiosarum +STR_CARGO_SINGULAR_VALUABLES.acc :Res Pretiosas +STR_CARGO_SINGULAR_VALUABLES.dat :Rebus Pretiosis STR_CARGO_SINGULAR_COPPER_ORE :{G=n}Aes -STR_CARGO_SINGULAR_COPPER_ORE.gen :{G=n}aeris -STR_CARGO_SINGULAR_COPPER_ORE.acc :{G=n}Aes -STR_CARGO_SINGULAR_COPPER_ORE.dat :{G=n}Aeri +STR_CARGO_SINGULAR_COPPER_ORE.gen :aeris +STR_CARGO_SINGULAR_COPPER_ORE.acc :Aes +STR_CARGO_SINGULAR_COPPER_ORE.dat :Aeri STR_CARGO_SINGULAR_MAIZE :{G=n}Maizium -STR_CARGO_SINGULAR_MAIZE.gen :{G=n}maizii -STR_CARGO_SINGULAR_MAIZE.acc :{G=n}Maizium -STR_CARGO_SINGULAR_MAIZE.dat :{G=n}Maizio +STR_CARGO_SINGULAR_MAIZE.gen :maizii +STR_CARGO_SINGULAR_MAIZE.acc :Maizium +STR_CARGO_SINGULAR_MAIZE.dat :Maizio STR_CARGO_SINGULAR_FRUIT :{G=mp}Fructus -STR_CARGO_SINGULAR_FRUIT.gen :{G=mp}fructuum -STR_CARGO_SINGULAR_FRUIT.acc :{G=mp}Fructus -STR_CARGO_SINGULAR_FRUIT.dat :{G=mp}Fructibus +STR_CARGO_SINGULAR_FRUIT.gen :fructuum +STR_CARGO_SINGULAR_FRUIT.acc :Fructus +STR_CARGO_SINGULAR_FRUIT.dat :Fructibus STR_CARGO_SINGULAR_DIAMOND :{G=mp}Adamantes -STR_CARGO_SINGULAR_DIAMOND.gen :{G=mp}adamantum -STR_CARGO_SINGULAR_DIAMOND.acc :{G=mp}Adamantes -STR_CARGO_SINGULAR_DIAMOND.dat :{G=mp}Adamantibus +STR_CARGO_SINGULAR_DIAMOND.gen :adamantum +STR_CARGO_SINGULAR_DIAMOND.acc :Adamantes +STR_CARGO_SINGULAR_DIAMOND.dat :Adamantibus STR_CARGO_SINGULAR_FOOD :{G=m}Cibus -STR_CARGO_SINGULAR_FOOD.gen :{G=m}cibi -STR_CARGO_SINGULAR_FOOD.acc :{G=m}Cibum -STR_CARGO_SINGULAR_FOOD.dat :{G=m}Cibo +STR_CARGO_SINGULAR_FOOD.gen :cibi +STR_CARGO_SINGULAR_FOOD.acc :Cibum +STR_CARGO_SINGULAR_FOOD.dat :Cibo STR_CARGO_SINGULAR_PAPER :{G=f}Charta -STR_CARGO_SINGULAR_PAPER.gen :{G=f}chartae -STR_CARGO_SINGULAR_PAPER.acc :{G=f}Chartam -STR_CARGO_SINGULAR_PAPER.dat :{G=f}Chartae +STR_CARGO_SINGULAR_PAPER.gen :chartae +STR_CARGO_SINGULAR_PAPER.acc :Chartam +STR_CARGO_SINGULAR_PAPER.dat :Chartae STR_CARGO_SINGULAR_GOLD :{G=n}Aurum -STR_CARGO_SINGULAR_GOLD.gen :{G=n}auri -STR_CARGO_SINGULAR_GOLD.acc :{G=n}Aurum -STR_CARGO_SINGULAR_GOLD.dat :{G=n}Auro +STR_CARGO_SINGULAR_GOLD.gen :auri +STR_CARGO_SINGULAR_GOLD.acc :Aurum +STR_CARGO_SINGULAR_GOLD.dat :Auro STR_CARGO_SINGULAR_WATER :{G=f}Aqua -STR_CARGO_SINGULAR_WATER.gen :{G=f}aquae -STR_CARGO_SINGULAR_WATER.acc :{G=f}Aquam -STR_CARGO_SINGULAR_WATER.dat :{G=f}Aquae +STR_CARGO_SINGULAR_WATER.gen :aquae +STR_CARGO_SINGULAR_WATER.acc :Aquam +STR_CARGO_SINGULAR_WATER.dat :Aquae STR_CARGO_SINGULAR_WHEAT :{G=n}Triticum -STR_CARGO_SINGULAR_WHEAT.gen :{G=n}tritici -STR_CARGO_SINGULAR_WHEAT.acc :{G=n}Triticum -STR_CARGO_SINGULAR_WHEAT.dat :{G=n}Tritico +STR_CARGO_SINGULAR_WHEAT.gen :tritici +STR_CARGO_SINGULAR_WHEAT.acc :Triticum +STR_CARGO_SINGULAR_WHEAT.dat :Tritico STR_CARGO_SINGULAR_RUBBER :{G=f}Gummis -STR_CARGO_SINGULAR_RUBBER.gen :{G=f}gummis -STR_CARGO_SINGULAR_RUBBER.acc :{G=f}Gummem -STR_CARGO_SINGULAR_RUBBER.dat :{G=f}Gummi +STR_CARGO_SINGULAR_RUBBER.gen :gummis +STR_CARGO_SINGULAR_RUBBER.acc :Gummem +STR_CARGO_SINGULAR_RUBBER.dat :Gummi STR_CARGO_SINGULAR_SUGAR :{G=n}Saccharum -STR_CARGO_SINGULAR_SUGAR.gen :{G=n}sacchari -STR_CARGO_SINGULAR_SUGAR.acc :{G=n}Saccharum -STR_CARGO_SINGULAR_SUGAR.dat :{G=n}Saccharo +STR_CARGO_SINGULAR_SUGAR.gen :sacchari +STR_CARGO_SINGULAR_SUGAR.acc :Saccharum +STR_CARGO_SINGULAR_SUGAR.dat :Saccharo STR_CARGO_SINGULAR_TOY :{G=np}Ludicra -STR_CARGO_SINGULAR_TOY.gen :{G=np}ludicrorum -STR_CARGO_SINGULAR_TOY.acc :{G=np}Ludicra -STR_CARGO_SINGULAR_TOY.dat :{G=np}Ludicris +STR_CARGO_SINGULAR_TOY.gen :ludicrorum +STR_CARGO_SINGULAR_TOY.acc :Ludicra +STR_CARGO_SINGULAR_TOY.dat :Ludicris STR_CARGO_SINGULAR_CANDY :{G=np}Bellaria -STR_CARGO_SINGULAR_CANDY.gen :{G=np}bellariorum -STR_CARGO_SINGULAR_CANDY.acc :{G=np}Bellaria -STR_CARGO_SINGULAR_CANDY.dat :{G=np}Bellariis +STR_CARGO_SINGULAR_CANDY.gen :bellariorum +STR_CARGO_SINGULAR_CANDY.acc :Bellaria +STR_CARGO_SINGULAR_CANDY.dat :Bellariis STR_CARGO_SINGULAR_COLA :{G=f}Cola -STR_CARGO_SINGULAR_COLA.gen :{G=f}colae -STR_CARGO_SINGULAR_COLA.acc :{G=f}Colam -STR_CARGO_SINGULAR_COLA.dat :{G=f}Colae +STR_CARGO_SINGULAR_COLA.gen :colae +STR_CARGO_SINGULAR_COLA.acc :Colam +STR_CARGO_SINGULAR_COLA.dat :Colae STR_CARGO_SINGULAR_COTTON_CANDY :{G=n}Sacchari Xylinum -STR_CARGO_SINGULAR_COTTON_CANDY.gen :{G=n}sacchari xylini -STR_CARGO_SINGULAR_COTTON_CANDY.acc :{G=n}Sacchari Xylinum -STR_CARGO_SINGULAR_COTTON_CANDY.dat :{G=n}Sacchari Xylino +STR_CARGO_SINGULAR_COTTON_CANDY.gen :sacchari xylini +STR_CARGO_SINGULAR_COTTON_CANDY.acc :Sacchari Xylinum +STR_CARGO_SINGULAR_COTTON_CANDY.dat :Sacchari Xylino STR_CARGO_SINGULAR_BUBBLE :{G=fp}Bullae -STR_CARGO_SINGULAR_BUBBLE.gen :{G=fp}bullarum -STR_CARGO_SINGULAR_BUBBLE.acc :{G=fp}Bullas -STR_CARGO_SINGULAR_BUBBLE.dat :{G=fp}Bullis +STR_CARGO_SINGULAR_BUBBLE.gen :bullarum +STR_CARGO_SINGULAR_BUBBLE.acc :Bullas +STR_CARGO_SINGULAR_BUBBLE.dat :Bullis STR_CARGO_SINGULAR_TOFFEE :{G=n}Saccharum Tostum -STR_CARGO_SINGULAR_TOFFEE.gen :{G=n}sacchari tosti -STR_CARGO_SINGULAR_TOFFEE.acc :{G=n}Saccharum Tostum -STR_CARGO_SINGULAR_TOFFEE.dat :{G=n}Saccharo Tosto +STR_CARGO_SINGULAR_TOFFEE.gen :sacchari tosti +STR_CARGO_SINGULAR_TOFFEE.acc :Saccharum Tostum +STR_CARGO_SINGULAR_TOFFEE.dat :Saccharo Tosto STR_CARGO_SINGULAR_BATTERY :{G=fp}Pilae Electricae -STR_CARGO_SINGULAR_BATTERY.gen :{G=fp}pilarum electricarum -STR_CARGO_SINGULAR_BATTERY.acc :{G=fp}Pilas Electricas -STR_CARGO_SINGULAR_BATTERY.dat :{G=fp}Pilis Electricis +STR_CARGO_SINGULAR_BATTERY.gen :pilarum electricarum +STR_CARGO_SINGULAR_BATTERY.acc :Pilas Electricas +STR_CARGO_SINGULAR_BATTERY.dat :Pilis Electricis STR_CARGO_SINGULAR_PLASTIC :{G=f}Plastica -STR_CARGO_SINGULAR_PLASTIC.gen :{G=f}plasticae -STR_CARGO_SINGULAR_PLASTIC.acc :{G=f}Plasticam -STR_CARGO_SINGULAR_PLASTIC.dat :{G=f}Plasticae +STR_CARGO_SINGULAR_PLASTIC.gen :plasticae +STR_CARGO_SINGULAR_PLASTIC.acc :Plasticam +STR_CARGO_SINGULAR_PLASTIC.dat :Plasticae STR_CARGO_SINGULAR_FIZZY_DRINK :{G=fp}Potiones Carbonatae -STR_CARGO_SINGULAR_FIZZY_DRINK.gen :{G=fp}potionum carbonatarum -STR_CARGO_SINGULAR_FIZZY_DRINK.acc :{G=fp}Potiones Carbonatas -STR_CARGO_SINGULAR_FIZZY_DRINK.dat :{G=fp}Potionibus Carbonatis +STR_CARGO_SINGULAR_FIZZY_DRINK.gen :potionum carbonatarum +STR_CARGO_SINGULAR_FIZZY_DRINK.acc :Potiones Carbonatas +STR_CARGO_SINGULAR_FIZZY_DRINK.dat :Potionibus Carbonatis # Quantity of cargo STR_QUANTITY_NOTHING : @@ -2423,25 +2423,25 @@ STR_CONTENT_NO_ZLIB_SUB :{WHITE}... itaq # Order of these is important! STR_CONTENT_TYPE_BASE_GRAPHICS :{G=n}Fundamentum Graphicum -STR_CONTENT_TYPE_BASE_GRAPHICS.gen :{G=n}Fundamenti Graphici +STR_CONTENT_TYPE_BASE_GRAPHICS.gen :Fundamenti Graphici STR_CONTENT_TYPE_NEWGRF :{G=n}NewGRF -STR_CONTENT_TYPE_NEWGRF.gen :{G=n}NewGRF +STR_CONTENT_TYPE_NEWGRF.gen :NewGRF STR_CONTENT_TYPE_AI :{G=f}IA -STR_CONTENT_TYPE_AI.gen :{G=f}IA +STR_CONTENT_TYPE_AI.gen :IA STR_CONTENT_TYPE_AI_LIBRARY :{G=f}Bibliotheca IA -STR_CONTENT_TYPE_AI_LIBRARY.gen :{G=f}Bibliothecae IA +STR_CONTENT_TYPE_AI_LIBRARY.gen :Bibliothecae IA STR_CONTENT_TYPE_SCENARIO :{G=n}Scaenarium -STR_CONTENT_TYPE_SCENARIO.gen :{G=n}Scaenarii +STR_CONTENT_TYPE_SCENARIO.gen :Scaenarii STR_CONTENT_TYPE_HEIGHTMAP :{G=f}Tabula Altitudinum -STR_CONTENT_TYPE_HEIGHTMAP.gen :{G=f}Tabulae Altitudinum +STR_CONTENT_TYPE_HEIGHTMAP.gen :Tabulae Altitudinum STR_CONTENT_TYPE_BASE_SOUNDS :{G=n}Fundamentum Sonicum -STR_CONTENT_TYPE_BASE_SOUNDS.gen :{G=n}Fundamenti Sonici +STR_CONTENT_TYPE_BASE_SOUNDS.gen :Fundamenti Sonici STR_CONTENT_TYPE_BASE_MUSIC :{G=n}Fundamentum Musicum -STR_CONTENT_TYPE_BASE_MUSIC.gen :{G=n}Fundamenti Musici +STR_CONTENT_TYPE_BASE_MUSIC.gen :Fundamenti Musici STR_CONTENT_TYPE_GAME_SCRIPT :{G=n}Ludi Scriptum -STR_CONTENT_TYPE_GAME_SCRIPT.gen :{G=n}Ludi Scripti +STR_CONTENT_TYPE_GAME_SCRIPT.gen :Ludi Scripti STR_CONTENT_TYPE_GS_LIBRARY :{G=f}Bibliotheca Ludi Scriptorum -STR_CONTENT_TYPE_GS_LIBRARY.gen :{G=f}Bibliothecae Ludi Scriptorum +STR_CONTENT_TYPE_GS_LIBRARY.gen :Bibliothecae Ludi Scriptorum # Content downloading progress window STR_CONTENT_DOWNLOAD_TITLE :{WHITE}Res arcessens... @@ -2889,7 +2889,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terra societati STR_ABOUT_OPENTTD :{WHITE}De OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Privilegium impressorium originale {COPYRIGHT} MCMXCV Chris Sawyer, Omnia proprietatis iura reservantur STR_ABOUT_VERSION :{BLACK}OpenTTD editio {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} MMII-MMXV Manus OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} MMII-MMXVI Manus OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Servare Ludum @@ -3076,7 +3076,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Ire ad s STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Spiritum priorem STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Ire ad spiritum naturalem priorem et, termino contacto, ad ultimum revertere STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Imago spiritus electi. Directio neglegitur cum hic spiritus pingitur -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Movere spiritum mutatione X et Y incrementa +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Movere spiritum mutatione X et Y incrementa. Ctrl+Preme ut spiritus octoni incrementa moveatur STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Reponere relativas STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Reponere positiones relativas STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Positio X: {NUM}, Positio Y: {NUM} (Absolutae) @@ -3091,7 +3091,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Cautio: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Error: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Error Fatalis: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Error NewGRF fatalis: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Error NewGRF fatalis:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} non operat apud editionem TTDPatch ab OpenTTD dicta STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} spectat ad editionem {STRING} TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} spectat ad {STRING} @@ -4716,153 +4716,153 @@ STR_TOWN_BUILDING_NAME_PIGGY_BANK_1 :Argentaria Porc ##id 0x4800 # industry names STR_INDUSTRY_NAME_COAL_MINE :{G=f}Carbonifodina -STR_INDUSTRY_NAME_COAL_MINE.gen :{G=f}carbonifodinae -STR_INDUSTRY_NAME_COAL_MINE.acc :{G=f}Carbonifodinam -STR_INDUSTRY_NAME_COAL_MINE.abl :{G=f}Carbonifodina +STR_INDUSTRY_NAME_COAL_MINE.gen :carbonifodinae +STR_INDUSTRY_NAME_COAL_MINE.acc :Carbonifodinam +STR_INDUSTRY_NAME_COAL_MINE.abl :Carbonifodina STR_INDUSTRY_NAME_POWER_STATION :{G=f}Electrificina -STR_INDUSTRY_NAME_POWER_STATION.gen :{G=f}electrificinae -STR_INDUSTRY_NAME_POWER_STATION.acc :{G=f}Electrificinam -STR_INDUSTRY_NAME_POWER_STATION.abl :{G=f}Electrificina +STR_INDUSTRY_NAME_POWER_STATION.gen :electrificinae +STR_INDUSTRY_NAME_POWER_STATION.acc :Electrificinam +STR_INDUSTRY_NAME_POWER_STATION.abl :Electrificina STR_INDUSTRY_NAME_SAWMILL :{G=f}Serraria -STR_INDUSTRY_NAME_SAWMILL.gen :{G=f}serrariae -STR_INDUSTRY_NAME_SAWMILL.acc :{G=f}Serrariam -STR_INDUSTRY_NAME_SAWMILL.abl :{G=f}Serraria +STR_INDUSTRY_NAME_SAWMILL.gen :serrariae +STR_INDUSTRY_NAME_SAWMILL.acc :Serrariam +STR_INDUSTRY_NAME_SAWMILL.abl :Serraria STR_INDUSTRY_NAME_FOREST :{G=f}Silva -STR_INDUSTRY_NAME_FOREST.gen :{G=f}silvae -STR_INDUSTRY_NAME_FOREST.acc :{G=f}Silvam -STR_INDUSTRY_NAME_FOREST.abl :{G=f}Silva +STR_INDUSTRY_NAME_FOREST.gen :silvae +STR_INDUSTRY_NAME_FOREST.acc :Silvam +STR_INDUSTRY_NAME_FOREST.abl :Silva STR_INDUSTRY_NAME_OIL_REFINERY :{G=n}Ergasterium Petrolearium -STR_INDUSTRY_NAME_OIL_REFINERY.gen :{G=n}ergasterii petrolearii -STR_INDUSTRY_NAME_OIL_REFINERY.acc :{G=n}Ergasterium Petrolearium -STR_INDUSTRY_NAME_OIL_REFINERY.abl :{G=n}Ergasterio Petroleario +STR_INDUSTRY_NAME_OIL_REFINERY.gen :ergasterii petrolearii +STR_INDUSTRY_NAME_OIL_REFINERY.acc :Ergasterium Petrolearium +STR_INDUSTRY_NAME_OIL_REFINERY.abl :Ergasterio Petroleario STR_INDUSTRY_NAME_OIL_RIG :{G=m}Suggestus Petrolearius -STR_INDUSTRY_NAME_OIL_RIG.gen :{G=m}suggestus petrolearii -STR_INDUSTRY_NAME_OIL_RIG.acc :{G=m}Suggestum Petrolearium -STR_INDUSTRY_NAME_OIL_RIG.abl :{G=m}Suggestu Petroleario +STR_INDUSTRY_NAME_OIL_RIG.gen :suggestus petrolearii +STR_INDUSTRY_NAME_OIL_RIG.acc :Suggestum Petrolearium +STR_INDUSTRY_NAME_OIL_RIG.abl :Suggestu Petroleario STR_INDUSTRY_NAME_FACTORY :{G=f}Fabrica -STR_INDUSTRY_NAME_FACTORY.gen :{G=f}fabricae -STR_INDUSTRY_NAME_FACTORY.acc :{G=f}Fabricam -STR_INDUSTRY_NAME_FACTORY.abl :{G=f}Fabrica +STR_INDUSTRY_NAME_FACTORY.gen :fabricae +STR_INDUSTRY_NAME_FACTORY.acc :Fabricam +STR_INDUSTRY_NAME_FACTORY.abl :Fabrica STR_INDUSTRY_NAME_PRINTING_WORKS :{G=n}Impressorium -STR_INDUSTRY_NAME_PRINTING_WORKS.gen :{G=n}impressorii -STR_INDUSTRY_NAME_PRINTING_WORKS.acc :{G=n}Impressorium -STR_INDUSTRY_NAME_PRINTING_WORKS.abl :{G=n}Impressorio +STR_INDUSTRY_NAME_PRINTING_WORKS.gen :impressorii +STR_INDUSTRY_NAME_PRINTING_WORKS.acc :Impressorium +STR_INDUSTRY_NAME_PRINTING_WORKS.abl :Impressorio STR_INDUSTRY_NAME_STEEL_MILL :{G=f}Fabrica Chalybeia -STR_INDUSTRY_NAME_STEEL_MILL.gen :{G=f}fabricae chalybeiae -STR_INDUSTRY_NAME_STEEL_MILL.acc :{G=f}Fabricam Chalybeiam -STR_INDUSTRY_NAME_STEEL_MILL.abl :{G=f}Fabrica Chalybeia +STR_INDUSTRY_NAME_STEEL_MILL.gen :fabricae chalybeiae +STR_INDUSTRY_NAME_STEEL_MILL.acc :Fabricam Chalybeiam +STR_INDUSTRY_NAME_STEEL_MILL.abl :Fabrica Chalybeia STR_INDUSTRY_NAME_FARM :{G=m}Fundus -STR_INDUSTRY_NAME_FARM.gen :{G=m}fundi -STR_INDUSTRY_NAME_FARM.acc :{G=m}Fundum -STR_INDUSTRY_NAME_FARM.abl :{G=m}Fundo +STR_INDUSTRY_NAME_FARM.gen :fundi +STR_INDUSTRY_NAME_FARM.acc :Fundum +STR_INDUSTRY_NAME_FARM.abl :Fundo STR_INDUSTRY_NAME_COPPER_ORE_MINE :{G=f}Aerifodina -STR_INDUSTRY_NAME_COPPER_ORE_MINE.gen :{G=f}aerifodinae -STR_INDUSTRY_NAME_COPPER_ORE_MINE.acc :{G=f}Aerifodinam -STR_INDUSTRY_NAME_COPPER_ORE_MINE.abl :{G=f}Aerifodina +STR_INDUSTRY_NAME_COPPER_ORE_MINE.gen :aerifodinae +STR_INDUSTRY_NAME_COPPER_ORE_MINE.acc :Aerifodinam +STR_INDUSTRY_NAME_COPPER_ORE_MINE.abl :Aerifodina STR_INDUSTRY_NAME_OIL_WELLS :{G=mp}Putei Petrolearii -STR_INDUSTRY_NAME_OIL_WELLS.gen :{G=mp}puteorum petroleariorum -STR_INDUSTRY_NAME_OIL_WELLS.acc :{G=mp}Puteos Petrolearios -STR_INDUSTRY_NAME_OIL_WELLS.abl :{G=mp}Puteis Petroleariis +STR_INDUSTRY_NAME_OIL_WELLS.gen :puteorum petroleariorum +STR_INDUSTRY_NAME_OIL_WELLS.acc :Puteos Petrolearios +STR_INDUSTRY_NAME_OIL_WELLS.abl :Puteis Petroleariis STR_INDUSTRY_NAME_BANK :{G=f}Argentaria -STR_INDUSTRY_NAME_BANK.gen :{G=f}argentariae -STR_INDUSTRY_NAME_BANK.acc :{G=f}Argentariam -STR_INDUSTRY_NAME_BANK.abl :{G=f}Argentaria +STR_INDUSTRY_NAME_BANK.gen :argentariae +STR_INDUSTRY_NAME_BANK.acc :Argentariam +STR_INDUSTRY_NAME_BANK.abl :Argentaria STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT :{G=f}Fabrica Cibaria -STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.gen :{G=f}fabricae cibariae -STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.acc :{G=f}Fabricam Cibariam -STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.abl :{G=f}Fabrica Cibaria +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.gen :fabricae cibariae +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.acc :Fabricam Cibariam +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.abl :Fabrica Cibaria STR_INDUSTRY_NAME_PAPER_MILL :{G=f}Fabrica Chartaria -STR_INDUSTRY_NAME_PAPER_MILL.gen :{G=f}fabricae chartariae -STR_INDUSTRY_NAME_PAPER_MILL.acc :{G=f}Fabricam Chartariam -STR_INDUSTRY_NAME_PAPER_MILL.abl :{G=f}Fabrica Chartaria +STR_INDUSTRY_NAME_PAPER_MILL.gen :fabricae chartariae +STR_INDUSTRY_NAME_PAPER_MILL.acc :Fabricam Chartariam +STR_INDUSTRY_NAME_PAPER_MILL.abl :Fabrica Chartaria STR_INDUSTRY_NAME_GOLD_MINE :{G=f}Aurifodina -STR_INDUSTRY_NAME_GOLD_MINE.gen :{G=f}aurifodinae -STR_INDUSTRY_NAME_GOLD_MINE.acc :{G=f}Aurifodinam -STR_INDUSTRY_NAME_GOLD_MINE.abl :{G=f}Aurifodina +STR_INDUSTRY_NAME_GOLD_MINE.gen :aurifodinae +STR_INDUSTRY_NAME_GOLD_MINE.acc :Aurifodinam +STR_INDUSTRY_NAME_GOLD_MINE.abl :Aurifodina STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC :{G=f}Argentaria -STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.gen :{G=f}argentariae -STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.acc :{G=f}Argentariam -STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.abl :{G=f}Argentaria +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.gen :argentariae +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.acc :Argentariam +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.abl :Argentaria STR_INDUSTRY_NAME_DIAMOND_MINE :{G=f}Adamantifodina -STR_INDUSTRY_NAME_DIAMOND_MINE.gen :{G=f}adamantifodinae -STR_INDUSTRY_NAME_DIAMOND_MINE.acc :{G=f}Adamantifodinam -STR_INDUSTRY_NAME_DIAMOND_MINE.abl :{G=f}Adamantifodina +STR_INDUSTRY_NAME_DIAMOND_MINE.gen :adamantifodinae +STR_INDUSTRY_NAME_DIAMOND_MINE.acc :Adamantifodinam +STR_INDUSTRY_NAME_DIAMOND_MINE.abl :Adamantifodina STR_INDUSTRY_NAME_IRON_ORE_MINE :{G=f}Ferrifodina -STR_INDUSTRY_NAME_IRON_ORE_MINE.gen :{G=f}ferrifodinae -STR_INDUSTRY_NAME_IRON_ORE_MINE.acc :{G=f}Ferrifodinam -STR_INDUSTRY_NAME_IRON_ORE_MINE.abl :{G=f}Ferrifodina +STR_INDUSTRY_NAME_IRON_ORE_MINE.gen :ferrifodinae +STR_INDUSTRY_NAME_IRON_ORE_MINE.acc :Ferrifodinam +STR_INDUSTRY_NAME_IRON_ORE_MINE.abl :Ferrifodina STR_INDUSTRY_NAME_FRUIT_PLANTATION :{G=n}Arbustum Fructuarium -STR_INDUSTRY_NAME_FRUIT_PLANTATION.gen :{G=n}arbusti fructuarii -STR_INDUSTRY_NAME_FRUIT_PLANTATION.acc :{G=n}Arbustum Fructuarium -STR_INDUSTRY_NAME_FRUIT_PLANTATION.abl :{G=n}Arbusto Fructuario +STR_INDUSTRY_NAME_FRUIT_PLANTATION.gen :arbusti fructuarii +STR_INDUSTRY_NAME_FRUIT_PLANTATION.acc :Arbustum Fructuarium +STR_INDUSTRY_NAME_FRUIT_PLANTATION.abl :Arbusto Fructuario STR_INDUSTRY_NAME_RUBBER_PLANTATION :{G=n}Arbustum Gummosum -STR_INDUSTRY_NAME_RUBBER_PLANTATION.gen :{G=n}arbusti gummosi -STR_INDUSTRY_NAME_RUBBER_PLANTATION.acc :{G=n}Arbustum Gummosum -STR_INDUSTRY_NAME_RUBBER_PLANTATION.abl :{G=n}Arbusto Gummoso +STR_INDUSTRY_NAME_RUBBER_PLANTATION.gen :arbusti gummosi +STR_INDUSTRY_NAME_RUBBER_PLANTATION.acc :Arbustum Gummosum +STR_INDUSTRY_NAME_RUBBER_PLANTATION.abl :Arbusto Gummoso STR_INDUSTRY_NAME_WATER_SUPPLY :{G=m}Fons Aquae -STR_INDUSTRY_NAME_WATER_SUPPLY.gen :{G=m}fontis aquae -STR_INDUSTRY_NAME_WATER_SUPPLY.acc :{G=m}Fontem Aquae -STR_INDUSTRY_NAME_WATER_SUPPLY.abl :{G=m}Fonte Aquae +STR_INDUSTRY_NAME_WATER_SUPPLY.gen :fontis aquae +STR_INDUSTRY_NAME_WATER_SUPPLY.acc :Fontem Aquae +STR_INDUSTRY_NAME_WATER_SUPPLY.abl :Fonte Aquae STR_INDUSTRY_NAME_WATER_TOWER :{G=f}Turris Aquaria -STR_INDUSTRY_NAME_WATER_TOWER.gen :{G=f}turris aquariae -STR_INDUSTRY_NAME_WATER_TOWER.acc :{G=f}Turrim Aquariam -STR_INDUSTRY_NAME_WATER_TOWER.abl :{G=f}Turri Aquaria +STR_INDUSTRY_NAME_WATER_TOWER.gen :turris aquariae +STR_INDUSTRY_NAME_WATER_TOWER.acc :Turrim Aquariam +STR_INDUSTRY_NAME_WATER_TOWER.abl :Turri Aquaria STR_INDUSTRY_NAME_FACTORY_2 :{G=f}Fabrica -STR_INDUSTRY_NAME_FACTORY_2.gen :{G=f}fabricae -STR_INDUSTRY_NAME_FACTORY_2.acc :{G=f}Fabricam -STR_INDUSTRY_NAME_FACTORY_2.abl :{G=f}Fabrica +STR_INDUSTRY_NAME_FACTORY_2.gen :fabricae +STR_INDUSTRY_NAME_FACTORY_2.acc :Fabricam +STR_INDUSTRY_NAME_FACTORY_2.abl :Fabrica STR_INDUSTRY_NAME_FARM_2 :{G=m}Fundus -STR_INDUSTRY_NAME_FARM_2.gen :{G=m}fundi -STR_INDUSTRY_NAME_FARM_2.acc :{G=m}Fundum -STR_INDUSTRY_NAME_FARM_2.abl :{G=m}Fundo +STR_INDUSTRY_NAME_FARM_2.gen :fundi +STR_INDUSTRY_NAME_FARM_2.acc :Fundum +STR_INDUSTRY_NAME_FARM_2.abl :Fundo STR_INDUSTRY_NAME_LUMBER_MILL :{G=np}Castra Lignatorum -STR_INDUSTRY_NAME_LUMBER_MILL.gen :{G=np}castrorum lignatorum -STR_INDUSTRY_NAME_LUMBER_MILL.acc :{G=np}Castra Lignatorum -STR_INDUSTRY_NAME_LUMBER_MILL.abl :{G=np}Castris Lignatorum +STR_INDUSTRY_NAME_LUMBER_MILL.gen :castrorum lignatorum +STR_INDUSTRY_NAME_LUMBER_MILL.acc :Castra Lignatorum +STR_INDUSTRY_NAME_LUMBER_MILL.abl :Castris Lignatorum STR_INDUSTRY_NAME_COTTON_CANDY_FOREST :{G=f}Silva Saccari Xylini -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.gen :{G=f}silvae saccari xylini -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.acc :{G=f}Silvam Saccari Xylini -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.abl :{G=f}Silva Saccari Xylini +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.gen :silvae saccari xylini +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.acc :Silvam Saccari Xylini +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.abl :Silva Saccari Xylini STR_INDUSTRY_NAME_CANDY_FACTORY :{G=f}Fabrica Bellarica -STR_INDUSTRY_NAME_CANDY_FACTORY.gen :{G=f}fabricae bellaricae -STR_INDUSTRY_NAME_CANDY_FACTORY.acc :{G=f}Fabricam Bellaricam -STR_INDUSTRY_NAME_CANDY_FACTORY.abl :{G=f}Fabrica Bellarica +STR_INDUSTRY_NAME_CANDY_FACTORY.gen :fabricae bellaricae +STR_INDUSTRY_NAME_CANDY_FACTORY.acc :Fabricam Bellaricam +STR_INDUSTRY_NAME_CANDY_FACTORY.abl :Fabrica Bellarica STR_INDUSTRY_NAME_BATTERY_FARM :{G=m}Fundus Pilarum Electricarum -STR_INDUSTRY_NAME_BATTERY_FARM.gen :{G=m}fundi pilarum electricarum -STR_INDUSTRY_NAME_BATTERY_FARM.acc :{G=m}Fundum Pilarum Electricarum -STR_INDUSTRY_NAME_BATTERY_FARM.abl :{G=m}Fundo Pilarum Electricarum +STR_INDUSTRY_NAME_BATTERY_FARM.gen :fundi pilarum electricarum +STR_INDUSTRY_NAME_BATTERY_FARM.acc :Fundum Pilarum Electricarum +STR_INDUSTRY_NAME_BATTERY_FARM.abl :Fundo Pilarum Electricarum STR_INDUSTRY_NAME_COLA_WELLS :{G=mp}Putei Colae -STR_INDUSTRY_NAME_COLA_WELLS.gen :{G=mp}puteorum colae -STR_INDUSTRY_NAME_COLA_WELLS.acc :{G=mp}Puteos Colae -STR_INDUSTRY_NAME_COLA_WELLS.abl :{G=mp}Puteis Colae +STR_INDUSTRY_NAME_COLA_WELLS.gen :puteorum colae +STR_INDUSTRY_NAME_COLA_WELLS.acc :Puteos Colae +STR_INDUSTRY_NAME_COLA_WELLS.abl :Puteis Colae STR_INDUSTRY_NAME_TOY_SHOP :{G=f}Taberna Ludicrorum -STR_INDUSTRY_NAME_TOY_SHOP.gen :{G=f}tabernae ludicrorum -STR_INDUSTRY_NAME_TOY_SHOP.acc :{G=f}Tabernam Ludicrorum -STR_INDUSTRY_NAME_TOY_SHOP.abl :{G=f}Taberna Ludicrorum +STR_INDUSTRY_NAME_TOY_SHOP.gen :tabernae ludicrorum +STR_INDUSTRY_NAME_TOY_SHOP.acc :Tabernam Ludicrorum +STR_INDUSTRY_NAME_TOY_SHOP.abl :Taberna Ludicrorum STR_INDUSTRY_NAME_TOY_FACTORY :{G=f}Fabrica Ludicrorum -STR_INDUSTRY_NAME_TOY_FACTORY.gen :{G=f}fabricae ludicrorum -STR_INDUSTRY_NAME_TOY_FACTORY.acc :{G=f}Fabricam Ludicrorum -STR_INDUSTRY_NAME_TOY_FACTORY.abl :{G=f}Fabrica Ludicrorum +STR_INDUSTRY_NAME_TOY_FACTORY.gen :fabricae ludicrorum +STR_INDUSTRY_NAME_TOY_FACTORY.acc :Fabricam Ludicrorum +STR_INDUSTRY_NAME_TOY_FACTORY.abl :Fabrica Ludicrorum STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS :{G=mp}Fontes Plasticae -STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.gen :{G=mp}fontium plasticae -STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.acc :{G=mp}Fontes Plasticae -STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.abl :{G=mp}Fontibus Plasticae +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.gen :fontium plasticae +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.acc :Fontes Plasticae +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.abl :Fontibus Plasticae STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY :{G=f}Fabrica Potionum Carbonatarum -STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.gen :{G=f}fabricae potionum carbonatarum -STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.acc :{G=f}Fabricam Potionum Carbonatarum -STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.abl :{G=f}Fabrica Potionum Carbonatarum +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.gen :fabricae potionum carbonatarum +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.acc :Fabricam Potionum Carbonatarum +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.abl :Fabrica Potionum Carbonatarum STR_INDUSTRY_NAME_BUBBLE_GENERATOR :{G=n}Generatrum Bullarum -STR_INDUSTRY_NAME_BUBBLE_GENERATOR.gen :{G=n}generatri bullarum -STR_INDUSTRY_NAME_BUBBLE_GENERATOR.acc :{G=n}Generatrum Bullarum -STR_INDUSTRY_NAME_BUBBLE_GENERATOR.abl :{G=n}Generatro Bullarum +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.gen :generatri bullarum +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.acc :Generatrum Bullarum +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.abl :Generatro Bullarum STR_INDUSTRY_NAME_TOFFEE_QUARRY :{G=fp}Lapicidinae Sacchari Tosti -STR_INDUSTRY_NAME_TOFFEE_QUARRY.gen :{G=fp}lapicidinarum sacchari tosti -STR_INDUSTRY_NAME_TOFFEE_QUARRY.acc :{G=fp}Lapicidinas Sacchari Tosti -STR_INDUSTRY_NAME_TOFFEE_QUARRY.abl :{G=fp}Lapicidinis Sacchari Tosti +STR_INDUSTRY_NAME_TOFFEE_QUARRY.gen :lapicidinarum sacchari tosti +STR_INDUSTRY_NAME_TOFFEE_QUARRY.acc :Lapicidinas Sacchari Tosti +STR_INDUSTRY_NAME_TOFFEE_QUARRY.abl :Lapicidinis Sacchari Tosti STR_INDUSTRY_NAME_SUGAR_MINE :{G=f}Saccharifodina -STR_INDUSTRY_NAME_SUGAR_MINE.gen :{G=f}saccharifodinae -STR_INDUSTRY_NAME_SUGAR_MINE.acc :{G=f}Saccharifodinam -STR_INDUSTRY_NAME_SUGAR_MINE.abl :{G=f}Saccharifodina +STR_INDUSTRY_NAME_SUGAR_MINE.gen :saccharifodinae +STR_INDUSTRY_NAME_SUGAR_MINE.acc :Saccharifodinam +STR_INDUSTRY_NAME_SUGAR_MINE.abl :Saccharifodina ############ WARNING, using range 0x6000 for strings that are stored in the savegame ############ These strings may never get a new id, or savegames will break! diff --git a/src/lang/latvian.txt b/src/lang/latvian.txt index a88cd4dd8d..def1dc5047 100644 --- a/src/lang/latvian.txt +++ b/src/lang/latvian.txt @@ -12,7 +12,7 @@ ##case kas -# $Id: latvian.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: latvian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2508,7 +2508,7 @@ STR_LAND_AREA_INFORMATION_OWNER :{BLACK}Īpašni STR_LAND_AREA_INFORMATION_ROAD_OWNER :{BLACK}Ceļa īpašnieks: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Tramvaju ceļa īpašnieks: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_RAIL_OWNER :{BLACK}Dzelzceļa īpašnieks: {LTBLUE}{STRING} -STR_LAND_AREA_INFORMATION_RAIL_OWNER.kas :{G=f}{BLACK}Dzelzceļa īpašniece: {LTBLUE}{STRING} +STR_LAND_AREA_INFORMATION_RAIL_OWNER.kas :{BLACK}Dzelzceļa īpašniece: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY :{BLACK}Pašvaldība: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY_NONE :Neviena STR_LAND_AREA_INFORMATION_LANDINFO_COORDS :{BLACK}Koordinātes: {LTBLUE}{NUM} x {NUM} x {NUM} ({STRING}) @@ -2619,7 +2619,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Uzņēmumam pie STR_ABOUT_OPENTTD :{WHITE}Par OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Oriģināla autortiesības {COPYRIGHT} 1995 Kriss Sojers. Visas tiesības paturētas STR_ABOUT_VERSION :{BLACK}OpenTTD versija {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD darba grupa +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 OpenTTD darba grupa # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Saglabāt spēli @@ -2811,15 +2811,15 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Brīdinājums: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Kļūda: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatāls: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Notikusi fatāla NewGRF kļūda: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Notikusi fatāla NewGRF kļūda:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} nedarbosies kopā ar TTDPatch versiju (par ko ziņoja OpenTTD). STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} ir TTD {STRING} versijai STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} ir paredzēts lietošanai kopā ar {STRING} STR_NEWGRF_ERROR_INVALID_PARAMETER :Nepareizs parametrs priekš {1:STRING}: parametrs {STRING} ({NUM}) STR_NEWGRF_ERROR_LOAD_BEFORE :{1:STRING} jābūt ielādētam pirms {STRING}. -STR_NEWGRF_ERROR_LOAD_BEFORE.kas :{G=f}{1:STRING} jābūt ielādētai pirms {STRING}. +STR_NEWGRF_ERROR_LOAD_BEFORE.kas :{1:STRING} jābūt ielādētai pirms {STRING}. STR_NEWGRF_ERROR_LOAD_AFTER :{1:STRING} jābūt ielādētam pēc {STRING}. -STR_NEWGRF_ERROR_LOAD_AFTER.kas :{G=f}{1:STRING} jābūt ielādētai pēc {STRING}. +STR_NEWGRF_ERROR_LOAD_AFTER.kas :{1:STRING} jābūt ielādētai pēc {STRING}. STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING} ir vajadzīga Open TTD versija {STRING} vai labāka STR_NEWGRF_ERROR_AFTER_TRANSLATED_FILE :GRF fails radīts tulkošanai STR_NEWGRF_ERROR_TOO_MANY_NEWGRFS_LOADED :Ir ielādēti pārāk daudzi NewGRF @@ -2896,7 +2896,7 @@ STR_EDIT_SIGN_SIGN_OSKTITLE :{BLACK}Ievadīt # Town directory window STR_TOWN_DIRECTORY_CAPTION :{WHITE}Pilsētas STR_TOWN_DIRECTORY_NONE :{G=m}{ORANGE}- Neviens - -STR_TOWN_DIRECTORY_NONE.kas :{G=f}{ORANGE}- Neviena - +STR_TOWN_DIRECTORY_NONE.kas :{ORANGE}- Neviena - STR_TOWN_DIRECTORY_TOWN :{ORANGE}{TOWN}{BLACK} ({COMMA}) STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Pilsētu nosaukumi - klikšķināt uz nosaukuma, lai centrētu skatu uz to. Ctrl+klikšķis atvērs jaunu skatu lauku uz pilsētu STR_TOWN_POPULATION :{BLACK}Pasaules iedzīvotāju skaits: {COMMA} @@ -2984,9 +2984,9 @@ STR_GOAL_QUESTION_BUTTON_ACCEPT :Pieņemt STR_GOAL_QUESTION_BUTTON_IGNORE :Neievērot STR_GOAL_QUESTION_BUTTON_RETRY :Mēģināt vēl STR_GOAL_QUESTION_BUTTON_PREVIOUS :Iepriekšējais -STR_GOAL_QUESTION_BUTTON_PREVIOUS.kas :{G=f}Iepriekšējā +STR_GOAL_QUESTION_BUTTON_PREVIOUS.kas :Iepriekšējā STR_GOAL_QUESTION_BUTTON_NEXT :Nākamais -STR_GOAL_QUESTION_BUTTON_NEXT.kas :{G=f}Nākamā +STR_GOAL_QUESTION_BUTTON_NEXT.kas :Nākamā STR_GOAL_QUESTION_BUTTON_STOP :Apturēt STR_GOAL_QUESTION_BUTTON_START :Sākt STR_GOAL_QUESTION_BUTTON_GO :Doties @@ -3198,7 +3198,7 @@ STR_COMPANY_INFRASTRUCTURE_VIEW_TOTAL :{WHITE}{CURRENC # Industry directory STR_INDUSTRY_DIRECTORY_CAPTION :{WHITE}Ražotnes STR_INDUSTRY_DIRECTORY_NONE :{G=m}{ORANGE}- Neviens - -STR_INDUSTRY_DIRECTORY_NONE.kas :{G=f}{ORANGE}- Neviena - +STR_INDUSTRY_DIRECTORY_NONE.kas :{ORANGE}- Neviena - STR_INDUSTRY_DIRECTORY_ITEM :{ORANGE}{INDUSTRY}{BLACK} ({CARGO_LONG}{STRING}){YELLOW} ({COMMA}% pārvadāts) STR_INDUSTRY_DIRECTORY_ITEM_TWO :{ORANGE}{INDUSTRY}{BLACK} ({CARGO_LONG}{STRING}/{CARGO_LONG}{STRING}){YELLOW} ({COMMA}%/{COMMA}% pārvadāts) STR_INDUSTRY_DIRECTORY_ITEM_NOPROD :{ORANGE}{INDUSTRY} @@ -4082,7 +4082,7 @@ STR_ERROR_TOO_MANY_TOWNS :{WHITE}... pār STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... uz kartes nav vairāk vietas STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Pilsēta ceļus nebūvēs. Jūs varat ieslēgt ceļu būvi caur Papildu iestatījumi->Ekonomika->Pilsētas STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Notiek ceļa remonts -STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Šo pilsētu nevar dzēst... {}Kāda stacija vai depo attiecas uz pilsētu. Vai pilsētai pieder nenoņemams lauciņš +STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Šo pilsētu nevar dzēst...{}Kāda stacija vai depo attiecas uz pilsētu. Vai pilsētai pieder nenoņemams lauciņš STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... šās pilsētas centrā statujai nav piemērotas vietas # Industry related errors diff --git a/src/lang/lithuanian.txt b/src/lang/lithuanian.txt index a04582f3fb..ca74be468e 100644 --- a/src/lang/lithuanian.txt +++ b/src/lang/lithuanian.txt @@ -12,7 +12,7 @@ ##case kas ko kam ka kuo kur kreip -# $Id: lithuanian.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: lithuanian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -994,7 +994,7 @@ STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLAC STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLACK}Traukinio avarija!{}{COMMA} žmon{P us ės ių} žuvo liepsnose po traukinių susidūrimo STR_NEWS_ROAD_VEHICLE_CRASH_DRIVER :{BIG_FONT}{BLACK}Automobilio avarija!{}Automobilio vairuotojas žuvo po susidūrimo su traukiniu -STR_NEWS_ROAD_VEHICLE_CRASH :{BIG_FONT}{BLACK}Automobilio avarija! {}Žuvo {COMMA} keleiv{P is iai ių} automobiliui susidūrus su traukiniu +STR_NEWS_ROAD_VEHICLE_CRASH :{BIG_FONT}{BLACK}Automobilio avarija!{}Žuvo {COMMA} keleiv{P is iai ių} automobiliui susidūrus su traukiniu STR_NEWS_AIRCRAFT_CRASH :{BIG_FONT}{BLACK}Lėktuvo avarija!{}Prie {1:STATION} liepsnose žuvo {0:COMMA} keleiv{P is iai ių} STR_NEWS_PLANE_CRASH_OUT_OF_FUEL :{BIG_FONT}{BLACK}Lėktuvo avarija!{}Lėktuvas pritrūko degalų, {COMMA} nukrito ant žemės! @@ -1291,7 +1291,7 @@ STR_CITY_APPROVAL_PERMISSIVE :Atlaidus STR_CITY_APPROVAL_TOLERANT :Tolerantiškas STR_CITY_APPROVAL_HOSTILE :Priešiškas -STR_WARNING_NO_SUITABLE_AI :{WHITE}Nerasta tinkamų DI... {}Galite parsisiųsti keletą DI naudonat 'Turinio internete' sistemą +STR_WARNING_NO_SUITABLE_AI :{WHITE}Nerasta tinkamų DI...{}Galite parsisiųsti keletą DI naudonat 'Turinio internete' sistemą # Settings tree window STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Išplėstinės nuostatos @@ -1815,21 +1815,21 @@ STR_CONFIG_SETTING_LINKGRAPH_TIME :Pasiskirstymo g STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Laiko trukmė skirta pilnam krovinių paskirstymo grafui perskaičiuoti. Nustačius per mažą reikšmę, žaidimas gali trumpam pakibti, kol bus baigti skaičiavimai. Kita vertus, kuo ilgesnė ši trukmė, tuo vėliau į grafą bus įtraukti maršrutų pakeitimai. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :originalus STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asimetriškas -STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC.kas :{G=vyr}asimetriškas -STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC.ko :{G=vyr}asimetriško -STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC.kam :{G=vyr}asimetriškam -STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC.ka :{G=vyr}asimetišką -STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC.kuo :{G=vyr}asimetrišku -STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC.kur :{G=vyr}asimetriškame -STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC.kreip :{G=vyr}asimetriškas +STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC.kas :asimetriškas +STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC.ko :asimetriško +STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC.kam :asimetriškam +STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC.ka :asimetišką +STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC.kuo :asimetrišku +STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC.kur :asimetriškame +STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC.kreip :asimetriškas STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :simetriškas -STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC.kas :{G=vyr}simetriškas -STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC.ko :{G=vyr}simetriško -STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC.kam :{G=vyr}simetriškam -STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC.ka :{G=vyr}simetrišką -STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC.kuo :{G=vyr}simetrišku -STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC.kur :{G=vyr}simetriškame -STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC.kreip :{G=vyr}simetriškas +STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC.kas :simetriškas +STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC.ko :simetriško +STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC.kam :simetriškam +STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC.ka :simetrišką +STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC.kuo :simetrišku +STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC.kur :simetriškame +STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC.kreip :simetriškas STR_CONFIG_SETTING_DISTRIBUTION_PAX :Keleivių paskirstymas: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :„Simetriškas“ reiškia, jog iš stoties A į stotį B keliaus apytiksliai toks pat keleivių srautas, kaip ir iš B į A. „Asimetriško“ režimo atveju, srautai pirmyn ir atgal gali skirtis. „Originalus“ reiškia, kad srautai nebus reguliuojami ir veiks kaip ir originaliame TTD žaidime. STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Pasiskirstymo režimas paštui: {STRING} @@ -2426,7 +2426,7 @@ STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Pažymė STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Ieškoti išorinėse svetainėse STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Ieškoti turinio neoficialiose OpenTTd svetainėse STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Paliekate OpenTTD programą! -STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Turinio parsisiuntimo sąlygos įvairiose išorinėse svetainėse skiriasi.{}Norėdami įdiegti turinį, turėsite sekti nurodymus, pateikiamus tose svetainėse. {}Ar tęsti? +STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Turinio parsisiuntimo sąlygos įvairiose išorinėse svetainėse skiriasi.{}Norėdami įdiegti turinį, turėsite sekti nurodymus, pateikiamus tose svetainėse.{}Ar tęsti? STR_CONTENT_FILTER_TITLE :{BLACK}Žymės/pavadinimo filtravimas: STR_CONTENT_OPEN_URL :{BLACK}Aplankyti svetainę STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Aplankyti šio turinio svetainę @@ -2906,7 +2906,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Kompanijos žem STR_ABOUT_OPENTTD :{WHITE}Apie OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Pradinės versijos teisės priklauso {COPYRIGHT} 1995 Chris Sawyer, Visos teisės saugomos STR_ABOUT_VERSION :{BLACK}OpenTTD versija {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 OpenTTD komanda +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 OpenTTD komanda # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Išsaugoti žaidimą @@ -3093,7 +3093,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Įkelti STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Ankstesnis spruklys STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Įkelti ankstesnį spruklį STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Pasirinkto spruklio atvaizdas, nekreipiant dėmesio į lygiavimą -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Paslinkti spruklį, keičiant X ir Y poslinkius +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Paslinkti spruklį, keičiant X ir Y poslinkius. Spragtelėjus laikant nuspaustą Ctrl klavišą, spruklys bus slenkamas po aštuonis vienetus STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Atkurti STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Atkurti numatytuosius santykinius poslinkius STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X poslinkis: {NUM}, Y poslinkis: {NUM} (Absoliutus) @@ -3108,7 +3108,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Įspėjimas: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Klaida: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Lemtingoji klaida: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Įvyko lemtingoji plėtinio klaida: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Įvyko lemtingoji plėtinio klaida:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} neveiks su TTDPatch versija nurodyta pagal OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} skirtas {STRING} TTD versijai. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} yra pritaikytas naudojimui su {STRING} @@ -3126,7 +3126,7 @@ STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING STR_NEWGRF_ERROR_MULTIPLE_ACTION_8 :Susideda iš keleto veiksmo 8 įrašų (spruklys {3:NUM}) STR_NEWGRF_ERROR_READ_BOUNDS :Skaitymas už pseudospruklio pabaigos (spruklys {3:NUM}) STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}Šiuo metu naudojamam grafikos rinkiniui trūksta keleto spruklių.{}Atnaujinkite pagrindinį grafikos rinkinį -STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}Šiuo metu naudojamam pagrindinės grafikos rinkiniui trūsta keleto spruklių. {}Atnaujinkite pagrindinės grafikos rinkinį. {} Kadangi žaidžiate {YELLOW} negalutinę, vis dar kuriamą OpenTTD versiją, {WHITE}, jums, ko gero, reikėtų įdiegti atitinkamą{YELLOW}naujausią, negalutinį pagrindinės grafikos rinkinį.{WHITE} +STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}Šiuo metu naudojamam pagrindinės grafikos rinkiniui trūsta keleto spruklių.{}Atnaujinkite pagrindinės grafikos rinkinį.{} Kadangi žaidžiate {YELLOW} negalutinę, vis dar kuriamą OpenTTD versiją, {WHITE}, jums, ko gero, reikėtų įdiegti atitinkamą{YELLOW}naujausią, negalutinį pagrindinės grafikos rinkinį.{WHITE} STR_NEWGRF_ERROR_GRM_FAILED :Pageidautas GRF resursas yra neprieinamas (spruklys {3:NUM}) STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{1:STRING} buvo išjungtas {2:STRING} STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Neteisingas/nežinomas spruklio išdėstymo formatas (spruklys {3:NUM}) @@ -4787,301 +4787,301 @@ STR_TOWN_BUILDING_NAME_PIGGY_BANK_1 :Paršiukų bank ##id 0x4800 # industry names STR_INDUSTRY_NAME_COAL_MINE :{G=mot}anglies kasykla -STR_INDUSTRY_NAME_COAL_MINE.kas :{G=mot}anglies kasykla -STR_INDUSTRY_NAME_COAL_MINE.ko :{G=mot}anglies kasyklos -STR_INDUSTRY_NAME_COAL_MINE.kam :{G=mot}anglies kasyklai -STR_INDUSTRY_NAME_COAL_MINE.ka :{G=mot}anglies kasyklą -STR_INDUSTRY_NAME_COAL_MINE.kuo :{G=mot}anglies kasykla -STR_INDUSTRY_NAME_COAL_MINE.kur :{G=mot}anglies kasykloje -STR_INDUSTRY_NAME_COAL_MINE.kreip :{G=mot}anglies kasykla +STR_INDUSTRY_NAME_COAL_MINE.kas :anglies kasykla +STR_INDUSTRY_NAME_COAL_MINE.ko :anglies kasyklos +STR_INDUSTRY_NAME_COAL_MINE.kam :anglies kasyklai +STR_INDUSTRY_NAME_COAL_MINE.ka :anglies kasyklą +STR_INDUSTRY_NAME_COAL_MINE.kuo :anglies kasykla +STR_INDUSTRY_NAME_COAL_MINE.kur :anglies kasykloje +STR_INDUSTRY_NAME_COAL_MINE.kreip :anglies kasykla STR_INDUSTRY_NAME_POWER_STATION :{G=mot}elektrinė -STR_INDUSTRY_NAME_POWER_STATION.kas :{G=mot}elektrinė -STR_INDUSTRY_NAME_POWER_STATION.ko :{G=mot}elektrinės -STR_INDUSTRY_NAME_POWER_STATION.kam :{G=mot}elektrinei -STR_INDUSTRY_NAME_POWER_STATION.ka :{G=mot}elektrinę -STR_INDUSTRY_NAME_POWER_STATION.kuo :{G=mot}elektrine -STR_INDUSTRY_NAME_POWER_STATION.kur :{G=mot}elektrinėje -STR_INDUSTRY_NAME_POWER_STATION.kreip :{G=mot}elektrine +STR_INDUSTRY_NAME_POWER_STATION.kas :elektrinė +STR_INDUSTRY_NAME_POWER_STATION.ko :elektrinės +STR_INDUSTRY_NAME_POWER_STATION.kam :elektrinei +STR_INDUSTRY_NAME_POWER_STATION.ka :elektrinę +STR_INDUSTRY_NAME_POWER_STATION.kuo :elektrine +STR_INDUSTRY_NAME_POWER_STATION.kur :elektrinėje +STR_INDUSTRY_NAME_POWER_STATION.kreip :elektrine STR_INDUSTRY_NAME_SAWMILL :{G=mot}lentpjūvė -STR_INDUSTRY_NAME_SAWMILL.kas :{G=mot}lentpjūvė -STR_INDUSTRY_NAME_SAWMILL.ko :{G=mot}lentpjūvės -STR_INDUSTRY_NAME_SAWMILL.kam :{G=mot}lentpjūvei -STR_INDUSTRY_NAME_SAWMILL.ka :{G=mot}lentpjūvę -STR_INDUSTRY_NAME_SAWMILL.kuo :{G=mot}lentpjūve -STR_INDUSTRY_NAME_SAWMILL.kur :{G=mot}lentpjūvėje -STR_INDUSTRY_NAME_SAWMILL.kreip :{G=mot}lentpjūve +STR_INDUSTRY_NAME_SAWMILL.kas :lentpjūvė +STR_INDUSTRY_NAME_SAWMILL.ko :lentpjūvės +STR_INDUSTRY_NAME_SAWMILL.kam :lentpjūvei +STR_INDUSTRY_NAME_SAWMILL.ka :lentpjūvę +STR_INDUSTRY_NAME_SAWMILL.kuo :lentpjūve +STR_INDUSTRY_NAME_SAWMILL.kur :lentpjūvėje +STR_INDUSTRY_NAME_SAWMILL.kreip :lentpjūve STR_INDUSTRY_NAME_FOREST :{G=vyr}miškas -STR_INDUSTRY_NAME_FOREST.kas :{G=vyr}miškas -STR_INDUSTRY_NAME_FOREST.ko :{G=vyr}miško -STR_INDUSTRY_NAME_FOREST.kam :{G=vyr}miškui -STR_INDUSTRY_NAME_FOREST.ka :{G=vyr}mišką -STR_INDUSTRY_NAME_FOREST.kuo :{G=vyr}mišku -STR_INDUSTRY_NAME_FOREST.kur :{G=vyr}miške -STR_INDUSTRY_NAME_FOREST.kreip :{G=vyr}miške +STR_INDUSTRY_NAME_FOREST.kas :miškas +STR_INDUSTRY_NAME_FOREST.ko :miško +STR_INDUSTRY_NAME_FOREST.kam :miškui +STR_INDUSTRY_NAME_FOREST.ka :mišką +STR_INDUSTRY_NAME_FOREST.kuo :mišku +STR_INDUSTRY_NAME_FOREST.kur :miške +STR_INDUSTRY_NAME_FOREST.kreip :miške STR_INDUSTRY_NAME_OIL_REFINERY :{G=mot}naftos perdirbimo įmonė -STR_INDUSTRY_NAME_OIL_REFINERY.kas :{G=mot}naftos perdirbimo įmonė -STR_INDUSTRY_NAME_OIL_REFINERY.ko :{G=mot}naftos perdirbimo įmonės -STR_INDUSTRY_NAME_OIL_REFINERY.kam :{G=mot}naftos perdirbimo įmonei -STR_INDUSTRY_NAME_OIL_REFINERY.ka :{G=mot}naftos perdirbimo įmonę -STR_INDUSTRY_NAME_OIL_REFINERY.kuo :{G=mot}naftos perdirbimo įmone -STR_INDUSTRY_NAME_OIL_REFINERY.kur :{G=mot}naftos perdirbimo įmonėje -STR_INDUSTRY_NAME_OIL_REFINERY.kreip :{G=mot}naftos perdirbimo įmone +STR_INDUSTRY_NAME_OIL_REFINERY.kas :naftos perdirbimo įmonė +STR_INDUSTRY_NAME_OIL_REFINERY.ko :naftos perdirbimo įmonės +STR_INDUSTRY_NAME_OIL_REFINERY.kam :naftos perdirbimo įmonei +STR_INDUSTRY_NAME_OIL_REFINERY.ka :naftos perdirbimo įmonę +STR_INDUSTRY_NAME_OIL_REFINERY.kuo :naftos perdirbimo įmone +STR_INDUSTRY_NAME_OIL_REFINERY.kur :naftos perdirbimo įmonėje +STR_INDUSTRY_NAME_OIL_REFINERY.kreip :naftos perdirbimo įmone STR_INDUSTRY_NAME_OIL_RIG :{G=mot}naftos platforma -STR_INDUSTRY_NAME_OIL_RIG.kas :{G=mot}naftos platforma -STR_INDUSTRY_NAME_OIL_RIG.ko :{G=mot}naftos platformos -STR_INDUSTRY_NAME_OIL_RIG.kam :{G=mot}naftos platformai -STR_INDUSTRY_NAME_OIL_RIG.ka :{G=mot}naftos platformą -STR_INDUSTRY_NAME_OIL_RIG.kuo :{G=mot}naftos platforma -STR_INDUSTRY_NAME_OIL_RIG.kur :{G=mot}naftos platformoje -STR_INDUSTRY_NAME_OIL_RIG.kreip :{G=mot}naftos platforma +STR_INDUSTRY_NAME_OIL_RIG.kas :naftos platforma +STR_INDUSTRY_NAME_OIL_RIG.ko :naftos platformos +STR_INDUSTRY_NAME_OIL_RIG.kam :naftos platformai +STR_INDUSTRY_NAME_OIL_RIG.ka :naftos platformą +STR_INDUSTRY_NAME_OIL_RIG.kuo :naftos platforma +STR_INDUSTRY_NAME_OIL_RIG.kur :naftos platformoje +STR_INDUSTRY_NAME_OIL_RIG.kreip :naftos platforma STR_INDUSTRY_NAME_FACTORY :{G=mot}gamykla -STR_INDUSTRY_NAME_FACTORY.kas :{G=mot}gamykla -STR_INDUSTRY_NAME_FACTORY.ko :{G=mot}gamyklos -STR_INDUSTRY_NAME_FACTORY.kam :{G=mot}gamyklai -STR_INDUSTRY_NAME_FACTORY.ka :{G=mot}gamyklą -STR_INDUSTRY_NAME_FACTORY.kuo :{G=mot}gamykla -STR_INDUSTRY_NAME_FACTORY.kur :{G=mot}gamykloje -STR_INDUSTRY_NAME_FACTORY.kreip :{G=mot}gamykla +STR_INDUSTRY_NAME_FACTORY.kas :gamykla +STR_INDUSTRY_NAME_FACTORY.ko :gamyklos +STR_INDUSTRY_NAME_FACTORY.kam :gamyklai +STR_INDUSTRY_NAME_FACTORY.ka :gamyklą +STR_INDUSTRY_NAME_FACTORY.kuo :gamykla +STR_INDUSTRY_NAME_FACTORY.kur :gamykloje +STR_INDUSTRY_NAME_FACTORY.kreip :gamykla STR_INDUSTRY_NAME_PRINTING_WORKS :{G=mot}spaustuvė -STR_INDUSTRY_NAME_PRINTING_WORKS.kas :{G=mot}spaustuvė -STR_INDUSTRY_NAME_PRINTING_WORKS.ko :{G=mot}spaustuvės -STR_INDUSTRY_NAME_PRINTING_WORKS.kam :{G=mot}spaustuvei -STR_INDUSTRY_NAME_PRINTING_WORKS.ka :{G=mot}spaustuvę -STR_INDUSTRY_NAME_PRINTING_WORKS.kuo :{G=mot}spaustuve -STR_INDUSTRY_NAME_PRINTING_WORKS.kur :{G=mot}spaustuvėje -STR_INDUSTRY_NAME_PRINTING_WORKS.kreip :{G=mot}spaustuve +STR_INDUSTRY_NAME_PRINTING_WORKS.kas :spaustuvė +STR_INDUSTRY_NAME_PRINTING_WORKS.ko :spaustuvės +STR_INDUSTRY_NAME_PRINTING_WORKS.kam :spaustuvei +STR_INDUSTRY_NAME_PRINTING_WORKS.ka :spaustuvę +STR_INDUSTRY_NAME_PRINTING_WORKS.kuo :spaustuve +STR_INDUSTRY_NAME_PRINTING_WORKS.kur :spaustuvėje +STR_INDUSTRY_NAME_PRINTING_WORKS.kreip :spaustuve STR_INDUSTRY_NAME_STEEL_MILL :{G=mot}plieno liejykla -STR_INDUSTRY_NAME_STEEL_MILL.kas :{G=mot}plieno liejykla -STR_INDUSTRY_NAME_STEEL_MILL.ko :{G=mot}plieno liejyklos -STR_INDUSTRY_NAME_STEEL_MILL.kam :{G=mot}plieno liejyklai -STR_INDUSTRY_NAME_STEEL_MILL.ka :{G=mot}plieno liejyklą -STR_INDUSTRY_NAME_STEEL_MILL.kuo :{G=mot}plieno liejykla -STR_INDUSTRY_NAME_STEEL_MILL.kur :{G=mot}plieno liejykloje -STR_INDUSTRY_NAME_STEEL_MILL.kreip :{G=mot}plieno liejykla +STR_INDUSTRY_NAME_STEEL_MILL.kas :plieno liejykla +STR_INDUSTRY_NAME_STEEL_MILL.ko :plieno liejyklos +STR_INDUSTRY_NAME_STEEL_MILL.kam :plieno liejyklai +STR_INDUSTRY_NAME_STEEL_MILL.ka :plieno liejyklą +STR_INDUSTRY_NAME_STEEL_MILL.kuo :plieno liejykla +STR_INDUSTRY_NAME_STEEL_MILL.kur :plieno liejykloje +STR_INDUSTRY_NAME_STEEL_MILL.kreip :plieno liejykla STR_INDUSTRY_NAME_FARM :{G=vyr}ūkis -STR_INDUSTRY_NAME_FARM.kas :{G=vyr}ūkis -STR_INDUSTRY_NAME_FARM.ko :{G=vyr}ūkio -STR_INDUSTRY_NAME_FARM.kam :{G=vyr}ūkiui -STR_INDUSTRY_NAME_FARM.ka :{G=vyr}ūkį -STR_INDUSTRY_NAME_FARM.kuo :{G=vyr}ūkiu -STR_INDUSTRY_NAME_FARM.kur :{G=vyr}ūkyje -STR_INDUSTRY_NAME_FARM.kreip :{G=vyr}ūki +STR_INDUSTRY_NAME_FARM.kas :ūkis +STR_INDUSTRY_NAME_FARM.ko :ūkio +STR_INDUSTRY_NAME_FARM.kam :ūkiui +STR_INDUSTRY_NAME_FARM.ka :ūkį +STR_INDUSTRY_NAME_FARM.kuo :ūkiu +STR_INDUSTRY_NAME_FARM.kur :ūkyje +STR_INDUSTRY_NAME_FARM.kreip :ūki STR_INDUSTRY_NAME_COPPER_ORE_MINE :{G=mot}vario rūdos kasykla -STR_INDUSTRY_NAME_COPPER_ORE_MINE.kas :{G=mot}vario rūdos kasykla -STR_INDUSTRY_NAME_COPPER_ORE_MINE.ko :{G=mot}vario rūdos kasyklos -STR_INDUSTRY_NAME_COPPER_ORE_MINE.kam :{G=mot}vario rūdos kasyklai -STR_INDUSTRY_NAME_COPPER_ORE_MINE.ka :{G=mot}vario rūdos kasyklą -STR_INDUSTRY_NAME_COPPER_ORE_MINE.kuo :{G=mot}vario rūdos kasykla -STR_INDUSTRY_NAME_COPPER_ORE_MINE.kur :{G=mot}vario rūdos kasykloje -STR_INDUSTRY_NAME_COPPER_ORE_MINE.kreip :{G=mot}vario rūdos kasykla +STR_INDUSTRY_NAME_COPPER_ORE_MINE.kas :vario rūdos kasykla +STR_INDUSTRY_NAME_COPPER_ORE_MINE.ko :vario rūdos kasyklos +STR_INDUSTRY_NAME_COPPER_ORE_MINE.kam :vario rūdos kasyklai +STR_INDUSTRY_NAME_COPPER_ORE_MINE.ka :vario rūdos kasyklą +STR_INDUSTRY_NAME_COPPER_ORE_MINE.kuo :vario rūdos kasykla +STR_INDUSTRY_NAME_COPPER_ORE_MINE.kur :vario rūdos kasykloje +STR_INDUSTRY_NAME_COPPER_ORE_MINE.kreip :vario rūdos kasykla STR_INDUSTRY_NAME_OIL_WELLS :{G=vyr}naftos gręžinys -STR_INDUSTRY_NAME_OIL_WELLS.kas :{G=vyr}naftos gręžinys -STR_INDUSTRY_NAME_OIL_WELLS.ko :{G=vyr}naftos gręžinio -STR_INDUSTRY_NAME_OIL_WELLS.kam :{G=vyr}naftos gręžiniui -STR_INDUSTRY_NAME_OIL_WELLS.ka :{G=vyr}naftos gręžinį -STR_INDUSTRY_NAME_OIL_WELLS.kuo :{G=vyr}naftos gręžiniu -STR_INDUSTRY_NAME_OIL_WELLS.kur :{G=vyr}naftos gręžinyje -STR_INDUSTRY_NAME_OIL_WELLS.kreip :{G=vyr}naftos gręžiny +STR_INDUSTRY_NAME_OIL_WELLS.kas :naftos gręžinys +STR_INDUSTRY_NAME_OIL_WELLS.ko :naftos gręžinio +STR_INDUSTRY_NAME_OIL_WELLS.kam :naftos gręžiniui +STR_INDUSTRY_NAME_OIL_WELLS.ka :naftos gręžinį +STR_INDUSTRY_NAME_OIL_WELLS.kuo :naftos gręžiniu +STR_INDUSTRY_NAME_OIL_WELLS.kur :naftos gręžinyje +STR_INDUSTRY_NAME_OIL_WELLS.kreip :naftos gręžiny STR_INDUSTRY_NAME_BANK :{G=vyr}bankas -STR_INDUSTRY_NAME_BANK.kas :{G=vyr}bankas -STR_INDUSTRY_NAME_BANK.ko :{G=vyr}banko -STR_INDUSTRY_NAME_BANK.kam :{G=vyr}bankui -STR_INDUSTRY_NAME_BANK.ka :{G=vyr}banką -STR_INDUSTRY_NAME_BANK.kuo :{G=vyr}banku -STR_INDUSTRY_NAME_BANK.kur :{G=vyr}banke -STR_INDUSTRY_NAME_BANK.kreip :{G=vyr}banke +STR_INDUSTRY_NAME_BANK.kas :bankas +STR_INDUSTRY_NAME_BANK.ko :banko +STR_INDUSTRY_NAME_BANK.kam :bankui +STR_INDUSTRY_NAME_BANK.ka :banką +STR_INDUSTRY_NAME_BANK.kuo :banku +STR_INDUSTRY_NAME_BANK.kur :banke +STR_INDUSTRY_NAME_BANK.kreip :banke STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT :{G=mot}maisto perdirbimo įmonė -STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.kas :{G=mot}maisto perdirbimo įmonė -STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.ko :{G=mot}maisto perdirbimo įmonės -STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.kam :{G=mot}maisto perdirbimo įmonei -STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.ka :{G=mot}maisto perdirbimo įmonę -STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.kuo :{G=mot}maisto perdirbimo įmone -STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.kur :{G=mot}maisto perdirbimo įmonėje -STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.kreip :{G=mot}maisto perdirbimo įmone +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.kas :maisto perdirbimo įmonė +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.ko :maisto perdirbimo įmonės +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.kam :maisto perdirbimo įmonei +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.ka :maisto perdirbimo įmonę +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.kuo :maisto perdirbimo įmone +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.kur :maisto perdirbimo įmonėje +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.kreip :maisto perdirbimo įmone STR_INDUSTRY_NAME_PAPER_MILL :{G=vyr}popieriaus fabrikas -STR_INDUSTRY_NAME_PAPER_MILL.kas :{G=vyr}popieriaus fabrikas -STR_INDUSTRY_NAME_PAPER_MILL.ko :{G=vyr}popieriaus fabriko -STR_INDUSTRY_NAME_PAPER_MILL.kam :{G=vyr}popieriaus fabrikui -STR_INDUSTRY_NAME_PAPER_MILL.ka :{G=vyr}popieriaus fabriką -STR_INDUSTRY_NAME_PAPER_MILL.kuo :{G=vyr}popieriaus fabriku -STR_INDUSTRY_NAME_PAPER_MILL.kur :{G=vyr}popieriaus fabrike -STR_INDUSTRY_NAME_PAPER_MILL.kreip :{G=vyr}popieriaus fabrike +STR_INDUSTRY_NAME_PAPER_MILL.kas :popieriaus fabrikas +STR_INDUSTRY_NAME_PAPER_MILL.ko :popieriaus fabriko +STR_INDUSTRY_NAME_PAPER_MILL.kam :popieriaus fabrikui +STR_INDUSTRY_NAME_PAPER_MILL.ka :popieriaus fabriką +STR_INDUSTRY_NAME_PAPER_MILL.kuo :popieriaus fabriku +STR_INDUSTRY_NAME_PAPER_MILL.kur :popieriaus fabrike +STR_INDUSTRY_NAME_PAPER_MILL.kreip :popieriaus fabrike STR_INDUSTRY_NAME_GOLD_MINE :{G=mot}aukso kasykla -STR_INDUSTRY_NAME_GOLD_MINE.kas :{G=mot}aukso kasykla -STR_INDUSTRY_NAME_GOLD_MINE.ko :{G=mot}aukso kasyklos -STR_INDUSTRY_NAME_GOLD_MINE.kam :{G=mot}aukso kasyklai -STR_INDUSTRY_NAME_GOLD_MINE.ka :{G=mot}aukso kasyklą -STR_INDUSTRY_NAME_GOLD_MINE.kuo :{G=mot}aukso kasykla -STR_INDUSTRY_NAME_GOLD_MINE.kur :{G=mot}aukso kasykloje -STR_INDUSTRY_NAME_GOLD_MINE.kreip :{G=mot}aukso kasykla +STR_INDUSTRY_NAME_GOLD_MINE.kas :aukso kasykla +STR_INDUSTRY_NAME_GOLD_MINE.ko :aukso kasyklos +STR_INDUSTRY_NAME_GOLD_MINE.kam :aukso kasyklai +STR_INDUSTRY_NAME_GOLD_MINE.ka :aukso kasyklą +STR_INDUSTRY_NAME_GOLD_MINE.kuo :aukso kasykla +STR_INDUSTRY_NAME_GOLD_MINE.kur :aukso kasykloje +STR_INDUSTRY_NAME_GOLD_MINE.kreip :aukso kasykla STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC :{G=vyr}bankas -STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.kas :{G=vyr}bankas -STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.ko :{G=vyr}banko -STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.kam :{G=vyr}bankui -STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.ka :{G=vyr}banką -STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.kuo :{G=vyr}banku -STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.kur :{G=vyr}banke -STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.kreip :{G=vyr}banke +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.kas :bankas +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.ko :banko +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.kam :bankui +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.ka :banką +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.kuo :banku +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.kur :banke +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.kreip :banke STR_INDUSTRY_NAME_DIAMOND_MINE :{G=mot}deimantų kasykla -STR_INDUSTRY_NAME_DIAMOND_MINE.kas :{G=mot}deimantų kasykla -STR_INDUSTRY_NAME_DIAMOND_MINE.ko :{G=mot}deimantų kasyklos -STR_INDUSTRY_NAME_DIAMOND_MINE.kam :{G=mot}deimantų kasyklai -STR_INDUSTRY_NAME_DIAMOND_MINE.ka :{G=mot}deimantų kasyklą -STR_INDUSTRY_NAME_DIAMOND_MINE.kuo :{G=mot}deimantų kasykla -STR_INDUSTRY_NAME_DIAMOND_MINE.kur :{G=mot}deimantų kasykloje -STR_INDUSTRY_NAME_DIAMOND_MINE.kreip :{G=mot}deimantų kasykla +STR_INDUSTRY_NAME_DIAMOND_MINE.kas :deimantų kasykla +STR_INDUSTRY_NAME_DIAMOND_MINE.ko :deimantų kasyklos +STR_INDUSTRY_NAME_DIAMOND_MINE.kam :deimantų kasyklai +STR_INDUSTRY_NAME_DIAMOND_MINE.ka :deimantų kasyklą +STR_INDUSTRY_NAME_DIAMOND_MINE.kuo :deimantų kasykla +STR_INDUSTRY_NAME_DIAMOND_MINE.kur :deimantų kasykloje +STR_INDUSTRY_NAME_DIAMOND_MINE.kreip :deimantų kasykla STR_INDUSTRY_NAME_IRON_ORE_MINE :{G=mot}geležies rūdos kasykla -STR_INDUSTRY_NAME_IRON_ORE_MINE.kas :{G=mot}geležies rūdos kasykla -STR_INDUSTRY_NAME_IRON_ORE_MINE.ko :{G=mot}geležies rūdos kasyklos -STR_INDUSTRY_NAME_IRON_ORE_MINE.kam :{G=mot}geležies rūdos kasyklai -STR_INDUSTRY_NAME_IRON_ORE_MINE.ka :{G=mot}geležies rūdos kasyklą -STR_INDUSTRY_NAME_IRON_ORE_MINE.kuo :{G=mot}geležies rūdos kasykla -STR_INDUSTRY_NAME_IRON_ORE_MINE.kur :{G=mot}geležies rūdos kasykloje -STR_INDUSTRY_NAME_IRON_ORE_MINE.kreip :{G=mot}geležies rūdos kasykla +STR_INDUSTRY_NAME_IRON_ORE_MINE.kas :geležies rūdos kasykla +STR_INDUSTRY_NAME_IRON_ORE_MINE.ko :geležies rūdos kasyklos +STR_INDUSTRY_NAME_IRON_ORE_MINE.kam :geležies rūdos kasyklai +STR_INDUSTRY_NAME_IRON_ORE_MINE.ka :geležies rūdos kasyklą +STR_INDUSTRY_NAME_IRON_ORE_MINE.kuo :geležies rūdos kasykla +STR_INDUSTRY_NAME_IRON_ORE_MINE.kur :geležies rūdos kasykloje +STR_INDUSTRY_NAME_IRON_ORE_MINE.kreip :geležies rūdos kasykla STR_INDUSTRY_NAME_FRUIT_PLANTATION :{G=mot}vaisių plantacija -STR_INDUSTRY_NAME_FRUIT_PLANTATION.kas :{G=mot}vaisių plantacija -STR_INDUSTRY_NAME_FRUIT_PLANTATION.ko :{G=mot}vaisių plantacijos -STR_INDUSTRY_NAME_FRUIT_PLANTATION.kam :{G=mot}vaisių plantacijai -STR_INDUSTRY_NAME_FRUIT_PLANTATION.ka :{G=mot}vaisių plantaciją -STR_INDUSTRY_NAME_FRUIT_PLANTATION.kuo :{G=mot}vaisių plantacija -STR_INDUSTRY_NAME_FRUIT_PLANTATION.kur :{G=mot}vaisių plantacijoje -STR_INDUSTRY_NAME_FRUIT_PLANTATION.kreip :{G=mot}vaisių plantacija +STR_INDUSTRY_NAME_FRUIT_PLANTATION.kas :vaisių plantacija +STR_INDUSTRY_NAME_FRUIT_PLANTATION.ko :vaisių plantacijos +STR_INDUSTRY_NAME_FRUIT_PLANTATION.kam :vaisių plantacijai +STR_INDUSTRY_NAME_FRUIT_PLANTATION.ka :vaisių plantaciją +STR_INDUSTRY_NAME_FRUIT_PLANTATION.kuo :vaisių plantacija +STR_INDUSTRY_NAME_FRUIT_PLANTATION.kur :vaisių plantacijoje +STR_INDUSTRY_NAME_FRUIT_PLANTATION.kreip :vaisių plantacija STR_INDUSTRY_NAME_RUBBER_PLANTATION :{G=mot}kaučiukmedžių plantacija -STR_INDUSTRY_NAME_RUBBER_PLANTATION.kas :{G=mot}kaučiukmedžių plantacija -STR_INDUSTRY_NAME_RUBBER_PLANTATION.ko :{G=mot}kaučiukmedžių plantacijos -STR_INDUSTRY_NAME_RUBBER_PLANTATION.kam :{G=mot}kaučiukmedžių plantacijai -STR_INDUSTRY_NAME_RUBBER_PLANTATION.ka :{G=mot}kaučiukmedžių plantaciją -STR_INDUSTRY_NAME_RUBBER_PLANTATION.kuo :{G=mot}kaučiukmedžių plantacija -STR_INDUSTRY_NAME_RUBBER_PLANTATION.kur :{G=mot}kaučiukmedžių plantacijoje -STR_INDUSTRY_NAME_RUBBER_PLANTATION.kreip :{G=mot}kaučiukmedžių plantacija +STR_INDUSTRY_NAME_RUBBER_PLANTATION.kas :kaučiukmedžių plantacija +STR_INDUSTRY_NAME_RUBBER_PLANTATION.ko :kaučiukmedžių plantacijos +STR_INDUSTRY_NAME_RUBBER_PLANTATION.kam :kaučiukmedžių plantacijai +STR_INDUSTRY_NAME_RUBBER_PLANTATION.ka :kaučiukmedžių plantaciją +STR_INDUSTRY_NAME_RUBBER_PLANTATION.kuo :kaučiukmedžių plantacija +STR_INDUSTRY_NAME_RUBBER_PLANTATION.kur :kaučiukmedžių plantacijoje +STR_INDUSTRY_NAME_RUBBER_PLANTATION.kreip :kaučiukmedžių plantacija STR_INDUSTRY_NAME_WATER_SUPPLY :{G=vyr}vandens gręžinys -STR_INDUSTRY_NAME_WATER_SUPPLY.kas :{G=vyr}vandens gręžinys -STR_INDUSTRY_NAME_WATER_SUPPLY.ko :{G=vyr}vandens gręžinio -STR_INDUSTRY_NAME_WATER_SUPPLY.kam :{G=vyr}vandens gręžiniui -STR_INDUSTRY_NAME_WATER_SUPPLY.ka :{G=vyr}vandens gręžinį -STR_INDUSTRY_NAME_WATER_SUPPLY.kuo :{G=vyr}vandens gręžiniu -STR_INDUSTRY_NAME_WATER_SUPPLY.kur :{G=vyr}vandens gręžinyje -STR_INDUSTRY_NAME_WATER_SUPPLY.kreip :{G=vyr}vandens gręžiny +STR_INDUSTRY_NAME_WATER_SUPPLY.kas :vandens gręžinys +STR_INDUSTRY_NAME_WATER_SUPPLY.ko :vandens gręžinio +STR_INDUSTRY_NAME_WATER_SUPPLY.kam :vandens gręžiniui +STR_INDUSTRY_NAME_WATER_SUPPLY.ka :vandens gręžinį +STR_INDUSTRY_NAME_WATER_SUPPLY.kuo :vandens gręžiniu +STR_INDUSTRY_NAME_WATER_SUPPLY.kur :vandens gręžinyje +STR_INDUSTRY_NAME_WATER_SUPPLY.kreip :vandens gręžiny STR_INDUSTRY_NAME_WATER_TOWER :{G=vyr}vandentiekio bokštas -STR_INDUSTRY_NAME_WATER_TOWER.kas :{G=vyr}vandentiekio bokštas -STR_INDUSTRY_NAME_WATER_TOWER.ko :{G=vyr}vandentiekio bokšto -STR_INDUSTRY_NAME_WATER_TOWER.kam :{G=vyr}vandentiekio bokštui -STR_INDUSTRY_NAME_WATER_TOWER.ka :{G=vyr}vandentiekio bokštą -STR_INDUSTRY_NAME_WATER_TOWER.kuo :{G=vyr}vandentiekio bokštu -STR_INDUSTRY_NAME_WATER_TOWER.kur :{G=vyr}vandentiekio bokšte -STR_INDUSTRY_NAME_WATER_TOWER.kreip :{G=vyr}vandentiekio bokšte +STR_INDUSTRY_NAME_WATER_TOWER.kas :vandentiekio bokštas +STR_INDUSTRY_NAME_WATER_TOWER.ko :vandentiekio bokšto +STR_INDUSTRY_NAME_WATER_TOWER.kam :vandentiekio bokštui +STR_INDUSTRY_NAME_WATER_TOWER.ka :vandentiekio bokštą +STR_INDUSTRY_NAME_WATER_TOWER.kuo :vandentiekio bokštu +STR_INDUSTRY_NAME_WATER_TOWER.kur :vandentiekio bokšte +STR_INDUSTRY_NAME_WATER_TOWER.kreip :vandentiekio bokšte STR_INDUSTRY_NAME_FACTORY_2 :{G=mot}gamykla -STR_INDUSTRY_NAME_FACTORY_2.kas :{G=mot}gamykla -STR_INDUSTRY_NAME_FACTORY_2.ko :{G=mot}gamyklos -STR_INDUSTRY_NAME_FACTORY_2.kam :{G=mot}gamyklai -STR_INDUSTRY_NAME_FACTORY_2.ka :{G=mot}gamyklą -STR_INDUSTRY_NAME_FACTORY_2.kuo :{G=mot}gamykla -STR_INDUSTRY_NAME_FACTORY_2.kur :{G=mot}gamykloje -STR_INDUSTRY_NAME_FACTORY_2.kreip :{G=mot}gamykla +STR_INDUSTRY_NAME_FACTORY_2.kas :gamykla +STR_INDUSTRY_NAME_FACTORY_2.ko :gamyklos +STR_INDUSTRY_NAME_FACTORY_2.kam :gamyklai +STR_INDUSTRY_NAME_FACTORY_2.ka :gamyklą +STR_INDUSTRY_NAME_FACTORY_2.kuo :gamykla +STR_INDUSTRY_NAME_FACTORY_2.kur :gamykloje +STR_INDUSTRY_NAME_FACTORY_2.kreip :gamykla STR_INDUSTRY_NAME_FARM_2 :{G=vyr}ūkis -STR_INDUSTRY_NAME_FARM_2.kas :{G=vyr}ūkis -STR_INDUSTRY_NAME_FARM_2.ko :{G=vyr}ūkio -STR_INDUSTRY_NAME_FARM_2.kam :{G=vyr}ūkiui -STR_INDUSTRY_NAME_FARM_2.ka :{G=vyr}ūkį -STR_INDUSTRY_NAME_FARM_2.kuo :{G=vyr}ūkiu -STR_INDUSTRY_NAME_FARM_2.kur :{G=vyr}ūkyje -STR_INDUSTRY_NAME_FARM_2.kreip :{G=vyr}ūki +STR_INDUSTRY_NAME_FARM_2.kas :ūkis +STR_INDUSTRY_NAME_FARM_2.ko :ūkio +STR_INDUSTRY_NAME_FARM_2.kam :ūkiui +STR_INDUSTRY_NAME_FARM_2.ka :ūkį +STR_INDUSTRY_NAME_FARM_2.kuo :ūkiu +STR_INDUSTRY_NAME_FARM_2.kur :ūkyje +STR_INDUSTRY_NAME_FARM_2.kreip :ūki STR_INDUSTRY_NAME_LUMBER_MILL :{G=mot}lentpjūvė -STR_INDUSTRY_NAME_LUMBER_MILL.kas :{G=mot}lentpjūvė -STR_INDUSTRY_NAME_LUMBER_MILL.ko :{G=mot}lentpjūvės -STR_INDUSTRY_NAME_LUMBER_MILL.kam :{G=mot}lentpjūvei -STR_INDUSTRY_NAME_LUMBER_MILL.ka :{G=mot}lentpjūvę -STR_INDUSTRY_NAME_LUMBER_MILL.kuo :{G=mot}lentpjūve -STR_INDUSTRY_NAME_LUMBER_MILL.kur :{G=mot}lentpjūvėje -STR_INDUSTRY_NAME_LUMBER_MILL.kreip :{G=mot}lentpjūve +STR_INDUSTRY_NAME_LUMBER_MILL.kas :lentpjūvė +STR_INDUSTRY_NAME_LUMBER_MILL.ko :lentpjūvės +STR_INDUSTRY_NAME_LUMBER_MILL.kam :lentpjūvei +STR_INDUSTRY_NAME_LUMBER_MILL.ka :lentpjūvę +STR_INDUSTRY_NAME_LUMBER_MILL.kuo :lentpjūve +STR_INDUSTRY_NAME_LUMBER_MILL.kur :lentpjūvėje +STR_INDUSTRY_NAME_LUMBER_MILL.kreip :lentpjūve STR_INDUSTRY_NAME_COTTON_CANDY_FOREST :{G=vyr}ledinukų miškas -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.kas :{G=vyr}ledinukų miškas -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.ko :{G=vyr}ledinukų miško -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.kam :{G=vyr}ledinukų miškui -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.ka :{G=vyr}ledinukų mišką -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.kuo :{G=vyr}ledinukų mišku -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.kur :{G=vyr}ledinukų miške -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.kreip :{G=vyr}ledinukų miške +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.kas :ledinukų miškas +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.ko :ledinukų miško +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.kam :ledinukų miškui +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.ka :ledinukų mišką +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.kuo :ledinukų mišku +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.kur :ledinukų miške +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.kreip :ledinukų miške STR_INDUSTRY_NAME_CANDY_FACTORY :{G=vyr}saldumynų fabrikas -STR_INDUSTRY_NAME_CANDY_FACTORY.kas :{G=vyr}saldumynų fabrikas -STR_INDUSTRY_NAME_CANDY_FACTORY.ko :{G=vyr}saldumynų fabriko -STR_INDUSTRY_NAME_CANDY_FACTORY.kam :{G=vyr}saldumynų fabrikui -STR_INDUSTRY_NAME_CANDY_FACTORY.ka :{G=vyr}saldumynų fabriką -STR_INDUSTRY_NAME_CANDY_FACTORY.kuo :{G=vyr}saldumynų fabriku -STR_INDUSTRY_NAME_CANDY_FACTORY.kur :{G=vyr}saldumynų fabrike -STR_INDUSTRY_NAME_CANDY_FACTORY.kreip :{G=vyr}saldumynų fabrike +STR_INDUSTRY_NAME_CANDY_FACTORY.kas :saldumynų fabrikas +STR_INDUSTRY_NAME_CANDY_FACTORY.ko :saldumynų fabriko +STR_INDUSTRY_NAME_CANDY_FACTORY.kam :saldumynų fabrikui +STR_INDUSTRY_NAME_CANDY_FACTORY.ka :saldumynų fabriką +STR_INDUSTRY_NAME_CANDY_FACTORY.kuo :saldumynų fabriku +STR_INDUSTRY_NAME_CANDY_FACTORY.kur :saldumynų fabrike +STR_INDUSTRY_NAME_CANDY_FACTORY.kreip :saldumynų fabrike STR_INDUSTRY_NAME_BATTERY_FARM :{G=vyr}baterijų ūkis -STR_INDUSTRY_NAME_BATTERY_FARM.kas :{G=vyr}baterijų ūkis -STR_INDUSTRY_NAME_BATTERY_FARM.ko :{G=vyr}baterijų ūkio -STR_INDUSTRY_NAME_BATTERY_FARM.kam :{G=vyr}baterijų ūkiui -STR_INDUSTRY_NAME_BATTERY_FARM.ka :{G=vyr}baterijų ūkį -STR_INDUSTRY_NAME_BATTERY_FARM.kuo :{G=vyr}baterijų ūkiu -STR_INDUSTRY_NAME_BATTERY_FARM.kur :{G=vyr}baterijų ūkyje -STR_INDUSTRY_NAME_BATTERY_FARM.kreip :{G=vyr}baterijų ūki +STR_INDUSTRY_NAME_BATTERY_FARM.kas :baterijų ūkis +STR_INDUSTRY_NAME_BATTERY_FARM.ko :baterijų ūkio +STR_INDUSTRY_NAME_BATTERY_FARM.kam :baterijų ūkiui +STR_INDUSTRY_NAME_BATTERY_FARM.ka :baterijų ūkį +STR_INDUSTRY_NAME_BATTERY_FARM.kuo :baterijų ūkiu +STR_INDUSTRY_NAME_BATTERY_FARM.kur :baterijų ūkyje +STR_INDUSTRY_NAME_BATTERY_FARM.kreip :baterijų ūki STR_INDUSTRY_NAME_COLA_WELLS :{G=vyr}kolos šulinys -STR_INDUSTRY_NAME_COLA_WELLS.kas :{G=vyr}kolos šulinys -STR_INDUSTRY_NAME_COLA_WELLS.ko :{G=vyr}kolos šulinio -STR_INDUSTRY_NAME_COLA_WELLS.kam :{G=vyr}kolos šuliniui -STR_INDUSTRY_NAME_COLA_WELLS.ka :{G=vyr}kolos šulinį -STR_INDUSTRY_NAME_COLA_WELLS.kuo :{G=vyr}kolos šuliniu -STR_INDUSTRY_NAME_COLA_WELLS.kur :{G=vyr}kolos šulinyje -STR_INDUSTRY_NAME_COLA_WELLS.kreip :{G=vyr}kolos šuliny +STR_INDUSTRY_NAME_COLA_WELLS.kas :kolos šulinys +STR_INDUSTRY_NAME_COLA_WELLS.ko :kolos šulinio +STR_INDUSTRY_NAME_COLA_WELLS.kam :kolos šuliniui +STR_INDUSTRY_NAME_COLA_WELLS.ka :kolos šulinį +STR_INDUSTRY_NAME_COLA_WELLS.kuo :kolos šuliniu +STR_INDUSTRY_NAME_COLA_WELLS.kur :kolos šulinyje +STR_INDUSTRY_NAME_COLA_WELLS.kreip :kolos šuliny STR_INDUSTRY_NAME_TOY_SHOP :{G=mot}žaislų parduotuvė -STR_INDUSTRY_NAME_TOY_SHOP.kas :{G=mot}žaislų parduotuvė -STR_INDUSTRY_NAME_TOY_SHOP.ko :{G=mot}žaislų parduotuvės -STR_INDUSTRY_NAME_TOY_SHOP.kam :{G=mot}žaislų parduotuvei -STR_INDUSTRY_NAME_TOY_SHOP.ka :{G=mot}žaislų parduotuvę -STR_INDUSTRY_NAME_TOY_SHOP.kuo :{G=mot}žaislų parduotuve -STR_INDUSTRY_NAME_TOY_SHOP.kur :{G=mot}žaislų parduotuvėje -STR_INDUSTRY_NAME_TOY_SHOP.kreip :{G=mot}žaislų parduotuve +STR_INDUSTRY_NAME_TOY_SHOP.kas :žaislų parduotuvė +STR_INDUSTRY_NAME_TOY_SHOP.ko :žaislų parduotuvės +STR_INDUSTRY_NAME_TOY_SHOP.kam :žaislų parduotuvei +STR_INDUSTRY_NAME_TOY_SHOP.ka :žaislų parduotuvę +STR_INDUSTRY_NAME_TOY_SHOP.kuo :žaislų parduotuve +STR_INDUSTRY_NAME_TOY_SHOP.kur :žaislų parduotuvėje +STR_INDUSTRY_NAME_TOY_SHOP.kreip :žaislų parduotuve STR_INDUSTRY_NAME_TOY_FACTORY :{G=vyr}žaislų fabrikas -STR_INDUSTRY_NAME_TOY_FACTORY.kas :{G=vyr}žaislų fabrikas -STR_INDUSTRY_NAME_TOY_FACTORY.ko :{G=vyr}žaislų fabriko -STR_INDUSTRY_NAME_TOY_FACTORY.kam :{G=vyr}žaislų fabrikui -STR_INDUSTRY_NAME_TOY_FACTORY.ka :{G=vyr}žaislų fabriką -STR_INDUSTRY_NAME_TOY_FACTORY.kuo :{G=vyr}žaislų fabriku -STR_INDUSTRY_NAME_TOY_FACTORY.kur :{G=vyr}žaislų fabrike -STR_INDUSTRY_NAME_TOY_FACTORY.kreip :{G=vyr}žaislų fabrike +STR_INDUSTRY_NAME_TOY_FACTORY.kas :žaislų fabrikas +STR_INDUSTRY_NAME_TOY_FACTORY.ko :žaislų fabriko +STR_INDUSTRY_NAME_TOY_FACTORY.kam :žaislų fabrikui +STR_INDUSTRY_NAME_TOY_FACTORY.ka :žaislų fabriką +STR_INDUSTRY_NAME_TOY_FACTORY.kuo :žaislų fabriku +STR_INDUSTRY_NAME_TOY_FACTORY.kur :žaislų fabrike +STR_INDUSTRY_NAME_TOY_FACTORY.kreip :žaislų fabrike STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS :{G=vyr}plastiko fontanai -STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.kas :{G=vyr}plastiko fontanai -STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.ko :{G=vyr}plastiko fontanų -STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.kam :{G=vyr}plastiko fontanams -STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.ka :{G=vyr}plastiko fontanus -STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.kuo :{G=vyr}plastiko fontanais -STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.kur :{G=vyr}plastiko fontanuose -STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.kreip :{G=vyr}plastiko fontanai +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.kas :plastiko fontanai +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.ko :plastiko fontanų +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.kam :plastiko fontanams +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.ka :plastiko fontanus +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.kuo :plastiko fontanais +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.kur :plastiko fontanuose +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.kreip :plastiko fontanai STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY :{G=mot}putojančių gėrimų gamykla -STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.kas :{G=mot}putojančių gėrimų gamykla -STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.ko :{G=mot}putojančių gėrimų gamyklos -STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.kam :{G=mot}putojančių gėrimų gamyklai -STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.ka :{G=mot}putojančių gėrimų gamyklą -STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.kuo :{G=mot}putojančių gėrimų gamykla -STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.kur :{G=mot}putojančių gėrimų gamykloje -STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.kreip :{G=mot}putojančių gėrimų gamykla +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.kas :putojančių gėrimų gamykla +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.ko :putojančių gėrimų gamyklos +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.kam :putojančių gėrimų gamyklai +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.ka :putojančių gėrimų gamyklą +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.kuo :putojančių gėrimų gamykla +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.kur :putojančių gėrimų gamykloje +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.kreip :putojančių gėrimų gamykla STR_INDUSTRY_NAME_BUBBLE_GENERATOR :{G=vyr}burbulų generatorius -STR_INDUSTRY_NAME_BUBBLE_GENERATOR.kas :{G=vyr}burbulų generatorius -STR_INDUSTRY_NAME_BUBBLE_GENERATOR.ko :{G=vyr}burbulų generatoriaus -STR_INDUSTRY_NAME_BUBBLE_GENERATOR.kam :{G=vyr}burbulų generatoriui -STR_INDUSTRY_NAME_BUBBLE_GENERATOR.ka :{G=vyr}burbulų generatorius -STR_INDUSTRY_NAME_BUBBLE_GENERATOR.kuo :{G=vyr}burbulų generatoriais -STR_INDUSTRY_NAME_BUBBLE_GENERATOR.kur :{G=vyr}burbulų generatoriuose -STR_INDUSTRY_NAME_BUBBLE_GENERATOR.kreip :{G=vyr}burbulų generatoriau +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.kas :burbulų generatorius +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.ko :burbulų generatoriaus +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.kam :burbulų generatoriui +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.ka :burbulų generatorius +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.kuo :burbulų generatoriais +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.kur :burbulų generatoriuose +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.kreip :burbulų generatoriau STR_INDUSTRY_NAME_TOFFEE_QUARRY :{G=vyr}saldainių fabrikas -STR_INDUSTRY_NAME_TOFFEE_QUARRY.kas :{G=vyr}saldainių fabrikas -STR_INDUSTRY_NAME_TOFFEE_QUARRY.ko :{G=vyr}saldainių fabriko -STR_INDUSTRY_NAME_TOFFEE_QUARRY.kam :{G=vyr}saldainių fabrikui -STR_INDUSTRY_NAME_TOFFEE_QUARRY.ka :{G=vyr}saldainių fabriką -STR_INDUSTRY_NAME_TOFFEE_QUARRY.kuo :{G=vyr}saldainių fabriku -STR_INDUSTRY_NAME_TOFFEE_QUARRY.kur :{G=vyr}saldainių fabrike -STR_INDUSTRY_NAME_TOFFEE_QUARRY.kreip :{G=vyr}saldainių fabrike +STR_INDUSTRY_NAME_TOFFEE_QUARRY.kas :saldainių fabrikas +STR_INDUSTRY_NAME_TOFFEE_QUARRY.ko :saldainių fabriko +STR_INDUSTRY_NAME_TOFFEE_QUARRY.kam :saldainių fabrikui +STR_INDUSTRY_NAME_TOFFEE_QUARRY.ka :saldainių fabriką +STR_INDUSTRY_NAME_TOFFEE_QUARRY.kuo :saldainių fabriku +STR_INDUSTRY_NAME_TOFFEE_QUARRY.kur :saldainių fabrike +STR_INDUSTRY_NAME_TOFFEE_QUARRY.kreip :saldainių fabrike STR_INDUSTRY_NAME_SUGAR_MINE :{G=mot}cukraus kasykla -STR_INDUSTRY_NAME_SUGAR_MINE.kas :{G=mot}cukraus kasykla -STR_INDUSTRY_NAME_SUGAR_MINE.ko :{G=mot}cukraus kasyklos -STR_INDUSTRY_NAME_SUGAR_MINE.kam :{G=mot}cukraus kasyklai -STR_INDUSTRY_NAME_SUGAR_MINE.ka :{G=mot}cukraus kasyklą -STR_INDUSTRY_NAME_SUGAR_MINE.kuo :{G=mot}cukraus kasykla -STR_INDUSTRY_NAME_SUGAR_MINE.kur :{G=mot}cukraus kasykloje -STR_INDUSTRY_NAME_SUGAR_MINE.kreip :{G=mot}cukraus kasykla +STR_INDUSTRY_NAME_SUGAR_MINE.kas :cukraus kasykla +STR_INDUSTRY_NAME_SUGAR_MINE.ko :cukraus kasyklos +STR_INDUSTRY_NAME_SUGAR_MINE.kam :cukraus kasyklai +STR_INDUSTRY_NAME_SUGAR_MINE.ka :cukraus kasyklą +STR_INDUSTRY_NAME_SUGAR_MINE.kuo :cukraus kasykla +STR_INDUSTRY_NAME_SUGAR_MINE.kur :cukraus kasykloje +STR_INDUSTRY_NAME_SUGAR_MINE.kreip :cukraus kasykla ############ WARNING, using range 0x6000 for strings that are stored in the savegame ############ These strings may never get a new id, or savegames will break! diff --git a/src/lang/luxembourgish.txt b/src/lang/luxembourgish.txt index c744e1eb99..47e9e9979e 100644 --- a/src/lang/luxembourgish.txt +++ b/src/lang/luxembourgish.txt @@ -10,7 +10,7 @@ ##grflangid 0x23 -# $Id: luxembourgish.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: luxembourgish.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2687,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Land am Firmenb STR_ABOUT_OPENTTD :{WHITE}Iwwert OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original Copyright {COPYRIGHT} 1995 Chris Sawyer, All Rechter virbehalen STR_ABOUT_VERSION :{BLACK}OpenTTD Versioun {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 D'OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 D'OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Spill späicheren @@ -2889,7 +2889,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Warnung: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Fehler: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatal: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}E fatalen NewGRF Fehler ass geschitt: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}E fatalen NewGRF Fehler ass geschitt:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} wärt net mat der TTDPatch Versioun déi vun OpenTTD erkannt gouf funktionéiren STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} ass fir {STRING} Versioun vun TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} ass designed fir mat {STRING} benotzt ze ginn @@ -2906,7 +2906,7 @@ STR_NEWGRF_ERROR_INVALID_ID :Versicht invali STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING} huet eng korrupt Sprite. All korrupt Sprites ginn als Fragezeichen (?) duergestallt STR_NEWGRF_ERROR_MULTIPLE_ACTION_8 :Huet eng Rei Action 8 Einträg (Sprite {3:NUM}) STR_NEWGRF_ERROR_READ_BOUNDS :Lanscht d'Enn vum Pseudo-Sprite gelies (Sprite {3:NUM}) -STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}D'momentan benotzten Grafikset huet e puer Sprites ze mann. {}W.e.g d'Basisgrafikset updaten +STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}D'momentan benotzten Grafikset huet e puer Sprites ze mann.{}W.e.g d'Basisgrafikset updaten STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}Am grad benotzten Basis-Grafikset fehlen e puer Sprites.{}W.e.g Basis-Grafikset updaten.{}Wellsde en {YELLOW}Development Snapshot vun OpenTTD spills{WHITE}, brauchsde och en {YELLOW}Development Snapshot vum Basis-Grafikset{WHITE} STR_NEWGRF_ERROR_GRM_FAILED :Ugefroten GRF Ressource net verfügbar (sprite {3:NUM}) STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{1:STRING} gouf ausgeschalt vun {STRING} @@ -4063,7 +4063,7 @@ STR_MESSAGE_ESTIMATED_COST :{WHITE}Geschät STR_MESSAGE_ESTIMATED_INCOME :{WHITE}Geschätzten Akommes: {CURRENCY_LONG} # Saveload messages -STR_ERROR_SAVE_STILL_IN_PROGRESS :{WHITE}Nach amgaangen ze späicheren. {} W.e.g. waarde bis daat fäerdeg ass! +STR_ERROR_SAVE_STILL_IN_PROGRESS :{WHITE}Nach amgaangen ze späicheren.{} W.e.g. waarde bis daat fäerdeg ass! STR_ERROR_AUTOSAVE_FAILED :{WHITE}Fehler beim Autospäicheren STR_ERROR_UNABLE_TO_READ_DRIVE :{BLACK}Kann net um Laafwierk liesen STR_ERROR_GAME_SAVE_FAILED :{WHITE}Fehler beim Späicheren{}{STRING} diff --git a/src/lang/malay.txt b/src/lang/malay.txt index 267490a3ac..bd85fceeac 100644 --- a/src/lang/malay.txt +++ b/src/lang/malay.txt @@ -10,7 +10,7 @@ ##grflangid 0x3c -# $Id: malay.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: malay.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2199,7 +2199,7 @@ STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Tanam po # Land generation window (SE) STR_TERRAFORM_TOOLBAR_LAND_GENERATION_CAPTION :{WHITE}Pembentukan Tanah STR_TERRAFORM_TOOLTIP_PLACE_ROCKY_AREAS_ON_LANDSCAPE :{BLACK}Letakkan kawasan berbatu atas lanskap -STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK}Pilih kawasan gurun {}Tekan Ctrl untuk membuangkannya +STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK}Pilih kawasan gurun{}Tekan Ctrl untuk membuangkannya STR_TERRAFORM_TOOLTIP_INCREASE_SIZE_OF_LAND_AREA :{BLACK}Meningkatan penyebaran kawasan tanah untuk dinaikkan/diturunkan STR_TERRAFORM_TOOLTIP_DECREASE_SIZE_OF_LAND_AREA :{BLACK}Menurunkan penyebaran kawasan tanah untuk dinaikkan/diturunkan STR_TERRAFORM_TOOLTIP_GENERATE_RANDOM_LAND :{BLACK}Janakan tanah secara rawak @@ -2388,7 +2388,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Tanah dimiliki STR_ABOUT_OPENTTD :{WHITE}Tentang OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Hakcipta Asal {COPYRIGHT} 1995 Chris Sawyer, Hakcipta terpelihara STR_ABOUT_VERSION :{BLACK}OpenTTD versi {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Simpankan Permainan @@ -2579,7 +2579,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Amaran: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Kesilapan: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Bahaya: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Kesilapan NewGRF yang bahaya telah berlaku: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Kesilapan NewGRF yang bahaya telah berlaku:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} tidak akan berfungsi dengan versi TTDPatch seperti yang dilaporkan oleh OpenTTD. STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} adalah untuk TTD versi {STRING}. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} direkabentuk untuk digunakan bersama {STRING} diff --git a/src/lang/norwegian_bokmal.txt b/src/lang/norwegian_bokmal.txt index bf5d238caf..48a7428887 100644 --- a/src/lang/norwegian_bokmal.txt +++ b/src/lang/norwegian_bokmal.txt @@ -12,7 +12,7 @@ ##case small -# $Id: norwegian_bokmal.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: norwegian_bokmal.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -1120,9 +1120,9 @@ STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Spillinnstillin STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Spillinnstillinger (lagres i lagringsfilen; påvirker bare gjeldende spill) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Firmainnstillinger (lagres i lagringsfilen; påvirker bare nye spill) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Firmainnstillinger (lagret i lagringsfilen; påvirker bare gjeldende selskap) -STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK} Vis alle søkeresultater ved å sette {} {SILVER} kategori {BLACK} til {WHITE} {STRING} -STR_CONFIG_SETTING_TYPE_HIDES :{BLACK} Vis alle søkeresultater ved å sette {} {SILVER} type {BLACK} til {WHITE} alle innstillingstyper -STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK} Vis alle søkeresultater ved å sette {} {SILVER} kategori {BLACK} til {WHITE} {STRING} {BLACK} og {SILVER} type {BLACK} til {WHITE} alle innstillingstyper +STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK} Vis alle søkeresultater ved å sette{} {SILVER} kategori {BLACK} til {WHITE} {STRING} +STR_CONFIG_SETTING_TYPE_HIDES :{BLACK} Vis alle søkeresultater ved å sette{} {SILVER} type {BLACK} til {WHITE} alle innstillingstyper +STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK} Vis alle søkeresultater ved å sette{} {SILVER} kategori {BLACK} til {WHITE} {STRING} {BLACK} og {SILVER} type {BLACK} til {WHITE} alle innstillingstyper STR_CONFIG_SETTINGS_NONE :{WHITE}- Ingen - STR_CONFIG_SETTING_OFF :Av @@ -1922,7 +1922,7 @@ STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION_TOOLTIP :{BLACK}Kartstø STR_NETWORK_SERVER_LIST_DATE_CAPTION :{BLACK}Dato STR_NETWORK_SERVER_LIST_DATE_CAPTION_TOOLTIP :{BLACK}Gjeldende dato STR_NETWORK_SERVER_LIST_YEARS_CAPTION :{BLACK}År -STR_NETWORK_SERVER_LIST_YEARS_CAPTION_TOOLTIP :{BLACK}Antall år {}spillet pågår +STR_NETWORK_SERVER_LIST_YEARS_CAPTION_TOOLTIP :{BLACK}Antall år{}spillet pågår STR_NETWORK_SERVER_LIST_INFO_ICONS_TOOLTIP :{BLACK}Språk, tjenerversjon, osv. STR_NETWORK_SERVER_LIST_CLICK_GAME_TO_SELECT :{BLACK}Klikk på et spill i listen for å velge det @@ -2691,7 +2691,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Firma-eid lando STR_ABOUT_OPENTTD :{WHITE}Om OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Opprinnelig opphavsbeskyttet {COPYRIGHT} 1995 Chris Sawyer, Alle rettigheter reservert STR_ABOUT_VERSION :{BLACK}OpenTTD versjon {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD-teamet +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 OpenTTD-teamet # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Lagre spill @@ -2878,7 +2878,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Gå til STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Forrige sprite STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Fortsett til forrige normale sprite og hopp over enhver pseudo-/omfargings-/skrifttype- sprite, samt start om ved begynnelsen STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Forhåndsvisning av valgt sprite. Innrettingen ignoreres når spriten tegnes -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Flytt på spriten for å endre X- og Y-forskyvningene +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Flytt på ikonet for å endre X- og Y-forskyvningene. Ctrl+klikk for å flytte ikonet åtte enheter om gangen STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Tilbakestill relativt STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Nullstill de nåværende relative forskyvningene STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X forskyvning: {NUM}, Y forskyvning: {NUM} (Absolutt) @@ -2893,7 +2893,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Advarsel: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Feil: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatal: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}En fatal NewGRF-feil har oppstått: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}En fatal NewGRF-feil har oppstått:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} virker ikke med TTDPatch-versjonen som er rapportert av OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} er for versjon {STRING} av TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} er laget for bruk med {STRING} diff --git a/src/lang/norwegian_nynorsk.txt b/src/lang/norwegian_nynorsk.txt index 4ed3ebc064..3869f5278f 100644 --- a/src/lang/norwegian_nynorsk.txt +++ b/src/lang/norwegian_nynorsk.txt @@ -12,7 +12,7 @@ ##case small -# $Id: norwegian_nynorsk.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: norwegian_nynorsk.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2608,7 +2608,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Feltet eigast a STR_ABOUT_OPENTTD :{WHITE}Om OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Opphaveleg opphavsbeskytta av {COPYRIGHT} 1995 Chris Sawyer, Alle rettigheiter reservert STR_ABOUT_VERSION :{BLACK}OpenTTD versjon {REV}. Oversett til nynorsk av Thor Morten Skogrand med fleire. -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD-teamet +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 OpenTTD-teamet # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Lagre spel @@ -2806,7 +2806,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Åtvaring: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Feil: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatal: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ein fatal NewGRF-feil har oppstått: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ein fatal NewGRF-feil har oppstått:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} vil ikkje verke med den TTDPatch versjonen som OpenTTD oppgjer STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} er for {STRING} utgåva av TTD. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} er laga for å brukast saman med {STRING} diff --git a/src/lang/polish.txt b/src/lang/polish.txt index 4631f48cc9..eda2b86426 100644 --- a/src/lang/polish.txt +++ b/src/lang/polish.txt @@ -12,7 +12,7 @@ ##case d c b n m w -# $Id: polish.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: polish.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -1108,7 +1108,7 @@ STR_SMALLMAP_LEGENDA_SHIPS :{TINY_FONT}{BLA STR_SMALLMAP_LEGENDA_AIRCRAFT :{TINY_FONT}{BLACK}Samoloty STR_SMALLMAP_LEGENDA_TRANSPORT_ROUTES :{TINY_FONT}{BLACK}Trasy transportowe STR_SMALLMAP_LEGENDA_FOREST :{G=m}{TINY_FONT}{BLACK}Las -STR_SMALLMAP_LEGENDA_FOREST.d :{G=m}{TINY_FONT}{BLACK}Lasu +STR_SMALLMAP_LEGENDA_FOREST.d :{TINY_FONT}{BLACK}Lasu STR_SMALLMAP_LEGENDA_RAILROAD_STATION :{TINY_FONT}{BLACK}Stacja kolejowa STR_SMALLMAP_LEGENDA_TRUCK_LOADING_BAY :{TINY_FONT}{BLACK}Załadunek ciężarówek STR_SMALLMAP_LEGENDA_BUS_STATION :{TINY_FONT}{BLACK}Przystanek @@ -1914,7 +1914,7 @@ STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Uaktywnij okno STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Wyświetlaj okno wyboru typu semaforów do budowy, zamiast samego przełączania typu semafora bez okna z Ctrl+klik na zbudowanym semaforze STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Domyślny typ sygnalizatorów: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Domyślny typ semaforów -STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :sygnalizatory bloku +STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :sygnalizatory blokowe STR_CONFIG_SETTING_DEFAULT_SIGNAL_PBS :sygnalizatory jazdy STR_CONFIG_SETTING_DEFAULT_SIGNAL_PBSOWAY :sygnalizatory jazdy - jednokierunkowe STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES :Przełączaj typy sygnalizatorów: {STRING} @@ -3067,7 +3067,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Teren w posiada STR_ABOUT_OPENTTD :{WHITE}OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Prawa Autorskie {COPYRIGHT} 1995 Chris Sawyer, Wszelkie prawa zastrzeżone STR_ABOUT_VERSION :{BLACK}OpenTTD wersja {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 Zespół OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 Zespół OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Zapisz grę @@ -3254,7 +3254,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Idź do STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Poprzedni obrazek STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Idź do poprzedniego normalnego obrazka, pomijając jakiekolwiek pseudo/kolorowe/znakowe obrazki i zawijaj je od pierwszego do ostatniego STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Przedstawienie wybranego orbazka. Dostosowanie jest ignorowane podczas rysowania tego obrazka -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Poruszaj obrazkiem, zmieniając przesunięcia X i Y +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Poruszaj obrazkiem, zmieniając przesunięcia X i Y. Ctrl+klik aby przesunąć o 8 jednostek na raz. STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Resetuj zależność STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Resetuj aktualne offsety zależne STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X offset: {NUM}, Y offset: {NUM} (Całkowity) @@ -3269,7 +3269,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Ostrzeżenie: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Błąd: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Błąd krytyczny: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Wystąpił błąd krytyczny NewGRF: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Wystąpił błąd krytyczny NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} nie zadziała z wersją TTDPatcha zgłoszoną przez OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} jest przeznaczony dla TTD wersji {STRING} STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} jest zaprojektowany do użycia z {STRING} @@ -3899,17 +3899,17 @@ STR_DEPOT_SELL_CONFIRMATION_TEXT :{YELLOW}Sprzeda STR_ENGINE_PREVIEW_CAPTION :{WHITE}Wiadomość od producenta pojazdów STR_ENGINE_PREVIEW_MESSAGE :{GOLD}Właśnie zaprojektowaliśmy now{G y ą e} {STRING.b} - czy jesteś zainteresowany w rocznej wyłączności na użycie tego pojazdu, żebyśmy mogli zobaczyć przed wypuszczeniem na rynek jak się sprawuje? STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE :{G=f}lokomotywa -STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE.b :{G=f}lokomotywę +STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE.b :lokomotywę STR_ENGINE_PREVIEW_ROAD_VEHICLE :{G=m}pojazd -STR_ENGINE_PREVIEW_ROAD_VEHICLE.b :{G=m}pojazd +STR_ENGINE_PREVIEW_ROAD_VEHICLE.b :pojazd STR_ENGINE_PREVIEW_AIRCRAFT :{G=m}samolot -STR_ENGINE_PREVIEW_AIRCRAFT.b :{G=m}samolot +STR_ENGINE_PREVIEW_AIRCRAFT.b :samolot STR_ENGINE_PREVIEW_SHIP :{G=m}statek -STR_ENGINE_PREVIEW_SHIP.b :{G=m}statek +STR_ENGINE_PREVIEW_SHIP.b :statek STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE :{G=f}lokomotywa jednoszynowa -STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE.b :{G=f}lokomotywę jednoszynową +STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE.b :lokomotywę jednoszynową STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE :{G=f}lokomotywa Maglev -STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE.b :{G=f}lokomotywę Maglev +STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE.b :lokomotywę Maglev STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Koszt: {CURRENCY_LONG} Masa: {WEIGHT_SHORT}{}Prędkość: {VELOCITY} Moc: {POWER}{}Koszt utrzymania: {CURRENCY_LONG}/rok{}Ładowność: {CARGO_LONG} STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Koszt: {CURRENCY_LONG} Masa: {WEIGHT_SHORT}{}Prędkość: {VELOCITY} Moc: {POWER} Maksymalna siła pociągowa: {6:FORCE}{}Koszt utrzymania: {4:CURRENCY_LONG}/rok{}Ładowność: {5:CARGO_LONG} @@ -4898,79 +4898,79 @@ STR_TOWN_BUILDING_NAME_PIGGY_BANK_1 :Świnka-skarbon ##id 0x4800 # industry names STR_INDUSTRY_NAME_COAL_MINE :{G=f}Kopalnia węgla -STR_INDUSTRY_NAME_COAL_MINE.d :{G=f}kopalni węgla +STR_INDUSTRY_NAME_COAL_MINE.d :kopalni węgla STR_INDUSTRY_NAME_POWER_STATION :{G=f}Elektrownia -STR_INDUSTRY_NAME_POWER_STATION.d :{G=f}elektrowni +STR_INDUSTRY_NAME_POWER_STATION.d :elektrowni STR_INDUSTRY_NAME_SAWMILL :{G=m}Tartak -STR_INDUSTRY_NAME_SAWMILL.d :{G=m}tartaku +STR_INDUSTRY_NAME_SAWMILL.d :tartaku STR_INDUSTRY_NAME_FOREST :{G=m}Las -STR_INDUSTRY_NAME_FOREST.d :{G=m}lasu +STR_INDUSTRY_NAME_FOREST.d :lasu STR_INDUSTRY_NAME_OIL_REFINERY :{G=f}Rafineria -STR_INDUSTRY_NAME_OIL_REFINERY.d :{G=f}rafinerii +STR_INDUSTRY_NAME_OIL_REFINERY.d :rafinerii STR_INDUSTRY_NAME_OIL_RIG :{G=f}Platforma wiertnicza -STR_INDUSTRY_NAME_OIL_RIG.d :{G=f}platformy wiertniczej +STR_INDUSTRY_NAME_OIL_RIG.d :platformy wiertniczej STR_INDUSTRY_NAME_FACTORY :{G=f}Fabryka -STR_INDUSTRY_NAME_FACTORY.d :{G=f}fabryki +STR_INDUSTRY_NAME_FACTORY.d :fabryki STR_INDUSTRY_NAME_PRINTING_WORKS :{G=f}Drukarnia -STR_INDUSTRY_NAME_PRINTING_WORKS.d :{G=f}drukarni +STR_INDUSTRY_NAME_PRINTING_WORKS.d :drukarni STR_INDUSTRY_NAME_STEEL_MILL :{G=f}Huta -STR_INDUSTRY_NAME_STEEL_MILL.d :{G=f}huty +STR_INDUSTRY_NAME_STEEL_MILL.d :huty STR_INDUSTRY_NAME_FARM :{G=f}Farma -STR_INDUSTRY_NAME_FARM.d :{G=f}farmy +STR_INDUSTRY_NAME_FARM.d :farmy STR_INDUSTRY_NAME_COPPER_ORE_MINE :{G=f}Kopalnia rudy miedzi -STR_INDUSTRY_NAME_COPPER_ORE_MINE.d :{G=f}kopalni rudy miedzi +STR_INDUSTRY_NAME_COPPER_ORE_MINE.d :kopalni rudy miedzi STR_INDUSTRY_NAME_OIL_WELLS :{G=m}Pole naftowe -STR_INDUSTRY_NAME_OIL_WELLS.d :{G=m}pola naftowego +STR_INDUSTRY_NAME_OIL_WELLS.d :pola naftowego STR_INDUSTRY_NAME_BANK :{G=m}Bank -STR_INDUSTRY_NAME_BANK.d :{G=m}banku +STR_INDUSTRY_NAME_BANK.d :banku STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT :{G=f}Przetwórnia żywności -STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.d :{G=f}przetwórni żywności +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.d :przetwórni żywności STR_INDUSTRY_NAME_PAPER_MILL :{G=m}Zakład papierniczy -STR_INDUSTRY_NAME_PAPER_MILL.d :{G=m}zakładu papierniczego +STR_INDUSTRY_NAME_PAPER_MILL.d :zakładu papierniczego STR_INDUSTRY_NAME_GOLD_MINE :{G=f}Kopalnia złota -STR_INDUSTRY_NAME_GOLD_MINE.d :{G=f}kopalni złota +STR_INDUSTRY_NAME_GOLD_MINE.d :kopalni złota STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC :{G=m}Bank -STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.d :{G=m}banku +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.d :banku STR_INDUSTRY_NAME_DIAMOND_MINE :{G=f}Kopalnia diamentów -STR_INDUSTRY_NAME_DIAMOND_MINE.d :{G=f}kopalni diamentów +STR_INDUSTRY_NAME_DIAMOND_MINE.d :kopalni diamentów STR_INDUSTRY_NAME_IRON_ORE_MINE :{G=f}Kopalnia rudy żelaza -STR_INDUSTRY_NAME_IRON_ORE_MINE.d :{G=f}kopalni rudy żelaza +STR_INDUSTRY_NAME_IRON_ORE_MINE.d :kopalni rudy żelaza STR_INDUSTRY_NAME_FRUIT_PLANTATION :{G=f}Plantacja owoców -STR_INDUSTRY_NAME_FRUIT_PLANTATION.d :{G=f}plantacji owoców +STR_INDUSTRY_NAME_FRUIT_PLANTATION.d :plantacji owoców STR_INDUSTRY_NAME_RUBBER_PLANTATION :{G=f}Plantacja kauczuku -STR_INDUSTRY_NAME_RUBBER_PLANTATION.d :{G=f}plantacji kauczuku +STR_INDUSTRY_NAME_RUBBER_PLANTATION.d :plantacji kauczuku STR_INDUSTRY_NAME_WATER_SUPPLY :{G=n}Ujęcie wody -STR_INDUSTRY_NAME_WATER_SUPPLY.d :{G=n}ujęcia wody +STR_INDUSTRY_NAME_WATER_SUPPLY.d :ujęcia wody STR_INDUSTRY_NAME_WATER_TOWER :{G=f}Wieża ciśnień -STR_INDUSTRY_NAME_WATER_TOWER.d :{G=f}wieży ciśnień +STR_INDUSTRY_NAME_WATER_TOWER.d :wieży ciśnień STR_INDUSTRY_NAME_FACTORY_2 :{G=f}Fabryka -STR_INDUSTRY_NAME_FACTORY_2.d :{G=f}fabryki +STR_INDUSTRY_NAME_FACTORY_2.d :fabryki STR_INDUSTRY_NAME_FARM_2 :{G=f}Farma -STR_INDUSTRY_NAME_FARM_2.d :{G=f}farmy +STR_INDUSTRY_NAME_FARM_2.d :farmy STR_INDUSTRY_NAME_LUMBER_MILL :{G=m}Tartak -STR_INDUSTRY_NAME_LUMBER_MILL.d :{G=m}tartaku +STR_INDUSTRY_NAME_LUMBER_MILL.d :tartaku STR_INDUSTRY_NAME_COTTON_CANDY_FOREST :{G=m}Las waty cukrowej -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.d :{G=m}lasu waty cukrowej +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.d :lasu waty cukrowej STR_INDUSTRY_NAME_CANDY_FACTORY :{G=m}Zakład cukierniczy -STR_INDUSTRY_NAME_CANDY_FACTORY.d :{G=m}zakładu cukierniczego +STR_INDUSTRY_NAME_CANDY_FACTORY.d :zakładu cukierniczego STR_INDUSTRY_NAME_BATTERY_FARM :{G=f}Farma baterii -STR_INDUSTRY_NAME_BATTERY_FARM.d :{G=f}farmy baterii +STR_INDUSTRY_NAME_BATTERY_FARM.d :farmy baterii STR_INDUSTRY_NAME_COLA_WELLS :{G=f}Studnia coli -STR_INDUSTRY_NAME_COLA_WELLS.d :{G=f}studni coli +STR_INDUSTRY_NAME_COLA_WELLS.d :studni coli STR_INDUSTRY_NAME_TOY_SHOP :{G=m}Sklep z zabawkami -STR_INDUSTRY_NAME_TOY_SHOP.d :{G=m}sklepu z zabawkami +STR_INDUSTRY_NAME_TOY_SHOP.d :sklepu z zabawkami STR_INDUSTRY_NAME_TOY_FACTORY :{G=f}Fabryka zabawek -STR_INDUSTRY_NAME_TOY_FACTORY.d :{G=f}fabryki zabawek +STR_INDUSTRY_NAME_TOY_FACTORY.d :fabryki zabawek STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS :{G=f}Fontanny plastiku -STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.d :{G=f}fontann plastiku +STR_INDUSTRY_NAME_PLASTIC_FOUNTAINS.d :fontann plastiku STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY :{G=f}Fabryka napojów gazowanych -STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.d :{G=f}fabryki napojów gazowanych +STR_INDUSTRY_NAME_FIZZY_DRINK_FACTORY.d :fabryki napojów gazowanych STR_INDUSTRY_NAME_BUBBLE_GENERATOR :{G=m}Generator bąbelków -STR_INDUSTRY_NAME_BUBBLE_GENERATOR.d :{G=m}generatora bąbelków +STR_INDUSTRY_NAME_BUBBLE_GENERATOR.d :generatora bąbelków STR_INDUSTRY_NAME_TOFFEE_QUARRY :{G=f}Odkrywka toffi -STR_INDUSTRY_NAME_TOFFEE_QUARRY.d :{G=f}odkrywkę toffi +STR_INDUSTRY_NAME_TOFFEE_QUARRY.d :odkrywkę toffi STR_INDUSTRY_NAME_SUGAR_MINE :{G=f}Kopalnia cukru -STR_INDUSTRY_NAME_SUGAR_MINE.d :{G=f}kopalni cukru +STR_INDUSTRY_NAME_SUGAR_MINE.d :kopalni cukru ############ WARNING, using range 0x6000 for strings that are stored in the savegame ############ These strings may never get a new id, or savegames will break! diff --git a/src/lang/portuguese.txt b/src/lang/portuguese.txt index 717ec2744f..01dba8d15b 100644 --- a/src/lang/portuguese.txt +++ b/src/lang/portuguese.txt @@ -11,7 +11,7 @@ ##gender n m f mp fp -# $Id: portuguese.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: portuguese.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -1664,8 +1664,10 @@ STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Localiz STR_CONFIG_SETTING_SOUND :{ORANGE}Efeitos sonoros STR_CONFIG_SETTING_INTERFACE :{ORANGE}Interface STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}Construção +STR_CONFIG_SETTING_COMPANY :{ORANGE}Empresa STR_CONFIG_SETTING_VEHICLES :{ORANGE}Veículos STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Em rota +STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Desastres / Acidentes STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Cidades STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Industrias STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Distribuição de Carga @@ -2671,7 +2673,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terreno proprie STR_ABOUT_OPENTTD :{WHITE}Sobre o OpenTTD... STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Direitos de autor originais {COPYRIGHT} 1995 Chris Sawyer, Todos os direitos reservados STR_ABOUT_VERSION :{BLACK}OpenTTD versão {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 A equipa do OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 A equipa do OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Guardar Jogo @@ -2869,7 +2871,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Aviso: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Erro: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatal: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ocorreu um erro fatal num NewGRF: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ocorreu um erro fatal num NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} não funciona com a versão do TTDPatch reportada por OpenTTD. STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} é para a versão {STRING} do TTD. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} foi concebido para ser usado com {STRING} diff --git a/src/lang/romanian.txt b/src/lang/romanian.txt index a3ce21c293..11ee3c5a89 100644 --- a/src/lang/romanian.txt +++ b/src/lang/romanian.txt @@ -10,7 +10,7 @@ ##grflangid 0x28 -# $Id: romanian.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: romanian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2633,7 +2633,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Teren în propr STR_ABOUT_OPENTTD :{WHITE}Despre OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright original {COPYRIGHT} 1995 Chris Sawyer, Toate drepturile rezervate STR_ABOUT_VERSION :{BLACK}OpenTTD versiunea {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Echipa OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 Echipa OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Salvează joc @@ -2824,7 +2824,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Atenţie: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Eroare: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatal: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}O eroare fatală NewGRF a avut loc: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}O eroare fatală NewGRF a avut loc:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} nu va funcţiona cu versiunea TTDPatch raportată de OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} este pentru versiunea {STRING} a TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} este conceput pentru a fi folosit cu {STRING} @@ -3189,7 +3189,7 @@ STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}Vinde 25 STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :Noul nume al companiei STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Noul nume al preşedintelui -STR_BUY_COMPANY_MESSAGE :{WHITE}Căutăm o companie de transport care să preia societatea noastră {}{}Doriţi să cumpăraţi {COMPANY} la preţul de {CURRENCY_LONG}? +STR_BUY_COMPANY_MESSAGE :{WHITE}Căutăm o companie de transport care să preia societatea noastră{}{}Doriţi să cumpăraţi {COMPANY} la preţul de {CURRENCY_LONG}? # Company infrastructure window STR_COMPANY_INFRASTRUCTURE_VIEW_CAPTION :{WHITE}Infrastructura {COMPANY} diff --git a/src/lang/russian.txt b/src/lang/russian.txt index 90a68a35af..2997e0be13 100644 --- a/src/lang/russian.txt +++ b/src/lang/russian.txt @@ -12,7 +12,7 @@ ##case m f n p nom gen dat acc abl pre -# $Id: russian.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: russian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2064,7 +2064,7 @@ STR_NETWORK_SERVER_LIST_GAME_NAME :{BLACK}Назв STR_NETWORK_SERVER_LIST_GAME_NAME_TOOLTIP :{BLACK}Название игры STR_NETWORK_SERVER_LIST_GENERAL_ONLINE :{BLACK}{COMMA}/{COMMA} - {COMMA}/{COMMA} STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION :{BLACK}Клиенты -STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION_TOOLTIP :{BLACK}Клиентов сейчас/макс. {}Компаний сейчас/макс. +STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION_TOOLTIP :{BLACK}Клиентов сейчас/макс.{}Компаний сейчас/макс. STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT :{BLACK}{COMMA}x{COMMA} STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION :{BLACK}Размер карты STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION_TOOLTIP :{BLACK}Размер карты игры{}Нажмите для сортировки по площади @@ -2387,29 +2387,29 @@ STR_CONTENT_NO_ZLIB_SUB :{WHITE}... за # Order of these is important! STR_CONTENT_TYPE_BASE_GRAPHICS :{G=m}Базовая графика -STR_CONTENT_TYPE_BASE_GRAPHICS.gen :{G=m}набора базовой графики -STR_CONTENT_TYPE_BASE_GRAPHICS.acc :{G=m}набор базовой графики +STR_CONTENT_TYPE_BASE_GRAPHICS.gen :набора базовой графики +STR_CONTENT_TYPE_BASE_GRAPHICS.acc :набор базовой графики STR_CONTENT_TYPE_NEWGRF :{G=m}NewGRF -STR_CONTENT_TYPE_NEWGRF.gen :{G=m}NewGRF -STR_CONTENT_TYPE_NEWGRF.acc :{G=m}NewGRF +STR_CONTENT_TYPE_NEWGRF.gen :NewGRF +STR_CONTENT_TYPE_NEWGRF.acc :NewGRF STR_CONTENT_TYPE_AI :{G=m}ИИ -STR_CONTENT_TYPE_AI.gen :{G=m}ИИ -STR_CONTENT_TYPE_AI.acc :{G=m}ИИ +STR_CONTENT_TYPE_AI.gen :ИИ +STR_CONTENT_TYPE_AI.acc :ИИ STR_CONTENT_TYPE_AI_LIBRARY :{G=f}Библиотека ИИ -STR_CONTENT_TYPE_AI_LIBRARY.gen :{G=f}библиотеки ИИ -STR_CONTENT_TYPE_AI_LIBRARY.acc :{G=f}библиотеку ИИ +STR_CONTENT_TYPE_AI_LIBRARY.gen :библиотеки ИИ +STR_CONTENT_TYPE_AI_LIBRARY.acc :библиотеку ИИ STR_CONTENT_TYPE_SCENARIO :{G=m}Сценарий -STR_CONTENT_TYPE_SCENARIO.gen :{G=m}сценария -STR_CONTENT_TYPE_SCENARIO.acc :{G=m}сценарий +STR_CONTENT_TYPE_SCENARIO.gen :сценария +STR_CONTENT_TYPE_SCENARIO.acc :сценарий STR_CONTENT_TYPE_HEIGHTMAP :{G=f}Карта высот -STR_CONTENT_TYPE_HEIGHTMAP.gen :{G=f}карты высот -STR_CONTENT_TYPE_HEIGHTMAP.acc :{G=f}карту высот +STR_CONTENT_TYPE_HEIGHTMAP.gen :карты высот +STR_CONTENT_TYPE_HEIGHTMAP.acc :карту высот STR_CONTENT_TYPE_BASE_SOUNDS :Основные звуки -STR_CONTENT_TYPE_BASE_SOUNDS.gen :{G=m}набора базовых звуков -STR_CONTENT_TYPE_BASE_SOUNDS.acc :{G=m}набор базовых звуков +STR_CONTENT_TYPE_BASE_SOUNDS.gen :набора базовых звуков +STR_CONTENT_TYPE_BASE_SOUNDS.acc :набор базовых звуков STR_CONTENT_TYPE_BASE_MUSIC :{G=f}Музыка -STR_CONTENT_TYPE_BASE_MUSIC.gen :{G=f}музыки -STR_CONTENT_TYPE_BASE_MUSIC.acc :{G=f}музыку +STR_CONTENT_TYPE_BASE_MUSIC.gen :музыки +STR_CONTENT_TYPE_BASE_MUSIC.acc :музыку STR_CONTENT_TYPE_GAME_SCRIPT :Игровой скрипт STR_CONTENT_TYPE_GS_LIBRARY :Библиотека ИС @@ -2867,7 +2867,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Земля в STR_ABOUT_OPENTTD :{WHITE}Об OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Оригинальные авторские права {COPYRIGHT} 1995 Chris Sawyer. Все права защищены. STR_ABOUT_VERSION :{BLACK}OpenTTD версия {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Команда разработчиков OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 Команда разработчиков OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Сохранить игру @@ -3054,7 +3054,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Пере STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Предыдущий спрайт STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Перейти к предыдущему нормальному спрайту, пропуская изменяющие цвет, шрифтовые, псевдоспрайты. Переход из начала списка к последнему спрайту. STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Представление выбранного спрайта. Выравнивание не учитывается при прорисовке этого спрайта. -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Двигайте спрайт, изменяя смещение по X и по Y +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Двигайте спрайт, изменяя смещение по осям X и Y. С помощью Ctrl+щелчка можно сдвигать спрайты на 8 единиц. STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Сброс смещения STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Сбросить значения относительного смещения STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Смещение X: {NUM}; смещение Y: {NUM} (абсолютное) @@ -3094,7 +3094,7 @@ STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Недопус # NewGRF related 'general' warnings STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}Осторожно! -STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Вы модифицируете запущенную игру - это может закрыть OpenTTD или привести к нестабильной работе. Не присылайте отчёты с ошибками в этом случае.{}Вы действительно хотите это сделать? +STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Вы собираетесь внести изменения в запущенную игру; это может привести к нестабильной работе или к аварийному завершению OpenTTD. В этом случае не надо присылать отчёты с ошибками.{}Вы действительно хотите это сделать? STR_NEWGRF_DUPLICATE_GRFID :{WHITE}Невозможно добавить файл: дублируются GRF ID STR_NEWGRF_COMPATIBLE_LOADED :{ORANGE}Соответствующий файл не найден (загружен совместимый GRF) diff --git a/src/lang/serbian.txt b/src/lang/serbian.txt index 2f8dab9b48..840e3ffd72 100644 --- a/src/lang/serbian.txt +++ b/src/lang/serbian.txt @@ -12,7 +12,7 @@ ##case nom big gen dat aku vok lok ins -# $Id: serbian.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: serbian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -511,6 +511,7 @@ STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Prikaži STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Prikaži spisak svih stanica preduzeća STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Prikaži finansijsko stanje preduzeća STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Prikaži opšte podatke preduzeća +STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Prikaži priču STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Pokaži listu ciljeva STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Prikaži grafikone STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Prikaži tabele lige preduzeća @@ -585,6 +586,7 @@ STR_FILE_MENU_EXIT :Izađi # map menu STR_MAP_MENU_MAP_OF_WORLD :Karta sveta STR_MAP_MENU_EXTRA_VIEW_PORT :Dodatno gledište +STR_MAP_MENU_LINGRAPH_LEGEND :Legenda protoka tereta STR_MAP_MENU_SIGN_LIST :Lista Znakova ############ range for town menu starts @@ -896,6 +898,7 @@ STR_SMALLMAP_CAPTION :{WHITE}Karta - STR_SMALLMAP_TYPE_CONTOURS :Reljef STR_SMALLMAP_TYPE_VEHICLES :Vozila STR_SMALLMAP_TYPE_INDUSTRIES :Fabrike +STR_SMALLMAP_TYPE_ROUTEMAP :Protok tereta STR_SMALLMAP_TYPE_ROUTES :Rute STR_SMALLMAP_TYPE_VEGETATION :Vegetacija STR_SMALLMAP_TYPE_OWNERS :Vlasnici @@ -908,6 +911,7 @@ STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Prikazuj STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Prikazuje vlasništva na karti STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Klikom na industriju se prikazuju/ne prikazuju njene fabrike. Ctrl+Klik prikazuje fabrike samo odabrane. Sa ponovnim Ctrl+Klik prikazuju se fabrike svih industrija STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Klikom na preduzeće se prikazuje/ne prikazuje njeno vlasništvo. Ctrl+Klik prikazuje vlasništvo samo odabranog. Sa ponovnim Ctrl+Klik prikazuju se vlasništva svih preduzeća +STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Klikom na teret se prikazuje/neprikazuje vlasnik tereta. Ctrl+Klik onemogućava sve terete osim odabranog. Sa ponovnim Ctrl+Klik omogućava sve terete. STR_SMALLMAP_LEGENDA_ROADS :{TINY_FONT}{BLACK}Putevi STR_SMALLMAP_LEGENDA_RAILROADS :{TINY_FONT}{BLACK}Pruge @@ -1035,6 +1039,7 @@ STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}{VEHICLE} ima neodređenu naredbu STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}{VEHICLE} ima dupliciranu naredbu STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}{VEHICLE} ima neodgovarajuću stanicu u naredbi +STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}{VEHICLE} ima u naredbama aerodrom sa prekratkom pistom STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE} zastareva STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}{VEHICLE} previše zastareva @@ -1292,6 +1297,8 @@ STR_CONFIG_SETTING_TYPE_GAME_INGAME :Podešavanja ig STR_CONFIG_SETTING_TYPE_COMPANY_MENU :Podešavanja preduzeća (čuvaju se prilikom snimanja; utiču samo na nove igre) STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :Podešavanja preduzeća (čuvaju se prilikom snimanja; utiču samo tekuće preduzeće) +STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategorija: +STR_CONFIG_SETTING_RESTRICT_TYPE :{BLACK}Vrsta: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}Ograničava donju listu tako da prikazuje samo promenjena podešavanja STR_CONFIG_SETTING_RESTRICT_BASIC :Osnovna podešavanja STR_CONFIG_SETTING_RESTRICT_ADVANCED :Napredna podešavanja @@ -1306,6 +1313,10 @@ STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Podešavanja ig STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Podešavanja igre (biće uskladištena u sačuvanoj igri; ima efekta samo na nove partije) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Kompanijska podešavanja (biće uskladištena u sačuvanoj igri; ima efekta samo na nove partije) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Podešavanja kompanije (uskladištena u sačuvanoj igri; utiču samo na trenutnu kompaniju) +STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}Prikaži sve rezultate pretrage po postavkama{}{SILVER}Kategorija {BLACK}do {WHITE}{STRING} +STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Pokaži sve rezultate pretrage prema postavkama{}{SILVER}Tip {BLACK}do {WHITE} Svi tipovi postavki +STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Prikaži sve rezultate pretrage po postavkama{}{SILVER}Kategorija {BLACK}do {WHITE}{STRING} {BLACK}i {SILVER}Tip {BLACK}do {WHITE}Svi tipovi postavki +STR_CONFIG_SETTINGS_NONE :{WHITE}- Nema - STR_CONFIG_SETTING_OFF :Ne STR_CONFIG_SETTING_ON :Da @@ -1464,23 +1475,40 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Trajanje poruke STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Trajanje prikazivanja poruka o greškama u crvenom prozoru. Neke (kritične) poruke o greškama se ne zatvaraju automatski posle ovog vremena nego moraju da se zatvore ručno STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} sekund{P a e i} STR_CONFIG_SETTING_HOVER_DELAY :Prikaži poruke u balončićima: {STRING} +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Odgoda pre prikaza objašnjenja alata kada se miš postavi iznad nekog elementa interfejsa. Alternativno, objašnjenja alata se mogu vezati uz desnu dugmetom na mišu kada je ova vrednost postavljena na 0. +STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Lebdi na {COMMA} milisekund{P 0 u i i} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Desni klik STR_CONFIG_SETTING_POPULATION_IN_LABEL :Prikazivati br. stanovnika pored naziva naselja: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Prikazuje broj stanovnika naselja na njihovoj oznaci na karti STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Debljina linija u grafikonima: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Širina linije na grafiku. Tanka linija je preciznija a debelu je lakše videti i lakše je razlikovati boje +STR_CONFIG_SETTING_LANDSCAPE :Reljef:{STRING} +STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Tereni definišu osnovne scenarije za igru sa različitim teretima i zahtevima za rast gradova. NewGRFovi i skripte igre omogućavaju detaljnije kontrole i postavke. STR_CONFIG_SETTING_LAND_GENERATOR :Oblikovanje reljefa: {STRING} +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :Originalni generator zavisi o baznom grafičkom setu i komponuje fiksne oblike u terenu. TerraGenesis je generator zasnovan na Perlinu sa detaljnijim podešavanjima i kontrolama STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Originalno STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis +STR_CONFIG_SETTING_TERRAIN_TYPE :Vrsta terena: {STRING} +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(Samo TerraGenesis) Brdovitost terena +STR_CONFIG_SETTING_INDUSTRY_DENSITY :Gustoća industrije: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Odaberite koliko industrije treba da se generiše i koji nivo treba da se održava tokom igre STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Najveće rastojanje od ivice za Rafinerije Nafte: {STRING} +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Rafinerije nafte se grade samo u blizini ivice karte, to jest uz obalu za otočne karte STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Nivo snežnog pokrivača: {STRING} +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Odredite na kojoj visini počinje sneg u subarktičkoj klimi. Sneg takođe utiče na stvaranje industrija i uslove rasta gradova STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Vrste terena (samo za TerraGenesis) : {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Samo TerraGenesis) Odaberite učestalost brda: Blaži tereni imaju rjeđa, ali šira brda. Teži tereni imaju mnogo brda koja bi mogla da izgledaju kao da se ponavljaju STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Ravnomerna STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Malo valovita STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Valovita STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Vrlo valovita +STR_CONFIG_SETTING_VARIETY :Raznolikost distribucije: {STRING} +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(Samo TerraGenesis) Odredite da li će karta sadržavati i planinska i ravna područja. Kako ovo čini kartu još ravnijom, ostale bi postavke trebale biti postavljene na planinske. +STR_CONFIG_SETTING_RIVER_AMOUNT :Količina reka: {STRING} +STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Izaberite količinu generiranih reka STR_CONFIG_SETTING_TREE_PLACER :Posađivanje drveća: {STRING} +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Odaberite distribuciju drveća ma karti: 'Originalno' sadi drveće ravnomerno, 'Poboljšano2 sadi drveće u grupama STR_CONFIG_SETTING_TREE_PLACER_NONE :Nikakav STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Originalni STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Unapređen @@ -1493,22 +1521,30 @@ STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Visina ravnog t STR_CONFIG_SETTING_EDGES_NOT_EMPTY :{WHITE}Jedan ili više sektora na severnoj ivici nije prazan STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Jedan ili više sektora na jednoj od ivica nije voda +STR_CONFIG_SETTING_STATION_SPREAD :Maksimalna rasprostranjenost stanice: {STRING} +STR_CONFIG_SETTING_STATION_SPREAD_HELPTEXT :Maksimalna površina na kojoj mogu biti delovi jedne stanice. Imajte na umur da će visoke vrednosti usporiti igru STR_CONFIG_SETTING_SERVICEATHELIPAD :Automatsko servisiranje helikoptera na heliodromima: {STRING} STR_CONFIG_SETTING_SERVICEATHELIPAD_HELPTEXT :Servisiraj helikoptere posle svakog sletanja, čak i kada nema depoa na aerodromu STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR :Poveži traku alatki za reljef sa železničkim/drumskim/brodskim/avionskim trakama: {STRING} +STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR_HELPTEXT :Kada se otvara alatna traka za građenje neke vrste transporta, istodobno se otvara i alatna traka za oblikovanje terena STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR :Boja tla na karti: {STRING} STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_HELPTEXT :Boja terena na karti STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_GREEN :Zelena STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_DARK_GREEN :Tamno zelena STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :Ljubičasta STR_CONFIG_SETTING_REVERSE_SCROLLING :Suprotan smer pomeranja prozora: {STRING} +STR_CONFIG_SETTING_REVERSE_SCROLLING_HELPTEXT :Ponašanje kod skrolovanja karte desnim dugmetom miša. Kada je isključeno, miš pomiče kameru. Kada je uključeno, miš pomiče kartu STR_CONFIG_SETTING_SMOOTH_SCROLLING :Ravnomeran prelaz prozora: {STRING} +STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Odredi kako se glavni prikaz pomiče na određeno mesto kada se klikne na malu kartu ili kada se daje naredba za pomicanje na određeni objekat na karti. Ako je omogućeno, prikaz se pomiče glatko, ako je onemogućeno, prikaz izravno skače na ciljano mesto STR_CONFIG_SETTING_MEASURE_TOOLTIP :Prikazivati mere dok se koriste alati za gradnju: {STRING} +STR_CONFIG_SETTING_MEASURE_TOOLTIP_HELPTEXT :Prikaži udaljenost u poljima i visinsku razliku kod povlačenja prilikom gradnje STR_CONFIG_SETTING_LIVERIES :Prikazivati boje preduzeća: {STRING} +STR_CONFIG_SETTING_LIVERIES_HELPTEXT :Kontroliraj korišćenje boja tipa vozila za određena vozila (u suprotnosti sa bojama tvrtke) STR_CONFIG_SETTING_LIVERIES_NONE :Ne STR_CONFIG_SETTING_LIVERIES_OWN :Samo sopstvene STR_CONFIG_SETTING_LIVERIES_ALL :Svih STR_CONFIG_SETTING_PREFER_TEAMCHAT :Slanje poruka svojoj ekipi sa : {STRING} +STR_CONFIG_SETTING_PREFER_TEAMCHAT_HELPTEXT :Prebacivanje vezivanja internog i javnog razgovora preduzeća na to jest STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING :Uloga točkića na mišu: {STRING} STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING_HELPTEXT :Omogući skrolovanje sa dvodimenzionalnim točkićima na mišu STR_CONFIG_SETTING_SCROLLWHEEL_ZOOM :Promena uvećanja terena @@ -1517,18 +1553,23 @@ STR_CONFIG_SETTING_SCROLLWHEEL_OFF :Nikakva STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER :Osetljivost točkića: {STRING} STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER_HELPTEXT :Kontroliše osetljivost skrolovanja preko točkića na mišu STR_CONFIG_SETTING_OSK_ACTIVATION :Tastatura na ekranu: {STRING} +STR_CONFIG_SETTING_OSK_ACTIVATION_HELPTEXT :Odaberite način upotrebe tastature na ekranu za unos teksta u polja korištenjem samo pokazivača. Ovo je namenjeno malim uređajima bez fizičke tastature STR_CONFIG_SETTING_OSK_ACTIVATION_DISABLED :Onemogućeno STR_CONFIG_SETTING_OSK_ACTIVATION_DOUBLE_CLICK :Dupli klik STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK_FOCUS :Klik (ako je u fokusu) STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK :Klik (odmah) STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU :Oponašanje desnog klika: {STRING} +STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_HELPTEXT :Odaberite metodu imitiranja klika na desnu dirku miša STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_COMMAND :Command+Klik STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_CONTROL :Ctrl+Klik STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :Nikakvo STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Pomeranje sa levim klikom: {STRING} +STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING_HELPTEXT :Omogući skrolovanje po mapi povlačenjem mape sa levim dugmetom miša. Ovo je posebno korisno kod skrolovanja na ekranima na dodir +STR_CONFIG_SETTING_AUTOSAVE :Autočuvanje: {STRING} +STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Izbor vremenskog intervala između dve automatski sačuvane pozicije STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Koristiti {STRING} oblik datuma u nazivima sačuvanih partija STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Format datuma u imenima fajlova sačuvanih partija @@ -1537,24 +1578,34 @@ STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_SHORT :kratak (31-12-2 STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_ISO :ISO (2008-12-31) STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME :Pauzirati odmah po pokretanju nove partije : {STRING} +STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME_HELPTEXT :Kada je omogućeno, igra će se automatski pauzirati kada počinjete novu partiju, omogućavajući bolje proučavanje karte STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL :Tokom pauze dozvoljene su: {STRING} +STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_HELPTEXT :Odabir akcija koje mogu biti vršene za vreme pauze STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_NO_ACTIONS :nikakve aktivnosti STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_CONSTRUCTION :sve negrađevinske aktivnosti STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_NON_LANDSCAPING :sve aktivnosti sem izmene reljefa STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL_ALL_ACTIONS :sve aktivnosti STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS :Koristiti napredan spisak vozila: {STRING} +STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_HELPTEXT :Omogući upotrebu naprednih lista vozila za grupisanje vozila STR_CONFIG_SETTING_LOADING_INDICATORS :Koristiti pokazatelj utovarivanja: {STRING} +STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT :Izbor da li će biti prikazani indikatori utovara i istovara iznad vozila STR_CONFIG_SETTING_TIMETABLE_IN_TICKS :Prikazati red vožnje u diskretnim otkucajima: {STRING} +STR_CONFIG_SETTING_TIMETABLE_IN_TICKS_HELPTEXT :Prikaži vreme putovanja u redu vožnje u diskretnim otkucajima umesto u danima STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE :Prikazivanje polaska i dolaska u rasporedima: {STRING} +STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE_HELPTEXT :Prikazivanje očekivanog vremena dolaska i odlaska u rasporedima STR_CONFIG_SETTING_QUICKGOTO :Zadržati aktivno 'Idi do' dugme: {STRING} +STR_CONFIG_SETTING_QUICKGOTO_HELPTEXT :Pred-odaberi kursor naredbe "otiđi na" kod otvaranja prozora s naredbama STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE :Podešena vrsta pruge (posle učitavanja/nove partije): {STRING} +STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_HELPTEXT :Vrsta željeznice koja će biti odabrana prilikom pokretanja ili učitavanja igre. "Prva dostupna" odabire najstariju vrstu, "zadnja dostupna" odabire najnoviju vrstu, "najčešće korištena" odabire vrstu koja je trenutno najviše u upotrebi STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST :Prva dostupna STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_LAST :Zadnja dostupna STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_MOST_USED :Najčešće korišćena STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION :Prikazivati rezervisane pruge: {STRING} +STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION_HELPTEXT :Prikaži rezervisane pruge u drugoj boji kako bi se olakšalo rešavanje problema sa vozovima koji ne žele ući u određenu deonicu puta STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Zadržati aktivne alate za gradnju posle upotrebe: {STRING} STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Ostavi alate za gradnju mostova, tunela itd. otvorene nakon korišćenja STR_CONFIG_SETTING_EXPENSES_LAYOUT :Grupisati troškove u finansijskom prozoru preduzeća: {STRING} +STR_CONFIG_SETTING_EXPENSES_LAYOUT_HELPTEXT :Odredi izgled prozora troškova tvrtke STR_CONFIG_SETTING_SOUND_TICKER :Telegrafski zvuk: {STRING} STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Reprodukuj zvučne efekte pri prikazu sažetih novinskih poruka @@ -1574,6 +1625,7 @@ STR_CONFIG_SETTING_SOUND_AMBIENT :Okruženje: {ST STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Reprodukuj ambijentalne zvučne efekte za teren, industrije i gradove STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Onemogućena izgradnja infrastrukture kada nema odgovarajućih vozila: {STRING} +STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Ako je omogućeno, infrastruktura je dostupna samo ako su dostupna i vozila, sprečavajući troškove vremena i novca na neupotrebljivu infrastrukturu STR_CONFIG_SETTING_MAX_TRAINS :Najviše vozova po preduzeću: {STRING} STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT :Najveći broj vozova koje preduzeće može da ima STR_CONFIG_SETTING_MAX_ROAD_VEHICLES :Najviše drumskih vozila po preduzeću: {STRING} @@ -1606,14 +1658,21 @@ STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Najveći broj k STR_CONFIG_SETTING_SERVINT_ISPERCENT :Intervali servisiranja u procentima: {STRING} STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Da li se intervali servisiranja vozila okidaju vremenom proteklim od prošlog servisiranja ili padom pouzdanosti za određeni procenat u odnosu na najveću pouzdanost STR_CONFIG_SETTING_SERVINT_TRAINS :Podrazumevani servisni interval za vozove: {STRING} +STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Podrazumevani servisni interval za nove vozove, ako nema zadanog servisnog intervala za vozilo STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA} dan{P 0 "" a a}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Onemogućeno STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Podrazumevani servisni interval za drumska vozila: {STRING} +STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Postavite podrazumevani servisni interval za drumska vozila, ako nema zadanog servisnog intervala za vozilo STR_CONFIG_SETTING_SERVINT_AIRCRAFT :Podrazumevani servisni interval za letilice: {STRING} +STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Postavite podrazumevani servisni interval za avione, ako nema zadanog servisnog intervala za vozilo STR_CONFIG_SETTING_SERVINT_SHIPS :Podrazumevani servisni interval za brodove: {STRING} +STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Postavite podrazumevani servisni interval za nove brodove, ako nema zadanog servisnog intervala za vozilo STR_CONFIG_SETTING_NOSERVICE :Isključeno servisiranje kada ne postoje kvarovi: {STRING} +STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Kada je uključeno, vozila se ne servisiraju ako ne mogu da se pokvare STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Uključeno ograničenje brzine kod vagona: {STRING} +STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT :Kada je omogućeno, takođe upotrebi ograničenje brzine vagona za određivanje maksimalne brzine voza STR_CONFIG_SETTING_DISABLE_ELRAILS :Ne postoji posebna električna pruga: {STRING} +STR_CONFIG_SETTING_DISABLE_ELRAILS_HELPTEXT :Omogućavanje ovog podešavanja onemogućava potrebu elektrifikacije pruge da bi električni vozovi mogli voziti po njoj STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN :Dolazak prvog vozila na igračevu stanicu: {STRING} STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN_HELPTEXT :Prikazuje novinske naslove kada prvo vozilo pristigne u novu stanicu igrača @@ -1657,17 +1716,24 @@ STR_CONFIG_SETTING_SMOOTH_ECONOMY :Uključena glat STR_CONFIG_SETTING_SMOOTH_ECONOMY_HELPTEXT :Ako je omogućeno, industrijska proizvodnja se češće menja u manjim koracima. Ako se vrste industrija učitavaju preko NewGRF dodataka ovo podešavanje uglavnom nema efekta STR_CONFIG_SETTING_ALLOW_SHARES :Dozvoljena kupovina deonica drugih preduzeća: {STRING} STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Ako je omogućeno, dozvoljava kupovinu i prodaju deonica preduzeća. Deonice su dostupne tek kad preduzeće dostigne određenu starost +STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :Procenat prihoda koji će biti predan srednjim dionicama prevoza u fider sustavima: {STRING} +STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE_HELPTEXT :Procenat prihoda koji će biti predan srednjim dionicama prevoza u fider sustavima, dajući više kontrole nad prihodima STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :Prilikom prevlačenja, postavi signale na svakih: {STRING} +STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Postavi razmak između signala koji će se graditi do sledeće prepreke (signal, raskrsnica), ukoliko se signali povlače STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} pločic{P 0 u e e} STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE :Prilikom prevlačenja, čuvaj fiksno rastojanje između signala: {STRING} +STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Odabir ponašanja postavljanja signala uz Ctrl+povlačenje signala. Ako je onemogućeno, signali se postavljaju ispred i iza tunela ili mostova kako bi se izbegli dugi delovi pruge bez signala. Ako je omogućeno, signali se postavljaju svakih n kvadrata, olakšavajući poravnavanje signala na paralelnim delovima pruge STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Automatsko postavljanje semafora do: {STRING} +STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Postavite godinu za početak korištenja električnih signala za pruge. Prije ove godine, koristiti će se neelektrični signali (imaju iste funkcije samo izgledaju drugačije) STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI :Omogućena traka za signalizaciju:{STRING} +STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI_HELPTEXT :Prikaži prozor za izbor vrste signala za gradnju, umesto samo rotacije tipa signala bez prozora sa Ctrl+klik na sagrađenim signalima STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE :Uobičajena vrsta signalizacije za izgradnju: {STRING} STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE_HELPTEXT :Podrazumevani tip signala STR_CONFIG_SETTING_DEFAULT_SIGNAL_NORMAL :Blok signalizacija STR_CONFIG_SETTING_DEFAULT_SIGNAL_PBS :Putna signalizacija STR_CONFIG_SETTING_DEFAULT_SIGNAL_PBSOWAY :Jednosmerna putna signalizacija STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES :Ciklični izbor vrste signalizacije: {STRING} +STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES_HELPTEXT :Ciklični izbor vrste signalizacije, kada Ctrl+Klik na izgradnju signala sa alatom signala STR_CONFIG_SETTING_CYCLE_SIGNAL_NORMAL :Samo blok STR_CONFIG_SETTING_CYCLE_SIGNAL_PBS :Samo putna STR_CONFIG_SETTING_CYCLE_SIGNAL_ALL :Sva @@ -1680,6 +1746,7 @@ STR_CONFIG_SETTING_TOWN_LAYOUT_2X2_GRID :2x2 mreže STR_CONFIG_SETTING_TOWN_LAYOUT_3X3_GRID :3x3 mreže STR_CONFIG_SETTING_TOWN_LAYOUT_RANDOM :proizvoljan plan STR_CONFIG_SETTING_ALLOW_TOWN_ROADS :Naseljima je dozvoljeno da grade kolovoze: {STRING} +STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Dozvoli naseljima da grade ulice kako bi rasli. Onemogući kako bi sprečili gradske vlasti da same grade ulice STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Naseljima je dozvoljeno da grade putne prelaze: {STRING} STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Omogućava naseljima da grade prelaz pruge preko puta STR_CONFIG_SETTING_NOISE_LEVEL :Naseljima je dozvoljeno da kontrolišu nivo buke aerodroma: {STRING} @@ -1691,6 +1758,7 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :dozvoljeno STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :dozvoljeno, zaseban plan gradnje STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Rasejavanje drveća tokom partije: {STRING} +STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Kontrola nasumične pojave drveća u toku igre. Ovo može uticati na industrije koje zavise o rastu drveća, na primer pilana STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_NONE :{G=srednji}nikakvo {RED}(onesposobljava rad drvnih kombinata) STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_RAINFOREST :samo u tropskim šumama STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_ALL :svuda @@ -1700,12 +1768,17 @@ STR_CONFIG_SETTING_TOOLBAR_POS_HELPTEXT :Horizontalna po STR_CONFIG_SETTING_STATUSBAR_POS :Položaj statusne linije: {STRING} STR_CONFIG_SETTING_STATUSBAR_POS_HELPTEXT :Horizontalna pozicija statusne linije na dnu ekrana STR_CONFIG_SETTING_SNAP_RADIUS :Udaljenost na kojoj će prozor da se prilepi uz susedni: {STRING} +STR_CONFIG_SETTING_SNAP_RADIUS_HELPTEXT :Udaljenost između prozora prije nego se pomerani prozor automatski poravna sa drugim prozorima u blizini STR_CONFIG_SETTING_SNAP_RADIUS_VALUE :{COMMA} piksel{P 0 "" a a} STR_CONFIG_SETTING_SNAP_RADIUS_DISABLED :Isključeno STR_CONFIG_SETTING_SOFT_LIMIT :Najviše nepridenutih prozora: {STRING} +STR_CONFIG_SETTING_SOFT_LIMIT_HELPTEXT :Broj nepridenutih otvorenih prozora pre nego se stariji prozori ne počnu automatski zatvarati da bi napravili mesta za nove prozore STR_CONFIG_SETTING_SOFT_LIMIT_VALUE :{COMMA} +STR_CONFIG_SETTING_SOFT_LIMIT_DISABLED :Isključeno STR_CONFIG_SETTING_ZOOM_MIN :Najbliži nivo: {STRING} +STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :Najveći nivo zumiranja prema unutra u prikazima. Uzmite u obzir da uključivanje većih nivoa zumiranja prema unutra povećava i upotrebu memorije STR_CONFIG_SETTING_ZOOM_MAX :Najudaljeniji nivo: {STRING} +STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :Najmanji nivo zumiranja prema van u prikazima. Veći nivo zumiranja prema van može uzrokovati usporavanje igre STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Uobičajen @@ -1726,11 +1799,29 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Nijedan STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Inicijalni množilac razvoja gradova: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Prosečna veličina naselja relativno u odnosu na gradove na početku partije +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Ažuriraj grafikon distribucije svakih {STRING}{NBSP}dan{P 0:2 a a a} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL_HELPTEXT :Vreme između slijedećih preračuna grafikona. Svaki preračun izračunava planove za jednu komponentu grafikona. To znači da vrednost X za ovu postavku ne mora da znači i ažuriranje celog grafikona unutar X dana. Samo neke komponente će da budu ažurirane. Čim kraće vreme odredite, više će biti potrebno resursa CPUa za izračun. Čim duže vrijeme odredite, trebati će više vremena za pokretanje distribucije po novim putevima. +STR_CONFIG_SETTING_LINKGRAPH_TIME :Uzmi {STRING}{NBSP}dan{P 0:2 a a a} za preračun grafikona +STR_CONFIG_SETTING_LINKGRAPH_TIME_HELPTEXT :Vreme potrebno za preračun komponente grafikona. Kada se preračun pokrene, stvara se sled koji može raditi broj dana koliko ovdje odredite. Čim kraće vreme odredite, postoji mogućnost da sled neće biti gotov kada bi trebao. Tada se igra usporava odnosno zaustavlja dok ne bude gotovo. Čim duže vreme odredite, potrebno je duže da se distribucija ažurira kada se izmene rute. STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :ručno STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asimetrično STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :simetrično +STR_CONFIG_SETTING_DISTRIBUTION_PAX :Način distribucije putnika: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"Simetrično" znači da će se otprilike isti broj putnika slati od stanice A prema stanici B kao i od B prema A. "Asimetrično" znači da će se proizvoljan broj putnika slati u oba smera. "Ručno" znači da se distribucija putnika neće vršiti automatski. +STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Režim distribucije za poštu: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"Simetrično" znači da će se otprilike ista količina pošte slati od stanice A prema stanici B kao i od B prema A. "Asimetrično" znači da će se proizvoljne količine pošte slati u oba smera. "Ručno" znači da se distribucija pošte neće vršiti automatski. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Način distribucije za OKLOPLJENU klasu tereta: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :OKLOPLJENA klasa tereta sadrži dragocenosti u umjerenoj klimi, dijamante u subtropskoj klimi ili zlato u subarktičkoj klimi. NewGFR-ovi bi mogli ovo izmeniti. "Simetrično" znači da će se otprilike ista količina tereta slati od stanice A prema stanici B kao i od B prema A. "Asimetrično" znači da će se proizvoljne količine tereta slati u oba smera. "Ručno" znači da se distribucija tih tereta neće vršiti automatski. Preporučljivo je namestiti ovu postavku na "asimetrično" ili "ručno" kod subarktičke klime jer banke neće slati zlato natrag prema rudnicima zlata. Za umjerenu i subtropsku klimu možete namestiti i "simetrično" jer će banke slati neke dragocenosti natrag prema banci porekla. +STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Način distribucije za ostale klase tereta: {STRING} +STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"asimetrično" znači da odabrana količina tereta može biti poslana u svim smerovima. "ručno" znači da neće biti automatske distribucije za odabrane terete +STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Tačnost distribucije: {STRING} +STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Čim višu vrednost odaberete, CPU će trebati više vremena za izračun grafikona. Ako bude trebalo predugo, mogli bi primetiti usporavanje igre. U suprotnom, ako namestite na manju vrednost, distribucija će biti netočnija i mogli biste primetiti da se teret šalje na mesta koja niste očekivali. STR_CONFIG_SETTING_DEMAND_DISTANCE :Uticaj daljine na zahteve: {STRING} STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Ako podesite ovu vrednost veće od 0, daljina između porekla stanice A nekog tereta i moguće destinacije B će imati uticaj na iznos poslatog tereta od A do B. Što daljnije B je od A, smaniće se iznos tereta što će biti poslat. Ako vrednost povećavate, manji iznos tereta će biti poslat dalekim mestima i veći iznos tereta će biti poslat bližnjim stanicama. +STR_CONFIG_SETTING_DEMAND_SIZE :Količina tereta koji se šalje natrag za simetrični mod: {STRING} +STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Postavljanje ovoga na manje od 100% daje da se simetrična distribucija ponaša sličnije asimetričnoj distribuciji. Manje tereta biti će prisilno vraćeno ako je određena količina poslata u stanicu. Ako postavku namestite na 0%, simetrična distribucija se ponaša tačno kao asimetrična distribucija. +STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Zasićenje kratkih putova pre korišćenja putova velikih kapaciteta: {STRING} +STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Često postoji više puteva izmeđe dve stanice. Cargodist će prvo popuniti najkraći put, nakon toga koristiti drugi najkraći put dok se ne popuni itd. Popunjenost se određuje procenom kapaciteta i planirane upotrebe. Jednom kad se popune svi putevi i ako i dalje postoji potreba, pretrpati će sve puteve preferirajući one sa visokim kapacitetom. Ipak, algoritam najčešće neće proceniti kapacitet tačno. Ova postavka vam omogućava da specificirate do kojeg postotka će kraći put biti popunjen u prvom prolazu pre nego se počne popunjavati sledeći put. Namestite ga na manje od 100% da bi izbegli pretrpane stanice u slučaju previsoko procenjenog kapaciteta. STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :Mere brzine: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_HELPTEXT :Kada brzina bude pokazana u interfejsu, pokaži u željenoj meri @@ -1739,6 +1830,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :Metričke mere STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_SI :SI (m/s) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER :Mere za snagu vozila: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT :Kada je prikazana snaga vozila u korisničkom interfejsu, prikaži je u odabranim jedinicama STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_IMPERIAL :Imperijalne mere (hp) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_METRIC :Metričke mere (hp) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_SI :SI (kW) @@ -1750,11 +1842,13 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Metričke mere STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Mere zapremine: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Kada je jačina zvuka prikazana u korisničkom interfejsu, prikaži je u odabranim jedinicama STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Imperijalne mere (gal) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Metričke mere (l) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Mere za silu trenja: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Uvek kada je vučna snaga (vučna sila) prikazana u korisničkom interfejsu, prikaži je u odabranim jedinicama STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Imperijalne mere (lbf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_METRIC :Metričke mere (kgf) STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_SI :SI (kN) @@ -1766,11 +1860,23 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metričke mere STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (m) STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Prevod +STR_CONFIG_SETTING_GRAPHICS :{ORANGE}Grafika STR_CONFIG_SETTING_SOUND :{ORANGE}Zvučni efekti STR_CONFIG_SETTING_INTERFACE :{ORANGE}Okruženje +STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Opšte +STR_CONFIG_SETTING_INTERFACE_VIEWPORTS :{ORANGE}Prikazi STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}Izgradnja +STR_CONFIG_SETTING_ADVISORS :{ORANGE}Vesti / Savetnici +STR_CONFIG_SETTING_COMPANY :{ORANGE}Preduzeće +STR_CONFIG_SETTING_ACCOUNTING :{ORANGE}Računovodstvo STR_CONFIG_SETTING_VEHICLES :{ORANGE}Vozila +STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE}Fizika STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Rutiranje +STR_CONFIG_SETTING_LIMITATIONS :{ORANGE}Ograničenja +STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Katastrofe / Nezgode +STR_CONFIG_SETTING_GENWORLD :{ORANGE}Stvaranje sveta +STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Okoliš +STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Vlasti STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Naselja STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Industrije STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Distribucija Tovara @@ -1806,7 +1912,11 @@ STR_CONFIG_ERROR_INVALID_GRF_INCOMPATIBLE :nekompatibilno STR_CONFIG_ERROR_INVALID_GRF_UNKNOWN :nepoznato STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_LEVEL :{WHITE}... nivo kompresije '{STRING}' nije ispravan STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... format sačuvane partije '{STRING}' nije dostupan. Vraćanje na '{STRING}' +STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ignoriram osnovni set grafike '{STRING}': nije pronađen +STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}...ignoriram osnovni skup zvukova '{STRING}': nije pronađen +STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignoriram osnovni set muzike '{STRING}': nije pronađen STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Nema više memorije +STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Dodela {BYTES} predmemorije sprajtova nije uspelo. Predmemorija sprajtova je smanjena na {BYTES}. Ovo će smanjiti performanse OpenTTDa. Kako bi smanjili memorijske zahteve možete pokušati da isključite 32bpp grafiku i/ili nivo zumiranja # Intro window STR_INTRO_CAPTION :{WHITE}OpenTTD {REV} @@ -1986,6 +2096,8 @@ STR_FACE_TIE_EARRING_TOOLTIP :{BLACK}Promena # Network server list STR_NETWORK_SERVER_LIST_CAPTION :{WHITE}Mrežna partija +STR_NETWORK_SERVER_LIST_ADVERTISED :{BLACK} Sa reklamama +STR_NETWORK_SERVER_LIST_ADVERTISED_TOOLTIP :{BLACK}Odaberite između igre s oglasima (internet) i bez oglasa (Local Area Network, LAN) STR_NETWORK_SERVER_LIST_ADVERTISED_NO :Ne STR_NETWORK_SERVER_LIST_ADVERTISED_YES :Da STR_NETWORK_SERVER_LIST_PLAYER_NAME :{BLACK}Ime igrača: @@ -2168,6 +2280,7 @@ STR_NETWORK_CLIENT :Igrač STR_NETWORK_SPECTATORS :Posmatrači STR_NETWORK_GIVE_MONEY_CAPTION :{WHITE}Unesite svotu novca koju želite dati +STR_NETWORK_TOOLBAR_LIST_SPECTATOR :{BLACK}Posmatrač # Network set password STR_COMPANY_PASSWORD_CANCEL :{BLACK}Otkaži unetu lozinku @@ -2287,7 +2400,9 @@ STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Obeleža STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Poništi izbor svega STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Otkazuje preuzimanje svih dodataka STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Pretraži eksterne web stranice +STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Traženi sadržaj nije dostupan u OpenTTD servisu za sadržaje za web stranice koje nisu pridružene u OpenTTD STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Vi napuštate OpenTTD! +STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Odredbe i uslovi za preuzimanje sadržaja sa spoljnih sajtova varira.{}Moraćete pogledati spoljašnje sajtove za uputstva kako da instalirate sadržaj u OpenTTD.{}Želite li da nastavite? STR_CONTENT_FILTER_TITLE :{BLACK}Filter po oznaci/nazivu: STR_CONTENT_OPEN_URL :{BLACK}Idi na Web lokaciju STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Ovaj sadržaj nalazi se na Web lokaciji @@ -2358,8 +2473,15 @@ STR_TRANSPARENT_LOADING_TOOLTIP :{BLACK}Promena STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Čini objekte nevidljivim umesto prozirnim # Linkgraph legend window +STR_LINKGRAPH_LEGEND_CAPTION :{BLACK}Legenda protoka tereta +STR_LINKGRAPH_LEGEND_ALL :{BLACK}Sve +STR_LINKGRAPH_LEGEND_NONE :{BLACK}Nema +STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Odaberite preduzeća koja želite da se prikažu # Linkgraph legend window and linkgraph legend in smallmap +STR_LINKGRAPH_LEGEND_UNUSED :{TINY_FONT}{BLACK}neiskorišćen +STR_LINKGRAPH_LEGEND_SATURATED :{TINY_FONT}{BLACK}zasićen +STR_LINKGRAPH_LEGEND_OVERLOADED :{TINY_FONT}{BLACK}Preopterećen # Base for station construction window(s) STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Označavanje zahvaćenog područja @@ -2636,6 +2758,7 @@ STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP :{BLACK}Prikazuj STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP :{BLACK}Obeleži na karti STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}Obeležava prikazane industrije i na karti STR_INDUSTRY_CARGOES_SELECT_CARGO :{BLACK}Odaberite tovar +STR_INDUSTRY_CARGOES_SELECT_CARGO_TOOLTIP :{BLACK} Odaberite teret koji želite da prikažete STR_INDUSTRY_CARGOES_SELECT_INDUSTRY :{BLACK}Odaberite fabriku STR_INDUSTRY_CARGOES_SELECT_INDUSTRY_TOOLTIP :{BLACK}Odaberite fabriku koju želite da prikažete @@ -2662,6 +2785,7 @@ STR_LAND_AREA_INFORMATION_NEWGRF_NAME :{BLACK}NewGRF: STR_LAND_AREA_INFORMATION_CARGO_ACCEPTED :{BLACK}Tovar prihvaćen: {LTBLUE} STR_LAND_AREA_INFORMATION_CARGO_EIGHTS :({COMMA}/8 {STRING}) STR_LANG_AREA_INFORMATION_RAIL_SPEED_LIMIT :{BLACK}Najveća brzina na pruzi: {LTBLUE}{VELOCITY} +STR_LANG_AREA_INFORMATION_ROAD_SPEED_LIMIT :{BLACK}Ograničenje brzine: {LTBLUE}{VELOCITY} # Description of land area of different tiles STR_LAI_CLEAR_DESCRIPTION_ROCKS :Stene @@ -2758,7 +2882,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Zemljište u po STR_ABOUT_OPENTTD :{WHITE}O OpenTTD-u STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Originalni kopirajt {COPYRIGHT} 1995 Chris Sawyer, Sva prava zadržana STR_ABOUT_VERSION :{BLACK}OpenTTD verzija {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD tim +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 OpenTTD tim # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Sačuvaj poziciju @@ -2777,6 +2901,7 @@ STR_SAVELOAD_SAVE_BUTTON :{BLACK}Sačuvaj STR_SAVELOAD_SAVE_TOOLTIP :{BLACK}Sačuvaj tekuću igru, koristeći odabrano ime STR_SAVELOAD_LOAD_BUTTON :{BLACK}Učitaj STR_SAVELOAD_LOAD_TOOLTIP :{BLACK}Učitava označenu partiju +STR_SAVELOAD_LOAD_HEIGHTMAP_TOOLTIP :{BLACK}Učitaj odabranu elevacionu kartu STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Detalji partije STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Podaci ne postoje STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} @@ -2880,6 +3005,7 @@ STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Pomera o STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Naniže STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Pomera označenu NewGRF datoteku niže na spisku STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Ažuriraj +STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Nadogradite NewGRF datoteke za koje već imate instalirane novije verzije STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Spisak instaliranih NewGRF datoteka. STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Postavi parametre @@ -2905,6 +3031,14 @@ STR_NEWGRF_SETTINGS_DISABLED :{RED}Isključen STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Nije kompatibilno sa ovom OpenTTD verzijom # NewGRF save preset window +STR_SAVE_PRESET_CAPTION :{WHITE} Sačuvajte postavku +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Lista dostupnih postavki, odaberite jednu za kopiranje pod imenom ispod +STR_SAVE_PRESET_TITLE :{BLACK} Unesite ime postavke +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Trenutno izabrani naziv za snimanje početnih postavki +STR_SAVE_PRESET_CANCEL :{BLACK}Otkaži +STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Ne manjati odabrane postavke +STR_SAVE_PRESET_SAVE :{BLACK}Sačuvaj +STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK} Sačuvaj trenutnu postavku odabranog imena # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Promena NewGRF parametara @@ -2935,7 +3069,11 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Ide na d STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Prethodni sprajt STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Vraća se na prethodni normalan sprajt, preskačući sve pseudo/prebojavajuće/font sprajtove i prelazi na kraj posle početnog STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Prikaz trenutno odabranog sprajta. Poravnanje se ignoriše tokom iscrtavanja ovog sprajta -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Premeštanje sprajta po kordinatama, menjanjem X i Y pomeraja +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Premeštanje sprajta po kordinatama, menjanjem X i Y pomeraja. Ctrl+Klik za pomeranje sprajta osam jedinica odjednom +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Poništi relativne +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Poništi trenutne relativne pomake +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X pomak: {NUM}, Y pomak: {NUM} (Apsolutni) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X pomak: {NUM}, Y pomak: {NUM} (Relativni) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Odabiranje sprajta STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Odabiranje sprajta bilo gde sa ekrana @@ -2946,7 +3084,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Upozorenje: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Greška: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Kobno: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Došlo je do neotklonljive NewGRF greške: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Došlo je do neotklonljive NewGRF greške:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} neće raditi sa TTDPatch verzijom prema prijavi OpenTTD-a STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} je za {STRING} verziju TTD-a STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} je napravljen za korišćenje sa {STRING} @@ -2992,6 +3130,7 @@ STR_NEWGRF_LIST_MISSING :{RED}Nedostaju STR_NEWGRF_BROKEN :{WHITE}NewGRF '{0:STRING}' može izazvati desinhronizacije i/ili krahove STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Vagon '{1:ENGINE}' je promenio motorno stanje izvan depoa STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Promenio je dužinu vozila '{1:ENGINE}' dok je izvan depoa +STR_NEWGRF_BROKEN_CAPACITY :{WHITE}Promenio je kapacitet vozila '{1:ENGINE}' dok je izvan depoa ili u remontu STR_BROKEN_VEHICLE_LENGTH :{WHITE}Voz '{VEHICLE}' preduzeća '{COMPANY}' je neispravne dužine. Verovatno je izazvana nekim problemima sa NewGRF(ovima). Igra može da krahira ili da se desinhronizuje STR_NEWGRF_BUGGY :{WHITE}NewGRF '{0:STRING}' sadrži neispravne podatke @@ -3095,6 +3234,7 @@ STR_GOALS_SPECTATOR_CAPTION :{WHITE}Globalni STR_GOALS_GLOBAL_TITLE :{BLACK}Opšti ciljevi: STR_GOALS_TEXT :{ORANGE}{STRING} STR_GOALS_NONE :{ORANGE}- Nema - +STR_GOALS_SPECTATOR_NONE :{ORANGE}- Nije primenjivo - STR_GOALS_PROGRESS :{ORANGE}{STRING} STR_GOALS_PROGRESS_COMPLETE :{GREEN}{STRING} STR_GOALS_COMPANY_TITLE :{BLACK}Ciljevi preduzeća: @@ -3137,6 +3277,8 @@ STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klikom na uslugu prebacuje glavni pogled na lokaciju fabrike/naselja. Ctrl+Klik otvara novi pogled na to mesto # Story book window +STR_STORY_BOOK_CAPTION :{WHITE}{COMPANY}Priča +STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}Globalna priča STR_STORY_BOOK_TITLE :{YELLOW}{STRING} STR_STORY_BOOK_GENERIC_PAGE_ITEM :Stranica {NUM} STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Idi do željene stranice uz izbor te stranice u ovoj listi. @@ -3144,6 +3286,7 @@ STR_STORY_BOOK_PREV_PAGE :{BLACK}Prethodn STR_STORY_BOOK_PREV_PAGE_TOOLTIP :{BLACK}Idi do prethodne stranice STR_STORY_BOOK_NEXT_PAGE :{BLACK}Sledeće STR_STORY_BOOK_NEXT_PAGE_TOOLTIP :{BLACK}Idi do sledeće stranice +STR_STORY_BOOK_INVALID_GOAL_REF :{RED}Nevažeća referenca cilja # Station list window STR_STATION_LIST_TOOLTIP :{BLACK}Imena stanica - klikom na ime se centrira glavni pogled na stanicu. Ctrl+Klik otvara novi pogled na lokaciju stanice @@ -3407,6 +3550,8 @@ STR_GROUP_DELETE_TOOLTIP :{BLACK}Briše s STR_GROUP_RENAME_TOOLTIP :{BLACK}Preimenovanje označene grupe STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Klikom se ova grupa štiti od globalne automatske zamene +STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Izbriši grupu +STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Da li ste sigurni da elite izbrisati ovu grupu i sve podgrupe? STR_GROUP_ADD_SHARED_VEHICLE :Dodaj deljeno vozilo STR_GROUP_REMOVE_ALL_VEHICLES :Ukloni sva vozila @@ -3470,7 +3615,15 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Promenit STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Promenite naziv vrste broda STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Promenite naziv vrste letilice +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Sakriti +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Sakriti +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :Sakriti +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :Sakriti +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Prikaz +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Prikaži +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Prikaži +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Prikaži STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Uključi skrivanje/prikazivanje tip voza STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Uključi skrivanje/prikazivanje tip drumskog vozila @@ -3598,7 +3751,9 @@ STR_REPLACE_VEHICLE_AIRCRAFT :letelica STR_REPLACE_VEHICLE_AIRCRAFT.aku :letelicu STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Upotrebljena vozila +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Kolona sa vozilima koja posedujete STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Dostupna vozila +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK} Kolona sa vozilima dostupnima za zamenu STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Izaberite vrstu lokomotive za zamenu STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Izaberite novu vrstu lokomotive koju biste želeli da koristite umesto obeležene s leve strane @@ -3954,6 +4109,10 @@ STR_TIMETABLE_TRAVEL_NOT_TIMETABLED :Putovanje (bez STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :Putovanje sa najviše {2:VELOCITY} (bez rasporeda) STR_TIMETABLE_TRAVEL_FOR :Putovanje za {STRING} STR_TIMETABLE_TRAVEL_FOR_SPEED :Putovanje do {STRING} sa najviše {VELOCITY} +STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :Putovanje (za{STRING}, bez rasporeda) +STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :Putovanje (za {STRING}, bez rasporeda) sa najviše {VELOCITY} +STR_TIMETABLE_STAY_FOR_ESTIMATED :(stajanje za {STRING}, bez rasporeda) +STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(putovanje za {STRING}, bez rasporeda) STR_TIMETABLE_STAY_FOR :i ostani {STRING} STR_TIMETABLE_AND_TRAVEL_FOR :i putuj {STRING} STR_TIMETABLE_DAYS :{COMMA} dan{P "" a a} @@ -4083,6 +4242,8 @@ STR_AI_SETTINGS_START_DELAY :Broj dana za po STR_TEXTFILE_README_CAPTION :{WHITE}{STRING} uputstvo za {STRING} STR_TEXTFILE_CHANGELOG_CAPTION :{WHITE}{STRING} izmene od {STRING} STR_TEXTFILE_LICENCE_CAPTION :{WHITE}{STRING} licenca od {STRING} +STR_TEXTFILE_WRAP_TEXT :{WHITE}Prelomiti tekst +STR_TEXTFILE_WRAP_TEXT_TOOLTIP :{BLACK} Prelomiti tekst prozora tako da stane bez potrebe skrolovanja STR_TEXTFILE_VIEW_README :{BLACK}Prikaži uputstvo STR_TEXTFILE_VIEW_CHANGELOG :{BLACK}Izmene STR_TEXTFILE_VIEW_LICENCE :{BLACK}Licenca @@ -4245,6 +4406,7 @@ STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... mož STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... može biti izgrađena samo ispod linije snega STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Nije bilo odgovarajućih mesta za '{STRING}' fabrike +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Promena parametara generisanja karte za dobivanje bolje karte # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Izgradnja železničke stanice ovde nije moguća... @@ -4409,6 +4571,7 @@ STR_ERROR_YOU_ALREADY_OWN_IT :{WHITE}... već STR_ERROR_GROUP_CAN_T_CREATE :{WHITE}Grupa se ne može napraviti... STR_ERROR_GROUP_CAN_T_DELETE :{WHITE}Grupa se ne može izbrisati... STR_ERROR_GROUP_CAN_T_RENAME :{WHITE}Grupa se ne može preimenovati... +STR_ERROR_GROUP_CAN_T_SET_PARENT :{WHITE}Ne može se postaviti matična grupa... STR_ERROR_GROUP_CAN_T_REMOVE_ALL_VEHICLES :{WHITE}Ne mogu se sva vozila ukloniti iz grupe... STR_ERROR_GROUP_CAN_T_ADD_VEHICLE :{WHITE}Vozilo se ne može dodati u ovu grupu... STR_ERROR_GROUP_CAN_T_ADD_SHARED_VEHICLE :{WHITE}Deljena vozila se ne mogu dodati u grupu... diff --git a/src/lang/simplified_chinese.txt b/src/lang/simplified_chinese.txt index e2347569b0..18b6524361 100644 --- a/src/lang/simplified_chinese.txt +++ b/src/lang/simplified_chinese.txt @@ -10,7 +10,7 @@ ##grflangid 0x56 -# $Id: simplified_chinese.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: simplified_chinese.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2687,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :公司属地 STR_ABOUT_OPENTTD :{WHITE}关于 OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}原始版权由 {COPYRIGHT} 1995 Chris Sawyer 所有,保留一切权力。 STR_ABOUT_VERSION :{BLACK}OpenTTD 版本 {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD 团队 +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 OpenTTD 团队 # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}保存游戏 @@ -2874,7 +2874,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}前往 STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}上一个 sprite STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}继续处理上一个正常的图形元素,略过任何虚位/重新着色/文字字型相关的图形元素;并且在处理到第一个图形元素后,返回最后的图形元素继续处理。 STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}显示目前选取的 sprite。当 sprite 正在描绘时会忽略其定位。 -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}移动 sprite 到指定的 X 与 Y 座标位移 +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}从 X 及 Y 座标方向移动图形元素。如按住 Ctrl 键再点击,可一次移动 8 个单位 STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}重置相关 STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}重置当前相关偏移 STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X 偏移: {NUM}, Y 偏移: {NUM} (绝对) @@ -2889,7 +2889,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}警告:{SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}错误:{SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}严重错误:{SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}发生了一个致命的NewGRF错误: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}发生了一个致命的NewGRF错误:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} 不能与 OpenTTD 报告的 TTDPatch 版本兼容。 STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} 是为 {STRING} 版 TTD 开发的。 STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} 应当与 {STRING} 配合 @@ -4586,7 +4586,7 @@ STR_SV_STNAME_UPPER :前 {STRING} STR_SV_STNAME_LOWER :后 {STRING} STR_SV_STNAME_HELIPORT :{STRING} 停机楼 STR_SV_STNAME_FOREST :{STRING} 林场 -STR_SV_STNAME_FALLBACK :{STRING} 车站 #{NUM} +STR_SV_STNAME_FALLBACK :{STRING} {NUM} 号站 ############ end of savegame specific region! ##id 0x8000 diff --git a/src/lang/slovak.txt b/src/lang/slovak.txt index d8e95ed782..cf26f75e23 100644 --- a/src/lang/slovak.txt +++ b/src/lang/slovak.txt @@ -12,7 +12,7 @@ ##case g -# $Id: slovak.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: slovak.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -750,7 +750,7 @@ STR_HIGHSCORE_TOP_COMPANIES_WHO_REACHED :{BIG_FONT}{BLAC STR_HIGHSCORE_TOP_COMPANIES_NETWORK_GAME :{BIG_FONT}{BLACK}Tabuľka spoločnosti v roku {NUM} STR_HIGHSCORE_POSITION :{BIG_FONT}{BLACK}{COMMA}. STR_HIGHSCORE_PERFORMANCE_TITLE_BUSINESSMAN :{G=z}Obchodníčka -STR_HIGHSCORE_PERFORMANCE_TITLE_BUSINESSMAN.g :{G=s}Obchodníci +STR_HIGHSCORE_PERFORMANCE_TITLE_BUSINESSMAN.g :Obchodníci STR_HIGHSCORE_PERFORMANCE_TITLE_ENTREPRENEUR :{G=z}Podnikateľka STR_HIGHSCORE_PERFORMANCE_TITLE_INDUSTRIALIST :{G=m}Priemyselník STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :{G=m}Kapitalista @@ -1350,7 +1350,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} sek{P u STR_CONFIG_SETTING_HOVER_DELAY :Ukáž nápovedu: {STRING} STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Oneskorenie pred tým ako bude zobrazená nápoveda po ukázaní myšou. Nápoveda môže byť eventuálne nastavené aj na PRAVÉ tlačítko myši. STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Zobrazenie na {COMMA} sekúnd -STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Klick pravým tlačítkom +STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Klik pravým tlačítkom STR_CONFIG_SETTING_POPULATION_IN_LABEL :Zobraziť počet obyvateľov mesta v jeho názve: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Zobrazí populáciu mesta v jeho názve. STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Hrúbka čiar v grafe: {STRING} @@ -2755,7 +2755,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Spoločnosťou STR_ABOUT_OPENTTD :{WHITE}OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Pôvodný copyright: {COPYRIGHT} 1995 Chris Sawyer, všetky práva vyhradené STR_ABOUT_VERSION :{BLACK}OpenTTD verzia {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 team OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 team OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Uložiť hru @@ -2957,7 +2957,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Upozornenie: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Chyba: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Kritická chyba: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Nastala závažná chyba NewGRF: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Nastala závažná chyba NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} nebude fungovať s TTDPatch verziou nahlásenou OpenTTD. STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} je pre verziu {STRING} TTD. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} je navrhnutý pre použitie s {STRING} @@ -4967,7 +4967,7 @@ STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMP STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} STR_HIDDEN_ENGINE_NAME :{ENGINE} (skryté) -STR_HIDDEN_ENGINE_NAME.g :{G=m}{ENGINE} (skrytý) +STR_HIDDEN_ENGINE_NAME.g :{ENGINE} (skrytý) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} diff --git a/src/lang/slovenian.txt b/src/lang/slovenian.txt index e250f82b78..5b8ddc70d5 100644 --- a/src/lang/slovenian.txt +++ b/src/lang/slovenian.txt @@ -11,7 +11,7 @@ ##case r d t -# $Id: slovenian.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: slovenian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -1010,7 +1010,7 @@ STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}{STATION STR_NEWS_STATION_NOW_ACCEPTS_CARGO :{WHITE}{STATION} sedaj sprejema {STRING.t} STR_NEWS_STATION_NOW_ACCEPTS_CARGO_AND_CARGO :{WHITE}{STATION} sedaj sprejema {STRING.t} in {STRING.t} -STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Ponudba subvencije potekla: {}{}Prevoz {STRING.r} od {STRING} do {STRING} ni več subvencioniran +STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Ponudba subvencije potekla:{}{}Prevoz {STRING.r} od {STRING} do {STRING} ni več subvencioniran STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Subvencija zaključena:{}{}Prevoz {STRING.r} od {STRING} do {STRING} ni več subvencioniran STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Nova ponujena subvencija:{}{}Prvi prevoz {STRING.r} od {STRING.r} do {STRING.r} bo{}subvencioniran s strani mestnega sveta! STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Subvencija podeljena podjetju {STRING}!{}{}Prevoz {STRING.r} od {STRING} do {STRING} bo prinesel 50% večji prihodek{}za naslednje leto! @@ -2036,7 +2036,7 @@ STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION_TOOLTIP :{BLACK}Velikost STR_NETWORK_SERVER_LIST_DATE_CAPTION :{BLACK}Datum STR_NETWORK_SERVER_LIST_DATE_CAPTION_TOOLTIP :{BLACK}Tekoči datum STR_NETWORK_SERVER_LIST_YEARS_CAPTION :{BLACK}Leta -STR_NETWORK_SERVER_LIST_YEARS_CAPTION_TOOLTIP :{BLACK}Število let {}kar teče igra +STR_NETWORK_SERVER_LIST_YEARS_CAPTION_TOOLTIP :{BLACK}Število let{}kar teče igra STR_NETWORK_SERVER_LIST_INFO_ICONS_TOOLTIP :{BLACK}Jezik, različica strežnika, itd. STR_NETWORK_SERVER_LIST_CLICK_GAME_TO_SELECT :{BLACK}Klikni na igro v seznamu, da jo izbereš @@ -2804,7 +2804,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Ozemlje v lasti STR_ABOUT_OPENTTD :{WHITE}O OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Prvotne avtorske pravice {COPYRIGHT} 1995 Chris Sawyer, vse pravice pridržane STR_ABOUT_VERSION :{BLACK}OpenTTD različica {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 ekipa OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 ekipa OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Shrani igro @@ -2999,7 +2999,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Pozor: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Napaka: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Usodno: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Zgodila se je usodna NewGRF napaka: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Zgodila se je usodna NewGRF napaka:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} ne deluje s TTDPatch različico prijavljeno v OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} je za {STRING} različico TTD-ja STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} je izdelano za uporabo v {STRING} kombinaciji @@ -4190,7 +4190,7 @@ STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Samo rez STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Ogromna slika zaslona STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}Slika zaslona bo imela ločljivost {COMMA} x {COMMA} slikovnih točk. Ustvarjanje slike zaslona lahko traja nekaj časa. Ali želite nadaljevati? -STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Slika je uspešno zajeta kot {} '{STRING}' +STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Slika je uspešno zajeta kot{} '{STRING}' STR_ERROR_SCREENSHOT_FAILED :{WHITE}Zajemanje slike ni uspelo!!! # Error message titles diff --git a/src/lang/spanish.txt b/src/lang/spanish.txt index 7839900744..e9afed08c9 100644 --- a/src/lang/spanish.txt +++ b/src/lang/spanish.txt @@ -11,7 +11,7 @@ ##gender m f -# $Id: spanish.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: spanish.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -645,8 +645,8 @@ STR_MUSIC_PLAYLIST_CUSTOM_1 :{TINY_FONT}{BLA STR_MUSIC_PLAYLIST_CUSTOM_2 :{TINY_FONT}{BLACK}Personal 2 STR_MUSIC_MUSIC_VOLUME :{TINY_FONT}{BLACK}Volumen música STR_MUSIC_EFFECTS_VOLUME :{TINY_FONT}{BLACK}Volumen efectos -STR_MUSIC_RULER_MIN :{TINY_FONT}{BLACK}MIN -STR_MUSIC_RULER_MAX :{TINY_FONT}{BLACK}MAX +STR_MUSIC_RULER_MIN :{TINY_FONT}{BLACK}MÍN +STR_MUSIC_RULER_MAX :{TINY_FONT}{BLACK}MÁX STR_MUSIC_RULER_MARKER :{TINY_FONT}{BLACK}' STR_MUSIC_TRACK_NONE :{TINY_FONT}{DKGREEN}-- STR_MUSIC_TRACK_DIGIT :{TINY_FONT}{DKGREEN}{ZEROFILL_NUM} @@ -759,7 +759,7 @@ STR_SMALLMAP_ENABLE_ALL :{BLACK}Activar STR_SMALLMAP_SHOW_HEIGHT :{BLACK}Mostrar altura STR_SMALLMAP_TOOLTIP_DISABLE_ALL_INDUSTRIES :{BLACK}No mostrar industrias en el mapa STR_SMALLMAP_TOOLTIP_ENABLE_ALL_INDUSTRIES :{BLACK}Mostrar todas las industrias en el mapa -STR_SMALLMAP_TOOLTIP_SHOW_HEIGHT :{BLACK}Mostrar / ocultar mapa de alturas +STR_SMALLMAP_TOOLTIP_SHOW_HEIGHT :{BLACK}Mostrar/ocultar mapa de alturas STR_SMALLMAP_TOOLTIP_DISABLE_ALL_COMPANIES :{BLACK}No mostrar propiedades de empresas en el mapa STR_SMALLMAP_TOOLTIP_ENABLE_ALL_COMPANIES :{BLACK}Mostrar todas las propiedades de empresas en el mapa STR_SMALLMAP_TOOLTIP_DISABLE_ALL_CARGOS :{BLACK}No muestra ninguna carga en el mapa @@ -942,7 +942,7 @@ STR_GAME_OPTIONS_TOWN_NAME_FRENCH :Francés STR_GAME_OPTIONS_TOWN_NAME_GERMAN :Alemán STR_GAME_OPTIONS_TOWN_NAME_ADDITIONAL_ENGLISH :Inglés (Adicional) STR_GAME_OPTIONS_TOWN_NAME_LATIN_AMERICAN :Latinoamericano -STR_GAME_OPTIONS_TOWN_NAME_SILLY :Absurdos +STR_GAME_OPTIONS_TOWN_NAME_SILLY :Tontos/Absurdos STR_GAME_OPTIONS_TOWN_NAME_SWEDISH :Sueco STR_GAME_OPTIONS_TOWN_NAME_DUTCH :Holandés STR_GAME_OPTIONS_TOWN_NAME_FINNISH :Finlandés @@ -990,7 +990,7 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Tamaño cuádru STR_GAME_OPTIONS_BASE_GRF :{BLACK}Conjunto de gráficos base STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Selecciona el conjunto de gráficos base a usar -STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} fichero{P "" s} perdido{P "" s} o corrupto{P "" s} +STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} archivo{P "" s} perdido{P "" s} o corrupto{P "" s} STR_GAME_OPTIONS_BASE_GRF_DESCRIPTION_TOOLTIP :{BLACK}Información adicional sobre el set de gráficos base STR_GAME_OPTIONS_BASE_SFX :{BLACK}Conjunto de sonidos base @@ -1031,7 +1031,7 @@ STR_CURRENCY_PREVIEW :{LTBLUE}Previa: STR_CURRENCY_CUSTOM_CURRENCY_PREVIEW_TOOLTIP :{BLACK}10000 Libras(£) en tu moneda STR_CURRENCY_CHANGE_PARAMETER :{BLACK}Cambiar parámetro de moneda personalizada -STR_DIFFICULTY_LEVEL_SETTING_MAXIMUM_NO_COMPETITORS :{LTBLUE}Num. Máximo de jugadores: {ORANGE}{COMMA} +STR_DIFFICULTY_LEVEL_SETTING_MAXIMUM_NO_COMPETITORS :{LTBLUE}Núm. máximo de jugadores: {ORANGE}{COMMA} STR_NONE :Ninguno STR_FUNDING_ONLY :Solo fundadas @@ -1087,7 +1087,7 @@ STR_CITY_APPROVAL_PERMISSIVE :Permisiva STR_CITY_APPROVAL_TOLERANT :Tolerante STR_CITY_APPROVAL_HOSTILE :Hostil -STR_WARNING_NO_SUITABLE_AI :{WHITE}No se encontraron IA apropiadas...{}Puedes descargar IA a través del sistema de 'Contenido Online' +STR_WARNING_NO_SUITABLE_AI :{WHITE}No se encontraron IAs apropiadas...{}Puedes descargar IAs a través del sistema de 'Contenido Online' # Settings tree window STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Configuración @@ -1141,15 +1141,15 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_CENTER :Centro STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :Derecha STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Máximo préstamo inicial: {STRING} -STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Máxima cantidad que una compañía puede tomar en un préstamo (sin tener en cuenta la inflación) +STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Máxima cantidad que una compañía puede recibir en un préstamo (sin tener en cuenta la inflación) STR_CONFIG_SETTING_INTEREST_RATE :Porcentaje de interés: {STRING} -STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Porcentaje de interés de los préstamos; también controla la inflación en el caso de que esté activada +STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Porcentaje de interés de los préstamos; también controla la inflación, en caso de que esté activada STR_CONFIG_SETTING_RUNNING_COSTS :Costes de operación: {STRING} STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Permite fijar el nivel de los costes de mantenimiento y operación de vehículos e infraestructuras STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Velocidad de construcción: {STRING} STR_CONFIG_SETTING_CONSTRUCTION_SPEED_HELPTEXT :Limita la velocidad de las acciones de construcción para las IA STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS :Averías de vehículos: {STRING} -STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS_HELPTEXT :Controla la frecuencia con la que los vehículos que no hayan tenido un mantenimiento adecuado se rompen +STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS_HELPTEXT :Controla la frecuencia con la que los vehículos, con mantenimiento inadecuado, se rompen STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER :Multiplicador por subsidio: {STRING} STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Permite fijar a cuanto se pagan las conexiones con subsidio STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Costes de construcción: {STRING} @@ -1157,11 +1157,11 @@ STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Fija el nivel d STR_CONFIG_SETTING_RECESSIONS :Recesiones: {STRING} STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Si se activa, ocurrirán recesiones cada pocos años. Durante una recesión, toda la producción es significativamente menor (volverá a su nivel anterior una vez acabe la recesión) STR_CONFIG_SETTING_TRAIN_REVERSING :Prohibir cambio de dirección de trenes en estaciones: {STRING} -STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Si se activa, los trenes no se darán la vuelta en estaciones no finales en el caso de que haya un camino más cercano si se dan la vuelta +STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Si se activa, los trenes no se darán la vuelta en estaciones no finales, ni aún existiendo un camino más corto a su próximo destino si se dan la vuelta STR_CONFIG_SETTING_DISASTERS :Desastres: {STRING} STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Activa desastres que ocasionalmente pueden bloquear o destruir vehículos o infraestructuras STR_CONFIG_SETTING_CITY_APPROVAL :Actitud de los municipios frente a reestructuraciones en su zona: {STRING} -STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Permite elegir la medida en la que el ruido y el daño ambiental causado por las compañías afecta a su calificación local en los municipios +STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Permite elegir en que medida el ruido y el daño ambiental causado por las compañías afecta a su calificación y nuevas acciones de construcción en los municipios STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Altura máxima del mapa: {STRING} STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Establece la altura máxima permitida para las montañas en el mapa @@ -1173,7 +1173,7 @@ STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Permite tener d STR_CONFIG_SETTING_EXTRADYNAMITE :Permitir eliminar más propiedades de los municipios: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Hace que sea más fácil eliminar infraestructuras y edificios de los municipios STR_CONFIG_SETTING_TRAIN_LENGTH :Longitud máxima de trenes: {STRING} -STR_CONFIG_SETTING_TRAIN_LENGTH_HELPTEXT :Permite cambiar la longitud máxima de trenes +STR_CONFIG_SETTING_TRAIN_LENGTH_HELPTEXT :Permite cambiar la longitud máxima de los trenes STR_CONFIG_SETTING_TILE_LENGTH :{COMMA} casilla{P 0 "" s} STR_CONFIG_SETTING_SMOKE_AMOUNT :Cantidad de humo/chispas: {STRING} STR_CONFIG_SETTING_SMOKE_AMOUNT_HELPTEXT :Permite indicar la cantidad de humo o chispas que son emitidos por vehículos @@ -1193,11 +1193,11 @@ STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Permite añadir STR_CONFIG_SETTING_INFLATION :Inflación: {STRING} STR_CONFIG_SETTING_INFLATION_HELPTEXT :Activa la inflación económica, lo cual hace que los costes aumenten ligeramente más rápido que los beneficios STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Longitud máxima de puentes: {STRING} -STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Máxima longitud permitida para puentes +STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Longitud máxima permitida para los puentes STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Altura máxima de puentes: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Altura máxima permitida al construir puentes STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Longitud máxima de túneles: {STRING} -STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Máxima longitud permitida para túneles +STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Longitud máxima permitida para los túneles STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Método de construcción de industria primaria: {STRING} STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_HELPTEXT :Forma de fundar industrias primarias. 'ninguno' significa que no se puede crear ninguna, 'prospeccón' significa que es posible crear nuevas industrias, pero que éstas aparecen en un lugar aleatorio del mapa y pueden fallar. 'como las otras industrias' significa que las industrias primarias pueden construirse como el resto de industrias en cualquier lugar que se quiera STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NONE :Ninguno @@ -1213,7 +1213,7 @@ STR_CONFIG_SETTING_SIGNALSIDE_LEFT :A la izquierda STR_CONFIG_SETTING_SIGNALSIDE_DRIVING_SIDE :En el lado de conducción STR_CONFIG_SETTING_SIGNALSIDE_RIGHT :A la derecha STR_CONFIG_SETTING_SHOWFINANCES :Mostrar ventana de finanzas al final del año: {STRING} -STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :Si se activa, la ventana de finanzas aparecerá al final de cada año para permitir inspeccionar de forma fácil el estado financiero de la compañía +STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :Si se activa, la ventana de finanzas aparecerá al final de cada año para permitir inspeccionar fácilmente el estado financiero de la compañía STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Nuevas órdenes son 'sin parada' por defecto: {STRING} STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Normalmente, un vehículo se detendrá en todas las estaciones por las que pase. Si se activa esta opción, pasará sin detenerse a través de todas las estaciones hasta llegar a su destino. Esta opción solamente cambia el comportamiento por defecto de las órdenes nuevas. Es posible especificar para cada orden el comportamiento que se desea STR_CONFIG_SETTING_STOP_LOCATION :Nuevos trenes paran por defecto en el {STRING} de la plataforma @@ -1236,7 +1236,7 @@ STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS_HELPTEXT :Permite a las c STR_CONFIG_SETTING_ALLOW_FUND_ROAD :Permitir pagar la reconstrucción de las carreteras locales: {STRING} STR_CONFIG_SETTING_ALLOW_FUND_ROAD_HELPTEXT :Permite a las compañías dar dinero a los municipios para que reconstruyan sus carreteras, saboteando los servicios de carretera en la zona STR_CONFIG_SETTING_ALLOW_GIVE_MONEY :Permitir enviar dinero a otras empresas: {STRING} -STR_CONFIG_SETTING_ALLOW_GIVE_MONEY_HELPTEXT :Permite la transferencia de dinero entre compañías en modo multijugador +STR_CONFIG_SETTING_ALLOW_GIVE_MONEY_HELPTEXT :Permite la transferencia de dinero entre compañías en el modo multijugador STR_CONFIG_SETTING_FREIGHT_TRAINS :Multiplicador de peso para simular trenes pesados: {STRING} STR_CONFIG_SETTING_FREIGHT_TRAINS_HELPTEXT :Permite fijar el impacto de llevar mercancías en los trenes. Un valor alto hace que a los trenes les cueste más llevar carga, especialmente en colinas STR_CONFIG_SETTING_PLANE_SPEED :Factor de velocidad de aeronaves: {STRING} @@ -1247,8 +1247,8 @@ STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Fija la probabi STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Ninguno STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Reducida STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal -STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Permite construir paradas sobre carreteras de los municipios: {STRING} -STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Permite construir estaciones de carretera de paso en carreteras que sean propiedad de municipios +STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Permitir construir paradas sobre carreteras de los municipios: {STRING} +STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Permite construir estaciones de paso en carreteras que sean propiedad de los municipios STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD :Permitir pasar a través de las paradas de carretera de los competidores: {STRING} STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD_HELPTEXT :Permite construir estaciones de carretera de paso en carreteras que sean propiedad de otras compañías STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}Cambiar esta opción no es posible cuando ya existen vehículos @@ -1263,14 +1263,14 @@ STR_CONFIG_SETTING_WARN_LOST_VEHICLE_HELPTEXT :Muestra mensaje STR_CONFIG_SETTING_ORDER_REVIEW :Revisar órdenes de vehículos: {STRING} STR_CONFIG_SETTING_ORDER_REVIEW_HELPTEXT :Cuando se activa, se comprueban periódicamente las órdenes de los vehículos, y los problemas que se encuentren se reportan con un mensaje STR_CONFIG_SETTING_ORDER_REVIEW_OFF :No -STR_CONFIG_SETTING_ORDER_REVIEW_EXDEPOT :Sí, excluyendo los detenidos -STR_CONFIG_SETTING_ORDER_REVIEW_ON :Todos +STR_CONFIG_SETTING_ORDER_REVIEW_EXDEPOT :Sí, excluyendo a los vehículos detenidos +STR_CONFIG_SETTING_ORDER_REVIEW_ON :Todos los vehículos STR_CONFIG_SETTING_WARN_INCOME_LESS :Avisar si las ganancias de un vehículo son negativas: {STRING} STR_CONFIG_SETTING_WARN_INCOME_LESS_HELPTEXT :Si se activa, se muestra un mensaje cuando un vehículo no haya obtenido ningún beneficio durante un año STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Los vehículos nunca caducan: {STRING} STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :Cuando se activa, todos los modelos de vehículos permanecen disponibles para siempre una vez han sido introducidos STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Renovación automática de vehículos cuando se vuelven viejos: {STRING} -STR_CONFIG_SETTING_AUTORENEW_VEHICLE_HELPTEXT :Cuando se activa, los vehículos que se acerquen al final de su vida útil serán reemplazados automáticamente cuando las condiciones de renovación se cumplan +STR_CONFIG_SETTING_AUTORENEW_VEHICLE_HELPTEXT :Cuando se activa, los vehículos próximos al final de su vida útil serán reemplazados automáticamente; siempre y cuando se cumplan las condiciones de renovación STR_CONFIG_SETTING_AUTORENEW_MONTHS :Autorenueva el vehículo {STRING} de su edad máxima STR_CONFIG_SETTING_AUTORENEW_MONTHS_HELPTEXT :Edad relativa con la cual un vehículo debería de ser considerado para ser autorenovado STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_BEFORE :{COMMA} mes{P 0 "" es} antes @@ -1278,33 +1278,33 @@ STR_CONFIG_SETTING_AUTORENEW_MONTHS_VALUE_AFTER :{COMMA} mes{P 0 STR_CONFIG_SETTING_AUTORENEW_MONEY :Mínimo de dinero requerido para renovación automática: {STRING} STR_CONFIG_SETTING_AUTORENEW_MONEY_HELPTEXT :Mínima cantidad de dinero que se debe de tener en el banco para poder considerar la renovación automática de vehículos STR_CONFIG_SETTING_ERRMSG_DURATION :Duración de mensajes de error: {STRING} -STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Duración de los mensajes de error mostrados en ventanas rojas. Algunos mensajes de error críticos no se cierran automáticamente, y deben de ser cerrados manualmente +STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Duración de los mensajes de error mostrados en ventanas rojas. Algunos mensajes de error (críticos) no se cierran automáticamente, y deben de ser cerrados manualmente STR_CONFIG_SETTING_ERRMSG_DURATION_VALUE :{COMMA} segundo{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY :Mostrar mensajes de ayuda: {STRING} STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Tiempo necesario con el ratón sobre un elemento de la interfaz para que esta muestre su mensaje de ayuda. De forma alternativa, se puede escoger mostrar estos mensajes al pulsar el botón derecho cuando el valor de esta opción ha sido establecido a 0. STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Mantener ratón durante {COMMA} milisegundo{P 0 "" s} STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Click derecho -STR_CONFIG_SETTING_POPULATION_IN_LABEL :Muestra la población de un municipio en su etiqueta: {STRING} +STR_CONFIG_SETTING_POPULATION_IN_LABEL :Mostrar la población de un municipio en su etiqueta: {STRING} STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Muestra la población de los municipios en su etiqueta sobre el mapa STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Grosor de las líneas en los gráficos: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Grosor de las líneas en los gráficos. Una línea fina es más precisa, una línea más gruesa es más fácil de distinguir STR_CONFIG_SETTING_LANDSCAPE :Terreno: {STRING} STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Los terrenos definen escenarios con diferentes tipos de carga y requisitos de crecimiento de municipios. Es posible modificarlos empleando NewGRF y scripts de juego -STR_CONFIG_SETTING_LAND_GENERATOR :Generador terreno: {STRING} +STR_CONFIG_SETTING_LAND_GENERATOR :Generador de terreno: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :El generador original depende del tipo de gráficos base, y crea formas de terreno fijas. TerraGenesis es un generador basado en ruido Perlin que permite un mayor control de configuración STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Original STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_TERRAIN_TYPE :Tipo de terreno: {STRING} STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(Sólo TerraGenesis) Colinas del terreno -STR_CONFIG_SETTING_INDUSTRY_DENSITY :Densidad de industria: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY :Densidad industrial: {STRING} STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Permite fijar el número de industrias que deberían de generarse, y el nivel que debería mantenerse durante el juego STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Máxima distancia de Refinerías de Petróleo con los bordes: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Las refinerías de petróleo solamente se construyen cerca del borde del mapa, el cual es costa para los mapas con borde de océano STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Altura línea nieve: {STRING} STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Permite escoger la altura a la cual la nieve comienza en el clima subártico. La nieve también afecta a la generación de industrias y a los requisitos de crecimiento de municipios STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Rugosidad del terreno: {STRING} -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Sólo TerraGenesis) Permite elegir la frecuencia de colinas: los terrenos más planos tienen un número menor de colinas, agrupadas. Los terrenos más accidentados tienen múltiples colinas, lo cual puede resultar repetitivo +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Sólo TerraGenesis) Permite elegir la frecuencia de las colinas: Los terrenos más planos tienen menor número, aunque suelen ser más extensas. Los terrenos más accidentados tienen múltiples colinas, lo cual puede resultar repetitivo STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Muy Suave STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Suave STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Áspero @@ -1314,22 +1314,22 @@ STR_CONFIG_SETTING_VARIETY_HELPTEXT :(Sólo TerraGen STR_CONFIG_SETTING_RIVER_AMOUNT :Cantidad de ríos: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Elegir el número de ríos a generar STR_CONFIG_SETTING_TREE_PLACER :Algoritmo de colocación de árboles: {STRING} -STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Permite escoger la distribución de árboles en el mapa. 'Original' coloca los árboles distribuidos de forma uniforme, mientras que 'Mejorado' los planta en grupos +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Permite escoger la distribución de los árboles sobre el mapa. 'Original' distribuye la plantación de árboles uniformemente, mientras que 'Mejorado' los planta en grupos STR_CONFIG_SETTING_TREE_PLACER_NONE :Ninguno STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Original STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Mejorado STR_CONFIG_SETTING_ROAD_SIDE :Vehículos de carretera: {STRING} STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Elegir el lado de conducción -STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Rotación de Mapa de altura: {STRING} +STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Rotación del Mapa de alturas: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :A la izquierda STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Sentido horario STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :El nivel de la altura del mapa plano tiene: {STRING} STR_CONFIG_SETTING_EDGES_NOT_EMPTY :{WHITE}Una o más casillas del borde norte no están vacías -STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Una o más casillas en uno de los bordes no son agua +STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Una o más casillas en uno de los bordes no es agua STR_CONFIG_SETTING_STATION_SPREAD :Máxima extensión de estaciones: {STRING} STR_CONFIG_SETTING_STATION_SPREAD_HELPTEXT :Máxima área que pueden ocupar las partes de una estación. Valores muy altos pueden ralentizar el juego -STR_CONFIG_SETTING_SERVICEATHELIPAD :Mantener los helicópteros en helipuertos automáticamente: {STRING} +STR_CONFIG_SETTING_SERVICEATHELIPAD :Realizar, automáticamente, el mantenimiento de los helicópteros en helipuertos: {STRING} STR_CONFIG_SETTING_SERVICEATHELIPAD_HELPTEXT :Dar servicio a los helicópteros después de cada aterrizaje, aunque no haya hangar en el aeropuerto STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR :Une la barra de terreno a la barra de construcción: {STRING} STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR_HELPTEXT :Cuando se abre una barra de herramientas de construcción, se abre también la barra de terraformación @@ -1464,7 +1464,7 @@ STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Número máximo STR_CONFIG_SETTING_SERVINT_ISPERCENT :Intervalo de mantenimiento en porcentajes: {STRING} STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Permite escoger si el mantenimiento de vehículos comenzará debido al tiempo pasado desde el último mantenimiento o por una reducción de la fiabilidad más allá de un porcentaje determinado STR_CONFIG_SETTING_SERVINT_TRAINS :Intervalo de mantenimiento por defecto para trenes: {STRING} -STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Fija el intervalo de mantenimiento por defecto para vehículos de ferrocarril nuevos, que se empleará si no se define un intervalo de forma explícita para ese vehículo +STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Fija el intervalo de mantenimiento por defecto para los nuevos vehículos de ferrocarril, siendo usado este si no se define un intervalo de forma explícita para ese vehículo STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}día{P 0 "" s}/% STR_CONFIG_SETTING_SERVINT_DISABLED :Deshabilitado STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Intervalo de mantenimiento por defecto para vehículos de carretera: {STRING} @@ -1784,7 +1784,7 @@ STR_OSNAME_SUNOS :SunOS # Abandon game STR_ABANDON_GAME_CAPTION :{WHITE}Abandonar Juego -STR_ABANDON_GAME_QUERY :{YELLOW}¿Está seguro que desea abandonar este juego? +STR_ABANDON_GAME_QUERY :{YELLOW}¿Está seguro de que desea abandonar este juego? STR_ABANDON_SCENARIO_QUERY :{YELLOW}¿Está seguro de que desea salir de este escenario? # Cheat window @@ -2428,7 +2428,7 @@ STR_STATION_BUILD_CARGO_TRAM_ORIENTATION_TOOLTIP :{BLACK}Seleccio STR_WATERWAYS_TOOLBAR_CAPTION :{WHITE}Construcción de Canales STR_WATERWAYS_TOOLBAR_CAPTION_SE :{WHITE}Canales STR_WATERWAYS_TOOLBAR_BUILD_CANALS_TOOLTIP :{BLACK}Construir canales. Shift permite mostrar una estimación del precio -STR_WATERWAYS_TOOLBAR_BUILD_LOCKS_TOOLTIP :{BLACK}Construir dársenas. Shift permite mostrar una estimación del precio +STR_WATERWAYS_TOOLBAR_BUILD_LOCKS_TOOLTIP :{BLACK}Construir esclusas. Shift permite mostrar una estimación del precio STR_WATERWAYS_TOOLBAR_BUILD_DEPOT_TOOLTIP :{BLACK}Construir astillero (para comprar y dar servicio a barcos). Shift permite mostrar una estimación del precio STR_WATERWAYS_TOOLBAR_BUILD_DOCK_TOOLTIP :{BLACK}Construir muelles. Ctrl activa la unión de estaciones. Shift permite mostrar una estimación del precio STR_WATERWAYS_TOOLBAR_BUOY_TOOLTIP :{BLACK}Colocar boya que puede ser usada como punto de ruta. Shift permite mostrar una estimación del precio @@ -2651,7 +2651,7 @@ STR_LAI_STATION_DESCRIPTION_WAYPOINT :Punto de ruta STR_LAI_WATER_DESCRIPTION_WATER :Agua STR_LAI_WATER_DESCRIPTION_CANAL :Canal -STR_LAI_WATER_DESCRIPTION_LOCK :Dársena +STR_LAI_WATER_DESCRIPTION_LOCK :Esclusa STR_LAI_WATER_DESCRIPTION_RIVER :Río STR_LAI_WATER_DESCRIPTION_COAST_OR_RIVERBANK :Costa o rivera STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT :Astillero @@ -2688,7 +2688,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terreno propied STR_ABOUT_OPENTTD :{WHITE}Acerca de OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright Original {COPYRIGHT} 1995 Chris Sawyer, Todos los derechos reservados STR_ABOUT_VERSION :{BLACK}OpenTTD versión {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 El equipo OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 El equipo OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Guardar Juego @@ -2750,7 +2750,7 @@ STR_MAPGEN_BORDER_RANDOM :{BLACK}Aleatori STR_MAPGEN_BORDER_RANDOMIZE :{BLACK}Aleatorio STR_MAPGEN_BORDER_MANUAL :{BLACK}Manual -STR_MAPGEN_HEIGHTMAP_ROTATION :{BLACK}Rotación mapa de alturas: +STR_MAPGEN_HEIGHTMAP_ROTATION :{BLACK}Rotación del mapa de alturas: STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nombre del mapa de alturas: STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Tamaño: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} @@ -2768,7 +2768,7 @@ STR_SE_MAPGEN_FLAT_WORLD_HEIGHT :{BLACK}Altura t STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_DOWN :{BLACK}Reduce la altura de la tierra llana STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_UP :{BLACK}Aumenta la altura de la tierra llana -STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_QUERY_CAPT :{WHITE}Cambiar la altura de la tierra llana +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_QUERY_CAPT :{WHITE}Cambia la altura de la tierra llana # Map generation progress STR_GENERATION_WORLD :{WHITE}Generando Mundo... @@ -2810,18 +2810,18 @@ STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Mover Ar STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Mueve el NewGRF seleccionado arriba en la lista STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Mover Abajo STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Mueve el NewGRF seleccionado abajo en la lista -STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Actualiza -STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Utiliza las versiones más nuevas de los archivos NewGRF que dispongan de diversas versiones instaladas +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Actualizar +STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Actualizar a la versión más reciente de los archivos NewGRF que tengan varias instaladas STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Una lista de los archivos NewGRF instalados STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Establecer parámetros STR_NEWGRF_SETTINGS_SHOW_PARAMETERS :{BLACK}Mostrar parámetros -STR_NEWGRF_SETTINGS_TOGGLE_PALETTE :{BLACK}Seleccionar paleta -STR_NEWGRF_SETTINGS_TOGGLE_PALETTE_TOOLTIP :{BLACK}Seleccionar la paleta del NewGRF seleccionado.{}Esto es necesario cuando los gráficos de este NewGRF se vean de color rosa +STR_NEWGRF_SETTINGS_TOGGLE_PALETTE :{BLACK}Cambiar paleta +STR_NEWGRF_SETTINGS_TOGGLE_PALETTE_TOOLTIP :{BLACK}Cambia la paleta del NewGRF seleccionado.{}Esto es necesario cuando los gráficos de un NewGRF se ven de color rosa durante el juego STR_NEWGRF_SETTINGS_APPLY_CHANGES :{BLACK}Aplicar cambios -STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_BUTTON :{BLACK}Encontrar contenido que falta en línea -STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_TOOLTIP :{BLACK}Comprobar si el contenido que falta puede ser encontrado en línea +STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_BUTTON :{BLACK}Buscar contenido que falta en línea +STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_TOOLTIP :{BLACK}Comprueba si el contenido que falta puede ser encontrado en línea STR_NEWGRF_SETTINGS_FILENAME :{BLACK}Archivo: {SILVER}{STRING} STR_NEWGRF_SETTINGS_GRF_ID :{BLACK}GRF ID: {SILVER}{STRING} @@ -2831,7 +2831,7 @@ STR_NEWGRF_SETTINGS_MD5SUM :{BLACK}MD5sum: STR_NEWGRF_SETTINGS_PALETTE :{BLACK}Paleta: {SILVER}{STRING} STR_NEWGRF_SETTINGS_PARAMETER :{BLACK}Parámetros: {SILVER}{STRING} -STR_NEWGRF_SETTINGS_NO_INFO :{BLACK}No tiene información disponible +STR_NEWGRF_SETTINGS_NO_INFO :{BLACK}No hay información disponible STR_NEWGRF_SETTINGS_NOT_FOUND :{RED}Archivo no encontrado STR_NEWGRF_SETTINGS_DISABLED :{RED}Desactivado STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Incompatible con esta versión de OpenTTD @@ -2875,7 +2875,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Ir al sp STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Sprite anterior STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Saltar al sprite anterior (ignorando pseudosprites, sprites recoloreados y sprites de fuente) y pasar del primer al último sprite STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representación del sprite seleccionado. Su alineamiento es ignorado al dibujarlo -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Mover el sprite, cambiando los ajustes X e Y +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Mover el sprite, cambiando los ajustes X e Y. Ctrl+Click mueve el sprite ocho unidades de una sola vez STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Reiniciar coordenadas relativas STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Reinicia las coordenadas relativas actuales STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Coordenada X: {NUM}, Coordenada Y: {NUM} (Absoluta) @@ -2890,15 +2890,15 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Atención: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Error: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Error Fatal: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ha ocurrido un error fatal de NewGRF: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ha ocurrido un error fatal de NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} no funcionará con la con la versión de TTDPatch reportada por OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} es la para la versión {STRING} de TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} está diseñado para ser usado con {STRING} STR_NEWGRF_ERROR_INVALID_PARAMETER :Parámetro incorrecto para {1:STRING}: párametro {STRING} ({NUM}) STR_NEWGRF_ERROR_LOAD_BEFORE :{1:STRING} debe ser cargado antes de {STRING} STR_NEWGRF_ERROR_LOAD_AFTER :{1:STRING} debe ser cargado después de {STRING} -STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING} requiere OpenTTD versión {STRING} o superior -STR_NEWGRF_ERROR_AFTER_TRANSLATED_FILE :El fichero GRF ha sido diseñado para ser traducido +STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING} requiere OpenTTD versión {STRING} ó superior +STR_NEWGRF_ERROR_AFTER_TRANSLATED_FILE :El archivo GRF ha sido diseñado para ser traducido STR_NEWGRF_ERROR_TOO_MANY_NEWGRFS_LOADED :Demasiados NewGRFs han sido cargados STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :Cargar {1:STRING} como NewGRF estático con {STRING} puede causar desincronizaciones STR_NEWGRF_ERROR_UNEXPECTED_SPRITE :Sprite inesperado (sprite {3:NUM}) @@ -2917,9 +2917,9 @@ STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Formato de colo STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}¡Precaución! STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Se van a modificar los NewGRF de una partida ya comenzada. Esto puede provocar un error fatal en OpenTTD o romper la partida.{}No se deben crear reportes de bugs por problemas causados por esta acción.{}¿Está completamente seguro de esto? -STR_NEWGRF_DUPLICATE_GRFID :{WHITE}No se puede añadir: GRF ID duplicado +STR_NEWGRF_DUPLICATE_GRFID :{WHITE}El archivo no puede añadirse: GRF ID duplicado STR_NEWGRF_COMPATIBLE_LOADED :{ORANGE}Archivo no encontrado (GRF compatible cargado) -STR_NEWGRF_TOO_MANY_NEWGRFS :{WHITE}No se puede añadir fichero: Límite de ficheros NewGRF alcanzado +STR_NEWGRF_TOO_MANY_NEWGRFS :{WHITE}No se puede añadir archivo: Alcanzado el máximo de NewGRFs permitidos STR_NEWGRF_COMPATIBLE_LOAD_WARNING :{WHITE}GRF(s) compatibles cargados para archivos que faltan STR_NEWGRF_DISABLED_WARNING :{WHITE}Archivo(s) GRF no encontrados han sido desactivados @@ -2928,19 +2928,19 @@ STR_NEWGRF_UNPAUSE_WARNING :{WHITE}Quitar l # NewGRF status STR_NEWGRF_LIST_NONE :Ninguno -STR_NEWGRF_LIST_ALL_FOUND :Todos los ficheros presentes +STR_NEWGRF_LIST_ALL_FOUND :Todos los archivos presentes STR_NEWGRF_LIST_COMPATIBLE :{YELLOW}Archivos compatibles encontrados -STR_NEWGRF_LIST_MISSING :{RED}Ficheros que faltan +STR_NEWGRF_LIST_MISSING :{RED}Archivos que faltan # NewGRF 'it's broken' warnings STR_NEWGRF_BROKEN :{WHITE}Es probable que el funcionamiento del NewGRF '{0:STRING}' cause desincronizaciones o fallos -STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Ha cambiado el estado 'vagón con potencia' para '{1:ENGINE}' fuera de un depósito -STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Ha cambiado la longitud del vehículo para '{1:ENGINE}' cuando no está dentro de un depósito +STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Ha cambiado el estado 'vagón motorizado' para '{1:ENGINE}' cuando no estaba dentro de un depósito +STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Ha cambiado la longitud del vehículo para '{1:ENGINE}' cuando no estaba dentro de un depósito STR_NEWGRF_BROKEN_CAPACITY :{WHITE}Ha cambiado la capacidad del vehículo para '{1:ENGINE}' fuera de un depósito o mientras no se estaba remodelando STR_BROKEN_VEHICLE_LENGTH :{WHITE}Tren '{VEHICLE}' perteneciente a '{COMPANY}' tiene una longitud incorrecta. Puede ser debido a problemas con los NewGRF. El juego puede fallar -STR_NEWGRF_BUGGY :{WHITE}NewGRF '{STRING}' da información incorrecta -STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}Información de carga/reforma para '{1:ENGINE}' difiere tras la de la lista de compra después de la construcción. Esto puede causar que la renovación/reemplazo automáticos no reformen correctamente +STR_NEWGRF_BUGGY :{WHITE}El NewGRF '{0:STRING}' da información incorrecta +STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}La información de carga/reforma para '{1:ENGINE}' difiere de la de lista de compra después de la construcción. Esto puede causar que la renovación/reemplazo automático no haga la reforma correcta STR_NEWGRF_BUGGY_ENDLESS_PRODUCTION_CALLBACK :{WHITE}'{1:STRING}' ha causado un bucle sin fin en la 'callback' de producción STR_NEWGRF_BUGGY_UNKNOWN_CALLBACK_RESULT :{WHITE}'Callback' {1:HEX} devolvió el resultado desconocido o inválido {2:HEX} @@ -3023,7 +3023,7 @@ STR_LOCAL_AUTHORITY_ACTION_ROAD_RECONSTRUCTION :Pagar la recons STR_LOCAL_AUTHORITY_ACTION_STATUE_OF_COMPANY :Poner una estatua al dueño de la empresa STR_LOCAL_AUTHORITY_ACTION_NEW_BUILDINGS :Pagar la construcción de nuevos edificios STR_LOCAL_AUTHORITY_ACTION_EXCLUSIVE_TRANSPORT :Comprar la exclusiva de los servicios de transporte -STR_LOCAL_AUTHORITY_ACTION_BRIBE :Sobornar la autoridad local +STR_LOCAL_AUTHORITY_ACTION_BRIBE :Sobornar a la autoridad local STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{YELLOW}Iniciar una pequeña campaña publicitaria local para atraer más pasajeros y carga a sus servicios de transporte.{}Coste: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{YELLOW}Iniciar una campaña publicitaria local mediana para atraer más pasajeros y carga a sus servicios de transporte.{}Coste: {CURRENCY_LONG} @@ -3396,17 +3396,17 @@ STR_PURCHASE_INFO_ALL_BUT :Todo excepto {C STR_PURCHASE_INFO_MAX_TE :{BLACK}F.T máxima: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Alcance: {GOLD}{COMMA} casillas -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista de selección de los vehículos de raíl - Click en el vehículo para más información - Ctrl+Click para mostrar/ocultar el tipo del vehículo -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista de selección de vehículos de carretera - Click en el vehículo para más información - Ctrl+Click para mostrar/ocultar el tipo del vehículo -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Lista de selección de barcos - Click en el barco para más información - Ctrl+Click para mostrar/ocultar el tipo del barco -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Lista de selección de aeronaves - Click en la aeronave para más información - Ctrl+Click para mostrar/ocultar el tipo de la aeronave +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista de selección de los vehículos de ferrocarril. Click en el vehículo para más información. Ctrl+Click para mostrar/ocultar el tipo del vehículo +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista de selección de vehículos de carretera. Click en el vehículo para más información. Ctrl+Click para mostrar/ocultar el tipo del vehículo +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Lista de selección de barcos. Click en el barco para más información. Ctrl+Click para mostrar/ocultar el tipo del barco +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Lista de selección de aeronaves. Click en la aeronave para más información. Ctrl+Click para mostrar/ocultar el tipo de la aeronave STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Comprar vehículo STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Comprar vehículo STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_BUTTON :{BLACK}Comprar barco STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}Comprar aeronave -STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Comprar el vehículo de raíl resaltado. Shift+Click muestra una estimación del precio sin realizar la compra +STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Compra el vehículo de ferrocarril resaltado. Shift+Click muestra una estimación del precio sin realizar la compra STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Comprar el vehículo de carretera resaltado. Shift+Click muestra una estimación del precio sin realizar la compra STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Comprar el barco resaltado. Shift+Click muestra una estimación del precio sin realizar la compra STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Comprar la aeronave resaltada. Shift+Click muestra una estimación del precio sin realizar la compra @@ -4004,8 +4004,8 @@ STR_AI_CONFIG_CONFIGURE :{BLACK}Configur STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}Configura los parámetros del script # Available AIs window -STR_AI_LIST_CAPTION :{WHITE}{STRING} disponibles -STR_AI_LIST_CAPTION_AI :IA +STR_AI_LIST_CAPTION :{WHITE}Disponible {STRING} +STR_AI_LIST_CAPTION_AI :IAs STR_AI_LIST_CAPTION_GAMESCRIPT :Scripts de Juego STR_AI_LIST_TOOLTIP :{BLACK}Click para seleccionar un script @@ -4020,8 +4020,8 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}No cambi # AI Parameters STR_AI_SETTINGS_CAPTION :{WHITE}Parámetros {STRING} -STR_AI_SETTINGS_CAPTION_AI :de la IA -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :del Script de Juego +STR_AI_SETTINGS_CAPTION_AI :IA +STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Script de Juego STR_AI_SETTINGS_CLOSE :{BLACK}Cerrar STR_AI_SETTINGS_RESET :{BLACK}Reiniciar STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} @@ -4593,28 +4593,28 @@ STR_SV_STNAME_FALLBACK :{STRING} Estaci ##id 0x8000 # Vehicle names STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_KIRBY_PAUL_TANK_STEAM :Kirby Paul Tank (Vapor) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MJS_250_DIESEL :MJS 250 (Diesel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MJS_250_DIESEL :MJS 250 (Diésel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_PLODDYPHUT_CHOO_CHOO :Ploddyphut Choo-Choo STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_POWERNAUT_CHOO_CHOO :Powernaut Choo-Choo STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MIGHTYMOVER_CHOO_CHOO :MightyMover Choo-Choo -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_PLODDYPHUT_DIESEL :Ploddyphut Diesel -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_POWERNAUT_DIESEL :Powernaut Diesel +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_PLODDYPHUT_DIESEL :Ploddyphut Diésel +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_POWERNAUT_DIESEL :Powernaut Diésel STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_WILLS_2_8_0_STEAM :Wills 2-8-0 (Vapor) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CHANEY_JUBILEE_STEAM :Chaney 'Jubilee' (Vapor) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_GINZU_A4_STEAM :Ginzu 'A4' (Vapor) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_8P_STEAM :SH '8P' (Vapor) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MANLEY_MOREL_DMU_DIESEL :Manley-Morel DMU (Diesel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MANLEY_MOREL_DMU_DIESEL :Manley-Morel DMU (Diésel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_DASH_DIESEL :'Dash' (Diésel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_HENDRY_25_DIESEL :SH/Hendry '25' (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_UU_37_DIESEL :UU '37' (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_FLOSS_47_DIESEL :Floss '47' (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CS_4000_DIESEL :CS 4000 (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CS_2400_DIESEL :CS 2400 (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CENTENNIAL_DIESEL :Centennial (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_KELLING_3100_DIESEL :Kelling 3100 (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_TURNER_TURBO_DIESEL :Turner Turbo (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MJS_1000_DIESEL :MJS 1000 (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_125_DIESEL :SH '125' (Diesel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_HENDRY_25_DIESEL :SH/Hendry '25' (Diésel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_UU_37_DIESEL :UU '37' (Diésel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_FLOSS_47_DIESEL :Floss '47' (Diésel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CS_4000_DIESEL :CS 4000 (Diésel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CS_2400_DIESEL :CS 2400 (Diésel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CENTENNIAL_DIESEL :Centennial (Diésel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_KELLING_3100_DIESEL :Kelling 3100 (Diésel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_TURNER_TURBO_DIESEL :Turner Turbo (Diésel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MJS_1000_DIESEL :MJS 1000 (Diésel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_125_DIESEL :SH '125' (Diésel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_30_ELECTRIC :SH '30' (Eléctrica) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_40_ELECTRIC :SH '40' (Eléctrica) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_T_I_M_ELECTRIC :'T.I.M.' (Eléctrica) diff --git a/src/lang/swedish.txt b/src/lang/swedish.txt index e6f3081629..c5b06f6d4c 100644 --- a/src/lang/swedish.txt +++ b/src/lang/swedish.txt @@ -10,7 +10,7 @@ ##grflangid 0x2e -# $Id: swedish.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: swedish.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2687,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Mark som ägs a STR_ABOUT_OPENTTD :{WHITE}Om OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Ursprunglig äganderätt {COPYRIGHT} 1995 Chris Sawyer, Alla rättigheter hävdas STR_ABOUT_VERSION :{BLACK}OpenTTD-version {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD-teamet +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 OpenTTD-teamet # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Spara spel @@ -2874,7 +2874,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Gå till STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Tidigare spriteobjekt STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Fortsätt till föregående normala spriteobjekt, ignorera eventuella pseudo/recolour/font spriteobjekt och börja om från slutet efter första spriteobjektet STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representation av det valda objektet. Justeringen ignoreras när objektet ritas. -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Flytta runt objektet, ändrar X och Y offsets +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Flytta runt objektet, ändrar X och Y offsets. Ctrl+klicka för att flyta runt objektet åtta steg i taget STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Återställ relativ STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Återställ den nuvarande relativa offsetten STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X offsett: {NUM}, Y offsett: {NUM} (Absolut) @@ -2889,7 +2889,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Varning: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Fel: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatalt: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ett fatalt NewGRF fel har uppstått: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ett fatalt NewGRF fel har uppstått:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} kommer inte att fungera med den TTDPatchversion som rapporterades av OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} är för {STRING}versionen av TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} är designat för att användas med {STRING} diff --git a/src/lang/tamil.txt b/src/lang/tamil.txt index 81cf9e2566..e5b3f7fb45 100644 --- a/src/lang/tamil.txt +++ b/src/lang/tamil.txt @@ -7,10 +7,10 @@ ##digitsepcur , ##decimalsep . ##winlangid 0x0449 -##grflangid 0x0A +##grflangid 0x0a -# $Id: tamil.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: tamil.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2365,7 +2365,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :நிறுவ STR_ABOUT_OPENTTD :{WHITE}OpenTTD-ஐ பற்றி STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}அசல் உரிமைகள் {COPYRIGHT} 1995 கிறிஸ் சாயர், எல்லா உரிமைகளும் பதிவுசெய்யப்பட்டது STR_ABOUT_VERSION :{BLACK}OpenTTD பதிப்பு {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD குழுமம் +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 OpenTTD குழுமம் # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}ஆட்டத்தை பதிவு செய் @@ -2538,7 +2538,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}எச்சரிக்கை: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}பிழை: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}மரணம்: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}மரணமான NewGRF பிழை ஏற்பட்டுள்ளது: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}மரணமான NewGRF பிழை ஏற்பட்டுள்ளது:{}{STRING} STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} ஆனது {STRING} TTD பதிப்பிற்காகவே STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} ஆனது {STRING} உடன் இணைந்து பயன்படுத்த வடிவமைக்கப்பட்டுள்ளது STR_NEWGRF_ERROR_INVALID_PARAMETER :செல்லாத குணாதிசயம் {1:STRING} இன்: குணாதிசயம் {STRING} ({NUM}) diff --git a/src/lang/thai.txt b/src/lang/thai.txt index 0b1c02b327..4edc36f061 100644 --- a/src/lang/thai.txt +++ b/src/lang/thai.txt @@ -10,7 +10,7 @@ ##grflangid 0x42 -# $Id: thai.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: thai.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -780,13 +780,13 @@ STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLAC STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLACK}อุบัติเหตุรถไฟชนกัน!!{}มีผู้เสียชีวิต{COMMA}คนจากอุบัติเหตุครั้งนี้ STR_NEWS_ROAD_VEHICLE_CRASH_DRIVER :{BIG_FONT}{BLACK}เกิดอุบัติเหตุรถไฟชนรถยนต์!!{}หลังจากเจ้าหน้าที่เข้าตรวจสอบพื้นที่ พบว่าคนขับรถยนต์เสียชีวิต -STR_NEWS_ROAD_VEHICLE_CRASH :{BIG_FONT}{BLACK}เกิดอุบัติเหตุรถไฟชนรถยนต์ {}มีผู้เสียชีวิต {COMMA} คนหลังรถไฟมรณะพุ่งชน +STR_NEWS_ROAD_VEHICLE_CRASH :{BIG_FONT}{BLACK}เกิดอุบัติเหตุรถไฟชนรถยนต์{}มีผู้เสียชีวิต {COMMA} คนหลังรถไฟมรณะพุ่งชน STR_NEWS_AIRCRAFT_CRASH :{BIG_FONT}{BLACK}เกิดอุบัติเหตุเครื่องบินตก{}คร่าชีวิตผู้โดยสารและลูกเรือรวม {COMMA} ศพที่ {STATION} STR_NEWS_PLANE_CRASH_OUT_OF_FUEL :{BIG_FONT}{BLACK}เครื่องบินตกตก!{}ด้วยสาเหตุ เชื้อเพลิงหมดกลางอากาศ, ผู้โดยสารและลูกเรือ {COMMA} ชีวิตตายอนาถ STR_NEWS_DISASTER_ZEPPELIN :{BIG_FONT}{BLACK}เกิดเหตุบอลลูนระเบิดที่{STATION}! STR_NEWS_DISASTER_SMALL_UFO :{BIG_FONT}{BLACK}รถยนต์ถูกทำลายโดย UFO! -STR_NEWS_DISASTER_AIRPLANE_OIL_REFINERY :{BIG_FONT}{BLACK}เกิดเหตุโรงกลั่นน้ำมันระเบิดใกล้เมือง {TOWN}! {}ทางการกำลังสั่งอพยพผู้คนในละแวกใกล้เคียงออกนอกพื้นที่ +STR_NEWS_DISASTER_AIRPLANE_OIL_REFINERY :{BIG_FONT}{BLACK}เกิดเหตุโรงกลั่นน้ำมันระเบิดใกล้เมือง {TOWN}!{}ทางการกำลังสั่งอพยพผู้คนในละแวกใกล้เคียงออกนอกพื้นที่ STR_NEWS_DISASTER_HELICOPTER_FACTORY :{BIG_FONT}{BLACK}โรงงานอุตสาหกรรมถูกทำลายอย่างไม่ทราบสาเหตุใกล้ {TOWN}! STR_NEWS_DISASTER_BIG_UFO :{BIG_FONT}{BLACK}มี 'UFO' มาลงใกล้ๆ{TOWN}! STR_NEWS_DISASTER_COAL_MINE_SUBSIDENCE :{BIG_FONT}{BLACK}เกิดเหตุเหมืองถ่านหินถล่มใกล้กับเมืองเมือง {TOWN}! @@ -970,6 +970,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}คว STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}เลือกความละเอียดของหน้าจอที่จะใช้ STR_GAME_OPTIONS_RESOLUTION_OTHER :อื่นๆ + + STR_GAME_OPTIONS_BASE_GRF :{BLACK}ตั้งค่า Graphic พื้นฐาน STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}เลือกและตั้งค่าฐานกราฟิกที่จะใช้ STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} ไฟล์สูญหายหรือไม่สมบูรณ์ @@ -1062,6 +1064,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :แบนรา STR_TERRAIN_TYPE_FLAT :แบนราบ STR_TERRAIN_TYPE_HILLY :เนินเขา STR_TERRAIN_TYPE_MOUNTAINOUS :ภูเขาสูง +STR_TERRAIN_TYPE_ALPINIST :นักไต่เขา STR_CITY_APPROVAL_PERMISSIVE :อนุญาต STR_CITY_APPROVAL_TOLERANT :พอผ่อนผันให้ได้ @@ -1082,6 +1085,7 @@ STR_CONFIG_SETTING_TYPE_GAME_INGAME :ตั้งค STR_CONFIG_SETTING_TYPE_COMPANY_MENU :ตั้งค่าองค์กร (ถูกเก็บไว้ในการบันทึกเกม; มีผลเฉพาะการเริ่มเกมใหม่) STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :ตั้งค่าองค์กร (ถูกเก็บไว้ในการบันทึกเกม; มีผลเฉพาะเกมปัจจุบัน) +STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}หมวดหมู่: STR_CONFIG_SETTING_RESTRICT_DROPDOWN_HELPTEXT :{BLACK}จำกัดรายการด้านล่างให้แสดงเฉพาะการตั้งค่าที่มีการเปลี่ยนแปลง STR_CONFIG_SETTING_RESTRICT_BASIC :ตั้งค่าพื้นฐาน STR_CONFIG_SETTING_RESTRICT_ADVANCED :ตั้งค่าขั้นสูง @@ -1164,6 +1168,7 @@ STR_CONFIG_SETTING_INFLATION :ภาวะเ STR_CONFIG_SETTING_INFLATION_HELPTEXT :เมื่อเปิดการใช้งานอัตราเงินเฟ้อ ค่าเงินจะถูกลงและต้องใช้เงินมากขึ้นในการซื้อหรือสร้าง แต่ผลตอบแทนจากการขนส่งก็จะเพิ่มขึ้นด้วยเช่นกัน STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :ความยาวสูงสุดของสะพาน: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :ปรับความยาวสูงสุดสำหรับการสร้างสะพาน +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :ความสูงของสะพาน: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :ความยาวสูงสุดของอุโมงค์: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :ปรับความยาวสูงสุดสำหรับการสร้างอุโมงค์ STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :กำหนดวิธีหลักในการก่อสร้างอุตสาหกรรมเอง: {STRING} @@ -1263,6 +1268,7 @@ STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :ระยะห่างที่สุดจากขอบแผนที่ของโรงกลั่นน้ำมัน: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :โรงกลั่นน้ำมันจะสามารถตั้งได้เฉพาะบริเวณใกล้ๆขอบแผนที่เท่านั้น การตั้งค่านี้จะสามารถตั้งให้สร้างโรงกลั่นน้ำมันได้ห่างสูงสุดเท่าใดจากของแผนที่ STR_CONFIG_SETTING_SNOWLINE_HEIGHT :ระดับความสูงแนวหิมะ: {STRING} +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :ควบคุมความสูงเริ่มต้นของหิมะบนพื้นภูมิทัศน์อาร์ติคย่อยๆ, หิมะยังมีผลการสร้างอุตสาหกรรม และการเติบโตของเมือง STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :ความหยาบของพื้นที่ (เฉพาะ TerraGenesis): {STRING} STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :ราบเรียบมาก STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :ราบเรียบ @@ -1621,6 +1627,7 @@ STR_CONFIG_SETTING_INTERFACE :{ORANGE}ส่ STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}การก่อสร้าง STR_CONFIG_SETTING_VEHICLES :{ORANGE}ยานพาหนะ STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}การค้นหาเส้นทางของพาหนะ +STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}สิ่งแวดล้อม STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}เมือง STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}อุตสาหกรรม STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}การกระจายสินค้า @@ -1674,6 +1681,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}เล STR_INTRO_GAME_OPTIONS :{BLACK}ตัวเลือกเกม STR_INTRO_HIGHSCORE :{BLACK}ตารางคะแนนสูงสุด +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}ตั้งค่า STR_INTRO_NEWGRF_SETTINGS :{BLACK}การตั้งค่า NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}ตรวจสอบเนื้อหาออนไลน์ STR_INTRO_SCRIPT_SETTINGS :{BLACK}ตั้งค่า AI/Game Script @@ -2621,7 +2629,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :บริษั STR_ABOUT_OPENTTD :{WHITE}เกี่ยวกับ OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}ลิขสิทธิ์เดิม {COPYRIGHT} ค.ศ.1995 ของ Chris Sawyer, สงวนลิขสิทธิ์ STR_ABOUT_VERSION :{BLACK}OpenTTD รุ่นที่ {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}ลิขสิทธิ์ OpenTTD {COPYRIGHT}2002-2015 ของ The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}ลิขสิทธิ์ OpenTTD {COPYRIGHT}2002-2016 ของ The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}บันทึกเกม @@ -2738,6 +2746,8 @@ STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}ย้ STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}เลื่อน NewGRF ที่เลือกไว้ขึ้นไปในรายการ STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}ย้ายตำแหน่งลง STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}เลื่อน NewGRF ที่เลือกไว้ลงไปในรายการ +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}อัพเกรด +STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}ปรับปรุงรุ่นไฟล์ NewGRF สำหรับเวอร์ชันที่ได้ติดตั้งไปแล้วก่อนหน้า STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}รายการของ NewGRF ที่มีการติดตั้งในปัจจุบัน STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}ตั้งค่า parameters @@ -2804,7 +2814,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}อันตราย: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Error: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}ร้ายแรง: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}เกิดความผิดพลาดร้ายแรงเกี่ยวกับ NewGRF: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}เกิดความผิดพลาดร้ายแรงเกี่ยวกับ NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING}ไม่สามารถทำงานได้บน TTDPatchเวอร์ชั่นนี่ รายงานโดย OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} สำหรับ {STRING} version of TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} ออกแบบมาสำหรับใช้งานกับ {STRING} @@ -2829,7 +2839,7 @@ STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :ไม่ถู # NewGRF related 'general' warnings STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}คำเตือน! -STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}คุณต้องการที่จะปรับเปลี่ยนในเกมที่กำลังทำงานอยู่. การกระทำนี้สามารถทำให้เกมเสียหาย หรือหยุดการทำงานของเกม หากพบปัญหา ไม่ต้องทำการแจ้งบั๊กเข้ามาเกี่ยวกับประเด็นนี้ {} คุณยังต้องการดำเนินการต่อหรือไม่? +STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}คุณต้องการที่จะปรับเปลี่ยนในเกมที่กำลังทำงานอยู่. การกระทำนี้สามารถทำให้เกมเสียหาย หรือหยุดการทำงานของเกม หากพบปัญหา ไม่ต้องทำการแจ้งบั๊กเข้ามาเกี่ยวกับประเด็นนี้{} คุณยังต้องการดำเนินการต่อหรือไม่? STR_NEWGRF_DUPLICATE_GRFID :{WHITE}ไม่สามารถเพิ่มเข้าไปได้: GRF ID ซ้ำกัน STR_NEWGRF_COMPATIBLE_LOADED :{ORANGE}หาไฟล์ที่เข้ากันได้ไม่ครบ (compatible GRF loaded) @@ -2944,7 +2954,7 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{YELLOW}กา STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW}ให้เงินกับเมืองเพื่อทำถนนใหม่,การจราจรจะเป็นอัมพาทเป็นเวลา 6 เดือน. ส่งผลทำให้การจราจรในเมืองเป็นอัมพาธ{}ใช้งบประมาณ: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{YELLOW}สร้างอนุเสาวรีย์แห่งความภาคภูมิใจของบริษัท.{}ใช้งบประมาณ: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW}ให้เงินเพื่อสร้างสิ่งปลูกสร้างทางธุรกิจแห่งใหม่ของเมือง.{}ใช้งบประมาณ: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW}ซื้อสัมปทานเป็นเวลา 1 ปีสำหรับเมืองเมืองหนึ่ง ผู้โดยสารและสินค้าจะใช้บริการเฉพาะของบริษัทเราเพียงอย่างเดียว {}ใช้งบประมาณ: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW}ซื้อสัมปทานเป็นเวลา 1 ปีสำหรับเมืองเมืองหนึ่ง ผู้โดยสารและสินค้าจะใช้บริการเฉพาะของบริษัทเราเพียงอย่างเดียว{}ใช้งบประมาณ: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}จ่ายเงินใต้โต๊ะติดสินบนให้เจ้าหน้าที่ในท้องถิ่น เพื่อเพิ่มความพึงพอใจ ทำให้สามารถสร้างสิ่งก่อสร้าง รื้อถอนสิ่งก่อสร้างของเมืองได้โดยไม่ติดขัด.{}ใช้งบประมาณ: {CURRENCY_LONG} # Goal window @@ -3333,6 +3343,8 @@ STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}เป STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}เปลี่ยนชื่อชนิดของเครื่องบิน +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}การแสดงผล +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}การแสดงผล STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}เปลี่ยนชื่อชนิดของรถไฟ @@ -3417,7 +3429,7 @@ STR_DEPOT_SELL_CONFIRMATION_TEXT :{YELLOW}คุ # Engine preview window STR_ENGINE_PREVIEW_CAPTION :{WHITE}ข้อความจากผู้ผลิตยานพาหนะ -STR_ENGINE_PREVIEW_MESSAGE :{GOLD}เราได้ออกแบบ {STRING} ใหม่ - หากคุณต้องการที่จะนำไปทดลองใช้ เราจะให้คุณนำไปใช้งานก่อนที่จะนำออกไปจำหน่ายในตลาดปกติ {}คุณต้องการนำไปทดลองใช้หรือไม่ ? +STR_ENGINE_PREVIEW_MESSAGE :{GOLD}เราได้ออกแบบ {STRING} ใหม่ - หากคุณต้องการที่จะนำไปทดลองใช้ เราจะให้คุณนำไปใช้งานก่อนที่จะนำออกไปจำหน่ายในตลาดปกติ{}คุณต้องการนำไปทดลองใช้หรือไม่ ? STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE :หัวรถจักร STR_ENGINE_PREVIEW_ROAD_VEHICLE :ยานพาหนะทางบก STR_ENGINE_PREVIEW_AIRCRAFT :อากาศยาน @@ -4035,6 +4047,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}กา STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... ตอนนี้อยู่ที่ระดับน้ำทะเลแล้ว STR_ERROR_TOO_HIGH :{WHITE}... สูงเกินไป STR_ERROR_ALREADY_LEVELLED :{WHITE}... อยู่ในสภาพที่ต่ำที่สุดแล้ว +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}สะพานที่อยู่ด้านบนจะสูงเกินไป # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}ไม่สามารถเปลี่ยนชื่อบริษัทได้ diff --git a/src/lang/traditional_chinese.txt b/src/lang/traditional_chinese.txt index beb0cf6ca1..851b92af68 100644 --- a/src/lang/traditional_chinese.txt +++ b/src/lang/traditional_chinese.txt @@ -10,7 +10,7 @@ ##grflangid 0x0c -# $Id: traditional_chinese.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: traditional_chinese.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2687,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :公司所有土 STR_ABOUT_OPENTTD :{WHITE}關於 OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}原著作權為 {COPYRIGHT} 1995 Chris Sawyer,保留所有權利 STR_ABOUT_VERSION :{BLACK}OpenTTD 版本 {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD 開發小組 +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 OpenTTD 開發小組 # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}儲存遊戲 @@ -2907,7 +2907,7 @@ STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING STR_NEWGRF_ERROR_MULTIPLE_ACTION_8 :過多的 Action 8 資料 (發生於第 {3:NUM} 個子畫面) STR_NEWGRF_ERROR_READ_BOUNDS :子畫面資料不足 (發生於第 {3:NUM} 個子畫面) STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}目前使用的基本圖形集少了某些 sprite。{}請更新基本圖形集。 -STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}你正在使用的圖形集缺少了一些圖形.{}請更新圖形集. {}因為你正在使用一個{YELLOW}開發中的OpenTTD{WHITE},你可能需要一個{YELLOW}開發中的圖形集{WHITE} +STR_NEWGRF_ERROR_MISSING_SPRITES_UNSTABLE :{WHITE}你正在使用的圖形集缺少了一些圖形.{}請更新圖形集.{}因為你正在使用一個{YELLOW}開發中的OpenTTD{WHITE},你可能需要一個{YELLOW}開發中的圖形集{WHITE} STR_NEWGRF_ERROR_GRM_FAILED :要求的 GRF 資料不存在或無法讀取 (發生於第 {3:NUM} 個子畫面) STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{2:STRING} 使 {1:STRING} 被停用 STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :無效或無法識別的子畫面配置格式 (發生於第 {3:NUM} 個子畫面) diff --git a/src/lang/turkish.txt b/src/lang/turkish.txt index 6e9a703eba..a92f551d57 100644 --- a/src/lang/turkish.txt +++ b/src/lang/turkish.txt @@ -11,7 +11,7 @@ ##case tamlanan -# $Id: turkish.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: turkish.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -250,7 +250,15 @@ STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Kaydırm STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Bir arazi üzerinde bulunan binaları ve benzeri yapıları yık. Ctrl bir alanı köşeden köşeye seçer. Shift ile tıklama maliyet tahminini gösterir # Show engines button +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN :{BLACK}Gizliyi göster +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE :{BLACK}Gizliyi göster +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP :{BLACK}Gizliyi göster +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT :{BLACK}Gizliyi göster +STR_SHOW_HIDDEN_ENGINES_VEHICLE_TRAIN_TOOLTIP :{BLACK}Bu düğme etkinleştirildiğinde, gizli tren araçları da görüntülenir +STR_SHOW_HIDDEN_ENGINES_VEHICLE_ROAD_VEHICLE_TOOLTIP :{BLACK}Bu düğme etkinleştirildiğinde, gizli yol araçları da görüntülenir +STR_SHOW_HIDDEN_ENGINES_VEHICLE_SHIP_TOOLTIP :{BLACK}Bu düğme etkinleştirildiğinde, gizli gemiler de görüntülenir +STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Bu düğme etkinleştirildiğinde, gizli uçaklar da görüntülenir # Query window STR_BUTTON_DEFAULT :{BLACK}Varsayılan @@ -365,6 +373,7 @@ STR_SCENEDIT_FILE_MENU_QUIT :Oyundan Çık ############ range for settings menu starts STR_SETTINGS_MENU_GAME_OPTIONS :Seçenekler +STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Ayarlar STR_SETTINGS_MENU_SCRIPT_SETTINGS :YZ/Oyun betik ayarları STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF ayarları STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Şeffaflık seçenekleri @@ -771,15 +780,15 @@ STR_MESSAGE_NEWS_FORMAT :{STRING} - {S STR_NEWS_MESSAGE_CAPTION :{WHITE}Mesaj STR_NEWS_CUSTOM_ITEM :{BIG_FONT}{BLACK}{STRING} -STR_NEWS_FIRST_TRAIN_ARRIVAL :{BIG_FONT}{BLACK} {} Halk {STATION} istasyonuna ilk gelen treni kutladı! -STR_NEWS_FIRST_BUS_ARRIVAL :{BIG_FONT}{BLACK} {} Halk {STATION} durağına ilk gelen otobüsü kutladı! -STR_NEWS_FIRST_TRUCK_ARRIVAL :{BIG_FONT}{BLACK} {} Halk {STATION} durağına ilk gelen kamyonu kutladı! -STR_NEWS_FIRST_PASSENGER_TRAM_ARRIVAL :{BIG_FONT}{BLACK} {} Halk {STATION} istasyonuna ilk gelen yolcu tramvayı kutladı! -STR_NEWS_FIRST_CARGO_TRAM_ARRIVAL :{BIG_FONT}{BLACK} {} Halk {STATION} istasyonuna ilk gelen yük tramvayını kutladı! -STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK} {} Halk {STATION} rıhtımına ilk gelen gemiyi kutladı! -STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK} {} Halk {STATION} havaalanına ilk gelen uçağı kutladı! +STR_NEWS_FIRST_TRAIN_ARRIVAL :{BIG_FONT}{BLACK}{} Halk {STATION} istasyonuna ilk gelen treni kutladı! +STR_NEWS_FIRST_BUS_ARRIVAL :{BIG_FONT}{BLACK}{} Halk {STATION} durağına ilk gelen otobüsü kutladı! +STR_NEWS_FIRST_TRUCK_ARRIVAL :{BIG_FONT}{BLACK}{} Halk {STATION} durağına ilk gelen kamyonu kutladı! +STR_NEWS_FIRST_PASSENGER_TRAM_ARRIVAL :{BIG_FONT}{BLACK}{} Halk {STATION} istasyonuna ilk gelen yolcu tramvayı kutladı! +STR_NEWS_FIRST_CARGO_TRAM_ARRIVAL :{BIG_FONT}{BLACK}{} Halk {STATION} istasyonuna ilk gelen yük tramvayını kutladı! +STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK}{} Halk {STATION} rıhtımına ilk gelen gemiyi kutladı! +STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK}{} Halk {STATION} havaalanına ilk gelen uçağı kutladı! -STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLACK}Tren Kazası!!! Talihsiz kazada {}{COMMA} kişi öldü... +STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLACK}Tren Kazası!!! Talihsiz kazada{}{COMMA} kişi öldü... STR_NEWS_ROAD_VEHICLE_CRASH_DRIVER :{BIG_FONT}{BLACK}Trafik kazası!{}Trenle çarpışan aracın şoförü feci şekilde can verdi... STR_NEWS_ROAD_VEHICLE_CRASH :{BIG_FONT}{BLACK}Trafik kazası!{}{COMMA} kişi patlamadan kurtulamadı... STR_NEWS_AIRCRAFT_CRASH :{BIG_FONT}{BLACK}Uçak Kazası!{}{COMMA} kişinin öldüğü yer {STATION} @@ -836,6 +845,7 @@ STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}{VEHICLE} aracının boş bir emri var STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}{VEHICLE} talimatları arasında tekrarlanmış olanlar var STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}{VEHICLE} aracının geçersiz talimatları var +STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}{VEHICLE}, pisti çok kısa olan bir havaalanında göreve sahip STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE} eskiyor STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}{VEHICLE} çok eskidi @@ -857,9 +867,9 @@ STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}{STATION STR_NEWS_STATION_NOW_ACCEPTS_CARGO :{WHITE}{STATION} artık {STRING} kabul ediyor STR_NEWS_STATION_NOW_ACCEPTS_CARGO_AND_CARGO :{WHITE}{STATION} artık {STRING} ve {STRING} kabul ediyor -STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Teşvik önerisinin süresi doldu: {}{}{1:STRING} ile {2:STRING} arasındaki {0:STRING} taşıma hizmeti artık teşvik almayacak +STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Teşvik önerisinin süresi doldu:{}{}{1:STRING} ile {2:STRING} arasındaki {0:STRING} taşıma hizmeti artık teşvik almayacak STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Teşvik geri çekildi:{}{}{1:STRING} ile {2:STRING} arasındaki {0:STRING} taşıma hizmeti artık teşvik almayacak -STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Hizmet teşviği önerildi: {}{} {1:STRING} -> {2:STRING} arası ilk {0:STRING} taşıma hizmeti belediyeden teşvik alacak! +STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Hizmet teşviği önerildi:{}{} {1:STRING} -> {2:STRING} arası ilk {0:STRING} taşıma hizmeti belediyeden teşvik alacak! STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Hizmet teşviği {0:STRING} şirketine verildi!{}{}{2:STRING} -> {3:STRING} arasındaki {1:STRING} taşıma hizmeti bir yıl boyunca %50 fazla gelir sağlayacak! STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Hizmet teşviği {0:STRING} şirketine verildi!{}{}{2:STRING} -> {3:STRING} arasındaki {1:STRING} taşıma hizmeti bir yıl boyunca iki kat fazla gelir sağlayacak! STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Hizmet teşviği {0:STRING} şirketine verildi!{}{}{2:STRING} -> {3:STRING} arasındaki {1:STRING} taşıma hizmeti bir yıl boyunca üç kat fazla gelir sağlayacak! @@ -887,8 +897,8 @@ STR_GAME_OPTIONS_CURRENCY_USD :Amerikan Dolar STR_GAME_OPTIONS_CURRENCY_EUR :Avro (€) STR_GAME_OPTIONS_CURRENCY_JPY :Japon Yeni (¥) STR_GAME_OPTIONS_CURRENCY_ATS :Avusturya Şilini (ATS) -STR_GAME_OPTIONS_CURRENCY_BEF :Belcika Frangı (BEF) -STR_GAME_OPTIONS_CURRENCY_CHF :İsviçre Frangı (CHF) +STR_GAME_OPTIONS_CURRENCY_BEF :Belçika Frankı (BEF) +STR_GAME_OPTIONS_CURRENCY_CHF :İsviçre Frankı (CHF) STR_GAME_OPTIONS_CURRENCY_CZK :Çek Korunası (CZK) STR_GAME_OPTIONS_CURRENCY_DEM :Alman markı (DEM) STR_GAME_OPTIONS_CURRENCY_DKK :Danimarka Kronu (DKK) @@ -971,7 +981,12 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}Ekran Ç STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Kullanılacak ekran çözünürlüğünü seçin STR_GAME_OPTIONS_RESOLUTION_OTHER :diğer +STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Arayüz boyutu +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Kullanmak üzere arayüz bileşen boyutunu seçin +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :İki kat büyük +STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Dört kat büyük STR_GAME_OPTIONS_BASE_GRF :{BLACK}Temel grafik kümesi STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Kullanılacak temel grafik kümesini seçin @@ -987,6 +1002,7 @@ STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Kullanı STR_GAME_OPTIONS_BASE_MUSIC_STATUS :{RED}{NUM} adet bozuk dosya var STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Temel müzik hakkında daha fazla bilgi +STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Desteklenen çözünürlük listesi alınamadı STR_ERROR_FULLSCREEN_FAILED :{WHITE}Tam ekran kipi başarısız # Custom currency window @@ -1065,6 +1081,7 @@ STR_TERRAIN_TYPE_VERY_FLAT :Dümdüz STR_TERRAIN_TYPE_FLAT :Düz STR_TERRAIN_TYPE_HILLY :Engebeli STR_TERRAIN_TYPE_MOUNTAINOUS :Dağlık +STR_TERRAIN_TYPE_ALPINIST :Alp Meraklısı STR_CITY_APPROVAL_PERMISSIVE :İzne tabi STR_CITY_APPROVAL_TOLERANT :Töleranslı @@ -1073,6 +1090,7 @@ STR_CITY_APPROVAL_HOSTILE :Düşman STR_WARNING_NO_SUITABLE_AI :{WHITE}Uygun YZ'ler yok...{}'Çevrimiçi içerik' sistemiyle pek çok YZ indirebilirsiniz # Settings tree window +STR_CONFIG_SETTING_TREE_CAPTION :{WHITE}Ayarlar STR_CONFIG_SETTING_FILTER_TITLE :{BLACK}Süzgeç metni: STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Tümünü genişlet STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Tümünü kısalt @@ -1145,6 +1163,9 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Araçları ya d STR_CONFIG_SETTING_CITY_APPROVAL :Arazi şekillendirmeye karşı belediye meclisinin tavrı: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Şirketlerin sebep olduğu gürültü ve çevreye zararın kasaba beğenilerini ve ilerideki inşaatlarını nasıl etkileyeceğini seçin +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Azami harita yüksekliği: {STRING} +STR_CONFIG_SETTING_MAX_HEIGHTLEVEL_HELPTEXT :Haritadaki dağlar için izin verilen azami yüksekliği ayarla +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Azami harita yüksekliğini bu değere ayarlayamazsınız. Haritadaki en az bir dağ bu değerden yüksek STR_CONFIG_SETTING_AUTOSLOPE :Binaların, yolların vb. altındaki araziyi değiştirmeye izin ver: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Binaları ve yolları kaldırmaksızın altlarında yeryüzü şekillendirmesi yapılmasına izin ver STR_CONFIG_SETTING_CATCHMENT :İstasyon kapsama alanlarının daha gerçeğe yakın ölçülerde olmasına izin ver: {STRING} @@ -1173,6 +1194,8 @@ STR_CONFIG_SETTING_INFLATION :Enflasyon: {STR STR_CONFIG_SETTING_INFLATION_HELPTEXT :Maliyetlerin ödemelerden biraz daha hızlı arttığı ekonomide enflasyonu etkinleştir STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH :Azami köprü uzunluğu: {STRING} STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH_HELPTEXT :Köprü inşası için azami uzunluk +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT :Azami köprü yüksekliği: {STRING} +STR_CONFIG_SETTING_MAX_BRIDGE_HEIGHT_HELPTEXT :Köprü inşaası için azami yükseklik STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Azami tünel uzunluğu: {STRING} STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Tünel inşa etmek için azami uzunluk STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Üretim fabrikalarının yapım yöntemi: {STRING} @@ -1266,21 +1289,37 @@ STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Haritadaki şeh STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Grafiklerdeki çizgi kalınlığı: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Grafiklerdeki çizginin genişliği. İnce çizgiler daha hassas şekilde okunabilir, koyu çizgileri ise görmek ve renklerini ayırt etmek daha kolay olur. +STR_CONFIG_SETTING_LANDSCAPE :İklim: {STRING} +STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :İklimler farklı kargo ve şehir gelişme gereksinimlerini belirleyen temel oynanış senaryolarını tanımlar. NewGRF ve Oyun Betikleri daha ince ayarlar yapmanızı sağlar STR_CONFIG_SETTING_LAND_GENERATOR :Arazi üretici: {STRING} +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :Özgün oluşturucu temel grafik kümesine bağlıdır ve sabit arazi şekillerini oluşturur. TerraGenesis, daha iyi denetim ayarlarına sahip bir Perlin gürültü tabanlı oluşturucudur STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Özgün STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis +STR_CONFIG_SETTING_TERRAIN_TYPE :Zemin türü: {STRING} +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(Sadece TerraGenesis) Yer biçemi engebe değeri +STR_CONFIG_SETTING_INDUSTRY_DENSITY :Endüstri yoğunluğu: {STRING} +STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Oyun boyunca kaç tane fabrika oluşturulması gerektiğini ve hangi seviyede bakıma alınması gerektiğini ayarlayın STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Petrol rafinerilerinin kenarlardan azami uzaklığı: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Petrol rafinerileri sadece haritanın sınırlarında inşa edilir; ada haritalarında sahillere kurulurlar. STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Kar kalınlığı: {STRING} +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Kutupsal arazide, karın ne kadar yükseklikten başlayacağını denetleyin. Kar aynı zamanda fabrika oluşumunu ve şehir gelişme gereksinimini de etkiler STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Arazinin engebesi: {STRING} +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Sadece TerraGenesis) Tepelerin sıklığını seçin: Yumuşak yerleşimler daha az, geniş alana yayılmış tepelere sahiptir. Sıkı yerleşimler tekrarlanmış gibi görülen çok sayıda tepeye sahip olacaklar. STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Dümdüz STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Düzgün STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Engebeli STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Çok Engebeli +STR_CONFIG_SETTING_VARIETY :Çeşitlilik dağılımı: {STRING} +STR_CONFIG_SETTING_VARIETY_HELPTEXT :(Sadece TerraGenesis) Haritanın hem dağlık hem de düz alanlar içerip içermeyeceğini denetleyin. Bu haritayı sadece düz yapacağı için, diğer seçenek dağlı seçilmeli. +STR_CONFIG_SETTING_RIVER_AMOUNT :Nehir miktarı: {STRING} +STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Kaç tane nehir oluşturulacağını seçin STR_CONFIG_SETTING_TREE_PLACER :Ağaç üretme algoritması: {STRING} +STR_CONFIG_SETTING_TREE_PLACER_HELPTEXT :Haritada ağaçların dağıtımını seçin: 'Özgün', ağaçları düzgün dağıtımlı yerleştirirken, 'İyileştirilmiş' gruplar halinde yerleştirir STR_CONFIG_SETTING_TREE_PLACER_NONE :Hiçbiri STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL :Özgün STR_CONFIG_SETTING_TREE_PLACER_IMPROVED :Gelişmiş +STR_CONFIG_SETTING_ROAD_SIDE :Yol araçları: {STRING} +STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Sürüş yönünü seçin STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Yükseklik haritasını döndür: {STRING} STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Saat yönünün tersi STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Saat yönü @@ -1335,6 +1374,8 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :Kapalı STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING :Sol tık ile ekran kaydır: {STRING} STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING_HELPTEXT :Sol fare tuşuyla sürükleyerek harita kaydırma özelliğini etkinleştir. Özellikle dokunmatik-ekran kullanırken kaydırma yapmak için kullanılabilir. +STR_CONFIG_SETTING_AUTOSAVE :Otomatik kaydet: {STRING} +STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Otomatik oyun kaydetme sıklığını seçin STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES :Kaydedilen oyun isimlerinde {STRING} tarih biçimini kullan STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT :Kaydedilen oyun isimlerinde kullanılan tarih biçimi @@ -1625,11 +1666,23 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_METRIC :Metrik (m) STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_SI :SI (Uluslararası Ölçüm Sistemi) (m) STR_CONFIG_SETTING_LOCALISATION :{ORANGE}Yerelleştirme +STR_CONFIG_SETTING_GRAPHICS :{ORANGE}Grafikler STR_CONFIG_SETTING_SOUND :{ORANGE}Ses STR_CONFIG_SETTING_INTERFACE :{ORANGE}Arayüz +STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Genel +STR_CONFIG_SETTING_INTERFACE_VIEWPORTS :{ORANGE}Harita kısım pencereleri STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}İnşaat +STR_CONFIG_SETTING_ADVISORS :{ORANGE}Haberler / Danışmanlar +STR_CONFIG_SETTING_COMPANY :{ORANGE}Şirket +STR_CONFIG_SETTING_ACCOUNTING :{ORANGE}Muhasebe STR_CONFIG_SETTING_VEHICLES :{ORANGE}Araçlar +STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE}Fizik STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Yönlenme +STR_CONFIG_SETTING_LIMITATIONS :{ORANGE}Sınırlamalar +STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Felaketler / Kazalar +STR_CONFIG_SETTING_GENWORLD :{ORANGE}Harita üretimi +STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Ortam +STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Yetkililer STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Şehirler STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Endüstri STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Kargo dağılımı @@ -1683,6 +1736,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Çok Oyu STR_INTRO_GAME_OPTIONS :{BLACK}Seçenekler STR_INTRO_HIGHSCORE :{BLACK}Puan Tablosu +STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Ayarlar STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Ayarları STR_INTRO_ONLINE_CONTENT :{BLACK}Çevrimiçi İçeriği Kontrol Et STR_INTRO_SCRIPT_SETTINGS :{BLACK}YZ/Oyun Betik Ayarları @@ -1702,6 +1756,7 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}'Oyuncak STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Seçenekleri göster STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Puan tablosunu göster +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Görüntü ayarları STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF ayarlarını göster STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}İndirilecek yeni ve güncellenmiş içeriği kontrol et STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}YZ ve Oyun betik ayarlarını göster @@ -1741,6 +1796,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Oynanan STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Sihirli buldozer (fabrikaları, silinemeyen nesneleri siler): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Tüneller kesişebilir: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Jetler küçük havalimanlarında (sıklıkla) düşmesin: {ORANGE}{STRING} +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Azami harita yüksekliğini değiştir: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{BLACK}Haritadaki azami dağ yüksekliğini düzenle STR_CHEAT_SWITCH_CLIMATE_TEMPERATE_LANDSCAPE :Ilıman iklim STR_CHEAT_SWITCH_CLIMATE_SUB_ARCTIC_LANDSCAPE :Soğuk iklim STR_CHEAT_SWITCH_CLIMATE_SUB_TROPICAL_LANDSCAPE :Tropik iklim @@ -2377,7 +2434,7 @@ STR_WATERWAYS_TOOLBAR_BUILD_DOCK_TOOLTIP :{BLACK}İskele STR_WATERWAYS_TOOLBAR_BUOY_TOOLTIP :{BLACK}Yerimi olarak kullanilabilecek bir şamandıra yerlestir. Shift ile tıklama maliyet tahminini gösterir STR_WATERWAYS_TOOLBAR_BUILD_AQUEDUCT_TOOLTIP :{BLACK}Su kemeri yap. Shift ile tıklama maliyet tahminini gösterir STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Su alanını belirle.{}Deniz seviyesinde CTRL tuşu basılı olmadığı sürece kanal yapar, basılıysa etraftakileri su altında bırakır -STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Irmak oluştur +STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Nehir yerleştir # Ship depot construction window STR_DEPOT_BUILD_SHIP_CAPTION :{WHITE}Tersane Yönü @@ -2631,7 +2688,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Satın alınmı STR_ABOUT_OPENTTD :{WHITE}OpenTTD Hakkında STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Telif hakkı {COPYRIGHT} 1995 Chris Sawyer, Her hakkı saklıdır STR_ABOUT_VERSION :{BLACK}OpenTTD sürüm {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 OpenTTD ekibi +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 OpenTTD ekibi # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Oyunu Kaydet @@ -2666,6 +2723,9 @@ STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Şehir sayısı: STR_MAPGEN_DATE :{BLACK}Tarih: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Fabrika sayısı: +STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Azami harita yüksekliği: +STR_MAPGEN_MAX_HEIGHTLEVEL_UP :{BLACK}Haritadaki azami dağ yüksekliğini bir arttır +STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN :{BLACK}Haritadaki azami dağ yüksekliğini bir azalt STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Kar yüksekliği: STR_MAPGEN_SNOW_LINE_UP :{BLACK}Kar yüksekliğini bir arttır STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Kar yüksekliğini bir azalt @@ -2695,6 +2755,7 @@ STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Yüksekl STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Boyut: STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} +STR_MAPGEN_MAX_HEIGHTLEVEL_QUERY_CAPT :{WHITE}Azami harita yüksekliğini değiştir STR_MAPGEN_SNOW_LINE_QUERY_CAPT :{WHITE}Kar yüksekliğini değiştir STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Başlangıç yılını değiştir @@ -2719,7 +2780,7 @@ STR_GENERATION_PROGRESS_NUM :{BLACK}{NUM} / STR_GENERATION_WORLD_GENERATION :{BLACK}Harita üretimi STR_GENERATION_RIVER_GENERATION :{BLACK}Nehir oluşturma STR_GENERATION_TREE_GENERATION :{BLACK}Ağaç üretimi -STR_GENERATION_OBJECT_GENERATION :{BLACK}Tasinmaz üretimi +STR_GENERATION_OBJECT_GENERATION :{BLACK}Nesne oluşturma STR_GENERATION_CLEARING_TILES :{BLACK}Engebeli ve kayalik alan oluştur STR_GENERATION_SETTINGUP_GAME :{BLACK}Oyun ayarlanıyor STR_GENERATION_PREPARING_TILELOOP :{BLACK}tile-loop çalıştırılıyor @@ -2749,6 +2810,8 @@ STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Yukarı STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Seçili NewGRF dosyasını listenin yukarısına taşı STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Aşağı Taşı STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Seçili NewGRF dosyasını listenin aşağısına taşı +STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Yükselt +STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Daha yeni sürümü yüklü NewGRF dosyalarını yükselt STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Yüklü NewGRF dosyalarının listesidir. STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Parametreler @@ -2774,6 +2837,14 @@ STR_NEWGRF_SETTINGS_DISABLED :{RED}Etkisiz STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}OpenTTD'nin bu sürümüyle uyumlu değil # NewGRF save preset window +STR_SAVE_PRESET_CAPTION :{WHITE}Ön ayarı kaydet +STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Kullanılabilir ön ayarların listesi, aşağıdaki isimle kaydetmek üzere kopyalamak için birini seçin +STR_SAVE_PRESET_TITLE :{BLACK}Ön ayar için bir isim girin +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Geçerli seçimdeki ön ayarın kaydedilmek için adı +STR_SAVE_PRESET_CANCEL :{BLACK}İptal +STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Ön ayarı değiştirme +STR_SAVE_PRESET_SAVE :{BLACK}Kaydet +STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Ön ayarı geçerli seçili isimle kaydet # NewGRF parameters window STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}NewGRF parametrelerini değiştir @@ -2804,7 +2875,11 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Verilen STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Önceki nesne STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Tüm sahte/yeniden renklendirme/yazı tipi nesnelerini ve baştaki sargıyı atlayarak bir önceki normal nesneye geç STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Seçili nesnenin mevcut gösterimi. Bu nesneyi çizerken hizalama ihmal edilir -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Nesneyi X ve Y ofsetlerini değiştirerek gezdir +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Nesneyi X ve Y ofsetlerini değiştirerek gezdir. Ctrl+Tıklama ile nesneleri bir kerede sekiz birim kaydır +STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Bağılı sıfırla +STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Geçerli bağıl ofsetleri sıfırla +STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}X ofseti: {NUM}, Y ofseti: {NUM} (Gerçek) +STR_SPRITE_ALIGNER_OFFSETS_REL :{BLACK}X ofseti: {NUM}, Y ofseti: {NUM} (Bağıl) STR_SPRITE_ALIGNER_PICKER_BUTTON :{BLACK}Nesne seç STR_SPRITE_ALIGNER_PICKER_TOOLTIP :{BLACK}Ekrandaki herhangi bir yerden bir nesne seçin @@ -2815,7 +2890,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Uyarı: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Hata: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Ölümcül hata: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ölümcül bir NewGRF hatası oluştu: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ölümcül bir NewGRF hatası oluştu:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} OpenTTD tarafından belirtilen TTDPatch sürümüyle çalışmayacaktır STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING}, TTD'nin {STRING} sürümü içindir STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING}, {STRING} ile kullanılmak için tasarlanmıştır @@ -3346,8 +3421,20 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Araç t STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Gemi türünü adlandır STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Uçak türünü adlandır +STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Gizle +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Gizle +STR_BUY_VEHICLE_SHIP_HIDE_TOGGLE_BUTTON :{BLACK}Gizle +STR_BUY_VEHICLE_AIRCRAFT_HIDE_TOGGLE_BUTTON :{BLACK}Gizle +STR_BUY_VEHICLE_TRAIN_SHOW_TOGGLE_BUTTON :{BLACK}Görüntüle +STR_BUY_VEHICLE_ROAD_VEHICLE_SHOW_TOGGLE_BUTTON :{BLACK}Görüntüle +STR_BUY_VEHICLE_SHIP_SHOW_TOGGLE_BUTTON :{BLACK}Görüntüle +STR_BUY_VEHICLE_AIRCRAFT_SHOW_TOGGLE_BUTTON :{BLACK}Görüntüle +STR_BUY_VEHICLE_TRAIN_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Tren aracı türünün gizlenmesini/gösterilmesini aç/kapat +STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Yol aracı türünün gizlenmesini/gösterilmesini aç/kapat +STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Gemi türünün gizlenmesini/gösterilmesini aç/kapat +STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Uçak türünün gizlenmesini/gösterilmesini aç/kapat STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Tren yeniden adlandırılamaz STR_QUERY_RENAME_ROAD_VEHICLE_TYPE_CAPTION :{WHITE}Araç türünü yeniden adlandır @@ -3453,6 +3540,10 @@ STR_REPLACE_VEHICLE_ROAD_VEHICLE :Karayolu taşı STR_REPLACE_VEHICLE_SHIP :Gemi STR_REPLACE_VEHICLE_AIRCRAFT :Uçak +STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Kullanımdaki araçlar +STR_REPLACE_VEHICLE_VEHICLES_IN_USE_TOOLTIP :{BLACK}Sahip olduğunuz araçlara sahip sütun +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Kullanılabilir araçlar +STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK}Araç sütunu değiştirilmek için kullanılabilir STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Değiştirilecek türü seçin STR_REPLACE_HELP_RIGHT_ARRAY :{BLACK}Değiştirilecek türün yerine geçecek türü seçin @@ -3808,6 +3899,10 @@ STR_TIMETABLE_TRAVEL_NOT_TIMETABLED :Gezi (zamanlı STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :En çok {2:VELOCITY} hız ile git (zaman tablosu yok) STR_TIMETABLE_TRAVEL_FOR :{STRING} boyunca yol al STR_TIMETABLE_TRAVEL_FOR_SPEED :{STRING} boyunca en çok {VELOCITY} hız ile git +STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :Seyahat et ({STRING} için, hareket planı yok) +STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :Seyahat et ({STRING} için, hareket planı yok) en fazla {VELOCITY} hızı ile +STR_TIMETABLE_STAY_FOR_ESTIMATED :({STRING} kalma, hareket saati yok) +STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :({STRING} için seyahat, hareket saati yok) STR_TIMETABLE_STAY_FOR :{STRING} bekle STR_TIMETABLE_AND_TRAVEL_FOR :ve şuraya sefer yap: {STRING} STR_TIMETABLE_DAYS :{COMMA}{NBSP}gün @@ -4049,6 +4144,7 @@ STR_ERROR_EXCAVATION_WOULD_DAMAGE :{WHITE}Kazı t STR_ERROR_ALREADY_AT_SEA_LEVEL :{WHITE}... zaten deniz seviyesinde STR_ERROR_TOO_HIGH :{WHITE}... çok yüksek STR_ERROR_ALREADY_LEVELLED :{WHITE}... zaten düz +STR_ERROR_BRIDGE_TOO_HIGH_AFTER_LOWER_LAND :{WHITE}Ardından üzerindeki köprü çok yüksek olacaktı. # Company related errors STR_ERROR_CAN_T_CHANGE_COMPANY_NAME :{WHITE}Şirket ismi değiştirilemez... @@ -4099,6 +4195,8 @@ STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... orma STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... yalnız kar çizgisinin üzerinde yapılabilir STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... yalnız kar çizgisinin altında yapılabilir +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}'{STRING}' fabrikaları için uygun bir alan yoktu +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Daha iyi bir harita için harita oluşturma parametrelerini değiştirin # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Buraya tren istasyonu yapılamıyor... @@ -4236,6 +4334,7 @@ STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Önce k STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Aynı noktada başlayıp bitemez STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}Köprü uçları aynı seviyede değil STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}Köprü bu arazi için çok alçakta +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}Köprü bu arazi için çok yüksek. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Başlangıç ve bitiş aynı çizgi üzerinde olmalı STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... köprünün her iki ucu da karada olmalı STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... köprü çok uzun @@ -4810,6 +4909,7 @@ STR_COMPANY_NAME :{COMPANY} STR_COMPANY_NAME_COMPANY_NUM :{COMPANY} {COMPANY_NUM} STR_DEPOT_NAME :{DEPOT} STR_ENGINE_NAME :{ENGINE} +STR_HIDDEN_ENGINE_NAME :{ENGINE} (gizli) STR_GROUP_NAME :{GROUP} STR_INDUSTRY_NAME :{INDUSTRY} STR_PRESIDENT_NAME :{PRESIDENT_NAME} diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index e245f05b9d..01ca89eecc 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -12,7 +12,7 @@ ##case r d z -# $Id: ukrainian.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: ukrainian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -996,7 +996,7 @@ STR_NEWS_STATION_NOW_ACCEPTS_CARGO_AND_CARGO :{WHITE}{STATION STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Субсидія більше не пропонується:{}{}Перевезення {STRING.r} з {STRING} до {STRING} STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Субсидію скасовано:{}{}Перевезення {STRING.r} з {STRING.r} до {STRING.r} -STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Пропонується річна субсидія {}{}компанії, яка першою привезе {STRING.z} з {STRING} до {STRING}! +STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Пропонується річна субсидія{}{}компанії, яка першою привезе {STRING.z} з {STRING} до {STRING}! STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Субсидію надано {STRING}!{}{}Перевезення {STRING.r} з {STRING} до {STRING} принесе додатково 50% протягом наступного року! STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Субсидію надано {STRING}!{}{}Перевезення {STRING.r} з {STRING} до {STRING} принесе вдвічі більше прибутків наступного року! STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Субсидію надано {STRING}!{}{}Перевезення {STRING.r} з {STRING} до {STRING} принесе втричі більше прибутків наступного року! @@ -2415,9 +2415,9 @@ STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Вибе STR_LINKGRAPH_LEGEND_UNUSED :{TINY_FONT}{BLACK}не використовується STR_LINKGRAPH_LEGEND_SATURATED :{TINY_FONT}{BLACK}заповнений STR_LINKGRAPH_LEGEND_OVERLOADED :{G=m}{TINY_FONT}{BLACK}перевантажений -STR_LINKGRAPH_LEGEND_OVERLOADED.r :{G=m}{TINY_FONT}{BLACK}перевантаженого -STR_LINKGRAPH_LEGEND_OVERLOADED.d :{G=m}{TINY_FONT}{BLACK}перевантаженому -STR_LINKGRAPH_LEGEND_OVERLOADED.z :{G=m}{TINY_FONT}{BLACK}перевантажений +STR_LINKGRAPH_LEGEND_OVERLOADED.r :{TINY_FONT}{BLACK}перевантаженого +STR_LINKGRAPH_LEGEND_OVERLOADED.d :{TINY_FONT}{BLACK}перевантаженому +STR_LINKGRAPH_LEGEND_OVERLOADED.z :{TINY_FONT}{BLACK}перевантажений # Base for station construction window(s) STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Підсвічення зони покриття @@ -2818,7 +2818,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Ця ділян STR_ABOUT_OPENTTD :{WHITE}Про OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Авторське право {COPYRIGHT} 1995 Кріс Сойєр, Всі права захищені STR_ABOUT_VERSION :{BLACK}OpenTTD версія {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 команда OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 команда OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Зберегти гру @@ -3020,7 +3020,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Попередження: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Помилка: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Збій: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Фатальна помилка NewGRF: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Фатальна помилка NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} не буде працювати з версією TTDPatch, вказаною OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} для {STRING}-версії TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} розроблено для {STRING} @@ -4643,61 +4643,61 @@ STR_TOWN_BUILDING_NAME_PIGGY_BANK_1 :Копилка ##id 0x4800 # industry names STR_INDUSTRY_NAME_COAL_MINE :{G=f}Вугільна шахта -STR_INDUSTRY_NAME_COAL_MINE.z :{G=f}вугільну шахту +STR_INDUSTRY_NAME_COAL_MINE.z :вугільну шахту STR_INDUSTRY_NAME_POWER_STATION :{G=f}Електростанція -STR_INDUSTRY_NAME_POWER_STATION.z :{G=f}електростанцію +STR_INDUSTRY_NAME_POWER_STATION.z :електростанцію STR_INDUSTRY_NAME_SAWMILL :{G=f}Лісопилка -STR_INDUSTRY_NAME_SAWMILL.z :{G=f}лісопилку +STR_INDUSTRY_NAME_SAWMILL.z :лісопилку STR_INDUSTRY_NAME_FOREST :{G=m}Ліс -STR_INDUSTRY_NAME_FOREST.z :{G=m}ліс +STR_INDUSTRY_NAME_FOREST.z :ліс STR_INDUSTRY_NAME_OIL_REFINERY :{G=m}Нафтопереробний завод -STR_INDUSTRY_NAME_OIL_REFINERY.z :{G=m}нафтопереробний завод +STR_INDUSTRY_NAME_OIL_REFINERY.z :нафтопереробний завод STR_INDUSTRY_NAME_OIL_RIG :{G=f}Нафтова платформа -STR_INDUSTRY_NAME_OIL_RIG.z :{G=f}нафтову платформу +STR_INDUSTRY_NAME_OIL_RIG.z :нафтову платформу STR_INDUSTRY_NAME_FACTORY :{G=f}Фабрика -STR_INDUSTRY_NAME_FACTORY.z :{G=f}фабрику +STR_INDUSTRY_NAME_FACTORY.z :фабрику STR_INDUSTRY_NAME_PRINTING_WORKS :{G=f}Друкарня -STR_INDUSTRY_NAME_PRINTING_WORKS.z :{G=f}друкарню +STR_INDUSTRY_NAME_PRINTING_WORKS.z :друкарню STR_INDUSTRY_NAME_STEEL_MILL :{G=m}Сталеварний завод -STR_INDUSTRY_NAME_STEEL_MILL.z :{G=m}сталеварний завод +STR_INDUSTRY_NAME_STEEL_MILL.z :сталеварний завод STR_INDUSTRY_NAME_FARM :{G=f}Ферма -STR_INDUSTRY_NAME_FARM.z :{G=f}ферму +STR_INDUSTRY_NAME_FARM.z :ферму STR_INDUSTRY_NAME_COPPER_ORE_MINE :{G=f}Міднорудна шахта -STR_INDUSTRY_NAME_COPPER_ORE_MINE.z :{G=f}міднорудну шахту +STR_INDUSTRY_NAME_COPPER_ORE_MINE.z :міднорудну шахту STR_INDUSTRY_NAME_OIL_WELLS :{G=f}Нафтова свердловина -STR_INDUSTRY_NAME_OIL_WELLS.z :{G=f}нафтову свердловину +STR_INDUSTRY_NAME_OIL_WELLS.z :нафтову свердловину STR_INDUSTRY_NAME_BANK :{G=m}Банк -STR_INDUSTRY_NAME_BANK.z :{G=m}банк +STR_INDUSTRY_NAME_BANK.z :банк STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT :{G=m}Продуктовий завод -STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.z :{G=m}продуктовий завод +STR_INDUSTRY_NAME_FOOD_PROCESSING_PLANT.z :продуктовий завод STR_INDUSTRY_NAME_PAPER_MILL :{G=f}Паперова фабрика -STR_INDUSTRY_NAME_PAPER_MILL.z :{G=f}паперову фабрику +STR_INDUSTRY_NAME_PAPER_MILL.z :паперову фабрику STR_INDUSTRY_NAME_GOLD_MINE :{G=f}Золоторудна шахта -STR_INDUSTRY_NAME_GOLD_MINE.z :{G=f}золоторудну шахту +STR_INDUSTRY_NAME_GOLD_MINE.z :золоторудну шахту STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC :{G=m}Банк -STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.z :{G=m}банк +STR_INDUSTRY_NAME_BANK_TROPIC_ARCTIC.z :банк STR_INDUSTRY_NAME_DIAMOND_MINE :{G=f}Діамантова шахта -STR_INDUSTRY_NAME_DIAMOND_MINE.z :{G=f}діамантову шахту +STR_INDUSTRY_NAME_DIAMOND_MINE.z :діамантову шахту STR_INDUSTRY_NAME_IRON_ORE_MINE :{G=f}Залізорудна шахта -STR_INDUSTRY_NAME_IRON_ORE_MINE.z :{G=f}залізорудну шахту +STR_INDUSTRY_NAME_IRON_ORE_MINE.z :залізорудну шахту STR_INDUSTRY_NAME_FRUIT_PLANTATION :{G=m}Фруктовий сад -STR_INDUSTRY_NAME_FRUIT_PLANTATION.z :{G=m}фруктовий сад +STR_INDUSTRY_NAME_FRUIT_PLANTATION.z :фруктовий сад STR_INDUSTRY_NAME_RUBBER_PLANTATION :{G=m}Каучуковий сад -STR_INDUSTRY_NAME_RUBBER_PLANTATION.z :{G=m}каучуковий сад +STR_INDUSTRY_NAME_RUBBER_PLANTATION.z :каучуковий сад STR_INDUSTRY_NAME_WATER_SUPPLY :Водопостачання STR_INDUSTRY_NAME_WATER_SUPPLY.z :водопостачання STR_INDUSTRY_NAME_WATER_TOWER :{G=f}Водонапірна башта -STR_INDUSTRY_NAME_WATER_TOWER.z :{G=f}водонапірну башту +STR_INDUSTRY_NAME_WATER_TOWER.z :водонапірну башту STR_INDUSTRY_NAME_FACTORY_2 :{G=f}Фабрика -STR_INDUSTRY_NAME_FACTORY_2.z :{G=f}фабрику +STR_INDUSTRY_NAME_FACTORY_2.z :фабрику STR_INDUSTRY_NAME_FARM_2 :{G=f}Ферма -STR_INDUSTRY_NAME_FARM_2.z :{G=f}ферму +STR_INDUSTRY_NAME_FARM_2.z :ферму STR_INDUSTRY_NAME_LUMBER_MILL :{G=f}Лісопилка -STR_INDUSTRY_NAME_LUMBER_MILL.z :{G=f}лісопилку +STR_INDUSTRY_NAME_LUMBER_MILL.z :лісопилку STR_INDUSTRY_NAME_COTTON_CANDY_FOREST :{G=m}Ліс солодкої вати -STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.z :{G=m}ліс солодкої вати +STR_INDUSTRY_NAME_COTTON_CANDY_FOREST.z :ліс солодкої вати STR_INDUSTRY_NAME_CANDY_FACTORY :{G=f}Цукеркова фабрика -STR_INDUSTRY_NAME_CANDY_FACTORY.z :{G=f}цукеркову фабрику +STR_INDUSTRY_NAME_CANDY_FACTORY.z :цукеркову фабрику STR_INDUSTRY_NAME_BATTERY_FARM :Батарейкове поле STR_INDUSTRY_NAME_BATTERY_FARM.z :батарейкове поле STR_INDUSTRY_NAME_COLA_WELLS :Джерело Кока-коли diff --git a/src/lang/unfinished/chuvash.txt b/src/lang/unfinished/chuvash.txt index d73bd736a0..efaaf9ca80 100644 --- a/src/lang/unfinished/chuvash.txt +++ b/src/lang/unfinished/chuvash.txt @@ -7,10 +7,10 @@ ##digitsepcur {NBSP} ##decimalsep , ##winlangid 0x0419 -##grflangid 0x0B +##grflangid 0x0b -# $Id: chuvash.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: chuvash.txt 27478 2015-12-27 11:40:23Z translators $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -518,6 +518,8 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :расна + + # Custom currency window diff --git a/src/lang/unfinished/frisian.txt b/src/lang/unfinished/frisian.txt index 3011ded0ed..6176aa4a92 100644 --- a/src/lang/unfinished/frisian.txt +++ b/src/lang/unfinished/frisian.txt @@ -10,7 +10,7 @@ ##grflangid 0x32 -# $Id: frisian.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: frisian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -1543,6 +1543,7 @@ STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_ALL :Oerol STR_CONFIG_SETTING_TOOLBAR_POS :Plak fan de haad wurkbalk: {STRING} STR_CONFIG_SETTING_STATUSBAR_POS :Posysje fan statusbalke: {STRING} +STR_CONFIG_SETTING_SNAP_RADIUS :Finster snap radius: {STRING} STR_CONFIG_SETTING_SNAP_RADIUS_VALUE :{COMMA} pixel{P 0 "" s} STR_CONFIG_SETTING_SNAP_RADIUS_DISABLED :Útskeakele STR_CONFIG_SETTING_SOFT_LIMIT :Maksimaal oantal non-sticky finsters: {STRING} @@ -1567,6 +1568,7 @@ STR_CONFIG_SETTING_LARGER_TOWNS_VALUE :1 in {COMMA} STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Gjin STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Begjin stêdgrutte fermenigfuldiger: {STRING} +STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Wurkje by de grafyk fan distribúsje eltse{STRING}{NBSP}dagen{P 0:2 "" s} STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :hânmjittich STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymmetrysk STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :symmetrysk @@ -1622,6 +1624,7 @@ STR_CONFIG_SETTING_INTERFACE_GENERAL :{ORANGE}Algemie STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :{ORANGE}konstruksje STR_CONFIG_SETTING_ADVISORS :{ORANGE}Nijs / Adviseurs STR_CONFIG_SETTING_COMPANY :{ORANGE}Bedriuw +STR_CONFIG_SETTING_ACCOUNTING :{ORANGE}Boekhâlding STR_CONFIG_SETTING_VEHICLES :{ORANGE}Auto's STR_CONFIG_SETTING_VEHICLES_PHYSICS :{ORANGE}Natuerkundig model STR_CONFIG_SETTING_VEHICLES_ROUTING :{ORANGE}Route @@ -1643,6 +1646,7 @@ STR_CONFIG_SETTING_PATHFINDER_YAPF_RECOMMENDED :YAPF {BLUE}(Rec STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS :Pathfinder foar treinen: {STRING} STR_CONFIG_SETTING_PATHFINDER_FOR_ROAD_VEHICLES :Pathfinder foar auto's: {STRING} STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS :Pathfinder foar skippen: {STRING} +STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS_HELPTEXT :Pathfinder te brûken foar skippen STR_CONFIG_SETTING_REVERSE_AT_SIGNALS :Omkeare fan treinen by seinen: {STRING} STR_CONFIG_SETTING_QUERY_CAPTION :{WHITE}Feroarje wearde @@ -1830,25 +1834,31 @@ STR_NETWORK_SERVER_LIST_PLAYER_NAME :{BLACK}Namme fa STR_NETWORK_SERVER_LIST_GAME_NAME :{BLACK}Namme STR_NETWORK_SERVER_LIST_GAME_NAME_TOOLTIP :{BLACK}Namme fan dit spul STR_NETWORK_SERVER_LIST_GENERAL_ONLINE :{BLACK}{COMMA}/{COMMA} - {COMMA}/{COMMA} +STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION :{BLACK}kliïnten STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT :{BLACK}{COMMA}x{COMMA} STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION :{BLACK}Lângrutte STR_NETWORK_SERVER_LIST_DATE_CAPTION :{BLACK}Datum STR_NETWORK_SERVER_LIST_YEARS_CAPTION :{BLACK}Jieren STR_NETWORK_SERVER_LIST_LAST_JOINED_SERVER :{BLACK}Server wert dast it lêst op spiele hast +STR_NETWORK_SERVER_LIST_CLICK_TO_SELECT_LAST :{BLACK}Klik om tsjinner wert dast it lêst op spiele hast te selektearje STR_NETWORK_SERVER_LIST_GAME_INFO :{SILVER}Spul INFO +STR_NETWORK_SERVER_LIST_CLIENTS :{SILVER}Kliïnten: {WHITE}{COMMA} / {COMMA} - {COMMA} / {COMMA} STR_NETWORK_SERVER_LIST_LANGUAGE :{SILVER}Taal: {WHITE}{STRING} STR_NETWORK_SERVER_LIST_LANDSCAPE :{SILVER}Lânskip: {WHITE}{STRING} STR_NETWORK_SERVER_LIST_MAP_SIZE :{SILVER}Lângrutte: {WHITE}{COMMA}x{COMMA} STR_NETWORK_SERVER_LIST_SERVER_VERSION :{SILVER}Tsjinnerferzje: {WHITE}{STRING} STR_NETWORK_SERVER_LIST_SERVER_ADDRESS :{SILVER}Tsjinneradres: {WHITE}{STRING} STR_NETWORK_SERVER_LIST_START_DATE :{SILVER}Start datum: {WHITE}{DATE_SHORT} +STR_NETWORK_SERVER_LIST_PASSWORD :{BLACK}Mei wachtwurd beskerme! STR_NETWORK_SERVER_LIST_SERVER_OFFLINE :{SILVER}SERVER NET BESKIKBER STR_NETWORK_SERVER_LIST_SERVER_FULL :{SILVER}SERVER VOL STR_NETWORK_SERVER_LIST_VERSION_MISMATCH :{SILVER}FERKEARDE FERZJE STR_NETWORK_SERVER_LIST_GRF_MISMATCH :{SILVER}FERKEARDE NEWGRF +STR_NETWORK_SERVER_LIST_JOIN_GAME :{BLACK}Meidwaan mei spul +STR_NETWORK_SERVER_LIST_REFRESH_TOOLTIP :{BLACK}Laad tsjinner ynfo opnij STR_NETWORK_SERVER_LIST_FIND_SERVER :{BLACK}Server sykje STR_NETWORK_SERVER_LIST_ADD_SERVER :{BLACK}Tsjinner tafoegje @@ -1856,6 +1866,7 @@ STR_NETWORK_SERVER_LIST_START_SERVER :{BLACK}Start ts STR_NETWORK_SERVER_LIST_START_SERVER_TOOLTIP :{BLACK}Start dien eigen tsjinner STR_NETWORK_SERVER_LIST_PLAYER_NAME_OSKTITLE :{BLACK}Fier dyn namme in +STR_NETWORK_SERVER_LIST_ENTER_IP :{BLACK}Fier de namme fan de host yn # Start new multiplayer server STR_NETWORK_START_SERVER_CAPTION :{WHITE}Start in spul foar multispilers @@ -1865,6 +1876,8 @@ STR_NETWORK_START_SERVER_SET_PASSWORD :{BLACK}Wachtwur STR_NETWORK_START_SERVER_UNADVERTISED :Nee STR_NETWORK_START_SERVER_ADVERTISED :Ja +STR_NETWORK_START_SERVER_CLIENTS_SELECT :{BLACK}{NUM} kliïnt{P "" en} +STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}Maksimaal oantal kliïnten: STR_NETWORK_START_SERVER_COMPANIES_SELECT :{BLACK}{NUM} bedriuw{P "" en} STR_NETWORK_START_SERVER_NUMBER_OF_COMPANIES :{BLACK}Maksimaal tal bedriuwen: STR_NETWORK_START_SERVER_SPECTATORS_SELECT :{BLACK}{NUM} taskôger{P "" s} @@ -1929,6 +1942,8 @@ STR_NETWORK_GAME_LOBBY_NEW_COMPANY :{BLACK}Nei Bedr STR_NETWORK_GAME_LOBBY_NEW_COMPANY_TOOLTIP :{BLACK}Nei bedriuw oprjochtsje STR_NETWORK_GAME_LOBBY_SPECTATE_GAME :{BLACK}Spul taskôgje STR_NETWORK_GAME_LOBBY_SPECTATE_GAME_TOOLTIP :{BLACK}Spul besjen as taskôger +STR_NETWORK_GAME_LOBBY_JOIN_COMPANY :{BLACK}Meidwaan mei dit bedriuw +STR_NETWORK_GAME_LOBBY_JOIN_COMPANY_TOOLTIP :{BLACK}Help dit bedriuw bestjoeren # Network connecting window STR_NETWORK_CONNECTING_CAPTION :{WHITE}Ferbyning meitsje... @@ -1953,21 +1968,26 @@ STR_NETWORK_NEED_GAME_PASSWORD_CAPTION :{WHITE}Tsjinner STR_NETWORK_NEED_COMPANY_PASSWORD_CAPTION :{WHITE}Bedriuw is beskerme. Fier wachtwurd yn # Network company list added strings +STR_NETWORK_COMPANY_LIST_CLIENT_LIST :{WHITE}Client lyst STR_NETWORK_COMPANY_LIST_SPECTATE :{WHITE}Taskôgje STR_NETWORK_COMPANY_LIST_NEW_COMPANY :{WHITE}Nei Bedriuw # Network client list STR_NETWORK_CLIENTLIST_KICK :Skoppe STR_NETWORK_CLIENTLIST_GIVE_MONEY :Jouw jild +STR_NETWORK_CLIENTLIST_SPEAK_TO_ALL :Tsjin elkenien prate STR_NETWORK_CLIENTLIST_SPEAK_TO_CLIENT :Priveeberjocht STR_NETWORK_SERVER :Tsjinner +STR_NETWORK_CLIENT :Kliïnt STR_NETWORK_SPECTATORS :Taskôgers STR_NETWORK_TOOLBAR_LIST_SPECTATOR :{BLACK}Taskôger # Network set password +STR_COMPANY_PASSWORD_OK :{BLACK}Jou it bedriuw it nije wachtwurd STR_COMPANY_PASSWORD_CAPTION :{WHITE}Bedriuwswachtwurd +STR_COMPANY_PASSWORD_MAKE_DEFAULT_TOOLTIP :{BLACK}Brûk dit bedriuwswachtwurd gewoanwei foar alle nije bedriuwen # Network company info join/password STR_COMPANY_VIEW_JOIN :{BLACK}Mei spielje @@ -1985,22 +2005,28 @@ STR_NETWORK_CHAT_TO_COMPANY :[Team] Oan {STR STR_NETWORK_CHAT_CLIENT :[Privee] {STRING}: {WHITE}{STRING} STR_NETWORK_CHAT_TO_CLIENT :[Privee] Nei {STRING}: {WHITE}{STRING} STR_NETWORK_CHAT_ALL :[Yderiin] {STRING}: {WHITE}{STRING} +STR_NETWORK_CHAT_OSKTITLE :{BLACK}Skriuw berjocht foar netwurk chat # Network messages STR_NETWORK_ERROR_NOSERVER :{WHITE}Koe gjin networkspullen fine +STR_NETWORK_ERROR_NEWGRF_MISMATCH :{WHITE}Koe gjin ferbyning meitsje fanwegen ferkearde NewGRF +STR_NETWORK_ERROR_DESYNC :{WHITE}Koe net synchronisearje mei netwurkspul STR_NETWORK_ERROR_LOSTCONNECTION :{WHITE}Networkspul ferbining kwyt STR_NETWORK_ERROR_SAVEGAMEERROR :{WHITE}Koe opslein spul net laden STR_NETWORK_ERROR_SERVER_START :{WHITE}Koe de tsjinner net starte STR_NETWORK_ERROR_CLIENT_START :{WHITE}Koe gjin ferbyning meitsje STR_NETWORK_ERROR_TIMEOUT :{WHITE}Ferbining #{NUM} ferrûn +STR_NETWORK_ERROR_SERVER_ERROR :{WHITE}In protokol flater is opmurken en de ferbining is sletten STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Ferkeard wachtwurd STR_NETWORK_ERROR_SERVER_FULL :{WHITE}De tsjinner is vol +STR_NETWORK_ERROR_CHEATER :Falsk spielje net tastien op disse server STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Do stjoerst tevolle opdrachten ny de server ############ Leave those lines in this order!! STR_NETWORK_ERROR_CLIENT_GENERAL :algemiene flater STR_NETWORK_ERROR_CLIENT_SAVEGAME :koe it lân net lade STR_NETWORK_ERROR_CLIENT_CONNECTION_LOST :ferbining kwyt +STR_NETWORK_ERROR_CLIENT_PROTOCOL_ERROR :protokol flater STR_NETWORK_ERROR_CLIENT_NEWGRF_MISMATCH :Ferkearde NewGRF STR_NETWORK_ERROR_CLIENT_NOT_AUTHORIZED :net autorisearre STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :ûnjildich of ûnferwacht pakket ûnfange @@ -2018,9 +2044,13 @@ STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}De lêst # Network related errors STR_NETWORK_SERVER_MESSAGE :*** {1:STRING} ############ Leave those lines in this order!! +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_1 :Spul stiet noch yn rêst ({STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_2 :Spul stiet noch yn rêst ({STRING}, {STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_4 :Spul stiet nog yn rêst ({STRING}, {STRING}, {STRING}, {STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_REASON_MANUAL :hânmjittich STR_NETWORK_SERVER_MESSAGE_GAME_REASON_GAME_SCRIPT :spulskript ############ End of leave-in-this-order +STR_NETWORK_MESSAGE_CLIENT_LEAVING :Ferlit STR_NETWORK_MESSAGE_CLIENT_JOINED_ID :*** {STRING} der is ien bykommen(Client #{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} is in neie taskôger STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} hat syn/har namme oanpast nei {STRING} @@ -2035,6 +2065,8 @@ STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Alles de STR_CONTENT_OPEN_URL :{BLACK}Webside besykje STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Webside foar dizze ynhâld besykje STR_CONTENT_DOWNLOAD_CAPTION :{BLACK}Delhelje +STR_CONTENT_DOWNLOAD_CAPTION_TOOLTIP :{BLACK}Begjinne mei delheljen fan selektearre ynhâld +STR_CONTENT_DETAIL_TITLE :{SILVER}KONTENT INFO STR_CONTENT_DETAIL_NAME :{SILVER}Namme: {WHITE}{STRING} STR_CONTENT_DETAIL_VERSION :{SILVER}Ferzje: {WHITE}{STRING} STR_CONTENT_DETAIL_DESCRIPTION :{SILVER}Beskriuwing: {WHITE}{STRING} @@ -2046,9 +2078,12 @@ STR_CONTENT_NO_ZLIB_SUB :{WHITE}... delh # Order of these is important! STR_CONTENT_TYPE_NEWGRF :NewGRF STR_CONTENT_TYPE_AI :AI +STR_CONTENT_TYPE_AI_LIBRARY :AI biblioteek STR_CONTENT_TYPE_SCENARIO :Lânskip STR_CONTENT_TYPE_HEIGHTMAP :Hichtemap +STR_CONTENT_TYPE_BASE_SOUNDS :Basislûden STR_CONTENT_TYPE_GAME_SCRIPT :Spulskript +STR_CONTENT_TYPE_GS_LIBRARY :GS biblioteek # Content downloading progress window STR_CONTENT_DOWNLOAD_TITLE :{WHITE}Ynhâld delheljen... @@ -2058,6 +2093,7 @@ STR_CONTENT_DOWNLOAD_COMPLETE :{WHITE}Delhelje STR_CONTENT_DOWNLOAD_PROGRESS_SIZE :{WHITE}{BYTES} fan {BYTES} delhelle ({NUM} %) # Content downloading error messages +STR_CONTENT_ERROR_COULD_NOT_CONNECT :{WHITE}Koe gjin ferbyning mei ynhâldtsjinner meitsje... STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD :{WHITE}Delheljen net slagge... STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_CONNECTION_LOST :{WHITE}... ferbining kwyt STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_FILE_NOT_WRITABLE :{WHITE}... bestân koe net opslein wurde @@ -2069,6 +2105,8 @@ STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Nee, Ope # Transparency settings window STR_TRANSPARENCY_CAPTION :{WHITE}Trochsichtigenopsjes +STR_TRANSPARENT_SIGNS_TOOLTIP :{BLACK}Skeakelje trochsichtigens fan seinen. Brûk Ctrl+Klik om fêste te setten +STR_TRANSPARENT_TREES_TOOLTIP :{BLACK}Skeakelje trochsichtigens fan beammen. Brûk Ctrl+Klik om fêste te setten # Linkgraph legend window STR_LINKGRAPH_LEGEND_CAPTION :{BLACK}Frachtstreamleginda @@ -2101,6 +2139,7 @@ STR_RAIL_TOOLBAR_MONORAIL_CONSTRUCTION_CAPTION :Monorail Konstr STR_RAIL_TOOLBAR_MAGLEV_CONSTRUCTION_CAPTION :Maglev Konstruksje STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Bou spoarwei +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Spoar bouwe mei help fan Autorail. Brûk Ctrl foar ferwiderje. Brûk Shift foar ferwachte kosten. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Bou treindepot (foar bou en ûnderhâld fan treinen) STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Spoar nei kontrôlepost omsette STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Bou treinstasjon @@ -2108,6 +2147,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Bou spoa STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Bou in spoarbrêge STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Bou in spoartunnel STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Set bouen/fuortheljen foar spoaren en stopljochten oan/út +STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Soart spoar ombouwe/opwurdearje. Shift skeakelt tusken bouwe/taksearje fan de kosten STR_RAIL_NAME_RAILROAD :Spoarwei STR_RAIL_NAME_ELRAIL :Elektrifisearre spoarwei @@ -2153,6 +2193,7 @@ STR_BRIDGE_NAME_SUSPENSION_CONCRETE :Hingbrêge, Bet STR_BRIDGE_NAME_WOODEN :Hout STR_BRIDGE_NAME_CONCRETE :Beton STR_BRIDGE_NAME_TUBULAR_STEEL :Buis, Stiel +STR_BRIDGE_TUBULAR_SILICON :Buisbrêge silisium # Road construction toolbar @@ -2163,7 +2204,9 @@ STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_VEHICLE_DEPOT :{BLACK}Bou auto STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Bou busstasjon STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Bou laadstasjon foar frachtauto's STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_BRIDGE :{BLACK}Bou autobrêge +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_BRIDGE :{BLACK}Bou in trambrêge. Shift skeakelt tusken bouwe/taksearje fan de kosten STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL :{BLACK}Bou autotunnel +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Bou in tramtunnel. Brûk Shift foar ferwachte kosten. STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Wikselje tusken bou en fuortheljen fan dyken # Road depot construction window @@ -2176,17 +2219,24 @@ STR_BUILD_DEPOT_TRAM_ORIENTATION_SELECT_TOOLTIP :{BLACK}Kies rjo STR_STATION_BUILD_BUS_ORIENTATION :{WHITE}Busstation Rjochting STR_STATION_BUILD_BUS_ORIENTATION_TOOLTIP :{BLACK}Selektearje rjochting fan busstasjon STR_STATION_BUILD_TRUCK_ORIENTATION :{WHITE}Frachtstasjon Rjochting +STR_STATION_BUILD_TRUCK_ORIENTATION_TOOLTIP :{BLACK}Kies rjochting foar frachtweinstasjon +STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION :{WHITE}Rjochting Passazjiertramstasjon +STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION_TOOLTIP :{BLACK}Kies rjochting passazjiertramstasjon STR_STATION_BUILD_CARGO_TRAM_ORIENTATION :{WHITE}Rjochting fan Tramstasjon STR_STATION_BUILD_CARGO_TRAM_ORIENTATION_TOOLTIP :{BLACK}Kies rjochting fan frachttramstasjon # Waterways toolbar (last two for SE only) STR_WATERWAYS_TOOLBAR_CAPTION :{WHITE}Wetterwei Konstruksje STR_WATERWAYS_TOOLBAR_CAPTION_SE :{WHITE}Wetterwei +STR_WATERWAYS_TOOLBAR_BUILD_CANALS_TOOLTIP :{BLACK}Bou kanalen. Shift skeakelt tusken bouwe/taksearje fan de kosten +STR_WATERWAYS_TOOLBAR_BUILD_LOCKS_TOOLTIP :{BLACK}Bou in slûs. Brûk Shift foar ferwachte kosten. +STR_WATERWAYS_TOOLBAR_BUILD_DEPOT_TOOLTIP :{BLACK}Bou skipmakkerij (Foar bou en ûnderhâld fan skippen). Brûk Shift foar ferwachte kosten STR_WATERWAYS_TOOLBAR_BUILD_AQUEDUCT_TOOLTIP :{BLACK}Bou akwadukt. Shift skeakelt tusken bouwe/taksearje fan de kosten STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Tsjut wettergebied oan.{}Meitsje in kanaal, of ast' Ctrl op seenivo yndrukst, dan oerstreamt it gebied deromhinne STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Rivier pleatse. # Ship depot construction window +STR_DEPOT_BUILD_SHIP_CAPTION :{WHITE}Skipmakkerij oriïntaasje # Dock construction window STR_STATION_BUILD_DOCK_CAPTION :{WHITE}Haven @@ -2197,10 +2247,12 @@ STR_TOOLBAR_AIRCRAFT_CAPTION :{WHITE}Fleanfji # Airport construction window STR_STATION_BUILD_AIRPORT_CAPTION :{WHITE}Fleanfjild Seleksje STR_STATION_BUILD_AIRPORT_TOOLTIP :{BLACK}Kies grutte/type fleanfjild +STR_STATION_BUILD_AIRPORT_CLASS_LABEL :{BLACK}Fleanfjild klasse STR_STATION_BUILD_AIRPORT_LAYOUT_NAME :{BLACK}Patroan {NUM} STR_AIRPORT_SMALL :Lyts STR_AIRPORT_CITY :Stêd +STR_AIRPORT_METRO :status: kwyt STR_AIRPORT_INTERNATIONAL :Ynternasjonaal STR_AIRPORT_COMMUTER :Forins STR_AIRPORT_INTERCONTINENTAL :Ynterkontinentaal @@ -2213,6 +2265,7 @@ STR_AIRPORT_CLASS_LARGE :Grut fleanfjild STR_AIRPORT_CLASS_HUB :Hubfleansjilden STR_AIRPORT_CLASS_HELIPORTS :Helikopter fleanfjild +STR_STATION_BUILD_NOISE :{BLACK}Lûdsoerlêst: {GOLD}{COMMA} # Landscaping toolbar STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}Ferleech in hoekje lân @@ -2232,6 +2285,7 @@ STR_OBJECT_CLASS_TRNS :Stjoerders # Tree planting window (last two for SE only) STR_PLANT_TREE_CAPTION :{WHITE}Beammen STR_PLANT_TREE_TOOLTIP :{BLACK}Selektear soart beam. As it fakje al in beam hat, sil dit mear beamen tafoege fan it mixed soart ûnôfhinklike fan it selekteare soart +STR_TREES_RANDOM_TYPE :{BLACK}Samar in soart beam STR_TREES_RANDOM_TREES_BUTTON :{BLACK}Samar wat beammen STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Plantsje beammen samar troch it lânskip @@ -2255,6 +2309,7 @@ STR_FOUND_TOWN_NEW_TOWN_BUTTON :{BLACK}Nije St STR_FOUND_TOWN_NEW_TOWN_TOOLTIP :{BLACK}Bou nije stêd STR_FOUND_TOWN_RANDOM_TOWN_BUTTON :{BLACK}Samar in stêd STR_FOUND_TOWN_RANDOM_TOWN_TOOLTIP :{BLACK}Bou samar ergens in stêd +STR_FOUND_TOWN_RANDOM_TOWNS_TOOLTIP :{BLACK}Pleats Stêden en Doarpen oer de map hinne STR_FOUND_TOWN_NAME_TITLE :{YELLOW}Stêd namme: STR_FOUND_TOWN_NAME_EDITOR_TITLE :{BLACK}Typ namme fan in stêd @@ -2281,11 +2336,15 @@ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Samar # Fund new industry window STR_FUND_INDUSTRY_CAPTION :{WHITE}Betelje nije yndustry +STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Pleats yndustry oer de map hinne STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Kostet: {YELLOW}{CURRENCY_LONG} STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Bouwe STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Finansierje # Industry cargoes window +STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Yndustrykeatlings foar {STRING} yndustry +STR_INDUSTRY_CARGOES_CARGO_CAPTION :{WHITE}Yndustrykeatlings foar {STRING} fracht +STR_INDUSTRY_CARGOES_PRODUCERS :produksje yndustry STR_INDUSTRY_CARGOES_CUSTOMERS :{WHITE}Yndustry aksepteare STR_INDUSTRY_CARGOES_HOUSES :{WHITE}Hûzen STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}Lit produksjeketting sjen @@ -2413,7 +2472,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Lân fan bedriu STR_ABOUT_OPENTTD :{WHITE}Oer OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Orizjineel copyright {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD-ferzje {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 It OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 It OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Spul Opslaan @@ -2526,15 +2585,15 @@ STR_NEWGRF_SETTINGS_PRESET_SAVE_QUERY :{BLACK}Jou dizz STR_NEWGRF_SETTINGS_PRESET_DELETE :{BLACK}Ferwiderje ynstellings STR_NEWGRF_SETTINGS_PRESET_DELETE_TOOLTIP :{BLACK}Ferwiderje de selektearre ynstellings STR_NEWGRF_SETTINGS_ADD :{BLACK}Tafoeging -STR_NEWGRF_SETTINGS_ADD_FILE_TOOLTIP :{BLACK}Foeg de selektjere NewGRF ta oan dyn ynstellings +STR_NEWGRF_SETTINGS_ADD_FILE_TOOLTIP :{BLACK}Foeg de selektearre NewGRF oan dyn ynstellings ta STR_NEWGRF_SETTINGS_RESCAN_FILES :{BLACK}Lit sykje ny nije bestanden STR_NEWGRF_SETTINGS_RESCAN_FILES_TOOLTIP :{BLACK}Fernij list my beskikbere NewGRF bestanden STR_NEWGRF_SETTINGS_REMOVE :{BLACK}Fuorthelje STR_NEWGRF_SETTINGS_REMOVE_TOOLTIP :{BLACK}Smyt de selektearre NewGRF út de list STR_NEWGRF_SETTINGS_MOVEUP :{BLACK}Pleats heger -STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Set selektjere NewGRF boppe oan de list +STR_NEWGRF_SETTINGS_MOVEUP_TOOLTIP :{BLACK}Set selektearre NewGRF boppenoan de list STR_NEWGRF_SETTINGS_MOVEDOWN :{BLACK}Pleats leger -STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Set selektjere NewGRF ûnderoan de list +STR_NEWGRF_SETTINGS_MOVEDOWN_TOOLTIP :{BLACK}Set selektearre NewGRF ûnderoan de list STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Upwurdearje STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}In list fan ynstalearre NewGRF bestânen @@ -2563,6 +2622,7 @@ STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Dat strykt # NewGRF save preset window STR_SAVE_PRESET_CAPTION :{WHITE}Sla ynstellings op STR_SAVE_PRESET_TITLE :{BLACK}Jou dizze ynstellings in namme +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Op dit stuit selektearre namme foar preset om op te slaan STR_SAVE_PRESET_CANCEL :{BLACK}Annulearje STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Ynstellings net feroarje STR_SAVE_PRESET_SAVE :{BLACK}Opslaan @@ -2609,7 +2669,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Warskôging: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Flater: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Fatale flater: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Der hat in fatale NewGRF-flater plakfûn: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Der hat in fatale NewGRF-flater plakfûn:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} sil net wurkje kinne mei de TTDPatch-ferzje dy't troch OpenTTD meldt wurdt STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} is makke foar de {STRING}-ferzje fan TTD STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} makke om te brûken tegeare my{STRING} @@ -2658,6 +2718,7 @@ STR_NEWGRF_BROKEN_CAPACITY :{WHITE}Hy hat d # 'User removed essential NewGRFs'-placeholders for stuff without specs STR_NEWGRF_INVALID_CARGO : STR_NEWGRF_INVALID_CARGO_ABBREV :?? +STR_NEWGRF_INVALID_CARGO_QUANTITY :{COMMA} fan <ûnjildiche fracht> STR_NEWGRF_INVALID_ENGINE : STR_NEWGRF_INVALID_INDUSTRYTYPE : @@ -2665,6 +2726,8 @@ STR_NEWGRF_INVALID_INDUSTRYTYPE : # NewGRF scanning window +STR_NEWGRF_SCAN_CAPTION :{WHITE}NewGRFs neisjen +STR_NEWGRF_SCAN_MESSAGE :{BLACK}Sykje nei NewGRFs. Dit kin in skoftke duorje. # Sign list window STR_SIGN_LIST_CAPTION :{WHITE}Boerdenlist - {COMMA} Boerd{P "" en} @@ -2734,11 +2797,13 @@ STR_LOCAL_AUTHORITY_ACTION_BRIBE :Keapje it lokal STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{YELLOW}Begjin in lytse advertinsjecampanje, om mear passazjiers en fracht nei dyn transporttsjinsten te lûken.{}Kostet: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{YELLOW}Begjin in middelgrutte advertinsjecampanje, om mear passazjiers en fracht nei dyn transporttsjinsten te lûken.{}Kostet: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{YELLOW}Begjin in grutte advertinsjecampanje, om mear passazjiers en fracht nei dyn transport tsjinsten te lûken.{}Kostet: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW}Subsidearje de fernijing fan it dikenstelsel yn dizze stêd. Jout tsjin de seis moannen grutte oerlêst foar it ferkear {}Kosten: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW}Subsidearje de fernijing fan it dikenstelsel yn dizze stêd. Jout tsjin de seis moannen grutte oerlêst foar it ferkear{}Kosten: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{YELLOW}Bou in stânbyld ter eare fan jo bedriuw.{}Kostet: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW}Subsidearje de bou fan nije kommersjele gebouwen yn dizze stêd.{}Kosten: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}Keapje de gemeente om. Mei it risiko op in boete ast betrape wurdst.{}kosten: {CURRENCY_LONG} # Goal window +STR_GOALS_CAPTION :{WHITE}{COMPANY} Doelen STR_GOALS_SPECTATOR_CAPTION :{WHITE}Globalde doelen STR_GOALS_TEXT :{ORANGE}{STRING} STR_GOALS_NONE :{ORANGE}- Gjin - @@ -2767,6 +2832,7 @@ STR_GOAL_QUESTION_BUTTON_STOP :Stopje STR_GOAL_QUESTION_BUTTON_START :Start STR_GOAL_QUESTION_BUTTON_GO :Gean STR_GOAL_QUESTION_BUTTON_CONTINUE :Trjochgean +STR_GOAL_QUESTION_BUTTON_RESTART :Herstarte STR_GOAL_QUESTION_BUTTON_POSTPONE :Utstelle STR_GOAL_QUESTION_BUTTON_SURRENDER :Oerjaan STR_GOAL_QUESTION_BUTTON_CLOSE :Slute @@ -2810,8 +2876,10 @@ STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Akseptea STR_STATION_VIEW_ACCEPTS_CARGO :{BLACK}Aksepteart: {WHITE}{CARGO_LIST} STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_SELF :{BLACK}Dit stasjon hat eksklusyfe transportrjochten in dizze plak. +STR_STATIOV_VIEW_EXCLUSIVE_RIGHTS_COMPANY :{YELLOW}{COMPANY}{BLACK} Hat eksklusyfe transportrjochten in dizze plak kocht. STR_STATION_VIEW_RATINGS_TOOLTIP :{BLACK}Stasjonwurdearing sjen litte +STR_STATION_VIEW_SUPPLY_RATINGS_TITLE :{BLACK}Moanlikse foarried en wurdearring: STR_STATION_VIEW_CARGO_SUPPLY_RATING :{WHITE}{STRING}: {YELLOW}{COMMA} / {STRING} ({COMMA}%) STR_STATION_VIEW_GROUP :{BLACK}Groepearje by @@ -2909,6 +2977,8 @@ STR_COMPANY_VIEW_VEHICLES_NONE :{WHITE}Gjin STR_COMPANY_VIEW_COMPANY_VALUE :{GOLD}Bedriuwswearde: {WHITE}{CURRENCY_LONG} STR_COMPANY_VIEW_SHARES_OWNED_BY :{WHITE}({COMMA}% besit fan {COMPANY}) STR_COMPANY_VIEW_INFRASTRUCTURE :{GOLD}Ynfrastruktuer: +STR_COMPANY_VIEW_INFRASTRUCTURE_ROAD :{WHITE}{COMMA} stikje dyk{P "" s} +STR_COMPANY_VIEW_INFRASTRUCTURE_STATION :{WHITE}{COMMA} stasjontegel{P "" s} STR_COMPANY_VIEW_INFRASTRUCTURE_AIRPORT :{WHITE}{COMMA} fleanfjild{P "" en} STR_COMPANY_VIEW_INFRASTRUCTURE_NONE :{WHITE}Gjin @@ -2941,9 +3011,11 @@ STR_BUY_COMPANY_MESSAGE :{WHITE}Wy sykje # Company infrastructure window STR_COMPANY_INFRASTRUCTURE_VIEW_CAPTION :{WHITE}Ynfrastruktuer fan {COMPANY} STR_COMPANY_INFRASTRUCTURE_VIEW_SIGNALS :{WHITE}Seinen +STR_COMPANY_INFRASTRUCTURE_VIEW_ROAD_SECT :{GOLD}Stikjes dyk: STR_COMPANY_INFRASTRUCTURE_VIEW_ROAD :{WHITE}Dyk STR_COMPANY_INFRASTRUCTURE_VIEW_TRAMWAY :{WHITE}Tramwei STR_COMPANY_INFRASTRUCTURE_VIEW_STATION_SECT :{GOLD}Stasjons: +STR_COMPANY_INFRASTRUCTURE_VIEW_STATIONS :{WHITE}Stasjontegels STR_COMPANY_INFRASTRUCTURE_VIEW_AIRPORTS :{WHITE}Fleanfjilden STR_COMPANY_INFRASTRUCTURE_VIEW_TOTAL :{WHITE}{CURRENCY_LONG}/jr @@ -3002,6 +3074,7 @@ STR_VEHICLE_LIST_SEND_ROAD_VEHICLE_TO_DEPOT :Stjoer nei depo STR_VEHICLE_LIST_SEND_SHIP_TO_DEPOT :Stjoer nei depot STR_VEHICLE_LIST_SEND_AIRCRAFT_TO_HANGAR :Stjoer nei hangaar +STR_VEHICLE_LIST_MASS_START_LIST_TOOLTIP :{BLACK}Klik om alle weinen út disse list út ein sette te litten # Group window @@ -3021,6 +3094,8 @@ STR_GROUP_REMOVE_ALL_VEHICLES :Alle fiertugen # Build vehicle window +STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION :Nije spoar weinen +STR_BUY_VEHICLE_TRAIN_ELRAIL_CAPTION :Nije elektryske treinen STR_BUY_VEHICLE_ROAD_VEHICLE_CAPTION :Nije Weinen STR_BUY_VEHICLE_SHIP_CAPTION :Nije Skepen @@ -3039,6 +3114,9 @@ STR_PURCHASE_INFO_COST_SPEED :{BLACK}Kosten: STR_PURCHASE_INFO_AIRCRAFT_CAPACITY :{BLACK}Kapasiteit: {GOLD}{CARGO_LONG}, {CARGO_LONG} STR_PURCHASE_INFO_REFITTABLE_TO :{BLACK}Kin omboud wurde nei: {GOLD}{STRING} STR_PURCHASE_INFO_ALL_TYPES :Alle frachttypen +STR_PURCHASE_INFO_ALL_BUT :Alles útsein {CARGO_LIST} +STR_PURCHASE_INFO_MAX_TE :{BLACK}Maks. Lûkkrêft: {GOLD}{FORCE} +STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Berik: {GOLD}{COMMA} flakken STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Keapje auto @@ -3059,7 +3137,7 @@ STR_BUY_VEHICLE_AIRCRAFT_RENAME_BUTTON :{BLACK}Jow in n STR_BUY_VEHICLE_TRAIN_RENAME_TOOLTIP :{BLACK}Jow trein in nije namme STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_TOOLTIP :{BLACK}Jow auto in nije namme STR_BUY_VEHICLE_SHIP_RENAME_TOOLTIP :{BLACK}Jow boat type in nije namme -STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Jow fleantúg type in nije namme +STR_BUY_VEHICLE_AIRCRAFT_RENAME_TOOLTIP :{BLACK}Fleantúch type in nije nammer jaan STR_BUY_VEHICLE_TRAIN_HIDE_TOGGLE_BUTTON :{BLACK}Ferbergje STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_TOGGLE_BUTTON :{BLACK}Ferbergje @@ -3076,6 +3154,8 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Wikselje STR_BUY_VEHICLE_SHIP_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Wikselje tusken it ferbergje/sjen litte fan it soart skip STR_BUY_VEHICLE_AIRCRAFT_HIDE_SHOW_TOGGLE_TOOLTIP :{BLACK}Wikselje tusken it ferbergje/sjen litte fan it soart fleanmasine +STR_QUERY_RENAME_TRAIN_TYPE_CAPTION :{WHITE}Jou treinmodel in oare namme +STR_QUERY_RENAME_AIRCRAFT_TYPE_CAPTION :{WHITE}Fleantúch type in nije namme jaan # Depot window STR_DEPOT_CAPTION :{WHITE}{DEPOT} @@ -3087,10 +3167,20 @@ STR_DEPOT_NO_ENGINE :{BLACK}- STR_DEPOT_VEHICLE_TOOLTIP :{BLACK}{ENGINE}{STRING} STR_DEPOT_VEHICLE_TOOLTIP_CARGO :{}{CARGO_LONG} ({CARGO_SHORT}) +STR_DEPOT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Weinen - Brûk rjochter mûsklik op de wein foar ynformaasje +STR_DEPOT_SHIP_LIST_TOOLTIP :{BLACK}Skepen - Brûk rjochter mûsklik op it skip foar ynformaasje + +STR_DEPOT_TRAIN_SELL_TOOLTIP :{BLACK}tôgje trein hjirhinne om it te ferkeapjen. +STR_DEPOT_ROAD_VEHICLE_SELL_TOOLTIP :{BLACK}tôgje wein hjirhinne om it te ferkeapjen. +STR_DEPOT_AIRCRAFT_SELL_TOOLTIP :{BLACK}tôgje fleantúg hjirhinne om it te ferkeapjen. +STR_DEPOT_SELL_ALL_BUTTON_TRAIN_TOOLTIP :{BLACK}Ferkeapje alle treinen yn dit depot +STR_DEPOT_SELL_ALL_BUTTON_ROAD_VEHICLE_TOOLTIP :Ferkeapje alle weinen yn disse garage +STR_DEPOT_SELL_ALL_BUTTON_AIRCRAFT_TOOLTIP :{BLACK}Ferkeapje alle fleantugen yn hangar - +STR_DEPOT_AUTOREPLACE_SHIP_TOOLTIP :{BLACK}Ferfang automatysk skippen yn de skipmakkerij +STR_DEPOT_AUTOREPLACE_AIRCRAFT_TOOLTIP :{BLACK}Ferfang automatysk alle fleantúgen yn disse fleantúchhangaar STR_DEPOT_TRAIN_NEW_VEHICLES_BUTTON :{BLACK}Nije fiertugen STR_DEPOT_ROAD_VEHICLE_NEW_VEHICLES_BUTTON :{BLACK}Nije Weinen @@ -3105,6 +3195,9 @@ STR_DEPOT_AIRCRAFT_NEW_VEHICLES_TOOLTIP :{BLACK}Nij flea +STR_DEPOT_MASS_STOP_DEPOT_TRAIN_TOOLTIP :{BLACK}Klik om alle treinen yn dit depot te stopjen +STR_DEPOT_MASS_STOP_DEPOT_ROAD_VEHICLE_TOOLTIP :{BLACK}Klik om alle weinen yn dizze garaazje te stopjen +STR_DEPOT_MASS_STOP_HANGAR_TOOLTIP :{BLACK}Klik om alle fleantugen yn dizze hangar te stopje @@ -3119,8 +3212,11 @@ STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE :monorail lokomo STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE :maglevlokomotyf STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Kosten: {CURRENCY_LONG} Gewicht: {WEIGHT_SHORT}{}Snelheid: {VELOCITY} Kracht: {POWER}{}Underhâldskosten: {CURRENCY_LONG}/jr{}Kapasiteit: {CARGO_LONG} +STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAPACITY_RUNCOST :{BLACK}Kosten: {CURRENCY_LONG} Maks. Faasje: {VELOCITY}{}Kapasiteit: {CARGO_LONG}{}Underhâldskosten: {CURRENCY_LONG}/jr +STR_ENGINE_PREVIEW_COST_MAX_SPEED_RANGE_CAPACITY_RUNCOST :{BLACK}Kosten: {CURRENCY_LONG} Maks. Faasje: {VELOCITY} Bereik: {COMMA} tegels{}Kapasiteit: {CARGO_LONG}{}Underhâldskosten: {CURRENCY_LONG}/jr # Autoreplace window +STR_REPLACE_VEHICLES_WHITE :{WHITE}Ferfang {STRING} - {STRING} STR_REPLACE_VEHICLE_TRAIN :Trein STR_REPLACE_VEHICLE_ROAD_VEHICLE :Auto STR_REPLACE_VEHICLE_SHIP :Skip @@ -3129,30 +3225,51 @@ STR_REPLACE_VEHICLE_AIRCRAFT :Fleanmasine STR_REPLACE_VEHICLE_VEHICLES_IN_USE :{YELLOW}Fiertúgen dy't yn gebrûk binne STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}Beskikbere fiertugen +STR_REPLACE_HELP_LEFT_ARRAY :{BLACK}Selektearje it type lokomotyf om te ferfangen + +STR_REPLACE_VEHICLES_NOW :No alle fiertugen ferfange +STR_REPLACE_VEHICLES_WHEN_OLD :Ferfang allinech âlde weinen - +STR_REPLACE_MONORAIL_VEHICLES :Monorail weinen +STR_REPLACE_MAGLEV_VEHICLES :Maglev treinen # Vehicle view STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE} +STR_VEHICLE_VIEW_TRAIN_LOCATION_TOOLTIP :{BLACK}Sintrearje it byld op de lokaasje fan disse trein. bij Ctrl+Click bliuwst it skip folgjen +STR_VEHICLE_VIEW_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Sintrearje it byld op de lokaasje van dizze wein. Brûk Ctrl+klik om dizze wein te folgjen +STR_VEHICLE_VIEW_SHIP_LOCATION_TOOLTIP :{BLACK}Sintrearje it byld op de lokaasje fan dit skip. bij Ctrl+Click bliuwst it skip folgjen STR_VEHICLE_VIEW_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Sintrearje it byld op de lokaasje fan dit fleantúch +STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Stjoer trein nei depot. Brûk Ctrl+Klik om allinich ûnderhâld te jaan +STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Stjoer wein nei garaazje. Brûk Ctrl+Klik om allinich ûnderhâld te jaan +STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Stjoer skip nij skipmakkerij. Brûk Ctrl+klik om skip ûnderhâld te jaan +STR_VEHICLE_VIEW_AIRCRAFT_SEND_TO_DEPOT_TOOLTIP :{BLACK}Stjoer fleantúch nei hanger. Brûk Ctrl+klik om allinich ûnderhald te jaan +STR_VEHICLE_VIEW_TRAIN_REFIT_TOOLTIP :{BLACK}Trein ombouwe om in oar soart fracht mei te nimmen +STR_VEHICLE_VIEW_ROAD_VEHICLE_REFIT_TOOLTIP :{BLACK}Wein ombouwe om in oar soart fracht mei te nimmen +STR_VEHICLE_VIEW_SHIP_REFIT_TOOLTIP :{BLACK}Skip ombouwe nei in oar saort fracht +STR_VEHICLE_VIEW_ROAD_VEHICLE_ORDERS_TOOLTIP :{BLACK}Lit oarders fan'e wein sjen. Brûk Ctrl+Klik om de tjinstregeling te sjen +STR_VEHICLE_VIEW_SHIP_ORDERS_TOOLTIP :{BLACK}Lit de rûte fan dit skip sjen. Ctrl+Click lit tsjinstregeling sjen +STR_VEHICLE_VIEW_AIRCRAFT_ORDERS_TOOLTIP :{BLACK}Lit oarders fan fleantúch sjen. Brûk Ctrl+Klik om de tjinstregeling te sjen +STR_VEHICLE_VIEW_AIRCRAFT_SHOW_DETAILS_TOOLTIP :{BLACK}Fleantúch details sjen litte # Messages in the start stop button in the vehicle view STR_VEHICLE_STATUS_LOADING_UNLOADING :{LTBLUE}Laden / Losse +STR_VEHICLE_STATUS_LEAVING :{LTBLUE}fuortsette STR_VEHICLE_STATUS_BROKEN_DOWN :{RED}Stikken STR_VEHICLE_STATUS_STOPPED :{RED}Stoppe STR_VEHICLE_STATUS_TRAIN_STOPPING_VEL :{RED}Stoppet, {VELOCITY} STR_VEHICLE_STATUS_TRAIN_NO_POWER :{RED}Gjin enerzjy +STR_VEHICLE_STATUS_TRAIN_STUCK :{ORANGE}Wachtsje op frije rûte STR_VEHICLE_STATUS_AIRCRAFT_TOO_FAR :{ORANGE}Te fier nei folgjende bestimming STR_VEHICLE_STATUS_HEADING_FOR_STATION_VEL :{LTBLUE}Ûnderweis nei {STATION}, {VELOCITY} @@ -3163,24 +3280,32 @@ STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_SERVICE_VEL :{LTBLUE}ûnderh # Vehicle stopped/started animations STR_VEHICLE_COMMAND_STOPPED_SMALL :{TINY_FONT}{RED}Stoppe STR_VEHICLE_COMMAND_STOPPED :{RED}Stoppe +STR_VEHICLE_COMMAND_STARTED_SMALL :{TINY_FONT}{GREEN}Starte +STR_VEHICLE_COMMAND_STARTED :{GREEN}Starte # Vehicle details STR_VEHICLE_DETAILS_CAPTION :{WHITE}{VEHICLE} (Details) STR_VEHICLE_NAME_BUTTON :{BLACK}Namme +STR_VEHICLE_DETAILS_TRAIN_RENAME :{BLACK}Jou trein in namme +STR_VEHICLE_DETAILS_ROAD_VEHICLE_RENAME :{BLACK}Namme fan de wein +STR_VEHICLE_DETAILS_SHIP_RENAME :{BLACK}Skip in namme jaan # The next two need to stay in this order STR_VEHICLE_INFO_AGE :{COMMA} jier{P "" ren} ({COMMA}) STR_VEHICLE_INFO_AGE_RED :{RED}{COMMA} jier{P "" ren} ({COMMA}) STR_VEHICLE_INFO_MAX_SPEED :{BLACK}Maks. snelheid: {LTBLUE}{VELOCITY} +STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED :{BLACK}Gewicht: {LTBLUE}{WEIGHT_SHORT} {BLACK}Krêft: {LTBLUE}{POWER}{BLACK} Maks. faasje: {LTBLUE}{VELOCITY} +STR_VEHICLE_INFO_RELIABILITY_BREAKDOWNS :{BLACK}betrouberens: {LTBLUE}{COMMA}% {BLACK}Stikken west sûnt lêste ûnderhâld: {LTBLUE}{COMMA} STR_VEHICLE_INFO_NO_CAPACITY :{BLACK}Kapasiteit: {LTBLUE}Gjin{STRING} STR_VEHICLE_INFO_CAPACITY :{BLACK}Kapasiteit: {LTBLUE}{CARGO_LONG}{3:STRING} STR_VEHICLE_INFO_CAPACITY_MULT :{BLACK}Kapasiteit: {LTBLUE}{CARGO_LONG}{3:STRING} (x{4:NUM}) STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapasiteit: {LTBLUE}{CARGO_LONG}, {CARGO_LONG}{STRING} +STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Wikselje kredyt: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Underhâldsinterval: {LTBLUE}{COMMA}{NBSP}dagen{BLACK} Lêste underhâld: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Underhâldsinterval: {LTBLUE}{COMMA}%{BLACK} Lêste underhâld: {LTBLUE}{DATE_LONG} @@ -3197,6 +3322,8 @@ STR_QUERY_RENAME_SHIP_CAPTION :{WHITE}Namme fa STR_QUERY_RENAME_AIRCRAFT_CAPTION :{WHITE}Namme fan fleantúch feroarje # Extra buttons for train details windows +STR_VEHICLE_DETAILS_TRAIN_ENGINE_BUILT_AND_VALUE :{LTBLUE}{ENGINE}{BLACK} Makke: {LTBLUE}{NUM}{BLACK} Wearde: {LTBLUE}{CURRENCY_LONG} +STR_VEHICLE_DETAILS_TRAIN_WAGON_VALUE :{LTBLUE}{ENGINE}{BLACK} Wearde: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY_TEXT :{BLACK}Totale kapasiteit fan dizze trein: STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY :{LTBLUE}- {CARGO_LONG} ({CARGO_SHORT}) @@ -3208,34 +3335,49 @@ STR_VEHICLE_DETAILS_CARGO_FROM_MULT :{LTBLUE}{CARGO_ STR_VEHICLE_DETAIL_TAB_CARGO :{BLACK}Fracht STR_VEHICLE_DETAIL_TAB_INFORMATION :{BLACK}Ynformaasje +STR_VEHICLE_DETAILS_TRAIN_INFORMATION_TOOLTIP :{BLACK}Treindetails sjen litte STR_VEHICLE_DETAIL_TAB_CAPACITIES :{BLACK}Kapasiteit STR_VEHICLE_DETAIL_TAB_TOTAL_CARGO :{BLACK}Totale Fracht STR_VEHICLE_DETAILS_TRAIN_ARTICULATED_RV_CAPACITY :{BLACK}Kapasiteit: {LTBLUE} # Vehicle refit +STR_REFIT_TITLE :{GOLD}Selektearje it soart fracht om mei te nimmen: +STR_REFIT_NEW_CAPACITY_COST_OF_REFIT :{BLACK}Nije kapasiteit: {GOLD}{CARGO_LONG}{}{BLACK}Kosten fan ombou: {RED}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_COST_OF_AIRCRAFT_REFIT :{BLACK}Nije kapasiteit: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}kosten fan werfolje: {RED}{CURRENCY_LONG} STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Selektearje in ferfiermiddel foar reparaasje. sleep mei de mûs om meardere ferfiermiddels te selekttearjen. Ctrl+klick sil in ferfiermiddel selektearje en de neikommende rige +STR_REFIT_TRAIN_LIST_TOOLTIP :{BLACK}selektearje soart fracht foar de trein om mei te nimmen +STR_REFIT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Selektearje it soart fracht foar wein om mei te nimmen +STR_REFIT_SHIP_LIST_TOOLTIP :{BLACK}Selektearje it soart fracht foar it skip om mei te nimmen +STR_REFIT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Selektearje it soart fracht foar it fleantúch om mei te nimmen STR_REFIT_TRAIN_REFIT_BUTTON :{BLACK}Trein ombouwe STR_REFIT_ROAD_VEHICLE_REFIT_BUTTON :{BLACK}Wein ombouwe STR_REFIT_SHIP_REFIT_BUTTON :{BLACK}Skip ombouwe STR_REFIT_AIRCRAFT_REFIT_BUTTON :{BLACK}Fleantúch ombouwe +STR_REFIT_TRAIN_REFIT_TOOLTIP :{BLACK}Trein ombouwe nei selektearre fracht +STR_REFIT_ROAD_VEHICLE_REFIT_TOOLTIP :{BLACK}Wein ombouwe nij selektearre fracht +STR_REFIT_SHIP_REFIT_TOOLTIP :{BLACK}Skip ombouwe nei selektearre fracht # Order view +STR_ORDERS_TIMETABLE_VIEW :{BLACK}Tjinstregeling STR_ORDER_INDEX :{COMMA}:{NBSP} STR_ORDER_TEXT :{STRING} {STRING} {STRING} +STR_ORDERS_END_OF_ORDERS :--Ein fan de Oarders-- # Order bottom buttons STR_ORDER_GO_TO :Gean nei STR_ORDER_GO_NON_STOP_TO :Gean non-stop nei STR_ORDER_GO_VIA :Gean via STR_ORDER_GO_NON_STOP_VIA :Gean non-stop fia +STR_ORDER_TOOLTIP_NON_STOP :{BLACK}Feroarje it stop gedrach fan selektearre opdracht +STR_ORDER_TOGGLE_FULL_LOAD :{BLACK}Alle fracht folslein lade +STR_ORDER_DROP_FULL_LOAD_ANY :Samar in fracht folslein lade STR_ORDER_DROP_NO_LOADING :Net laden STR_ORDER_TOGGLE_UNLOAD :{BLACK}Alles losse @@ -3244,18 +3386,23 @@ STR_ORDER_DROP_TRANSFER :Oerlade STR_ORDER_DROP_NO_UNLOADING :Net losse STR_ORDER_REFIT :{BLACK}Ombouwe +STR_ORDER_REFIT_AUTO :{BLACK}Ombouwe op it station +STR_ORDER_DROP_REFIT_AUTO :Fêste fracht STR_ORDER_DROP_REFIT_AUTO_ANY :Beskikbere fracht STR_ORDER_SERVICE :{BLACK}Tsjinst STR_ORDER_DROP_GO_ALWAYS_DEPOT :Gean altyd STR_ORDER_DROP_HALT_DEPOT :Stop +STR_ORDER_SERVICE_TOOLTIP :{BLACK}Sla dizze opdracht oer of it moar wêze dat ûnderhâld nedich is. # Conditional order variables, must follow order of OrderConditionVariable enum STR_ORDER_CONDITIONAL_RELIABILITY :Betrouberens STR_ORDER_CONDITIONAL_MAX_SPEED :Maksimale snelheid +STR_ORDER_CONDITIONAL_AGE :âlderdom (yn jierren) STR_ORDER_CONDITIONAL_UNCONDITIONALLY :Altyd +STR_ORDER_CONDITIONAL_COMPARATOR_IS_FALSE :is net wier STR_ORDERS_SKIP_BUTTON :{BLACK}Oerslaan @@ -3274,10 +3421,17 @@ STR_ORDER_SHARE :Dielde Bestimmi STR_ORDER_GO_TO_WAYPOINT :Lâns {WAYPOINT} STR_ORDER_GO_NON_STOP_TO_WAYPOINT :Oanienwei lâns {WAYPOINT} +STR_ORDER_SERVICE_AT :Underhâld by +STR_ORDER_NEAREST_DEPOT :de tichtstbye +STR_ORDER_NEAREST_HANGAR :de tichtstbye Hangar +STR_ORDER_TRAIN_DEPOT :Treindepot +STR_ORDER_ROAD_VEHICLE_DEPOT :Garaazje +STR_ORDER_SHIP_DEPOT :Skip Depot STR_ORDER_GO_TO_NEAREST_DEPOT_FORMAT :{STRING} {STRING} {STRING} STR_ORDER_GO_TO_DEPOT_FORMAT :{STRING} {DEPOT} +STR_ORDER_REFIT_ORDER :(Ombouwe nij {STRING}) STR_ORDER_STOP_ORDER :(Stop) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} @@ -3285,19 +3439,25 @@ STR_ORDER_GO_TO_STATION :{STRING} {STATI STR_ORDER_IMPLICIT :(Ymplisyt) STR_ORDER_FULL_LOAD :(Folle fracht) -STR_ORDER_FULL_LOAD_ANY :(Folle fracht elke lading) +STR_ORDER_FULL_LOAD_ANY :(Samar in fracht folslein lade) STR_ORDER_NO_LOAD :(Gjin lading) STR_ORDER_UNLOAD :(Afladen en nim lading STR_ORDER_UNLOAD_FULL_LOAD :(Afladen en wacht foar folle fracht) -STR_ORDER_UNLOAD_FULL_LOAD_ANY :(Afladen en wacht foar elke folle fracht) +STR_ORDER_UNLOAD_FULL_LOAD_ANY :(Losse en wachtsje foar ien folle fracht) STR_ORDER_UNLOAD_NO_LOAD :(Oflade en lit leech) STR_ORDER_TRANSFER :(Oerladen en fracht meinimme) +STR_ORDER_TRANSFER_FULL_LOAD :(Oerlade en wachtsje foar folle fracht) STR_ORDER_TRANSFER_NO_LOAD :(Oerladen en lit leech) STR_ORDER_NO_UNLOAD :(Net losse en fracht meinimme) STR_ORDER_NO_UNLOAD_FULL_LOAD :(Net losse en wacht foar folle fracht) +STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY :(Net losse en wachtsje foar samar in folle fracht) STR_ORDER_NO_UNLOAD_NO_LOAD :(net lade of losse) STR_ORDER_AUTO_REFIT :(Ombouwe nei {STRING}) +STR_ORDER_FULL_LOAD_REFIT :(Folslein lade mei ombou nei {STRING}) +STR_ORDER_FULL_LOAD_ANY_REFIT :(Folslein samar in fracht lade mei ombou nei {STRING}) +STR_ORDER_UNLOAD_REFIT :(Losse en fracht meinimme mei ombou nei {STRING}) +STR_ORDER_UNLOAD_FULL_LOAD_REFIT :(Losse en folslein lade mei ombou nei {STRING}) STR_ORDER_NO_UNLOAD_REFIT :(Net losse en fracht meinimme mei ombou nei {STRING}) STR_ORDER_NO_UNLOAD_FULL_LOAD_REFIT :(Net losse en folslein lade mei ombou nei {STRING}) STR_ORDER_NO_UNLOAD_FULL_LOAD_ANY_REFIT :(Net losse en ien fracht folslein lade mei ombou nei {STRING}) @@ -3326,12 +3486,14 @@ STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :Reizgje (foar { STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :Reizgje (foar {STRING}, sûnder tjinstregeling) mei maksimaal {VELOCITY} STR_TIMETABLE_STAY_FOR_ESTIMATED :(bliuw foar {STRING}, sûnder tjinstregeling) STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(reizgje foar {STRING}, sûnder tjinstregeling) +STR_TIMETABLE_STAY_FOR :en bliuw foar{STRING} STR_TIMETABLE_DAYS :{COMMA}{NBSP}{P dei dagen} STR_TIMETABLE_TICKS :{COMMA}{NBSP}tik{P "" ken} STR_TIMETABLE_STATUS_ON_TIME :{BLACK}Dit fiertûg is op tiid +STR_TIMETABLE_STARTING_DATE :{BLACK}Begjin datum STR_TIMETABLE_CHANGE_TIME :{BLACK}Tiid Feroarje @@ -3362,10 +3524,13 @@ STR_DATE_YEAR_TOOLTIP :{BLACK}Jier sel # AI debug window +STR_AI_DEBUG :{WHITE}AI/Game Script Debug STR_AI_DEBUG_NAME_AND_VERSION :{BLACK}{STRING} (v{NUM}) STR_AI_DEBUG_NAME_TOOLTIP :{BLACK}Skriptnamme STR_AI_DEBUG_SETTINGS :{BLACK}Ynstellings STR_AI_DEBUG_SETTINGS_TOOLTIP :{BLACK}Ynstellings fan it skript feroarje +STR_AI_DEBUG_RELOAD :{BLACK}AI opnij lade +STR_AI_DEBUG_MATCH_CASE :{BLACK}Wol as net op haadletters lette STR_AI_DEBUG_CONTINUE :{BLACK}Trjochgean STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Lit debug output fan dizze AI sjen STR_AI_GAME_SCRIPT :{BLACK}Spulskript @@ -3375,17 +3540,25 @@ STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI/Spul # AI configuration window STR_AI_CONFIG_CAPTION :{WHITE}AI/Spulskript konfiguraasje +STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}It spulskript dat yn it folgjende spul laden sil wurde +STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}AIs dy't yn it folgjende spul laden sille wurde STR_AI_CONFIG_HUMAN_PLAYER :Minslike spiler STR_AI_CONFIG_RANDOM_AI :Samar in AI STR_AI_CONFIG_NONE :(gjin) +STR_AI_CONFIG_MOVE_UP :{BLACK}Pleats heger +STR_AI_CONFIG_MOVE_UP_TOOLTIP :{BLACK}Set selektearre AI boppenoan de list STR_AI_CONFIG_GAMESCRIPT :{SILVER}Spulskript STR_AI_CONFIG_AI :{SILVER}AIs +STR_AI_CONFIG_CHANGE :{BLACK}Selektear {STRING} STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Spulskript +STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}in oar script lade +STR_AI_CONFIG_CONFIGURE :{BLACK}Ynstelle +STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}Parameters fan it skript ynstelle # Available AIs window STR_AI_LIST_CAPTION :{WHITE}Beskikber {STRING} @@ -3398,6 +3571,7 @@ STR_AI_LIST_VERSION :{LTBLUE}Ferzje: STR_AI_LIST_URL :{LTBLUE}URL: {ORANGE}{STRING} STR_AI_LIST_ACCEPT :{BLACK}Akseptearje +STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Selekteare highlighted script STR_AI_LIST_CANCEL :{BLACK}Annulearje STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Skript net feroare @@ -3412,6 +3586,8 @@ STR_AI_SETTINGS_SETTING :{STRING}: {ORAN # Textfile window STR_TEXTFILE_LICENCE_CAPTION :{WHITE}{STRING} lisinsje fan {STRING} +STR_TEXTFILE_WRAP_TEXT :{WHITE}Omwikkelje tekst +STR_TEXTFILE_VIEW_CHANGELOG :{BLACK}Feroarings STR_TEXTFILE_VIEW_LICENCE :{BLACK}Lisinsje @@ -3430,6 +3606,10 @@ STR_INCOME_FLOAT_COST_SMALL :{TINY_FONT}{RED STR_INCOME_FLOAT_COST :{RED}Kostet: {CURRENCY_LONG} STR_INCOME_FLOAT_INCOME_SMALL :{TINY_FONT}{GREEN}Opbringst: {CURRENCY_LONG} STR_INCOME_FLOAT_INCOME :{GREEN}Opbringst: {CURRENCY_LONG} +STR_FEEDER_TINY :{TINY_FONT}{YELLOW}Omwikselje: {CURRENCY_LONG} +STR_FEEDER_INCOME_TINY :{TINY_FONT}{YELLOW}Oerdracht: {CURRENCY_LONG}{WHITE} / {GREEN}Opbringst: {CURRENCY_LONG} +STR_FEEDER_INCOME :{YELLOW}Oerdracht: {CURRENCY_LONG}{WHITE} / {GREEN}Opbringst: {CURRENCY_LONG} +STR_FEEDER_COST :{YELLOW}Oerdracht: {CURRENCY_LONG}{WHITE} / {RED}Kosten: {CURRENCY_LONG} STR_MESSAGE_ESTIMATED_COST :{WHITE}Dit gjit {CURRENCY_LONG} kosten. STR_MESSAGE_ESTIMATED_INCOME :{WHITE}Dit gjit {CURRENCY_LONG} opbringen. @@ -3440,6 +3620,7 @@ STR_ERROR_GAME_SAVE_FAILED :{WHITE}Opslaan STR_ERROR_UNABLE_TO_DELETE_FILE :{WHITE}Kin bestân net fuortsmite STR_ERROR_GAME_LOAD_FAILED :{WHITE}Laden Mislearre{}{STRING} STR_GAME_SAVELOAD_ERROR_BROKEN_INTERNAL_ERROR :Interne flater: {STRING} +STR_GAME_SAVELOAD_ERROR_BROKEN_SAVEGAME :Stikkene savegame - {STRING} STR_GAME_SAVELOAD_ERROR_FILE_NOT_READABLE :Koe bestân net lêze STR_GAME_SAVELOAD_ERROR_FILE_NOT_WRITEABLE :Koe net nei bestân skriuwe STR_GAME_SAVELOAD_NOT_AVAILABLE : @@ -3449,11 +3630,13 @@ STR_GAME_SAVELOAD_NOT_AVAILABLE : STR_ERROR_PNGMAP_FILE_NOT_FOUND :{WHITE}... bestând koe net fûn wurde +STR_ERROR_HEIGHTMAP_TOO_LARGE :{WHITE}... ôfbylding is te grut # Soundset messages # Screenshot related messages +STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Grutte skermôfbylding STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Skermfoto opslein as '{STRING}' STR_ERROR_SCREENSHOT_FAILED :{WHITE}Koe gjin skermfoto meitsje! diff --git a/src/lang/unfinished/ido.txt b/src/lang/unfinished/ido.txt index 66b3b39635..2f41b766ad 100644 --- a/src/lang/unfinished/ido.txt +++ b/src/lang/unfinished/ido.txt @@ -10,7 +10,7 @@ ##grflangid 0x06 -# $Id: ido.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: ido.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -480,6 +480,8 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :altra + + # Custom currency window @@ -774,7 +776,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_HEADQUARTERS :Stabeyo di komp # About OpenTTD window STR_ABOUT_VERSION :{BLACK}OpenTTD versiono {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 La kruo OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 La kruo OpenTTD # Save/load game/scenario STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Ludo Detali diff --git a/src/lang/unfinished/macedonian.txt b/src/lang/unfinished/macedonian.txt index f019fbbc5a..81569a796e 100644 --- a/src/lang/unfinished/macedonian.txt +++ b/src/lang/unfinished/macedonian.txt @@ -10,7 +10,7 @@ ##grflangid 0x26 -# $Id: macedonian.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: macedonian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -806,6 +806,8 @@ STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_1_MONTH :Секој ме + + # Custom currency window @@ -1200,7 +1202,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Компани STR_ABOUT_OPENTTD :{WHITE}За OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Оригинален copyright {COPYRIGHT} 1995 Chris Sawyer, Сите права се задржани STR_ABOUT_VERSION :{BLACK}OpenTTD верзија {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 OpenTTD тимот +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 OpenTTD тимот # Save/load game/scenario STR_SAVELOAD_LOAD_BUTTON :{BLACK}Оптоварување diff --git a/src/lang/unfinished/maltese.txt b/src/lang/unfinished/maltese.txt index d3ee7cda36..0d553b37cf 100644 --- a/src/lang/unfinished/maltese.txt +++ b/src/lang/unfinished/maltese.txt @@ -10,7 +10,7 @@ ##grflangid 0x09 -# $Id: maltese.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: maltese.txt 27293 2015-05-27 17:53:35Z translators $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -413,6 +413,8 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :oħrajn + + # Custom currency window diff --git a/src/lang/unfinished/marathi.txt b/src/lang/unfinished/marathi.txt index 5691439a78..c97e721deb 100644 --- a/src/lang/unfinished/marathi.txt +++ b/src/lang/unfinished/marathi.txt @@ -10,7 +10,7 @@ ##grflangid 0x11 -# $Id: marathi.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: marathi.txt 27293 2015-05-27 17:53:35Z translators $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -760,6 +760,8 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :अन्य + + # Custom currency window diff --git a/src/lang/unfinished/persian.txt b/src/lang/unfinished/persian.txt index b38f819837..77662de212 100644 --- a/src/lang/unfinished/persian.txt +++ b/src/lang/unfinished/persian.txt @@ -10,7 +10,7 @@ ##grflangid 0x62 -# $Id: persian.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: persian.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -773,7 +773,7 @@ STR_NEWS_FIRST_BUS_ARRIVAL :{BIG_FONT}{BLAC STR_NEWS_FIRST_TRUCK_ARRIVAL :{BIG_FONT}{BLACK}شهروندان ورود اولین کامیون را به . . .{}{STATION} تبریک گفتند! STR_NEWS_FIRST_PASSENGER_TRAM_ARRIVAL :{BIG_FONT}{BLACK}شهروندان شهر . . .{}ورود اولين مسافر به {STATION}را جشن مي گيرند! STR_NEWS_FIRST_CARGO_TRAM_ARRIVAL :{BIG_FONT}{BLACK}شهروندان شهر . . .{}ورود اولين بارکش به {STATION}را جشن مي گيرند! -STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK}جشن گرفتن شهروندان. . . {} اولین کشتی به {STATION} رسید! +STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK}جشن گرفتن شهروندان. . .{} اولین کشتی به {STATION} رسید! STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK}جشن شهروندان . . .{}اولین هواپیما به {STATION} می رسد! STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLACK}تصادف قطار!{}{COMMA} مرگ در انفجار حاصل از برخورد @@ -969,6 +969,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}وضوح STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}وضوح تصویر دلخواه را انتخاب کنید STR_GAME_OPTIONS_RESOLUTION_OTHER :دیگر + + STR_GAME_OPTIONS_BASE_GRF :{BLACK}بسته گرافیک پایه STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}بسته گرافیک پایه را انتخاب کنید STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} فایل وجود ندارد یا خراب است @@ -1905,7 +1907,7 @@ STR_CONTENT_TYPE_CAPTION :{BLACK}نوع STR_CONTENT_TYPE_CAPTION_TOOLTIP :{BLACK}نوع محتوی STR_CONTENT_NAME_CAPTION :{BLACK}نام STR_CONTENT_NAME_CAPTION_TOOLTIP :{BLACK}نام محتوی -STR_CONTENT_MATRIX_TOOLTIP :{BLACK}برای مشاهده ی جزئیات روی خط کلیک کنید {}برای اتنخاب برای دانلود روی چک باکس کلیک کنید +STR_CONTENT_MATRIX_TOOLTIP :{BLACK}برای مشاهده ی جزئیات روی خط کلیک کنید{}برای اتنخاب برای دانلود روی چک باکس کلیک کنید STR_CONTENT_SELECT_ALL_CAPTION :{BLACK}انتخاب تمامی موارد STR_CONTENT_SELECT_ALL_CAPTION_TOOLTIP :{BLACK}علامت گذاری تمامی موارد را برای بارگیری STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}انتخاب موارد ارتقاع @@ -2200,7 +2202,7 @@ STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK} به ش # Land generation window (SE) STR_TERRAFORM_TOOLBAR_LAND_GENERATION_CAPTION :{WHITE}طراحی اتوماتیک سرزمین STR_TERRAFORM_TOOLTIP_PLACE_ROCKY_AREAS_ON_LANDSCAPE :{BLACK}مکان های سنگی در نقشه ایجاد کن -STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK} ناحیه ی بیابانی را مشخص کن {} دکمه ی "کنترل" را فشار بده تا حذف کند +STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK} ناحیه ی بیابانی را مشخص کن{} دکمه ی "کنترل" را فشار بده تا حذف کند STR_TERRAFORM_TOOLTIP_INCREASE_SIZE_OF_LAND_AREA :{BLACK}افزایش مساحت زمین به بالا/پایین STR_TERRAFORM_TOOLTIP_DECREASE_SIZE_OF_LAND_AREA :{BLACK}کاهش مساحت زمین به بالا/پایین STR_TERRAFORM_TOOLTIP_GENERATE_RANDOM_LAND :{BLACK}نقشه ی تصادفی بساز @@ -2386,7 +2388,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :زمین خری STR_ABOUT_OPENTTD :{WHITE}OpenTTD در باره ی STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Original copyright {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD ویرایش {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 The OpenTTD team +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 The OpenTTD team # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}ذخیره ی بازی @@ -2578,7 +2580,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}هشدار: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}خطا: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}خطای وخیم: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}یک خطای وخیم در NewGRF اتفاق افتاده: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}یک خطای وخیم در NewGRF اتفاق افتاده:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} با TTDPatch که ویرایش آن توسط OpenTTD گزارش شده کار نمی کند STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} برای ویرایش {STRING}TTD می باشد STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} طراحی شده برای استفاده با {STRING} @@ -2799,6 +2801,7 @@ STR_STATION_VIEW_VIA_HERE :{GREEN}{CARGO_S STR_STATION_VIEW_TO_HERE :{GREEN}{CARGO_SHORT} به این ایستگاه STR_STATION_VIEW_NONSTOP :{YELLOW}{CARGO_SHORT} بدون توقف +STR_STATION_VIEW_GROUP_D_V_S :مقصد با منبع ############ range for rating starts STR_CARGO_RATING_APPALLING :ترسناک @@ -2868,6 +2871,7 @@ STR_COMPANY_VIEW_SELL_SHARE_BUTTON :{BLACK}25% سه STR_COMPANY_VIEW_BUY_SHARE_TOOLTIP :{BLACK}25% سهام این شرکت را بخر.Shift+Click برآورد قیمت سهام را بدون فروش سهام نشان می دهد. STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}25% سهام این شرکت را بفروش.دکمه Shift+Clickبرآورد قیمت را بدون فروش سهام نمایش می دهد +STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :مدیر عامل STR_BUY_COMPANY_MESSAGE :{WHITE}ما به دنبال یک شرکت حمل و نقل هستیم که مایل باشد مالکیت شرکت ما را بصورت یکجا در اختیار بگیرد.{}{}آیا شما مایل به خرید شرکت {COMPANY} به مبلغ {CURRENCY_LONG} هستید؟ @@ -3064,6 +3068,7 @@ STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES :{YELLOW}وسی STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK} ستون با وسیله نقلیه آماده جایگزینی می باشد +STR_REPLACE_HELP_STOP_BUTTON :{BLACK}برای توقف جایگزین کردن برای نوع انتخاب شده در سمت چپ کلیک کنید @@ -3189,6 +3194,7 @@ STR_ORDERS_END_OF_ORDERS :- - پایان # Conditional order variables, must follow order of OrderConditionVariable enum STR_ORDER_CONDITIONAL_REMAINING_LIFETIME :عمر مفید باقی مانده (سال) +STR_ORDER_CONDITIONAL_COMPARATOR_IS_TRUE :صحیح است STR_ORDERS_SKIP_BUTTON :{BLACK}رها کردن @@ -3251,6 +3257,7 @@ STR_AI_DEBUG :{WHITE}رفع STR_AI_DEBUG_NAME_TOOLTIP :{BLACK}نام کد STR_AI_DEBUG_RELOAD :{BLACK}بازگشایی مجدد هوش مصنوعی STR_AI_DEBUG_RELOAD_TOOLTIP :{BLACK}از بین بردن هوش مصنوعی. بازگشایی اسکریپت. و شروع مجدد هوش مصنوعی +STR_AI_DEBUG_BREAK_STR_ON_OFF_TOOLTIP :{BLACK}فعالسازی/غیر فعال سازی توقف هنگامی که هوش مصنوعی گزارشی با متن توقف تولید می کند STR_AI_GAME_SCRIPT :{BLACK}کدبازی STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}دیدن گزارش های کد بازی @@ -3356,6 +3363,7 @@ STR_ERROR_SITE_UNSUITABLE :{WHITE}مکان STR_ERROR_ALREADY_BUILT :{WHITE}قبلا در اینجا ساخته شده STR_ERROR_OWNED_BY :{WHITE}صاحب {STRING} است. STR_ERROR_AREA_IS_OWNED_BY_ANOTHER :{WHITE}این ناحیه توسط شرکت دیگری تصاحب شده +STR_ERROR_TERRAFORM_LIMIT_REACHED :{WHITE}... به بیش از حد تولید پستی و بلندی ها رسیده # Local authority errors STR_ERROR_LOCAL_AUTHORITY_REFUSES_TO_ALLOW_THIS :{WHITE}انجمن شهر {TOWN} اجازه این کار را نمیدهد diff --git a/src/lang/unfinished/urdu.txt b/src/lang/unfinished/urdu.txt index e1b627c559..c55e362998 100644 --- a/src/lang/unfinished/urdu.txt +++ b/src/lang/unfinished/urdu.txt @@ -11,7 +11,7 @@ ##gender m f -# $Id: urdu.txt 27353 2015-07-31 17:46:09Z rubidium $ +# $Id: urdu.txt 27478 2015-12-27 11:40:23Z translators $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -262,8 +262,8 @@ STR_OSK_KEYBOARD_LAYOUT_CAPS :~!@#$%^&*()_+|Q # Measurement tooltip STR_MEASURE_LENGTH :{BLACK} لمبائی: {NUM} STR_MEASURE_AREA :{BLACK} پھیلاؤ: {NUM} x {NUM} -STR_MEASURE_LENGTH_HEIGHTDIFF :{BLACK} لمبائی: {NUM} {}تفریقِ اونچائی: {HEIGHT} -STR_MEASURE_AREA_HEIGHTDIFF :{BLACK} پھیلاؤ: {NUM} x {NUM} {}تفریقِ اونچائی: {HEIGHT} +STR_MEASURE_LENGTH_HEIGHTDIFF :{BLACK} لمبائی: {NUM}{}تفریقِ اونچائی: {HEIGHT} +STR_MEASURE_AREA_HEIGHTDIFF :{BLACK} پھیلاؤ: {NUM} x {NUM}{}تفریقِ اونچائی: {HEIGHT} # These are used in buttons @@ -767,7 +767,7 @@ STR_NEWS_PLANE_CRASH_OUT_OF_FUEL :{BIG_FONT}{BLAC STR_NEWS_DISASTER_ZEPPELIN :{BIG_FONT}{BLACK}ہوائی غبارہ تباہ!{}حادثہ {STATION} کے مقام پر پیش آیا STR_NEWS_DISASTER_SMALL_UFO :{BIG_FONT}{BLACK}آُڑن طشتری سے ٹکرا کر گاڑی تباہ!!!!!!!! -STR_NEWS_DISASTER_AIRPLANE_OIL_REFINERY :{BIG_FONT}{BLACK}تیل صاف کرنے کے کارخانے میں دھماکہ! {}کارخانہ {TOWN} کے قریب واقع تھا +STR_NEWS_DISASTER_AIRPLANE_OIL_REFINERY :{BIG_FONT}{BLACK}تیل صاف کرنے کے کارخانے میں دھماکہ!{}کارخانہ {TOWN} کے قریب واقع تھا STR_NEWS_DISASTER_HELICOPTER_FACTORY :{BIG_FONT}{BLACK}پراسرار حملے میں کارخانہ تباہ۔ لوگ پریشان{}کارخانہ {TOWN} کے قریب واقع تھا STR_NEWS_DISASTER_BIG_UFO :{BIG_FONT}{BLACK}اُڑن طشتری {TOWN} کے قریب اُتر گئی STR_NEWS_DISASTER_COAL_MINE_SUBSIDENCE :{BIG_FONT}{BLACK}کوئلے کی کان زمین میں دھنس گئی{}{TOWN} کے قریب تباہی کے نشان۔ @@ -826,7 +826,7 @@ STR_NEWS_VEHICLE_IS_UNPROFITABLE :{WHITE}{VEHICLE STR_NEWS_AIRCRAFT_DEST_TOO_FAR :{WHITE}{VEHICLE} اگلی منزل پر پہنچ سے باہر ہونے کی وجہ سے نہیں جا سکتا STR_NEWS_ORDER_REFIT_FAILED :{WHITE}{VEHICLE} رُک گیا ہے کیونکے اُسے دیا گیا تزین و آرائش کا حکم پورا نہں ہو سکا -STR_NEWS_VEHICLE_AUTORENEW_FAILED :{WHITE}{VEHICLE} کی خودکار تبدیلی ناکام ہو کئی {}{STRING} +STR_NEWS_VEHICLE_AUTORENEW_FAILED :{WHITE}{VEHICLE} کی خودکار تبدیلی ناکام ہو کئی{}{STRING} STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}نئی {STRING} اب دستیاب ہے! STR_NEWS_NEW_VEHICLE_TYPE :{BIG_FONT}{BLACK}{ENGINE} @@ -837,7 +837,7 @@ STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}{STATION STR_NEWS_STATION_NOW_ACCEPTS_CARGO :{WHITE}{STATION} اب قبول کرتا ہے {STRING} STR_NEWS_STATION_NOW_ACCEPTS_CARGO_AND_CARGO :{WHITE}{STATION} اب {STRING} اور {STRING} قبول کرتا ہے -STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}امداد کی پیشکش کی معیاد ختم: {}{}{STRING} {STRING} سے {STRING} تک اب کوئی امداد نہیں ملے گی +STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}امداد کی پیشکش کی معیاد ختم:{}{}{STRING} {STRING} سے {STRING} تک اب کوئی امداد نہیں ملے گی STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}امداد ختم:{}{}{STRING} {STRING} سے {STRING} تک کئی گئی خدمت کی اب کوئی امداد نہیں ملے گی STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}خدمات پر امداد کی پیشکش:{}{}پہلی خدمت {STRING} جو {STRING} سے {STRING} تک ہو، پر ایک سال تک امدام ملے گی STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}خدمات پر{STRING} کو امداد دے دی گئی!{}{}{STRING} {STRING} سے {STRING} تک دی جانے والی خدمات پر اگلے سال 50٪ زیادہ ملیں گے @@ -947,6 +947,8 @@ STR_GAME_OPTIONS_RESOLUTION :{BLACK}اسکر STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}اسکرین کی resolution اختیار کریں STR_GAME_OPTIONS_RESOLUTION_OTHER :دیگر + + STR_GAME_OPTIONS_BASE_GRF :{BLACK}بُنیادی گرافک سیٹ STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}بُنیادی گرافک سیٹ اختیار کریں STR_GAME_OPTIONS_BASE_GRF_STATUS :{RED}{NUM} missing/corrupted file{P "" s} diff --git a/src/lang/vietnamese.txt b/src/lang/vietnamese.txt index ca8bee5abf..5792d35d32 100644 --- a/src/lang/vietnamese.txt +++ b/src/lang/vietnamese.txt @@ -10,7 +10,7 @@ ##grflangid 0x54 -# $Id: vietnamese.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: vietnamese.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -1118,9 +1118,9 @@ STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_MENU :Thiết lập t STR_CONFIG_SETTING_TYPE_DROPDOWN_GAME_INGAME :Thiết lập trò chơi (chứa trong save; chỉ có tác dụng với ván chơi hiện tại) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_MENU :Thiết lập công ty (chứa trong save; chỉ tác động với ván chơi mới) STR_CONFIG_SETTING_TYPE_DROPDOWN_COMPANY_INGAME :Thiết lập công ty (lưu trong save; chỉ tác động tới công ty hiện tại) -STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}Hiện tất cả kết quả tìm kiếm theo {}{SILVER}Phân loại {BLACK}cho {WHITE}{STRING} -STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Hiện tất cả kết quả tìm kiếm theo {}{SILVER}Kiểu {BLACK}cho {WHITE}tất cả kiểu thiết lập -STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Hiện tất cả kết quả tìm kiếm theo {}{SILVER}Phân loại {BLACK}cho {WHITE}{STRING} {BLACK}và {SILVER}Kiểu {BLACK}cho {WHITE}tất cả kiểu thiết lập +STR_CONFIG_SETTING_CATEGORY_HIDES :{BLACK}Hiện tất cả kết quả tìm kiếm theo{}{SILVER}Phân loại {BLACK}cho {WHITE}{STRING} +STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Hiện tất cả kết quả tìm kiếm theo{}{SILVER}Kiểu {BLACK}cho {WHITE}tất cả kiểu thiết lập +STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Hiện tất cả kết quả tìm kiếm theo{}{SILVER}Phân loại {BLACK}cho {WHITE}{STRING} {BLACK}và {SILVER}Kiểu {BLACK}cho {WHITE}tất cả kiểu thiết lập STR_CONFIG_SETTINGS_NONE :{WHITE}- Không - STR_CONFIG_SETTING_OFF :Tắt @@ -2315,7 +2315,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Xây d STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Xây xưởng tàu hoả (để chế tạo và bảo dưỡng tàu). Shift để xem chi phí dự tính STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Chuyển từ ray sang điểm mốc. Ctrl để nối các điểm mốc. Shift để xem chi phí dự tính STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Xây nhà ga tàu hoả. Ctrl để nối các nhà ga. Shift để xem chi phí dự tính -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Xây đèn tín hiệu đường sắt. Ctrl đổi dùng đèn/cờ tín hiệu{}Kéo thả để xây đèn tín hiệu theo đoạn kéo thả. Ctrl + kéo chuột theo đường ray khi xây sẽ xây loạt đèn tín hiệu cho tới điểm ngã ba, tư kế tiếp {}Ctrl+Click để mở cửa sổ chọn loại đèn tin hiệu. Shift để xem chi phí dự tính +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Xây đèn tín hiệu đường sắt. Ctrl đổi dùng đèn/cờ tín hiệu{}Kéo thả để xây đèn tín hiệu theo đoạn kéo thả. Ctrl + kéo chuột theo đường ray khi xây sẽ xây loạt đèn tín hiệu cho tới điểm ngã ba, tư kế tiếp{}Ctrl+Click để mở cửa sổ chọn loại đèn tin hiệu. Shift để xem chi phí dự tính STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Xây cầu tàu hoả. Shift để xem chi phí dự tính STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Xây hầm tàu hoả. Shift để xem chi phí dự tính STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Chuyển chế độ xây/phá cho đường ray, đèn tín hiệu, điểm mốc và nhà ga. Giữ Ctrl để phá bỏ đường ray tính từ điểm mốc hay nhà ga @@ -2359,7 +2359,7 @@ STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}Đèn (c STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}Đèn (cờ) tín hiệu kết hợp{}Nó vừa là đèn tín hiệu cửa thoát (với đèn nhập ở phía trước nó) và vừa là đèn tín hiệu cửa nhập (đối với đèn thoát ở sau nó). Loại đèn này cho phép tạo nhiều lớp đèn cho một hệ thống tín hiệu phức tạp. STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}Đèn (cờ) tín hiệu giành đường{}Đèn tín hiệu giành đường cho phép nhiều hơn 1 đoàn tàu có thể đi vào 1 khu vực khoá, nếu như mỗi đoàn tàu có thể giành lấy một con đường tới một điểm đến một cách an toàn. Đèn tín hiệu giành đường tiêu chuẩn cho thể cho phép đi qua từ phía sau của đèn. STR_BUILD_SIGNAL_SEMAPHORE_PBS_OWAY_TOOLTIP :{BLACK}Đèn (cờ) tín hiệu giành đường một chiều{}Đèn tín hiệu giành đường cho phép nhiều hơn 1 đoàn tàu có thể đi vào 1 khu vực khoá, nếu như mỗi đoàn tàu có thể giành lấy một con đường tới một điểm đến một cách an toàn. Đèn tín hiệu giành đường tiêu chuẩn cho thể cho phép đi qua từ phía sau của đèn. -STR_BUILD_SIGNAL_ELECTRIC_NORM_TOOLTIP :{BLACK}Đèn tín hiệu (điện) {}Đèn tín hiệu cơ bản, chỉ cho phép một đoàn toàn đi vào một khu vực khoá của đèn. +STR_BUILD_SIGNAL_ELECTRIC_NORM_TOOLTIP :{BLACK}Đèn tín hiệu (điện){}Đèn tín hiệu cơ bản, chỉ cho phép một đoàn toàn đi vào một khu vực khoá của đèn. STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}Đèn tín hiệu cửa nhập (điện){}Sẽ xanh nếu một hoặc nhiều đèn tín hiệu cửa thoát ở phía sau màu xanh. Không thì sẽ đỏ. STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}Đèn tín hiệu cửa thoát (điện){}Tương tự đèn tín hiệu khoá, nhưng cần có để đổi trạng thái của đèn tín hiệu loại cửa nhập & kết hợp nằm trước nó. STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Đèn tín hiệu kết hợp (điện){}Nó vừa là đèn tín hiệu cửa thoát (với đèn nhập ở phía trước nó) và vừa là đèn tín hiệu cửa nhập (đối với đèn thoát ở sau nó). Loại đèn này cho phép tạo nhiều lớp đèn cho một hệ thống tín hiệu phức tạp. @@ -2687,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Đất công ty STR_ABOUT_OPENTTD :{WHITE}Về OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Nguyên tác bản quyền {COPYRIGHT} 1995 Chris Sawyer, All rights reserved STR_ABOUT_VERSION :{BLACK}OpenTTD phiên bản {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2015 Nhóm OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2016 Nhóm OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Lưu Ván Chơi @@ -2874,7 +2874,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Nhảy t STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Sprite trước STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Xử lý sprite bình thường ở trước, bỏ qua các loại pseudo/recolour/font sprite căn theo điểm bắt đầu STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Theo những thông tin của sprite đã chọn. Thì việc căn chỉnh khi vẽ đối với sprite này sẽ bị bỏ qua -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Di chuyển sprite xung quanh, thay đổi X và Y offsets +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Di chuyển sprite xung quanh, thay đổi X và Y offsets. Ctrl+Click để di chuyển sprite tám đơn vị một lúc STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Đặt lại tương đối STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Đặt lại các dịch chuyển tương đối hiện tại STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK} dịch X: {NUM}, dịch Y: {NUM} (tuyệt đối) @@ -2889,7 +2889,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Cảnh báo: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Lỗi: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Lỗi nghiêm trọng: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Xảy ra lỗi NewGRF nghiêm trọng: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Xảy ra lỗi NewGRF nghiêm trọng:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} sẽ không hoạt động với phiên bản TTDPatch version theo như báo cáo của OpenTTD. STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} để dành cho phiên bản {STRING} của TTD. STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} được thiết kế để xài với {STRING} diff --git a/src/lang/welsh.txt b/src/lang/welsh.txt index d088ebbfbc..26395c25c5 100644 --- a/src/lang/welsh.txt +++ b/src/lang/welsh.txt @@ -10,7 +10,7 @@ ##grflangid 0x0f -# $Id: welsh.txt 27429 2015-10-31 17:45:32Z rubidium $ +# $Id: welsh.txt 27516 2016-03-01 19:41:31Z frosch $ # This file is part of OpenTTD. # OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -867,7 +867,7 @@ STR_NEWS_STATION_NOW_ACCEPTS_CARGO :{WHITE}Mae {STA STR_NEWS_STATION_NOW_ACCEPTS_CARGO_AND_CARGO :{WHITE}Mae {STATION} nawr yn derbyn {STRING} a {STRING} STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Cynnig cymhorthdal ar ben:{}{}Ni fydd cludo {STRING} o {STRING} i {STRING} yn derbyn cymhorthdal bellach -STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Cymhorthdal wedi'i dynnu'n ôl: {}{}Ni fydd gwasanaeth {STRING} o {STRING} i {STRING} yn derbyn cymhorthdal bellach +STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Cymhorthdal wedi'i dynnu'n ôl:{}{}Ni fydd gwasanaeth {STRING} o {STRING} i {STRING} yn derbyn cymhorthdal bellach STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Cynnig cymhorthdal:{}{}Bydd y gwasanaeth {STRING} cyntaf o {STRING} i {STRING} yn derbyn blwyddyn o gymhorthdal gan yr awdurdod lleol! STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Cymhorthdal wedi ei ddyfarnu i {STRING}!{}{}Bydd y gwasanaeth {STRING} o {STRING} i {STRING} yn talu 50% yn fwy am y flwyddyn nesaf! STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Cymhorthdal wedi ei ddyfarnu i {STRING}!{}{}Bydd y gwasanaeth {STRING} o {STRING} i {STRING} yn talu dwywaith yn fwy am y flwyddyn nesaf! @@ -2687,7 +2687,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Tir cwmni STR_ABOUT_OPENTTD :{WHITE}Gwybodaeth am OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Hawlfraint Wreiddiol {COPYRIGHT} 1995 Chris Sawyer, Holl cedwir pob hawl STR_ABOUT_VERSION :{BLACK}fersiwn OpenTTD {REV} -STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2015 Y tîm OpenTTD +STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-2016 Y tîm OpenTTD # Save/load game/scenario STR_SAVELOAD_SAVE_CAPTION :{WHITE}Cadw Gêm @@ -2874,7 +2874,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Mynd i'r STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Corlun blaenorol STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Mynd i'r corlun cyffredin blaenorol, gan hepgor unrhyw gorluniau ailliwio/ffont/llidgorluniau, ac amlapio o'r corlun cyntaf i'r olaf STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Cynrychioliad o'r corlun a ddewiswyd. Fe anwybyddir yr aliniad wrth lunio'r corlun -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Symud y corlun, gan newid yr atredau X ac Y +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Symud y corlun, gan newid yr atredau X ac Y. Mae Ctrl+Clic yn symud y corlun wyth uned ar y tro STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Ailosod perthyniad STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Ailosod y dodiadau perthynol STR_SPRITE_ALIGNER_OFFSETS_ABS :{BLACK}Dodiad X: {NUM}, Dodiad Y: {NUM} (Absoliwt) @@ -2889,7 +2889,7 @@ STR_NEWGRF_ERROR_MSG_INFO :{SILVER}{STRING STR_NEWGRF_ERROR_MSG_WARNING :{RED}Rhybudd: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_ERROR :{RED}Gwall: {SILVER}{STRING} STR_NEWGRF_ERROR_MSG_FATAL :{RED}Angheuol: {SILVER}{STRING} -STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Mae gwall angheuol NewGRF wedi digwydd: {}{STRING} +STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Mae gwall angheuol NewGRF wedi digwydd:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :Ni fydd {1:STRING} yn gweithio gyda'r fersiwn o TTDPatch yr adroddir gan OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :Mae {1:STRING} ar gyfer y fersiwn {STRING} o TTD STR_NEWGRF_ERROR_UNSET_SWITCH :Mae {1:STRING} wedi ei gynllunio i gael ei ddefnyddio gyda {STRING} @@ -3030,7 +3030,7 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{YELLOW}Dechrau STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW} Ariannu gwaith ffordd ar y rhwydwaith ffyrdd trefol. Bydd yn amharu'n fawr ar drafnidiaeth y dref am hyd at 6 mis .{} Cost: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{YELLOW} Adeiladu cerflun er clod eich cwmni.{} Côst: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW} Ariannu adeiladu adeiladau masnachol newydd yn y dref.{} Côst: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW}Prynu'r hawl i fod yr unig gyflenwr cludiant yn y dref am flwyddyn. Bydd awdurdod y dref ond yn caniatáy i deithwyr a chargo ddefnyddio eich gorsafoedd chi {} Cost: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW}Prynu'r hawl i fod yr unig gyflenwr cludiant yn y dref am flwyddyn. Bydd awdurdod y dref ond yn caniatáy i deithwyr a chargo ddefnyddio eich gorsafoedd chi{} Cost: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW} Llwgrwobrwyo'r awdurdod lleol i wella'ch gradd, ond byddwch mewn perygl o dderbyn côsb sylweddol os cewch chi'ch dal.{} Côst: {CURRENCY_LONG} # Goal window diff --git a/src/language.h b/src/language.h index 02909386fc..f7778fd939 100644 --- a/src/language.h +++ b/src/language.h @@ -1,4 +1,4 @@ -/* $Id: language.h 23585 2011-12-17 23:16:16Z rubidium $ */ +/* $Id: language.h 27367 2015-08-09 12:33:27Z rubidium $ */ /* * This file is part of OpenTTD. @@ -13,9 +13,9 @@ #define LANGUAGE_H #include "core/smallvec_type.hpp" -#ifdef WITH_ICU +#ifdef WITH_ICU_SORT #include -#endif /* WITH_ICU */ +#endif /* WITH_ICU_SORT */ static const uint8 CASE_GENDER_LEN = 16; ///< The (maximum) length of a case/gender string. static const uint8 MAX_NUM_GENDERS = 8; ///< Maximum number of supported genders. @@ -110,9 +110,9 @@ extern LanguageList _languages; /** The currently loaded language. */ extern const LanguageMetadata *_current_language; -#ifdef WITH_ICU +#ifdef WITH_ICU_SORT extern Collator *_current_collator; -#endif /* WITH_ICU */ +#endif /* WITH_ICU_SORT */ bool ReadLanguagePack(const LanguageMetadata *lang); const LanguageMetadata *GetLanguage(byte newgrflangid); diff --git a/src/misc/array.hpp b/src/misc/array.hpp index 2ab1358059..02958b6a32 100644 --- a/src/misc/array.hpp +++ b/src/misc/array.hpp @@ -1,4 +1,4 @@ -/* $Id: array.hpp 23640 2011-12-20 17:57:56Z truebrain $ */ +/* $Id: array.hpp 27363 2015-08-08 13:19:38Z alberth $ */ /* * This file is part of OpenTTD. @@ -34,7 +34,7 @@ protected: { uint super_size = data.Length(); if (super_size > 0) { - SubArray& s = data[super_size - 1]; + SubArray &s = data[super_size - 1]; if (!s.IsFull()) return s; } return *data.AppendC(); @@ -42,9 +42,16 @@ protected: public: /** implicit constructor */ - inline SmallArray() { } + inline SmallArray() + { + } + /** Clear (destroy) all items */ - inline void Clear() {data.Clear();} + inline void Clear() + { + data.Clear(); + } + /** Return actual number of items */ inline uint Length() const { @@ -54,25 +61,41 @@ public: return (super_size - 1) * B + sub_size; } /** return true if array is empty */ - inline bool IsEmpty() { return data.IsEmpty(); } - /** return true if array is full */ - inline bool IsFull() { return data.IsFull() && data[N - 1].IsFull(); } - /** allocate but not construct new item */ - inline T *Append() { return FirstFreeSubArray().Append(); } - /** allocate and construct new item */ - inline T *AppendC() { return FirstFreeSubArray().AppendC(); } - /** indexed access (non-const) */ - inline T& operator [] (uint index) + inline bool IsEmpty() { - const SubArray& s = data[index / B]; - T& item = s[index % B]; + return data.IsEmpty(); + } + + /** return true if array is full */ + inline bool IsFull() + { + return data.IsFull() && data[N - 1].IsFull(); + } + + /** allocate but not construct new item */ + inline T *Append() + { + return FirstFreeSubArray().Append(); + } + + /** allocate and construct new item */ + inline T *AppendC() + { + return FirstFreeSubArray().AppendC(); + } + + /** indexed access (non-const) */ + inline T& operator[](uint index) + { + const SubArray &s = data[index / B]; + T &item = s[index % B]; return item; } /** indexed access (const) */ - inline const T& operator [] (uint index) const + inline const T& operator[](uint index) const { - const SubArray& s = data[index / B]; - const T& item = s[index % B]; + const SubArray &s = data[index / B]; + const T &item = s[index % B]; return item; } @@ -87,7 +110,7 @@ public: dmp.WriteLine("num_items = %d", num_items); CStrA name; for (uint i = 0; i < num_items; i++) { - const T& item = (*this)[i]; + const T &item = (*this)[i]; name.Format("item[%d]", i); dmp.WriteStructT(name.Data(), &item); } diff --git a/src/misc/binaryheap.hpp b/src/misc/binaryheap.hpp index 65f8f06ad4..9d3623f087 100644 --- a/src/misc/binaryheap.hpp +++ b/src/misc/binaryheap.hpp @@ -1,4 +1,4 @@ -/* $Id: binaryheap.hpp 24900 2013-01-08 22:46:42Z planetmaker $ */ +/* $Id: binaryheap.hpp 27363 2015-08-08 13:19:38Z alberth $ */ /* * This file is part of OpenTTD. @@ -157,21 +157,30 @@ public: * * @return The number of items in the queue */ - inline uint Length() const { return this->items; } + inline uint Length() const + { + return this->items; + } /** * Test if the priority queue is empty. * * @return True if empty */ - inline bool IsEmpty() const { return this->items == 0; } + inline bool IsEmpty() const + { + return this->items == 0; + } /** * Test if the priority queue is full. * * @return True if full. */ - inline bool IsFull() const { return this->items >= this->capacity; } + inline bool IsFull() const + { + return this->items >= this->capacity; + } /** * Get the smallest item in the binary tree. @@ -287,7 +296,10 @@ public: * Make the priority queue empty. * All remaining items will remain untouched. */ - inline void Clear() { this->items = 0; } + inline void Clear() + { + this->items = 0; + } }; #endif /* BINARYHEAP_HPP */ diff --git a/src/misc/blob.hpp b/src/misc/blob.hpp index 2a05b45e05..7afb72619d 100644 --- a/src/misc/blob.hpp +++ b/src/misc/blob.hpp @@ -1,4 +1,4 @@ -/* $Id: blob.hpp 24900 2013-01-08 22:46:42Z planetmaker $ */ +/* $Id: blob.hpp 27363 2015-08-08 13:19:38Z alberth $ */ /* * This file is part of OpenTTD. @@ -71,7 +71,10 @@ public: static const size_t header_size = sizeof(BlobHeader); /** default constructor - initializes empty blob */ - inline ByteBlob() { InitEmpty(); } + inline ByteBlob() + { + InitEmpty(); + } /** copy constructor */ inline ByteBlob(const ByteBlob &src) @@ -311,9 +314,22 @@ public: struct OnTransfer { typename base::BlobHeader *header; - OnTransfer(const OnTransfer& src) : header(src.header) {assert(src.header != NULL); *const_cast(&src.header) = NULL;} - OnTransfer(CBlobT& src) : header(src.header) {src.InitEmpty();} - ~OnTransfer() {assert(header == NULL);} + + OnTransfer(const OnTransfer& src) : header(src.header) + { + assert(src.header != NULL); + *const_cast(&src.header) = NULL; + } + + OnTransfer(CBlobT& src) : header(src.header) + { + src.InitEmpty(); + } + + ~OnTransfer() + { + assert(header == NULL); + } }; /** Default constructor - makes new Blob ready to accept any data */ diff --git a/src/misc/countedobj.cpp b/src/misc/countedobj.cpp index 94cae068c8..7f9a289504 100644 --- a/src/misc/countedobj.cpp +++ b/src/misc/countedobj.cpp @@ -1,4 +1,4 @@ -/* $Id: countedobj.cpp 26482 2014-04-23 20:13:33Z rubidium $ */ +/* $Id: countedobj.cpp 27379 2015-08-10 20:04:31Z frosch $ */ /* * This file is part of OpenTTD. @@ -25,7 +25,12 @@ int32 SimpleCountedObject::Release() int32 res = --m_ref_cnt; assert(res >= 0); if (res == 0) { - FinalRelease(); + try { + FinalRelease(); // may throw, for example ScriptTest/ExecMode + } catch (...) { + delete this; + throw; + } delete this; } return res; diff --git a/src/misc/countedptr.hpp b/src/misc/countedptr.hpp index eadd13ef1d..7fe9694870 100644 --- a/src/misc/countedptr.hpp +++ b/src/misc/countedptr.hpp @@ -1,4 +1,4 @@ -/* $Id: countedptr.hpp 24900 2013-01-08 22:46:42Z planetmaker $ */ +/* $Id: countedptr.hpp 27363 2015-08-08 13:19:38Z alberth $ */ /* * This file is part of OpenTTD. @@ -35,60 +35,118 @@ protected: public: /** default (NULL) construct or construct from a raw pointer */ - inline CCountedPtr(Tcls *pObj = NULL) : m_pT(pObj) {AddRef();} + inline CCountedPtr(Tcls *pObj = NULL) : m_pT(pObj) + { + AddRef(); + } /** copy constructor (invoked also when initializing from another smart ptr) */ - inline CCountedPtr(const CCountedPtr& src) : m_pT(src.m_pT) {AddRef();} + inline CCountedPtr(const CCountedPtr &src) : m_pT(src.m_pT) + { + AddRef(); + } /** destructor releasing the reference */ - inline ~CCountedPtr() {Release();} + inline ~CCountedPtr() + { + Release(); + } protected: /** add one ref to the underlaying object */ - inline void AddRef() {if (m_pT != NULL) m_pT->AddRef();} + inline void AddRef() + { + if (m_pT != NULL) m_pT->AddRef(); + } public: /** release smart pointer (and decrement ref count) if not null */ - inline void Release() {if (m_pT != NULL) {Tcls *pT = m_pT; m_pT = NULL; pT->Release();}} + inline void Release() + { + if (m_pT != NULL) { + Tcls *pT = m_pT; + m_pT = NULL; + pT->Release(); + } + } /** dereference of smart pointer - const way */ - inline const Tcls *operator -> () const {assert(m_pT != NULL); return m_pT;} + inline const Tcls *operator->() const + { + assert(m_pT != NULL); + return m_pT; + } /** dereference of smart pointer - non const way */ - inline Tcls *operator -> () {assert(m_pT != NULL); return m_pT;} + inline Tcls *operator->() + { + assert(m_pT != NULL); + return m_pT; + } /** raw pointer casting operator - const way */ - inline operator const Tcls*() const {assert(m_pT == NULL); return m_pT;} + inline operator const Tcls*() const + { + assert(m_pT == NULL); + return m_pT; + } /** raw pointer casting operator - non-const way */ - inline operator Tcls*() {return m_pT;} + inline operator Tcls*() + { + return m_pT; + } /** operator & to support output arguments */ - inline Tcls** operator &() {assert(m_pT == NULL); return &m_pT;} + inline Tcls** operator&() + { + assert(m_pT == NULL); + return &m_pT; + } /** assignment operator from raw ptr */ - inline CCountedPtr& operator = (Tcls *pT) {Assign(pT); return *this;} + inline CCountedPtr& operator=(Tcls *pT) + { + Assign(pT); + return *this; + } /** assignment operator from another smart ptr */ - inline CCountedPtr& operator = (const CCountedPtr& src) {Assign(src.m_pT); return *this;} + inline CCountedPtr& operator=(const CCountedPtr &src) + { + Assign(src.m_pT); + return *this; + } /** assignment operator helper */ inline void Assign(Tcls *pT); /** one way how to test for NULL value */ - inline bool IsNull() const {return m_pT == NULL;} + inline bool IsNull() const + { + return m_pT == NULL; + } /** another way how to test for NULL value */ - //inline bool operator == (const CCountedPtr& sp) const {return m_pT == sp.m_pT;} + //inline bool operator == (const CCountedPtr &sp) const {return m_pT == sp.m_pT;} /** yet another way how to test for NULL value */ - //inline bool operator != (const CCountedPtr& sp) const {return m_pT != sp.m_pT;} + //inline bool operator != (const CCountedPtr &sp) const {return m_pT != sp.m_pT;} /** assign pointer w/o incrementing ref count */ - inline void Attach(Tcls *pT) {Release(); m_pT = pT;} + inline void Attach(Tcls *pT) + { + Release(); + m_pT = pT; + } /** detach pointer w/o decrementing ref count */ - inline Tcls *Detach() {Tcls *pT = m_pT; m_pT = NULL; return pT;} + inline Tcls *Detach() + { + Tcls *pT = m_pT; + m_pT = NULL; + return pT; + } }; template @@ -136,7 +194,6 @@ template struct AdaptT { } }; - /** * Simple counted object. Use it as base of your struct/class if you want to use * basic reference counting. Your struct/class will destroy and free itself when @@ -161,7 +218,4 @@ struct SimpleCountedObject { virtual void FinalRelease() {}; }; - - - #endif /* COUNTEDPTR_HPP */ diff --git a/src/misc/dbg_helpers.h b/src/misc/dbg_helpers.h index 00da4a5c5e..313ec282cb 100644 --- a/src/misc/dbg_helpers.h +++ b/src/misc/dbg_helpers.h @@ -1,4 +1,4 @@ -/* $Id: dbg_helpers.h 20603 2010-08-23 22:03:36Z rubidium $ */ +/* $Id: dbg_helpers.h 27362 2015-08-08 10:06:24Z alberth $ */ /* * This file is part of OpenTTD. @@ -111,7 +111,7 @@ struct DumpTarget { m_ptr = src.m_ptr; } - bool operator < (const KnownStructKey &other) const + bool operator<(const KnownStructKey &other) const { if ((size_t)m_ptr < (size_t)other.m_ptr) return true; if ((size_t)m_ptr > (size_t)other.m_ptr) return false; diff --git a/src/misc/fixedsizearray.hpp b/src/misc/fixedsizearray.hpp index 3091cffe2e..a27e57dcce 100644 --- a/src/misc/fixedsizearray.hpp +++ b/src/misc/fixedsizearray.hpp @@ -1,4 +1,4 @@ -/* $Id: fixedsizearray.hpp 23640 2011-12-20 17:57:56Z truebrain $ */ +/* $Id: fixedsizearray.hpp 27363 2015-08-08 13:19:38Z alberth $ */ /* * This file is part of OpenTTD. @@ -41,13 +41,28 @@ protected: T *data; /** return reference to the array header (non-const) */ - inline ArrayHeader& Hdr() { return *(ArrayHeader*)(((byte*)data) - HeaderSize); } + inline ArrayHeader& Hdr() + { + return *(ArrayHeader*)(((byte*)data) - HeaderSize); + } + /** return reference to the array header (const) */ - inline const ArrayHeader& Hdr() const { return *(ArrayHeader*)(((byte*)data) - HeaderSize); } + inline const ArrayHeader& Hdr() const + { + return *(ArrayHeader*)(((byte*)data) - HeaderSize); + } + /** return reference to the block reference counter */ - inline uint& RefCnt() { return Hdr().reference_count; } + inline uint& RefCnt() + { + return Hdr().reference_count; + } + /** return reference to number of used items */ - inline uint& SizeRef() { return Hdr().items; } + inline uint& SizeRef() + { + return Hdr().items; + } public: /** Default constructor. Preallocate space for items and header, then initialize header. */ @@ -63,7 +78,7 @@ public: } /** Copy constructor. Preallocate space for items and header, then initialize header. */ - FixedSizeArray(const FixedSizeArray& src) + FixedSizeArray(const FixedSizeArray &src) { /* share block (header + items) with the source array */ data = src.data; @@ -96,19 +111,50 @@ public: } /** return number of used items */ - inline uint Length() const { return Hdr().items; } + inline uint Length() const + { + return Hdr().items; + } + /** return true if array is full */ - inline bool IsFull() const { return Length() >= C; } + inline bool IsFull() const + { + return Length() >= C; + } + /** return true if array is empty */ - inline bool IsEmpty() const { return Length() <= 0; } + inline bool IsEmpty() const + { + return Length() <= 0; + } + /** add (allocate), but don't construct item */ - inline T *Append() { assert(!IsFull()); return &data[SizeRef()++]; } + inline T *Append() + { + assert(!IsFull()); + return &data[SizeRef()++]; + } + /** add and construct item using default constructor */ - inline T *AppendC() { T *item = Append(); new(item)T; return item; } + inline T *AppendC() + { + T *item = Append(); + new(item)T; + return item; + } /** return item by index (non-const version) */ - inline T& operator [] (uint index) { assert(index < Length()); return data[index]; } + inline T& operator[](uint index) + { + assert(index < Length()); + return data[index]; + } + /** return item by index (const version) */ - inline const T& operator [] (uint index) const { assert(index < Length()); return data[index]; } + inline const T& operator[](uint index) const + { + assert(index < Length()); + return data[index]; + } }; #endif /* FIXEDSIZEARRAY_HPP */ diff --git a/src/misc/hashtable.hpp b/src/misc/hashtable.hpp index 4f0264642a..a2705789a7 100644 --- a/src/misc/hashtable.hpp +++ b/src/misc/hashtable.hpp @@ -1,4 +1,4 @@ -/* $Id: hashtable.hpp 23640 2011-12-20 17:57:56Z truebrain $ */ +/* $Id: hashtable.hpp 27363 2015-08-08 13:19:38Z alberth $ */ /* * This file is part of OpenTTD. @@ -24,10 +24,13 @@ struct CHashTableSlotT inline CHashTableSlotT() : m_pFirst(NULL) {} /** hash table slot helper - clears the slot by simple forgetting its items */ - inline void Clear() {m_pFirst = NULL;} + inline void Clear() + { + m_pFirst = NULL; + } /** hash table slot helper - linear search for item with given key through the given blob - const version */ - inline const Titem_ *Find(const Key& key) const + inline const Titem_ *Find(const Key &key) const { for (const Titem_ *pItem = m_pFirst; pItem != NULL; pItem = pItem->GetHashNext()) { if (pItem->GetKey() == key) { @@ -39,7 +42,7 @@ struct CHashTableSlotT } /** hash table slot helper - linear search for item with given key through the given blob - non-const version */ - inline Titem_ *Find(const Key& key) + inline Titem_ *Find(const Key &key) { for (Titem_ *pItem = m_pFirst; pItem != NULL; pItem = pItem->GetHashNext()) { if (pItem->GetKey() == key) { @@ -51,7 +54,7 @@ struct CHashTableSlotT } /** hash table slot helper - add new item to the slot */ - inline void Attach(Titem_& new_item) + inline void Attach(Titem_ &new_item) { assert(new_item.GetHashNext() == NULL); new_item.SetHashNext(m_pFirst); @@ -59,7 +62,7 @@ struct CHashTableSlotT } /** hash table slot helper - remove item from a slot */ - inline bool Detach(Titem_& item_to_remove) + inline bool Detach(Titem_ &item_to_remove) { if (m_pFirst == &item_to_remove) { m_pFirst = item_to_remove.GetHashNext(); @@ -81,7 +84,7 @@ struct CHashTableSlotT } /** hash table slot helper - remove and return item from a slot */ - inline Titem_ *Detach(const Key& key) + inline Titem_ *Detach(const Key &key) { /* do we have any items? */ if (m_pFirst == NULL) { @@ -89,7 +92,7 @@ struct CHashTableSlotT } /* is it our first item? */ if (m_pFirst->GetKey() == key) { - Titem_& ret_item = *m_pFirst; + Titem_ &ret_item = *m_pFirst; m_pFirst = m_pFirst->GetHashNext(); ret_item.SetHashNext(NULL); return &ret_item; @@ -128,7 +131,7 @@ struct CHashTableSlotT * - public method that calculates key's hash: * int CalcHash() const; * - public 'equality' operator to compare the key with another one - * bool operator == (const Key& other) const; + * bool operator==(const Key &other) const; */ template class CHashTableT { @@ -156,7 +159,7 @@ public: protected: /** static helper - return hash for the given key modulo number of slots */ - inline static int CalcHash(const Tkey& key) + inline static int CalcHash(const Tkey &key) { int32 hash = key.CalcHash(); if ((8 * Thash_bits) < 32) hash ^= hash >> (min(8 * Thash_bits, 31)); @@ -168,38 +171,47 @@ protected: } /** static helper - return hash for the given item modulo number of slots */ - inline static int CalcHash(const Titem_& item) {return CalcHash(item.GetKey());} + inline static int CalcHash(const Titem_ &item) + { + return CalcHash(item.GetKey()); + } public: /** item count */ - inline int Count() const {return m_num_items;} + inline int Count() const + { + return m_num_items; + } /** simple clear - forget all items - used by CSegmentCostCacheT.Flush() */ - inline void Clear() {for (int i = 0; i < Tcapacity; i++) m_slots[i].Clear();} + inline void Clear() + { + for (int i = 0; i < Tcapacity; i++) m_slots[i].Clear(); + } /** const item search */ - const Titem_ *Find(const Tkey& key) const + const Titem_ *Find(const Tkey &key) const { int hash = CalcHash(key); - const Slot& slot = m_slots[hash]; + const Slot &slot = m_slots[hash]; const Titem_ *item = slot.Find(key); return item; } /** non-const item search */ - Titem_ *Find(const Tkey& key) + Titem_ *Find(const Tkey &key) { int hash = CalcHash(key); - Slot& slot = m_slots[hash]; + Slot &slot = m_slots[hash]; Titem_ *item = slot.Find(key); return item; } /** non-const item search & optional removal (if found) */ - Titem_ *TryPop(const Tkey& key) + Titem_ *TryPop(const Tkey &key) { int hash = CalcHash(key); - Slot& slot = m_slots[hash]; + Slot &slot = m_slots[hash]; Titem_ *item = slot.Detach(key); if (item != NULL) { m_num_items--; @@ -208,7 +220,7 @@ public: } /** non-const item search & removal */ - Titem_& Pop(const Tkey& key) + Titem_& Pop(const Tkey &key) { Titem_ *item = TryPop(key); assert(item != NULL); @@ -216,11 +228,11 @@ public: } /** non-const item search & optional removal (if found) */ - bool TryPop(Titem_& item) + bool TryPop(Titem_ &item) { - const Tkey& key = item.GetKey(); + const Tkey &key = item.GetKey(); int hash = CalcHash(key); - Slot& slot = m_slots[hash]; + Slot &slot = m_slots[hash]; bool ret = slot.Detach(item); if (ret) { m_num_items--; @@ -229,17 +241,17 @@ public: } /** non-const item search & removal */ - void Pop(Titem_& item) + void Pop(Titem_ &item) { bool ret = TryPop(item); assert(ret); } /** add one item - copy it from the given item */ - void Push(Titem_& new_item) + void Push(Titem_ &new_item) { int hash = CalcHash(new_item); - Slot& slot = m_slots[hash]; + Slot &slot = m_slots[hash]; assert(slot.Find(new_item.GetKey()) == NULL); slot.Attach(new_item); m_num_items++; diff --git a/src/misc/str.hpp b/src/misc/str.hpp index 266cc626b1..a03c50fecc 100644 --- a/src/misc/str.hpp +++ b/src/misc/str.hpp @@ -1,4 +1,4 @@ -/* $Id: str.hpp 26506 2014-04-24 19:51:45Z rubidium $ */ +/* $Id: str.hpp 27362 2015-08-08 10:06:24Z alberth $ */ /* * This file is part of OpenTTD. @@ -35,7 +35,7 @@ struct CStrA : public CBlobT } /** Take over ownership constructor */ - inline CStrA(const OnTransfer& ot) + inline CStrA(const OnTransfer &ot) : base(ot) { } @@ -67,7 +67,7 @@ struct CStrA : public CBlobT } /** Assignment from C string. */ - inline CStrA &operator = (const char *src) + inline CStrA &operator=(const char *src) { base::Clear(); AppendStr(src); @@ -75,7 +75,7 @@ struct CStrA : public CBlobT } /** Assignment from another CStrA. */ - inline CStrA &operator = (const CStrA &src) + inline CStrA &operator=(const CStrA &src) { if (&src != this) { base::Clear(); @@ -86,7 +86,7 @@ struct CStrA : public CBlobT } /** Lower-than operator (to support stl collections) */ - inline bool operator < (const CStrA &other) const + inline bool operator<(const CStrA &other) const { return strcmp(base::Data(), other.Data()) < 0; } diff --git a/src/misc_gui.cpp b/src/misc_gui.cpp index 574e784a2c..fbfccd270f 100644 --- a/src/misc_gui.cpp +++ b/src/misc_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: misc_gui.cpp 27194 2015-03-17 22:08:48Z frosch $ */ +/* $Id: misc_gui.cpp 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -432,7 +432,6 @@ static const char * const _credits[] = { " Mike Ragsdale - OpenTTD installer", " Christian Rosentreter (tokai) - MorphOS / AmigaOS port", " Richard Kempton (richK) - additional airports, initial TGP implementation", - " Emperor Jake - titlegame", "", " Alberto Demichelis - Squirrel scripting language \xC2\xA9 2003-2008", " L. Peter Deutsch - MD5 implementation \xC2\xA9 1999, 2000, 2002", @@ -826,7 +825,7 @@ Point QueryString::GetCaretPosition(const Window *w, int wid) const int delta = min(0, (right - left) - tb->pixels - 10); if (tb->caretxoffs + delta < 0) delta = -tb->caretxoffs; - Point pt = {left + WD_FRAMERECT_LEFT + tb->caretxoffs + delta, wi->pos_y + WD_FRAMERECT_TOP}; + Point pt = {left + WD_FRAMERECT_LEFT + tb->caretxoffs + delta, (int)wi->pos_y + WD_FRAMERECT_TOP}; return pt; } diff --git a/src/music/dmusic.cpp b/src/music/dmusic.cpp index f3483cbe81..974bf483e8 100644 --- a/src/music/dmusic.cpp +++ b/src/music/dmusic.cpp @@ -1,4 +1,4 @@ -/* $Id: dmusic.cpp 26482 2014-04-23 20:13:33Z rubidium $ */ +/* $Id: dmusic.cpp 27380 2015-08-10 20:21:29Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -22,6 +22,7 @@ #include "dmusic.h" #include +#undef FACILITY_DIRECTMUSIC // Needed for newer Windows SDK version. #include #include #include diff --git a/src/network/network.cpp b/src/network/network.cpp index 7eaf67a846..eab22def2a 100644 --- a/src/network/network.cpp +++ b/src/network/network.cpp @@ -1,4 +1,4 @@ -/* $Id: network.cpp 27431 2015-11-01 11:59:17Z frosch $ */ +/* $Id: network.cpp 27400 2015-09-19 16:49:46Z rubidium $ */ /* * This file is part of OpenTTD. diff --git a/src/network/network_content.h b/src/network/network_content.h index 8843e2c770..bdfa712b03 100644 --- a/src/network/network_content.h +++ b/src/network/network_content.h @@ -1,4 +1,4 @@ -/* $Id: network_content.h 23465 2011-12-09 21:49:52Z yexo $ */ +/* $Id: network_content.h 27468 2015-12-10 18:28:01Z zuu $ */ /* * This file is part of OpenTTD. @@ -149,7 +149,7 @@ public: extern ClientNetworkContentSocketHandler _network_content_client; -void ShowNetworkContentListWindow(ContentVector *cv = NULL, ContentType type = CONTENT_TYPE_END); +void ShowNetworkContentListWindow(ContentVector *cv = NULL, ContentType type1 = CONTENT_TYPE_END, ContentType type2 = CONTENT_TYPE_END); void ShowMissingContentWindow(const struct GRFConfig *list); diff --git a/src/network/network_content_gui.cpp b/src/network/network_content_gui.cpp index 5246710ce7..8ff2fe61be 100644 --- a/src/network/network_content_gui.cpp +++ b/src/network/network_content_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: network_content_gui.cpp 26921 2014-09-25 19:27:07Z peter1138 $ */ +/* $Id: network_content_gui.cpp 27469 2015-12-10 19:58:33Z zuu $ */ /* * This file is part of OpenTTD. @@ -29,6 +29,8 @@ #include "table/strings.h" #include "../table/sprites.h" +#include + #include "../safeguards.h" @@ -282,10 +284,22 @@ public: } }; +/** Filter data for NetworkContentListWindow. */ +struct ContentListFilterData { + StringFilter string_filter; ///< Text filter of content list + std::bitset types; ///< Content types displayed +}; + +/** Filter criterias for NetworkContentListWindow. */ +enum ContentListFilterCriteria { + CONTENT_FILTER_TEXT = 0, ///< Filter by query sting + CONTENT_FILTER_TYPE_OR_SELECTED,///< Filter by being of displayed type or selected for download +}; + /** Window that lists the content that's at the content server */ class NetworkContentListWindow : public Window, ContentCallback { /** List with content infos. */ - typedef GUIList GUIContentList; + typedef GUIList GUIContentList; static const uint EDITBOX_MAX_SIZE = 50; ///< Maximum size of the editbox in characters. @@ -295,7 +309,7 @@ class NetworkContentListWindow : public Window, ContentCallback { static GUIContentList::FilterFunction * const filter_funcs[]; ///< Filter functions. GUIContentList content; ///< List with content bool auto_select; ///< Automatically select all content when the meta-data becomes available - StringFilter string_filter; ///< Filter for content list + ContentListFilterData filter_data; ///< Filter for content list QueryString filter_editbox; ///< Filter editbox; Dimension checkbox_size; ///< Size of checkbox/"blot" sprite @@ -304,6 +318,8 @@ class NetworkContentListWindow : public Window, ContentCallback { uint filesize_sum; ///< The sum of all selected file sizes Scrollbar *vscroll; ///< Cache of the vertical scrollbar + static char content_type_strs[CONTENT_TYPE_END][64]; ///< Cached strings for all content types. + /** Search external websites for content */ void OpenExternalSearch() { @@ -401,11 +417,7 @@ class NetworkContentListWindow : public Window, ContentCallback { { int r = 0; if ((*a)->type != (*b)->type) { - char a_str[64]; - char b_str[64]; - GetString(a_str, STR_CONTENT_TYPE_BASE_GRAPHICS + (*a)->type - CONTENT_TYPE_BASE_GRAPHICS, lastof(a_str)); - GetString(b_str, STR_CONTENT_TYPE_BASE_GRAPHICS + (*b)->type - CONTENT_TYPE_BASE_GRAPHICS, lastof(b_str)); - r = strnatcmp(a_str, b_str); + r = strnatcmp(content_type_strs[(*a)->type], content_type_strs[(*b)->type]); } if (r == 0) r = NameSorter(a, b); return r; @@ -433,20 +445,38 @@ class NetworkContentListWindow : public Window, ContentCallback { } /** Filter content by tags/name */ - static bool CDECL TagNameFilter(const ContentInfo * const *a, StringFilter &filter) + static bool CDECL TagNameFilter(const ContentInfo * const *a, ContentListFilterData &filter) { - filter.ResetState(); + filter.string_filter.ResetState(); for (int i = 0; i < (*a)->tag_count; i++) { - filter.AddLine((*a)->tags[i]); + filter.string_filter.AddLine((*a)->tags[i]); } - filter.AddLine((*a)->name); - return filter.GetState(); + filter.string_filter.AddLine((*a)->name); + return filter.string_filter.GetState(); + } + + /** Filter content by type, but still show content selected for download. */ + static bool CDECL TypeOrSelectedFilter(const ContentInfo * const *a, ContentListFilterData &filter) + { + if (filter.types.none()) return true; + if (filter.types[(*a)->type]) return true; + return ((*a)->state == ContentInfo::SELECTED || (*a)->state == ContentInfo::AUTOSELECTED); } /** Filter the content list */ void FilterContentList() { - if (!this->content.Filter(this->string_filter)) return; + /* Apply filters. */ + bool changed = false; + if (!this->filter_data.string_filter.IsEmpty()) { + this->content.SetFilterType(CONTENT_FILTER_TEXT); + changed |= this->content.Filter(this->filter_data); + } + if (this->filter_data.types.any()) { + this->content.SetFilterType(CONTENT_FILTER_TYPE_OR_SELECTED); + changed |= this->content.Filter(this->filter_data); + } + if (!changed) return; /* update list position */ for (ConstContentIterator iter = this->content.Begin(); iter != this->content.End(); iter++) { @@ -461,6 +491,20 @@ class NetworkContentListWindow : public Window, ContentCallback { this->list_pos = 0; } + /** + * Update filter state based on current window state. + * @return true if filter state was changed, otherwise false. + */ + bool UpdateFilterState() + { + Filtering old_params = this->content.GetFiltering(); + bool new_state = !this->filter_data.string_filter.IsEmpty() || this->filter_data.types.any(); + if (new_state != old_params.state) { + this->content.SetFilterState(new_state); + } + return new_state != old_params.state; + } + /** Make sure that the currently selected content info is within the visible part of the matrix */ void ScrollToSelected() { @@ -469,13 +513,18 @@ class NetworkContentListWindow : public Window, ContentCallback { this->vscroll->ScrollTowards(this->list_pos); } + friend void BuildContentTypeStringList(); public: /** * Create the content list window. * @param desc the window description to pass to Window's constructor. * @param select_all Whether the select all button is allowed or not. + * @param type the main type of content to display or #CONTENT_TYPE_END. + * When a type other than #CONTENT_TYPE_END is given, dependencies of + * other types are only shown when content that depend on them are + * selected. */ - NetworkContentListWindow(WindowDesc *desc, bool select_all) : + NetworkContentListWindow(WindowDesc *desc, bool select_all, const std::bitset &types) : Window(desc), auto_select(select_all), filter_editbox(EDITBOX_MAX_SIZE), @@ -494,12 +543,14 @@ public: this->filter_editbox.cancel_button = QueryString::ACTION_CLEAR; this->SetFocusedWidget(WID_NCL_FILTER); this->SetWidgetDisabledState(WID_NCL_SEARCH_EXTERNAL, this->auto_select); + this->filter_data.types = types; _network_content_client.AddCallback(this); this->content.SetListing(this->last_sorting); this->content.SetFiltering(this->last_filtering); this->content.SetSortFuncs(this->sorter_funcs); this->content.SetFilterFuncs(this->filter_funcs); + this->UpdateFilterState(); this->content.ForceRebuild(); this->FilterContentList(); this->SortContentList(); @@ -752,6 +803,10 @@ public: this->content.ForceResort(); } + if (this->filter_data.types.any()) { + this->content.ForceRebuild(); + } + this->InvalidateData(); break; } @@ -847,9 +902,13 @@ public: this->content.ForceResort(); this->InvalidateData(); } + if (this->filter_data.types.any()) { + this->content.ForceRebuild(); + this->InvalidateData(); + } return ES_HANDLED; } - /* FALL THROUGH, space is pressed and filter isn't focused. */ + /* FALL THROUGH, space is pressed and filter is focused. */ default: return ES_NOT_HANDLED; @@ -857,13 +916,21 @@ public: if (this->content.Length() == 0) { this->list_pos = 0; // above stuff may result in "-1". + if (this->UpdateFilterState()) { + this->content.ForceRebuild(); + this->InvalidateData(); + } return ES_HANDLED; } this->selected = *this->content.Get(this->list_pos); - /* scroll to the new server if it is outside the current range */ - this->ScrollToSelected(); + if (this->UpdateFilterState()) { + this->content.ForceRebuild(); + } else { + /* Scroll to the new content if it is outside the current range. */ + this->ScrollToSelected(); + } /* redraw window */ this->InvalidateData(); @@ -873,8 +940,8 @@ public: virtual void OnEditboxChanged(int wid) { if (wid == WID_NCL_FILTER) { - this->string_filter.SetFilterTerm(this->filter_editbox.text.buf); - this->content.SetFilterState(!this->string_filter.IsEmpty()); + this->filter_data.string_filter.SetFilterTerm(this->filter_editbox.text.buf); + this->UpdateFilterState(); this->content.ForceRebuild(); this->InvalidateData(); } @@ -966,8 +1033,21 @@ NetworkContentListWindow::GUIContentList::SortFunction * const NetworkContentLis NetworkContentListWindow::GUIContentList::FilterFunction * const NetworkContentListWindow::filter_funcs[] = { &TagNameFilter, + &TypeOrSelectedFilter, }; +char NetworkContentListWindow::content_type_strs[CONTENT_TYPE_END][64]; + +/** + * Build array of all strings corresponding to the content types. + */ +void BuildContentTypeStringList() +{ + for (int i = CONTENT_TYPE_BEGIN; i < CONTENT_TYPE_END; i++) { + GetString(NetworkContentListWindow::content_type_strs[i], STR_CONTENT_TYPE_BASE_GRAPHICS + i - CONTENT_TYPE_BASE_GRAPHICS, lastof(NetworkContentListWindow::content_type_strs[i])); + } +} + /** The widgets for the content list. */ static const NWidgetPart _nested_network_content_list_widgets[] = { NWidget(NWID_HORIZONTAL), @@ -1056,20 +1136,29 @@ static WindowDesc _network_content_list_desc( /** * Show the content list window with a given set of content * @param cv the content to show, or NULL when it has to search for itself - * @param type the type to (only) show + * @param type1 the first type to (only) show or #CONTENT_TYPE_END to show all. + * @param type2 the second type to (only) show in addition to type1. If type2 is != #CONTENT_TYPE_END, then also type1 should be != #CONTENT_TYPE_END. + * If type2 != #CONTENT_TYPE_END, then type1 != type2 must be true. */ -void ShowNetworkContentListWindow(ContentVector *cv, ContentType type) +void ShowNetworkContentListWindow(ContentVector *cv, ContentType type1, ContentType type2) { #if defined(WITH_ZLIB) + std::bitset types; _network_content_client.Clear(); if (cv == NULL) { - _network_content_client.RequestContentList(type); + assert(type1 != CONTENT_TYPE_END || type2 == CONTENT_TYPE_END); + assert(type1 == CONTENT_TYPE_END || type1 != type2); + _network_content_client.RequestContentList(type1); + if (type2 != CONTENT_TYPE_END) _network_content_client.RequestContentList(type2); + + if (type1 != CONTENT_TYPE_END) types[type1] = true; + if (type2 != CONTENT_TYPE_END) types[type2] = true; } else { _network_content_client.RequestContentList(cv, true); } DeleteWindowById(WC_NETWORK_WINDOW, WN_NETWORK_WINDOW_CONTENT_LIST); - new NetworkContentListWindow(&_network_content_list_desc, cv != NULL); + new NetworkContentListWindow(&_network_content_list_desc, cv != NULL, types); #else ShowErrorMessage(STR_CONTENT_NO_ZLIB, STR_CONTENT_NO_ZLIB_SUB, WL_ERROR); /* Connection failed... clean up the mess */ diff --git a/src/network/network_content_gui.h b/src/network/network_content_gui.h index fd73b52a1e..c741f31bac 100644 --- a/src/network/network_content_gui.h +++ b/src/network/network_content_gui.h @@ -1,4 +1,4 @@ -/* $Id: network_content_gui.h 25287 2013-05-26 19:23:42Z frosch $ */ +/* $Id: network_content_gui.h 27288 2015-05-17 19:49:35Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -43,4 +43,6 @@ public: virtual void OnDownloadProgress(const ContentInfo *ci, int bytes); }; +void BuildContentTypeStringList(); + #endif /* NETWORK_CONTENT_GUI_H */ diff --git a/src/network/network_func.h b/src/network/network_func.h index 36a91ec165..5b44726abd 100644 --- a/src/network/network_func.h +++ b/src/network/network_func.h @@ -1,4 +1,4 @@ -/* $Id: network_func.h 27431 2015-11-01 11:59:17Z frosch $ */ +/* $Id: network_func.h 27400 2015-09-19 16:49:46Z rubidium $ */ /* * This file is part of OpenTTD. diff --git a/src/network/network_gui.cpp b/src/network/network_gui.cpp index 88e869e56e..12b3a1a2f9 100644 --- a/src/network/network_gui.cpp +++ b/src/network/network_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: network_gui.cpp 27431 2015-11-01 11:59:17Z frosch $ */ +/* $Id: network_gui.cpp 27421 2015-10-30 16:19:33Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/network/network_udp.cpp b/src/network/network_udp.cpp index af55c786b8..2f454d0697 100644 --- a/src/network/network_udp.cpp +++ b/src/network/network_udp.cpp @@ -1,4 +1,4 @@ -/* $Id: network_udp.cpp 27431 2015-11-01 11:59:17Z frosch $ */ +/* $Id: network_udp.cpp 27400 2015-09-19 16:49:46Z rubidium $ */ /* * This file is part of OpenTTD. diff --git a/src/newgrf.cpp b/src/newgrf.cpp index 51d608fcd0..81e3216e42 100644 --- a/src/newgrf.cpp +++ b/src/newgrf.cpp @@ -1,4 +1,4 @@ -/* $Id: newgrf.cpp 27138 2015-02-06 21:56:50Z frosch $ */ +/* $Id: newgrf.cpp 27507 2016-02-08 21:05:57Z frosch $ */ /* * This file is part of OpenTTD. @@ -1402,7 +1402,7 @@ static ChangeInfoResult RoadVehicleChangeInfo(uint engine, int numinfo, int prop break; case 0x12: // SFX - rvi->sfx = buf->ReadByte(); + rvi->sfx = GetNewGRFSoundID(_cur.grffile, buf->ReadByte()); break; case PROP_ROADVEH_POWER: // Power in units of 10 HP. @@ -1590,7 +1590,7 @@ static ChangeInfoResult ShipVehicleChangeInfo(uint engine, int numinfo, int prop break; case 0x10: // SFX - svi->sfx = buf->ReadByte(); + svi->sfx = GetNewGRFSoundID(_cur.grffile, buf->ReadByte()); break; case 0x11: { // Cargoes available for refitting @@ -1758,7 +1758,7 @@ static ChangeInfoResult AircraftVehicleChangeInfo(uint engine, int numinfo, int break; case 0x12: // SFX - avi->sfx = buf->ReadByte(); + avi->sfx = GetNewGRFSoundID(_cur.grffile, buf->ReadByte()); break; case 0x13: { // Cargoes available for refitting @@ -6421,8 +6421,8 @@ static void SafeParamSet(ByteReader *buf) { uint8 target = buf->ReadByte(); - /* Only writing GRF parameters is considered safe */ - if (target < 0x80) return; + /* Writing GRF parameters and some bits of 'misc GRF features' are safe. */ + if (target < 0x80 || target == 0x9E) return; /* GRM could be unsafe, but as here it can only happen after other GRFs * are loaded, it should be okay. If the GRF tried to use the slots it @@ -6838,7 +6838,15 @@ static void ParamSet(ByteReader *buf) /* Remove the local flags from the global flags */ ClrBit(res, GMB_TRAIN_WIDTH_32_PIXELS); - _misc_grf_features = res; + /* Only copy safe bits for static grfs */ + if (HasBit(_cur.grfconfig->flags, GCF_STATIC)) { + uint32 safe_bits = 0; + SetBit(safe_bits, GMB_SECOND_ROCKY_TILE_SET); + + _misc_grf_features = (_misc_grf_features & ~safe_bits) | (res & safe_bits); + } else { + _misc_grf_features = res; + } break; case 0x9F: // locale-dependent settings diff --git a/src/newgrf.h b/src/newgrf.h index 0520b1ec1e..8de6788153 100644 --- a/src/newgrf.h +++ b/src/newgrf.h @@ -1,4 +1,4 @@ -/* $Id: newgrf.h 27214 2015-03-31 18:45:30Z frosch $ */ +/* $Id: newgrf.h 27200 2015-03-20 19:27:15Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/newgrf_debug_gui.cpp b/src/newgrf_debug_gui.cpp index b861cadac9..3d9651bb9f 100644 --- a/src/newgrf_debug_gui.cpp +++ b/src/newgrf_debug_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: newgrf_debug_gui.cpp 27174 2015-03-01 08:17:14Z alberth $ */ +/* $Id: newgrf_debug_gui.cpp 27451 2015-11-20 10:04:28Z alberth $ */ /* * This file is part of OpenTTD. @@ -972,10 +972,11 @@ struct SpriteAlignerWindow : Window { this->offs_start_map.Insert(this->current_sprite, XyOffs(spr->x_offs, spr->y_offs)); } switch (widget) { - case WID_SA_UP: spr->y_offs--; break; - case WID_SA_DOWN: spr->y_offs++; break; - case WID_SA_LEFT: spr->x_offs--; break; - case WID_SA_RIGHT: spr->x_offs++; break; + /* Move ten units at a time if ctrl is pressed. */ + case WID_SA_UP: spr->y_offs -= _ctrl_pressed ? 8 : 1; break; + case WID_SA_DOWN: spr->y_offs += _ctrl_pressed ? 8 : 1; break; + case WID_SA_LEFT: spr->x_offs -= _ctrl_pressed ? 8 : 1; break; + case WID_SA_RIGHT: spr->x_offs += _ctrl_pressed ? 8 : 1; break; } /* Of course, we need to redraw the sprite, but where is it used? * Everywhere is a safe bet. */ diff --git a/src/newgrf_gui.cpp b/src/newgrf_gui.cpp index 189ee2f4ea..1f82e6bc56 100644 --- a/src/newgrf_gui.cpp +++ b/src/newgrf_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: newgrf_gui.cpp 26954 2014-10-04 18:19:22Z peter1138 $ */ +/* $Id: newgrf_gui.cpp 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -223,7 +223,7 @@ struct NewGRFParametersWindow : public Window { case WID_NP_DESCRIPTION: /* Minimum size of 4 lines. The 500 is the default size of the window. */ - Dimension suggestion = {500 - WD_FRAMERECT_LEFT - WD_FRAMERECT_RIGHT, FONT_HEIGHT_NORMAL * 4 + WD_TEXTPANEL_TOP + WD_TEXTPANEL_BOTTOM}; + Dimension suggestion = {500 - WD_FRAMERECT_LEFT - WD_FRAMERECT_RIGHT, (uint)FONT_HEIGHT_NORMAL * 4 + WD_TEXTPANEL_TOP + WD_TEXTPANEL_BOTTOM}; for (uint i = 0; i < this->grf_config->param_info.Length(); i++) { const GRFParameterInfo *par_info = this->grf_config->param_info[i]; if (par_info == NULL) continue; diff --git a/src/newgrf_industries.cpp b/src/newgrf_industries.cpp index 4c319d7ace..0be46b7363 100644 --- a/src/newgrf_industries.cpp +++ b/src/newgrf_industries.cpp @@ -1,4 +1,4 @@ -/* $Id: newgrf_industries.cpp 26482 2014-04-23 20:13:33Z rubidium $ */ +/* $Id: newgrf_industries.cpp 27279 2015-05-09 10:21:55Z frosch $ */ /* * This file is part of OpenTTD. @@ -41,9 +41,9 @@ IndustryTileOverrideManager _industile_mngr(NEW_INDUSTRYTILEOFFSET, NUM_INDUSTRY IndustryType MapNewGRFIndustryType(IndustryType grf_type, uint32 grf_id) { if (grf_type == IT_INVALID) return IT_INVALID; - if (!HasBit(grf_type, 7)) return GB(grf_type, 0, 6); + if (!HasBit(grf_type, 7)) return GB(grf_type, 0, 7); - return _industry_mngr.GetID(GB(grf_type, 0, 6), grf_id); + return _industry_mngr.GetID(GB(grf_type, 0, 7), grf_id); } /** @@ -354,7 +354,7 @@ static uint32 GetCountAndDistanceOfClosestInstance(byte param_setID, byte layout case 0xA4: return this->industry->last_month_transported[1]; case 0xA5: return GB(this->industry->last_month_transported[1], 8, 8); - case 0xA6: return this->industry->type; + case 0xA6: return indspec->grf_prop.local_id; case 0xA7: return this->industry->founder; case 0xA8: return this->industry->random_colour; case 0xA9: return Clamp(this->industry->last_prod_year - ORIGINAL_BASE_YEAR, 0, 255); diff --git a/src/newgrf_railtype.cpp b/src/newgrf_railtype.cpp index 711e7a6cfb..9a7714b7d4 100644 --- a/src/newgrf_railtype.cpp +++ b/src/newgrf_railtype.cpp @@ -1,4 +1,4 @@ -/* $Id: newgrf_railtype.cpp 26482 2014-04-23 20:13:33Z rubidium $ */ +/* $Id: newgrf_railtype.cpp 27342 2015-07-26 12:25:37Z frosch $ */ /* * This file is part of OpenTTD. @@ -100,9 +100,10 @@ RailTypeResolverObject::RailTypeResolverObject(const RailtypeInfo *rti, TileInde * @param tile The tile to get the sprite for. * @param rtsg The type of sprite to draw. * @param content Where are we drawing the tile? + * @param [out] num_results If not NULL, return the number of sprites in the spriteset. * @return The sprite to draw. */ -SpriteID GetCustomRailSprite(const RailtypeInfo *rti, TileIndex tile, RailTypeSpriteGroup rtsg, TileContext context) +SpriteID GetCustomRailSprite(const RailtypeInfo *rti, TileIndex tile, RailTypeSpriteGroup rtsg, TileContext context, uint *num_results) { assert(rtsg < RTSG_END); @@ -112,6 +113,8 @@ SpriteID GetCustomRailSprite(const RailtypeInfo *rti, TileIndex tile, RailTypeSp const SpriteGroup *group = object.Resolve(); if (group == NULL || group->GetNumResults() == 0) return 0; + if (num_results) *num_results = group->GetNumResults(); + return group->GetResult(); } diff --git a/src/newgrf_railtype.h b/src/newgrf_railtype.h index 720bae9659..838dce26df 100644 --- a/src/newgrf_railtype.h +++ b/src/newgrf_railtype.h @@ -1,4 +1,4 @@ -/* $Id: newgrf_railtype.h 26388 2014-03-03 20:02:31Z frosch $ */ +/* $Id: newgrf_railtype.h 27342 2015-07-26 12:25:37Z frosch $ */ /* * This file is part of OpenTTD. @@ -44,7 +44,7 @@ struct RailTypeResolverObject : public ResolverObject { /* virtual */ const SpriteGroup *ResolveReal(const RealSpriteGroup *group) const; }; -SpriteID GetCustomRailSprite(const RailtypeInfo *rti, TileIndex tile, RailTypeSpriteGroup rtsg, TileContext context = TCX_NORMAL); +SpriteID GetCustomRailSprite(const RailtypeInfo *rti, TileIndex tile, RailTypeSpriteGroup rtsg, TileContext context = TCX_NORMAL, uint *num_results = NULL); SpriteID GetCustomSignalSprite(const RailtypeInfo *rti, TileIndex tile, SignalType type, SignalVariant var, SignalState state, bool gui = false); uint8 GetReverseRailTypeTranslation(RailType railtype, const GRFFile *grffile); diff --git a/src/newgrf_sound.cpp b/src/newgrf_sound.cpp index 8add8c18d4..4dc4b3689c 100644 --- a/src/newgrf_sound.cpp +++ b/src/newgrf_sound.cpp @@ -1,4 +1,4 @@ -/* $Id: newgrf_sound.cpp 26482 2014-04-23 20:13:33Z rubidium $ */ +/* $Id: newgrf_sound.cpp 27507 2016-02-08 21:05:57Z frosch $ */ /* * This file is part of OpenTTD. @@ -161,6 +161,22 @@ bool LoadNewGRFSound(SoundEntry *sound) return false; } +/** + * Resolve NewGRF sound ID. + * @param file NewGRF to get sound from. + * @param sound_id GRF-specific sound ID. (GRF-local for IDs above ORIGINAL_SAMPLE_COUNT) + * @return Translated (global) sound ID, or INVALID_SOUND. + */ +SoundID GetNewGRFSoundID(const GRFFile *file, SoundID sound_id) +{ + /* Global sound? */ + if (sound_id < ORIGINAL_SAMPLE_COUNT) return sound_id; + + sound_id -= ORIGINAL_SAMPLE_COUNT; + if (file == NULL || sound_id >= file->num_sounds) return INVALID_SOUND; + + return file->sound_offset + sound_id; +} /** * Checks whether a NewGRF wants to play a different vehicle sound effect. @@ -185,14 +201,10 @@ bool PlayVehicleSound(const Vehicle *v, VehicleSoundEvent event) /* Play default sound if callback fails */ if (callback == CALLBACK_FAILED) return false; - if (callback >= ORIGINAL_SAMPLE_COUNT) { - callback -= ORIGINAL_SAMPLE_COUNT; + callback = GetNewGRFSoundID(file, callback); - /* Play no sound if result is out of range */ - if (callback > file->num_sounds) return true; - - callback += file->sound_offset; - } + /* Play no sound, if result is invalid */ + if (callback == INVALID_SOUND) return true; assert(callback < GetNumSounds()); SndPlayVehicleFx(callback, v); @@ -207,11 +219,8 @@ bool PlayVehicleSound(const Vehicle *v, VehicleSoundEvent event) */ void PlayTileSound(const GRFFile *file, SoundID sound_id, TileIndex tile) { - if (sound_id >= ORIGINAL_SAMPLE_COUNT) { - sound_id -= ORIGINAL_SAMPLE_COUNT; - if (sound_id > file->num_sounds) return; - sound_id += file->sound_offset; - } + sound_id = GetNewGRFSoundID(file, sound_id); + if (sound_id == INVALID_SOUND) return; assert(sound_id < GetNumSounds()); SndPlayTileFx(sound_id, tile); diff --git a/src/newgrf_sound.h b/src/newgrf_sound.h index 44606656e2..0bbb03e930 100644 --- a/src/newgrf_sound.h +++ b/src/newgrf_sound.h @@ -1,4 +1,4 @@ -/* $Id: newgrf_sound.h 24052 2012-03-19 22:55:29Z frosch $ */ +/* $Id: newgrf_sound.h 27507 2016-02-08 21:05:57Z frosch $ */ /* * This file is part of OpenTTD. @@ -33,6 +33,7 @@ enum VehicleSoundEvent { SoundEntry *AllocateSound(uint num); void InitializeSoundPool(); bool LoadNewGRFSound(SoundEntry *sound); +SoundID GetNewGRFSoundID(const struct GRFFile *file, SoundID sound_id); SoundEntry *GetSound(SoundID sound_id); uint GetNumSounds(); bool PlayVehicleSound(const Vehicle *v, VehicleSoundEvent event); diff --git a/src/object.h b/src/object.h index 068c759050..2296842389 100644 --- a/src/object.h +++ b/src/object.h @@ -1,4 +1,4 @@ -/* $Id: object.h 21846 2011-01-18 23:09:43Z rubidium $ */ +/* $Id: object.h 27346 2015-07-28 18:20:54Z alberth $ */ /* * This file is part of OpenTTD. @@ -20,7 +20,6 @@ void UpdateCompanyHQ(TileIndex tile, uint score); void BuildObject(ObjectType type, TileIndex tile, CompanyID owner = OWNER_NONE, struct Town *town = NULL, uint8 view = 0); -void PlaceProc_Object(TileIndex tile); -void ShowBuildObjectPicker(struct Window *w); +void ShowBuildObjectPicker(); #endif /* OBJECT_H */ diff --git a/src/object_gui.cpp b/src/object_gui.cpp index 1bfb1dfa66..1076e981a8 100644 --- a/src/object_gui.cpp +++ b/src/object_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: object_gui.cpp 27134 2015-02-01 20:54:24Z frosch $ */ +/* $Id: object_gui.cpp 27438 2015-11-07 15:07:18Z frosch $ */ /* * This file is part of OpenTTD. @@ -16,6 +16,7 @@ #include "newgrf_text.h" #include "strings_func.h" #include "viewport_func.h" +#include "tilehighlight_func.h" #include "window_gui.h" #include "window_func.h" #include "zoom_func.h" @@ -31,7 +32,7 @@ static int _selected_object_index; ///< the index of the selected obje static uint8 _selected_object_view; ///< the view of the selected object /** The window used for building objects. */ -class BuildObjectWindow : public PickerWindowBase { +class BuildObjectWindow : public Window { static const int OBJECT_MARGIN = 4; ///< The margin (in pixels) around an object. int line_height; ///< The height of a single line. int info_height; ///< The height of the info box. @@ -73,11 +74,13 @@ class BuildObjectWindow : public PickerWindowBase { } public: - BuildObjectWindow(WindowDesc *desc, Window *w) : PickerWindowBase(desc, w), info_height(1) + BuildObjectWindow(WindowDesc *desc, WindowNumber number) : Window(desc), info_height(1) { this->CreateNestedTree(); this->vscroll = this->GetScrollbar(WID_BO_SCROLLBAR); - this->FinishInitNested(0); + this->FinishInitNested(number); + + ResetObjectToPlace(); this->vscroll->SetPosition(0); this->vscroll->SetCount(ObjectClass::GetUIClassCount()); @@ -337,10 +340,11 @@ public: _selected_object_view = 0; } - this->GetWidget(WID_BO_OBJECT_MATRIX)->SetClicked(_selected_object_view); - this->GetWidget(WID_BO_SELECT_MATRIX)->SetClicked(_selected_object_index != -1 ? ObjectClass::Get(_selected_object_class)->GetUIFromIndex(_selected_object_index) : -1); - this->UpdateSelectSize(); - this->SetDirty(); + if (_selected_object_index != -1) { + SetObjectToPlaceWnd(SPR_CURSOR_TRANSMITTER, PAL_NONE, HT_RECT, this); + } + + this->UpdateButtons(_selected_object_class, _selected_object_index, _selected_object_view); } void UpdateSelectSize() @@ -355,6 +359,29 @@ public: } } + /** + * Update buttons to show the selection to the user. + * @param sel_class The class of the selected object. + * @param sel_index Index of the object to select, or \c -1 . + * @param sel_view View of the object to select. + */ + void UpdateButtons(ObjectClassID sel_class, int sel_index, uint sel_view) + { + int view_number, object_number; + if (sel_index == -1) { + view_number = -1; // If no object selected, also hide the selected view. + object_number = -1; + } else { + view_number = sel_view; + object_number = ObjectClass::Get(sel_class)->GetUIFromIndex(sel_index); + } + + this->GetWidget(WID_BO_OBJECT_MATRIX)->SetClicked(view_number); + this->GetWidget(WID_BO_SELECT_MATRIX)->SetClicked(object_number); + this->UpdateSelectSize(); + this->SetDirty(); + } + virtual void OnResize() { this->vscroll->SetCapacityFromWidget(this, WID_BO_CLASS_LIST); @@ -382,14 +409,23 @@ public: case WID_BO_OBJECT_SPRITE: if (_selected_object_index != -1) { _selected_object_view = GB(widget, 16, 16); - this->GetWidget(WID_BO_OBJECT_MATRIX)->SetClicked(_selected_object_view); - this->UpdateSelectSize(); - this->SetDirty(); + this->SelectOtherObject(_selected_object_index); // Re-select the object for a different view. } break; } } + virtual void OnPlaceObject(Point pt, TileIndex tile) + { + DoCommandP(tile, ObjectClass::Get(_selected_object_class)->GetSpec(_selected_object_index)->Index(), + _selected_object_view, CMD_BUILD_OBJECT | CMD_MSG(STR_ERROR_CAN_T_BUILD_OBJECT), CcTerraform); + } + + virtual void OnPlaceObjectAbort() + { + this->UpdateButtons(_selected_object_class, -1, _selected_object_view); + } + /** * Select the first available object. * @param change_class If true, change the class if no object in the current @@ -488,9 +524,12 @@ static WindowDesc _build_object_desc( * Show our object picker. * @param w The toolbar window we're associated with. */ -void ShowBuildObjectPicker(Window *w) +void ShowBuildObjectPicker() { - new BuildObjectWindow(&_build_object_desc, w); + /* Don't show the place object button when there are no objects to place. */ + if (ObjectClass::GetUIClassCount() > 0) { + AllocateWindowDescFront(&_build_object_desc, 0); + } } /** Reset all data of the object GUI. */ @@ -498,13 +537,3 @@ void InitializeObjectGui() { _selected_object_class = (ObjectClassID)0; } - -/** - * PlaceProc function, called when someone pressed the button if the - * object-tool is selected - * @param tile on which to place the object - */ -void PlaceProc_Object(TileIndex tile) -{ - DoCommandP(tile, ObjectClass::Get(_selected_object_class)->GetSpec(_selected_object_index)->Index(), _selected_object_view, CMD_BUILD_OBJECT | CMD_MSG(STR_ERROR_CAN_T_BUILD_OBJECT), CcTerraform); -} diff --git a/src/order_gui.cpp b/src/order_gui.cpp index de6ff87f4b..56b4c15521 100644 --- a/src/order_gui.cpp +++ b/src/order_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: order_gui.cpp 27432 2015-11-01 12:03:13Z frosch $ */ +/* $Id: order_gui.cpp 27425 2015-10-30 17:23:16Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/os/os2/os2.cpp b/src/os/os2/os2.cpp index 13affe7648..e6a094736d 100644 --- a/src/os/os2/os2.cpp +++ b/src/os/os2/os2.cpp @@ -1,4 +1,4 @@ -/* $Id: os2.cpp 27092 2014-12-24 17:17:18Z frosch $ */ +/* $Id: os2.cpp 27290 2015-05-20 18:18:26Z rubidium $ */ /* * This file is part of OpenTTD. @@ -174,6 +174,9 @@ int CDECL main(int argc, char *argv[]) { SetRandomSeed(time(NULL)); + /* Make sure our arguments contain only valid UTF-8 characters. */ + for (int i = 0; i < argc; i++) ValidateString(argv[i]); + return openttd_main(argc, argv); } diff --git a/src/os/unix/unix.cpp b/src/os/unix/unix.cpp index 7e6a79ecea..f05955cf10 100644 --- a/src/os/unix/unix.cpp +++ b/src/os/unix/unix.cpp @@ -1,4 +1,4 @@ -/* $Id: unix.cpp 26724 2014-08-09 19:39:14Z alberth $ */ +/* $Id: unix.cpp 27290 2015-05-20 18:18:26Z rubidium $ */ /* * This file is part of OpenTTD. @@ -259,7 +259,8 @@ void cocoaReleaseAutoreleasePool(); int CDECL main(int argc, char *argv[]) { - int ret; + /* Make sure our arguments contain only valid UTF-8 characters. */ + for (int i = 0; i < argc; i++) ValidateString(argv[i]); #ifdef WITH_COCOA cocoaSetupAutoreleasePool(); @@ -275,7 +276,7 @@ int CDECL main(int argc, char *argv[]) signal(SIGPIPE, SIG_IGN); - ret = openttd_main(argc, argv); + int ret = openttd_main(argc, argv); #ifdef WITH_COCOA cocoaReleaseAutoreleasePool(); diff --git a/src/os/windows/crashlog_win.cpp b/src/os/windows/crashlog_win.cpp index 297fc19067..5432a09bd2 100644 --- a/src/os/windows/crashlog_win.cpp +++ b/src/os/windows/crashlog_win.cpp @@ -1,4 +1,4 @@ -/* $Id: crashlog_win.cpp 26538 2014-04-28 21:06:51Z rubidium $ */ +/* $Id: crashlog_win.cpp 27380 2015-08-10 20:21:29Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -322,7 +322,9 @@ static char *PrintModuleInfo(char *output, const char *last, HMODULE mod) } #if defined(_MSC_VER) +#pragma warning(disable:4091) #include +#pragma warning(default:4091) char *CrashLogWindows::AppendDecodedStacktrace(char *buffer, const char *last) const { diff --git a/src/os/windows/ottdres.rc.in b/src/os/windows/ottdres.rc.in index 8651a9616b..34d2a7e62f 100644 --- a/src/os/windows/ottdres.rc.in +++ b/src/os/windows/ottdres.rc.in @@ -1,5 +1,5 @@ //Microsoft Developer Studio generated resource script. -// $Id: ottdres.rc.in 27462 2015-12-01 19:36:48Z frosch $ +// $Id: ottdres.rc.in 27516 2016-03-01 19:41:31Z frosch $ // // This file is part of OpenTTD. // OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -79,8 +79,8 @@ END // VS_VERSION_INFO VERSIONINFO - FILEVERSION 1,5,3,!!REVISION!! - PRODUCTVERSION 1,5,3,!!REVISION!! + FILEVERSION 1,6,0,!!REVISION!! + PRODUCTVERSION 1,6,0,!!REVISION!! FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -100,7 +100,7 @@ BEGIN VALUE "FileDescription", "OpenTTD\0" VALUE "FileVersion", "!!VERSION!!\0" VALUE "InternalName", "openttd\0" - VALUE "LegalCopyright", "Copyright \xA9 OpenTTD Developers 2002-2015. All Rights Reserved.\0" + VALUE "LegalCopyright", "Copyright \xA9 OpenTTD Developers 2002-2016. All Rights Reserved.\0" VALUE "LegalTrademarks", "\0" VALUE "OriginalFilename", "openttd.exe\0" VALUE "PrivateBuild", "\0" diff --git a/src/os/windows/win32.cpp b/src/os/windows/win32.cpp index 103cf3f7dd..b7073b8f05 100644 --- a/src/os/windows/win32.cpp +++ b/src/os/windows/win32.cpp @@ -1,4 +1,4 @@ -/* $Id: win32.cpp 26606 2014-05-22 19:03:14Z frosch $ */ +/* $Id: win32.cpp 27481 2015-12-28 13:16:41Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -14,13 +14,13 @@ #include "../../gfx_func.h" #include "../../textbuf_gui.h" #include "../../fileio_func.h" -#include "../../fios.h" #include #include #include #include /* SHGetFolderPath */ #include #include "win32.h" +#include "../../fios.h" #include "../../core/alloc_func.hpp" #include "../../openttd.h" #include "../../core/random_func.hpp" @@ -338,9 +338,16 @@ void CreateConsole() return; } +#if defined(_MSC_VER) && _MSC_VER >= 1900 + freopen("CONOUT$", "a", stdout); + freopen("CONIN$", "r", stdin); + freopen("CONOUT$", "a", stderr); +#else *stdout = *_fdopen(fd, "w"); *stdin = *_fdopen(_open_osfhandle((intptr_t)GetStdHandle(STD_INPUT_HANDLE), _O_TEXT), "r" ); *stderr = *_fdopen(_open_osfhandle((intptr_t)GetStdHandle(STD_ERROR_HANDLE), _O_TEXT), "w" ); +#endif + #else /* open_osfhandle is not in cygwin */ *stdout = *fdopen(1, "w" ); @@ -453,6 +460,9 @@ int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLi argc = ParseCommandLine(cmdline, argv, lengthof(argv)); + /* Make sure our arguments contain only valid UTF-8 characters. */ + for (int i = 0; i < argc; i++) ValidateString(argv[i]); + openttd_main(argc, argv); free(cmdline); return 0; diff --git a/src/pathfinder/follow_track.hpp b/src/pathfinder/follow_track.hpp index 06750007cf..13cf853f1e 100644 --- a/src/pathfinder/follow_track.hpp +++ b/src/pathfinder/follow_track.hpp @@ -1,4 +1,4 @@ -/* $Id: follow_track.hpp 27431 2015-11-01 11:59:17Z frosch $ */ +/* $Id: follow_track.hpp 27418 2015-10-30 16:18:03Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/pathfinder/yapf/nodelist.hpp b/src/pathfinder/yapf/nodelist.hpp index 89e44ef870..8ba37f4e75 100644 --- a/src/pathfinder/yapf/nodelist.hpp +++ b/src/pathfinder/yapf/nodelist.hpp @@ -1,4 +1,4 @@ -/* $Id: nodelist.hpp 23640 2011-12-20 17:57:56Z truebrain $ */ +/* $Id: nodelist.hpp 27363 2015-08-08 13:19:38Z alberth $ */ /* * This file is part of OpenTTD. @@ -24,34 +24,23 @@ template class CNodeList_HashTableT { public: - /** make Titem_ visible from outside of class */ - typedef Titem_ Titem; - /** make Titem_::Key a property of HashTable */ - typedef typename Titem_::Key Key; - /** type that we will use as item container */ - typedef SmallArray CItemArray; - /** how pointers to open nodes will be stored */ - typedef CHashTableT COpenList; - /** how pointers to closed nodes will be stored */ - typedef CHashTableT CClosedList; - /** how the priority queue will be managed */ - typedef CBinaryHeapT CPriorityQueue; + typedef Titem_ Titem; ///< Make #Titem_ visible from outside of class. + typedef typename Titem_::Key Key; ///< Make Titem_::Key a property of #HashTable. + typedef SmallArray CItemArray; ///< Type that we will use as item container. + typedef CHashTableT COpenList; ///< How pointers to open nodes will be stored. + typedef CHashTableT CClosedList; ///< How pointers to closed nodes will be stored. + typedef CBinaryHeapT CPriorityQueue; ///< How the priority queue will be managed. protected: - /** here we store full item data (Titem_) */ - CItemArray m_arr; - /** hash table of pointers to open item data */ - COpenList m_open; - /** hash table of pointers to closed item data */ - CClosedList m_closed; - /** priority queue of pointers to open item data */ - CPriorityQueue m_open_queue; - /** new open node under construction */ - Titem *m_new_node; + CItemArray m_arr; ///< Here we store full item data (Titem_). + COpenList m_open; ///< Hash table of pointers to open item data. + CClosedList m_closed; ///< Hash table of pointers to closed item data. + CPriorityQueue m_open_queue; ///< Priority queue of pointers to open item data. + Titem *m_new_node; ///< New open node under construction. + public: /** default constructor */ - CNodeList_HashTableT() - : m_open_queue(2048) + CNodeList_HashTableT() : m_open_queue(2048) { m_new_node = NULL; } @@ -81,7 +70,7 @@ public: } /** Notify the nodelist that we don't want to discard the given node. */ - inline void FoundBestNode(Titem_& item) + inline void FoundBestNode(Titem_ &item) { /* for now it is enough to invalidate m_new_node if it is our given node */ if (&item == m_new_node) { @@ -91,7 +80,7 @@ public: } /** insert given item as open node (into m_open and m_open_queue) */ - inline void InsertOpenNode(Titem_& item) + inline void InsertOpenNode(Titem_ &item) { assert(m_closed.Find(item.GetKey()) == NULL); m_open.Push(item); @@ -122,39 +111,46 @@ public: } /** return the open node specified by a key or NULL if not found */ - inline Titem_ *FindOpenNode(const Key& key) + inline Titem_ *FindOpenNode(const Key &key) { Titem_ *item = m_open.Find(key); return item; } /** remove and return the open node specified by a key */ - inline Titem_& PopOpenNode(const Key& key) + inline Titem_& PopOpenNode(const Key &key) { - Titem_& item = m_open.Pop(key); + Titem_ &item = m_open.Pop(key); uint idxPop = m_open_queue.FindIndex(item); m_open_queue.Remove(idxPop); return item; } /** close node */ - inline void InsertClosedNode(Titem_& item) + inline void InsertClosedNode(Titem_ &item) { assert(m_open.Find(item.GetKey()) == NULL); m_closed.Push(item); } /** return the closed node specified by a key or NULL if not found */ - inline Titem_ *FindClosedNode(const Key& key) + inline Titem_ *FindClosedNode(const Key &key) { Titem_ *item = m_closed.Find(key); return item; } /** The number of items. */ - inline int TotalCount() {return m_arr.Length();} + inline int TotalCount() + { + return m_arr.Length(); + } + /** Get a particular item. */ - inline Titem_& ItemAt(int idx) {return m_arr[idx];} + inline Titem_& ItemAt(int idx) + { + return m_arr[idx]; + } /** Helper for creating output of this array. */ template void Dump(D &dmp) const diff --git a/src/pathfinder/yapf/yapf_base.hpp b/src/pathfinder/yapf/yapf_base.hpp index 72ece92b3f..1c94a6706c 100644 --- a/src/pathfinder/yapf/yapf_base.hpp +++ b/src/pathfinder/yapf/yapf_base.hpp @@ -1,4 +1,4 @@ -/* $Id: yapf_base.hpp 25609 2013-07-14 09:21:46Z rubidium $ */ +/* $Id: yapf_base.hpp 27362 2015-08-08 10:06:24Z alberth $ */ /* * This file is part of OpenTTD. @@ -38,10 +38,10 @@ extern int _total_pf_time_us; * -------------------------------------------------------------- * Your pathfinder derived class needs to implement following methods: * inline void PfSetStartupNodes() - * inline void PfFollowNode(Node& org) - * inline bool PfCalcCost(Node& n) - * inline bool PfCalcEstimate(Node& n) - * inline bool PfDetectDestination(Node& n) + * inline void PfFollowNode(Node &org) + * inline bool PfCalcCost(Node &n) + * inline bool PfCalcEstimate(Node &n) + * inline bool PfDetectDestination(Node &n) * * For more details about those methods, look at the end of CYapfBaseT * declaration. There are some examples. For another example look at @@ -99,7 +99,7 @@ protected: /** to access inherited path finder */ inline Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } public: @@ -193,12 +193,12 @@ public: */ inline Node& CreateNewNode() { - Node& node = *m_nodes.CreateNewNode(); + Node &node = *m_nodes.CreateNewNode(); return node; } /** Add new node (created by CreateNewNode and filled with data) into open list */ - inline void AddStartupNode(Node& n) + inline void AddStartupNode(Node &n) { Yapf().PfNodeCacheFetch(n); /* insert the new node only if it is not there */ @@ -217,7 +217,7 @@ public: bool is_choice = (KillFirstBit(tf.m_new_td_bits) != TRACKDIR_BIT_NONE); for (TrackdirBits rtds = tf.m_new_td_bits; rtds != TRACKDIR_BIT_NONE; rtds = KillFirstBit(rtds)) { Trackdir td = (Trackdir)FindFirstBit2x64(rtds); - Node& n = Yapf().CreateNewNode(); + Node &n = Yapf().CreateNewNode(); n.Set(parent, tf.m_new_tile, td, is_choice); Yapf().AddNewNode(n, tf); } @@ -333,7 +333,7 @@ public: inline void PfSetStartupNodes() { /* example: */ - Node& n1 = *base::m_nodes.CreateNewNode(); + Node &n1 = *base::m_nodes.CreateNewNode(); . . // setup node members here . @@ -341,10 +341,10 @@ public: } /** Example: PfFollowNode() - set following (child) nodes of the given node */ - inline void PfFollowNode(Node& org) + inline void PfFollowNode(Node &org) { for (each follower of node org) { - Node& n = *base::m_nodes.CreateNewNode(); + Node &n = *base::m_nodes.CreateNewNode(); . . // setup node members here . @@ -354,7 +354,7 @@ public: } /** Example: PfCalcCost() - set path cost from origin to the given node */ - inline bool PfCalcCost(Node& n) + inline bool PfCalcCost(Node &n) { /* evaluate last step cost */ int cost = ...; @@ -364,7 +364,7 @@ public: } /** Example: PfCalcEstimate() - set path cost estimate from origin to the target through given node */ - inline bool PfCalcEstimate(Node& n) + inline bool PfCalcEstimate(Node &n) { /* evaluate the distance to our destination */ int distance = ...; @@ -374,7 +374,7 @@ public: } /** Example: PfDetectDestination() - return true if the given node is our destination */ - inline bool PfDetectDestination(Node& n) + inline bool PfDetectDestination(Node &n) { bool bDest = (n.m_key.m_x == m_x2) && (n.m_key.m_y == m_y2); return bDest; diff --git a/src/pathfinder/yapf/yapf_common.hpp b/src/pathfinder/yapf/yapf_common.hpp index 9f78194096..6e769e125b 100644 --- a/src/pathfinder/yapf/yapf_common.hpp +++ b/src/pathfinder/yapf/yapf_common.hpp @@ -1,4 +1,4 @@ -/* $Id: yapf_common.hpp 23640 2011-12-20 17:57:56Z truebrain $ */ +/* $Id: yapf_common.hpp 27362 2015-08-08 10:06:24Z alberth $ */ /* * This file is part of OpenTTD. @@ -28,7 +28,7 @@ protected: /** to access inherited path finder */ inline Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } public: @@ -45,7 +45,7 @@ public: bool is_choice = (KillFirstBit(m_orgTrackdirs) != TRACKDIR_BIT_NONE); for (TrackdirBits tdb = m_orgTrackdirs; tdb != TRACKDIR_BIT_NONE; tdb = KillFirstBit(tdb)) { Trackdir td = (Trackdir)FindFirstBit2x64(tdb); - Node& n1 = Yapf().CreateNewNode(); + Node &n1 = Yapf().CreateNewNode(); n1.Set(NULL, m_orgTile, td, is_choice); Yapf().AddStartupNode(n1); } @@ -72,7 +72,7 @@ protected: /** to access inherited path finder */ inline Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } public: @@ -91,12 +91,12 @@ public: void PfSetStartupNodes() { if (m_orgTile != INVALID_TILE && m_orgTd != INVALID_TRACKDIR) { - Node& n1 = Yapf().CreateNewNode(); + Node &n1 = Yapf().CreateNewNode(); n1.Set(NULL, m_orgTile, m_orgTd, false); Yapf().AddStartupNode(n1); } if (m_revTile != INVALID_TILE && m_revTd != INVALID_TRACKDIR) { - Node& n2 = Yapf().CreateNewNode(); + Node &n2 = Yapf().CreateNewNode(); n2.Set(NULL, m_revTile, m_revTd, false); n2.m_cost = m_reverse_penalty; Yapf().AddStartupNode(n2); @@ -135,12 +135,12 @@ protected: /** to access inherited path finder */ Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } public: /** Called by YAPF to detect if node ends in the desired destination */ - inline bool PfDetectDestination(Node& n) + inline bool PfDetectDestination(Node &n) { bool bDest = (n.m_key.m_tile == m_destTile) && ((m_destTrackdirs & TrackdirToTrackdirBits(n.GetTrackdir())) != TRACKDIR_BIT_NONE); return bDest; @@ -150,7 +150,7 @@ public: * Called by YAPF to calculate cost estimate. Calculates distance to the destination * adds it to the actual cost from origin and stores the sum to the Node::m_estimate */ - inline bool PfCalcEstimate(Node& n) + inline bool PfCalcEstimate(Node &n) { static const int dg_dir_to_x_offs[] = {-1, 0, 1, 0}; static const int dg_dir_to_y_offs[] = {0, 1, 0, -1}; diff --git a/src/pathfinder/yapf/yapf_costcache.hpp b/src/pathfinder/yapf/yapf_costcache.hpp index 5b1943c646..aa5e340c63 100644 --- a/src/pathfinder/yapf/yapf_costcache.hpp +++ b/src/pathfinder/yapf/yapf_costcache.hpp @@ -1,4 +1,4 @@ -/* $Id: yapf_costcache.hpp 23640 2011-12-20 17:57:56Z truebrain $ */ +/* $Id: yapf_costcache.hpp 27363 2015-08-08 13:19:38Z alberth $ */ /* * This file is part of OpenTTD. @@ -30,7 +30,7 @@ public: * Called by YAPF to attach cached or local segment cost data to the given node. * @return true if globally cached data were used or false if local data was used */ - inline bool PfNodeCacheFetch(Node& n) + inline bool PfNodeCacheFetch(Node &n) { return false; } @@ -39,7 +39,7 @@ public: * Called by YAPF to flush the cached segment cost data back into cache storage. * Current cache implementation doesn't use that. */ - inline void PfNodeCacheFlush(Node& n) + inline void PfNodeCacheFlush(Node &n) { } }; @@ -67,7 +67,7 @@ protected: /** to access inherited path finder */ inline Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } public: @@ -75,7 +75,7 @@ public: * Called by YAPF to attach cached or local segment cost data to the given node. * @return true if globally cached data were used or false if local data was used */ - inline bool PfNodeCacheFetch(Node& n) + inline bool PfNodeCacheFetch(Node &n) { CacheKey key(n.GetKey()); Yapf().ConnectNodeToCachedData(n, *new (m_local_cache.Append()) CachedData(key)); @@ -86,7 +86,7 @@ public: * Called by YAPF to flush the cached segment cost data back into cache storage. * Current cache implementation doesn't use that. */ - inline void PfNodeCacheFlush(Node& n) + inline void PfNodeCacheFlush(Node &n) { } }; @@ -121,9 +121,7 @@ struct CSegmentCostCacheBase * Look at CYapfRailSegment (yapf_node_rail.hpp) for the segment example */ template -struct CSegmentCostCacheT - : public CSegmentCostCacheBase -{ +struct CSegmentCostCacheT : public CSegmentCostCacheBase { static const int C_HASH_BITS = 14; typedef CHashTableT HashTable; @@ -142,7 +140,7 @@ struct CSegmentCostCacheT m_heap.Clear(); } - inline Tsegment& Get(Key& key, bool *found) + inline Tsegment& Get(Key &key, bool *found) { Tsegment *item = m_map.Find(key); if (item == NULL) { @@ -162,9 +160,7 @@ struct CSegmentCostCacheT * segment cost caching services for your Nodes. */ template -class CYapfSegmentCostCacheGlobalT - : public CYapfSegmentCostCacheLocalT -{ +class CYapfSegmentCostCacheGlobalT : public CYapfSegmentCostCacheLocalT { public: typedef CYapfSegmentCostCacheLocalT Tlocal; typedef typename Types::Tpf Tpf; ///< the pathfinder class (derived from THIS class) @@ -175,14 +171,14 @@ public: typedef CSegmentCostCacheT Cache; protected: - Cache& m_global_cache; + Cache &m_global_cache; inline CYapfSegmentCostCacheGlobalT() : m_global_cache(stGetGlobalCache()) {}; /** to access inherited path finder */ inline Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } inline static Cache& stGetGlobalCache() @@ -211,14 +207,14 @@ public: * Called by YAPF to attach cached or local segment cost data to the given node. * @return true if globally cached data were used or false if local data was used */ - inline bool PfNodeCacheFetch(Node& n) + inline bool PfNodeCacheFetch(Node &n) { if (!Yapf().CanUseGlobalCache(n)) { return Tlocal::PfNodeCacheFetch(n); } CacheKey key(n.GetKey()); bool found; - CachedData& item = m_global_cache.Get(key, &found); + CachedData &item = m_global_cache.Get(key, &found); Yapf().ConnectNodeToCachedData(n, item); return found; } @@ -227,7 +223,7 @@ public: * Called by YAPF to flush the cached segment cost data back into cache storage. * Current cache implementation doesn't use that. */ - inline void PfNodeCacheFlush(Node& n) + inline void PfNodeCacheFlush(Node &n) { } }; diff --git a/src/pathfinder/yapf/yapf_costrail.hpp b/src/pathfinder/yapf/yapf_costrail.hpp index ed8a0d25d4..6a47ae6362 100644 --- a/src/pathfinder/yapf/yapf_costrail.hpp +++ b/src/pathfinder/yapf/yapf_costrail.hpp @@ -1,4 +1,4 @@ -/* $Id: yapf_costrail.hpp 25609 2013-07-14 09:21:46Z rubidium $ */ +/* $Id: yapf_costrail.hpp 27363 2015-08-08 13:19:38Z alberth $ */ /* * This file is part of OpenTTD. @@ -15,9 +15,7 @@ #include "../../pbs.h" template -class CYapfCostRailT - : public CYapfCostBase -{ +class CYapfCostRailT : public CYapfCostBase { public: typedef typename Types::Tpf Tpf; ///< the pathfinder class (derived from THIS class) typedef typename Types::TrackFollower TrackFollower; @@ -74,10 +72,7 @@ protected: static const int s_max_segment_cost = 10000; - CYapfCostRailT() - : m_max_cost(0) - , m_disable_cache(false) - , m_stopped_on_first_two_way_signal(false) + CYapfCostRailT() : m_max_cost(0), m_disable_cache(false), m_stopped_on_first_two_way_signal(false) { /* pre-compute look-ahead penalties into array */ int p0 = Yapf().PfGetSettings().rail_look_ahead_signal_p0; @@ -92,7 +87,7 @@ protected: /** to access inherited path finder */ Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } public: @@ -130,7 +125,7 @@ public: } /** Return one tile cost (base cost + level crossing penalty). */ - inline int OneTileCost(TileIndex& tile, Trackdir trackdir) + inline int OneTileCost(TileIndex &tile, Trackdir trackdir) { int cost = 0; /* set base cost */ @@ -165,7 +160,7 @@ public: } /** The cost for reserved tiles, including skipped ones. */ - inline int ReservationCost(Node& n, TileIndex tile, Trackdir trackdir, int skipped) + inline int ReservationCost(Node &n, TileIndex tile, Trackdir trackdir, int skipped) { if (n.m_num_signals_passed >= m_sig_look_ahead_costs.Size() / 2) return 0; if (!IsPbsSignal(n.m_last_signal_type)) return 0; @@ -180,7 +175,7 @@ public: return 0; } - int SignalCost(Node& n, TileIndex tile, Trackdir trackdir) + int SignalCost(Node &n, TileIndex tile, Trackdir trackdir) { int cost = 0; /* if there is one-way signal in the opposite direction, then it is not our way */ @@ -614,14 +609,14 @@ no_entry_cost: // jump here at the beginning if the node has no parent (it is th return true; } - inline bool CanUseGlobalCache(Node& n) const + inline bool CanUseGlobalCache(Node &n) const { return !m_disable_cache && (n.m_parent != NULL) && (n.m_parent->m_num_signals_passed >= m_sig_look_ahead_costs.Size()); } - inline void ConnectNodeToCachedData(Node& n, CachedData& ci) + inline void ConnectNodeToCachedData(Node &n, CachedData &ci) { n.m_segment = &ci; if (n.m_segment->m_cost < 0) { diff --git a/src/pathfinder/yapf/yapf_destrail.hpp b/src/pathfinder/yapf/yapf_destrail.hpp index a04cbc6a2f..163226ef8c 100644 --- a/src/pathfinder/yapf/yapf_destrail.hpp +++ b/src/pathfinder/yapf/yapf_destrail.hpp @@ -1,4 +1,4 @@ -/* $Id: yapf_destrail.hpp 23640 2011-12-20 17:57:56Z truebrain $ */ +/* $Id: yapf_destrail.hpp 27363 2015-08-08 13:19:38Z alberth $ */ /* * This file is part of OpenTTD. @@ -12,8 +12,7 @@ #ifndef YAPF_DESTRAIL_HPP #define YAPF_DESTRAIL_HPP -class CYapfDestinationRailBase -{ +class CYapfDestinationRailBase { protected: RailTypes m_compatible_railtypes; @@ -36,9 +35,7 @@ public: }; template -class CYapfDestinationAnyDepotRailT - : public CYapfDestinationRailBase -{ +class CYapfDestinationAnyDepotRailT : public CYapfDestinationRailBase { public: typedef typename Types::Tpf Tpf; ///< the pathfinder class (derived from THIS class) typedef typename Types::NodeList::Titem Node; ///< this will be our node type @@ -47,11 +44,11 @@ public: /** to access inherited path finder */ Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } /** Called by YAPF to detect if node ends in the desired destination */ - inline bool PfDetectDestination(Node& n) + inline bool PfDetectDestination(Node &n) { return PfDetectDestination(n.GetLastTile(), n.GetLastTrackdir()); } @@ -67,7 +64,7 @@ public: * Called by YAPF to calculate cost estimate. Calculates distance to the destination * adds it to the actual cost from origin and stores the sum to the Node::m_estimate */ - inline bool PfCalcEstimate(Node& n) + inline bool PfCalcEstimate(Node &n) { n.m_estimate = n.m_cost; return true; @@ -75,9 +72,7 @@ public: }; template -class CYapfDestinationAnySafeTileRailT - : public CYapfDestinationRailBase -{ +class CYapfDestinationAnySafeTileRailT : public CYapfDestinationRailBase { public: typedef typename Types::Tpf Tpf; ///< the pathfinder class (derived from THIS class) typedef typename Types::NodeList::Titem Node; ///< this will be our node type @@ -87,11 +82,11 @@ public: /** to access inherited path finder */ Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } /** Called by YAPF to detect if node ends in the desired destination */ - inline bool PfDetectDestination(Node& n) + inline bool PfDetectDestination(Node &n) { return PfDetectDestination(n.GetLastTile(), n.GetLastTrackdir()); } @@ -107,7 +102,7 @@ public: * Called by YAPF to calculate cost estimate. Calculates distance to the destination * adds it to the actual cost from origin and stores the sum to the Node::m_estimate. */ - inline bool PfCalcEstimate(Node& n) + inline bool PfCalcEstimate(Node &n) { n.m_estimate = n.m_cost; return true; @@ -115,9 +110,7 @@ public: }; template -class CYapfDestinationTileOrStationRailT - : public CYapfDestinationRailBase -{ +class CYapfDestinationTileOrStationRailT : public CYapfDestinationRailBase { public: typedef typename Types::Tpf Tpf; ///< the pathfinder class (derived from THIS class) typedef typename Types::NodeList::Titem Node; ///< this will be our node type @@ -131,7 +124,7 @@ protected: /** to access inherited path finder */ Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } public: @@ -164,7 +157,7 @@ public: } /** Called by YAPF to detect if node ends in the desired destination */ - inline bool PfDetectDestination(Node& n) + inline bool PfDetectDestination(Node &n) { return PfDetectDestination(n.GetLastTile(), n.GetLastTrackdir()); } @@ -188,7 +181,7 @@ public: * Called by YAPF to calculate cost estimate. Calculates distance to the destination * adds it to the actual cost from origin and stores the sum to the Node::m_estimate */ - inline bool PfCalcEstimate(Node& n) + inline bool PfCalcEstimate(Node &n) { static const int dg_dir_to_x_offs[] = {-1, 0, 1, 0}; static const int dg_dir_to_y_offs[] = {0, 1, 0, -1}; diff --git a/src/pathfinder/yapf/yapf_node.hpp b/src/pathfinder/yapf/yapf_node.hpp index 876ef1cde9..87923fd050 100644 --- a/src/pathfinder/yapf/yapf_node.hpp +++ b/src/pathfinder/yapf/yapf_node.hpp @@ -1,4 +1,4 @@ -/* $Id: yapf_node.hpp 23640 2011-12-20 17:57:56Z truebrain $ */ +/* $Id: yapf_node.hpp 27363 2015-08-08 13:19:38Z alberth $ */ /* * This file is part of OpenTTD. @@ -25,8 +25,15 @@ struct CYapfNodeKeyExitDir { m_exitdir = (m_td == INVALID_TRACKDIR) ? INVALID_DIAGDIR : TrackdirToExitdir(m_td); } - inline int CalcHash() const {return m_exitdir | (m_tile << 2);} - inline bool operator == (const CYapfNodeKeyExitDir& other) const {return (m_tile == other.m_tile) && (m_exitdir == other.m_exitdir);} + inline int CalcHash() const + { + return m_exitdir | (m_tile << 2); + } + + inline bool operator==(const CYapfNodeKeyExitDir &other) const + { + return m_tile == other.m_tile && m_exitdir == other.m_exitdir; + } void Dump(DumpTarget &dmp) const { @@ -38,8 +45,15 @@ struct CYapfNodeKeyExitDir { struct CYapfNodeKeyTrackDir : public CYapfNodeKeyExitDir { - inline int CalcHash() const {return m_td | (m_tile << 4);} - inline bool operator == (const CYapfNodeKeyTrackDir& other) const {return (m_tile == other.m_tile) && (m_td == other.m_td);} + inline int CalcHash() const + { + return m_td | (m_tile << 4); + } + + inline bool operator==(const CYapfNodeKeyTrackDir &other) const + { + return m_tile == other.m_tile && m_td == other.m_td; + } }; /** Yapf Node base */ @@ -63,14 +77,45 @@ struct CYapfNodeT { m_estimate = 0; } - inline Node *GetHashNext() {return m_hash_next;} - inline void SetHashNext(Node *pNext) {m_hash_next = pNext;} - inline TileIndex GetTile() const {return m_key.m_tile;} - inline Trackdir GetTrackdir() const {return m_key.m_td;} - inline const Tkey_& GetKey() const {return m_key;} - inline int GetCost() const {return m_cost;} - inline int GetCostEstimate() const {return m_estimate;} - inline bool operator < (const Node& other) const {return m_estimate < other.m_estimate;} + inline Node *GetHashNext() + { + return m_hash_next; + } + + inline void SetHashNext(Node *pNext) + { + m_hash_next = pNext; + } + + inline TileIndex GetTile() const + { + return m_key.m_tile; + } + + inline Trackdir GetTrackdir() const + { + return m_key.m_td; + } + + inline const Tkey_& GetKey() const + { + return m_key; + } + + inline int GetCost() const + { + return m_cost; + } + + inline int GetCostEstimate() const + { + return m_estimate; + } + + inline bool operator<(const Node &other) const + { + return m_estimate < other.m_estimate; + } void Dump(DumpTarget &dmp) const { diff --git a/src/pathfinder/yapf/yapf_node_rail.hpp b/src/pathfinder/yapf/yapf_node_rail.hpp index 0f262aac04..f13edefa1d 100644 --- a/src/pathfinder/yapf/yapf_node_rail.hpp +++ b/src/pathfinder/yapf/yapf_node_rail.hpp @@ -1,4 +1,4 @@ -/* $Id: yapf_node_rail.hpp 26058 2013-11-23 13:15:07Z rubidium $ */ +/* $Id: yapf_node_rail.hpp 27362 2015-08-08 10:06:24Z alberth $ */ /* * This file is part of OpenTTD. @@ -17,19 +17,19 @@ struct CYapfRailSegmentKey { uint32 m_value; - inline CYapfRailSegmentKey(const CYapfRailSegmentKey& src) : m_value(src.m_value) {} + inline CYapfRailSegmentKey(const CYapfRailSegmentKey &src) : m_value(src.m_value) {} - inline CYapfRailSegmentKey(const CYapfNodeKeyTrackDir& node_key) + inline CYapfRailSegmentKey(const CYapfNodeKeyTrackDir &node_key) { Set(node_key); } - inline void Set(const CYapfRailSegmentKey& src) + inline void Set(const CYapfRailSegmentKey &src) { m_value = src.m_value; } - inline void Set(const CYapfNodeKeyTrackDir& node_key) + inline void Set(const CYapfNodeKeyTrackDir &node_key) { m_value = (((int)node_key.m_tile) << 4) | node_key.m_td; } @@ -49,7 +49,7 @@ struct CYapfRailSegmentKey return (Trackdir)(m_value & 0x0F); } - inline bool operator == (const CYapfRailSegmentKey& other) const + inline bool operator==(const CYapfRailSegmentKey &other) const { return m_value == other.m_value; } @@ -75,7 +75,7 @@ struct CYapfRailSegment EndSegmentReasonBits m_end_segment_reason; CYapfRailSegment *m_hash_next; - inline CYapfRailSegment(const CYapfRailSegmentKey& key) + inline CYapfRailSegment(const CYapfRailSegmentKey &key) : m_key(key) , m_last_tile(INVALID_TILE) , m_last_td(INVALID_TRACKDIR) diff --git a/src/pathfinder/yapf/yapf_node_road.hpp b/src/pathfinder/yapf/yapf_node_road.hpp index 318a8d4dff..02fcb56fc1 100644 --- a/src/pathfinder/yapf/yapf_node_road.hpp +++ b/src/pathfinder/yapf/yapf_node_road.hpp @@ -1,4 +1,4 @@ -/* $Id: yapf_node_road.hpp 22350 2011-04-19 18:12:47Z smatz $ */ +/* $Id: yapf_node_road.hpp 27363 2015-08-08 13:19:38Z alberth $ */ /* * This file is part of OpenTTD. @@ -14,13 +14,11 @@ /** Yapf Node for road YAPF */ template -struct CYapfRoadNodeT - : CYapfNodeT > -{ +struct CYapfRoadNodeT : CYapfNodeT > { typedef CYapfNodeT > base; - TileIndex m_segment_last_tile; - Trackdir m_segment_last_td; + TileIndex m_segment_last_tile; + Trackdir m_segment_last_td; void Set(CYapfRoadNodeT *parent, TileIndex tile, Trackdir td, bool is_choice) { diff --git a/src/pathfinder/yapf/yapf_node_ship.hpp b/src/pathfinder/yapf/yapf_node_ship.hpp index 9efcd1eac2..95bb8d4d55 100644 --- a/src/pathfinder/yapf/yapf_node_ship.hpp +++ b/src/pathfinder/yapf/yapf_node_ship.hpp @@ -1,4 +1,4 @@ -/* $Id: yapf_node_ship.hpp 22350 2011-04-19 18:12:47Z smatz $ */ +/* $Id: yapf_node_ship.hpp 27363 2015-08-08 13:19:38Z alberth $ */ /* * This file is part of OpenTTD. @@ -14,11 +14,7 @@ /** Yapf Node for ships */ template -struct CYapfShipNodeT - : CYapfNodeT > -{ - -}; +struct CYapfShipNodeT : CYapfNodeT > { }; /* now define two major node types (that differ by key type) */ typedef CYapfShipNodeT CYapfShipNodeExitDir; @@ -28,5 +24,4 @@ typedef CYapfShipNodeT CYapfShipNodeTrackDir; typedef CNodeList_HashTableT CShipNodeListExitDir; typedef CNodeList_HashTableT CShipNodeListTrackDir; - #endif /* YAPF_NODE_SHIP_HPP */ diff --git a/src/pathfinder/yapf/yapf_rail.cpp b/src/pathfinder/yapf/yapf_rail.cpp index 87d76948aa..52bbffe99b 100644 --- a/src/pathfinder/yapf/yapf_rail.cpp +++ b/src/pathfinder/yapf/yapf_rail.cpp @@ -1,4 +1,4 @@ -/* $Id: yapf_rail.cpp 26482 2014-04-23 20:13:33Z rubidium $ */ +/* $Id: yapf_rail.cpp 27362 2015-08-08 10:06:24Z alberth $ */ /* * This file is part of OpenTTD. @@ -21,9 +21,6 @@ #include "../../safeguards.h" -#define DEBUG_YAPF_CACHE 0 - -#if DEBUG_YAPF_CACHE template void DumpState(Tpf &pf1, Tpf &pf2) { DumpTarget dmp1, dmp2; @@ -36,7 +33,6 @@ template void DumpState(Tpf &pf1, Tpf &pf2) fclose(f1); fclose(f2); } -#endif int _total_pf_time_us = 0; @@ -52,7 +48,7 @@ protected: /** to access inherited pathfinder */ inline Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } private: @@ -204,7 +200,7 @@ protected: /** to access inherited path finder */ inline Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } public: @@ -213,7 +209,7 @@ public: * reachable trackdir on the new tile creates new node, initializes it * and adds it to the open list by calling Yapf().AddNewNode(n) */ - inline void PfFollowNode(Node& old_node) + inline void PfFollowNode(Node &old_node) { TrackFollower F(Yapf().GetVehicle()); if (F.Follow(old_node.GetLastTile(), old_node.GetLastTrackdir())) { @@ -242,17 +238,17 @@ public: if (max_penalty != 0) pf1.DisableCache(true); bool result1 = pf1.FindNearestDepotTwoWay(v, t1, td1, t2, td2, max_penalty, reverse_penalty, depot_tile, reversed); -#if DEBUG_YAPF_CACHE - Tpf pf2; - TileIndex depot_tile2 = INVALID_TILE; - bool reversed2 = false; - pf2.DisableCache(true); - bool result2 = pf2.FindNearestDepotTwoWay(v, t1, td1, t2, td2, max_penalty, reverse_penalty, &depot_tile2, &reversed2); - if (result1 != result2 || (result1 && (*depot_tile != depot_tile2 || *reversed != reversed2))) { - DEBUG(yapf, 0, "CACHE ERROR: FindNearestDepotTwoWay() = [%s, %s]", result1 ? "T" : "F", result2 ? "T" : "F"); - DumpState(pf1, pf2); + if (_debug_desync_level >= 2) { + Tpf pf2; + TileIndex depot_tile2 = INVALID_TILE; + bool reversed2 = false; + pf2.DisableCache(true); + bool result2 = pf2.FindNearestDepotTwoWay(v, t1, td1, t2, td2, max_penalty, reverse_penalty, &depot_tile2, &reversed2); + if (result1 != result2 || (result1 && (*depot_tile != depot_tile2 || *reversed != reversed2))) { + DEBUG(desync, 2, "CACHE ERROR: FindNearestDepotTwoWay() = [%s, %s]", result1 ? "T" : "F", result2 ? "T" : "F"); + DumpState(pf1, pf2); + } } -#endif return result1; } @@ -300,7 +296,7 @@ protected: /** to access inherited path finder */ inline Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } public: @@ -309,7 +305,7 @@ public: * reachable trackdir on the new tile creates new node, initializes it * and adds it to the open list by calling Yapf().AddNewNode(n) */ - inline void PfFollowNode(Node& old_node) + inline void PfFollowNode(Node &old_node) { TrackFollower F(Yapf().GetVehicle(), Yapf().GetCompatibleRailTypes()); if (F.Follow(old_node.GetLastTile(), old_node.GetLastTrackdir()) && F.MaskReservedTracks()) { @@ -327,19 +323,19 @@ public: { /* Create pathfinder instance */ Tpf pf1; -#if !DEBUG_YAPF_CACHE - bool result1 = pf1.FindNearestSafeTile(v, t1, td, override_railtype, false); - -#else - bool result2 = pf1.FindNearestSafeTile(v, t1, td, override_railtype, true); - Tpf pf2; - pf2.DisableCache(true); - bool result1 = pf2.FindNearestSafeTile(v, t1, td, override_railtype, false); - if (result1 != result2) { - DEBUG(yapf, 0, "CACHE ERROR: FindSafeTile() = [%s, %s]", result2 ? "T" : "F", result1 ? "T" : "F"); - DumpState(pf1, pf2); + bool result1; + if (_debug_desync_level < 2) { + result1 = pf1.FindNearestSafeTile(v, t1, td, override_railtype, false); + } else { + bool result2 = pf1.FindNearestSafeTile(v, t1, td, override_railtype, true); + Tpf pf2; + pf2.DisableCache(true); + result1 = pf2.FindNearestSafeTile(v, t1, td, override_railtype, false); + if (result1 != result2) { + DEBUG(desync, 2, "CACHE ERROR: FindSafeTile() = [%s, %s]", result2 ? "T" : "F", result1 ? "T" : "F"); + DumpState(pf1, pf2); + } } -#endif return result1; } @@ -383,7 +379,7 @@ protected: /** to access inherited path finder */ inline Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } public: @@ -392,7 +388,7 @@ public: * reachable trackdir on the new tile creates new node, initializes it * and adds it to the open list by calling Yapf().AddNewNode(n) */ - inline void PfFollowNode(Node& old_node) + inline void PfFollowNode(Node &old_node) { TrackFollower F(Yapf().GetVehicle()); if (F.Follow(old_node.GetLastTile(), old_node.GetLastTrackdir())) { @@ -410,19 +406,20 @@ public: { /* create pathfinder instance */ Tpf pf1; -#if !DEBUG_YAPF_CACHE - Trackdir result1 = pf1.ChooseRailTrack(v, tile, enterdir, tracks, path_found, reserve_track, target); + Trackdir result1; -#else - Trackdir result1 = pf1.ChooseRailTrack(v, tile, enterdir, tracks, path_found, false, NULL); - Tpf pf2; - pf2.DisableCache(true); - Trackdir result2 = pf2.ChooseRailTrack(v, tile, enterdir, tracks, path_found, reserve_track, target); - if (result1 != result2) { - DEBUG(yapf, 0, "CACHE ERROR: ChooseRailTrack() = [%d, %d]", result1, result2); - DumpState(pf1, pf2); + if (_debug_desync_level < 2) { + result1 = pf1.ChooseRailTrack(v, tile, enterdir, tracks, path_found, reserve_track, target); + } else { + result1 = pf1.ChooseRailTrack(v, tile, enterdir, tracks, path_found, false, NULL); + Tpf pf2; + pf2.DisableCache(true); + Trackdir result2 = pf2.ChooseRailTrack(v, tile, enterdir, tracks, path_found, reserve_track, target); + if (result1 != result2) { + DEBUG(desync, 2, "CACHE ERROR: ChooseRailTrack() = [%d, %d]", result1, result2); + DumpState(pf1, pf2); + } } -#endif return result1; } @@ -456,7 +453,7 @@ public: this->FindSafePositionOnNode(pPrev); } /* return trackdir from the best origin node (one of start nodes) */ - Node& best_next_node = *pPrev; + Node &best_next_node = *pPrev; next_trackdir = best_next_node.GetTrackdir(); if (reserve_track && path_found) this->TryReservePath(target, pNode->GetLastTile()); @@ -472,15 +469,15 @@ public: Tpf pf1; bool result1 = pf1.CheckReverseTrain(v, t1, td1, t2, td2, reverse_penalty); -#if DEBUG_YAPF_CACHE - Tpf pf2; - pf2.DisableCache(true); - bool result2 = pf2.CheckReverseTrain(v, t1, td1, t2, td2, reverse_penalty); - if (result1 != result2) { - DEBUG(yapf, 0, "CACHE ERROR: CheckReverseTrain() = [%s, %s]", result1 ? "T" : "F", result2 ? "T" : "F"); - DumpState(pf1, pf2); + if (_debug_desync_level >= 2) { + Tpf pf2; + pf2.DisableCache(true); + bool result2 = pf2.CheckReverseTrain(v, t1, td1, t2, td2, reverse_penalty); + if (result1 != result2) { + DEBUG(desync, 2, "CACHE ERROR: CheckReverseTrain() = [%s, %s]", result1 ? "T" : "F", result2 ? "T" : "F"); + DumpState(pf1, pf2); + } } -#endif return result1; } @@ -505,7 +502,7 @@ public: } /* check if it was reversed origin */ - Node& best_org_node = *pNode; + Node &best_org_node = *pNode; bool reversed = (best_org_node.m_cost != 0); return reversed; } diff --git a/src/pathfinder/yapf/yapf_road.cpp b/src/pathfinder/yapf/yapf_road.cpp index bae0e6deac..f5141d65a2 100644 --- a/src/pathfinder/yapf/yapf_road.cpp +++ b/src/pathfinder/yapf/yapf_road.cpp @@ -1,4 +1,4 @@ -/* $Id: yapf_road.cpp 26482 2014-04-23 20:13:33Z rubidium $ */ +/* $Id: yapf_road.cpp 27362 2015-08-08 10:06:24Z alberth $ */ /* * This file is part of OpenTTD. @@ -30,7 +30,7 @@ protected: /** to access inherited path finder */ Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } int SlopeCost(TileIndex tile, TileIndex next_tile, Trackdir trackdir) @@ -102,7 +102,7 @@ public: * Calculates only the cost of given node, adds it to the parent node cost * and stores the result into Node::m_cost member */ - inline bool PfCalcCost(Node& n, const TrackFollower *tf) + inline bool PfCalcCost(Node &n, const TrackFollower *tf) { int segment_cost = 0; uint tiles = 0; @@ -179,11 +179,11 @@ public: /** to access inherited path finder */ Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } /** Called by YAPF to detect if node ends in the desired destination */ - inline bool PfDetectDestination(Node& n) + inline bool PfDetectDestination(Node &n) { bool bDest = IsRoadDepotTile(n.m_segment_last_tile); return bDest; @@ -198,7 +198,7 @@ public: * Called by YAPF to calculate cost estimate. Calculates distance to the destination * adds it to the actual cost from origin and stores the sum to the Node::m_estimate */ - inline bool PfCalcEstimate(Node& n) + inline bool PfCalcEstimate(Node &n) { n.m_estimate = n.m_cost; return true; @@ -242,12 +242,12 @@ protected: /** to access inherited path finder */ Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } public: /** Called by YAPF to detect if node ends in the desired destination */ - inline bool PfDetectDestination(Node& n) + inline bool PfDetectDestination(Node &n) { return PfDetectDestinationTile(n.m_segment_last_tile, n.m_segment_last_td); } @@ -268,7 +268,7 @@ public: * Called by YAPF to calculate cost estimate. Calculates distance to the destination * adds it to the actual cost from origin and stores the sum to the Node::m_estimate */ - inline bool PfCalcEstimate(Node& n) + inline bool PfCalcEstimate(Node &n) { static const int dg_dir_to_x_offs[] = {-1, 0, 1, 0}; static const int dg_dir_to_y_offs[] = {0, 1, 0, -1}; @@ -309,7 +309,7 @@ protected: /** to access inherited path finder */ inline Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } public: @@ -319,7 +319,7 @@ public: * reachable trackdir on the new tile creates new node, initializes it * and adds it to the open list by calling Yapf().AddNewNode(n) */ - inline void PfFollowNode(Node& old_node) + inline void PfFollowNode(Node &old_node) { TrackFollower F(Yapf().GetVehicle()); if (F.Follow(old_node.m_segment_last_tile, old_node.m_segment_last_td)) { @@ -373,7 +373,7 @@ public: pNode = pNode->m_parent; } /* return trackdir from the best origin node (one of start nodes) */ - Node& best_next_node = *pNode; + Node &best_next_node = *pNode; assert(best_next_node.GetTile() == tile); next_trackdir = best_next_node.GetTrackdir(); } diff --git a/src/pathfinder/yapf/yapf_ship.cpp b/src/pathfinder/yapf/yapf_ship.cpp index 198c9fed2d..ba77c5730b 100644 --- a/src/pathfinder/yapf/yapf_ship.cpp +++ b/src/pathfinder/yapf/yapf_ship.cpp @@ -1,4 +1,4 @@ -/* $Id: yapf_ship.cpp 26482 2014-04-23 20:13:33Z rubidium $ */ +/* $Id: yapf_ship.cpp 27362 2015-08-08 10:06:24Z alberth $ */ /* * This file is part of OpenTTD. @@ -31,7 +31,7 @@ protected: /** to access inherited path finder */ inline Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } public: @@ -40,7 +40,7 @@ public: * reachable trackdir on the new tile creates new node, initializes it * and adds it to the open list by calling Yapf().AddNewNode(n) */ - inline void PfFollowNode(Node& old_node) + inline void PfFollowNode(Node &old_node) { TrackFollower F(Yapf().GetVehicle()); if (F.Follow(old_node.m_key.m_tile, old_node.m_key.m_td)) { @@ -97,7 +97,7 @@ public: pNode = pNode->m_parent; } /* return trackdir from the best next node (direct child of origin) */ - Node& best_next_node = *pPrevNode; + Node &best_next_node = *pPrevNode; assert(best_next_node.GetTile() == tile); next_trackdir = best_next_node.GetTrackdir(); } @@ -155,7 +155,7 @@ protected: /** to access inherited path finder */ Tpf& Yapf() { - return *static_cast(this); + return *static_cast(this); } public: @@ -164,7 +164,7 @@ public: * Calculates only the cost of given node, adds it to the parent node cost * and stores the result into Node::m_cost member */ - inline bool PfCalcCost(Node& n, const TrackFollower *tf) + inline bool PfCalcCost(Node &n, const TrackFollower *tf) { /* base tile cost depending on distance */ int c = IsDiagonalTrackdir(n.GetTrackdir()) ? YAPF_TILE_LENGTH : YAPF_TILE_CORNER_LENGTH; diff --git a/src/pbs.cpp b/src/pbs.cpp index 9c4b9c137d..ff67487731 100644 --- a/src/pbs.cpp +++ b/src/pbs.cpp @@ -1,4 +1,4 @@ -/* $Id: pbs.cpp 27270 2015-05-08 17:23:55Z frosch $ */ +/* $Id: pbs.cpp 27209 2015-03-28 14:04:06Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/rail.h b/src/rail.h index c1ca0ad5c3..208a0a8fa7 100644 --- a/src/rail.h +++ b/src/rail.h @@ -1,4 +1,4 @@ -/* $Id: rail.h 27432 2015-11-01 12:03:13Z frosch $ */ +/* $Id: rail.h 27427 2015-10-30 17:24:30Z frosch $ */ /* * This file is part of OpenTTD. @@ -89,14 +89,22 @@ enum RailTrackBridgeOffset { * the sprites in the original data files. */ enum RailFenceOffset { - RFO_FLAT_X, - RFO_FLAT_Y, - RFO_FLAT_VERT, - RFO_FLAT_HORZ, - RFO_SLOPE_SW, - RFO_SLOPE_SE, - RFO_SLOPE_NE, - RFO_SLOPE_NW, + RFO_FLAT_X_NW, //!< Slope FLAT, Track X, Fence NW + RFO_FLAT_Y_NE, //!< Slope FLAT, Track Y, Fence NE + RFO_FLAT_LEFT, //!< Slope FLAT, Track LEFT, Fence E + RFO_FLAT_UPPER, //!< Slope FLAT, Track UPPER, Fence S + RFO_SLOPE_SW_NW, //!< Slope SW, Track X, Fence NW + RFO_SLOPE_SE_NE, //!< Slope SE, Track Y, Fence NE + RFO_SLOPE_NE_NW, //!< Slope NE, Track X, Fence NW + RFO_SLOPE_NW_NE, //!< Slope NW, Track Y, Fence NE + RFO_FLAT_X_SE, //!< Slope FLAT, Track X, Fence SE + RFO_FLAT_Y_SW, //!< Slope FLAT, Track Y, Fence SW + RFO_FLAT_RIGHT, //!< Slope FLAT, Track RIGHT, Fence W + RFO_FLAT_LOWER, //!< Slope FLAT, Track LOWER, Fence N + RFO_SLOPE_SW_SE, //!< Slope SW, Track X, Fence SE + RFO_SLOPE_SE_SW, //!< Slope SE, Track Y, Fence SW + RFO_SLOPE_NE_SE, //!< Slope NE, Track X, Fence SE + RFO_SLOPE_NW_SW, //!< Slope NW, Track Y, Fence SW }; /** List of rail type labels. */ diff --git a/src/rail_cmd.cpp b/src/rail_cmd.cpp index a3aa7aa374..7807754a57 100644 --- a/src/rail_cmd.cpp +++ b/src/rail_cmd.cpp @@ -1,4 +1,4 @@ -/* $Id: rail_cmd.cpp 27432 2015-11-01 12:03:13Z frosch $ */ +/* $Id: rail_cmd.cpp 27427 2015-10-30 17:24:30Z frosch $ */ /* * This file is part of OpenTTD. @@ -1895,109 +1895,128 @@ static void DrawSingleSignal(TileIndex tile, const RailtypeInfo *rti, Track trac static uint32 _drawtile_track_palette; -static void DrawTrackFence_NW(const TileInfo *ti, SpriteID base_image) -{ - RailFenceOffset rfo = RFO_FLAT_X; - if (ti->tileh & SLOPE_NW) rfo = (ti->tileh & SLOPE_W) ? RFO_SLOPE_SW : RFO_SLOPE_NE; - AddSortableSpriteToDraw(base_image + rfo, _drawtile_track_palette, - ti->x, ti->y + 1, 16, 1, 4, ti->z); -} -static void DrawTrackFence_SE(const TileInfo *ti, SpriteID base_image) -{ - RailFenceOffset rfo = RFO_FLAT_X; - if (ti->tileh & SLOPE_SE) rfo = (ti->tileh & SLOPE_S) ? RFO_SLOPE_SW : RFO_SLOPE_NE; - AddSortableSpriteToDraw(base_image + rfo, _drawtile_track_palette, - ti->x, ti->y + TILE_SIZE - 1, 16, 1, 4, ti->z); -} +/** Offsets for drawing fences */ +struct FenceOffset { + Corner height_ref; //!< Corner to use height offset from. + int x_offs; //!< Bounding box X offset. + int y_offs; //!< Bounding box Y offset. + int x_size; //!< Bounding box X size. + int y_size; //!< Bounding box Y size. +}; -static void DrawTrackFence_NW_SE(const TileInfo *ti, SpriteID base_image) -{ - DrawTrackFence_NW(ti, base_image); - DrawTrackFence_SE(ti, base_image); -} +/** Offsets for drawing fences */ +static FenceOffset _fence_offsets[] = { + { CORNER_INVALID, 0, 1, 16, 1 }, // RFO_FLAT_X_NW + { CORNER_INVALID, 1, 0, 1, 16 }, // RFO_FLAT_Y_NE + { CORNER_W, 8, 8, 1, 1 }, // RFO_FLAT_LEFT + { CORNER_N, 8, 8, 1, 1 }, // RFO_FLAT_UPPER + { CORNER_INVALID, 0, 1, 16, 1 }, // RFO_SLOPE_SW_NW + { CORNER_INVALID, 1, 0, 1, 16 }, // RFO_SLOPE_SE_NE + { CORNER_INVALID, 0, 1, 16, 1 }, // RFO_SLOPE_NE_NW + { CORNER_INVALID, 1, 0, 1, 16 }, // RFO_SLOPE_NW_NE + { CORNER_INVALID, 0, 15, 16, 1 }, // RFO_FLAT_X_SE + { CORNER_INVALID, 15, 0, 1, 16 }, // RFO_FLAT_Y_SW + { CORNER_E, 8, 8, 1, 1 }, // RFO_FLAT_RIGHT + { CORNER_S, 8, 8, 1, 1 }, // RFO_FLAT_LOWER + { CORNER_INVALID, 0, 15, 16, 1 }, // RFO_SLOPE_SW_SE + { CORNER_INVALID, 15, 0, 1, 16 }, // RFO_SLOPE_SE_SW + { CORNER_INVALID, 0, 15, 16, 1 }, // RFO_SLOPE_NE_SE + { CORNER_INVALID, 15, 0, 1, 16 }, // RFO_SLOPE_NW_SW +}; -static void DrawTrackFence_NE(const TileInfo *ti, SpriteID base_image) +/** + * Draw a track fence. + * @param ti Tile drawing information. + * @param base_image First fence sprite. + * @param num_sprites Number of fence sprites. + * @param rfo Fence to draw. + */ +static void DrawTrackFence(const TileInfo *ti, SpriteID base_image, uint num_sprites, RailFenceOffset rfo) { - RailFenceOffset rfo = RFO_FLAT_Y; - if (ti->tileh & SLOPE_NE) rfo = (ti->tileh & SLOPE_E) ? RFO_SLOPE_SE : RFO_SLOPE_NW; - AddSortableSpriteToDraw(base_image + rfo, _drawtile_track_palette, - ti->x + 1, ti->y, 1, 16, 4, ti->z); -} - -static void DrawTrackFence_SW(const TileInfo *ti, SpriteID base_image) -{ - RailFenceOffset rfo = RFO_FLAT_Y; - if (ti->tileh & SLOPE_SW) rfo = (ti->tileh & SLOPE_S) ? RFO_SLOPE_SE : RFO_SLOPE_NW; - AddSortableSpriteToDraw(base_image + rfo, _drawtile_track_palette, - ti->x + TILE_SIZE - 1, ti->y, 1, 16, 4, ti->z); -} - -static void DrawTrackFence_NE_SW(const TileInfo *ti, SpriteID base_image) -{ - DrawTrackFence_NE(ti, base_image); - DrawTrackFence_SW(ti, base_image); + int z = ti->z; + if (_fence_offsets[rfo].height_ref != CORNER_INVALID) { + z += GetSlopePixelZInCorner(RemoveHalftileSlope(ti->tileh), _fence_offsets[rfo].height_ref); + } + AddSortableSpriteToDraw(base_image + (rfo % num_sprites), _drawtile_track_palette, + ti->x + _fence_offsets[rfo].x_offs, + ti->y + _fence_offsets[rfo].y_offs, + _fence_offsets[rfo].x_size, + _fence_offsets[rfo].y_size, + 4, z); } /** - * Draw fence at eastern side of track. + * Draw fence at NW border matching the tile slope. */ -static void DrawTrackFence_NS_1(const TileInfo *ti, SpriteID base_image) +static void DrawTrackFence_NW(const TileInfo *ti, SpriteID base_image, uint num_sprites) { - int z = ti->z + GetSlopePixelZInCorner(RemoveHalftileSlope(ti->tileh), CORNER_W); - AddSortableSpriteToDraw(base_image + RFO_FLAT_VERT, _drawtile_track_palette, - ti->x + TILE_SIZE / 2, ti->y + TILE_SIZE / 2, 1, 1, 4, z); + RailFenceOffset rfo = RFO_FLAT_X_NW; + if (ti->tileh & SLOPE_NW) rfo = (ti->tileh & SLOPE_W) ? RFO_SLOPE_SW_NW : RFO_SLOPE_NE_NW; + DrawTrackFence(ti, base_image, num_sprites, rfo); } /** - * Draw fence at western side of track. + * Draw fence at SE border matching the tile slope. */ -static void DrawTrackFence_NS_2(const TileInfo *ti, SpriteID base_image) +static void DrawTrackFence_SE(const TileInfo *ti, SpriteID base_image, uint num_sprites) { - int z = ti->z + GetSlopePixelZInCorner(RemoveHalftileSlope(ti->tileh), CORNER_E); - AddSortableSpriteToDraw(base_image + RFO_FLAT_VERT, _drawtile_track_palette, - ti->x + TILE_SIZE / 2, ti->y + TILE_SIZE / 2, 1, 1, 4, z); + RailFenceOffset rfo = RFO_FLAT_X_SE; + if (ti->tileh & SLOPE_SE) rfo = (ti->tileh & SLOPE_S) ? RFO_SLOPE_SW_SE : RFO_SLOPE_NE_SE; + DrawTrackFence(ti, base_image, num_sprites, rfo); } /** - * Draw fence at southern side of track. + * Draw fence at NE border matching the tile slope. */ -static void DrawTrackFence_WE_1(const TileInfo *ti, SpriteID base_image) +static void DrawTrackFence_NE(const TileInfo *ti, SpriteID base_image, uint num_sprites) { - int z = ti->z + GetSlopePixelZInCorner(RemoveHalftileSlope(ti->tileh), CORNER_N); - AddSortableSpriteToDraw(base_image + RFO_FLAT_HORZ, _drawtile_track_palette, - ti->x + TILE_SIZE / 2, ti->y + TILE_SIZE / 2, 1, 1, 4, z); + RailFenceOffset rfo = RFO_FLAT_Y_NE; + if (ti->tileh & SLOPE_NE) rfo = (ti->tileh & SLOPE_E) ? RFO_SLOPE_SE_NE : RFO_SLOPE_NW_NE; + DrawTrackFence(ti, base_image, num_sprites, rfo); } /** - * Draw fence at northern side of track. + * Draw fence at SW border matching the tile slope. */ -static void DrawTrackFence_WE_2(const TileInfo *ti, SpriteID base_image) +static void DrawTrackFence_SW(const TileInfo *ti, SpriteID base_image, uint num_sprites) { - int z = ti->z + GetSlopePixelZInCorner(RemoveHalftileSlope(ti->tileh), CORNER_S); - AddSortableSpriteToDraw(base_image + RFO_FLAT_HORZ, _drawtile_track_palette, - ti->x + TILE_SIZE / 2, ti->y + TILE_SIZE / 2, 1, 1, 4, z); + RailFenceOffset rfo = RFO_FLAT_Y_SW; + if (ti->tileh & SLOPE_SW) rfo = (ti->tileh & SLOPE_S) ? RFO_SLOPE_SE_SW : RFO_SLOPE_NW_SW; + DrawTrackFence(ti, base_image, num_sprites, rfo); } - +/** + * Draw track fences. + * @param ti Tile drawing information. + * @param rti Rail type information. + */ static void DrawTrackDetails(const TileInfo *ti, const RailtypeInfo *rti) { /* Base sprite for track fences. * Note: Halftile slopes only have fences on the upper part. */ - SpriteID base_image = GetCustomRailSprite(rti, ti->tile, RTSG_FENCES, IsHalftileSlope(ti->tileh) ? TCX_UPPER_HALFTILE : TCX_NORMAL); - if (base_image == 0) base_image = SPR_TRACK_FENCE_FLAT_X; + uint num_sprites = 0; + SpriteID base_image = GetCustomRailSprite(rti, ti->tile, RTSG_FENCES, IsHalftileSlope(ti->tileh) ? TCX_UPPER_HALFTILE : TCX_NORMAL, &num_sprites); + if (base_image == 0) { + base_image = SPR_TRACK_FENCE_FLAT_X; + num_sprites = 8; + } + + assert(num_sprites > 0); switch (GetRailGroundType(ti->tile)) { - case RAIL_GROUND_FENCE_NW: DrawTrackFence_NW(ti, base_image); break; - case RAIL_GROUND_FENCE_SE: DrawTrackFence_SE(ti, base_image); break; - case RAIL_GROUND_FENCE_SENW: DrawTrackFence_NW_SE(ti, base_image); break; - case RAIL_GROUND_FENCE_NE: DrawTrackFence_NE(ti, base_image); break; - case RAIL_GROUND_FENCE_SW: DrawTrackFence_SW(ti, base_image); break; - case RAIL_GROUND_FENCE_NESW: DrawTrackFence_NE_SW(ti, base_image); break; - case RAIL_GROUND_FENCE_VERT1: DrawTrackFence_NS_1(ti, base_image); break; - case RAIL_GROUND_FENCE_VERT2: DrawTrackFence_NS_2(ti, base_image); break; - case RAIL_GROUND_FENCE_HORIZ1: DrawTrackFence_WE_1(ti, base_image); break; - case RAIL_GROUND_FENCE_HORIZ2: DrawTrackFence_WE_2(ti, base_image); break; + case RAIL_GROUND_FENCE_NW: DrawTrackFence_NW(ti, base_image, num_sprites); break; + case RAIL_GROUND_FENCE_SE: DrawTrackFence_SE(ti, base_image, num_sprites); break; + case RAIL_GROUND_FENCE_SENW: DrawTrackFence_NW(ti, base_image, num_sprites); + DrawTrackFence_SE(ti, base_image, num_sprites); break; + case RAIL_GROUND_FENCE_NE: DrawTrackFence_NE(ti, base_image, num_sprites); break; + case RAIL_GROUND_FENCE_SW: DrawTrackFence_SW(ti, base_image, num_sprites); break; + case RAIL_GROUND_FENCE_NESW: DrawTrackFence_NE(ti, base_image, num_sprites); + DrawTrackFence_SW(ti, base_image, num_sprites); break; + case RAIL_GROUND_FENCE_VERT1: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_LEFT); break; + case RAIL_GROUND_FENCE_VERT2: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_RIGHT); break; + case RAIL_GROUND_FENCE_HORIZ1: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_UPPER); break; + case RAIL_GROUND_FENCE_HORIZ2: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_LOWER); break; case RAIL_GROUND_WATER: { Corner track_corner; if (IsHalftileSlope(ti->tileh)) { @@ -2008,10 +2027,10 @@ static void DrawTrackDetails(const TileInfo *ti, const RailtypeInfo *rti) track_corner = OppositeCorner(GetHighestSlopeCorner(ComplementSlope(ti->tileh))); } switch (track_corner) { - case CORNER_W: DrawTrackFence_NS_1(ti, base_image); break; - case CORNER_S: DrawTrackFence_WE_2(ti, base_image); break; - case CORNER_E: DrawTrackFence_NS_2(ti, base_image); break; - case CORNER_N: DrawTrackFence_WE_1(ti, base_image); break; + case CORNER_W: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_LEFT); break; + case CORNER_S: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_LOWER); break; + case CORNER_E: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_RIGHT); break; + case CORNER_N: DrawTrackFence(ti, base_image, num_sprites, RFO_FLAT_UPPER); break; default: NOT_REACHED(); } break; @@ -2082,16 +2101,16 @@ static void DrawTrackBitsOverlay(TileInfo *ti, TrackBits track, const RailtypeIn /* Half-tile foundation, no track here? */ } else if (ti->tileh == SLOPE_NW && track == TRACK_BIT_Y) { DrawGroundSprite(ground + RTO_SLOPE_NW, PAL_NONE); - if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + 9, PALETTE_CRASH); + if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + RTO_SLOPE_NW, PALETTE_CRASH); } else if (ti->tileh == SLOPE_NE && track == TRACK_BIT_X) { DrawGroundSprite(ground + RTO_SLOPE_NE, PAL_NONE); - if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + 6, PALETTE_CRASH); + if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + RTO_SLOPE_NE, PALETTE_CRASH); } else if (ti->tileh == SLOPE_SE && track == TRACK_BIT_Y) { DrawGroundSprite(ground + RTO_SLOPE_SE, PAL_NONE); - if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + 7, PALETTE_CRASH); + if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + RTO_SLOPE_SE, PALETTE_CRASH); } else if (ti->tileh == SLOPE_SW && track == TRACK_BIT_X) { DrawGroundSprite(ground + RTO_SLOPE_SW, PAL_NONE); - if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + 8, PALETTE_CRASH); + if (pbs != TRACK_BIT_NONE) DrawGroundSprite(overlay + RTO_SLOPE_SW, PALETTE_CRASH); } else { switch (track) { /* Draw single ground sprite when not overlapping. No track overlay diff --git a/src/rail_gui.cpp b/src/rail_gui.cpp index c1f89589b3..e714f8bf56 100644 --- a/src/rail_gui.cpp +++ b/src/rail_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: rail_gui.cpp 27432 2015-11-01 12:03:13Z frosch $ */ +/* $Id: rail_gui.cpp 27427 2015-10-30 17:24:30Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/rev.cpp b/src/rev.cpp index e645ebe616..12a7c457a6 100644 --- a/src/rev.cpp +++ b/src/rev.cpp @@ -1,4 +1,4 @@ -/* $Id: rev.cpp.in 27462 2015-12-01 19:36:48Z frosch $ */ +/* $Id: rev.cpp.in 27532 2016-04-01 18:32:32Z frosch $ */ /* * This file is part of OpenTTD. @@ -39,7 +39,7 @@ bool IsReleasedVersion() * norev000 is for non-releases that are made on systems without * subversion or sources that are not a checkout of subversion. */ -const char _openttd_revision[] = "1.5.3"; +const char _openttd_revision[] = "1.6.0"; /** * The text version of OpenTTD's build date. @@ -72,11 +72,11 @@ const byte _openttd_revision_modified = 0; * final release will always have a lower version number than the released * version, thus making comparisons on specific revisions easy. */ -const uint32 _openttd_newgrf_version = 1 << 28 | 5 << 24 | 3 << 20 | 1 << 19 | (27462 & ((1 << 19) - 1)); +const uint32 _openttd_newgrf_version = 1 << 28 | 6 << 24 | 0 << 20 | 1 << 19 | (27532 & ((1 << 19) - 1)); #ifdef __MORPHOS__ /** * Variable used by MorphOS to show the version. */ -extern const char morphos_versions_tag[] = "$VER: OpenTTD 1.5.3 (02.12.15) OpenTTD Team [MorphOS, PowerPC]"; +extern const char morphos_versions_tag[] = "$VER: OpenTTD 1.6.0 (02.04.16) OpenTTD Team [MorphOS, PowerPC]"; #endif diff --git a/src/rev.cpp.in b/src/rev.cpp.in index edf6a65a27..021297022a 100644 --- a/src/rev.cpp.in +++ b/src/rev.cpp.in @@ -1,4 +1,4 @@ -/* $Id: rev.cpp.in 27462 2015-12-01 19:36:48Z frosch $ */ +/* $Id: rev.cpp.in 27532 2016-04-01 18:32:32Z frosch $ */ /* * This file is part of OpenTTD. @@ -72,7 +72,7 @@ const byte _openttd_revision_modified = !!MODIFIED!!; * final release will always have a lower version number than the released * version, thus making comparisons on specific revisions easy. */ -const uint32 _openttd_newgrf_version = 1 << 28 | 5 << 24 | 3 << 20 | 1 << 19 | (!!REVISION!! & ((1 << 19) - 1)); +const uint32 _openttd_newgrf_version = 1 << 28 | 6 << 24 | 0 << 20 | 1 << 19 | (!!REVISION!! & ((1 << 19) - 1)); #ifdef __MORPHOS__ /** diff --git a/src/road.cpp b/src/road.cpp index e085c3a7f8..01cfc3ff90 100644 --- a/src/road.cpp +++ b/src/road.cpp @@ -1,4 +1,4 @@ -/* $Id: road.cpp 27432 2015-11-01 12:03:13Z frosch $ */ +/* $Id: road.cpp 27424 2015-10-30 17:19:01Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/road_cmd.cpp b/src/road_cmd.cpp index 5ad7e4ddec..40a86c41de 100644 --- a/src/road_cmd.cpp +++ b/src/road_cmd.cpp @@ -1,4 +1,4 @@ -/* $Id: road_cmd.cpp 27350 2015-07-30 18:50:39Z frosch $ */ +/* $Id: road_cmd.cpp 27312 2015-06-21 09:31:50Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/road_gui.cpp b/src/road_gui.cpp index 950ac643d7..409cbb6023 100644 --- a/src/road_gui.cpp +++ b/src/road_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: road_gui.cpp 27163 2015-02-22 15:26:27Z frosch $ */ +/* $Id: road_gui.cpp 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -233,7 +233,7 @@ static void PlaceRoadStop(TileIndex start_tile, TileIndex end_tile, uint32 p2, u p2 |= ddir << 6; // Set the DiagDirecion into p2 bits 6 and 7. TileArea ta(start_tile, end_tile); - CommandContainer cmdcont = { ta.tile, ta.w | ta.h << 8, p2, cmd, CcRoadStop, "" }; + CommandContainer cmdcont = { ta.tile, (uint32)(ta.w | ta.h << 8), p2, cmd, CcRoadStop, "" }; ShowSelectStationIfNeeded(cmdcont, ta); } @@ -642,13 +642,13 @@ struct BuildRoadToolbarWindow : Window { case DDSP_REMOVE_BUSSTOP: { TileArea ta(start_tile, end_tile); - DoCommandP(ta.tile, ta.w | ta.h << 8, ROADSTOP_BUS, CMD_REMOVE_ROAD_STOP | CMD_MSG(_road_type_infos[_cur_roadtype].err_remove_station[ROADSTOP_BUS]), CcPlaySound1D); + DoCommandP(ta.tile, ta.w | ta.h << 8, (_ctrl_pressed << 1) | ROADSTOP_BUS, CMD_REMOVE_ROAD_STOP | CMD_MSG(_road_type_infos[_cur_roadtype].err_remove_station[ROADSTOP_BUS]), CcPlaySound1D); break; } case DDSP_REMOVE_TRUCKSTOP: { TileArea ta(start_tile, end_tile); - DoCommandP(ta.tile, ta.w | ta.h << 8, ROADSTOP_TRUCK, CMD_REMOVE_ROAD_STOP | CMD_MSG(_road_type_infos[_cur_roadtype].err_remove_station[ROADSTOP_TRUCK]), CcPlaySound1D); + DoCommandP(ta.tile, ta.w | ta.h << 8, (_ctrl_pressed << 1) | ROADSTOP_TRUCK, CMD_REMOVE_ROAD_STOP | CMD_MSG(_road_type_infos[_cur_roadtype].err_remove_station[ROADSTOP_TRUCK]), CcPlaySound1D); break; } } diff --git a/src/saveload/afterload.cpp b/src/saveload/afterload.cpp index 7dac4b7ad6..04cef44783 100644 --- a/src/saveload/afterload.cpp +++ b/src/saveload/afterload.cpp @@ -1,4 +1,4 @@ -/* $Id: afterload.cpp 27020 2014-10-15 18:31:37Z rubidium $ */ +/* $Id: afterload.cpp 27320 2015-06-27 11:46:41Z frosch $ */ /* * This file is part of OpenTTD. @@ -16,6 +16,7 @@ #include "../fios.h" #include "../gamelog_internal.h" #include "../network/network.h" +#include "../network/network_func.h" #include "../gfxinit.h" #include "../viewport_func.h" #include "../industry.h" @@ -2951,18 +2952,20 @@ bool AfterLoadGame() } /* - * Only keep order-backups for network clients. + * Only keep order-backups for network clients (and when replaying). * If we are a network server or not networking, then we just loaded a previously * saved-by-server savegame. There are no clients with a backup, so clear it. * Furthermore before savegame version 192 the actual content was always corrupt. */ if (!_networking || _network_server || IsSavegameVersionBefore(192)) { +#ifndef DEBUG_DUMP_COMMANDS /* Note: We cannot use CleanPool since that skips part of the destructor * and then leaks un-reachable Orders in the order pool. */ OrderBackup *ob; FOR_ALL_ORDER_BACKUPS(ob) { delete ob; } +#endif } diff --git a/src/saveload/engine_sl.cpp b/src/saveload/engine_sl.cpp index c768260c05..bd5e3e9ab3 100644 --- a/src/saveload/engine_sl.cpp +++ b/src/saveload/engine_sl.cpp @@ -1,4 +1,4 @@ -/* $Id: engine_sl.cpp 27270 2015-05-08 17:23:55Z frosch $ */ +/* $Id: engine_sl.cpp 27243 2015-04-23 20:07:07Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/saveload/industry_sl.cpp b/src/saveload/industry_sl.cpp index 695effb4bd..fd32c5ae76 100644 --- a/src/saveload/industry_sl.cpp +++ b/src/saveload/industry_sl.cpp @@ -1,4 +1,4 @@ -/* $Id: industry_sl.cpp 26482 2014-04-23 20:13:33Z rubidium $ */ +/* $Id: industry_sl.cpp 27291 2015-05-21 18:59:11Z frosch $ */ /* * This file is part of OpenTTD. @@ -160,14 +160,14 @@ static void Save_ITBL() /** Load industry-type build data. */ static void Load_ITBL() { - int index; - for (int i = 0; i < NUM_INDUSTRYTYPES; i++) { - index = SlIterateArray(); - assert(index == i); - SlObject(_industry_builder.builddata + i, _industrytype_builder_desc); + for (IndustryType it = 0; it < NUM_INDUSTRYTYPES; it++) { + _industry_builder.builddata[it].Reset(); + } + int index; + while ((index = SlIterateArray()) != -1) { + if ((uint)index >= NUM_INDUSTRYTYPES) SlErrorCorrupt("Too many industry builder datas"); + SlObject(_industry_builder.builddata + index, _industrytype_builder_desc); } - index = SlIterateArray(); - assert(index == -1); } extern const ChunkHandler _industry_chunk_handlers[] = { diff --git a/src/saveload/newgrf_sl.cpp b/src/saveload/newgrf_sl.cpp index 0046088ae5..560c3c6c26 100644 --- a/src/saveload/newgrf_sl.cpp +++ b/src/saveload/newgrf_sl.cpp @@ -1,4 +1,4 @@ -/* $Id: newgrf_sl.cpp 26482 2014-04-23 20:13:33Z rubidium $ */ +/* $Id: newgrf_sl.cpp 27278 2015-05-09 10:04:50Z frosch $ */ /* * This file is part of OpenTTD. @@ -51,7 +51,7 @@ void Load_NewGRFMapping(OverrideManagerBase &mapping) int index; while ((index = SlIterateArray()) != -1) { - if ((uint)index >= max_id) break; + if ((uint)index >= max_id) SlErrorCorrupt("Too many NewGRF entity mappings"); SlObject(&mapping.mapping_ID[index], _newgrf_mapping_desc); } } diff --git a/src/saveload/saveload.cpp b/src/saveload/saveload.cpp index 995e9a8052..9ee9755a6f 100644 --- a/src/saveload/saveload.cpp +++ b/src/saveload/saveload.cpp @@ -1,4 +1,4 @@ -/* $Id: saveload.cpp 27003 2014-10-12 18:41:53Z rubidium $ */ +/* $Id: saveload.cpp 27278 2015-05-09 10:04:50Z frosch $ */ /* * This file is part of OpenTTD. @@ -261,7 +261,7 @@ * 191 26646 * 192 26700 * 193 26802 - * 194 26881 + * 194 26881 1.5.x */ extern const uint16 SAVEGAME_VERSION = 194; ///< Current savegame version of OpenTTD. @@ -1667,9 +1667,11 @@ static void SlLoadChunk(const ChunkHandler *ch) case CH_ARRAY: _sl.array_index = 0; ch->load_proc(); + if (_next_offs != 0) SlErrorCorrupt("Invalid array length"); break; case CH_SPARSE_ARRAY: ch->load_proc(); + if (_next_offs != 0) SlErrorCorrupt("Invalid array length"); break; default: if ((m & 0xF) == CH_RIFF) { diff --git a/src/script/api/ai_changelog.hpp b/src/script/api/ai_changelog.hpp index 9d9b6fd259..2df25ae5ab 100644 --- a/src/script/api/ai_changelog.hpp +++ b/src/script/api/ai_changelog.hpp @@ -1,4 +1,4 @@ -/* $Id: ai_changelog.hpp 27433 2015-11-01 12:09:41Z frosch $ */ +/* $Id: ai_changelog.hpp 27519 2016-03-01 20:06:23Z frosch $ */ /* * This file is part of OpenTTD. @@ -15,6 +15,10 @@ * functions may still be available if you return an older API version * in GetAPIVersion() in info.nut. * + * \b 1.6.0 + * + * No changes + * * \b 1.5.3 * * No changes diff --git a/src/script/api/game_changelog.hpp b/src/script/api/game_changelog.hpp index 94e9368b91..225f534284 100644 --- a/src/script/api/game_changelog.hpp +++ b/src/script/api/game_changelog.hpp @@ -1,4 +1,4 @@ -/* $Id: game_changelog.hpp 27433 2015-11-01 12:09:41Z frosch $ */ +/* $Id: game_changelog.hpp 27519 2016-03-01 20:06:23Z frosch $ */ /* * This file is part of OpenTTD. @@ -15,6 +15,10 @@ * functions may still be available if you return an older API version * in GetAPIVersion() in info.nut. * + * \b 1.6.0 + * + * No changes + * * \b 1.5.3 * * No changes diff --git a/src/script/api/script_cargo.hpp b/src/script/api/script_cargo.hpp index 153e70e6e4..0c46f6251b 100644 --- a/src/script/api/script_cargo.hpp +++ b/src/script/api/script_cargo.hpp @@ -1,4 +1,4 @@ -/* $Id: script_cargo.hpp 26396 2014-03-10 22:18:53Z zuu $ */ +/* $Id: script_cargo.hpp 27316 2015-06-21 18:53:23Z frosch $ */ /* * This file is part of OpenTTD. @@ -90,8 +90,15 @@ public: * @param cargo_type The cargo to get the string representation of. * @pre ScriptCargo::IsValidCargo(cargo_type). * @return The cargo label. - * @note Never use this to check if it is a certain cargo. NewGRF can - * redefine all of the names. + * @note + * - The label uniquely identifies a specific cargo. Use this if you want to + * detect special cargos from specific industry set (like production booster cargos, supplies, ...). + * - For more generic cargo support, rather check cargo properties though. For example: + * - Use ScriptCargo::HasCargoClass(..., CC_PASSENGER) to decide bus vs. truck requirements. + * - Use ScriptCargo::GetTownEffect(...) paired with ScriptTown::GetCargoGoal(...) to determine + * town growth requirements. + * - In other words: Only use the cargo label, if you know more about the behaviour + * of a specific cargo from a specific industry set, than the API methods can tell you. */ static char *GetCargoLabel(CargoID cargo_type); diff --git a/src/script/api/script_execmode.cpp b/src/script/api/script_execmode.cpp index 1452b8cb26..56894ece4c 100644 --- a/src/script/api/script_execmode.cpp +++ b/src/script/api/script_execmode.cpp @@ -1,4 +1,4 @@ -/* $Id: script_execmode.cpp 26482 2014-04-23 20:13:33Z rubidium $ */ +/* $Id: script_execmode.cpp 27379 2015-08-10 20:04:31Z frosch $ */ /* * This file is part of OpenTTD. @@ -30,7 +30,7 @@ ScriptExecMode::ScriptExecMode() this->SetDoCommandMode(&ScriptExecMode::ModeProc, this); } -ScriptExecMode::~ScriptExecMode() +void ScriptExecMode::FinalRelease() { if (this->GetDoCommandModeInstance() != this) { /* Ignore this error if the script already died. */ @@ -38,5 +38,9 @@ ScriptExecMode::~ScriptExecMode() throw Script_FatalError("ScriptExecMode object was removed while it was not the latest *Mode object created."); } } +} + +ScriptExecMode::~ScriptExecMode() +{ this->SetDoCommandMode(this->last_mode, this->last_instance); } diff --git a/src/script/api/script_execmode.hpp b/src/script/api/script_execmode.hpp index 335c89a1b7..28824a270d 100644 --- a/src/script/api/script_execmode.hpp +++ b/src/script/api/script_execmode.hpp @@ -1,4 +1,4 @@ -/* $Id: script_execmode.hpp 24900 2013-01-08 22:46:42Z planetmaker $ */ +/* $Id: script_execmode.hpp 27379 2015-08-10 20:04:31Z frosch $ */ /* * This file is part of OpenTTD. @@ -46,6 +46,8 @@ public: * in when the instance was created. */ ~ScriptExecMode(); + + virtual void FinalRelease(); }; #endif /* SCRIPT_EXECMODE_HPP */ diff --git a/src/script/api/script_list.cpp b/src/script/api/script_list.cpp index f31c1f0d36..08a1593bbb 100644 --- a/src/script/api/script_list.cpp +++ b/src/script/api/script_list.cpp @@ -1,4 +1,4 @@ -/* $Id: script_list.cpp 27272 2015-05-08 17:32:57Z frosch $ */ +/* $Id: script_list.cpp 27258 2015-04-27 19:28:22Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/script/api/script_road.cpp b/src/script/api/script_road.cpp index fda14620b7..a1bd367642 100644 --- a/src/script/api/script_road.cpp +++ b/src/script/api/script_road.cpp @@ -1,4 +1,4 @@ -/* $Id: script_road.cpp 26482 2014-04-23 20:13:33Z rubidium $ */ +/* $Id: script_road.cpp 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -371,8 +371,8 @@ static bool NormaliseTileOffset(int32 *tile) if (!::IsValidTile(tile) || !::IsValidTile(start) || !::IsValidTile(end)) return -1; if (::DistanceManhattan(tile, start) != 1 || ::DistanceManhattan(tile, end) != 1) return -1; - /* ROAD_NW ROAD_SW ROAD_SE ROAD_NE */ - static const TileIndex neighbours[] = {::TileDiffXY(0, -1), ::TileDiffXY(1, 0), ::TileDiffXY(0, 1), ::TileDiffXY(-1, 0)}; + /* ROAD_NW ROAD_SW ROAD_SE ROAD_NE */ + static const TileIndexDiff neighbours[] = {::TileDiffXY(0, -1), ::TileDiffXY(1, 0), ::TileDiffXY(0, 1), ::TileDiffXY(-1, 0)}; Array *existing = (Array*)alloca(sizeof(Array) + lengthof(neighbours) * sizeof(int32)); existing->size = 0; diff --git a/src/script/api/script_testmode.cpp b/src/script/api/script_testmode.cpp index b465b417f2..69a78da747 100644 --- a/src/script/api/script_testmode.cpp +++ b/src/script/api/script_testmode.cpp @@ -1,4 +1,4 @@ -/* $Id: script_testmode.cpp 26482 2014-04-23 20:13:33Z rubidium $ */ +/* $Id: script_testmode.cpp 27379 2015-08-10 20:04:31Z frosch $ */ /* * This file is part of OpenTTD. @@ -30,7 +30,7 @@ ScriptTestMode::ScriptTestMode() this->SetDoCommandMode(&ScriptTestMode::ModeProc, this); } -ScriptTestMode::~ScriptTestMode() +void ScriptTestMode::FinalRelease() { if (this->GetDoCommandModeInstance() != this) { /* Ignore this error if the script already died. */ @@ -38,5 +38,9 @@ ScriptTestMode::~ScriptTestMode() throw Script_FatalError("Testmode object was removed while it was not the latest *Mode object created."); } } +} + +ScriptTestMode::~ScriptTestMode() +{ this->SetDoCommandMode(this->last_mode, this->last_instance); } diff --git a/src/script/api/script_testmode.hpp b/src/script/api/script_testmode.hpp index 245dd96116..72a835629b 100644 --- a/src/script/api/script_testmode.hpp +++ b/src/script/api/script_testmode.hpp @@ -1,4 +1,4 @@ -/* $Id: script_testmode.hpp 24900 2013-01-08 22:46:42Z planetmaker $ */ +/* $Id: script_testmode.hpp 27379 2015-08-10 20:04:31Z frosch $ */ /* * This file is part of OpenTTD. @@ -48,6 +48,8 @@ public: * in when the instance was created. */ ~ScriptTestMode(); + + virtual void FinalRelease(); }; #endif /* SCRIPT_TESTMODE_HPP */ diff --git a/src/script/api/script_tilelist.hpp b/src/script/api/script_tilelist.hpp index 0958e39858..fa6ea6dfa9 100644 --- a/src/script/api/script_tilelist.hpp +++ b/src/script/api/script_tilelist.hpp @@ -1,4 +1,4 @@ -/* $Id: script_tilelist.hpp 23615 2011-12-19 20:57:34Z truebrain $ */ +/* $Id: script_tilelist.hpp 27287 2015-05-16 14:40:45Z alberth $ */ /* * This file is part of OpenTTD. @@ -65,9 +65,10 @@ class ScriptTileList_IndustryAccepting : public ScriptTileList { public: /** * @param industry_id The industry to create the ScriptTileList around. - * @param radius The radius of the station you will be using. + * @param radius The coverage radius of the station type you will be using. * @pre ScriptIndustry::IsValidIndustry(industry_id). * @pre radius > 0. + * @note A station part built on any of the returned tiles will give you coverage. */ ScriptTileList_IndustryAccepting(IndustryID industry_id, int radius); }; @@ -82,9 +83,10 @@ class ScriptTileList_IndustryProducing : public ScriptTileList { public: /** * @param industry_id The industry to create the ScriptTileList around. - * @param radius The radius of the station you will be using. + * @param radius The coverage radius of the station type you will be using. * @pre ScriptIndustry::IsValidIndustry(industry_id). * @pre radius > 0. + * @note A station part built on any of the returned tiles will give you acceptance. */ ScriptTileList_IndustryProducing(IndustryID industry_id, int radius); }; diff --git a/src/script/api/script_window.hpp b/src/script/api/script_window.hpp index d6e9ede63d..838a4058b4 100644 --- a/src/script/api/script_window.hpp +++ b/src/script/api/script_window.hpp @@ -1,4 +1,4 @@ -/* $Id: script_window.hpp 27174 2015-03-01 08:17:14Z alberth $ */ +/* $Id: script_window.hpp 27286 2015-05-16 12:08:06Z alberth $ */ /* * This file is part of OpenTTD. @@ -529,7 +529,7 @@ public: /** * Generate landscape (newgame); %Window numbers: * - GLWM_SCENARIO = #CreateScenarioWidgets - * - #GenenerateLandscapeWindowMode = #GenerateLandscapeWidgets + * - #GenerateLandscapeWindowMode = #GenerateLandscapeWidgets */ WC_GENERATE_LANDSCAPE = ::WC_GENERATE_LANDSCAPE, diff --git a/src/settings.cpp b/src/settings.cpp index d864ef3f98..9e421f2d47 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -1,4 +1,4 @@ -/* $Id: settings.cpp 27163 2015-02-22 15:26:27Z frosch $ */ +/* $Id: settings.cpp 27285 2015-05-16 12:01:19Z alberth $ */ /* * This file is part of OpenTTD. @@ -1147,7 +1147,7 @@ static bool InvalidateCompanyWindow(int32 p1) static void ValidateSettings() { /* Do not allow a custom sea level with the original land generator. */ - if (_settings_newgame.game_creation.land_generator == 0 && + if (_settings_newgame.game_creation.land_generator == LG_ORIGINAL && _settings_newgame.difficulty.quantity_sea_lakes == CUSTOM_SEA_LEVEL_NUMBER_DIFFICULTY) { _settings_newgame.difficulty.quantity_sea_lakes = CUSTOM_SEA_LEVEL_MIN_PERCENTAGE; } diff --git a/src/settings_gui.cpp b/src/settings_gui.cpp index 02ace2c6b9..b11a2b1b71 100644 --- a/src/settings_gui.cpp +++ b/src/settings_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: settings_gui.cpp 27430 2015-11-01 11:55:45Z frosch $ */ +/* $Id: settings_gui.cpp 27366 2015-08-09 10:22:51Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/signs_gui.cpp b/src/signs_gui.cpp index 738f66f73e..a33a0395a6 100644 --- a/src/signs_gui.cpp +++ b/src/signs_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: signs_gui.cpp 26827 2014-09-15 19:26:03Z frosch $ */ +/* $Id: signs_gui.cpp 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -268,7 +268,7 @@ struct SignListWindow : Window, SignList { Dimension spr_dim = GetSpriteSize(SPR_COMPANY_ICON); this->text_offset = WD_FRAMETEXT_LEFT + spr_dim.width + 2; // 2 pixels space between icon and the sign text. resize->height = max(FONT_HEIGHT_NORMAL, spr_dim.height); - Dimension d = {this->text_offset + WD_FRAMETEXT_RIGHT, WD_FRAMERECT_TOP + 5 * resize->height + WD_FRAMERECT_BOTTOM}; + Dimension d = {(uint)(this->text_offset + WD_FRAMETEXT_RIGHT), WD_FRAMERECT_TOP + 5 * resize->height + WD_FRAMERECT_BOTTOM}; *size = maxdim(*size, d); break; } diff --git a/src/smallmap_gui.cpp b/src/smallmap_gui.cpp index 618cee5875..073f3cb2ff 100644 --- a/src/smallmap_gui.cpp +++ b/src/smallmap_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: smallmap_gui.cpp 27160 2015-02-22 14:14:30Z frosch $ */ +/* $Id: smallmap_gui.cpp 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -28,6 +28,8 @@ #include "table/strings.h" +#include + #include "safeguards.h" static int _smallmap_industry_count; ///< Number of used industries @@ -175,7 +177,7 @@ void BuildIndustriesLegend() uint j = 0; /* Add each name */ - for (uint8 i = 0; i < NUM_INDUSTRYTYPES; i++) { + for (uint i = 0; i < NUM_INDUSTRYTYPES; i++) { IndustryType ind = _sorted_industry_types[i]; const IndustrySpec *indsp = GetIndustrySpec(ind); if (indsp->enabled) { @@ -1074,7 +1076,7 @@ void SmallMapWindow::RebuildColourIndexIfNecessary() _heightmap_schemes[n].height_colours = ReallocT(_heightmap_schemes[n].height_colours, heights); for (int z = 0; z < heights; z++) { - uint access_index = (_heightmap_schemes[n].colour_count * z) / heights; + size_t access_index = (_heightmap_schemes[n].colour_count * z) / heights; /* Choose colour by mapping the range (0..max heightlevel) on the complete colour table. */ _heightmap_schemes[n].height_colours[z] = _heightmap_schemes[n].height_colours_base[access_index]; @@ -1399,7 +1401,7 @@ int SmallMapWindow::GetPositionOnLegend(Point pt) case WID_SM_ZOOM_IN: case WID_SM_ZOOM_OUT: { const NWidgetBase *wid = this->GetWidget(WID_SM_MAP); - Point pt = {wid->current_x / 2, wid->current_y / 2}; + Point pt = { (int)wid->current_x / 2, (int)wid->current_y / 2}; this->SetZoomLevel((widget == WID_SM_ZOOM_IN) ? ZLC_ZOOM_IN : ZLC_ZOOM_OUT, &pt); if (_settings_client.sound.click_beep) SndPlayFx(SND_15_BEEP); break; @@ -1507,11 +1509,11 @@ int SmallMapWindow::GetPositionOnLegend(Point pt) break; case 0: { - extern uint64 _displayed_industries; + extern std::bitset _displayed_industries; if (this->map_type != SMT_INDUSTRY) this->SwitchMapType(SMT_INDUSTRY); for (int i = 0; i != _smallmap_industry_count; i++) { - _legend_from_industries[i].show_on_map = HasBit(_displayed_industries, _legend_from_industries[i].type); + _legend_from_industries[i].show_on_map = _displayed_industries.test(_legend_from_industries[i].type); } break; } diff --git a/src/sound/win32_s.cpp b/src/sound/win32_s.cpp index 120e0caebc..4e2eec4c7c 100644 --- a/src/sound/win32_s.cpp +++ b/src/sound/win32_s.cpp @@ -1,4 +1,4 @@ -/* $Id: win32_s.cpp 27430 2015-11-01 11:55:45Z frosch $ */ +/* $Id: win32_s.cpp 27383 2015-08-12 20:50:10Z rubidium $ */ /* * This file is part of OpenTTD. diff --git a/src/sound_type.h b/src/sound_type.h index 18c52d3def..3a4b910853 100644 --- a/src/sound_type.h +++ b/src/sound_type.h @@ -1,4 +1,4 @@ -/* $Id: sound_type.h 26425 2014-03-23 21:56:48Z frosch $ */ +/* $Id: sound_type.h 27507 2016-02-08 21:05:57Z frosch $ */ /* * This file is part of OpenTTD. @@ -119,4 +119,6 @@ static const uint ORIGINAL_SAMPLE_COUNT = 73; typedef uint16 SoundID; +static const SoundID INVALID_SOUND = 0xFFFF; + #endif /* SOUND_TYPE_H */ diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index c1aa45d18c..a1faf7edce 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -1,4 +1,4 @@ -/* $Id: station_cmd.cpp 27350 2015-07-30 18:50:39Z frosch $ */ +/* $Id: station_cmd.cpp 27311 2015-06-21 09:19:27Z frosch $ */ /* * This file is part of OpenTTD. @@ -1649,49 +1649,14 @@ CommandCost RemoveRailStation(T *st, DoCommandFlag flags, Money removal_cost) /* clear all areas of the station */ TILE_AREA_LOOP(tile, ta) { /* only remove tiles that are actually train station tiles */ - if (!st->TileBelongsToRailStation(tile)) continue; - - CommandCost ret = EnsureNoVehicleOnGround(tile); - if (ret.Failed()) return ret; - - cost.AddCost(removal_cost); - if (flags & DC_EXEC) { - /* read variables before the station tile is removed */ - Track track = GetRailStationTrack(tile); - Owner owner = GetTileOwner(tile); // _current_company can be OWNER_WATER - Train *v = NULL; - if (HasStationReservation(tile)) { - v = GetTrainForReservation(tile, track); - if (v != NULL) FreeTrainTrackReservation(v); - } - if (!IsStationTileBlocked(tile)) Company::Get(owner)->infrastructure.rail[GetRailType(tile)]--; - Company::Get(owner)->infrastructure.station--; - DoClearSquare(tile); - DeleteNewGRFInspectWindow(GSF_STATIONS, tile); - AddTrackToSignalBuffer(tile, track, owner); - YapfNotifyTrackLayoutChange(tile, track); - if (v != NULL) TryPathReserve(v, true); + if (st->TileBelongsToRailStation(tile)) { + SmallVector affected_stations; // dummy + CommandCost ret = RemoveFromRailBaseStation(TileArea(tile, 1, 1), affected_stations, flags, removal_cost, false); + if (ret.Failed()) return ret; + cost.AddCost(ret); } } - if (flags & DC_EXEC) { - st->rect.AfterRemoveRect(st, st->train_station); - - st->train_station.Clear(); - - st->facilities &= ~FACIL_TRAIN; - - free(st->speclist); - st->num_specs = 0; - st->speclist = NULL; - st->cached_anim_triggers = 0; - - DirtyCompanyInfrastructureWindows(st->owner); - SetWindowWidgetDirty(WC_STATION_VIEW, st->index, WID_SV_TRAINS); - st->UpdateVirtCoord(); - DeleteStationIfEmpty(st); - } - return cost; } @@ -2039,6 +2004,7 @@ static CommandCost RemoveRoadStop(TileIndex tile, DoCommandFlag flags) * @param p1 bit 0..7: Width of the removal area. * bit 8..15: Height of the removal area. * @param p2 bit 0: 0 For bus stops, 1 for truck stops. + * @param p2 bit 1: 0 to keep roads of all drive-through stops, 1 to remove them. * @param text Unused. * @return The cost of this operation or an error. */ @@ -2046,38 +2012,52 @@ CommandCost CmdRemoveRoadStop(TileIndex tile, DoCommandFlag flags, uint32 p1, ui { uint8 width = (uint8)GB(p1, 0, 8); uint8 height = (uint8)GB(p1, 8, 8); + bool keep_drive_through_roads = !HasBit(p2, 1); /* Check for incorrect width / height. */ if (width == 0 || height == 0) return CMD_ERROR; /* Check if the first tile and the last tile are valid */ if (!IsValidTile(tile) || TileAddWrap(tile, width - 1, height - 1) == INVALID_TILE) return CMD_ERROR; + /* Bankrupting company is not supposed to remove roads, there may be road vehicles. */ + if (!keep_drive_through_roads && (flags & DC_BANKRUPT)) return CMD_ERROR; TileArea roadstop_area(tile, width, height); - int quantity = 0; CommandCost cost(EXPENSES_CONSTRUCTION); + CommandCost last_error(STR_ERROR_THERE_IS_NO_STATION); + bool had_success = false; + TILE_AREA_LOOP(cur_tile, roadstop_area) { /* Make sure the specified tile is a road stop of the correct type */ if (!IsTileType(cur_tile, MP_STATION) || !IsRoadStop(cur_tile) || (uint32)GetRoadStopType(cur_tile) != GB(p2, 0, 1)) continue; - /* Save the stop info before it is removed */ - bool is_drive_through = IsDriveThroughStopTile(cur_tile); - RoadTypes rts = GetRoadTypes(cur_tile); - RoadBits road_bits = IsDriveThroughStopTile(cur_tile) ? - ((GetRoadStopDir(cur_tile) == DIAGDIR_NE) ? ROAD_X : ROAD_Y) : - DiagDirToRoadBits(GetRoadStopDir(cur_tile)); + /* Save information on to-be-restored roads before the stop is removed. */ + RoadTypes rts = ROADTYPES_NONE; + RoadBits road_bits = ROAD_NONE; + Owner road_owner[] = { OWNER_NONE, OWNER_NONE }; + assert_compile(lengthof(road_owner) == ROADTYPE_END); + if (IsDriveThroughStopTile(cur_tile)) { + RoadType rt; + FOR_EACH_SET_ROADTYPE(rt, GetRoadTypes(cur_tile)) { + road_owner[rt] = GetRoadOwner(cur_tile, rt); + /* If we don't want to preserve our roads then restore only roads of others. */ + if (keep_drive_through_roads || road_owner[rt] != _current_company) SetBit(rts, rt); + } + road_bits = AxisToRoadBits(DiagDirToAxis(GetRoadStopDir(cur_tile))); + } - Owner road_owner = GetRoadOwner(cur_tile, ROADTYPE_ROAD); - Owner tram_owner = GetRoadOwner(cur_tile, ROADTYPE_TRAM); CommandCost ret = RemoveRoadStop(cur_tile, flags); - if (ret.Failed()) return ret; + if (ret.Failed()) { + last_error = ret; + continue; + } cost.AddCost(ret); + had_success = true; - quantity++; - /* If the stop was a drive-through stop replace the road */ - if ((flags & DC_EXEC) && is_drive_through) { + /* Restore roads. */ + if ((flags & DC_EXEC) && rts != ROADTYPES_NONE) { MakeRoadNormal(cur_tile, road_bits, rts, ClosestTownFromTile(cur_tile, UINT_MAX)->index, - road_owner, tram_owner); + road_owner[ROADTYPE_ROAD], road_owner[ROADTYPE_TRAM]); /* Update company infrastructure counts. */ RoadType rt; @@ -2091,9 +2071,7 @@ CommandCost CmdRemoveRoadStop(TileIndex tile, DoCommandFlag flags, uint32 p1, ui } } - if (quantity == 0) return_cmd_error(STR_ERROR_THERE_IS_NO_STATION); - - return cost; + return had_success ? cost : last_error; } /** @@ -3305,7 +3283,7 @@ static void UpdateStationRating(Station *st) bool skip = false; int rating = 0; - uint waiting = ge->cargo.TotalCount(); + uint waiting = ge->cargo.AvailableCount(); /* num_dests is at least 1 if there is any cargo as * INVALID_STATION is also a destination. diff --git a/src/station_gui.cpp b/src/station_gui.cpp index d7109b4f3d..faa80aea60 100644 --- a/src/station_gui.cpp +++ b/src/station_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: station_gui.cpp 27134 2015-02-01 20:54:24Z frosch $ */ +/* $Id: station_gui.cpp 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -1409,7 +1409,7 @@ struct StationViewWindow : public Window { if (!this->IsShaded()) { /* Draw 'accepted cargo' or 'cargo ratings'. */ const NWidgetBase *wid = this->GetWidget(WID_SV_ACCEPT_RATING_LIST); - const Rect r = {wid->pos_x, wid->pos_y, wid->pos_x + wid->current_x - 1, wid->pos_y + wid->current_y - 1}; + const Rect r = {(int)wid->pos_x, (int)wid->pos_y, (int)(wid->pos_x + wid->current_x - 1), (int)(wid->pos_y + wid->current_y - 1)}; if (this->GetWidget(WID_SV_ACCEPTS_RATINGS)->widget_data == STR_STATION_VIEW_RATINGS_BUTTON) { int lines = this->DrawAcceptedCargo(r); if (lines > this->accepts_lines) { // Resize the widget, and perform re-initialization of the window. @@ -1437,7 +1437,7 @@ struct StationViewWindow : public Window { /* Draw waiting cargo. */ NWidgetBase *nwi = this->GetWidget(WID_SV_WAITING); - Rect waiting_rect = {nwi->pos_x, nwi->pos_y, nwi->pos_x + nwi->current_x - 1, nwi->pos_y + nwi->current_y - 1}; + Rect waiting_rect = { (int)nwi->pos_x, (int)nwi->pos_y, (int)(nwi->pos_x + nwi->current_x - 1), (int)(nwi->pos_y + nwi->current_y - 1)}; this->DrawEntries(&cargo, waiting_rect, pos, maxrows, 0); scroll_to_row = INT_MAX; } diff --git a/src/stdafx.h b/src/stdafx.h index 91e279386a..dfe7561c70 100644 --- a/src/stdafx.h +++ b/src/stdafx.h @@ -1,4 +1,4 @@ -/* $Id: stdafx.h 27109 2015-01-02 19:50:43Z rubidium $ */ +/* $Id: stdafx.h 27380 2015-08-10 20:21:29Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -223,7 +223,9 @@ #include // alloca() #define NORETURN __declspec(noreturn) - #define inline __forceinline + #if (_MSC_VER < 1900) + #define inline __forceinline + #endif #if !defined(WINCE) #define CDECL _cdecl diff --git a/src/strgen/strgen_base.cpp b/src/strgen/strgen_base.cpp index cc6f8f66ff..a5a41ff261 100644 --- a/src/strgen/strgen_base.cpp +++ b/src/strgen/strgen_base.cpp @@ -1,4 +1,4 @@ -/* $Id: strgen_base.cpp 26511 2014-04-25 17:43:09Z rubidium $ */ +/* $Id: strgen_base.cpp 27380 2015-08-10 20:21:29Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -378,7 +378,7 @@ static int TranslateArgumentIdx(int arg, int offset = 0); static void EmitWordList(Buffer *buffer, const char * const *words, uint nw) { buffer->AppendByte(nw); - for (uint i = 0; i < nw; i++) buffer->AppendByte((uint)strlen(words[i]) + 1); + for (uint i = 0; i < nw; i++) buffer->AppendByte((byte)strlen(words[i]) + 1); for (uint i = 0; i < nw; i++) { for (uint j = 0; words[i][j] != '\0'; j++) buffer->AppendByte(words[i][j]); buffer->AppendByte(0); @@ -388,7 +388,7 @@ static void EmitWordList(Buffer *buffer, const char * const *words, uint nw) void EmitPlural(Buffer *buffer, char *buf, int value) { int argidx = _cur_argidx; - int offset = 0; + int offset = -1; int expected = _plural_forms[_lang.plural_form].plural_count; const char **words = AllocaM(const char *, max(expected, MAX_PLURALS)); int nw = 0; @@ -396,6 +396,15 @@ void EmitPlural(Buffer *buffer, char *buf, int value) /* Parse out the number, if one exists. Otherwise default to prev arg. */ if (!ParseRelNum(&buf, &argidx, &offset)) argidx--; + const CmdStruct *cmd = _cur_pcs.cmd[argidx]; + if (offset == -1) { + /* Use default offset */ + if (cmd == NULL || cmd->default_plural_offset < 0) { + strgen_fatal("Command '%s' has no (default) plural position", cmd == NULL ? "" : cmd->cmd); + } + offset = cmd->default_plural_offset; + } + /* Parse each string */ for (nw = 0; nw < MAX_PLURALS; nw++) { words[nw] = ParseWord(&buf); diff --git a/src/string.cpp b/src/string.cpp index b557daa0f0..5ca153bdce 100644 --- a/src/string.cpp +++ b/src/string.cpp @@ -1,4 +1,4 @@ -/* $Id: string.cpp 27020 2014-10-15 18:31:37Z rubidium $ */ +/* $Id: string.cpp 27380 2015-08-10 20:21:29Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -25,12 +25,12 @@ #include // required by vsnprintf implementation for MSVC #endif -#ifdef WITH_ICU +#ifdef WITH_ICU_SORT /* Required by strnatcmp. */ #include #include "language.h" #include "gfx_func.h" -#endif /* WITH_ICU */ +#endif /* WITH_ICU_SORT */ /* The function vsnprintf is used internally to perform the required formatting * tasks. As such this one must be allowed, and makes sure it's terminated. */ @@ -349,7 +349,7 @@ bool IsValidChar(WChar key, CharSetFilter afilter) } #ifdef WIN32 -#ifdef _MSC_VER +#if defined(_MSC_VER) && _MSC_VER < 1900 /** * Almost POSIX compliant implementation of \c vsnprintf for VC compiler. * The difference is in the value returned on output truncation. This @@ -572,33 +572,20 @@ int strnatcmp(const char *s1, const char *s2, bool ignore_garbage_at_front) s1 = SkipGarbage(s1); s2 = SkipGarbage(s2); } -#ifdef WITH_ICU +#ifdef WITH_ICU_SORT if (_current_collator != NULL) { UErrorCode status = U_ZERO_ERROR; - int result; - - /* We want to use the new faster method for ICU 4.2 and higher. */ -#if U_ICU_VERSION_MAJOR_NUM > 4 || (U_ICU_VERSION_MAJOR_NUM == 4 && U_ICU_VERSION_MINOR_NUM >= 2) - /* The StringPiece parameter gets implicitly constructed from the char *. */ - result = _current_collator->compareUTF8(s1, s2, status); -#else /* The following for 4.0 and lower. */ - UChar buffer1[DRAW_STRING_BUFFER]; - u_strFromUTF8Lenient(buffer1, lengthof(buffer1), NULL, s1, -1, &status); - UChar buffer2[DRAW_STRING_BUFFER]; - u_strFromUTF8Lenient(buffer2, lengthof(buffer2), NULL, s2, -1, &status); - - result = _current_collator->compare(buffer1, buffer2, status); -#endif /* ICU version check. */ + int result = _current_collator->compareUTF8(s1, s2, status); if (U_SUCCESS(status)) return result; } -#endif /* WITH_ICU */ +#endif /* WITH_ICU_SORT */ /* Do a normal comparison if ICU is missing or if we cannot create a collator. */ return strcasecmp(s1, s2); } -#ifdef WITH_ICU +#ifdef WITH_ICU_SORT #include #include diff --git a/src/strings.cpp b/src/strings.cpp index 67da77b96e..6855789d04 100644 --- a/src/strings.cpp +++ b/src/strings.cpp @@ -1,4 +1,4 @@ -/* $Id: strings.cpp 27102 2015-01-01 20:50:43Z rubidium $ */ +/* $Id: strings.cpp 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -35,6 +35,7 @@ #include "window_func.h" #include "debug.h" #include "game/game_text.hpp" +#include "network/network_content_gui.h" #include #include "table/strings.h" @@ -48,9 +49,9 @@ const LanguageMetadata *_current_language = NULL; ///< The currently loaded lang TextDirection _current_text_dir; ///< Text direction of the currently selected language. -#ifdef WITH_ICU +#ifdef WITH_ICU_SORT Collator *_current_collator = NULL; ///< Collator for the language currently in use. -#endif /* WITH_ICU */ +#endif /* WITH_ICU_SORT */ static uint64 _global_string_params_data[20]; ///< Global array of string parameters. To access, use #SetDParam. static WChar _global_string_params_type[20]; ///< Type of parameters stored in #_decode_parameters @@ -1274,7 +1275,7 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg if (c == NULL) break; if (c->name != NULL) { - int64 args_array[] = {(uint64)(size_t)c->name}; + int64 args_array[] = {(int64)(size_t)c->name}; StringParameters tmp_params(args_array); buff = GetStringWithArgs(buff, STR_JUST_RAW_STRING, &tmp_params, last); } else { @@ -1300,7 +1301,7 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg case SCC_DEPOT_NAME: { // {DEPOT} VehicleType vt = (VehicleType)args->GetInt32(SCC_DEPOT_NAME); if (vt == VEH_AIRCRAFT) { - uint64 args_array[] = {args->GetInt32()}; + uint64 args_array[] = {(uint64)args->GetInt32()}; WChar types_array[] = {SCC_STATION_NAME}; StringParameters tmp_params(args_array, 1, types_array); buff = GetStringWithArgs(buff, STR_FORMAT_DEPOT_NAME_AIRCRAFT, &tmp_params, last); @@ -1309,7 +1310,7 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg const Depot *d = Depot::Get(args->GetInt32()); if (d->name != NULL) { - int64 args_array[] = {(uint64)(size_t)d->name}; + int64 args_array[] = {(int64)(size_t)d->name}; StringParameters tmp_params(args_array); buff = GetStringWithArgs(buff, STR_JUST_RAW_STRING, &tmp_params, last); } else { @@ -1325,7 +1326,7 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg if (e == NULL) break; if (e->name != NULL && e->IsEnabled()) { - int64 args_array[] = {(uint64)(size_t)e->name}; + int64 args_array[] = {(int64)(size_t)e->name}; StringParameters tmp_params(args_array); buff = GetStringWithArgs(buff, STR_JUST_RAW_STRING, &tmp_params, last); } else { @@ -1340,7 +1341,7 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg if (g == NULL) break; if (g->name != NULL) { - int64 args_array[] = {(uint64)(size_t)g->name}; + int64 args_array[] = {(int64)(size_t)g->name}; StringParameters tmp_params(args_array); buff = GetStringWithArgs(buff, STR_JUST_RAW_STRING, &tmp_params, last); } else { @@ -1377,7 +1378,7 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg if (c == NULL) break; if (c->president_name != NULL) { - int64 args_array[] = {(uint64)(size_t)c->president_name}; + int64 args_array[] = {(int64)(size_t)c->president_name}; StringParameters tmp_params(args_array); buff = GetStringWithArgs(buff, STR_JUST_RAW_STRING, &tmp_params, last); } else { @@ -1402,7 +1403,7 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg } if (st->name != NULL) { - int64 args_array[] = {(uint64)(size_t)st->name}; + int64 args_array[] = {(int64)(size_t)st->name}; StringParameters tmp_params(args_array); buff = GetStringWithArgs(buff, STR_JUST_RAW_STRING, &tmp_params, last); } else { @@ -1431,7 +1432,7 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg if (t == NULL) break; if (t->name != NULL) { - int64 args_array[] = {(uint64)(size_t)t->name}; + int64 args_array[] = {(int64)(size_t)t->name}; StringParameters tmp_params(args_array); buff = GetStringWithArgs(buff, STR_JUST_RAW_STRING, &tmp_params, last); } else { @@ -1445,7 +1446,7 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg if (wp == NULL) break; if (wp->name != NULL) { - int64 args_array[] = {(uint64)(size_t)wp->name}; + int64 args_array[] = {(int64)(size_t)wp->name}; StringParameters tmp_params(args_array); buff = GetStringWithArgs(buff, STR_JUST_RAW_STRING, &tmp_params, last); } else { @@ -1463,7 +1464,7 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg if (v == NULL) break; if (v->name != NULL) { - int64 args_array[] = {(uint64)(size_t)v->name}; + int64 args_array[] = {(int64)(size_t)v->name}; StringParameters tmp_params(args_array); buff = GetStringWithArgs(buff, STR_JUST_RAW_STRING, &tmp_params, last); } else { @@ -1489,7 +1490,7 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg if (si == NULL) break; if (si->name != NULL) { - int64 args_array[] = {(uint64)(size_t)si->name}; + int64 args_array[] = {(int64)(size_t)si->name}; StringParameters tmp_params(args_array); buff = GetStringWithArgs(buff, STR_JUST_RAW_STRING, &tmp_params, last); } else { @@ -1789,7 +1790,7 @@ bool ReadLanguagePack(const LanguageMetadata *lang) strecpy(_config_language_file, c_file, lastof(_config_language_file)); SetCurrentGrfLangID(_current_language->newgrflangid); -#ifdef WITH_ICU +#ifdef WITH_ICU_SORT /* Delete previous collator. */ if (_current_collator != NULL) { delete _current_collator; @@ -1806,7 +1807,7 @@ bool ReadLanguagePack(const LanguageMetadata *lang) delete _current_collator; _current_collator = NULL; } -#endif /* WITH_ICU */ +#endif /* WITH_ICU_SORT */ /* Some lists need to be sorted again after a language change. */ ReconsiderGameScriptLanguage(); @@ -1814,6 +1815,7 @@ bool ReadLanguagePack(const LanguageMetadata *lang) SortIndustryTypes(); BuildIndustriesLegend(); SortNetworkLanguages(); + BuildContentTypeStringList(); InvalidateWindowClassesData(WC_BUILD_VEHICLE); // Build vehicle window. InvalidateWindowClassesData(WC_TRAINS_LIST); // Train group window. InvalidateWindowClassesData(WC_ROADVEH_LIST); // Road vehicle group window. @@ -2130,7 +2132,7 @@ void CheckForMissingGlyphs(bool base_font, MissingGlyphSearcher *searcher) /* Update the font with cache */ LoadStringWidthTable(searcher->Monospace()); -#if !defined(WITH_ICU) +#if !defined(WITH_ICU_LAYOUT) /* * For right-to-left languages we need the ICU library. If * we do not have support for that library we warn the user @@ -2150,5 +2152,5 @@ void CheckForMissingGlyphs(bool base_font, MissingGlyphSearcher *searcher) SetDParamStr(0, err_str); ShowErrorMessage(STR_JUST_RAW_STRING, INVALID_STRING_ID, WL_ERROR); } -#endif +#endif /* !WITH_ICU_LAYOUT */ } diff --git a/src/table/newgrf_debug_data.h b/src/table/newgrf_debug_data.h index 5323cd993d..25ea4cfbdc 100644 --- a/src/table/newgrf_debug_data.h +++ b/src/table/newgrf_debug_data.h @@ -1,4 +1,4 @@ -/* $Id: newgrf_debug_data.h 27048 2014-10-28 00:51:51Z peter1138 $ */ +/* $Id: newgrf_debug_data.h 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -13,7 +13,7 @@ #include "../newgrf_engine.h" /* Helper for filling property tables */ -#define NIP(prop, base, variable, type, name) { name, cpp_offsetof(base, variable), cpp_sizeof(base, variable), prop, type } +#define NIP(prop, base, variable, type, name) { name, (ptrdiff_t)cpp_offsetof(base, variable), cpp_sizeof(base, variable), prop, type } #define NIP_END() { NULL, 0, 0, 0, 0 } /* Helper for filling callback tables */ diff --git a/src/table/palettes.h b/src/table/palettes.h index 0791566f98..dd7174d724 100644 --- a/src/table/palettes.h +++ b/src/table/palettes.h @@ -1,4 +1,4 @@ -/* $Id: palettes.h 24111 2012-04-10 20:16:51Z rubidium $ */ +/* $Id: palettes.h 27340 2015-07-26 09:47:17Z frosch $ */ /* * This file is part of OpenTTD. @@ -147,24 +147,3 @@ static const ExtraPaletteValues _extra_palette_values = { M(116, 180, 196), M(148, 200, 216), M(180, 220, 232) } }; #undef M - -/** Colour mapping for the TextColours. */ -static const byte _string_colourmap[17] = { - 150, // TC_BLUE - 12, // TC_SILVER - 189, // TC_GOLD - 184, // TC_RED - 174, // TC_PURPLE - 30, // TC_LIGHT_BROWN - 195, // TC_ORANGE - 209, // TC_GREEN - 68, // TC_YELLOW - 95, // TC_DARK_GREEN - 79, // TC_CREAM - 116, // TC_BROWN - 15, // TC_WHITE - 152, // TC_LIGHT_BLUE - 6, // TC_GREY - 133, // TC_DARK_BLUE - 1, // TC_BLACK -}; diff --git a/src/table/settings.ini b/src/table/settings.ini index 5bd2059806..7ee500507a 100644 --- a/src/table/settings.ini +++ b/src/table/settings.ini @@ -1,4 +1,4 @@ -; $Id: settings.ini 27163 2015-02-22 15:26:27Z frosch $ +; $Id: settings.ini 27231 2015-04-11 18:45:18Z alberth $ ; ; This file is part of OpenTTD. ; OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. @@ -2178,8 +2178,8 @@ type = SLE_UINT8 from = 30 guiflags = SGF_MULTISTRING | SGF_NEWGAME_ONLY def = 1 -min = 0 -max = 3 +min = TGEN_SMOOTHNESS_BEGIN +max = TGEN_SMOOTHNESS_END - 1 str = STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN strhelp = STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT strval = STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH diff --git a/src/table/strgen_tables.h b/src/table/strgen_tables.h index 0dde61155b..5690a12e60 100644 --- a/src/table/strgen_tables.h +++ b/src/table/strgen_tables.h @@ -1,4 +1,4 @@ -/* $Id: strgen_tables.h 26050 2013-11-22 21:43:47Z rubidium $ */ +/* $Id: strgen_tables.h 27295 2015-05-28 17:26:53Z frosch $ */ /* * This file is part of OpenTTD. @@ -27,6 +27,7 @@ struct CmdStruct { ParseCmdProc proc; long value; uint8 consumes; + int8 default_plural_offset; CmdFlags flags; }; @@ -36,115 +37,115 @@ extern void EmitGender(Buffer *buffer, char *buf, int value); static const CmdStruct _cmd_structs[] = { /* Font size */ - {"TINY_FONT", EmitSingleChar, SCC_TINYFONT, 0, C_NONE}, - {"BIG_FONT", EmitSingleChar, SCC_BIGFONT, 0, C_NONE}, + {"TINY_FONT", EmitSingleChar, SCC_TINYFONT, 0, -1, C_NONE}, + {"BIG_FONT", EmitSingleChar, SCC_BIGFONT, 0, -1, C_NONE}, /* Colours */ - {"BLUE", EmitSingleChar, SCC_BLUE, 0, C_DONTCOUNT}, - {"SILVER", EmitSingleChar, SCC_SILVER, 0, C_DONTCOUNT}, - {"GOLD", EmitSingleChar, SCC_GOLD, 0, C_DONTCOUNT}, - {"RED", EmitSingleChar, SCC_RED, 0, C_DONTCOUNT}, - {"PURPLE", EmitSingleChar, SCC_PURPLE, 0, C_DONTCOUNT}, - {"LTBROWN", EmitSingleChar, SCC_LTBROWN, 0, C_DONTCOUNT}, - {"ORANGE", EmitSingleChar, SCC_ORANGE, 0, C_DONTCOUNT}, - {"GREEN", EmitSingleChar, SCC_GREEN, 0, C_DONTCOUNT}, - {"YELLOW", EmitSingleChar, SCC_YELLOW, 0, C_DONTCOUNT}, - {"DKGREEN", EmitSingleChar, SCC_DKGREEN, 0, C_DONTCOUNT}, - {"CREAM", EmitSingleChar, SCC_CREAM, 0, C_DONTCOUNT}, - {"BROWN", EmitSingleChar, SCC_BROWN, 0, C_DONTCOUNT}, - {"WHITE", EmitSingleChar, SCC_WHITE, 0, C_DONTCOUNT}, - {"LTBLUE", EmitSingleChar, SCC_LTBLUE, 0, C_DONTCOUNT}, - {"GRAY", EmitSingleChar, SCC_GRAY, 0, C_DONTCOUNT}, - {"DKBLUE", EmitSingleChar, SCC_DKBLUE, 0, C_DONTCOUNT}, - {"BLACK", EmitSingleChar, SCC_BLACK, 0, C_DONTCOUNT}, + {"BLUE", EmitSingleChar, SCC_BLUE, 0, -1, C_DONTCOUNT}, + {"SILVER", EmitSingleChar, SCC_SILVER, 0, -1, C_DONTCOUNT}, + {"GOLD", EmitSingleChar, SCC_GOLD, 0, -1, C_DONTCOUNT}, + {"RED", EmitSingleChar, SCC_RED, 0, -1, C_DONTCOUNT}, + {"PURPLE", EmitSingleChar, SCC_PURPLE, 0, -1, C_DONTCOUNT}, + {"LTBROWN", EmitSingleChar, SCC_LTBROWN, 0, -1, C_DONTCOUNT}, + {"ORANGE", EmitSingleChar, SCC_ORANGE, 0, -1, C_DONTCOUNT}, + {"GREEN", EmitSingleChar, SCC_GREEN, 0, -1, C_DONTCOUNT}, + {"YELLOW", EmitSingleChar, SCC_YELLOW, 0, -1, C_DONTCOUNT}, + {"DKGREEN", EmitSingleChar, SCC_DKGREEN, 0, -1, C_DONTCOUNT}, + {"CREAM", EmitSingleChar, SCC_CREAM, 0, -1, C_DONTCOUNT}, + {"BROWN", EmitSingleChar, SCC_BROWN, 0, -1, C_DONTCOUNT}, + {"WHITE", EmitSingleChar, SCC_WHITE, 0, -1, C_DONTCOUNT}, + {"LTBLUE", EmitSingleChar, SCC_LTBLUE, 0, -1, C_DONTCOUNT}, + {"GRAY", EmitSingleChar, SCC_GRAY, 0, -1, C_DONTCOUNT}, + {"DKBLUE", EmitSingleChar, SCC_DKBLUE, 0, -1, C_DONTCOUNT}, + {"BLACK", EmitSingleChar, SCC_BLACK, 0, -1, C_DONTCOUNT}, - {"REV", EmitSingleChar, SCC_REVISION, 0, C_NONE}, // openttd revision string + {"REV", EmitSingleChar, SCC_REVISION, 0, -1, C_NONE}, // openttd revision string - {"STRING1", EmitSingleChar, SCC_STRING1, 2, C_CASE | C_GENDER}, // included string that consumes the string id and ONE argument - {"STRING2", EmitSingleChar, SCC_STRING2, 3, C_CASE | C_GENDER}, // included string that consumes the string id and TWO arguments - {"STRING3", EmitSingleChar, SCC_STRING3, 4, C_CASE | C_GENDER}, // included string that consumes the string id and THREE arguments - {"STRING4", EmitSingleChar, SCC_STRING4, 5, C_CASE | C_GENDER}, // included string that consumes the string id and FOUR arguments - {"STRING5", EmitSingleChar, SCC_STRING5, 6, C_CASE | C_GENDER}, // included string that consumes the string id and FIVE arguments - {"STRING6", EmitSingleChar, SCC_STRING6, 7, C_CASE | C_GENDER}, // included string that consumes the string id and SIX arguments - {"STRING7", EmitSingleChar, SCC_STRING7, 8, C_CASE | C_GENDER}, // included string that consumes the string id and SEVEN arguments + {"STRING1", EmitSingleChar, SCC_STRING1, 2, -1, C_CASE | C_GENDER}, // included string that consumes the string id and ONE argument + {"STRING2", EmitSingleChar, SCC_STRING2, 3, -1, C_CASE | C_GENDER}, // included string that consumes the string id and TWO arguments + {"STRING3", EmitSingleChar, SCC_STRING3, 4, -1, C_CASE | C_GENDER}, // included string that consumes the string id and THREE arguments + {"STRING4", EmitSingleChar, SCC_STRING4, 5, -1, C_CASE | C_GENDER}, // included string that consumes the string id and FOUR arguments + {"STRING5", EmitSingleChar, SCC_STRING5, 6, -1, C_CASE | C_GENDER}, // included string that consumes the string id and FIVE arguments + {"STRING6", EmitSingleChar, SCC_STRING6, 7, -1, C_CASE | C_GENDER}, // included string that consumes the string id and SIX arguments + {"STRING7", EmitSingleChar, SCC_STRING7, 8, -1, C_CASE | C_GENDER}, // included string that consumes the string id and SEVEN arguments - {"STATION_FEATURES", EmitSingleChar, SCC_STATION_FEATURES, 1, C_NONE}, // station features string, icons of the features - {"INDUSTRY", EmitSingleChar, SCC_INDUSTRY_NAME, 1, C_CASE | C_GENDER}, // industry, takes an industry #, can have cases - {"CARGO_LONG", EmitSingleChar, SCC_CARGO_LONG, 2, C_NONE | C_GENDER}, - {"CARGO_SHORT", EmitSingleChar, SCC_CARGO_SHORT, 2, C_NONE}, // short cargo description, only ### tons, or ### litres - {"CARGO_TINY", EmitSingleChar, SCC_CARGO_TINY, 2, C_NONE}, // tiny cargo description with only the amount, not a specifier for the amount or the actual cargo name - {"CARGO_LIST", EmitSingleChar, SCC_CARGO_LIST, 1, C_CASE}, - {"POWER", EmitSingleChar, SCC_POWER, 1, C_NONE}, - {"VOLUME_LONG", EmitSingleChar, SCC_VOLUME_LONG, 1, C_NONE}, - {"VOLUME_SHORT", EmitSingleChar, SCC_VOLUME_SHORT, 1, C_NONE}, - {"WEIGHT_LONG", EmitSingleChar, SCC_WEIGHT_LONG, 1, C_NONE}, - {"WEIGHT_SHORT", EmitSingleChar, SCC_WEIGHT_SHORT, 1, C_NONE}, - {"FORCE", EmitSingleChar, SCC_FORCE, 1, C_NONE}, - {"VELOCITY", EmitSingleChar, SCC_VELOCITY, 1, C_NONE}, - {"HEIGHT", EmitSingleChar, SCC_HEIGHT, 1, C_NONE}, + {"STATION_FEATURES", EmitSingleChar, SCC_STATION_FEATURES, 1, -1, C_NONE}, // station features string, icons of the features + {"INDUSTRY", EmitSingleChar, SCC_INDUSTRY_NAME, 1, -1, C_CASE | C_GENDER}, // industry, takes an industry #, can have cases + {"CARGO_LONG", EmitSingleChar, SCC_CARGO_LONG, 2, 1, C_NONE | C_GENDER}, + {"CARGO_SHORT", EmitSingleChar, SCC_CARGO_SHORT, 2, 1, C_NONE}, // short cargo description, only ### tons, or ### litres + {"CARGO_TINY", EmitSingleChar, SCC_CARGO_TINY, 2, 1, C_NONE}, // tiny cargo description with only the amount, not a specifier for the amount or the actual cargo name + {"CARGO_LIST", EmitSingleChar, SCC_CARGO_LIST, 1, -1, C_CASE}, + {"POWER", EmitSingleChar, SCC_POWER, 1, 0, C_NONE}, + {"VOLUME_LONG", EmitSingleChar, SCC_VOLUME_LONG, 1, 0, C_NONE}, + {"VOLUME_SHORT", EmitSingleChar, SCC_VOLUME_SHORT, 1, 0, C_NONE}, + {"WEIGHT_LONG", EmitSingleChar, SCC_WEIGHT_LONG, 1, 0, C_NONE}, + {"WEIGHT_SHORT", EmitSingleChar, SCC_WEIGHT_SHORT, 1, 0, C_NONE}, + {"FORCE", EmitSingleChar, SCC_FORCE, 1, 0, C_NONE}, + {"VELOCITY", EmitSingleChar, SCC_VELOCITY, 1, 0, C_NONE}, + {"HEIGHT", EmitSingleChar, SCC_HEIGHT, 1, 0, C_NONE}, - {"P", EmitPlural, 0, 0, C_DONTCOUNT}, // plural specifier - {"G", EmitGender, 0, 0, C_DONTCOUNT}, // gender specifier + {"P", EmitPlural, 0, 0, -1, C_DONTCOUNT}, // plural specifier + {"G", EmitGender, 0, 0, -1, C_DONTCOUNT}, // gender specifier - {"DATE_TINY", EmitSingleChar, SCC_DATE_TINY, 1, C_NONE}, - {"DATE_SHORT", EmitSingleChar, SCC_DATE_SHORT, 1, C_CASE}, - {"DATE_LONG", EmitSingleChar, SCC_DATE_LONG, 1, C_CASE}, - {"DATE_ISO", EmitSingleChar, SCC_DATE_ISO, 1, C_NONE}, + {"DATE_TINY", EmitSingleChar, SCC_DATE_TINY, 1, -1, C_NONE}, + {"DATE_SHORT", EmitSingleChar, SCC_DATE_SHORT, 1, -1, C_CASE}, + {"DATE_LONG", EmitSingleChar, SCC_DATE_LONG, 1, -1, C_CASE}, + {"DATE_ISO", EmitSingleChar, SCC_DATE_ISO, 1, -1, C_NONE}, - {"STRING", EmitSingleChar, SCC_STRING, 1, C_CASE | C_GENDER}, - {"RAW_STRING", EmitSingleChar, SCC_RAW_STRING_POINTER, 1, C_NONE | C_GENDER}, + {"STRING", EmitSingleChar, SCC_STRING, 1, -1, C_CASE | C_GENDER}, + {"RAW_STRING", EmitSingleChar, SCC_RAW_STRING_POINTER, 1, -1, C_NONE | C_GENDER}, /* Numbers */ - {"COMMA", EmitSingleChar, SCC_COMMA, 1, C_NONE}, // Number with comma - {"DECIMAL", EmitSingleChar, SCC_DECIMAL, 2, C_NONE}, // Number with comma and fractional part. Second parameter is number of fractional digits, first parameter is number times 10**(second parameter). - {"NUM", EmitSingleChar, SCC_NUM, 1, C_NONE}, // Signed number - {"ZEROFILL_NUM", EmitSingleChar, SCC_ZEROFILL_NUM, 2, C_NONE}, // Unsigned number with zero fill, e.g. "02". First parameter is number, second minimum length - {"BYTES", EmitSingleChar, SCC_BYTES, 1, C_NONE}, // Unsigned number with "bytes", i.e. "1.02 MiB or 123 KiB" - {"HEX", EmitSingleChar, SCC_HEX, 1, C_NONE}, // Hexadecimally printed number + {"COMMA", EmitSingleChar, SCC_COMMA, 1, 0, C_NONE}, // Number with comma + {"DECIMAL", EmitSingleChar, SCC_DECIMAL, 2, 0, C_NONE}, // Number with comma and fractional part. Second parameter is number of fractional digits, first parameter is number times 10**(second parameter). + {"NUM", EmitSingleChar, SCC_NUM, 1, 0, C_NONE}, // Signed number + {"ZEROFILL_NUM", EmitSingleChar, SCC_ZEROFILL_NUM, 2, 0, C_NONE}, // Unsigned number with zero fill, e.g. "02". First parameter is number, second minimum length + {"BYTES", EmitSingleChar, SCC_BYTES, 1, 0, C_NONE}, // Unsigned number with "bytes", i.e. "1.02 MiB or 123 KiB" + {"HEX", EmitSingleChar, SCC_HEX, 1, 0, C_NONE}, // Hexadecimally printed number - {"CURRENCY_LONG", EmitSingleChar, SCC_CURRENCY_LONG, 1, C_NONE}, - {"CURRENCY_SHORT", EmitSingleChar, SCC_CURRENCY_SHORT, 1, C_NONE}, // compact currency + {"CURRENCY_LONG", EmitSingleChar, SCC_CURRENCY_LONG, 1, 0, C_NONE}, + {"CURRENCY_SHORT", EmitSingleChar, SCC_CURRENCY_SHORT, 1, 0, C_NONE}, // compact currency - {"WAYPOINT", EmitSingleChar, SCC_WAYPOINT_NAME, 1, C_NONE | C_GENDER}, // waypoint name - {"STATION", EmitSingleChar, SCC_STATION_NAME, 1, C_NONE | C_GENDER}, - {"DEPOT", EmitSingleChar, SCC_DEPOT_NAME, 2, C_NONE | C_GENDER}, - {"TOWN", EmitSingleChar, SCC_TOWN_NAME, 1, C_NONE | C_GENDER}, - {"GROUP", EmitSingleChar, SCC_GROUP_NAME, 1, C_NONE | C_GENDER}, - {"SIGN", EmitSingleChar, SCC_SIGN_NAME, 1, C_NONE | C_GENDER}, - {"ENGINE", EmitSingleChar, SCC_ENGINE_NAME, 1, C_NONE | C_GENDER}, - {"VEHICLE", EmitSingleChar, SCC_VEHICLE_NAME, 1, C_NONE | C_GENDER}, - {"COMPANY", EmitSingleChar, SCC_COMPANY_NAME, 1, C_NONE | C_GENDER}, - {"COMPANY_NUM", EmitSingleChar, SCC_COMPANY_NUM, 1, C_NONE}, - {"PRESIDENT_NAME", EmitSingleChar, SCC_PRESIDENT_NAME, 1, C_NONE | C_GENDER}, + {"WAYPOINT", EmitSingleChar, SCC_WAYPOINT_NAME, 1, -1, C_NONE | C_GENDER}, // waypoint name + {"STATION", EmitSingleChar, SCC_STATION_NAME, 1, -1, C_NONE | C_GENDER}, + {"DEPOT", EmitSingleChar, SCC_DEPOT_NAME, 2, -1, C_NONE | C_GENDER}, + {"TOWN", EmitSingleChar, SCC_TOWN_NAME, 1, -1, C_NONE | C_GENDER}, + {"GROUP", EmitSingleChar, SCC_GROUP_NAME, 1, -1, C_NONE | C_GENDER}, + {"SIGN", EmitSingleChar, SCC_SIGN_NAME, 1, -1, C_NONE | C_GENDER}, + {"ENGINE", EmitSingleChar, SCC_ENGINE_NAME, 1, -1, C_NONE | C_GENDER}, + {"VEHICLE", EmitSingleChar, SCC_VEHICLE_NAME, 1, -1, C_NONE | C_GENDER}, + {"COMPANY", EmitSingleChar, SCC_COMPANY_NAME, 1, -1, C_NONE | C_GENDER}, + {"COMPANY_NUM", EmitSingleChar, SCC_COMPANY_NUM, 1, -1, C_NONE}, + {"PRESIDENT_NAME", EmitSingleChar, SCC_PRESIDENT_NAME, 1, -1, C_NONE | C_GENDER}, - {"", EmitSingleChar, '\n', 0, C_DONTCOUNT}, - {"{", EmitSingleChar, '{', 0, C_DONTCOUNT}, - {"UP_ARROW", EmitSingleChar, SCC_UP_ARROW, 0, C_DONTCOUNT}, - {"SMALL_UP_ARROW", EmitSingleChar, SCC_SMALL_UP_ARROW, 0, C_DONTCOUNT}, - {"SMALL_DOWN_ARROW", EmitSingleChar, SCC_SMALL_DOWN_ARROW, 0, C_DONTCOUNT}, - {"TRAIN", EmitSingleChar, SCC_TRAIN, 0, C_DONTCOUNT}, - {"LORRY", EmitSingleChar, SCC_LORRY, 0, C_DONTCOUNT}, - {"BUS", EmitSingleChar, SCC_BUS, 0, C_DONTCOUNT}, - {"PLANE", EmitSingleChar, SCC_PLANE, 0, C_DONTCOUNT}, - {"SHIP", EmitSingleChar, SCC_SHIP, 0, C_DONTCOUNT}, - {"NBSP", EmitSingleChar, 0xA0, 0, C_DONTCOUNT}, - {"COPYRIGHT", EmitSingleChar, 0xA9, 0, C_DONTCOUNT}, - {"DOWN_ARROW", EmitSingleChar, SCC_DOWN_ARROW, 0, C_DONTCOUNT}, - {"CHECKMARK", EmitSingleChar, SCC_CHECKMARK, 0, C_DONTCOUNT}, - {"CROSS", EmitSingleChar, SCC_CROSS, 0, C_DONTCOUNT}, - {"RIGHT_ARROW", EmitSingleChar, SCC_RIGHT_ARROW, 0, C_DONTCOUNT}, - {"SMALL_LEFT_ARROW", EmitSingleChar, SCC_LESS_THAN, 0, C_DONTCOUNT}, - {"SMALL_RIGHT_ARROW", EmitSingleChar, SCC_GREATER_THAN, 0, C_DONTCOUNT}, + {"", EmitSingleChar, '\n', 0, -1, C_DONTCOUNT}, + {"{", EmitSingleChar, '{', 0, -1, C_DONTCOUNT}, + {"UP_ARROW", EmitSingleChar, SCC_UP_ARROW, 0, -1, C_DONTCOUNT}, + {"SMALL_UP_ARROW", EmitSingleChar, SCC_SMALL_UP_ARROW, 0, -1, C_DONTCOUNT}, + {"SMALL_DOWN_ARROW", EmitSingleChar, SCC_SMALL_DOWN_ARROW, 0, -1, C_DONTCOUNT}, + {"TRAIN", EmitSingleChar, SCC_TRAIN, 0, -1, C_DONTCOUNT}, + {"LORRY", EmitSingleChar, SCC_LORRY, 0, -1, C_DONTCOUNT}, + {"BUS", EmitSingleChar, SCC_BUS, 0, -1, C_DONTCOUNT}, + {"PLANE", EmitSingleChar, SCC_PLANE, 0, -1, C_DONTCOUNT}, + {"SHIP", EmitSingleChar, SCC_SHIP, 0, -1, C_DONTCOUNT}, + {"NBSP", EmitSingleChar, 0xA0, 0, -1, C_DONTCOUNT}, + {"COPYRIGHT", EmitSingleChar, 0xA9, 0, -1, C_DONTCOUNT}, + {"DOWN_ARROW", EmitSingleChar, SCC_DOWN_ARROW, 0, -1, C_DONTCOUNT}, + {"CHECKMARK", EmitSingleChar, SCC_CHECKMARK, 0, -1, C_DONTCOUNT}, + {"CROSS", EmitSingleChar, SCC_CROSS, 0, -1, C_DONTCOUNT}, + {"RIGHT_ARROW", EmitSingleChar, SCC_RIGHT_ARROW, 0, -1, C_DONTCOUNT}, + {"SMALL_LEFT_ARROW", EmitSingleChar, SCC_LESS_THAN, 0, -1, C_DONTCOUNT}, + {"SMALL_RIGHT_ARROW", EmitSingleChar, SCC_GREATER_THAN, 0, -1, C_DONTCOUNT}, /* The following are directional formatting codes used to get the RTL strings right: * http://www.unicode.org/unicode/reports/tr9/#Directional_Formatting_Codes */ - {"LRM", EmitSingleChar, CHAR_TD_LRM, 0, C_DONTCOUNT}, - {"RLM", EmitSingleChar, CHAR_TD_RLM, 0, C_DONTCOUNT}, - {"LRE", EmitSingleChar, CHAR_TD_LRE, 0, C_DONTCOUNT}, - {"RLE", EmitSingleChar, CHAR_TD_RLE, 0, C_DONTCOUNT}, - {"LRO", EmitSingleChar, CHAR_TD_LRO, 0, C_DONTCOUNT}, - {"RLO", EmitSingleChar, CHAR_TD_RLO, 0, C_DONTCOUNT}, - {"PDF", EmitSingleChar, CHAR_TD_PDF, 0, C_DONTCOUNT}, + {"LRM", EmitSingleChar, CHAR_TD_LRM, 0, -1, C_DONTCOUNT}, + {"RLM", EmitSingleChar, CHAR_TD_RLM, 0, -1, C_DONTCOUNT}, + {"LRE", EmitSingleChar, CHAR_TD_LRE, 0, -1, C_DONTCOUNT}, + {"RLE", EmitSingleChar, CHAR_TD_RLE, 0, -1, C_DONTCOUNT}, + {"LRO", EmitSingleChar, CHAR_TD_LRO, 0, -1, C_DONTCOUNT}, + {"RLO", EmitSingleChar, CHAR_TD_RLO, 0, -1, C_DONTCOUNT}, + {"PDF", EmitSingleChar, CHAR_TD_PDF, 0, -1, C_DONTCOUNT}, }; /** Description of a plural form */ diff --git a/src/terraform_cmd.cpp b/src/terraform_cmd.cpp index 3810a07b4e..8fd31bda6e 100644 --- a/src/terraform_cmd.cpp +++ b/src/terraform_cmd.cpp @@ -1,4 +1,4 @@ -/* $Id: terraform_cmd.cpp 26902 2014-09-21 17:37:30Z rubidium $ */ +/* $Id: terraform_cmd.cpp 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -403,7 +403,7 @@ CommandCost CmdTerraformLand(TileIndex tile, DoCommandFlag flags, uint32 p1, uin } } - if (c != NULL) c->terraform_limit -= ts.tile_to_new_height.size() << 16; + if (c != NULL) c->terraform_limit -= (uint32)ts.tile_to_new_height.size() << 16; } return total_cost; } diff --git a/src/terraform_gui.cpp b/src/terraform_gui.cpp index fe1b52459e..16bb830610 100644 --- a/src/terraform_gui.cpp +++ b/src/terraform_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: terraform_gui.cpp 27134 2015-02-01 20:54:24Z frosch $ */ +/* $Id: terraform_gui.cpp 27397 2015-09-13 12:04:47Z alberth $ */ /* * This file is part of OpenTTD. @@ -210,12 +210,7 @@ struct TerraformToolbarWindow : Window { break; case WID_TT_PLACE_OBJECT: // Place object button - /* Don't show the place object button when there are no objects to place. */ - if (ObjectClass::GetUIClassCount() == 0) return; - if (HandlePlacePushButton(this, WID_TT_PLACE_OBJECT, SPR_CURSOR_TRANSMITTER, HT_RECT)) { - ShowBuildObjectPicker(this); - this->last_user_action = widget; - } + ShowBuildObjectPicker(); break; default: NOT_REACHED(); @@ -249,10 +244,6 @@ struct TerraformToolbarWindow : Window { PlaceProc_Sign(tile); break; - case WID_TT_PLACE_OBJECT: // Place object button - PlaceProc_Object(tile); - break; - default: NOT_REACHED(); } } @@ -286,7 +277,6 @@ struct TerraformToolbarWindow : Window { virtual void OnPlaceObjectAbort() { - DeleteWindowById(WC_BUILD_OBJECT, 0); this->RaiseButtons(); } @@ -344,7 +334,7 @@ static const NWidgetPart _nested_terraform_widgets[] = { NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_TT_PLACE_SIGN), SetMinimalSize(22, 22), SetFill(0, 1), SetDataTip(SPR_IMG_SIGN, STR_SCENEDIT_TOOLBAR_PLACE_SIGN), NWidget(NWID_SELECTION, INVALID_COLOUR, WID_TT_SHOW_PLACE_OBJECT), - NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_TT_PLACE_OBJECT), SetMinimalSize(22, 22), + NWidget(WWT_PUSHIMGBTN, COLOUR_DARK_GREEN, WID_TT_PLACE_OBJECT), SetMinimalSize(22, 22), SetFill(0, 1), SetDataTip(SPR_IMG_TRANSMITTER, STR_SCENEDIT_TOOLBAR_PLACE_OBJECT), EndContainer(), EndContainer(), @@ -472,7 +462,7 @@ static const NWidgetPart _nested_scen_edit_land_gen_widgets[] = { NWidget(WWT_IMGBTN, COLOUR_GREY, WID_ETT_PLACE_DESERT), SetMinimalSize(22, 22), SetFill(0, 1), SetDataTip(SPR_IMG_DESERT, STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA), EndContainer(), - NWidget(WWT_IMGBTN, COLOUR_GREY, WID_ETT_PLACE_OBJECT), SetMinimalSize(23, 22), + NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_ETT_PLACE_OBJECT), SetMinimalSize(23, 22), SetFill(0, 1), SetDataTip(SPR_IMG_TRANSMITTER, STR_SCENEDIT_TOOLBAR_PLACE_OBJECT), NWidget(NWID_SPACER), SetFill(1, 0), EndContainer(), @@ -616,10 +606,7 @@ struct ScenarioEditorLandscapeGenerationWindow : Window { break; case WID_ETT_PLACE_OBJECT: // Place transmitter button - if (HandlePlacePushButton(this, WID_ETT_PLACE_OBJECT, SPR_CURSOR_TRANSMITTER, HT_RECT)) { - ShowBuildObjectPicker(this); - this->last_user_action = widget; - } + ShowBuildObjectPicker(); break; case WID_ETT_INCREASE_SIZE: @@ -687,10 +674,6 @@ struct ScenarioEditorLandscapeGenerationWindow : Window { VpStartPlaceSizing(tile, VPM_X_AND_Y, DDSP_CREATE_DESERT); break; - case WID_ETT_PLACE_OBJECT: // Place transmitter button - PlaceProc_Object(tile); - break; - default: NOT_REACHED(); } } @@ -721,7 +704,6 @@ struct ScenarioEditorLandscapeGenerationWindow : Window { { this->RaiseButtons(); this->SetDirty(); - DeleteWindowById(WC_BUILD_OBJECT, 0); } static HotkeyList hotkeys; diff --git a/src/texteff.cpp b/src/texteff.cpp index 5239b09b67..bd56cdbefb 100644 --- a/src/texteff.cpp +++ b/src/texteff.cpp @@ -1,4 +1,4 @@ -/* $Id: texteff.cpp 27271 2015-05-08 17:30:07Z frosch $ */ +/* $Id: texteff.cpp 27248 2015-04-25 11:58:19Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/textfile_gui.cpp b/src/textfile_gui.cpp index 695f5a852a..86ab111832 100644 --- a/src/textfile_gui.cpp +++ b/src/textfile_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: textfile_gui.cpp 27035 2014-10-23 10:49:19Z matthijs $ */ +/* $Id: textfile_gui.cpp 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -227,7 +227,7 @@ static void Gunzip(byte **bufp, size_t *sizep) memset(&z, 0, sizeof(z)); z.next_in = *bufp; - z.avail_in = *sizep; + z.avail_in = (uInt)*sizep; /* window size = 15, add 32 to enable gzip or zlib header processing */ res = inflateInit2(&z, 15 + 32); diff --git a/src/tgp.cpp b/src/tgp.cpp index 55f8242e22..ad3fc96949 100644 --- a/src/tgp.cpp +++ b/src/tgp.cpp @@ -1,4 +1,4 @@ -/* $Id: tgp.cpp 27351 2015-07-30 18:53:31Z frosch $ */ +/* $Id: tgp.cpp 27334 2015-07-16 17:05:40Z frosch $ */ /* * This file is part of OpenTTD. @@ -155,7 +155,6 @@ /** Fixed point type for heights */ typedef int16 height_t; static const int height_decimal_bits = 4; -static const height_t _invalid_height = -32768; /** Fixed point array for amplitudes (and percent values) */ typedef int amplitude_t; @@ -208,12 +207,13 @@ static HeightMap _height_map = {NULL, 0, 0, 0, 0}; static const int MAX_TGP_FREQUENCIES = 10; /** Desired water percentage (100% == 1024) - indexed by _settings_game.difficulty.quantity_sea_lakes */ -static const amplitude_t _water_percent[4] = {20, 80, 250, 400}; +static const amplitude_t _water_percent[4] = {70, 170, 270, 420}; /** * Gets the maximum allowed height while generating a map based on * mapsize, terraintype, and the maximum height level. * @return The maximum height for the map generation. + * @note Values should never be lower than 3 since the minimum snowline height is 2. */ static height_t TGPGetMaxHeight() { @@ -229,11 +229,11 @@ static height_t TGPGetMaxHeight() */ static const int max_height[5][MAX_MAP_SIZE_BITS - MIN_MAP_SIZE_BITS + 1] = { /* 64 128 256 512 1024 2048 4096 */ - { 3, 3, 5, 5, 5, 5, 5 }, ///< Very flat - { 4, 4, 6, 10, 10, 10, 10 }, ///< Flat - { 6, 9, 15, 25, 31, 31, 31 }, ///< Hilly - { 7, 12, 23, 42, 78, 85, 85 }, ///< Mountainous - { 12, 21, 36, 73, 146, 170, 170 } ///< Alpinist + { 3, 3, 3, 3, 4, 5, 7 }, ///< Very flat + { 5, 7, 8, 9, 14, 19, 31 }, ///< Flat + { 8, 9, 10, 15, 23, 37, 61 }, ///< Hilly + { 10, 11, 17, 19, 49, 63, 73 }, ///< Mountainous + { 12, 19, 25, 31, 67, 75, 87 }, ///< Alpinist }; int max_height_from_table = max_height[_settings_game.difficulty.terrain_type][min(MapLogX(), MapLogY()) - MIN_MAP_SIZE_BITS]; @@ -315,8 +315,8 @@ static inline bool AllocHeightMap() _height_map.dim_x = _height_map.size_x + 1; _height_map.h = CallocT(_height_map.total_size); - /* Iterate through height map initialize values */ - FOR_ALL_TILES_IN_HEIGHT(h) *h = _invalid_height; + /* Iterate through height map and initialise values. */ + FOR_ALL_TILES_IN_HEIGHT(h) *h = 0; return true; } @@ -738,7 +738,7 @@ static void HeightMapCoastLines(uint8 water_borders) if (HasBit(water_borders, BORDER_NE)) { /* Top right */ max_x = abs((perlin_coast_noise_2D(_height_map.size_y - y, y, 0.9, 53) + 0.25) * 5 + (perlin_coast_noise_2D(y, y, 0.35, 179) + 1) * 12); - max_x = max((smallest_size * smallest_size / 16) + max_x, (smallest_size * smallest_size / 16) + margin - max_x); + max_x = max((smallest_size * smallest_size / 64) + max_x, (smallest_size * smallest_size / 64) + margin - max_x); if (smallest_size < 8 && max_x > 5) max_x /= 1.5; for (x = 0; x < max_x; x++) { _height_map.height(x, y) = 0; @@ -748,7 +748,7 @@ static void HeightMapCoastLines(uint8 water_borders) if (HasBit(water_borders, BORDER_SW)) { /* Bottom left */ max_x = abs((perlin_coast_noise_2D(_height_map.size_y - y, y, 0.85, 101) + 0.3) * 6 + (perlin_coast_noise_2D(y, y, 0.45, 67) + 0.75) * 8); - max_x = max((smallest_size * smallest_size / 16) + max_x, (smallest_size * smallest_size / 16) + margin - max_x); + max_x = max((smallest_size * smallest_size / 64) + max_x, (smallest_size * smallest_size / 64) + margin - max_x); if (smallest_size < 8 && max_x > 5) max_x /= 1.5; for (x = _height_map.size_x; x > (_height_map.size_x - 1 - max_x); x--) { _height_map.height(x, y) = 0; @@ -761,7 +761,7 @@ static void HeightMapCoastLines(uint8 water_borders) if (HasBit(water_borders, BORDER_NW)) { /* Top left */ max_y = abs((perlin_coast_noise_2D(x, _height_map.size_y / 2, 0.9, 167) + 0.4) * 5 + (perlin_coast_noise_2D(x, _height_map.size_y / 3, 0.4, 211) + 0.7) * 9); - max_y = max((smallest_size * smallest_size / 16) + max_y, (smallest_size * smallest_size / 16) + margin - max_y); + max_y = max((smallest_size * smallest_size / 64) + max_y, (smallest_size * smallest_size / 64) + margin - max_y); if (smallest_size < 8 && max_y > 5) max_y /= 1.5; for (y = 0; y < max_y; y++) { _height_map.height(x, y) = 0; @@ -771,7 +771,7 @@ static void HeightMapCoastLines(uint8 water_borders) if (HasBit(water_borders, BORDER_SE)) { /* Bottom right */ max_y = abs((perlin_coast_noise_2D(x, _height_map.size_y / 3, 0.85, 71) + 0.25) * 6 + (perlin_coast_noise_2D(x, _height_map.size_y / 3, 0.35, 193) + 0.75) * 12); - max_y = max((smallest_size * smallest_size / 16) + max_y, (smallest_size * smallest_size / 16) + margin - max_y); + max_y = max((smallest_size * smallest_size / 64) + max_y, (smallest_size * smallest_size / 64) + margin - max_y); if (smallest_size < 8 && max_y > 5) max_y /= 1.5; for (y = _height_map.size_y; y > (_height_map.size_y - 1 - max_y); y--) { _height_map.height(x, y) = 0; diff --git a/src/timetable_cmd.cpp b/src/timetable_cmd.cpp index f322acc64a..391cf3cd11 100644 --- a/src/timetable_cmd.cpp +++ b/src/timetable_cmd.cpp @@ -1,4 +1,4 @@ -/* $Id: timetable_cmd.cpp 27348 2015-07-30 18:45:29Z frosch $ */ +/* $Id: timetable_cmd.cpp 27302 2015-06-20 12:04:30Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/town_cmd.cpp b/src/town_cmd.cpp index db5345c1b9..7b0c01bc9a 100644 --- a/src/town_cmd.cpp +++ b/src/town_cmd.cpp @@ -1,4 +1,4 @@ -/* $Id: town_cmd.cpp 27432 2015-11-01 12:03:13Z frosch $ */ +/* $Id: town_cmd.cpp 27423 2015-10-30 17:17:54Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/town_gui.cpp b/src/town_gui.cpp index 2158085c38..24ec296ccd 100644 --- a/src/town_gui.cpp +++ b/src/town_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: town_gui.cpp 27351 2015-07-30 18:53:31Z frosch $ */ +/* $Id: town_gui.cpp 27341 2015-07-26 09:56:43Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/train_cmd.cpp b/src/train_cmd.cpp index 6ed109d6e2..7effba2894 100644 --- a/src/train_cmd.cpp +++ b/src/train_cmd.cpp @@ -1,4 +1,4 @@ -/* $Id: train_cmd.cpp 27431 2015-11-01 11:59:17Z frosch $ */ +/* $Id: train_cmd.cpp 27419 2015-10-30 16:18:39Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/tree_cmd.cpp b/src/tree_cmd.cpp index c5d22a54a2..132fa2aaa6 100644 --- a/src/tree_cmd.cpp +++ b/src/tree_cmd.cpp @@ -1,4 +1,4 @@ -/* $Id: tree_cmd.cpp 26482 2014-04-23 20:13:33Z rubidium $ */ +/* $Id: tree_cmd.cpp 27406 2015-09-30 17:28:58Z frosch $ */ /* * This file is part of OpenTTD. @@ -325,10 +325,10 @@ void GenerateTrees() /** * Plant a tree. - * @param tile start tile of area-drag of tree plantation + * @param tile end tile of area-drag * @param flags type of operation * @param p1 tree type, TREE_INVALID means random. - * @param p2 end tile of area-drag + * @param p2 start tile of area-drag of tree plantation * @param text unused * @return the cost of this operation or an error */ diff --git a/src/tunnelbridge_cmd.cpp b/src/tunnelbridge_cmd.cpp index 101e7a1b24..bc459937f0 100644 --- a/src/tunnelbridge_cmd.cpp +++ b/src/tunnelbridge_cmd.cpp @@ -1,4 +1,4 @@ -/* $Id: tunnelbridge_cmd.cpp 27350 2015-07-30 18:50:39Z frosch $ */ +/* $Id: tunnelbridge_cmd.cpp 27313 2015-06-21 09:52:30Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/vehicle.cpp b/src/vehicle.cpp index 46bebeabf7..10ecdaedaf 100644 --- a/src/vehicle.cpp +++ b/src/vehicle.cpp @@ -1,4 +1,4 @@ -/* $Id: vehicle.cpp 27270 2015-05-08 17:23:55Z frosch $ */ +/* $Id: vehicle.cpp 27426 2015-10-30 17:24:05Z frosch $ */ /* * This file is part of OpenTTD. @@ -1290,6 +1290,9 @@ void AgeVehicle(Vehicle *v) * @param front The front vehicle of the consist to check. * @param colour The string to show depending on if we are unloading or loading * @return A percentage of how full the Vehicle is. + * Percentages are rounded towards 50%, so that 0% and 100% are only returned + * if the vehicle is completely empty or full. + * This is useful for both display and conditional orders. */ uint8 CalcPercentVehicleFilled(const Vehicle *front, StringID *colour) { @@ -1337,7 +1340,13 @@ uint8 CalcPercentVehicleFilled(const Vehicle *front, StringID *colour) if (max == 0) return 100; /* Return the percentage */ - return (count * 100) / max; + if (count * 2 < max) { + /* Less than 50%; round up, so that 0% means really empty. */ + return CeilDiv(count * 100, max); + } else { + /* More than 50%; round down, so that 100% means really full. */ + return (count * 100) / max; + } } /** diff --git a/src/vehicle_cmd.cpp b/src/vehicle_cmd.cpp index d58cdda73d..729be9badb 100644 --- a/src/vehicle_cmd.cpp +++ b/src/vehicle_cmd.cpp @@ -1,4 +1,4 @@ -/* $Id: vehicle_cmd.cpp 27432 2015-11-01 12:03:13Z frosch $ */ +/* $Id: vehicle_cmd.cpp 27428 2015-10-30 17:27:21Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/vehicle_gui.cpp b/src/vehicle_gui.cpp index efabc99a1b..d71edd9b0e 100644 --- a/src/vehicle_gui.cpp +++ b/src/vehicle_gui.cpp @@ -1,4 +1,4 @@ -/* $Id: vehicle_gui.cpp 27432 2015-11-01 12:03:13Z frosch $ */ +/* $Id: vehicle_gui.cpp 27428 2015-10-30 17:27:21Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/viewport.cpp b/src/viewport.cpp index a27bfaf90f..d7cac4e850 100644 --- a/src/viewport.cpp +++ b/src/viewport.cpp @@ -1,4 +1,4 @@ -/* $Id: viewport.cpp 27271 2015-05-08 17:30:07Z frosch $ */ +/* $Id: viewport.cpp 27344 2015-07-28 08:16:52Z alberth $ */ /* * This file is part of OpenTTD. @@ -88,7 +88,7 @@ #include #include "table/strings.h" -#include "table/palettes.h" +#include "table/string_colours.h" #include "safeguards.h" @@ -3141,6 +3141,13 @@ EventState VpHandlePlaceSizingDrag() return ES_HANDLED; } +/** + * Change the cursor and mouse click/drag handling to a mode for performing special operations like tile area selection, object placement, etc. + * @param icon New shape of the mouse cursor. + * @param pal Palette to use. + * @param mode Mode to perform. + * @param w %Window requesting the mode change. + */ void SetObjectToPlaceWnd(CursorID icon, PaletteID pal, HighLightStyle mode, Window *w) { SetObjectToPlace(icon, pal, mode, w->window_class, w->window_number); @@ -3148,6 +3155,14 @@ void SetObjectToPlaceWnd(CursorID icon, PaletteID pal, HighLightStyle mode, Wind #include "table/animcursors.h" +/** + * Change the cursor and mouse click/drag handling to a mode for performing special operations like tile area selection, object placement, etc. + * @param icon New shape of the mouse cursor. + * @param pal Palette to use. + * @param mode Mode to perform. + * @param window_class %Window class of the window requesting the mode change. + * @param window_num Number of the window in its class requesting the mode change. + */ void SetObjectToPlace(CursorID icon, PaletteID pal, HighLightStyle mode, WindowClass window_class, WindowNumber window_num) { if (_thd.window_class != WC_INVALID) { @@ -3192,6 +3207,7 @@ void SetObjectToPlace(CursorID icon, PaletteID pal, HighLightStyle mode, WindowC } +/** Reset the cursor and mouse mode handling back to default (normal cursor, only clicking in windows). */ void ResetObjectToPlace() { SetObjectToPlace(SPR_CURSOR_MOUSE, PAL_NONE, HT_NONE, WC_MAIN_WINDOW, 0); diff --git a/src/viewport_type.h b/src/viewport_type.h index defd3f52f0..6308c13c8a 100644 --- a/src/viewport_type.h +++ b/src/viewport_type.h @@ -1,4 +1,4 @@ -/* $Id: viewport_type.h 27271 2015-05-08 17:30:07Z frosch $ */ +/* $Id: viewport_type.h 27248 2015-04-25 11:58:19Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/water_cmd.cpp b/src/water_cmd.cpp index c054200dea..e0ed78c8a6 100644 --- a/src/water_cmd.cpp +++ b/src/water_cmd.cpp @@ -1,4 +1,4 @@ -/* $Id: water_cmd.cpp 27272 2015-05-08 17:32:57Z frosch $ */ +/* $Id: water_cmd.cpp 27254 2015-04-26 10:50:36Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/widget.cpp b/src/widget.cpp index 81ab3946fd..af88e470dc 100644 --- a/src/widget.cpp +++ b/src/widget.cpp @@ -1,4 +1,4 @@ -/* $Id: widget.cpp 27348 2015-07-30 18:45:29Z frosch $ */ +/* $Id: widget.cpp 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -22,7 +22,7 @@ #include "table/sprites.h" #include "table/strings.h" -#include "table/palettes.h" +#include "table/string_colours.h" #include "safeguards.h" @@ -1545,7 +1545,7 @@ void NWidgetMatrix::SetupSmallestSize(Window *w, bool init_array) SB(nw->index, 16, 16, 0); this->head->SetupSmallestSize(w, init_array); - Dimension padding = {this->pip_pre + this->pip_post, this->pip_pre + this->pip_post}; + Dimension padding = { (uint)this->pip_pre + this->pip_post, (uint)this->pip_pre + this->pip_post}; Dimension size = {this->head->smallest_x + padding.width, this->head->smallest_y + padding.height}; Dimension fill = {0, 0}; Dimension resize = {this->pip_inter + this->head->smallest_x, this->pip_inter + this->head->smallest_y}; diff --git a/src/widgets/dropdown.cpp b/src/widgets/dropdown.cpp index 2be2071440..8b13473c61 100644 --- a/src/widgets/dropdown.cpp +++ b/src/widgets/dropdown.cpp @@ -1,4 +1,4 @@ -/* $Id: dropdown.cpp 27131 2015-02-01 12:23:39Z frosch $ */ +/* $Id: dropdown.cpp 27381 2015-08-10 20:24:13Z michi_cc $ */ /* * This file is part of OpenTTD. @@ -380,8 +380,8 @@ void ShowDropDownListAt(Window *w, const DropDownList *list, int selected, int b if (auto_width) width = max(width, max_item_width); - Point dw_pos = { w->left + (_current_text_dir == TD_RTL ? wi_rect.right + 1 - width : wi_rect.left), top}; - Dimension dw_size = {width, height}; + Point dw_pos = { w->left + (_current_text_dir == TD_RTL ? wi_rect.right + 1 - (int)width : wi_rect.left), top}; + Dimension dw_size = {width, (uint)height}; new DropdownWindow(w, list, selected, button, instant_close, dw_pos, dw_size, wi_colour, scroll); } diff --git a/src/window.cpp b/src/window.cpp index 540c100490..ed943443ac 100644 --- a/src/window.cpp +++ b/src/window.cpp @@ -1,4 +1,4 @@ -/* $Id: window.cpp 27432 2015-11-01 12:03:13Z frosch $ */ +/* $Id: window.cpp 27425 2015-10-30 17:23:16Z frosch $ */ /* * This file is part of OpenTTD. diff --git a/src/window_type.h b/src/window_type.h index d51db26018..1c1c25fd71 100644 --- a/src/window_type.h +++ b/src/window_type.h @@ -1,4 +1,4 @@ -/* $Id: window_type.h 26610 2014-05-24 19:11:20Z alberth $ */ +/* $Id: window_type.h 27286 2015-05-16 12:08:06Z alberth $ */ /* * This file is part of OpenTTD. @@ -446,7 +446,7 @@ enum WindowClass { /** * Generate landscape (newgame); %Window numbers: * - GLWM_SCENARIO = #CreateScenarioWidgets - * - #GenenerateLandscapeWindowMode = #GenerateLandscapeWidgets + * - #GenerateLandscapeWindowMode = #GenerateLandscapeWidgets */ WC_GENERATE_LANDSCAPE, diff --git a/src/zoom_func.h b/src/zoom_func.h index e29b7087bb..43c32429e9 100644 --- a/src/zoom_func.h +++ b/src/zoom_func.h @@ -1,4 +1,4 @@ -/* $Id: zoom_func.h 27134 2015-02-01 20:54:24Z frosch $ */ +/* $Id: zoom_func.h 27417 2015-10-29 19:23:21Z frosch $ */ /* * This file is part of OpenTTD. @@ -67,7 +67,7 @@ static inline int UnScaleByZoomLower(int value, ZoomLevel zoom) /** * Short-hand to apply GUI zoom level. * @param value Pixel amount at #ZOOM_LVL_BEGIN (full zoom in). - * @return value Pixel amount at #ZOOM_LVL_GUI. + * @return Pixel amount at #ZOOM_LVL_GUI (current interface size). */ static inline int UnScaleGUI(int value) { @@ -76,8 +76,8 @@ static inline int UnScaleGUI(int value) /** * Scale traditional pixel dimensions to GUI zoom level. - * @param value Pixel amount at 1x zoom level. - * @return value Pixel amount at #ZOOM_LVL_GUI. + * @param value Pixel amount at #ZOOM_LVL_BASE (traditional "normal" interface size). + * @return Pixel amount at #ZOOM_LVL_GUI (current interface size). */ static inline int ScaleGUITrad(int value) {