Merge branch 'master' into jgrpp

# Conflicts:
#	src/company_cmd.cpp
#	src/core/geometry_func.cpp
#	src/date.cpp
#	src/genworld_gui.cpp
#	src/gfx.cpp
#	src/object_gui.cpp
#	src/openttd.cpp
#	src/settings_type.h
#	src/video/allegro_v.cpp
#	src/video/dedicated_v.cpp
#	src/video/null_v.cpp
#	src/video/sdl2_v.cpp
#	src/video/sdl_v.cpp
#	src/video/win32_v.cpp
pull/221/head
Jonathan G Rennison 3 years ago
commit e95216b59d

@ -88,11 +88,11 @@ jobs:
echo "::group::Install dependencies"
sudo apt-get install -y --no-install-recommends \
liballegro4-dev \
libfontconfig-dev \
libicu-dev \
liblzma-dev \
liblzo2-dev \
libsdl1.2-dev \
libsdl2-dev \
zlib1g-dev \
# EOF
@ -154,8 +154,9 @@ jobs:
uses: lukka/run-vcpkg@v6
with:
vcpkgDirectory: '/usr/local/share/vcpkg'
doNotUpdateVcpkg: true
vcpkgArguments: 'freetype liblzma lzo'
doNotUpdateVcpkg: false
vcpkgGitCommitId: 2a42024b53ebb512fb5dd63c523338bf26c8489c
vcpkgArguments: 'liblzma libpng lzo'
vcpkgTriplet: '${{ matrix.arch }}-osx'
- name: Install OpenGFX
@ -200,11 +201,10 @@ jobs:
strategy:
fail-fast: false
matrix:
include:
- arch: x86
- arch: x64
os: [windows-latest, windows-2016]
arch: [x86, x64]
runs-on: windows-latest
runs-on: ${{ matrix.os }}
steps:
- name: Checkout

@ -265,7 +265,95 @@ jobs:
retention-days: 5
linux:
name: Linux
name: Linux (Generic)
needs: source
runs-on: ubuntu-20.04
container:
# manylinux2014 is based on CentOS 7, but already has a lot of things
# installed and preconfigured. It makes it easier to build OpenTTD.
image: quay.io/pypa/manylinux2014_x86_64
steps:
- name: Download source
uses: actions/download-artifact@v2
with:
name: internal-source
- name: Unpack source
run: |
tar -xf source.tar.gz --strip-components=1
- name: Install dependencies
run: |
echo "::group::Install dependencies"
yum install -y \
fontconfig-devel \
freetype-devel \
libicu-devel \
libpng-devel \
libpng-devel \
lzo-devel \
SDL2-devel \
wget \
xz-devel \
zlib-devel \
# EOF
echo "::endgroup::"
# The yum variant of fluidsynth depends on all possible audio drivers,
# like jack, ALSA, pulseaudio, etc. This is not really useful for us,
# as we route the output of fluidsynth back via our sound driver, and
# as such do not use these audio driver outputs at all. So instead,
# we compile fluidsynth ourselves, with as little dependencies as
# possible. This currently means it picks up SDL2, but this is fine,
# as we need SDL2 anyway.
echo "::group::Install fluidsynth"
wget https://github.com/FluidSynth/fluidsynth/archive/v2.1.6.tar.gz
tar xf v2.1.6.tar.gz
(
cd fluidsynth-2.1.6
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/usr
make -j$(nproc)
make install
)
echo "::endgroup::"
- name: Install GCC problem matcher
uses: ammaraskar/gcc-problem-matcher@master
- name: Build
run: |
mkdir -p build
cd build
echo "::group::CMake"
cmake ${GITHUB_WORKSPACE} \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DOPTION_PACKAGE_DEPENDENCIES=ON \
# EOF
echo "::endgroup::"
echo "::group::Build"
echo "Running on $(nproc) cores"
make -j$(nproc) package
echo "::endgroup::"
# Remove the sha256 files CPack generates; we will do this ourself at
# the end of this workflow.
rm -f bundles/*.sha256
- name: Store bundles
uses: actions/upload-artifact@v2
with:
name: openttd-linux-generic
path: build/bundles
retention-days: 5
linux-distro:
name: Linux (Distros)
needs: source
if: needs.source.outputs.is_tag == 'true'
@ -373,6 +461,13 @@ jobs:
run: |
tar -xf source.tar.gz --strip-components=1
- name: Install dependencies
env:
HOMEBREW_NO_AUTO_UPDATE: 1
HOMEBREW_NO_INSTALL_CLEANUP: 1
run: |
brew install pandoc
# The following step can be removed when the build VM is updated with a revision of
# vcpkg dating from roughly 01/01/2021 or later. At that point, `doNotUpdateVcpkg`
# can be set to `true` and the `vcpkgGitCommitId` can be removed.
@ -387,7 +482,7 @@ jobs:
vcpkgDirectory: '/usr/local/share/vcpkg'
doNotUpdateVcpkg: false
vcpkgGitCommitId: 2a42024b53ebb512fb5dd63c523338bf26c8489c
vcpkgArguments: 'freetype:x64-osx liblzma:x64-osx lzo:x64-osx freetype:arm64-osx liblzma:arm64-osx lzo:arm64-osx'
vcpkgArguments: 'liblzma:x64-osx libpng:x64-osx lzo:x64-osx liblzma:arm64-osx libpng:arm64-osx lzo:arm64-osx'
- name: Build tools
run: |
@ -550,6 +645,11 @@ jobs:
run: |
tar -xf source.tar.gz --strip-components=1
- name: Install dependencies
shell: bash
run: |
choco install pandoc
# "restore-cache" which is done by "run-vcpkg" uses Windows tar.
# A git clone on windows marks a few files as read-only; when Windows tar
# tries to extract the cache over this folder, it fails, despite the files
@ -628,11 +728,12 @@ jobs:
retention-days: 5
upload:
name: Upload
name: Upload (AWS)
needs:
- source
- docs
- linux
- linux-distro
- macos
- windows
@ -641,7 +742,7 @@ jobs:
# "always()" is important here, it is the keyword to use to stop skipping
# this job if any dependency is skipped. It looks a bit silly, but it is
# how GitHub Actions work ;)
if: always() && needs.source.result == 'success' && needs.docs.result == 'success' && (needs.linux.result == 'success' || needs.linux.result == 'skipped') && needs.macos.result == 'success' && needs.windows.result == 'success'
if: always() && needs.source.result == 'success' && needs.docs.result == 'success' && needs.linux.result == 'success' && (needs.linux-distro.result == 'success' || needs.linux-distro.result == 'skipped') && needs.macos.result == 'success' && needs.windows.result == 'success'
runs-on: ubuntu-20.04
@ -685,3 +786,80 @@ jobs:
repository: OpenTTD/workflows
event-type: ${{ needs.source.outputs.trigger_type }}
client-payload: '{"version": "${{ needs.source.outputs.version }}", "folder": "${{ needs.source.outputs.folder }}"}'
upload-steam:
name: Upload (Steam)
needs:
- source
- linux
- macos
- windows
if: needs.source.outputs.trigger_type == 'new-master' || needs.source.outputs.trigger_type == 'new-tag'
runs-on: ubuntu-20.04
steps:
- name: Download all bundles
uses: actions/download-artifact@v2
- name: Setup steamcmd
uses: CyberAndrii/setup-steamcmd@v1
- name: Generate Steam auth code
id: steam-totp
uses: CyberAndrii/steam-totp@v1
with:
shared_secret: ${{ secrets.STEAM_SHARED_SECRET }}
- name: Upload to Steam
run: |
echo "::group::Extracting source"
mkdir source
(
cd source
tar -xf ../internal-source/source.tar.gz --strip-components=1
)
echo "::endgroup::"
mkdir steam
(
cd steam
echo "::group::Prepare Win32"
unzip ../openttd-windows-x86/openttd-*-windows-win32.zip
mv openttd-*-windows-win32 steam-win32
echo "::endgroup::"
echo "::group::Prepare Win64"
unzip ../openttd-windows-x64/openttd-*-windows-win64.zip
mv openttd-*-windows-win64 steam-win64
echo "::endgroup::"
echo "::group::Prepare macOS"
mkdir steam-macos
(
cd steam-macos
unzip ../../openttd-macos-universal/openttd-*-macos-universal.zip
)
echo "::endgroup::"
echo "::group::Prepare Linux"
tar xvf ../openttd-linux-generic/openttd-*-linux-generic-amd64.tar.xz
mv openttd-*-linux-generic-amd64 steam-linux
echo "::endgroup::"
echo "::group::Preparing build file"
if [ "${{ needs.source.outputs.trigger_type }}" = "new-tag" ]; then
BRANCH="testing"
else
BRANCH="nightly"
fi
cat ../source/os/steam/release.vdf | sed 's/@@DESCRIPTION@@/openttd-${{ needs.source.outputs.version }}/;s/@@BRANCH@@/'${BRANCH}'/' > release.vdf
cat release.vdf
echo "::endgroup::"
echo "::group::Upload to Steam"
steamcmd +login ${{ secrets.STEAM_USERNAME }} ${{ secrets.STEAM_PASSWORD }} ${{ steps.steam-totp.outputs.code }} +run_app_build $(pwd)/release.vdf +quit
echo "::endgroup::"
)

@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.6)
cmake_minimum_required(VERSION 3.9)
if(NOT BINARY_NAME)
set(BINARY_NAME openttd)
@ -18,10 +18,13 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake")
set(CMAKE_OSX_DEPLOYMENT_TARGET 10.9)
# Use GNUInstallDirs to allow customisation
# but set our own default data dir
# but set our own default data and bin dir
if(NOT CMAKE_INSTALL_DATADIR)
set(CMAKE_INSTALL_DATADIR "share/games")
endif()
if(NOT CMAKE_INSTALL_BINDIR)
set(CMAKE_INSTALL_BINDIR "games")
endif()
include(GNUInstallDirs)
include(Options)
@ -98,8 +101,8 @@ find_package(PNG)
if(NOT WIN32)
find_package(Allegro)
find_package(Freetype)
if(NOT APPLE)
find_package(Freetype)
find_package(SDL2)
if(NOT SDL2_FOUND)
find_package(SDL)
@ -113,6 +116,7 @@ if(NOT WIN32)
find_library(AUDIOTOOLBOX_LIBRARY AudioToolbox)
find_library(AUDIOUNIT_LIBRARY AudioUnit)
find_library(COCOA_LIBRARY Cocoa)
find_library(QUARTZCORE_LIBRARY QuartzCore)
find_package(MacUcontext)
endif()
@ -156,13 +160,8 @@ find_package(Xaudio2)
find_package(Grfcodec)
# IPO is only properly supported from CMake 3.9. Despite the fact we are
# CMake 3.5, still enable IPO if we detect we are 3.9+.
if(POLICY CMP0069)
cmake_policy(SET CMP0069 NEW)
include(CheckIPOSupported)
check_ipo_supported(RESULT IPO_FOUND)
endif()
include(CheckIPOSupported)
check_ipo_supported(RESULT IPO_FOUND)
show_options()
@ -181,6 +180,30 @@ if(APPLE)
if(NOT COCOA_LIBRARY)
message(FATAL_ERROR "Cocoa is required for this platform")
endif()
if(NOT QUARTZCORE_LIBRARY)
message(FATAL_ERROR "QuartzCore is required for this platform")
endif()
endif()
if(OPTION_PACKAGE_DEPENDENCIES)
if(NOT UNIX)
message(FATAL_ERROR "Can only package dependencies on Linux")
endif()
if(OPTION_INSTALL_FHS)
message(FATAL_ERROR "Cannot install in FHS folders when we are packaging dependencies")
endif()
if(${CMAKE_VERSION} VERSION_LESS "3.16.0")
message(FATAL_ERROR "OPTION_PACKAGE_DEPENDENCIES can only work with CMake 3.16+; you are using ${CMAKE_VERSION}")
endif()
# If we are packaging dependencies, we do two things:
# 1) set the RPATH to include $ORIGIN/lib; $ORIGIN (that literal string)
# is a Linux indicator for "path where application is". In CMake, we
# have to do this before add_executable() is executed.
# 2) copy the libraries that we compile against to the "lib" folder.
# This is done in InstallAndPackage.cmake.
set(CMAKE_INSTALL_RPATH "\$ORIGIN/lib")
set(CMAKE_BUILD_WITH_INSTALL_RPATH ON)
endif()
include(SourceList)
@ -226,6 +249,11 @@ else()
)
endif()
if(MSVC)
# Add DPI manifest to project; other WIN32 targets get this via ottdres.rc
target_sources(openttd PRIVATE "${CMAKE_SOURCE_DIR}/os/windows/openttd.manifest")
endif()
add_subdirectory(${CMAKE_SOURCE_DIR}/src)
add_subdirectory(${CMAKE_SOURCE_DIR}/media/baseset)
add_subdirectory(${CMAKE_SOURCE_DIR}/bin)
@ -285,6 +313,7 @@ if(APPLE)
${AUDIOTOOLBOX_LIBRARY}
${AUDIOUNIT_LIBRARY}
${COCOA_LIBRARY}
${QUARTZCORE_LIBRARY}
)
add_definitions(
@ -373,6 +402,10 @@ endif()
include(CreateRegression)
create_regression()
if(APPLE OR WIN32)
find_package(Pandoc)
endif()
include(InstallAndPackage)
get_property(CFG_DEFS DIRECTORY . PROPERTY COMPILE_OPTIONS)

@ -57,6 +57,9 @@ To install both the x64 (64bit) and x86 (32bit) variants (though only one is nec
```
You can open the folder (as a CMake project). CMake will be detected, and you can compile from there.
If libraries are installed but not found, you need to set VCPKG_TARGET_TRIPLET in CMake parameters.
For Visual Studio 2017 you also need to set CMAKE_TOOLCHAIN_FILE.
(Typical values are shown in the MSVC project file command line example)
Alternatively, you can create a MSVC project file via CMake. For this
either download CMake from https://cmake.org/download/ or use the version
@ -73,6 +76,7 @@ in the build folder are MSVC project files. MSVC can rebuild the project
files himself via the `ZERO_CHECK` project.
## All other platforms
Minimum required version of CMake is 3.9.
```bash
mkdir build

@ -27,9 +27,6 @@ macro(compile_flags)
# Enable multi-threaded compilation.
add_compile_options(/MP)
endif()
# Add DPI manifest to project; other WIN32 targets get this via ottdres.rc
list(APPEND GENERATED_SOURCE_FILES "${CMAKE_SOURCE_DIR}/os/windows/openttd.manifest")
endif()
# Add some -D flags for Debug builds. We cannot use add_definitions(), because

@ -31,7 +31,7 @@ The following cache variables may also be set:
#]=======================================================================]
find_package(PkgConfig QUIET)
pkg_check_modules(PC_Allegro QUIET allegro)
pkg_check_modules(PC_Allegro QUIET allegro<5)
find_path(Allegro_INCLUDE_DIR
NAMES allegro.h

@ -1,3 +1,8 @@
# CMake provides a FindICU module since version 3.7.
# But it doesn't use pkgconfig, doesn't set expected variables,
# And it returns incomplete dependencies if only some modules are searched.
#[=======================================================================[.rst:
FindICU
-------

@ -0,0 +1,3 @@
if(NOT EXISTS ${PANDOC_EXECUTABLE})
find_program(PANDOC_EXECUTABLE pandoc)
endif()

@ -96,7 +96,14 @@ set(CPACK_PACKAGE_HOMEPAGE_URL "https://www.openttd.org/")
set(CPACK_PACKAGE_CONTACT "OpenTTD <info@openttd.org>")
set(CPACK_PACKAGE_INSTALL_DIRECTORY "OpenTTD")
set(CPACK_PACKAGE_CHECKSUM "SHA256")
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/COPYING.md")
if((APPLE OR WIN32) AND EXISTS ${PANDOC_EXECUTABLE})
execute_process(COMMAND ${PANDOC_EXECUTABLE} "${CMAKE_SOURCE_DIR}/COPYING.md" -s -o "${CMAKE_BINARY_DIR}/COPYING.rtf")
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_BINARY_DIR}/COPYING.rtf")
else()
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/COPYING.md")
endif()
set(CPACK_RESOURCE_FILE_README "${CMAKE_SOURCE_DIR}/README.md")
set(CPACK_MONOLITHIC_INSTALL YES)
set(CPACK_PACKAGE_EXECUTABLES "openttd;OpenTTD")
@ -124,8 +131,12 @@ elseif(UNIX)
# With FHS, we can create deb/rpm/... Without it, they would be horribly broken
# and not work. The other way around is also true; with FHS they are not
# usable, and only flat formats work.
if(NOT OPTION_INSTALL_FHS)
if(OPTION_PACKAGE_DEPENDENCIES)
set(CPACK_GENERATOR "TXZ")
set(PLATFORM "generic")
elseif(NOT OPTION_INSTALL_FHS)
set(CPACK_GENERATOR "TXZ")
set(PLATFORM "unknown")
else()
find_program(LSB_RELEASE_EXEC lsb_release)
execute_process(COMMAND ${LSB_RELEASE_EXEC} -is
@ -150,7 +161,7 @@ elseif(UNIX)
string(REGEX MATCH "ID=(.*)" _ ${OS_RELEASE_CONTENTS})
set(DISTRO_ID ${CMAKE_MATCH_1})
if(DISTRO_ID STREQUAL "arch")
set(PLATFORM "generic")
set(PLATFORM "arch")
set(CPACK_GENERATOR "TXZ")
else()
set(UNSUPPORTED_PLATFORM_NAME "Linux distribution '${DISTRO_ID}' from /etc/os-release")
@ -164,12 +175,39 @@ elseif(UNIX)
set(CPACK_GENERATOR "TXZ")
message(WARNING "Unknown ${UNSUPPORTED_PLATFORM_NAME} found for packaging; can only pack to a txz. Please consider creating a Pull Request to add support for this distribution.")
endif()
set(CPACK_PACKAGE_FILE_NAME "openttd-#CPACK_PACKAGE_VERSION#-linux-${PLATFORM}-${CPACK_SYSTEM_NAME}")
endif()
set(CPACK_PACKAGE_FILE_NAME "openttd-#CPACK_PACKAGE_VERSION#-linux-${PLATFORM}-${CPACK_SYSTEM_NAME}")
else()
message(FATAL_ERROR "Unknown OS found for packaging; please consider creating a Pull Request to add support for this OS.")
endif()
include(CPack)
if(OPTION_PACKAGE_DEPENDENCIES)
# Install all dependencies we can resolve, with the exception of ones that
# every Linux machine should have. This should make this build as generic
# as possible, where it runs on any machine with the same or newer libc
# than the one this is compiled with.
# We copy these libraries into lib/ folder, so they can be found on game
# startup. See comment in root CMakeLists.txt for how this works exactly.
install(CODE [[
file(GET_RUNTIME_DEPENDENCIES
RESOLVED_DEPENDENCIES_VAR DEPENDENCIES
UNRESOLVED_DEPENDENCIES_VAR UNRESOLVED_DEPENDENCIES
EXECUTABLES openttd
POST_EXCLUDE_REGEXES "ld-linux|libc.so|libdl.so|libm.so|libgcc_s.so|libpthread.so|librt.so|libstdc...so")
file(INSTALL
DESTINATION "${CMAKE_INSTALL_PREFIX}/lib"
FILES ${DEPENDENCIES}
FOLLOW_SYMLINK_CHAIN)
# This should not be possible, but error out when a dependency cannot
# be resolved.
list(LENGTH UNRESOLVED_DEPENDENCIES UNRESOLVED_LENGTH)
if(${UNRESOLVED_LENGTH} GREATER 0)
message(FATAL_ERROR "Unresolved dependencies: ${UNRESOLVED_DEPENDENCIES}")
endif()
]])
endif()

@ -44,7 +44,9 @@ endfunction()
# set_options()
#
function(set_options)
if(UNIX AND NOT APPLE)
option(OPTION_PACKAGE_DEPENDENCIES "Copy dependencies into lib/ for easy packaging (Linux only)" OFF)
if(UNIX AND NOT APPLE AND NOT OPTION_PACKAGE_DEPENDENCIES)
set(DEFAULT_OPTION_INSTALL_FHS ON)
else()
set(DEFAULT_OPTION_INSTALL_FHS OFF)
@ -76,6 +78,7 @@ endfunction()
# show_options()
#
function(show_options)
message(STATUS "Option Package Dependencies - ${OPTION_PACKAGE_DEPENDENCIES}")
message(STATUS "Option Dedicated - ${OPTION_DEDICATED}")
message(STATUS "Option Install FHS - ${OPTION_INSTALL_FHS}")
message(STATUS "Option Use assert - ${OPTION_USE_ASSERTS}")

@ -409,3 +409,12 @@ Involuntary cargo exchange with cargodist via neutral station [#6114]:
shared station make the order "no unload" and if you're unloading make
it "no load". Cargodist will then figure out that it should not create
such a route.
Incorrect ending year displayed in end of game newspaper [#8625]
The ending year of the game is configurable, but the date displayed in
the newspaper at the end of the game is part of the graphics, not text.
So to fix this would involve fixing the graphics in every baseset,
including the original. Additionally, basesets are free to put this
text in different positions (which they do), making a proper solution
to this infinitely more complex for a part of the game that fewer than
1% of players ever see.

@ -71,6 +71,34 @@ Module.preRun.push(function() {
* add_server("localhost", 3979); */
}
var leftButtonDown = false;
document.addEventListener("mousedown", e => {
if (e.button == 0) {
leftButtonDown = true;
}
});
document.addEventListener("mouseup", e => {
if (e.button == 0) {
leftButtonDown = false;
}
});
window.openttd_open_url = function(url, url_len) {
const url_string = UTF8ToString(url, url_len);
function openWindow() {
document.removeEventListener("mouseup", openWindow);
window.open(url_string, '_blank');
}
/* Trying to open the URL while the mouse is down results in the button getting stuck, so wait for the
* mouse to be released before opening it. However, when OpenTTD is lagging, the mouse can get released
* before the button click even registers, so check for that, and open the URL immediately if that's the
* case. */
if (leftButtonDown) {
document.addEventListener("mouseup", openWindow);
} else {
openWindow();
}
}
/* https://github.com/emscripten-core/emscripten/pull/12995 implements this
* properly. Till that time, we use a polyfill. */
SOCKFS.websocket_sock_ops.createPeer_ = SOCKFS.websocket_sock_ops.createPeer;

@ -29,5 +29,7 @@
<string>Copyright 2004-${CURRENT_YEAR} The OpenTTD team</string>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
<key>NSHighResolutionCapable</key>
<string>True</string>
</dict>
</plist>

@ -0,0 +1,57 @@
"AppBuild"
{
"AppID" "1536610"
"Desc" "@@DESCRIPTION@@"
"SetLive" "@@BRANCH@@"
"ContentRoot" "./"
"BuildOutput" "build/"
"Depots"
{
"1536613"
{
"ContentRoot" "./steam-win32"
"FileMapping"
{
"LocalPath" "*"
"DepotPath" "."
"recursive" "1"
}
}
"1536612"
{
"ContentRoot" "./steam-win64"
"FileMapping"
{
"LocalPath" "*"
"DepotPath" "."
"recursive" "1"
}
}
"1536614"
{
"ContentRoot" "./steam-macos"
"FileMapping"
{
"LocalPath" "*"
"DepotPath" "."
"recursive" "1"
}
}
"1536615"
{
"ContentRoot" "./steam-linux"
"FileMapping"
{
"LocalPath" "*"
"DepotPath" "."
"recursive" "1"
}
}
}
}

@ -164,7 +164,7 @@ add_files(
fios_gui.cpp
fontcache.cpp
fontcache.h
fontdetection.cpp
fontcache_internal.h
fontdetection.h
framerate_gui.cpp
framerate_type.h

@ -11,7 +11,7 @@
#include "base_media_base.h"
#include "blitter/factory.hpp"
#if defined(WITH_FREETYPE) || defined(WITH_UNISCRIBE)
#if defined(WITH_FREETYPE) || defined(WITH_UNISCRIBE) || defined(WITH_COCOA)
#include "core/geometry_func.hpp"
#include "fontcache.h"
@ -218,7 +218,7 @@ bool HandleBootstrap()
if (BlitterFactory::GetCurrentBlitter()->GetScreenDepth() == 0) goto failure;
/* If there is no network or no freetype, then there is nothing we can do. Go straight to failure. */
#if (defined(_WIN32) && defined(WITH_UNISCRIBE)) || (defined(WITH_FREETYPE) && (defined(WITH_FONTCONFIG) || defined(__APPLE__)))
#if (defined(_WIN32) && defined(WITH_UNISCRIBE)) || (defined(WITH_FREETYPE) && (defined(WITH_FONTCONFIG) || defined(__APPLE__))) || defined(WITH_COCOA)
if (!_network_available) goto failure;
/* First tell the game we're bootstrapping. */

@ -36,6 +36,7 @@
#include "story_base.h"
#include "zoning.h"
#include "tbtr_template_vehicle_func.h"
#include "widgets/statusbar_widget.h"
#include "table/strings.h"
@ -193,7 +194,7 @@ void InvalidateCompanyWindows(const Company *company)
{
CompanyID cid = company->index;
if (cid == _local_company) SetWindowWidgetDirty(WC_STATUS_BAR, 0, 2);
if (cid == _local_company) SetWindowWidgetDirty(WC_STATUS_BAR, 0, WID_S_RIGHT);
SetWindowDirty(WC_FINANCES, cid);
}

@ -1324,7 +1324,7 @@ DEF_CONSOLE_CMD(ConReloadAI)
}
/* First kill the company of the AI, then start a new one. This should start the current AI again */
DoCommandP(0, CCA_DELETE | company_id << 16 | CRR_MANUAL << 24, 0,CMD_COMPANY_CTRL);
DoCommandP(0, CCA_DELETE | company_id << 16 | CRR_MANUAL << 24, 0, CMD_COMPANY_CTRL);
DoCommandP(0, CCA_NEW_AI | company_id << 16, 0, CMD_COMPANY_CTRL);
IConsolePrint(CC_DEFAULT, "AI reloaded.");

@ -40,3 +40,25 @@ Dimension adddim(const Dimension &d1, const Dimension &d2)
d.height = d1.height + d2.height;
return d;
}
/**
* Compute the bounding rectangle around two rectangles.
* @param r1 First rectangle.
* @param r2 Second rectangle.
* @return The bounding rectangle, the smallest rectangle that contains both arguments.
*/
Rect BoundingRect(const Rect &r1, const Rect &r2)
{
/* If either the first or the second is empty, return the other. */
if (IsEmptyRect(r1)) return r2;
if (IsEmptyRect(r2)) return r1;
Rect r;
r.top = std::min(r1.top, r2.top);
r.bottom = std::max(r1.bottom, r2.bottom);
r.left = std::min(r1.left, r2.left);
r.right = std::max(r1.right, r2.right);
return r;
}

@ -15,4 +15,16 @@
Dimension maxdim(const Dimension &d1, const Dimension &d2);
Dimension adddim(const Dimension &d1, const Dimension &d2);
/**
* Check if a rectangle is empty.
* @param r Rectangle to check.
* @return True if and only if the rectangle doesn't define space.
*/
static inline bool IsEmptyRect(const Rect &r)
{
return (r.left | r.top | r.right | r.bottom) == 0;
}
Rect BoundingRect(const Rect &r1, const Rect &r2);
#endif /* GEOMETRY_FUNC_HPP */

@ -66,6 +66,7 @@ static const CurrencySpec origin_currency_specs[CURRENCY_END] = {
{ 8, "", CF_NOEURO, u8"\u00a5", "", 0, STR_GAME_OPTIONS_CURRENCY_CNY }, ///< chinese renminbi
{ 10, "", CF_NOEURO, "HKD" NBSP, "", 0, STR_GAME_OPTIONS_CURRENCY_HKD }, ///< hong kong dollar
{ 90, "", CF_NOEURO, u8"\u20b9", "", 0, STR_GAME_OPTIONS_CURRENCY_INR }, ///< Indian Rupee
{ 19, "", CF_NOEURO, "Rp", "", 0, STR_GAME_OPTIONS_CURRENCY_IDR }, ///< Indonesian Rupiah
};
/** Array of currencies used by the system */

@ -11,6 +11,7 @@
#define CURRENCY_H
#include "date_type.h"
#include "string_func.h"
#include "strings_type.h"
static const int CF_NOEURO = 0; ///< Currency never switches to the Euro (as far as known).
@ -62,6 +63,7 @@ enum Currencies {
CURRENCY_CNY, ///< Chinese Renminbi
CURRENCY_HKD, ///< Hong Kong Dollar
CURRENCY_INR, ///< Indian Rupee
CURRENCY_IDR, ///< Indonesian Rupiah
CURRENCY_END, ///< always the last item
};
@ -83,6 +85,15 @@ struct CurrencySpec {
*/
byte symbol_pos;
StringID name;
CurrencySpec() = default;
CurrencySpec(uint16 rate, const char *separator, Year to_euro, const char *prefix, const char *suffix, byte symbol_pos, StringID name) : rate(rate), to_euro(to_euro), symbol_pos(symbol_pos), name(name)
{
strecpy(this->separator, separator, lastof(this->separator));
strecpy(this->prefix, prefix, lastof(this->prefix));
strecpy(this->suffix, suffix, lastof(this->suffix));
}
};
extern CurrencySpec _currency_specs[CURRENCY_END];

@ -21,6 +21,7 @@
#include "newgrf_profiling.h"
#include "console_func.h"
#include "debug.h"
#include "widgets/statusbar_widget.h"
#include "safeguards.h"
@ -275,7 +276,7 @@ static void OnNewDay()
IndustryDailyLoop();
if (!_settings_time.time_in_minutes || _settings_client.gui.date_with_time > 0) {
SetWindowWidgetDirty(WC_STATUS_BAR, 0, 0);
SetWindowWidgetDirty(WC_STATUS_BAR, 0, WID_S_LEFT);
}
EnginesDailyLoop();

@ -134,6 +134,15 @@ const char *GetLogPrefix();
/** The real time in the game. */
extern uint32 _realtime_tick;
inline void IncreaseRealtimeTick(uint32 increase)
{
#if defined(__GNUC__) || defined(__clang__)
__atomic_add_fetch(&_realtime_tick, increase, __ATOMIC_RELAXED);
#else
_realtime_tick += increase;
#endif
}
void ClearDesyncMsgLog();
void LogDesyncMsg(std::string msg);
char *DumpDesyncMsgLog(char *buffer, const char *last);

@ -17,6 +17,7 @@
#include "network/network_content.h"
#include "screenshot.h"
#include "string_func.h"
#include "strings_func.h"
#include "tar_type.h"
#include <sys/stat.h>
#include <functional>
@ -376,7 +377,8 @@ static void FiosGetFileList(SaveLoadOperation fop, fios_getlist_callback_proc *c
fios->type = FIOS_TYPE_PARENT;
fios->mtime = 0;
strecpy(fios->name, "..", lastof(fios->name));
strecpy(fios->title, ".. (Parent directory)", lastof(fios->title));
SetDParamStr(0, "..");
GetString(fios->title, STR_SAVELOAD_PARENT_DIRECTORY, lastof(fios->title));
}
/* Show subdirectories */
@ -392,7 +394,9 @@ static void FiosGetFileList(SaveLoadOperation fop, fios_getlist_callback_proc *c
fios->type = FIOS_TYPE_DIR;
fios->mtime = 0;
strecpy(fios->name, d_name, lastof(fios->name));
seprintf(fios->title, lastof(fios->title), "%s" PATHSEP " (Directory)", d_name);
std::string dirname = std::string(d_name) + PATHSEP;
SetDParamStr(0, dirname.c_str());
GetString(fios->title, STR_SAVELOAD_DIRECTORY, lastof(fios->title));
str_validate(fios->title, lastof(fios->title));
}
}

@ -9,6 +9,7 @@
#include "stdafx.h"
#include "fontcache.h"
#include "fontcache_internal.h"
#include "fontdetection.h"
#include "blitter/factory.hpp"
#include "core/math_func.hpp"
@ -31,6 +32,8 @@ static const int ASCII_LETTERSTART = 32; ///< First printable ASCII letter.
static const int _default_font_height[FS_END] = {10, 6, 18, 10};
static const int _default_font_ascender[FS_END] = { 8, 5, 15, 8};
FreeTypeSettings _freetype;
/**
* Create a new font cache.
* @param fs The size of the font.
@ -53,6 +56,11 @@ FontCache::~FontCache()
Layouter::ResetFontCache(this->fs);
}
int FontCache::GetDefaultFontHeight(FontSize fs)
{
return _default_font_height[fs];
}
/** Font cache for fonts that are based on a freetype font. */
class SpriteFontCache : public FontCache {
private:
@ -195,73 +203,6 @@ void UpdateFontHeightCache()
}
}
#if defined(WITH_FREETYPE) || defined(_WIN32)
FreeTypeSettings _freetype;
static const int MAX_FONT_SIZE = 72; ///< Maximum font size.
static const byte FACE_COLOUR = 1;
static const byte SHADOW_COLOUR = 2;
/** Font cache for fonts that are based on a TrueType font. */
class TrueTypeFontCache : public FontCache {
protected:
int req_size; ///< Requested font size.
int used_size; ///< Used font size.
typedef SmallMap<uint32, std::pair<size_t, const void*> > FontTable; ///< Table with font table cache
FontTable font_tables; ///< Cached font tables.
/** Container for information about a glyph. */
struct GlyphEntry {
Sprite *sprite; ///< The loaded sprite.
byte width; ///< The width of the glyph.
bool duplicate; ///< Whether this glyph entry is a duplicate, i.e. may this be freed?
};
/**
* The glyph cache. This is structured to reduce memory consumption.
* 1) There is a 'segment' table for each font size.
* 2) Each segment table is a discrete block of characters.
* 3) Each block contains 256 (aligned) characters sequential characters.
*
* The cache is accessed in the following way:
* For character 0x0041 ('A'): glyph_to_sprite[0x00][0x41]
* For character 0x20AC (Euro): glyph_to_sprite[0x20][0xAC]
*
* Currently only 256 segments are allocated, "limiting" us to 65536 characters.
* This can be simply changed in the two functions Get & SetGlyphPtr.
*/
GlyphEntry **glyph_to_sprite;
GlyphEntry *GetGlyphPtr(GlyphID key);
void SetGlyphPtr(GlyphID key, const GlyphEntry *glyph, bool duplicate = false);
virtual const void *InternalGetFontTable(uint32 tag, size_t &length) = 0;
virtual const Sprite *InternalGetGlyph(GlyphID key, bool aa) = 0;
public:
TrueTypeFontCache(FontSize fs, int pixels);
virtual ~TrueTypeFontCache();
virtual int GetFontSize() const { return this->used_size; }
virtual SpriteID GetUnicodeGlyph(WChar key) { return this->parent->GetUnicodeGlyph(key); }
virtual void SetUnicodeGlyph(WChar key, SpriteID sprite) { this->parent->SetUnicodeGlyph(key, sprite); }
virtual void InitializeUnicodeGlyphMap()
{
this->parent->InitializeUnicodeGlyphMap();
font_height_cache[this->fs] = this->GetHeight();
}
virtual const Sprite *GetGlyph(GlyphID key);
virtual const void *GetFontTable(uint32 tag, size_t &length);
virtual void ClearFontCache();
virtual uint GetGlyphWidth(GlyphID key);
virtual bool GetDrawGlyphShadow();
virtual bool IsBuiltInFont() { return false; }
};
/**
* Create a new TrueTypeFontCache.
* @param fs The font size that is going to be cached.
@ -333,7 +274,7 @@ void TrueTypeFontCache::SetGlyphPtr(GlyphID key, const GlyphEntry *glyph, bool d
this->glyph_to_sprite[GB(key, 8, 8)][GB(key, 0, 8)].duplicate = duplicate;
}
static void *AllocateFont(size_t size)
void *AllocateFont(size_t size)
{
return MallocT<byte>(size);
}
@ -496,7 +437,7 @@ void FreeTypeFontCache::SetFontSize(FontSize fs, FT_Face face, int pixels)
/* Font height is minimum height plus the difference between the default
* height for this font size and the small size. */
int diff = scaled_height - ScaleFontTrad(_default_font_height[FS_SMALL]);
pixels = Clamp(std::min<uint>(head->Lowest_Rec_PPEM, 20u) + diff, scaled_height, MAX_FONT_SIZE);
pixels = Clamp(std::min<uint>(head->Lowest_Rec_PPEM, MAX_FONT_MIN_REC_SIZE) + diff, scaled_height, MAX_FONT_SIZE);
}
} else {
pixels = ScaleFontTrad(pixels);
@ -666,7 +607,7 @@ const Sprite *FreeTypeFontCache::InternalGetGlyph(GlyphID key, bool aa)
uint height = std::max(1U, (uint)slot->bitmap.rows + (this->fs == FS_NORMAL));
/* Limit glyph size to prevent overflows later on. */
if (width > 256 || height > 256) usererror("Font glyph is too large");
if (width > MAX_GLYPH_DIM || height > MAX_GLYPH_DIM) usererror("Font glyph is too large");
/* FreeType has rendered the glyph, now we allocate a sprite and copy the image into it */
SpriteLoader::Sprite sprite;
@ -735,338 +676,8 @@ const void *FreeTypeFontCache::InternalGetFontTable(uint32 tag, size_t &length)
return result;
}
#elif defined(_WIN32)
#include "os/windows/win32.h"
#ifndef ANTIALIASED_QUALITY
#define ANTIALIASED_QUALITY 4
#endif
/** Font cache for fonts that are based on a Win32 font. */
class Win32FontCache : public TrueTypeFontCache {
private:
LOGFONT logfont; ///< Logical font information for selecting the font face.
HFONT font = nullptr; ///< The font face associated with this font.
HDC dc = nullptr; ///< Cached GDI device context.
HGDIOBJ old_font; ///< Old font selected into the GDI context.
SIZE glyph_size; ///< Maximum size of regular glyphs.
void SetFontSize(FontSize fs, int pixels);
virtual const void *InternalGetFontTable(uint32 tag, size_t &length);
virtual const Sprite *InternalGetGlyph(GlyphID key, bool aa);
public:
Win32FontCache(FontSize fs, const LOGFONT &logfont, int pixels);
~Win32FontCache();
virtual void ClearFontCache();
virtual GlyphID MapCharToGlyph(WChar key);
virtual const char *GetFontName() { return WIDE_TO_MB(this->logfont.lfFaceName); }
virtual bool IsBuiltInFont() { return false; }
virtual void *GetOSHandle() { return &this->logfont; }
};
/**
* Create a new Win32FontCache.
* @param fs The font size that is going to be cached.
* @param logfont The font that has to be loaded.
* @param pixels The number of pixels this font should be high.
*/
Win32FontCache::Win32FontCache(FontSize fs, const LOGFONT &logfont, int pixels) : TrueTypeFontCache(fs, pixels), logfont(logfont)
{
this->dc = CreateCompatibleDC(nullptr);
this->SetFontSize(fs, pixels);
}
Win32FontCache::~Win32FontCache()
{
this->ClearFontCache();
DeleteDC(this->dc);
DeleteObject(this->font);
}
void Win32FontCache::SetFontSize(FontSize fs, int pixels)
{
if (pixels == 0) {
/* Try to determine a good height based on the minimal height recommended by the font. */
int scaled_height = ScaleFontTrad(_default_font_height[this->fs]);
pixels = scaled_height;
HFONT temp = CreateFontIndirect(&this->logfont);
if (temp != nullptr) {
HGDIOBJ old = SelectObject(this->dc, temp);
UINT size = GetOutlineTextMetrics(this->dc, 0, nullptr);
LPOUTLINETEXTMETRIC otm = (LPOUTLINETEXTMETRIC)AllocaM(BYTE, size);
GetOutlineTextMetrics(this->dc, size, otm);
/* Font height is minimum height plus the difference between the default
* height for this font size and the small size. */
int diff = scaled_height - ScaleFontTrad(_default_font_height[FS_SMALL]);
pixels = Clamp(std::min(otm->otmusMinimumPPEM, 20u) + diff, scaled_height, MAX_FONT_SIZE);
SelectObject(dc, old);
DeleteObject(temp);
}
} else {
pixels = ScaleFontTrad(pixels);
}
this->used_size = pixels;
/* Create GDI font handle. */
this->logfont.lfHeight = -pixels;
this->logfont.lfWidth = 0;
this->logfont.lfOutPrecision = ANTIALIASED_QUALITY;
if (this->font != nullptr) {
SelectObject(dc, this->old_font);
DeleteObject(this->font);
}
this->font = CreateFontIndirect(&this->logfont);
this->old_font = SelectObject(this->dc, this->font);
/* Query the font metrics we needed. */
UINT otmSize = GetOutlineTextMetrics(this->dc, 0, nullptr);
POUTLINETEXTMETRIC otm = (POUTLINETEXTMETRIC)AllocaM(BYTE, otmSize);
GetOutlineTextMetrics(this->dc, otmSize, otm);
this->units_per_em = otm->otmEMSquare;
this->ascender = otm->otmTextMetrics.tmAscent;
this->descender = otm->otmTextMetrics.tmDescent;
this->height = this->ascender + this->descender;
this->glyph_size.cx = otm->otmTextMetrics.tmMaxCharWidth;
this->glyph_size.cy = otm->otmTextMetrics.tmHeight;
font_height_cache[this->fs] = this->GetHeight();
DEBUG(freetype, 2, "Loaded font '%s' with size %d", FS2OTTD((LPTSTR)((BYTE *)otm + (ptrdiff_t)otm->otmpFullName)), pixels);
}
/**
* Reset cached glyphs.
*/
void Win32FontCache::ClearFontCache()
{
/* GUI scaling might have changed, determine font size anew if it was automatically selected. */
if (this->font != nullptr) this->SetFontSize(this->fs, this->req_size);
this->TrueTypeFontCache::ClearFontCache();
}
/* virtual */ const Sprite *Win32FontCache::InternalGetGlyph(GlyphID key, bool aa)
{
GLYPHMETRICS gm;
MAT2 mat = { {0, 1}, {0, 0}, {0, 0}, {0, 1} };
/* Make a guess for the needed memory size. */
DWORD size = this->glyph_size.cy * Align(aa ? this->glyph_size.cx : std::max(this->glyph_size.cx / 8l, 1l), 4); // Bitmap data is DWORD-aligned rows.
byte *bmp = AllocaM(byte, size);
size = GetGlyphOutline(this->dc, key, GGO_GLYPH_INDEX | (aa ? GGO_GRAY8_BITMAP : GGO_BITMAP), &gm, size, bmp, &mat);
if (size == GDI_ERROR) {
/* No dice with the guess. First query size of needed glyph memory, then allocate the
* memory and query again. This dance is necessary as some glyphs will only render with
* the exact matching size; e.g. the space glyph has no pixels and must be requested
* with size == 0, anything else fails. Unfortunately, a failed call doesn't return any
* info about the size and thus the triple GetGlyphOutline()-call. */
size = GetGlyphOutline(this->dc, key, GGO_GLYPH_INDEX | (aa ? GGO_GRAY8_BITMAP : GGO_BITMAP), &gm, 0, nullptr, &mat);
if (size == GDI_ERROR) usererror("Unable to render font glyph");
bmp = AllocaM(byte, size);
GetGlyphOutline(this->dc, key, GGO_GLYPH_INDEX | (aa ? GGO_GRAY8_BITMAP : GGO_BITMAP), &gm, size, bmp, &mat);
}
/* Add 1 pixel for the shadow on the medium font. Our sprite must be at least 1x1 pixel. */
uint width = std::max(1U, (uint)gm.gmBlackBoxX + (this->fs == FS_NORMAL));
uint height = std::max(1U, (uint)gm.gmBlackBoxY + (this->fs == FS_NORMAL));
/* Limit glyph size to prevent overflows later on. */
if (width > 256 || height > 256) usererror("Font glyph is too large");
/* GDI has rendered the glyph, now we allocate a sprite and copy the image into it. */
SpriteLoader::Sprite sprite;
sprite.AllocateData(ZOOM_LVL_NORMAL, width * height);
sprite.type = ST_FONT;
sprite.width = width;
sprite.height = height;
sprite.x_offs = gm.gmptGlyphOrigin.x;
sprite.y_offs = this->ascender - gm.gmptGlyphOrigin.y;
if (size > 0) {
/* All pixel data returned by GDI is in the form of DWORD-aligned rows.
* For a non anti-aliased glyph, the returned bitmap has one bit per pixel.
* For anti-aliased rendering, GDI uses the strange value range of 0 to 64,
* inclusively. To map this to 0 to 255, we shift left by two and then
* subtract one. */
uint pitch = Align(aa ? gm.gmBlackBoxX : std::max(gm.gmBlackBoxX / 8u, 1u), 4);
/* Draw shadow for medium size. */
if (this->fs == FS_NORMAL && !aa) {
for (uint y = 0; y < gm.gmBlackBoxY; y++) {
for (uint x = 0; x < gm.gmBlackBoxX; x++) {
if (aa ? (bmp[x + y * pitch] > 0) : HasBit(bmp[(x / 8) + y * pitch], 7 - (x % 8))) {
sprite.data[1 + x + (1 + y) * sprite.width].m = SHADOW_COLOUR;
sprite.data[1 + x + (1 + y) * sprite.width].a = aa ? (bmp[x + y * pitch] << 2) - 1 : 0xFF;
}
}
}
}
for (uint y = 0; y < gm.gmBlackBoxY; y++) {
for (uint x = 0; x < gm.gmBlackBoxX; x++) {
if (aa ? (bmp[x + y * pitch] > 0) : HasBit(bmp[(x / 8) + y * pitch], 7 - (x % 8))) {
sprite.data[x + y * sprite.width].m = FACE_COLOUR;
sprite.data[x + y * sprite.width].a = aa ? (bmp[x + y * pitch] << 2) - 1 : 0xFF;
}
}
}
}
GlyphEntry new_glyph;
new_glyph.sprite = BlitterFactory::GetCurrentBlitter()->Encode(&sprite, AllocateFont);
new_glyph.width = gm.gmCellIncX;
this->SetGlyphPtr(key, &new_glyph);
return new_glyph.sprite;
}
/* virtual */ GlyphID Win32FontCache::MapCharToGlyph(WChar key)
{
assert(IsPrintable(key));
if (key >= SCC_SPRITE_START && key <= SCC_SPRITE_END) {
return this->parent->MapCharToGlyph(key);
}
/* Convert characters outside of the BMP into surrogate pairs. */
WCHAR chars[2];
if (key >= 0x010000U) {
chars[0] = (WCHAR)(((key - 0x010000U) >> 10) + 0xD800);
chars[1] = (WCHAR)(((key - 0x010000U) & 0x3FF) + 0xDC00);
} else {
chars[0] = (WCHAR)(key & 0xFFFF);
}
WORD glyphs[2] = {0, 0};
GetGlyphIndicesW(this->dc, chars, key >= 0x010000U ? 2 : 1, glyphs, GGI_MARK_NONEXISTING_GLYPHS);
return glyphs[0] != 0xFFFF ? glyphs[0] : 0;
}
/* virtual */ const void *Win32FontCache::InternalGetFontTable(uint32 tag, size_t &length)
{
DWORD len = GetFontData(this->dc, tag, 0, nullptr, 0);
void *result = nullptr;
if (len != GDI_ERROR && len > 0) {
result = MallocT<BYTE>(len);
GetFontData(this->dc, tag, 0, result, len);
}
length = len;
return result;
}
/**
* Loads the GDI font.
* If a GDI font description is present, e.g. from the automatic font
* fallback search, use it. Otherwise, try to resolve it by font name.
* @param fs The font size to load.
*/
static void LoadWin32Font(FontSize fs)
{
static const char *SIZE_TO_NAME[] = { "medium", "small", "large", "mono" };
FreeTypeSubSetting *settings = nullptr;
switch (fs) {
default: NOT_REACHED();
case FS_SMALL: settings = &_freetype.small; break;
case FS_NORMAL: settings = &_freetype.medium; break;
case FS_LARGE: settings = &_freetype.large; break;
case FS_MONO: settings = &_freetype.mono; break;
}
if (StrEmpty(settings->font)) return;
LOGFONT logfont;
MemSetT(&logfont, 0);
logfont.lfPitchAndFamily = fs == FS_MONO ? FIXED_PITCH : VARIABLE_PITCH;
logfont.lfCharSet = DEFAULT_CHARSET;
logfont.lfOutPrecision = OUT_OUTLINE_PRECIS;
logfont.lfClipPrecision = CLIP_DEFAULT_PRECIS;
if (settings->os_handle != nullptr) {
logfont = *(const LOGFONT *)settings->os_handle;
} else if (strchr(settings->font, '.') != nullptr) {
/* Might be a font file name, try load it. */
TCHAR fontPath[MAX_PATH] = {};
/* See if this is an absolute path. */
if (FileExists(settings->font)) {
convert_to_fs(settings->font, fontPath, lengthof(fontPath), false);
} else {
/* Scan the search-paths to see if it can be found. */
std::string full_font = FioFindFullPath(BASE_DIR, settings->font);
if (!full_font.empty()) {
convert_to_fs(full_font.c_str(), fontPath, lengthof(fontPath), false);
}
}
if (fontPath[0] != 0) {
if (AddFontResourceEx(fontPath, FR_PRIVATE, 0) != 0) {
/* Try a nice little undocumented function first for getting the internal font name.
* Some documentation is found at: http://www.undocprint.org/winspool/getfontresourceinfo */
typedef BOOL(WINAPI * PFNGETFONTRESOURCEINFO)(LPCTSTR, LPDWORD, LPVOID, DWORD);
#ifdef UNICODE
static PFNGETFONTRESOURCEINFO GetFontResourceInfo = (PFNGETFONTRESOURCEINFO)GetProcAddress(GetModuleHandle(_T("Gdi32")), "GetFontResourceInfoW");
#else
static PFNGETFONTRESOURCEINFO GetFontResourceInfo = (PFNGETFONTRESOURCEINFO)GetProcAddress(GetModuleHandle(_T("Gdi32")), "GetFontResourceInfoA");
#endif
if (GetFontResourceInfo != nullptr) {
/* Try to query an array of LOGFONTs that describe the file. */
DWORD len = 0;
if (GetFontResourceInfo(fontPath, &len, nullptr, 2) && len >= sizeof(LOGFONT)) {
LOGFONT *buf = (LOGFONT *)AllocaM(byte, len);
if (GetFontResourceInfo(fontPath, &len, buf, 2)) {
logfont = *buf; // Just use first entry.
}
}
}
/* No dice yet. Use the file name as the font face name, hoping it matches. */
if (logfont.lfFaceName[0] == 0) {
TCHAR fname[_MAX_FNAME];
_tsplitpath(fontPath, nullptr, nullptr, fname, nullptr);
_tcsncpy_s(logfont.lfFaceName, lengthof(logfont.lfFaceName), fname, _TRUNCATE);
logfont.lfWeight = strcasestr(settings->font, " bold") != nullptr || strcasestr(settings->font, "-bold") != nullptr ? FW_BOLD : FW_NORMAL; // Poor man's way to allow selecting bold fonts.
}
} else {
ShowInfoF("Unable to load file '%s' for %s font, using default windows font selection instead", settings->font, SIZE_TO_NAME[fs]);
}
}
}
if (logfont.lfFaceName[0] == 0) {
logfont.lfWeight = strcasestr(settings->font, " bold") != nullptr ? FW_BOLD : FW_NORMAL; // Poor man's way to allow selecting bold fonts.
convert_to_fs(settings->font, logfont.lfFaceName, lengthof(logfont.lfFaceName), false);
}
HFONT font = CreateFontIndirect(&logfont);
if (font == nullptr) {
ShowInfoF("Unable to use '%s' for %s font, Win32 reported error 0x%lX, using sprite font instead", settings->font, SIZE_TO_NAME[fs], GetLastError());
return;
}
DeleteObject(font);
new Win32FontCache(fs, logfont, settings->size);
}
#endif /* WITH_FREETYPE */
#endif /* defined(WITH_FREETYPE) || defined(_WIN32) */
/**
* (Re)initialize the freetype related things, i.e. load the non-sprite fonts.
@ -1083,7 +694,11 @@ void InitFreeType(bool monospace)
#ifdef WITH_FREETYPE
LoadFreeTypeFont(fs);
#elif defined(_WIN32)
extern void LoadWin32Font(FontSize fs);
LoadWin32Font(fs);
#elif defined(WITH_COCOA)
extern void LoadCoreTextFont(FontSize fs);
LoadCoreTextFont(fs);
#endif
}
}
@ -1103,3 +718,12 @@ void UninitFreeType()
_library = nullptr;
#endif /* WITH_FREETYPE */
}
#if !defined(_WIN32) && !defined(__APPLE__) && !defined(WITH_FONTCONFIG) && !defined(WITH_COCOA)
#ifdef WITH_FREETYPE
FT_Error GetFontByFaceName(const char *font_name, FT_Face *face) { return FT_Err_Cannot_Open_Resource; }
#endif /* WITH_FREETYPE */
bool SetFallbackFont(FreeTypeSettings *settings, const char *language_isocode, int winlangid, MissingGlyphSearcher *callback) { return false; }
#endif /* !defined(_WIN32) && !defined(__APPLE__) && !defined(WITH_FONTCONFIG) && !defined(WITH_COCOA) */

@ -32,6 +32,9 @@ protected:
int ascender; ///< The ascender value of the font.
int descender; ///< The descender value of the font.
int units_per_em; ///< The units per EM value of the font.
static int GetDefaultFontHeight(FontSize fs);
public:
FontCache(FontSize fs);
virtual ~FontCache();
@ -131,7 +134,7 @@ public:
* Get the native OS font handle, if there is one.
* @return Opaque OS font handle.
*/
virtual void *GetOSHandle()
virtual const void *GetOSHandle()
{
return nullptr;
}
@ -213,15 +216,13 @@ static inline bool GetDrawGlyphShadow(FontSize size)
return FontCache::Get(size)->GetDrawGlyphShadow();
}
#if defined(WITH_FREETYPE) || defined(_WIN32)
/** Settings for a single freetype font. */
struct FreeTypeSubSetting {
char font[MAX_PATH]; ///< The name of the font, or path to the font.
uint size; ///< The (requested) size of the font.
bool aa; ///< Whether to do anti aliasing or not.
const void *os_handle = nullptr; ///< Optional native OS font info.
const void *os_handle = nullptr; ///< Optional native OS font info. Only valid during font search.
};
/** Settings for the freetype fonts. */
@ -234,8 +235,6 @@ struct FreeTypeSettings {
extern FreeTypeSettings _freetype;
#endif /* defined(WITH_FREETYPE) || defined(_WIN32) */
void InitFreeType(bool monospace);
void UninitFreeType();

@ -0,0 +1,86 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
/** @file fontcache_internal.h Support types and functions for platform-specific font support. */
#ifndef FONTCACHE_INTERNAL_H
#define FONTCACHE_INTERNAL_H
#include "core/smallmap_type.hpp"
#include "fontcache.h"
static const int MAX_FONT_SIZE = 72; ///< Maximum font size.
static const byte FACE_COLOUR = 1;
static const byte SHADOW_COLOUR = 2;
/** Font cache for fonts that are based on a TrueType font. */
class TrueTypeFontCache : public FontCache {
protected:
static constexpr int MAX_GLYPH_DIM = 256; ///< Maximum glyph dimensions.
static constexpr uint MAX_FONT_MIN_REC_SIZE = 20u; ///< Upper limit for the recommended font size in case a font file contains nonsensical values.
int req_size; ///< Requested font size.
int used_size; ///< Used font size.
typedef SmallMap<uint32, std::pair<size_t, const void *> > FontTable; ///< Table with font table cache
FontTable font_tables; ///< Cached font tables.
/** Container for information about a glyph. */
struct GlyphEntry {
Sprite *sprite; ///< The loaded sprite.
byte width; ///< The width of the glyph.
bool duplicate; ///< Whether this glyph entry is a duplicate, i.e. may this be freed?
};
/**
* The glyph cache. This is structured to reduce memory consumption.
* 1) There is a 'segment' table for each font size.
* 2) Each segment table is a discrete block of characters.
* 3) Each block contains 256 (aligned) characters sequential characters.
*
* The cache is accessed in the following way:
* For character 0x0041 ('A'): glyph_to_sprite[0x00][0x41]
* For character 0x20AC (Euro): glyph_to_sprite[0x20][0xAC]
*
* Currently only 256 segments are allocated, "limiting" us to 65536 characters.
* This can be simply changed in the two functions Get & SetGlyphPtr.
*/
GlyphEntry **glyph_to_sprite;
GlyphEntry *GetGlyphPtr(GlyphID key);
void SetGlyphPtr(GlyphID key, const GlyphEntry *glyph, bool duplicate = false);
virtual const void *InternalGetFontTable(uint32 tag, size_t &length) = 0;
virtual const Sprite *InternalGetGlyph(GlyphID key, bool aa) = 0;
public:
TrueTypeFontCache(FontSize fs, int pixels);
virtual ~TrueTypeFontCache();
int GetFontSize() const override { return this->used_size; }
SpriteID GetUnicodeGlyph(WChar key) override { return this->parent->GetUnicodeGlyph(key); }
void SetUnicodeGlyph(WChar key, SpriteID sprite) override { this->parent->SetUnicodeGlyph(key, sprite); }
virtual void InitializeUnicodeGlyphMap()
{
this->parent->InitializeUnicodeGlyphMap();
font_height_cache[this->fs] = this->GetHeight();
}
const Sprite *GetGlyph(GlyphID key) override;
const void *GetFontTable(uint32 tag, size_t &length) override;
void ClearFontCache() override;
uint GetGlyphWidth(GlyphID key) override;
bool GetDrawGlyphShadow() override;
bool IsBuiltInFont() override { return false; }
};
void *AllocateFont(size_t size);
#endif /* FONTCACHE_INTERNAL_H */

@ -27,7 +27,6 @@ FT_Error GetFontByFaceName(const char *font_name, FT_Face *face);
#endif /* WITH_FREETYPE */
#if defined(WITH_FREETYPE) || defined(_WIN32)
/**
* We would like to have a fallback font as the current one
* doesn't contain all characters we need.
@ -38,8 +37,6 @@ FT_Error GetFontByFaceName(const char *font_name, FT_Face *face);
* @param callback The function to call to check for missing glyphs.
* @return true if a font has been set, false otherwise.
*/
bool SetFallbackFont(FreeTypeSettings *settings, const char *language_isocode, int winlangid, class MissingGlyphSearcher *callback);
#endif /* defined(WITH_FREETYPE) || defined(WIN32)*/
bool SetFallbackFont(struct FreeTypeSettings *settings, const char *language_isocode, int winlangid, class MissingGlyphSearcher *callback);
#endif

@ -151,6 +151,10 @@ namespace {
/* Total duration covered by collected points */
TimingMeasurement total = 0;
/* We have nothing to compare the first point against */
point--;
if (point < 0) point = NUM_FRAMERATE_POINTS - 1;
while (point != last_point) {
/* Only record valid data points, but pretend the gaps in measurements aren't there */
if (this->durations[point] != INVALID_DURATION) {
@ -185,7 +189,7 @@ namespace {
PerformanceData(1), // PFE_ACC_GL_AIRCRAFT
PerformanceData(1), // PFE_GL_LANDSCAPE
PerformanceData(1), // PFE_GL_LINKGRAPH
PerformanceData(GL_RATE), // PFE_DRAWING
PerformanceData(1000.0 / 30), // PFE_DRAWING
PerformanceData(1), // PFE_ACC_DRAWWORLD
PerformanceData(60.0), // PFE_VIDEO
PerformanceData(1000.0 * 8192 / 44100), // PFE_SOUND
@ -464,7 +468,7 @@ struct FramerateWindow : Window {
this->speed_gameloop.SetRate(gl_rate / _pf_data[PFE_GAMELOOP].expected_rate, 1.0);
if (this->small) return; // in small mode, this is everything needed
this->rate_drawing.SetRate(_pf_data[PFE_DRAWING].GetRate(), _pf_data[PFE_DRAWING].expected_rate);
this->rate_drawing.SetRate(_pf_data[PFE_DRAWING].GetRate(), _settings_client.gui.refresh_rate);
int new_active = 0;
for (PerformanceElement e = PFE_FIRST; e < PFE_MAX; e++) {

@ -28,6 +28,8 @@
#include "saveload/saveload.h"
#include "progress.h"
#include "error.h"
#include "newgrf_townname.h"
#include "townname_type.h"
#include "widgets/genworld_widget.h"
@ -81,11 +83,11 @@ static const NWidgetPart _nested_generate_landscape_widgets[] = {
NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_MAPSIZE, STR_MAPGEN_MAPSIZE_TOOLTIP), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_LAND_GENERATOR, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_TOWNS, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_TERRAIN_TYPE, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_VARIETY, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_QUANTITY_OF_SEA_LAKES, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_TREE_PLACER, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_TOWNS, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_INDUSTRIES, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_BORDER_TYPE, STR_NULL), SetFill(1, 1),
EndContainer(),
/* Widgets at the right of the labels. */
@ -97,11 +99,11 @@ static const NWidgetPart _nested_generate_landscape_widgets[] = {
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_MAPSIZE_Y_PULLDOWN), SetDataTip(STR_JUST_INT, STR_MAPGEN_MAPSIZE_TOOLTIP), SetFill(1, 0),
EndContainer(),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_LANDSCAPE_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TOWN_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TERRAIN_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_VARIETY_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_WATER_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TREE_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TOWN_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_INDUSTRY_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_BORDERS_RANDOM), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
EndContainer(),
EndContainer(),
@ -111,9 +113,9 @@ static const NWidgetPart _nested_generate_landscape_widgets[] = {
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_MAX_HEIGHTLEVEL, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SNOW_LINE_HEIGHT, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_DATE, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_INDUSTRIES, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SMOOTHNESS, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_QUANTITY_OF_RIVERS, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_GAME_OPTIONS_TOWN_NAMES_FRAME, STR_NULL), SetFill(1, 1),
EndContainer(),
NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0),
/* Max. heightlevel. */
@ -134,9 +136,9 @@ static const NWidgetPart _nested_generate_landscape_widgets[] = {
NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_GL_START_DATE_TEXT), SetDataTip(STR_BLACK_DATE_LONG, STR_NULL), SetFill(1, 0),
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_START_DATE_UP), SetDataTip(SPR_ARROW_UP, STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD), SetFill(0, 1),
EndContainer(),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_INDUSTRY_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_SMOOTHNESS_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_RIVER_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TOWNNAME_DROPDOWN), SetDataTip(STR_BLACK_STRING, STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP), SetFill(1, 0),
EndContainer(),
EndContainer(),
NWidget(WWT_PUSHTXTBTN, COLOUR_GREEN, WID_GL_GENERATE_BUTTON), SetMinimalSize(84, 0), SetDataTip(STR_MAPGEN_GENERATE, STR_NULL), SetFill(1, 1),
@ -198,18 +200,19 @@ static const NWidgetPart _nested_heightmap_load_widgets[] = {
/* Labels at the left side. */
NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_HEIGHTMAP_NAME, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_HEIGHTMAP_SIZE_LABEL, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_MAPSIZE, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_HEIGHTMAP_ROTATION, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_TOWNS, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_INDUSTRIES, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_QUANTITY_OF_RIVERS, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_TREE_PLACER, STR_NULL), SetFill(1, 1),
EndContainer(),
/* Widgets at the right of the labels. */
NWidget(NWID_VERTICAL), SetPIP(0, 4, 0),
NWidget(WWT_EMPTY, COLOUR_ORANGE, WID_GL_HEIGHTMAP_NAME_TEXT), SetFill(1, 0),
NWidget(NWID_HORIZONTAL), SetPIP(0, 5, 0),
NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0),
NWidget(WWT_TEXT, COLOUR_ORANGE, WID_GL_HEIGHTMAP_SIZE_TEXT), SetDataTip(STR_MAPGEN_HEIGHTMAP_SIZE, STR_NULL), SetFill(1, 0),
/* Mapsize X * Y. */
NWidget(NWID_HORIZONTAL), SetPIP(0, 4, 0),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_MAPSIZE_X_PULLDOWN), SetDataTip(STR_JUST_INT, STR_NULL), SetFill(1, 0),
@ -220,33 +223,32 @@ static const NWidgetPart _nested_heightmap_load_widgets[] = {
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TOWN_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_INDUSTRY_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_RIVER_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TREE_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0),
EndContainer(),
NWidget(NWID_VERTICAL), SetPIP(0, 4, 0),
NWidget(NWID_HORIZONTAL), SetPIP(0, 3, 0),
NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_HEIGHTMAP_SIZE_LABEL, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SNOW_LINE_HEIGHT, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_MAX_HEIGHTLEVEL, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SNOW_LINE_HEIGHT, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_DATE, STR_NULL), SetFill(1, 1),
NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_GAME_OPTIONS_TOWN_NAMES_FRAME, STR_NULL), SetFill(1, 1),
EndContainer(),
NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0),
NWidget(WWT_TEXT, COLOUR_ORANGE, WID_GL_HEIGHTMAP_SIZE_TEXT), SetDataTip(STR_MAPGEN_HEIGHTMAP_SIZE, STR_NULL), SetFill(1, 0),
NWidget(NWID_HORIZONTAL),
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_SNOW_LINE_DOWN), SetFill(0, 1),
NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0),
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_SNOW_LINE_UP), SetFill(0, 1),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_MAX_HEIGHTLEVEL_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_MAX_HEIGHTLEVEL_DOWN), SetFill(0, 1),
NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_MAX_HEIGHTLEVEL_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0),
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_MAX_HEIGHTLEVEL_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_MAX_HEIGHTLEVEL_UP), SetFill(0, 1),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_SNOW_LINE_DOWN), SetFill(0, 1),
NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0),
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_LEVEL_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_SNOW_LINE_UP), SetFill(0, 1),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_START_DATE_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD), SetFill(0, 1),
NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_GL_START_DATE_TEXT), SetDataTip(STR_BLACK_DATE_LONG, STR_NULL), SetFill(1, 0),
NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_START_DATE_UP), SetDataTip(SPR_ARROW_UP, STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD), SetFill(0, 1),
EndContainer(),
NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TOWNNAME_DROPDOWN), SetDataTip(STR_BLACK_STRING, STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP), SetFill(1, 0),
EndContainer(),
EndContainer(),
NWidget(WWT_PUSHTXTBTN, COLOUR_GREEN, WID_GL_GENERATE_BUTTON), SetMinimalSize(84, 0), SetDataTip(STR_MAPGEN_GENERATE, STR_NULL), SetFill(1, 1),
@ -319,11 +321,38 @@ static DropDownList BuildMapsizeDropDown(int other_dimension)
return list;
}
static DropDownList BuildTownNameDropDown()
{
DropDownList list;
/* Add and sort newgrf townnames generators */
const auto &grf_names = GetGRFTownNameList();
for (uint i = 0; i < grf_names.size(); i++) {
list.emplace_back(new DropDownListStringItem(grf_names[i], BUILTIN_TOWNNAME_GENERATOR_COUNT + i, false));
}
std::sort(list.begin(), list.end(), DropDownListStringItem::NatSortFunc);
size_t newgrf_size = list.size();
/* Insert newgrf_names at the top of the list */
if (newgrf_size > 0) {
list.emplace_back(new DropDownListItem(-1, false)); // separator line
newgrf_size++;
}
/* Add and sort original townnames generators */
for (uint i = 0; i < BUILTIN_TOWNNAME_GENERATOR_COUNT; i++) {
list.emplace_back(new DropDownListStringItem(STR_GAME_OPTIONS_TOWN_NAME_ORIGINAL_ENGLISH + i, i, false));
}
std::sort(list.begin() + newgrf_size, list.end(), DropDownListStringItem::NatSortFunc);
return list;
}
static const StringID _elevations[] = {STR_TERRAIN_TYPE_VERY_FLAT, STR_TERRAIN_TYPE_FLAT, STR_TERRAIN_TYPE_HILLY, STR_TERRAIN_TYPE_MOUNTAINOUS, STR_TERRAIN_TYPE_ALPINIST, INVALID_STRING_ID};
static const StringID _sea_lakes[] = {STR_SEA_LEVEL_VERY_LOW, STR_SEA_LEVEL_LOW, STR_SEA_LEVEL_MEDIUM, STR_SEA_LEVEL_HIGH, STR_SEA_LEVEL_CUSTOM, INVALID_STRING_ID};
static const StringID _rivers[] = {STR_RIVERS_NONE, STR_RIVERS_FEW, STR_RIVERS_MODERATE, STR_RIVERS_LOT, INVALID_STRING_ID};
static const StringID _smoothness[] = {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, INVALID_STRING_ID};
static const StringID _tree_placer[] = {STR_CONFIG_SETTING_TREE_PLACER_NONE, STR_CONFIG_SETTING_TREE_PLACER_ORIGINAL, STR_CONFIG_SETTING_TREE_PLACER_IMPROVED, INVALID_STRING_ID};
static const StringID _rotation[] = {STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE, STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE, INVALID_STRING_ID};
static const StringID _landscape[] = {STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL, STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS, INVALID_STRING_ID};
static const StringID _num_towns[] = {STR_NUM_VERY_LOW, STR_NUM_LOW, STR_NUM_NORMAL, STR_NUM_HIGH, STR_NUM_CUSTOM, INVALID_STRING_ID};
@ -357,10 +386,9 @@ struct GenerateLandscapeWindow : public Window {
SetDropDownColor();
/* Disable town, industry and trees in SE */
/* Disable town and industry in SE */
this->SetWidgetDisabledState(WID_GL_TOWN_PULLDOWN, _game_mode == GM_EDITOR);
this->SetWidgetDisabledState(WID_GL_INDUSTRY_PULLDOWN, _game_mode == GM_EDITOR);
this->SetWidgetDisabledState(WID_GL_TREE_PULLDOWN, _game_mode == GM_EDITOR);
this->OnInvalidateData();
}
@ -386,9 +414,17 @@ struct GenerateLandscapeWindow : public Window {
}
break;
case WID_GL_TOWNNAME_DROPDOWN: {
uint gen = _settings_newgame.game_creation.town_name;
StringID name = gen < BUILTIN_TOWNNAME_GENERATOR_COUNT ?
STR_GAME_OPTIONS_TOWN_NAME_ORIGINAL_ENGLISH + gen :
GetGRFTownNameName(gen - BUILTIN_TOWNNAME_GENERATOR_COUNT);
SetDParam(0, name);
break;
}
case WID_GL_INDUSTRY_PULLDOWN: SetDParam(0, _game_mode == GM_EDITOR ? STR_CONFIG_SETTING_OFF : _num_inds[_settings_newgame.difficulty.industry_density]); break;
case WID_GL_LANDSCAPE_PULLDOWN: SetDParam(0, _landscape[_settings_newgame.game_creation.land_generator]); break;
case WID_GL_TREE_PULLDOWN: SetDParam(0, _tree_placer[_settings_newgame.game_creation.tree_placer]); break;
case WID_GL_TERRAIN_PULLDOWN: SetDParam(0, _elevations[_settings_newgame.difficulty.terrain_type]); break;
case WID_GL_WATER_PULLDOWN:
@ -513,7 +549,6 @@ struct GenerateLandscapeWindow : public Window {
case WID_GL_INDUSTRY_PULLDOWN: strs = _num_inds; break;
case WID_GL_LANDSCAPE_PULLDOWN: strs = _landscape; break;
case WID_GL_TREE_PULLDOWN: strs = _tree_placer; break;
case WID_GL_TERRAIN_PULLDOWN: strs = _elevations; break;
case WID_GL_WATER_PULLDOWN:
strs = _sea_lakes;
@ -584,6 +619,10 @@ struct GenerateLandscapeWindow : public Window {
ShowDropDownMenu(this, _num_towns, _settings_newgame.difficulty.number_towns, WID_GL_TOWN_PULLDOWN, 0, 0);
break;
case WID_GL_TOWNNAME_DROPDOWN: // Townname generator
ShowDropDownList(this, BuildTownNameDropDown(), _settings_newgame.game_creation.town_name, WID_GL_TOWNNAME_DROPDOWN);
break;
case WID_GL_INDUSTRY_PULLDOWN: // Number of industries
ShowDropDownMenu(this, _num_inds, _settings_newgame.difficulty.industry_density, WID_GL_INDUSTRY_PULLDOWN, 0, 0);
break;
@ -671,10 +710,6 @@ struct GenerateLandscapeWindow : public Window {
ShowQueryString(STR_JUST_INT, STR_MAPGEN_SNOW_LINE_QUERY_CAPT, 4, this, CS_NUMERAL, QSF_ENABLE_DEFAULT);
break;
case WID_GL_TREE_PULLDOWN: // Tree placer
ShowDropDownMenu(this, _tree_placer, _settings_newgame.game_creation.tree_placer, WID_GL_TREE_PULLDOWN, 0, 0);
break;
case WID_GL_LANDSCAPE_PULLDOWN: // Landscape generator
ShowDropDownMenu(this, _landscape, _settings_newgame.game_creation.land_generator, WID_GL_LANDSCAPE_PULLDOWN, 0, 0);
break;
@ -760,7 +795,6 @@ struct GenerateLandscapeWindow : public Window {
_settings_newgame.game_creation.map_y = index;
SetDropDownColor();
break;
case WID_GL_TREE_PULLDOWN: _settings_newgame.game_creation.tree_placer = index; break;
case WID_GL_RIVER_PULLDOWN: _settings_newgame.game_creation.amount_of_rivers = index; break;
case WID_GL_SMOOTHNESS_PULLDOWN: _settings_newgame.game_creation.tgen_smoothness = index; break;
case WID_GL_VARIETY_PULLDOWN: _settings_newgame.game_creation.variety = index; break;
@ -783,6 +817,13 @@ struct GenerateLandscapeWindow : public Window {
_settings_newgame.difficulty.number_towns = index;
break;
case WID_GL_TOWNNAME_DROPDOWN: // Town names
if (_game_mode == GM_MENU || Town::GetNumItems() == 0) {
_settings_newgame.game_creation.town_name = index;
SetWindowDirty(WC_GAME_OPTIONS, WN_GAME_OPTIONS_GAME_OPTIONS);
}
break;
case WID_GL_INDUSTRY_PULLDOWN: _settings_newgame.difficulty.industry_density = index; break;
case WID_GL_TERRAIN_PULLDOWN: _settings_newgame.difficulty.terrain_type = index; break;
@ -1203,7 +1244,7 @@ struct GenWorldStatus {
StringID cls;
uint current;
uint total;
int timer;
std::chrono::steady_clock::time_point timer;
};
static GenWorldStatus _gws;
@ -1309,7 +1350,7 @@ void PrepareGenerateWorldProgress()
_gws.current = 0;
_gws.total = 0;
_gws.percent = 0;
_gws.timer = 0; // Forces to paint the progress window immediately
_gws.timer = std::chrono::steady_clock::now() - std::chrono::milliseconds(MODAL_PROGRESS_REDRAW_TIMEOUT * 2); // Ensure we draw on first update
}
/**
@ -1344,12 +1385,7 @@ static void _SetGeneratingWorldProgress(GenWorldProgress cls, uint progress, uin
}
/* Don't update the screen too often. So update it once in every once in a while... */
#if defined(__GNUC__) || defined(__clang__)
const uint32 now = __atomic_load_n(&_realtime_tick, __ATOMIC_RELAXED);
#else
const uint32 now = _realtime_tick;
#endif
if (!_network_dedicated && _gws.timer != 0 && now - _gws.timer < MODAL_PROGRESS_REDRAW_TIMEOUT) return;
if (!_network_dedicated && std::chrono::steady_clock::now() - _gws.timer < std::chrono::milliseconds(MODAL_PROGRESS_REDRAW_TIMEOUT)) return;
/* Percentage is about the number of completed tasks, so 'current - 1' */
_gws.percent = percent_table[cls] + (percent_table[cls + 1] - percent_table[cls]) * (_gws.current == 0 ? 0 : _gws.current - 1) / _gws.total;
@ -1385,11 +1421,7 @@ static void _SetGeneratingWorldProgress(GenWorldProgress cls, uint progress, uin
_modal_progress_work_mutex.lock();
_modal_progress_paint_mutex.unlock();
#if defined(__GNUC__) || defined(__clang__)
_gws.timer = __atomic_load_n(&_realtime_tick, __ATOMIC_RELAXED);
#else
_gws.timer = _realtime_tick;
#endif
_gws.timer = std::chrono::steady_clock::now();
}
/**

@ -86,6 +86,10 @@ static ReusableBuffer<uint8> _cursor_backup;
ZoomLevel _gui_zoom; ///< GUI Zoom level
ZoomLevel _font_zoom; ///< Font Zoom level
int8 _gui_zoom_cfg; ///< GUI zoom level in config.
int8 _font_zoom_cfg; ///< Font zoom level in config.
/**
* The rect for repaint.
*
@ -1546,13 +1550,8 @@ void DrawDirtyBlocks()
_modal_progress_paint_mutex.unlock();
_modal_progress_work_mutex.unlock();
/* Wait a while and update _realtime_tick so we are given the rights */
if (!is_first_modal_progress_loop) SleepWhileModalProgress(MODAL_PROGRESS_REDRAW_TIMEOUT);
#if defined(__GNUC__) || defined(__clang__)
__atomic_add_fetch(&_realtime_tick, MODAL_PROGRESS_REDRAW_TIMEOUT, __ATOMIC_RELAXED);
#else
_realtime_tick += MODAL_PROGRESS_REDRAW_TIMEOUT;
#endif
/* Wait a while and hope the modal gives us a bit of time to draw the GUI. */
if (!is_first_modal_progress_loop) CSleep(MODAL_PROGRESS_REDRAW_TIMEOUT);
/* Modal progress thread may need blitter access while we are waiting for it. */
VideoDriver::GetInstance()->ReleaseBlitterLock();
@ -2182,3 +2181,23 @@ void SortResolutions()
{
std::sort(_resolutions.begin(), _resolutions.end());
}
/**
* Resolve GUI zoom level, if auto-suggestion is requested.
*/
void UpdateGUIZoom()
{
/* Determine real GUI zoom to use. */
if (_gui_zoom_cfg == ZOOM_LVL_CFG_AUTO) {
_gui_zoom = static_cast<ZoomLevel>(Clamp(VideoDriver::GetInstance()->GetSuggestedUIZoom(), _settings_client.gui.zoom_min, _settings_client.gui.zoom_max));
} else {
_gui_zoom = static_cast<ZoomLevel>(_gui_zoom_cfg);
}
/* Determine real font zoom to use. */
if (_font_zoom_cfg == ZOOM_LVL_CFG_AUTO) {
_font_zoom = static_cast<ZoomLevel>(VideoDriver::GetInstance()->GetSuggestedUIZoom());
} else {
_font_zoom = static_cast<ZoomLevel>(_font_zoom_cfg);
}
}

@ -80,6 +80,7 @@ void UpdateWindows();
void DrawMouseCursor();
void ScreenSizeChanged();
void GameSizeChanged();
void UpdateGUIZoom();
void UndrawMouseCursor();
/** Size of the buffer used for drawing strings. */

@ -260,8 +260,9 @@ CommandCost CmdGoalQuestion(TileIndex tile, DoCommandFlag flags, uint32 p1, uint
} else {
if (company != INVALID_COMPANY && !Company::IsValidID(company)) return CMD_ERROR;
}
if (CountBits(button_mask) < 1 || CountBits(button_mask) > 3) return CMD_ERROR;
if (type >= GOAL_QUESTION_TYPE_COUNT) return CMD_ERROR;
uint min_buttons = (type == GQT_QUESTION ? 1 : 0);
if (CountBits(button_mask) < min_buttons || CountBits(button_mask) > 3) return CMD_ERROR;
if (type >= GQT_END) return CMD_ERROR;
if (flags & DC_EXEC) {
if (is_client) {

@ -375,10 +375,16 @@ struct GoalQuestionWindow : public Window {
if (n == 3) break;
}
this->buttons = n;
assert(this->buttons > 0 && this->buttons < 4);
assert(this->buttons < 4);
this->CreateNestedTree();
this->GetWidget<NWidgetStacked>(WID_GQ_BUTTONS)->SetDisplayedPlane(this->buttons - 1);
if (this->buttons == 0) {
this->GetWidget<NWidgetStacked>(WID_GQ_BUTTONS)->SetDisplayedPlane(SZSP_HORIZONTAL);
this->GetWidget<NWidgetStacked>(WID_GQ_BUTTON_SPACER)->SetDisplayedPlane(SZSP_HORIZONTAL);
} else {
this->GetWidget<NWidgetStacked>(WID_GQ_BUTTONS)->SetDisplayedPlane(this->buttons - 1);
this->GetWidget<NWidgetStacked>(WID_GQ_BUTTON_SPACER)->SetDisplayedPlane(0);
}
this->FinishInitNested(window_number);
}
@ -463,7 +469,9 @@ static const NWidgetPart _nested_goal_question_widgets_question[] = {
NWidget(WWT_PUSHTXTBTN, COLOUR_LIGHT_BLUE, WID_GQ_BUTTON_3), SetDataTip(STR_BLACK_STRING, STR_NULL), SetFill(1, 0),
EndContainer(),
EndContainer(),
NWidget(NWID_SPACER), SetMinimalSize(0, 8),
NWidget(NWID_SELECTION, INVALID_COLOUR, WID_GQ_BUTTON_SPACER),
NWidget(NWID_SPACER), SetMinimalSize(0, 8),
EndContainer(),
EndContainer(),
};
@ -488,7 +496,9 @@ static const NWidgetPart _nested_goal_question_widgets_info[] = {
NWidget(WWT_PUSHTXTBTN, COLOUR_LIGHT_BLUE, WID_GQ_BUTTON_3), SetDataTip(STR_BLACK_STRING, STR_NULL), SetFill(1, 0),
EndContainer(),
EndContainer(),
NWidget(NWID_SPACER), SetMinimalSize(0, 8),
NWidget(NWID_SELECTION, INVALID_COLOUR, WID_GQ_BUTTON_SPACER),
NWidget(NWID_SPACER), SetMinimalSize(0, 8),
EndContainer(),
EndContainer(),
};
@ -513,7 +523,9 @@ static const NWidgetPart _nested_goal_question_widgets_warning[] = {
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_GQ_BUTTON_3), SetDataTip(STR_BLACK_STRING, STR_NULL), SetFill(1, 0),
EndContainer(),
EndContainer(),
NWidget(NWID_SPACER), SetMinimalSize(0, 8),
NWidget(NWID_SELECTION, INVALID_COLOUR, WID_GQ_BUTTON_SPACER),
NWidget(NWID_SPACER), SetMinimalSize(0, 8),
EndContainer(),
EndContainer(),
};
@ -538,7 +550,9 @@ static const NWidgetPart _nested_goal_question_widgets_error[] = {
NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_GQ_BUTTON_3), SetDataTip(STR_BLACK_STRING, STR_NULL), SetFill(1, 0),
EndContainer(),
EndContainer(),
NWidget(NWID_SPACER), SetMinimalSize(0, 8),
NWidget(NWID_SELECTION, INVALID_COLOUR, WID_GQ_BUTTON_SPACER),
NWidget(NWID_SPACER), SetMinimalSize(0, 8),
EndContainer(),
EndContainer(),
};
@ -578,6 +592,6 @@ static WindowDesc _goal_question_list_desc[] = {
*/
void ShowGoalQuestion(uint16 id, byte type, uint32 button_mask, const char *question)
{
assert(type < GOAL_QUESTION_TYPE_COUNT);
assert(type < GQT_END);
new GoalQuestionWindow(&_goal_question_list_desc[type], id, type == 3 ? TC_WHITE : TC_BLACK, button_mask, question);
}

@ -13,7 +13,14 @@
#include "core/enum_type.hpp"
static const uint32 GOAL_QUESTION_BUTTON_COUNT = 18; ///< Amount of buttons available.
static const byte GOAL_QUESTION_TYPE_COUNT = 4; ///< Amount of question types.
enum GoalQuestionType : byte {
GQT_QUESTION = 0,
GQT_INFORMATION = 1,
GQT_WARNING = 2,
GQT_ERROR = 3,
GQT_END = 4,
};
/** Types of goal destinations */
enum GoalType : byte {

@ -165,7 +165,8 @@ struct ValuesInterval {
struct BaseGraphWindow : Window {
protected:
static const int GRAPH_MAX_DATASETS = 64;
static const int GRAPH_AXIS_LINE_COLOUR = PC_BLACK;
static const int GRAPH_AXIS_LINE_COLOUR = GREY_SCALE(1);
static const int GRAPH_ZERO_LINE_COLOUR = GREY_SCALE(8);
static const int GRAPH_NUM_MONTHS = 24; ///< Number of months displayed in the graph.
static const int MIN_GRAPH_NUM_LINES_Y = 9; ///< Minimal number of horizontal lines to draw.
@ -292,7 +293,7 @@ protected:
static_assert(GRAPH_MAX_DATASETS >= (int)NUM_CARGO && GRAPH_MAX_DATASETS >= (int)MAX_COMPANIES);
assert(this->num_vert_lines > 0);
byte grid_colour = _colour_gradient[COLOUR_GREY][4];
byte grid_colour = GREY_SCALE(3);
/* Rect r will be adjusted to contain just the graph, with labels being
* placed outside the area. */
@ -352,7 +353,7 @@ protected:
/* Draw the x axis. */
y = x_axis_offset + r.top;
GfxFillRect(r.left, y, r.right, y, GRAPH_AXIS_LINE_COLOUR);
GfxFillRect(r.left, y, r.right, y, GRAPH_ZERO_LINE_COLOUR);
/* Find the largest value that will be drawn. */
if (this->num_on_x_axis == 0) return;

@ -820,9 +820,9 @@ public:
assert(vehgroup.NumVehicles() > 0);
v = vehgroup.vehicles_begin[0];
/*
No VehicleClicked(v) support for now, because don't want
to enable any contextual actions except perhaps clicking/ctrl-clicking to clone orders.
*/
* No VehicleClicked(v) support for now, because don't want
* to enable any contextual actions except perhaps clicking/ctrl-clicking to clone orders.
*/
break;
}

@ -183,7 +183,7 @@ struct HighScoreWindow : EndGameHighScoreBaseWindow {
this->SetupHighScoreEndWindow();
Point pt = this->GetTopLeft(ScaleGUITrad(640), ScaleGUITrad(480));
SetDParam(0, ORIGINAL_END_YEAR);
SetDParam(0, _settings_game.game_creation.ending_year);
DrawStringMultiLine(pt.x + ScaleGUITrad(70), pt.x + ScaleGUITrad(570), pt.y, pt.y + ScaleGUITrad(140), !_networking ? STR_HIGHSCORE_TOP_COMPANIES_WHO_REACHED : STR_HIGHSCORE_TOP_COMPANIES_NETWORK_GAME, TC_FROMSTRING, SA_CENTER);
/* Draw Highscore peepz */

@ -37,6 +37,7 @@
#include "smallmap_gui.h"
#include "widgets/dropdown_type.h"
#include "widgets/industry_widget.h"
#include "clear_map.h"
#include "table/strings.h"
@ -244,6 +245,14 @@ static const NWidgetPart _nested_build_industry_widgets[] = {
NWidget(WWT_DEFSIZEBOX, COLOUR_DARK_GREEN),
NWidget(WWT_STICKYBOX, COLOUR_DARK_GREEN),
EndContainer(),
NWidget(NWID_SELECTION, COLOUR_DARK_GREEN, WID_DPI_SCENARIO_EDITOR_PANE),
NWidget(NWID_VERTICAL),
NWidget(WWT_TEXTBTN, COLOUR_DARK_GREEN, WID_DPI_CREATE_RANDOM_INDUSTRIES_WIDGET), SetMinimalSize(0, 12), SetFill(1, 0), SetResize(1, 0),
SetDataTip(STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES, STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP),
NWidget(WWT_TEXTBTN, COLOUR_DARK_GREEN, WID_DPI_REMOVE_ALL_INDUSTRIES_WIDGET), SetMinimalSize(0, 12), SetFill(1, 0), SetResize(1, 0),
SetDataTip(STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES, STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_TOOLTIP),
EndContainer(),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(WWT_MATRIX, COLOUR_DARK_GREEN, WID_DPI_MATRIX_WIDGET), SetMatrixDataTip(1, 0, STR_FUND_INDUSTRY_SELECTION_TOOLTIP), SetFill(1, 0), SetResize(1, 1), SetScrollbar(WID_DPI_SCROLLBAR),
NWidget(NWID_VSCROLLBAR, COLOUR_DARK_GREEN, WID_DPI_SCROLLBAR),
@ -289,11 +298,6 @@ class BuildIndustryWindow : public Window {
this->enabled[i] = false;
}
if (_game_mode == GM_EDITOR) { // give room for the Many Random "button"
this->index[this->count] = INVALID_INDUSTRYTYPE;
this->enabled[this->count] = true;
this->count++;
}
/* Fill the arrays with industries.
* The tests performed after the enabled allow to load the industries
* In the same way they are inserted by grf (if any)
@ -392,6 +396,13 @@ public:
this->FinishInitNested(0);
this->SetButtons();
/* Show scenario editor tools in editor. */
if (_game_mode != GM_EDITOR) {
auto *se_tools = this->GetWidget<NWidgetStacked>(WID_DPI_SCENARIO_EDITOR_PANE);
se_tools->SetDisplayedPlane(SZSP_HORIZONTAL);
this->ReInit();
}
}
void OnInit() override
@ -578,9 +589,53 @@ public:
}
}
static void AskManyRandomIndustriesCallback(Window *w, bool confirmed)
{
if (!confirmed) return;
if (Town::GetNumItems() == 0) {
ShowErrorMessage(STR_ERROR_CAN_T_GENERATE_INDUSTRIES, STR_ERROR_MUST_FOUND_TOWN_FIRST, WL_INFO);
} else {
extern void GenerateIndustries();
_generating_world = true;
GenerateIndustries();
_generating_world = false;
}
}
static void AskRemoveAllIndustriesCallback(Window *w, bool confirmed)
{
if (!confirmed) return;
for (Industry *industry : Industry::Iterate()) delete industry;
/* Clear farmland. */
for (TileIndex tile = 0; tile < MapSize(); tile++) {
if (IsTileType(tile, MP_CLEAR) && GetRawClearGround(tile) == CLEAR_FIELDS) {
MakeClear(tile, CLEAR_GRASS, 3);
}
}
MarkWholeScreenDirty();
}
void OnClick(Point pt, int widget, int click_count) override
{
switch (widget) {
case WID_DPI_CREATE_RANDOM_INDUSTRIES_WIDGET: {
assert(_game_mode == GM_EDITOR);
this->HandleButtonClick(WID_DPI_CREATE_RANDOM_INDUSTRIES_WIDGET);
ShowQuery(STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_CAPTION, STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY, nullptr, AskManyRandomIndustriesCallback);
break;
}
case WID_DPI_REMOVE_ALL_INDUSTRIES_WIDGET: {
assert(_game_mode == GM_EDITOR);
this->HandleButtonClick(WID_DPI_REMOVE_ALL_INDUSTRIES_WIDGET);
ShowQuery(STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION, STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_QUERY, nullptr, AskRemoveAllIndustriesCallback);
break;
}
case WID_DPI_MATRIX_WIDGET: {
int y = this->vscroll->GetScrolledRowFromWidget(pt.y, this, WID_DPI_MATRIX_WIDGET);
if (y < this->count) { // Is it within the boundaries of available data?
@ -610,22 +665,13 @@ public:
break;
case WID_DPI_FUND_WIDGET: {
if (this->selected_type == INVALID_INDUSTRYTYPE) {
this->HandleButtonClick(WID_DPI_FUND_WIDGET);
if (Town::GetNumItems() == 0) {
ShowErrorMessage(STR_ERROR_CAN_T_GENERATE_INDUSTRIES, STR_ERROR_MUST_FOUND_TOWN_FIRST, WL_INFO);
if (this->selected_type != INVALID_INDUSTRYTYPE) {
if (_game_mode != GM_EDITOR && _settings_game.construction.raw_industry_construction == 2 && GetIndustrySpec(this->selected_type)->IsRawIndustry()) {
DoCommandP(0, this->selected_type, InteractiveRandom(), CMD_BUILD_INDUSTRY | CMD_MSG(STR_ERROR_CAN_T_CONSTRUCT_THIS_INDUSTRY));
this->HandleButtonClick(WID_DPI_FUND_WIDGET);
} else {
extern void GenerateIndustries();
_generating_world = true;
GenerateIndustries();
_generating_world = false;
HandlePlacePushButton(this, WID_DPI_FUND_WIDGET, SPR_CURSOR_INDUSTRY, HT_RECT);
}
} else if (_game_mode != GM_EDITOR && _settings_game.construction.raw_industry_construction == 2 && GetIndustrySpec(this->selected_type)->IsRawIndustry()) {
DoCommandP(0, this->selected_type, InteractiveRandom(), CMD_BUILD_INDUSTRY | CMD_MSG(STR_ERROR_CAN_T_CONSTRUCT_THIS_INDUSTRY));
this->HandleButtonClick(WID_DPI_FUND_WIDGET);
} else {
HandlePlacePushButton(this, WID_DPI_FUND_WIDGET, SPR_CURSOR_INDUSTRY, HT_RECT);
}
break;
}

@ -1,4 +1,9 @@
set(MASTER_LANG_FILE
${CMAKE_CURRENT_SOURCE_DIR}/english.txt
)
set(LANG_SOURCE_FILES
${MASTER_LANG_FILE}
${CMAKE_CURRENT_SOURCE_DIR}/afrikaans.txt
${CMAKE_CURRENT_SOURCE_DIR}/arabic_egypt.txt
${CMAKE_CURRENT_SOURCE_DIR}/basque.txt
@ -10,7 +15,6 @@ set(LANG_SOURCE_FILES
${CMAKE_CURRENT_SOURCE_DIR}/czech.txt
${CMAKE_CURRENT_SOURCE_DIR}/danish.txt
${CMAKE_CURRENT_SOURCE_DIR}/dutch.txt
${CMAKE_CURRENT_SOURCE_DIR}/english.txt
${CMAKE_CURRENT_SOURCE_DIR}/english_AU.txt
${CMAKE_CURRENT_SOURCE_DIR}/english_US.txt
${CMAKE_CURRENT_SOURCE_DIR}/esperanto.txt
@ -75,7 +79,7 @@ foreach(LANG_SOURCE_FILE IN LISTS LANG_SOURCE_FILES)
-s ${CMAKE_CURRENT_SOURCE_DIR}
-d ${LANG_BINARY_DIR}
${LANG_SOURCE_FILE}
DEPENDS hoststrgen
DEPENDS hoststrgen ${MASTER_LANG_FILE}
MAIN_DEPENDENCY ${LANG_SOURCE_FILE}
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/english.txt
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
@ -104,7 +108,7 @@ add_custom_command_timestamp(OUTPUT ${TABLE_BINARY_DIR}/strings.h
COMMAND hoststrgen
-s ${CMAKE_CURRENT_SOURCE_DIR}
-d ${TABLE_BINARY_DIR}
DEPENDS hoststrgen ${LANG_SOURCE_FILES}
DEPENDS hoststrgen ${MASTER_LANG_FILE}
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Generating table/strings.h"
)

@ -939,8 +939,6 @@ STR_GAME_OPTIONS_CURRENCY_CNY :Chinese Renminb
STR_GAME_OPTIONS_CURRENCY_HKD :Hong Kong Dollar (HKD)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Pad voertuie
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Kies kant van pad waarop voertuie ry
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Bestuur aan linkerkant
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Bestuur aan regterkant
@ -2794,7 +2792,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Sneeu ly
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Beweeg die sneeu lyn een op
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Beweeg die sneeu lyn een af
STR_MAPGEN_LAND_GENERATOR :{BLACK}Land genereerder:
STR_MAPGEN_TREE_PLACER :{BLACK}Boom algoritme:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrein tipe:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Seevlak:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Riviere:

@ -886,8 +886,6 @@ STR_GAME_OPTIONS_CURRENCY_ZAR :راند جنو
STR_GAME_OPTIONS_CURRENCY_CUSTOM :مخصص ...
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}العربات البرية
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}اختار الجانب الذي تسير فيه المركبات
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :القيادة على اليسار
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :القيادة على اليمين
@ -2363,7 +2361,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK} ارت
STR_MAPGEN_SNOW_LINE_UP :{BLACK}ارفع خط الثلج مستوى واحد
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}خفض خط الثلج مستوى واحد
STR_MAPGEN_LAND_GENERATOR :{BLACK}مولد الخريطة:
STR_MAPGEN_TREE_PLACER :{BLACK} لوغاريثم الشجر:
STR_MAPGEN_TERRAIN_TYPE :{BLACK} نوع التضاريس
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}مستوى البحر
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}انهار:

@ -910,8 +910,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari Georgiarra
STR_GAME_OPTIONS_CURRENCY_IRR :Rial Iraniarra (IRR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Errepideko garraioak
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Aukeratu ibilgailuen gidatzeko norabidea
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Ezkerretik gidatu
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Eskuinetik gidatu
@ -2613,7 +2611,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Elur gar
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Igo puntu batean elur garaiera
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Jeitsi puntu batean elur garaiera
STR_MAPGEN_LAND_GENERATOR :{BLACK}Paisaia sortzailea:
STR_MAPGEN_TREE_PLACER :{BLACK}Zuhaitz algoritmoa:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Lur mota:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Itsaso kopurua:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Errekak:

@ -1248,8 +1248,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Ганконс
STR_GAME_OPTIONS_CURRENCY_INR :Індыйская рупія (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Дарожны рух
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Па якім баку дарогі рухаецца аўтатранспарт
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Езьдзіць леваруч
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Езьдзіць праваруч
@ -3115,7 +3113,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Вышы
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Падняць сьнегавую лінію
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Апусьціць сьнегавую лінію
STR_MAPGEN_LAND_GENERATOR :{BLACK}Ґенэратар ляндшафту:
STR_MAPGEN_TREE_PLACER :{BLACK}Альґарытм дрэваў:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Тып ляндшафту:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Колькасьць азёраў/мораў:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Колькасьць рэк:

@ -741,6 +741,7 @@ STR_SMALLMAP_LEGENDA_DOCK :{TINY_FONT}{BLA
STR_SMALLMAP_LEGENDA_ROUGH_LAND :{TINY_FONT}{BLACK}Terreno Irregular
STR_SMALLMAP_LEGENDA_GRASS_LAND :{TINY_FONT}{BLACK}Gramado
STR_SMALLMAP_LEGENDA_BARE_LAND :{TINY_FONT}{BLACK}Terreno Descoberto
STR_SMALLMAP_LEGENDA_RAINFOREST :{TINY_FONT}{BLACK}Floresta Tropical
STR_SMALLMAP_LEGENDA_FIELDS :{TINY_FONT}{BLACK}Campos
STR_SMALLMAP_LEGENDA_TREES :{TINY_FONT}{BLACK}Árvores
STR_SMALLMAP_LEGENDA_ROCKS :{TINY_FONT}{BLACK}Rochas
@ -940,8 +941,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Dólar de Hong
STR_GAME_OPTIONS_CURRENCY_INR :Rúpia Indiana (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Automóveis
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Selecionar lado da rodovia para automóveis dirigirem
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Dirigem na esquerda
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Dirigem na direita
@ -1608,6 +1607,7 @@ STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Linear
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Posicionamento de árvores: {STRING}
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Controla o nascimento aleatório de árvores durante o jogo. Isso pode afetar indústrias que dependem do crescimento de árvores, como serrarias
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_NO_SPREAD :Crescer sem espalhar {RED}(afeta serrarias)
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_NO_GROWTH_NO_SPREAD :Não crescer, não espalhar {RED}(afeta serrarias)
STR_CONFIG_SETTING_TOOLBAR_POS :Posição da barra de ferramentas principal: {STRING}
STR_CONFIG_SETTING_TOOLBAR_POS_HELPTEXT :Posição horizontal da barra de ferramentas principal no topo da tela
@ -1674,6 +1674,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_HELPTEXT :Sempre que uma
STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_IMPERIAL :Imperial (mph)
STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :Métrico (km/h)
STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_SI :SI (m/s)
STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_GAMEUNITS :Unidades de jogo (quadr./dia)
STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER :Unidade de potência veicular: {STRING}
STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT :Sempre que a potência de um veículo for exibida na interface de usuário, será exibida na unidade selecionada
@ -1806,12 +1807,13 @@ STR_INTRO_TRANSLATION :{BLACK}Faltam {
# Quit window
STR_QUIT_CAPTION :{WHITE}Sair
STR_QUIT_ARE_YOU_SURE_YOU_WANT_TO_EXIT_OPENTTD :{YELLOW}Tem a certeza que quer sair do OpenTTD?
STR_QUIT_YES :{BLACK}Sim
STR_QUIT_NO :{BLACK}Não
# Abandon game
STR_ABANDON_GAME_CAPTION :{WHITE}Abandonar jogo
STR_ABANDON_GAME_QUERY :{YELLOW}Você tem certeza que deseja abandonar este jogo?
STR_ABANDON_GAME_QUERY :{YELLOW}Você tem certeza que quer abandonar este jogo?
STR_ABANDON_SCENARIO_QUERY :{YELLOW}Você tem certeza que quer abandonar este cenário?
# Cheat window
@ -1969,6 +1971,7 @@ STR_NETWORK_SERVER_LIST_REFRESH :{BLACK}Atualiza
STR_NETWORK_SERVER_LIST_REFRESH_TOOLTIP :{BLACK}Atualiza as informações sobre o servidor
STR_NETWORK_SERVER_LIST_SEARCH_SERVER_INTERNET :{BLACK}Procurar na internet
STR_NETWORK_SERVER_LIST_SEARCH_SERVER_LAN :{BLACK}Buscar na LAN
STR_NETWORK_SERVER_LIST_ADD_SERVER :{BLACK}Adicionar servidor
STR_NETWORK_SERVER_LIST_ADD_SERVER_TOOLTIP :{BLACK}Adiciona um servidor à lista que será sempre verificada se existem jogos ocorrendo
STR_NETWORK_SERVER_LIST_START_SERVER :{BLACK}Iniciar servidor
@ -2199,6 +2202,7 @@ STR_NETWORK_SERVER_MESSAGE_GAME_REASON_NOT_ENOUGH_PLAYERS :número de joga
STR_NETWORK_SERVER_MESSAGE_GAME_REASON_CONNECTING_CLIENTS :clientes conectando-se
STR_NETWORK_SERVER_MESSAGE_GAME_REASON_MANUAL :manual
STR_NETWORK_SERVER_MESSAGE_GAME_REASON_GAME_SCRIPT :{G=m}script do jogo
STR_NETWORK_SERVER_MESSAGE_GAME_REASON_LINK_GRAPH :aguardando atualização do gráfico de links
############ End of leave-in-this-order
STR_NETWORK_MESSAGE_CLIENT_LEAVING :saindo
STR_NETWORK_MESSAGE_CLIENT_JOINED :*** {STRING} entrou no jogo
@ -2327,6 +2331,7 @@ STR_JOIN_WAYPOINT_CAPTION :{WHITE}Unir pon
STR_JOIN_WAYPOINT_CREATE_SPLITTED_WAYPOINT :{YELLOW}Construir um ponto de controle separado
# Generic toolbar
STR_TOOLBAR_DISABLED_NO_VEHICLE_AVAILABLE :{BLACK}Desativado pois não há nenhum veículo disponível para essa infraestrutura
# Rail construction toolbar
STR_RAIL_TOOLBAR_RAILROAD_CONSTRUCTION_CAPTION :Construir ferrovias
@ -2522,6 +2527,10 @@ STR_TREES_RANDOM_TYPE :{BLACK}Árvores
STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Plantar árvores de tipo aleatório, Shift alterna entre construção/preço estimado
STR_TREES_RANDOM_TREES_BUTTON :{BLACK}Plantar Aleatoriamente
STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Planta árvores aleatoriamente pelo terreno
STR_TREES_MODE_NORMAL_BUTTON :{BLACK}Normal
STR_TREES_MODE_FOREST_SM_BUTTON :{BLACK}Bosque
STR_TREES_MODE_FOREST_SM_TOOLTIP :{BLACK}Planta pequenas florestas ao arrastar pelo terreno.
STR_TREES_MODE_FOREST_LG_BUTTON :{BLACK}Floresta
STR_TREES_MODE_FOREST_LG_TOOLTIP :{BLACK}Planta florestas grandes ao arrastar pelo terreno.
# Land generation window (SE)
@ -2533,10 +2542,10 @@ STR_TERRAFORM_TOOLTIP_DECREASE_SIZE_OF_LAND_AREA :{BLACK}Diminui
STR_TERRAFORM_TOOLTIP_GENERATE_RANDOM_LAND :{BLACK}Gera terreno aleatório
STR_TERRAFORM_SE_NEW_WORLD :{BLACK}Criar novo cenário
STR_TERRAFORM_RESET_LANDSCAPE :{BLACK}Limpar terreno
STR_TERRAFORM_RESET_LANDSCAPE_TOOLTIP :{BLACK}Remover todas as propriedades da companhia do mapa
STR_TERRAFORM_RESET_LANDSCAPE_TOOLTIP :{BLACK}Remove todas as propriedades da empresa do mapa
STR_QUERY_RESET_LANDSCAPE_CAPTION :{WHITE}Limpar Terreno
STR_RESET_LANDSCAPE_CONFIRMATION_TEXT :{WHITE}Tem certeza que deseja remover todas as propriedades da companhia?
STR_RESET_LANDSCAPE_CONFIRMATION_TEXT :{WHITE}Tem certeza que quer remover todas as propriedades da empresa?
# Town generation window (SE)
STR_FOUND_TOWN_CAPTION :{WHITE}Gerar Cidades
@ -2575,10 +2584,14 @@ STR_FUND_INDUSTRY_CAPTION :{WHITE}Financia
STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Escolha a indústria apropriada
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :Várias indústrias aleatórias
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Cobrir o mapa com indústrias colocadas aleatoriamente
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_CAPTION :{WHITE}Criar indústrias aleatórias
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY :{YELLOW}Você tem certeza que quer criar várias indústrias aleatoriamente?
STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Custo: {YELLOW}{CURRENCY_LONG}
STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Prosperir
STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Construir
STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Fundar
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES :{BLACK}Remover todas as indústrias
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION :{WHITE}Remover todas as indústrias
# Industry cargoes window
STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Cadeia de indústrias para a indústria: {STRING}
@ -2826,7 +2839,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Linha da
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Aumentar a linha da neve em um ponto
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Diminuir a linha da neve em um ponto
STR_MAPGEN_LAND_GENERATOR :{BLACK}Gerador de terra
STR_MAPGEN_TREE_PLACER :{BLACK}Algorítimo de árvores
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tipo de terreno
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nível do mar:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Rios:
@ -3069,6 +3081,7 @@ STR_SIGN_LIST_MATCH_CASE_TOOLTIP :{BLACK}Ativa/De
# Sign window
STR_EDIT_SIGN_CAPTION :{WHITE}Editar texto da placa
STR_EDIT_SIGN_LOCATION_TOOLTIP :{BLACK}Centraliza janela no local da placa. Ctrl+Clique abre uma nova janela no local da placa
STR_EDIT_SIGN_NEXT_SIGN_TOOLTIP :{BLACK}Próxima Placa
STR_EDIT_SIGN_PREVIOUS_SIGN_TOOLTIP :{BLACK}Placa anterior
@ -3280,7 +3293,7 @@ STR_STATION_VIEW_CLOSE_AIRPORT_TOOLTIP :{BLACK}Impedir
STR_WAYPOINT_VIEW_CAPTION :{WHITE}{WAYPOINT}
STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK}Centrar visão no local do ponto de caminho. Ctrl+Clique abre uma nova janela no local do ponto de caminho
STR_WAYPOINT_VIEW_CHANGE_WAYPOINT_NAME :{BLACK}Renomear ponto de controle
STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Centrar visão no local da bóia. Ctrl+Clique abre uma nova janela no local da bóia
STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Centraliza janela no local da bóia. Ctrl+Clique abre uma nova janela no local da bóia
STR_BUOY_VIEW_CHANGE_BUOY_NAME :{BLACK}Renomear bóia
STR_EDIT_WAYPOINT_NAME :{WHITE}Editar nome do ponto de controle
@ -3345,7 +3358,7 @@ STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Mover se
STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Reconstruir sede da empresa em outro local por 1% do valor da empresa. Shift+Clique mostra o preço estimado sem reconstruir a sede
STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Detalhes
STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Ver informações detalhadas de infraestrutura
STR_COMPANY_VIEW_GIVE_MONEY_BUTTON :{BLACK}Dar dinheiro
STR_COMPANY_VIEW_GIVE_MONEY_TOOLTIP :{BLACK}Dá dinheiro a essa empresa
STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Novo Rosto
STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Selecionar novo rosto para o presidente
@ -3469,7 +3482,7 @@ STR_GROUP_LIVERY_TOOLTIP :{BLACK}Alterar
STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Clique para excluir esse grupo da substituição automática
STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Remover grupo
STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Tem certeza que deseja remover esse grupo e seus descendentes?
STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Tem certeza que quer remover esse grupo e seus descendentes?
STR_GROUP_ADD_SHARED_VEHICLE :Adicionar veículos compartilhados
STR_GROUP_REMOVE_ALL_VEHICLES :Remover todos os veículos
@ -3534,19 +3547,19 @@ STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_BUTTON :{BLACK}Comprar
STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}Comprar Aeronave
STR_BUY_VEHICLE_TRAIN_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Comprar e reequipar veículo
STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Comprar e Trocar Veículos
STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Comprar e Reequipar Veículo
STR_BUY_VEHICLE_SHIP_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Comprar e Repor Navio
STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Comprar e reequipar aeronaves
STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Compra o veículo ferroviário selecionado. Shift+Clique mostra preço estimado sem a compra
STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Compra o veículo selecionado. Shift+Clique mostra preço estimado sem a compra
STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Compra o veículo ferroviário selecionado. Shift+Clique mostra preço estimado
STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Compra o veículo selecionado. Shift+Clique mostra preço estimado
STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Compra a embarcação selecionada. Shift+Clique mostra preço estimado sem a compra
STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Compra a aeronave selecionada. Shift+Clique mostra o preço estimado sem a compra
STR_BUY_VEHICLE_TRAIN_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Compre e troque o trem destacado. Shift+Click mostra os custos estimados sem comprar
STR_BUY_VEHICLE_TRAIN_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Compra e troque o trem destacado. Shift+Click mostra o custo estimado
STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Compre e troque o veículo terrestre destacado. Shift+Clique mostra o custo estimado sem comprá-lo
STR_BUY_VEHICLE_SHIP_BUY_REFIT_VEHICLE_TOOLTIP :Compre e reponha o navio em destaque. Shift+Clique mostra o custo estimado sem comprar
STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Comprar e repor a aeronave destacada. Shift+Clique mostra o custo estimado sem comprar
STR_BUY_VEHICLE_SHIP_BUY_REFIT_VEHICLE_TOOLTIP :Compre e reequipa o navio selecionado. Shift+Clique mostra o custo estimado
STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Compra e reequipa a aeronave selecionada. Shift+Clique mostra o custo estimado
STR_BUY_VEHICLE_TRAIN_RENAME_BUTTON :{BLACK}Renomear
STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_BUTTON :{BLACK}Renomear
@ -3632,9 +3645,9 @@ STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Isso ir
STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Isso irá comprar uma cópia de uma aeronave. Clique nesse botão e depois em uma aeronave dentro ou fora do hangar. Ctrl+Clique compartilhará as ordens. Shift+Clique mostra o preço estimado sem a compra
STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Centrar visão no local de um depósito ferroviário. Ctrl+Clique abre uma nova janela no local do depósito de trem
STR_DEPOT_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Centralizar visualização na localização da garagem. Ctrl+Clique abre uma nova janela de visualização
STR_DEPOT_SHIP_LOCATION_TOOLTIP :{BLACK}Centrar visão no local do depósito naval. Ctrl+Clique abre uma nova janela no local do depósito naval
STR_DEPOT_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Centrar visão no local do hangar. Ctrl+Clique abre uma nova janela no local do hangar
STR_DEPOT_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Centraliza a janela na localização da garagem. Ctrl+Clique abre uma nova janela na localização da garagem.
STR_DEPOT_SHIP_LOCATION_TOOLTIP :{BLACK}Centraliza visão no local do depósito naval. Ctrl+Clique abre uma nova janela no local do depósito naval
STR_DEPOT_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Centraliza a janela no local do hangar. Ctrl+Clique abre uma nova janela no local do hangar
STR_DEPOT_VEHICLE_ORDER_LIST_TRAIN_TOOLTIP :{BLACK}Obtém uma lista de todos os trens com este depósito em suas ordens
STR_DEPOT_VEHICLE_ORDER_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Obtém uma lista de todos os automóveis com esta garagem em suas ordens
@ -3724,6 +3737,9 @@ STR_REPLACE_REMOVE_WAGON_HELP :{BLACK}Faz auto
# Vehicle view
STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE}
STR_VEHICLE_VIEW_ROAD_VEHICLE_CENTER_TOOLTIP :{BLACK}Centraliza a janela na localização do veículo. Clique duplo para seguir o veículo. Ctrl+Clique abre uma nova janela na localização do veículo.
STR_VEHICLE_VIEW_SHIP_CENTER_TOOLTIP :{BLACK}Centraliza a janela na localização do navio. Clique duplo para seguir o navio. Ctrl+Clique para abrir uma nova janela na localização do navio.
STR_VEHICLE_VIEW_AIRCRAFT_CENTER_TOOLTIP :{BLACK}Centraliza a janela na localização da aeronave. Clique duplo para seguir a aeronave. Ctrl+Clique abre uma nova janela na localização da aeronave.
STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Enviar trem para o depósito
STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Enviar veículo para a garagem. CTRL+clique irá apenas reparar
@ -4336,7 +4352,7 @@ STR_ERROR_INDUSTRY_TOO_CLOSE :{WHITE}... muit
STR_ERROR_MUST_FOUND_TOWN_FIRST :{WHITE}... deve construir uma cidade antes
STR_ERROR_ONLY_ONE_ALLOWED_PER_TOWN :{WHITE}... só é permitido uma por cidade
STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS_WITH_POPULATION_OF_1200 :{WHITE}... só pode ser construído em cidades com pelo menos 1200 habitantes
STR_ERROR_CAN_ONLY_BE_BUILT_IN_RAINFOREST :{WHITE}... só pode ser construído em zonas florestais
STR_ERROR_CAN_ONLY_BE_BUILT_IN_RAINFOREST :{WHITE}... só pode ser construído em florestas tropicais
STR_ERROR_CAN_ONLY_BE_BUILT_IN_DESERT :{WHITE}... só pode ser construído em áreas desérticas
STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS :{WHITE}... só se pode ser construído em cidades (substituindo casas)
STR_ERROR_CAN_ONLY_BE_BUILT_NEAR_TOWN_CENTER :{WHITE}... só pode ser construído próximo aos centros de cidades
@ -4433,6 +4449,7 @@ STR_ERROR_DEPOT_WRONG_DEPOT_TYPE :Tipo de depósi
STR_ERROR_TRAIN_TOO_LONG_AFTER_REPLACEMENT :{WHITE}{VEHICLE} fica grande demais para ser substituído
STR_ERROR_AUTOREPLACE_NOTHING_TO_DO :{WHITE}Regras de autosubstituição/renovação não estão ativadas
STR_ERROR_AUTOREPLACE_MONEY_LIMIT :(limite de dinheiro)
STR_ERROR_AUTOREPLACE_INCOMPATIBLE_REFIT :{WHITE}Novo veículo não pode ser reequipado na ordem {NUM}
# Rail construction errors
STR_ERROR_IMPOSSIBLE_TRACK_COMBINATION :{WHITE}Impossível combinação de linhas

@ -918,8 +918,6 @@ STR_GAME_OPTIONS_CURRENCY_NTD :Нов тайв
STR_GAME_OPTIONS_CURRENCY_HKD :Хонгконгски долар (HKD)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Движение по пътищата
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Избор посоката на движение по пътищата
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :ляво
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :дясно
@ -2675,7 +2673,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Снеж
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Преместване снежната линия нагоре
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Преместване снежната линия надолу
STR_MAPGEN_LAND_GENERATOR :{BLACK}Земегенератор:
STR_MAPGEN_TREE_PLACER :{BLACK}Дърворазсад:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Тип на терен:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Морско ниво:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Реки:

@ -950,8 +950,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Dòlar de Hong
STR_GAME_OPTIONS_CURRENCY_INR :Rúpia índia (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Vehicles de carretera
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Escull el sentit de circulació dels automòbils
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Conducció per l'esquerra
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Conducció per la dreta
@ -1006,6 +1004,7 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :altres
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Mida de la interfície
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Escull la mida dels elements de la interfície
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_AUTO :(detecta automàticament)
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Doble
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quàdruple
@ -1013,6 +1012,7 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quàdruple
STR_GAME_OPTIONS_FONT_ZOOM :{BLACK}Mida de la lletra
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Seleccioneu la mida de les fonts de la interfície.
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_AUTO :(detecta automàticament)
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :Normal
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Doble
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Quàdruple
@ -2607,12 +2607,18 @@ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Aleatori
# Fund new industry window
STR_FUND_INDUSTRY_CAPTION :{WHITE}Finança una nova indústria
STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Escolleix el tipus d'indústria adequada d'aquesta llista
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :Moltes indústries aleatòries
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :{BLACK}Crea indústries aleatòries
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Omple el mapa amb indústries situades aleatòriament
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_CAPTION :{WHITE}Crea indústries aleatòries
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY :{YELLOW}Esteu segur que voleu crear moltes indústries aleatòries?
STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Cost: {YELLOW}{CURRENCY_LONG}
STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Prospecciona
STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Construeix
STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Finança
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES :{BLACK}Treu totes les indústries
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_TOOLTIP :{BLACK}Treu totes les indústries que hi ha actualment al mapa.
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION :{WHITE}Treu totes les indústries
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_QUERY :{YELLOW}Esteu segur que voleu treure totes les indústries?
# Industry cargoes window
STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Cadena industrial per la indústria {STRING}
@ -2861,7 +2867,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Alçada
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Mou els estatges amb neu un pas amunt
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Mou els estatges amb neu un pas avall
STR_MAPGEN_LAND_GENERATOR :{BLACK}Generació de terrenys:
STR_MAPGEN_TREE_PLACER :{BLACK}Algoritme d'arbres:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tipus de terreny:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nivell de mar:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Quantitat de rius:

@ -1035,8 +1035,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Hongkonški Dol
STR_GAME_OPTIONS_CURRENCY_INR :Indijska Rupija (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Cestovna vozila
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Odaberi na kojoj će strani ceste vozila prometovati
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vozi na lijevoj strani
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Vozi na desnoj strani
@ -2917,7 +2915,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Visina l
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
STR_MAPGEN_LAND_GENERATOR :{BLACK}Izrađivač zemljišta:
STR_MAPGEN_TREE_PLACER :{BLACK} Algoritam za drveće:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Vrsta terena:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Razina mora:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Rijeke:

@ -1035,8 +1035,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Hongkongský do
STR_GAME_OPTIONS_CURRENCY_INR :Indická rupie (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Silniční vozidla jezdí
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Výběr strany, na které jezdí silnični vozidla
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vlevo
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Vpravo
@ -3446,7 +3444,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Výška
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Zvýšit sněžnou čáru o jednu úroveň
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Snížit sněžnou čáru o jednu úroveň
STR_MAPGEN_LAND_GENERATOR :{BLACK}Generátor krajiny:
STR_MAPGEN_TREE_PLACER :{BLACK}Sázení stromů:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Typ krajiny:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Četnost jezer:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Řeky:

@ -940,8 +940,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Hong Kong Dolla
STR_GAME_OPTIONS_CURRENCY_INR :Indisk rupi (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Vejkøretøjer
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Vælg den side af vejen, køretøjer skal kører i
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Kør i venstre side
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Kør i højre side
@ -2822,7 +2820,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Snegræn
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Flyt snegrænsen een op
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Flyt snegrænsen een ned
STR_MAPGEN_LAND_GENERATOR :{BLACK}Terrængenerator:
STR_MAPGEN_TREE_PLACER :{BLACK}Træalgoritme:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terræntype:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Havniveau
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Floder:

@ -949,8 +949,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Hong Kong Dolla
STR_GAME_OPTIONS_CURRENCY_INR :Indiase rupee (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Wegvoertuigen
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Kiest aan welke kant van de weg voertuigen moeten rijden
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Links rijden
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Rechts rijden
@ -1005,6 +1003,7 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :Anders
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Menupuntgrootte
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Kiest de grootte van bedieningselementen
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_AUTO :(automatische detectie)
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normaal
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dubbele grootte
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :4x Grootte
@ -1012,6 +1011,7 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :4x Grootte
STR_GAME_OPTIONS_FONT_ZOOM :{BLACK}Lettergrootte
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Hiermee kies je hoe groot de letters op het scherm moeten zijn
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_AUTO :(auto-detect)Status: Vermist
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :Normaal
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Dubbele grootte
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Viervoudige grootte
@ -2606,12 +2606,18 @@ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Willekeu
# Fund new industry window
STR_FUND_INDUSTRY_CAPTION :{WHITE}Nieuwe industrie financieren
STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Kiest de gewenste industrie in de lijst
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :Veel willekeurige industrieën
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :{BLACK}Willekeurige industrieën maken
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Bedek de kaart met willekeurig geplaatste industrieën
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_CAPTION :{WHITE}Willekeurige industrieën maken
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY :{YELLOW}Weet je zeker dat je veel willekeurige industrieën wilt hebben?
STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Kosten: {YELLOW}{CURRENCY_LONG}
STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Onderzoeken
STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Bouw
STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Betaal
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES :{BLACK}Alle industrieën verwijderen
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_TOOLTIP :{BLACK}Alle industrieën op de kaart verwijderen
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION :{WHITE}Alle industrieën verwijderen
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_QUERY :{YELLOW}Weet je zeker dat je alle industrieën wilt verwijderen?
# Industry cargoes window
STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Industrieketen voor {STRING} industrie
@ -2842,6 +2848,8 @@ STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF:
STR_SAVELOAD_FILTER_TITLE :{BLACK}Filtertekenreeks:
STR_SAVELOAD_OVERWRITE_TITLE :{WHITE}Bestand overschrijven
STR_SAVELOAD_OVERWRITE_WARNING :{YELLOW}Weet je zeker dat je het bestaande bestand wilt overschrijven?
STR_SAVELOAD_DIRECTORY :{STRING} (Map)
STR_SAVELOAD_PARENT_DIRECTORY :{STRING} (Bovenliggende map)
STR_SAVELOAD_OSKTITLE :{BLACK}Voer een naam in voor het spel dat moet worden opgeslagen
@ -2860,7 +2868,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Hoogte v
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Verhoog de sneeuwgrens met één
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Verlaag de sneeuwgrens met één
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landgenerator:
STR_MAPGEN_TREE_PLACER :{BLACK}Bosalgoritme:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terreintype:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Zeeniveau:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Rivieren:

@ -622,7 +622,7 @@ STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRANSPORT_COORDINATOR :Transport Coord
STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_ROUTE_SUPERVISOR :Route Supervisor
STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_DIRECTOR :Director
STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHIEF_EXECUTIVE :Chief Executive
STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHAIRMAN :Chairman
STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_CHAIRMAN :Chairperson
STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_PRESIDENT :President
STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TYCOON :Tycoon
@ -705,7 +705,7 @@ STR_PLAYLIST_TOOLTIP_CLICK_TO_REMOVE_TRACK :{BLACK}Click on
STR_HIGHSCORE_TOP_COMPANIES_WHO_REACHED :{BIG_FONT}{BLACK}Top companies who reached {NUM}
STR_HIGHSCORE_TOP_COMPANIES_NETWORK_GAME :{BIG_FONT}{BLACK}Company League Table in {NUM}
STR_HIGHSCORE_POSITION :{BIG_FONT}{BLACK}{COMMA}.
STR_HIGHSCORE_PERFORMANCE_TITLE_BUSINESSMAN :Businessman
STR_HIGHSCORE_PERFORMANCE_TITLE_BUSINESSMAN :Businessperson
STR_HIGHSCORE_PERFORMANCE_TITLE_ENTREPRENEUR :Entrepreneur
STR_HIGHSCORE_PERFORMANCE_TITLE_INDUSTRIALIST :Industrialist
STR_HIGHSCORE_PERFORMANCE_TITLE_CAPITALIST :Capitalist
@ -959,10 +959,9 @@ STR_GAME_OPTIONS_CURRENCY_NTD :New Taiwan Doll
STR_GAME_OPTIONS_CURRENCY_CNY :Chinese Renminbi (CNY)
STR_GAME_OPTIONS_CURRENCY_HKD :Hong Kong Dollar (HKD)
STR_GAME_OPTIONS_CURRENCY_INR :Indian Rupee (INR)
STR_GAME_OPTIONS_CURRENCY_IDR :Indonesian Rupiah (IDR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Road vehicles
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Select side of road for vehicles to drive on
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Drive on left
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Drive on right
@ -1017,6 +1016,7 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :other
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Interface size
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Select the interface element size to use
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_AUTO :(auto-detect)
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Double size
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quad size
@ -1024,6 +1024,7 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quad size
STR_GAME_OPTIONS_FONT_ZOOM :{BLACK}Font size
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Select the interface font size to use
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_AUTO :(auto-detect)
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :Normal
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Double size
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Quad size
@ -3291,12 +3292,18 @@ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Random
# Fund new industry window
STR_FUND_INDUSTRY_CAPTION :{WHITE}Fund new industry
STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Choose the appropriate industry from this list
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :Many random industries
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :{BLACK}Create random industries
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Cover the map with randomly placed industries
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_CAPTION :{WHITE}Create random industries
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY :{YELLOW}Are you sure you want to create many random industries?
STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Cost: {YELLOW}{CURRENCY_LONG}
STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Prospect
STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Build
STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Fund
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES :{BLACK}Remove all industries
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_TOOLTIP :{BLACK}Remove all industries currently present on the map
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION :{WHITE}Remove all industries
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_QUERY :{YELLOW}Are you sure you want to remove all industries?
# Industry cargoes window
STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Industry chain for {STRING} industry
@ -3541,6 +3548,8 @@ STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF:
STR_SAVELOAD_FILTER_TITLE :{BLACK}Filter string:
STR_SAVELOAD_OVERWRITE_TITLE :{WHITE}Overwrite File
STR_SAVELOAD_OVERWRITE_WARNING :{YELLOW}Are you sure you want to overwrite the existing file?
STR_SAVELOAD_DIRECTORY :{RAW_STRING} (Directory)
STR_SAVELOAD_PARENT_DIRECTORY :{RAW_STRING} (Parent directory)
STR_SAVELOAD_UNKNOWN_ID :{YELLOW}This file may be from a different game.
STR_SAVELOAD_DIFFERENT_ID :{YELLOW}This file is from a different game.
STR_SAVELOAD_OVERWRITE_TITLE_DIFFERENT_ID :{WHITE}Overwrite File (Different Game)
@ -3563,7 +3572,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Snow lin
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Move the snow line height one up
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Move the snow line height one down
STR_MAPGEN_LAND_GENERATOR :{BLACK}Land generator:
STR_MAPGEN_TREE_PLACER :{BLACK}Tree algorithm:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrain type:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Sea level:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Rivers:

@ -909,8 +909,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgian Lari (
STR_GAME_OPTIONS_CURRENCY_IRR :Iranian Rial (IRR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Road vehicles
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Select side of road for vehicles to drive on
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Drive on left
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Drive on right
@ -2670,7 +2668,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Snow lin
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Move the snow line height one up
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Move the snow line height one down
STR_MAPGEN_LAND_GENERATOR :{BLACK}Land generator:
STR_MAPGEN_TREE_PLACER :{BLACK}Tree algorithm:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrain type:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Sea level:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Rivers:

@ -938,8 +938,6 @@ STR_GAME_OPTIONS_CURRENCY_CNY :Chinese Renminb
STR_GAME_OPTIONS_CURRENCY_HKD :Hong Kong Dollar (HKD)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Road vehicles
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Select side of road for vehicles to drive on
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Drive on left
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Drive on right
@ -2817,7 +2815,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Snow lin
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Move the snow line height up one
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Move the snow line height down one
STR_MAPGEN_LAND_GENERATOR :{BLACK}Land generator:
STR_MAPGEN_TREE_PLACER :{BLACK}Tree algorithm:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrain type:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Sea level:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Rivers:

@ -902,8 +902,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Kartvela Lario
STR_GAME_OPTIONS_CURRENCY_IRR :Irana Rialo (IRR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Stratveturiloj
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Elektu stratflankon kie veturu veturiloj
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Veturu maldekstre
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Veturu dekstre
@ -2278,7 +2276,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Neĝlini
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Altigu la neĝlinion per unu
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Malaltigu la neĝlinion per unu
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landgenerilo:
STR_MAPGEN_TREE_PLACER :{BLACK}Arba algoritmo:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terentipo:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Marnivelo:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Riveroj:

@ -387,7 +387,7 @@ STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}Kiirenda
STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Seadistus
STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Mängu salvestamine/jätkamine, mängust lahkumine, väljumine
STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Ava kaart, vaateaken või siltide loend
STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Ava linnade register
STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Ava asustuste register
STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Ava toetuste loend
STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Avab ettevõtte jaamade registri
STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Ava ettevõtte rahavoogude aruanne
@ -421,9 +421,9 @@ STR_SCENEDIT_TOOLBAR_SCENARIO_EDITOR :{YELLOW}Stsenaa
STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD :{BLACK}Alguse liigutamine 1 aasta võrra tagasi
STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD :{BLACK}Alguse liigutamine 1 aasta võrra edasi
STR_SCENEDIT_TOOLBAR_TOOLTIP_SET_DATE :{BLACK}Alustamise aasta valikuks klõpsi siin
STR_SCENEDIT_TOOLBAR_TOOLTIP_DISPLAY_MAP_TOWN_DIRECTORY :{BLACK}Ava kaart, linnade register
STR_SCENEDIT_TOOLBAR_TOOLTIP_DISPLAY_MAP_TOWN_DIRECTORY :{BLACK}Ava kaart, asustuste register
STR_SCENEDIT_TOOLBAR_LANDSCAPE_GENERATION :{BLACK}Maastiku tekitamine
STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Linnade tekitamine
STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Asustuste tekitamine
STR_SCENEDIT_TOOLBAR_INDUSTRY_GENERATION :{BLACK}Tööstuste tekitamine
STR_SCENEDIT_TOOLBAR_ROAD_CONSTRUCTION :{BLACK}Maanteede ehitamine
STR_SCENEDIT_TOOLBAR_TRAM_CONSTRUCTION :{BLACK}Trammiteede ehitamine
@ -447,7 +447,7 @@ STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Seaded
STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/GameScripti seaded
STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF-i seadistus
STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Läbipaistvuse seadistus
STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Näidatavad linnanimed
STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Näidatavad asustuste nimed
STR_SETTINGS_MENU_STATION_NAMES_DISPLAYED :Näidatavad jaamanimed
STR_SETTINGS_MENU_WAYPOINTS_DISPLAYED :Näidatavad meldepunktid
STR_SETTINGS_MENU_SIGNS_DISPLAYED :Näidatavad sildid
@ -473,8 +473,8 @@ STR_MAP_MENU_LINGRAPH_LEGEND :Kaubavoo legend
STR_MAP_MENU_SIGN_LIST :Siltide register
############ range for town menu starts
STR_TOWN_MENU_TOWN_DIRECTORY :Linnade register
STR_TOWN_MENU_FOUND_TOWN :Raja linn
STR_TOWN_MENU_TOWN_DIRECTORY :Asustuste register
STR_TOWN_MENU_FOUND_TOWN :Raja asustus
############ range ends here
############ range for subsidies menu starts
@ -811,12 +811,12 @@ STR_SMALLMAP_LEGENDA_TREES :{TINY_FONT}{BLA
STR_SMALLMAP_LEGENDA_ROCKS :{TINY_FONT}{BLACK}Kivid
STR_SMALLMAP_LEGENDA_WATER :{TINY_FONT}{BLACK}Vesi
STR_SMALLMAP_LEGENDA_NO_OWNER :{TINY_FONT}{BLACK}Omanikuta
STR_SMALLMAP_LEGENDA_TOWNS :{TINY_FONT}{BLACK}Linnad
STR_SMALLMAP_LEGENDA_TOWNS :{TINY_FONT}{BLACK}Asustused
STR_SMALLMAP_LEGENDA_INDUSTRIES :{TINY_FONT}{BLACK}Tööstused
STR_SMALLMAP_LEGENDA_DESERT :{TINY_FONT}{BLACK}Kõrb
STR_SMALLMAP_LEGENDA_SNOW :{TINY_FONT}{BLACK}Lumi
STR_SMALLMAP_TOOLTIP_TOGGLE_TOWN_NAMES_ON_OFF :{BLACK}Linnanimede sisse- ja välja lülitamine
STR_SMALLMAP_TOOLTIP_TOGGLE_TOWN_NAMES_ON_OFF :{BLACK}Asustuste nimede sisse- ja välja lülitamine
STR_SMALLMAP_CENTER :{BLACK}Näita väikekaardil praegust asukohta
STR_SMALLMAP_INDUSTRY :{TINY_FONT}{STRING} ({NUM})
STR_SMALLMAP_LINKSTATS :{TINY_FONT}{STRING}
@ -868,7 +868,7 @@ STR_NEWS_DISASTER_SMALL_UFO :{BIG_FONT}{BLAC
STR_NEWS_DISASTER_AIRPLANE_OIL_REFINERY :{BIG_FONT}{BLACK}Naftatöötlustehase plahvatus {TOWN} lähedal!
STR_NEWS_DISASTER_HELICOPTER_FACTORY :{BIG_FONT}{BLACK}Tehas purunes teadmata põhjustel {TOWN} lähedal!
STR_NEWS_DISASTER_BIG_UFO :{BIG_FONT}{BLACK}'UFO' maandus {TOWN} lähedal!
STR_NEWS_DISASTER_COAL_MINE_SUBSIDENCE :{BIG_FONT}{BLACK}Söekaevanduse vajumine jättis endast linna {TOWN} lähedal purustused!
STR_NEWS_DISASTER_COAL_MINE_SUBSIDENCE :{BIG_FONT}{BLACK}Söekaevanduse vajumine jättis endast asustuse {TOWN} lähedal purustused!
STR_NEWS_DISASTER_FLOOD_VEHICLE :{BIG_FONT}{BLACK}Üleujutused!{}Vähemalt {COMMA} kadunut arvatakse surnuks peale olulist üleujutust!
STR_NEWS_COMPANY_IN_TROUBLE_TITLE :{BIG_FONT}{BLACK}Ettevõttel on probleeme!
@ -878,15 +878,15 @@ STR_NEWS_COMPANY_MERGER_DESCRIPTION :{BIG_FONT}{BLAC
STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLACK}Pankrot!
STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} suleti asutajate poolt ja kõik varad müüakse maha!
STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Loodi uus ettevõte!
STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}Ettevõte {STRING} alustas linna {TOWN} lähedal ehitustöid!
STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}Ettevõte {STRING} alustas asustuse {TOWN} lähedal ehitustöid!
STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}{STRING} võeti üle ettevõtte {STRING} poolt!
STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(President)
STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}{STRING} rahastas uue linna {TOWN} rajamist!
STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}{STRING} rahastas uue asustuse {TOWN} rajamist!
STR_NEWS_NEW_TOWN_UNSPONSORED :{BLACK}{BIG_FONT}Uus linn nimega {TOWN} on asutatud!
STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}Uus {STRING} on linna {TOWN} lähedal ehitamisel!
STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}Uus {STRING} on istutatud linna {TOWN} lähedale!
STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}Uus {STRING} on asustuse {TOWN} lähedal ehitamisel!
STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}Uus {STRING} on istutatud asustuse {TOWN} lähedale!
STR_NEWS_INDUSTRY_CLOSURE_GENERAL :{BIG_FONT}{BLACK}{STRING} juhtkond teatab sulgemisest!
STR_NEWS_INDUSTRY_CLOSURE_SUPPLY_PROBLEMS :{BIG_FONT}{BLACK}{STRING} teatab sulgemisest varustusprobleemide tõttu!
@ -941,15 +941,15 @@ STR_NEWS_STATION_NOW_ACCEPTS_CARGO_AND_CARGO :{WHITE}Jaam {ST
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_OFFERED :{BIG_FONT}{BLACK}Veoteenusele pakutakse toetust:{}{}{STRING.g}veo eest asustusest {STRING} asustusse {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!
STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Teenusetoetust makstakse ettevõttele {STRING}!{}{}{STRING} kohast {STRING} kohta {STRING} teenuse eest makstakse järgmisel aastal kahekordselt!
STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Teenusetoetust makstakse ettevõttele {STRING}!{}{}{STRING} kohast {STRING} kohta {STRING} teenuse eest makstakse järgmisel aastal kolmekordselt!
STR_NEWS_SERVICE_SUBSIDY_AWARDED_QUADRUPLE :{BIG_FONT}{BLACK}Teenusetoetust makstakse ettevõttele {STRING}!{}{}{STRING} kohast {STRING} kohta {STRING} teenuse eest makstakse järgmisel aastal neljakordselt!
STR_NEWS_ROAD_REBUILDING :{BIG_FONT}{BLACK}Liikluskaos linnas {TOWN}!{}{}Ettevõtte {STRING} poolt rahastatud teedeehitus tekitab 6 kuu jooksul maanteedel liiklushäireid!
STR_NEWS_ROAD_REBUILDING :{BIG_FONT}{BLACK}Liikluskaos asustuses {TOWN}!{}{}Ettevõtte {STRING} poolt rahastatud teede ümberehitus tekitab 6 kuu jooksul maanteedel liiklushäireid!
STR_NEWS_EXCLUSIVE_RIGHTS_TITLE :{BIG_FONT}{BLACK}Transpordimonopol!
STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION :{BIG_FONT}{BLACK}Kohalik linnavõim{TOWN} allkirjastab lepingu {STRING} transpordi ainuõiguseks üheks aastaks!
STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION :{BIG_FONT}{BLACK}Asustuse {TOWN} omavalitsus allkirjastab lepingu {STRING} veoste ainuõiguseks üheks aastaks!
# Extra view window
STR_EXTRA_VIEWPORT_TITLE :{WHITE}Vaateaken {COMMA}
@ -1006,13 +1006,11 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Hong Kongi doll
STR_GAME_OPTIONS_CURRENCY_INR :India ruupia (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Sõidukid
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Vali, kummal pool teed mootorsõidukid liiklevad
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vasakpoolne liiklus
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Parempoolne liiklus
STR_GAME_OPTIONS_TOWN_NAMES_FRAME :{BLACK}Linnanimed
STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP :{BLACK}Vali linnanimede stiil
STR_GAME_OPTIONS_TOWN_NAMES_FRAME :{BLACK}Asulate nimed
STR_GAME_OPTIONS_TOWN_NAMES_DROPDOWN_TOOLTIP :{BLACK}Vali asulanimede stiil
############ start of townname region
STR_GAME_OPTIONS_TOWN_NAME_ORIGINAL_ENGLISH :Inglise (originaalne)
@ -1245,7 +1243,7 @@ STR_CONFIG_SETTING_TRAIN_REVERSING :Keela rongide
STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Kui on aktiveeritud, siis ei pööra rongid vahejaamades ringi isegi siis kui ringi pööramisel oleks teekond järgmisse sihtpunkti lühem
STR_CONFIG_SETTING_DISASTERS :Katastroofid: {STRING}
STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Lülita sisse/välja katastroofid, mis aeg-ajalt hävitavad sõidukeid ja taristut
STR_CONFIG_SETTING_CITY_APPROVAL :Linnavalitusese suhtumine pinnase restruktureerimisse: {STRING}
STR_CONFIG_SETTING_CITY_APPROVAL :Astuse omavalitsuse suhtumine pinnase restruktureerimisse: {STRING}
STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Vali kui suurt mõju tekitavad müra ning keskkonna muudatused ettevõtte mainele ja edasistele ehitustoimingutele antud piirkonnas
STR_CONFIG_SETTING_MAX_HEIGHTLEVEL :Maksimaalne mägede kõrgus: {STRING}
@ -1257,8 +1255,8 @@ STR_CONFIG_SETTING_CATCHMENT :Reaalsemad veek
STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Erineva suurusega püüdmisala erinevat tüüpi jaamadele ja lennujaamadele.
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES :Ettevõtte jaamad teenindavad ka liidetud, erapooletu jaamaga tööstuseid: {STRING}
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :Kui lubatud, saavad liidetud jaamaga tööstuseid (nagu naftaplatvormid) teenindada ka lähedalolevad ettevõttele kuuluvad jaamad. Muidu võivad neid tööstuseid teenindada vaid nendega liidetud jaamad. Lähedale ehitatud ettevõtte jaamad neid teenindada ei saa, ning liidetud jaamad ei teeninda teisi tööstuseid
STR_CONFIG_SETTING_EXTRADYNAMITE :Linnateede, -sildade, -tunnelite jne lammutamine: {STRING}
STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Lihtsusta linnale kuuluva taristu ja majade eemaldamist
STR_CONFIG_SETTING_EXTRADYNAMITE :Asulateede, -sildade, -tunnelite jne lammutamine: {STRING}
STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Lihtsusta asulatele kuuluva taristu ja hoonete eemaldamist
STR_CONFIG_SETTING_TRAIN_LENGTH :Rongi pikkuse ülempiir: {STRING}
STR_CONFIG_SETTING_TRAIN_LENGTH_HELPTEXT :Määrab rongide pikkuse ülempiiri
STR_CONFIG_SETTING_TILE_LENGTH :{COMMA} ruut{P 0 "" u}
@ -1292,8 +1290,8 @@ STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NORMAL :Nagu kõik tö
STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_PROSPECTING :Uuringutega
STR_CONFIG_SETTING_INDUSTRY_PLATFORM :Tasane ala ümber tehaste: {STRING}
STR_CONFIG_SETTING_INDUSTRY_PLATFORM_HELPTEXT :Summa kui palju tasast maad on ümber tehase. See tagab et ruumi jääb saadavale ehitiste jaoks
STR_CONFIG_SETTING_MULTIPINDTOWN :Samalaadsed tööstused ühes linnas: {STRING}
STR_CONFIG_SETTING_MULTIPINDTOWN_HELPTEXT :Tavaliselt, linn ei taha rohkem kui ühte tööstustharu igast tüübist. See seade lubab rohkem kui ühe tööstusharu samasse linna
STR_CONFIG_SETTING_MULTIPINDTOWN :Mitu samalaadset tööstust ühe asula piires: {STRING}
STR_CONFIG_SETTING_MULTIPINDTOWN_HELPTEXT :Tavaliselt asula ei taha rohkem kui ühte tööstustharu igast liigist. Selle seadega lubatakse rohkem kui üks samalaadne tööstus ühe asula piires
STR_CONFIG_SETTING_SIGNALSIDE :Signaale näidatakse: {STRING}
STR_CONFIG_SETTING_SIGNALSIDE_HELPTEXT :Vali kummale poole rada signaalid paigutatakse
STR_CONFIG_SETTING_SIGNALSIDE_LEFT :Vasakul
@ -1315,13 +1313,13 @@ STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT_FULLSCREEN :Põhivaates, ai
STR_CONFIG_SETTING_AUTOSCROLL_MAIN_VIEWPORT :Põhivaates
STR_CONFIG_SETTING_AUTOSCROLL_EVERY_VIEWPORT :Igas vaates
STR_CONFIG_SETTING_BRIBE :Altkäemaksud kohalikele omavalitsustele: {STRING}
STR_CONFIG_SETTING_BRIBE_HELPTEXT :Võimaldab linna omavalitsusele altkäemaksu pakkuda. Vahele jäämise korral võetakse ettevõttelt kuueks kuuks ära õigus tegutseda linnas
STR_CONFIG_SETTING_BRIBE_HELPTEXT :Võimaldab asulate omavalitsustele altkäemaksu pakkuda. Tabamise korral võetakse ettevõttelt kuueks kuuks ära õigus asulas tegutseda
STR_CONFIG_SETTING_ALLOW_EXCLUSIVE :Ainuveoõiguste ostmine: {STRING}
STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT :Kui ettevõte ostab linnalt kaubaveo ainuõiguse, siis teised ettevõtted ei saa üks aasta uusi kaupu ega reisijaid
STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT :Kui ettevõte ostab asulalt kaubaveo ainuõiguse, siis teised ettevõtted ei saa üks aasta uusi kaupu ega reisijaid
STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS :Luba ehitiste rahastamine: {STRING}
STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS_HELPTEXT :Võimaldab ettevõttel linna kinnisvaraehitust rahastada
STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS_HELPTEXT :Võimaldab ettevõttel asulate kinnisvaraehitust rahastada
STR_CONFIG_SETTING_ALLOW_FUND_ROAD :Kohaliku omavalitsuse teede rekonstrueerimise rahastamine: {STRING}
STR_CONFIG_SETTING_ALLOW_FUND_ROAD_HELPTEXT :Võimaldab ettevõtetel linna tee-ehitustöid rahastada, šaboteerides sellega autode kaubavedu
STR_CONFIG_SETTING_ALLOW_FUND_ROAD_HELPTEXT :Võimaldab ettevõtetel asulate tee-ehitustöid rahastada, šaboteerides sellega autode kaubavedu
STR_CONFIG_SETTING_ALLOW_GIVE_MONEY :Raha saatmine teistele ettevõtetele: {STRING}
STR_CONFIG_SETTING_ALLOW_GIVE_MONEY_HELPTEXT :Luba mitmikmängus kanda raha erinevate ettevõtete vahel
STR_CONFIG_SETTING_FREIGHT_TRAINS :Raskete rongide simuleerimiseks kasutatav raskustegur: {STRING}
@ -1334,8 +1332,8 @@ STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Määrab lennu
STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Ei
STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Vähem
STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Keskmiselt
STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Läbisõidupeatused linnateedel: {STRING}
STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Lubab linnale kuuluvatel teedel ehitada läbisõidupeatuseid
STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Läbisõidupeatused asulate kuuluvatel teedel: {STRING}
STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Lubab asulatele kuuluvatele teedele ehitada läbisõidupeatuseid
STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD :Läbisõidupeatused konkurentide teedel: {STRING}
STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD_HELPTEXT :Lubab teisele ettevõttele kuulaval teel ehitada läbisõidupeatuseid
STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}Sõidukite olemasolul ei saa seda seadet muuta
@ -1374,8 +1372,8 @@ STR_CONFIG_SETTING_HOVER_DELAY :Vihjeid näidat
STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Viivitus, kui kaua peab hiirega liidese osale osutama, enne kui selle kohta vihjet näidatakse. On ka võimalik vihjeid parema hiireklõpsuga näidata
STR_CONFIG_SETTING_HOVER_DELAY_VALUE :{COMMA} sekundilist osutamist
STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Paremklõpsu
STR_CONFIG_SETTING_POPULATION_IN_LABEL :Linna rahvaarv nimesildil: {STRING}
STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Näitab linna nimesildil rahvaarvu
STR_CONFIG_SETTING_POPULATION_IN_LABEL :Asula rahvaarv nimesildil: {STRING}
STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Näitab asula nimesildil rahvaarvu
STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Graafikujoone laius: {STRING}
STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Graafikutes kasutatava joone laius. Peenem joon on täpsem, laiem joon on paremini näha ja värvid on selgemini eristatavad
STR_CONFIG_SETTING_SHOW_NEWGRF_NAME :Näita sõidukiehitusaknas NewGRF-i nime: {STRING}
@ -1394,7 +1392,7 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Määrab, kui p
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maksimaalne kaugus kaardi servast naftatöötlustehase jaoks: {STRING}
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Naftatöötlemistehased ehitatakse ainult kaardi piirile, see on rannikul saartega mängitaval kaardil.
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Lumepiiri kõrgus: {STRING}
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Määra, millisel kõrgusel algab sub-arktiline maastik. Lumi mõjutab ka tööstuste loomist ja linna kasvamise tingimusi
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Määra, millisel kõrgusel algab sub-arktiline maastik. Lumi mõjutab ka tööstuste loomist ja asulate kasvamise nõudeid
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Maastiku järskus (ainult TerraGenesis) : {STRING}
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis only) Vali mägede tihedus: Laugetel maastikel on vähem, laiema ulatusega mägesid. Mägistel maastikel on palju mägesid, mis võivad näha välja samasugused
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Väga lauge
@ -1526,7 +1524,7 @@ STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Õnnetustes ja
STR_CONFIG_SETTING_SOUND_VEHICLE :Sõidukitel: {STRING}
STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT :Kostuvad sõidukite helid
STR_CONFIG_SETTING_SOUND_AMBIENT :Taustahelid: {STRING}
STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Maastikult, tööstustest ja linnadest kostuvad taustahelid
STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Maastikult, tööstustest ja asulatest kostuvad taustahelid
STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Sobivate sõidukite puudumisel on taristu ehitamine keelatud: {STRING}
STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Sisse lülitamisel on taristu ehitamine võimalik ainult juhul, kui sellega seonduvad sõidukid on juba saadaval. Väldib mõttetut raha ja aja kulu, kui ehitatakse taristu, mida ei saa kasutada
@ -1654,26 +1652,26 @@ STR_CONFIG_SETTING_CYCLE_SIGNAL_NORMAL :Ainult tavaline
STR_CONFIG_SETTING_CYCLE_SIGNAL_PBS :Ainult täiustatud
STR_CONFIG_SETTING_CYCLE_SIGNAL_ALL :Kõik
STR_CONFIG_SETTING_TOWN_LAYOUT :Uute linnade tänavaplaneering: {STRING}
STR_CONFIG_SETTING_TOWN_LAYOUT_HELPTEXT :Teedevõrgu paigutus linnades
STR_CONFIG_SETTING_TOWN_LAYOUT :Uute asulate teeplaneering: {STRING}
STR_CONFIG_SETTING_TOWN_LAYOUT_HELPTEXT :Teedevõrgu paigutus asulates
STR_CONFIG_SETTING_TOWN_LAYOUT_DEFAULT :Esialgne
STR_CONFIG_SETTING_TOWN_LAYOUT_BETTER_ROADS :Paremad teed
STR_CONFIG_SETTING_TOWN_LAYOUT_2X2_GRID :2x2 võrgustik
STR_CONFIG_SETTING_TOWN_LAYOUT_3X3_GRID :3x3 võrgustik
STR_CONFIG_SETTING_TOWN_LAYOUT_RANDOM :Suvaline
STR_CONFIG_SETTING_ALLOW_TOWN_ROADS :Linnapoolne teedeehitus: {STRING}
STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Luba linnadel ehitada teid, et soodustada kasvu. Lülita välja, et keelata linnadel rajada teid
STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Linnadel on lubatud ehitada ülesõidukohti: {STRING}
STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Selle seade sisse lülitamine lubab linnadel ehitada ülesõidukohti
STR_CONFIG_SETTING_NOISE_LEVEL :Lennujaamade mürapiirangud linnades: {STRING}
STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Kui seade ei ole sisse lülitatud, siis igasse linna on lubatud ehitada kuni kaks lennuvälja. Kui see seade on lubatud, siis lennuväljade arvu ülempiiri määrab linna müratundlikkus, mis sõltub rahvaarvust ja lennuvälja suurusest ja kaugusest
STR_CONFIG_SETTING_TOWN_FOUNDING :Linnade rajamine keset mängu: {STRING}
STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Võimaldab ettevõttel uusi linnu rajada
STR_CONFIG_SETTING_ALLOW_TOWN_ROADS :Asulatel on lubatud teederajamine: {STRING}
STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Luba asulatele teederajamine, et soodustada kasvu. Lülita välja, et keelata asulatele teederajamine
STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Asulatel on lubatud ehitada ülesõidukohti: {STRING}
STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Selle seade sisse lülitamine lubab asulatel ehitada ülesõidukohti
STR_CONFIG_SETTING_NOISE_LEVEL :Lennujaamade mürapiirangud asulates: {STRING}
STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Kui seade ei ole sisse lülitatud, siis igasse asulasse on lubatud ehitada kuni kaks lennuvälja. Kui see seade on lubatud, siis lennuväljade arvu ülempiiri määrab asustuse müratundlikkus, mis sõltub rahvaarvust ja lennuvälja suurusest ja kaugusest
STR_CONFIG_SETTING_TOWN_FOUNDING :Asulate rajamine keset mängu: {STRING}
STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Võimaldab ettevõttel uusi asulaid rajada
STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Keelatud
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Lubatud
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Lubatud, koos linnaskeemi valimisega
STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Kauba tekkimine linnades: {STRING}
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Kui palju kaupa toodavad majad linnades, võrreldes linnaelanike arvuga.{}Ruutfunktsioon: kaks korda suurem linn tekitab neli korda rohkem reisijaid.{}Lineaarne: kaks korda suurem linn tekitab kaks korda rohkem reisijaid.
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Lubatud, koos asulaskeemi valimisega
STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Kauba tekkimine asulates: {STRING}
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Kui palju kaupa toodavad majad asulates, võrreldes elanike arvuga.{}Ruutfunktsioon: kaks korda suurem asula tekitab neli korda rohkem reisijaid.{}Lineaarne: kaks korda suurem asula tekitab kaks korda rohkem reisijaid.
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Ruutfunktsioon (algupärane)
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Lineaarne
@ -1706,18 +1704,18 @@ STR_CONFIG_SETTING_ZOOM_LVL_NORMAL :Tavaline
STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X :2x
STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x
STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x
STR_CONFIG_SETTING_TOWN_GROWTH :Linna kasvutempo: {STRING}
STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Linna kasvamise kiirus
STR_CONFIG_SETTING_TOWN_GROWTH :Asulate kasvutempo: {STRING}
STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Asulate kasvutempo
STR_CONFIG_SETTING_TOWN_GROWTH_NONE :Pole
STR_CONFIG_SETTING_TOWN_GROWTH_SLOW :Aeglane
STR_CONFIG_SETTING_TOWN_GROWTH_NORMAL :Normaalne
STR_CONFIG_SETTING_TOWN_GROWTH_FAST :Kiire
STR_CONFIG_SETTING_TOWN_GROWTH_VERY_FAST :Väga Kiire
STR_CONFIG_SETTING_LARGER_TOWNS :Proportsioon asulatest millest kasvavad linnad: {STRING}
STR_CONFIG_SETTING_LARGER_TOWNS :Linnadeks kasvavate asulate osakaal: {STRING}
STR_CONFIG_SETTING_LARGER_TOWNS_HELPTEXT :Asulate arv mis kasvavad tulevikus linnadeks, elik asulate arv mis on alguses suuremad ja kasvavad kiiremini kui ülejäänud asulad
STR_CONFIG_SETTING_LARGER_TOWNS_VALUE :1 iga {COMMA} kohta
STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Mitte ühtegi
STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Algne linnade suurustegur: {STRING}
STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Algne linnade suuruskordaja: {STRING}
STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Keskmine linna suurus võrreldes tavalise asulaga mängu alguses
STR_CONFIG_SETTING_LINKGRAPH_INTERVAL :Jaotusgraafikuid uuendatakse igal {STRING}. päeval
@ -1798,8 +1796,8 @@ STR_CONFIG_SETTING_LIMITATIONS :{ORANGE}Piirang
STR_CONFIG_SETTING_ACCIDENTS :{ORANGE}Katastroofid / Õnnetused
STR_CONFIG_SETTING_GENWORLD :{ORANGE}Maailma tekitamine
STR_CONFIG_SETTING_ENVIRONMENT :{ORANGE}Keskkond
STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Linnavõimud
STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Linnad
STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :{ORANGE}Omavalitsus
STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :{ORANGE}Asulad
STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :{ORANGE}Tööstused
STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :{ORANGE}Kaubajaotus
STR_CONFIG_SETTING_AI :{ORANGE}Konkurendid
@ -2630,31 +2628,31 @@ STR_QUERY_RESET_LANDSCAPE_CAPTION :{WHITE}Nulli ma
STR_RESET_LANDSCAPE_CONFIRMATION_TEXT :{WHITE}Kas oled kindel, et tahad lammutada kõik mängija omandid?
# Town generation window (SE)
STR_FOUND_TOWN_CAPTION :{WHITE}Linnade tekitamine
STR_FOUND_TOWN_NEW_TOWN_BUTTON :{BLACK}Uus linn
STR_FOUND_TOWN_NEW_TOWN_TOOLTIP :{BLACK}Ehita uus linn. Shift+klõpsuga kuvatakse eeldatav maksumus
STR_FOUND_TOWN_RANDOM_TOWN_BUTTON :{BLACK}Suvaline linn
STR_FOUND_TOWN_RANDOM_TOWN_TOOLTIP :{BLACK}Ehita linn suvalisse kohta
STR_FOUND_TOWN_MANY_RANDOM_TOWNS :{BLACK}Palju suvalisi linnu
STR_FOUND_TOWN_RANDOM_TOWNS_TOOLTIP :{BLACK}Kaardi katmine suvaliselt asetatud linnadega
STR_FOUND_TOWN_NAME_TITLE :{YELLOW}Linnanimi:
STR_FOUND_TOWN_NAME_EDITOR_TITLE :{BLACK}Sisesta linnanimi
STR_FOUND_TOWN_NAME_EDITOR_HELP :{BLACK}Klõpsa linnale nime andmiseks
STR_FOUND_TOWN_CAPTION :{WHITE}Asulate tekitamine
STR_FOUND_TOWN_NEW_TOWN_BUTTON :{BLACK}Uus asula
STR_FOUND_TOWN_NEW_TOWN_TOOLTIP :{BLACK}Raja uus asula. Shift+klõpsuga kuvatakse eeldatav maksumus
STR_FOUND_TOWN_RANDOM_TOWN_BUTTON :{BLACK}Suvaline asula
STR_FOUND_TOWN_RANDOM_TOWN_TOOLTIP :{BLACK}Raja asula suvalisse kohta
STR_FOUND_TOWN_MANY_RANDOM_TOWNS :{BLACK}Palju suvalisi asulaid
STR_FOUND_TOWN_RANDOM_TOWNS_TOOLTIP :{BLACK}Kaardi katmine suvaliselt paigutatud asulatega
STR_FOUND_TOWN_NAME_TITLE :{YELLOW}Asula nimi:
STR_FOUND_TOWN_NAME_EDITOR_TITLE :{BLACK}Sisesta asula nimi
STR_FOUND_TOWN_NAME_EDITOR_HELP :{BLACK}Klõpsa asulale nime andmiseks
STR_FOUND_TOWN_NAME_RANDOM_BUTTON :{BLACK}Suvaline nimi
STR_FOUND_TOWN_NAME_RANDOM_TOOLTIP :{BLACK}Loo suvaline nimi
STR_FOUND_TOWN_INITIAL_SIZE_TITLE :{YELLOW}Linna suurus:
STR_FOUND_TOWN_INITIAL_SIZE_TITLE :{YELLOW}Asula suurus:
STR_FOUND_TOWN_INITIAL_SIZE_SMALL_BUTTON :{BLACK}Väike
STR_FOUND_TOWN_INITIAL_SIZE_MEDIUM_BUTTON :{BLACK}Keskmine
STR_FOUND_TOWN_INITIAL_SIZE_LARGE_BUTTON :{BLACK}Suur
STR_FOUND_TOWN_SIZE_RANDOM :{BLACK}Suvaline
STR_FOUND_TOWN_INITIAL_SIZE_TOOLTIP :{BLACK}Vali linna suurus
STR_FOUND_TOWN_INITIAL_SIZE_TOOLTIP :{BLACK}Vali asula suurus
STR_FOUND_TOWN_CITY :{BLACK}Linn
STR_FOUND_TOWN_CITY_TOOLTIP :{BLACK}Suuremad linnad kasvavad kiiremini kui väikesed{}Sõltuvalt seadetest on need ka alguses suuremad
STR_FOUND_TOWN_CITY_TOOLTIP :{BLACK}Linnad kasvavad kiiremini, kui tavalised asulad{}Sõltuvalt seadetest on need ka alguses suuremad
STR_FOUND_TOWN_ROAD_LAYOUT :{YELLOW}Linna teeplaneering
STR_FOUND_TOWN_SELECT_TOWN_ROAD_LAYOUT :{BLACK}Vali linnas kasutatav teeplaneering
STR_FOUND_TOWN_ROAD_LAYOUT :{YELLOW}Asula teeplaneering
STR_FOUND_TOWN_SELECT_TOWN_ROAD_LAYOUT :{BLACK}Vali selle asula teeplaneering
STR_FOUND_TOWN_SELECT_LAYOUT_ORIGINAL :{BLACK}Algne
STR_FOUND_TOWN_SELECT_LAYOUT_BETTER_ROADS :{BLACK}Paremad teed
STR_FOUND_TOWN_SELECT_LAYOUT_2X2_GRID :{BLACK}2x2 ruudustik
@ -2908,7 +2906,7 @@ STR_MAPGEN_WORLD_GENERATION_CAPTION :{WHITE}Maailma
STR_MAPGEN_MAPSIZE :{BLACK}Kaardi mõõtmed:
STR_MAPGEN_MAPSIZE_TOOLTIP :{BLACK}Määrab maakaardi mõõtmed ruutudes. Ruute, mida saab kasutada, on pisut vähem
STR_MAPGEN_BY :{BLACK}*
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Linnade sagedus:
STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Asustusi:
STR_MAPGEN_DATE :{BLACK}Algus:
STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Tööstuste sagedus:
STR_MAPGEN_MAX_HEIGHTLEVEL :{BLACK}Maksimaalne kaardi kõrgus:
@ -2918,7 +2916,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Lumepiir
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Lumepiiri liigutamine ühe võrra üles
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Lumepiiri liigutamine ühe võrra alla
STR_MAPGEN_LAND_GENERATOR :{BLACK}Maatekituse meetod:
STR_MAPGEN_TREE_PLACER :{BLACK}Puude algoritm:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Maapinna tüüp:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Merepinna tase:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Jõgesid:
@ -3168,11 +3165,11 @@ STR_EDIT_SIGN_PREVIOUS_SIGN_TOOLTIP :{BLACK}Mine eel
STR_EDIT_SIGN_SIGN_OSKTITLE :{BLACK}Sisesta sildile nimi
# Town directory window
STR_TOWN_DIRECTORY_CAPTION :{WHITE}Linnad
STR_TOWN_DIRECTORY_CAPTION :{WHITE}Asustused
STR_TOWN_DIRECTORY_NONE :{ORANGE}- Puudub -
STR_TOWN_DIRECTORY_TOWN :{ORANGE}{TOWN}{BLACK} ({COMMA})
STR_TOWN_DIRECTORY_CITY :{ORANGE}{TOWN}{YELLOW} (Linn){BLACK} ({COMMA})
STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Linnanimed - vajuta linnanimele, et viia vaade linnale. Ctrl+klõps avab uue vaate linna asukohast
STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Astuste nimed - vajuta nimele, et viia vaade asustusele. Ctrl+klõps avab uue vaate linna asukohas
STR_TOWN_POPULATION :{BLACK}Maailma rahvastik: {COMMA}
# Town view window
@ -3180,25 +3177,25 @@ STR_TOWN_VIEW_TOWN_CAPTION :{WHITE}{TOWN}
STR_TOWN_VIEW_CITY_CAPTION :{WHITE}{TOWN} (Linn)
STR_TOWN_VIEW_POPULATION_HOUSES :{BLACK}Rahvaarv: {ORANGE}{COMMA}{BLACK} Ehitisi: {ORANGE}{COMMA}
STR_TOWN_VIEW_CARGO_LAST_MONTH_MAX :{BLACK}{CARGO_LIST} eelmisel kuul: {ORANGE}{COMMA}{BLACK} Kuni: {ORANGE}{COMMA}
STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Veoseid linna kasvamiseks:
STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Asula kasvuks nõutud veosed:
STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{ORANGE}{STRING}{RED} vajalik
STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING}{BLACK} on talvel vajalik
STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} äraveetud
STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (ikka veel vaja)
STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (äraveetud)
STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Linn kasvab {ORANGE}{COMMA}{BLACK} päevaga
STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Linn kasvab iga {ORANGE}{COMMA}{BLACK} päeva tagant (rahastatud)
STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Linn {RED}ei{BLACK} kasva
STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Mürapiirang linnas: {ORANGE}{COMMA}{BLACK} suurim: {ORANGE}{COMMA}
STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Vaate viimine linnale
STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Asustus kasvab iga {ORANGE}{COMMA}{NBSP}päev{P "" a}
STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Asustus kasvab iga {ORANGE}{COMMA}{BLACK}{NBSP}päev{P "" a} (rahastatud)
STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Asustus {RED}ei{BLACK} kasva
STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Mürapiirang asustuses: {ORANGE}{COMMA}{BLACK} suurim: {ORANGE}{COMMA}
STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Keskenda vaade asustusele. Ctrl+klõps avab asustuse kohal uue vaate
STR_TOWN_VIEW_LOCAL_AUTHORITY_BUTTON :{BLACK}Omavalitsus
STR_TOWN_VIEW_LOCAL_AUTHORITY_TOOLTIP :{BLACK}Näita teavet kohaliku omavalitsuse kohta
STR_TOWN_VIEW_RENAME_TOOLTIP :{BLACK}Muuda linna nime
STR_TOWN_VIEW_EXPAND_BUTTON :{BLACK}Laienda
STR_TOWN_VIEW_EXPAND_TOOLTIP :{BLACK}Linna suuruse suurendamine
STR_TOWN_VIEW_EXPAND_TOOLTIP :{BLACK}Asustuse suurendamine
STR_TOWN_VIEW_DELETE_BUTTON :{BLACK}Kustuta
STR_TOWN_VIEW_DELETE_TOOLTIP :{BLACK}Hävita see linn täielikult
STR_TOWN_VIEW_DELETE_TOOLTIP :{BLACK}Hävita see asustus täielikult
STR_TOWN_VIEW_RENAME_TOWN_BUTTON :Ümbernimeta linn
@ -3209,7 +3206,7 @@ STR_LOCAL_AUTHORITY_ZONE_TOOLTIP :{BLACK}Näita k
STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}Ettevõtete hinnangud:
STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING}
STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}Pakutavad toimingud:
STR_LOCAL_AUTHORITY_ACTIONS_TOOLTIP :{BLACK}Nimekiri asjadest, mida saab siin linnas teha - klõpsa esemel, et saada rohkem andmeid
STR_LOCAL_AUTHORITY_ACTIONS_TOOLTIP :{BLACK}Nimekiri asjadest, mida saab selles asulas teha - täpsustused esemele klõpsatel
STR_LOCAL_AUTHORITY_DO_IT_BUTTON :{BLACK}Soorita toiming
STR_LOCAL_AUTHORITY_DO_IT_TOOLTIP :{BLACK}Soorita ülalpool valitud toiming
@ -3222,14 +3219,14 @@ STR_LOCAL_AUTHORITY_ACTION_NEW_BUILDINGS :Rahasta uute ho
STR_LOCAL_AUTHORITY_ACTION_EXCLUSIVE_TRANSPORT :Osta monopoolsed veoõigused
STR_LOCAL_AUTHORITY_ACTION_BRIBE :Paku kohalikule omavalitsusele altkäemaksu
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{YELLOW} Pisikese kohaliku reklaamikampaania korraldamine meelitab rohkem reisijaid ja kaupu sinu veoteenuseid kasutama.{} Hind: {CURRENCY_LONG}
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{YELLOW} Keskmise reklaamikampaania korraldamine, et meelitada rohkem reisijaid ja kaupu sinu teenuste juurede.{} Hind: {CURRENCY_LONG}
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{YELLOW} Suure reklaamikampaania korraldamine, et meelitada rohkem reisijaid ja kaupu sinu teenuste juurede.{} Hind: {CURRENCY_LONG}
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW} Teehoiutööde rahastamine. Põhjustab linnatänavatel tõsiseid liiklusprobleeme kuni 6 kuuks.{} Hind: {CURRENCY_LONG}
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{YELLOW} Oma ettevõtte auks kuju ehitamine.{} Hind: {CURRENCY_LONG}
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW} Uute ärihoonete ehitamise rahastamine selles linnas.{} Hind: {CURRENCY_LONG}
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW} Üheks aastaks monopoolsete veoõiguste ostmine selles linnas. Linna omavalitsus lubab reisijate ja kauba veoks kasutada ainult sinu jaamasid.{} Hind: {CURRENCY_LONG}
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW} Linna omavalitusele ettevõtte hinnangu tõstmise eesmärgil altkäemaksu pakkumine. Vahele jäädes tuleb trahvi maksta.{} Hind: {CURRENCY_LONG}
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{YELLOW} Pisikese kohaliku reklaamikampaania korraldamine meelitab rohkem reisijaid ja kaupu sinu veoteenuseid kasutama.{} Maksumus: {CURRENCY_LONG}
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{YELLOW} Keskmise reklaamikampaania korraldamine, et meelitada rohkem reisijaid ja kaupu sinu teenuste juurede.{} Maksumus: {CURRENCY_LONG}
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{YELLOW} Suure reklaamikampaania korraldamine, et meelitada rohkem reisijaid ja kaupu sinu teenuste juurede.{} Maksumus: {CURRENCY_LONG}
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW} Linna teedevõrgu ümberehituse rahastamine. Põhjustab liikluses tõsiseid häireid kuni 6 kuuks.{} Maksumus: {CURRENCY_LONG}
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{YELLOW} Oma ettevõtte auks kuju ehitamine.{} Maksumus: {CURRENCY_LONG}
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW} Uute ärihoonete ehitamise rahastamine selles asulas.{} Maksumus: {CURRENCY_LONG}
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW} Üheks aastaks monopoolsete veoõiguste ostmine selles asulas. Asula omavalitsus lubab reisijate ja kauba veoks kasutada ainult sinu jaamasid.{} Maksumus: {CURRENCY_LONG}
STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW} Kohalikule omavalitusele ettevõtte hinnangu tõstmise eesmärgil altkäemaksu pakkumine. Vahele jäädes tuleb trahvi maksta.{} Maksumus: {CURRENCY_LONG}
# Goal window
STR_GOALS_CAPTION :{WHITE}{COMPANY} eesmärgid
@ -3242,7 +3239,7 @@ STR_GOALS_SPECTATOR_NONE :{ORANGE}- Kehte
STR_GOALS_PROGRESS :{ORANGE}{STRING}
STR_GOALS_PROGRESS_COMPLETE :{GREEN}{STRING}
STR_GOALS_COMPANY_TITLE :{BLACK}Ettevõtte eesmärgid:
STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klõpsa eesmärgil, et liigutada vaateaken tööstuse/linna/ruudu asukohale. Ctrl+klõps avab uue vaateakna tööstuse/linna/ruudu asukohas
STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klõpsa eesmärgil, et liigutada vaateaken tööstuse/asula/ruudu asukohale. Ctrl+klõps avab uue vaateakna tööstuse/asula/ruudu asukohas
# Goal question window
STR_GOAL_QUESTION_CAPTION_QUESTION :{BLACK}Küsimus
@ -3278,7 +3275,7 @@ STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}{STRING
STR_SUBSIDIES_NONE :{ORANGE}Mitte ühtegi
STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Juba toetatavad veoteenused:
STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} kohast {STRING} kohta {STRING}{YELLOW} ({COMPANY}{YELLOW}, kuni {DATE_SHORT})
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Vajuta pakkumisele, et näha linna või tööstuse asukohta. Ctrl+klõps avab uue vaate ettevõtte/linna asukohast
STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Vajuta pakkumisele, et keskendada vaade tööstusele/asustusele. Ctrl+klõps avab uue vaate ettevõtte/asustuse asukohas
# Story book window
STR_STORY_BOOK_CAPTION :{WHITE}«{COMPANY}» juturaamat
@ -3314,8 +3311,8 @@ STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Võtab v
STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Näita vastuvõetavate veoste nimistut
STR_STATION_VIEW_ACCEPTS_CARGO :{BLACK}Võtab vastu: {WHITE}{CARGO_LIST}
STR_STATION_VIEW_EXCLUSIVE_RIGHTS_SELF :{BLACK}Antud jaamal on eksklusiivsed transpordiõigused selles linnas.
STR_STATION_VIEW_EXCLUSIVE_RIGHTS_COMPANY :{YELLOW}{COMPANY}{BLACK} ostis eksklusiivsed transpordiõigused antud linnas.
STR_STATION_VIEW_EXCLUSIVE_RIGHTS_SELF :{BLACK}Sellel jaamal on asulas vedude ainuõigus.
STR_STATION_VIEW_EXCLUSIVE_RIGHTS_COMPANY :{YELLOW}{COMPANY}{BLACK} ostis vedude ainuõiguse selles asustuses.
STR_STATION_VIEW_RATINGS_BUTTON :{BLACK}Hinnangud
STR_STATION_VIEW_RATINGS_TOOLTIP :{BLACK}Näita jaamahinnangut
@ -3875,7 +3872,7 @@ STR_VEHICLE_STATUS_HEADING_FOR_STATION_VEL :{LTBLUE}Siht: {
STR_VEHICLE_STATUS_NO_ORDERS_VEL :{LTBLUE}Sihitu, {VELOCITY}
STR_VEHICLE_STATUS_HEADING_FOR_WAYPOINT_VEL :{LTBLUE}Suundub {WAYPOINT}, {VELOCITY}
STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_VEL :{ORANGE}Suundub {DEPOT}, {VELOCITY}
STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_SERVICE_VEL :{LTBLUE}Teenus kohas {DEPOT}, {VELOCITY}
STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_SERVICE_VEL :{LTBLUE}Järelevaatus: {DEPOT}, {VELOCITY}
# Vehicle stopped/started animations
STR_VEHICLE_COMMAND_STOPPED_SMALL :{TINY_FONT}{RED}peatatud
@ -4337,8 +4334,8 @@ STR_GAME_SAVELOAD_NOT_AVAILABLE :<mitte saadaval
STR_WARNING_LOADGAME_REMOVED_TRAMS :{WHITE}Mäng on salvestatud osas, kus trammid ei olnud toetatud. Kõik trammid on eemaldatud
# Map generation messages
STR_ERROR_COULD_NOT_CREATE_TOWN :{WHITE}Kaardi tekitamine katkes...{}... linnadele pole sobilike kohti
STR_ERROR_NO_TOWN_IN_SCENARIO :{WHITE}... kaardil puudub linn
STR_ERROR_COULD_NOT_CREATE_TOWN :{WHITE}Kaardi tekitamine katkes...{}... pole sobivaid kohti asulatele
STR_ERROR_NO_TOWN_IN_SCENARIO :{WHITE}... stsenaariumis pole ühtegi asulat
STR_ERROR_PNGMAP :{WHITE}Ei suuda laadida maastiku PNG failist...
STR_ERROR_PNGMAP_FILE_NOT_FOUND :{WHITE}... faili ei leitud
@ -4389,7 +4386,7 @@ STR_ERROR_NOT_ALLOWED_WHILE_PAUSED :{WHITE}Pole lub
# Local authority errors
STR_ERROR_LOCAL_AUTHORITY_REFUSES_TO_ALLOW_THIS :{WHITE}{TOWN} kohalik omavalitsus keeldub seda lubamast
STR_ERROR_LOCAL_AUTHORITY_REFUSES_AIRPORT :{WHITE}Linna {TOWN} kohalik omavalitsus keeldub uut lennujaama lubamast
STR_ERROR_LOCAL_AUTHORITY_REFUSES_AIRPORT :{WHITE}Asula {TOWN} omavalitsus keeldub uut lennujaama lubamast
STR_ERROR_LOCAL_AUTHORITY_REFUSES_NOISE :{WHITE}{TOWN} kohalik omavalitsus keeldub ehitusluba lennujaamale väljastamast kuna on mures müra pärast
STR_ERROR_BRIBE_FAILED :{WHITE}Teie altkäemaksu andmise katse on avastatud kohaliku uurija poolt
@ -4421,18 +4418,18 @@ STR_ERROR_CAN_T_SELL_25_SHARE_IN :{WHITE}Selle et
STR_ERROR_PROTECTED :{WHITE}See ettevõtte pole veel piisavalt vana, et aktsiaid vahetada...
# Town related errors
STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Ei saa ühtegi linna ehitada...
STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Ei saa ühtegi asulat ehitada...
STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Ei saa linna ümbernimetada...
STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Siia ei saa linna ehitada...
STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Linna ei saa laiendada...
STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Siia ei saa asulat rajada...
STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Asulat ei saa laiendada...
STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... liiga lähedal kaardi servale
STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... liiga lähedal teisele linnale
STR_ERROR_TOO_MANY_TOWNS :{WHITE}... liiga palju linnu
STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... liiga lähedal teisele asulale
STR_ERROR_TOO_MANY_TOWNS :{WHITE}... liiga palju asulaid
STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... pole enam ruumi kaardil
STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Linn ei ehita teid. Teedeehituse lubamiseks Põhjalik seadistus->Majandus->Linnad
STR_ERROR_TOWN_EXPAND_WARN_NO_ROADS :{WHITE}Asula ei ehita teid. Teedeehituse lubamiseks Põhjalik seadistus->Majandus->Asulad
STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Teede ehitamine
STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Seda linna ei saa kustutada...{}Jaam või depoo viitab linnale või mõnd linna omanduses olevat tükki ei saa kustutada
STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... linnakeskuses ei leidu kujule sobivat kohta
STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Seda asulat ei saa kõrvaldada...{}Jaam või depoo viitab asulale, või asulale kuuluvat ruutu ei saa kõrvaldada
STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... asula keskuses ei leidu kujule sobivat kohta
# Industry related errors
STR_ERROR_TOO_MANY_INDUSTRIES :{WHITE}... liiga palju tööstuseid
@ -4440,13 +4437,13 @@ STR_ERROR_CAN_T_GENERATE_INDUSTRIES :{WHITE}Tööstu
STR_ERROR_CAN_T_BUILD_HERE :{WHITE}{STRING} ei saa siia ehitada...
STR_ERROR_CAN_T_CONSTRUCT_THIS_INDUSTRY :{WHITE}Seda tüüpi tööstust ei saa siia ehitada...
STR_ERROR_INDUSTRY_TOO_CLOSE :{WHITE}... liiga lähedal mõnele teisele tööstusele
STR_ERROR_MUST_FOUND_TOWN_FIRST :{WHITE}... enne pead linna ehitama
STR_ERROR_ONLY_ONE_ALLOWED_PER_TOWN :{WHITE}... iga linna kohta lubatud ainult üks
STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS_WITH_POPULATION_OF_1200 :{WHITE}... saab ainult ehitada linna, mille rahvastikuarv ületab 1200
STR_ERROR_MUST_FOUND_TOWN_FIRST :{WHITE}... enne pead asula rajama
STR_ERROR_ONLY_ONE_ALLOWED_PER_TOWN :{WHITE}... iga asula kohta lubatud ainult üks
STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS_WITH_POPULATION_OF_1200 :{WHITE}... saab ainult ehitada asulatesse, mille elanikearv ületab 1200
STR_ERROR_CAN_ONLY_BE_BUILT_IN_RAINFOREST :{WHITE}... saab ehitada ainult vihmametsadesse
STR_ERROR_CAN_ONLY_BE_BUILT_IN_DESERT :{WHITE}... saab ehitada ainult kõrbesse
STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS :{WHITE}... saab ainult linnadesse ehitada
STR_ERROR_CAN_ONLY_BE_BUILT_NEAR_TOWN_CENTER :{WHITE}... saab ainult linna keskpunkti lähedale ehitada
STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS :{WHITE}... saab ainult asulatesse ehitada (majade asemele)
STR_ERROR_CAN_ONLY_BE_BUILT_NEAR_TOWN_CENTER :{WHITE}... saab ainult asulekeskuste lähedale ehitada
STR_ERROR_CAN_ONLY_BE_BUILT_IN_LOW_AREAS :{WHITE}... saab ainult madalatele aladele ehitada
STR_ERROR_CAN_ONLY_BE_POSITIONED :{WHITE}... saab ainult ehitada kaardi serva
STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... metsa saab istutada ainult lumepiirist kõrgemale
@ -4474,7 +4471,7 @@ STR_ERROR_TOO_MANY_TRUCK_STOPS :{WHITE}Liiga pa
STR_ERROR_TOO_CLOSE_TO_ANOTHER_DOCK :{WHITE}Liiga lähedal teisele dokile
STR_ERROR_TOO_CLOSE_TO_ANOTHER_AIRPORT :{WHITE}Liiga lähedal teisele lennuväljale
STR_ERROR_CAN_T_RENAME_STATION :{WHITE}Ei saa jaama ümbernimetada...
STR_ERROR_DRIVE_THROUGH_ON_TOWN_ROAD :{WHITE}... see tee on omatud linna poolt
STR_ERROR_DRIVE_THROUGH_ON_TOWN_ROAD :{WHITE}... see on asulale kuuluv tee
STR_ERROR_DRIVE_THROUGH_DIRECTION :{WHITE}... tee on vales suunas
STR_ERROR_DRIVE_THROUGH_CORNER :{WHITE}... nurgad ei saa läbisõidupeatustes olla
STR_ERROR_DRIVE_THROUGH_JUNCTION :{WHITE}... ristmikud ei saa olla läbisõidupeatustes
@ -4754,7 +4751,7 @@ STR_TOWN_BUILDING_NAME_OFFICE_BLOCK_1 :Büroohoone
STR_TOWN_BUILDING_NAME_SMALL_BLOCK_OF_FLATS_1 :Väike kortermaja
STR_TOWN_BUILDING_NAME_CHURCH_1 :Kirik
STR_TOWN_BUILDING_NAME_LARGE_OFFICE_BLOCK_1 :Suur büroohoone
STR_TOWN_BUILDING_NAME_TOWN_HOUSES_1 :Linna majad
STR_TOWN_BUILDING_NAME_TOWN_HOUSES_1 :Asustuse majad
STR_TOWN_BUILDING_NAME_HOTEL_1 :Hotell
STR_TOWN_BUILDING_NAME_STATUE_1 :Kuju
STR_TOWN_BUILDING_NAME_FOUNTAIN_1 :Purskkaev

@ -890,8 +890,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgiskur Lari
STR_GAME_OPTIONS_CURRENCY_IRR :Iranskur Rial
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Akfør
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Áset hvørja síðu á vegnum akfør skulu koyra á
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vinstrakoyring
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Høgrakoyring
@ -2439,7 +2437,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Hædd á
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Flyt kava linjuna eitt upp
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Flyt kava linjuna eitt niður
STR_MAPGEN_LAND_GENERATOR :{BLACK}Lendis framleiðari:
STR_MAPGEN_TREE_PLACER :{BLACK}Træ algoritma:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Slag av lendi:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Sjóvarmáli:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Løkar:

@ -949,8 +949,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Hongkongin doll
STR_GAME_OPTIONS_CURRENCY_INR :Intian rupia (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Kulkuneuvot
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Valitse kummalla puolella tietä ajetaan
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vasemmanpuolinen liikenne
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Oikeanpuolinen liikenne
@ -1005,6 +1003,7 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :muu
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Käyttöliittymän koko
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Valitse käyttöliittymäelementtien koko
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_AUTO :(tunnista automaattisesti)
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Tavallinen
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Kaksinkertainen
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Nelinkertainen
@ -1012,6 +1011,7 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Nelinkertainen
STR_GAME_OPTIONS_FONT_ZOOM :{BLACK}Kirjasinkoko
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Valitse käyttöliittymän kirjasinkoko
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_AUTO :(tunnista automaattisesti)
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :Normaali
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Kaksinkertainen koko
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Nelinkertainen koko
@ -2606,12 +2606,18 @@ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Sattuman
# Fund new industry window
STR_FUND_INDUSTRY_CAPTION :{WHITE}Rakenna uutta teollisuutta
STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Valitse tehdas listasta
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :Monta satunnaista teollisuusaluetta
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :{BLACK}Luo satunnaisia tuotantolaitoksia
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Sijoita teollisuuslaitokset satunnaisesti
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_CAPTION :{WHITE}Luo satunnaista teollisuutta
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY :{YELLOW}Oletko varma, että haluat luoda monta satunnaista tuotantolaitosta?
STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Kustannus: {YELLOW}{CURRENCY_LONG}
STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Koekaivaus
STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Rakenna
STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Perusta
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES :{BLACK}Poista kaikki tuotantolaitokset
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_TOOLTIP :{BLACK}Poista kaikki kartalla olevat tuotantolaitokset
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION :{WHITE}Poista kaikki tuotantolaitokset
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_QUERY :{YELLOW}Oletko varma, että haluat poistaa kaikki tuotantolaitokset?
# Industry cargoes window
STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Teollisuusketju teollisuudelle {STRING}
@ -2842,6 +2848,8 @@ STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF:
STR_SAVELOAD_FILTER_TITLE :{BLACK}Suodatinteksti:
STR_SAVELOAD_OVERWRITE_TITLE :{WHITE}Tiedosto on jo olemassa
STR_SAVELOAD_OVERWRITE_WARNING :{YELLOW}Haluatko varmasti korvata olemassaolevan tiedoston?
STR_SAVELOAD_DIRECTORY :{STRING} (hakemisto)
STR_SAVELOAD_PARENT_DIRECTORY :{STRING} (ylähakemisto)
STR_SAVELOAD_OSKTITLE :{BLACK}Syötä nimi tallennustiedostolle
@ -2860,7 +2868,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Lumiraja
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Siirrä lumirajaa yksi taso ylöspäin
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Siirrä lumirajaa yksi taso alaspäin
STR_MAPGEN_LAND_GENERATOR :{BLACK}Maastogeneraattori:
STR_MAPGEN_TREE_PLACER :{BLACK}Puiden algoritmi:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Maaston tyyppi:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Merenpinta:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Joet:
@ -3507,7 +3514,7 @@ STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Poista r
STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Poista ryhmä
STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Haluatko varmasti poistaa tämän ryhmän ja sen alaryhmät?
STR_GROUP_ADD_SHARED_VEHICLE :Lisää jaettuja kulkuneuvoja
STR_GROUP_ADD_SHARED_VEHICLE :Lisää jaetut kulkuneuvot
STR_GROUP_REMOVE_ALL_VEHICLES :Poista kaikki kulkuneuvot
STR_GROUP_RENAME_CAPTION :{BLACK}Nimeä ryhmä

@ -950,8 +950,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Dollar de Hong
STR_GAME_OPTIONS_CURRENCY_INR :Roupie indienne (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Véhicules routiers
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Choisir le côté de la route pour la conduite
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Conduite à gauche
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Conduite à droite
@ -1006,6 +1004,7 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :autre
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Taille d'interface
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Choisir la taille d'élément d'interface à utiliser
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_AUTO :(auto-détection)
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Taille double
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Taille quadruple
@ -1013,6 +1012,7 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Taille quadrupl
STR_GAME_OPTIONS_FONT_ZOOM :{BLACK}Taille de police
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Choisir la taille de police d'interface à utiliser
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_AUTO :(auto-détection)
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :Normal
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Taille double
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Taille quadruple
@ -2607,12 +2607,18 @@ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Aléatoi
# Fund new industry window
STR_FUND_INDUSTRY_CAPTION :{WHITE}Financer une nouvelle industrie
STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Choisir l'industrie appropriée dans cette liste
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :Beaucoup d'industries au hasard
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :{BLACK}Créer des industries au hasard
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Couvrir la carte d'industries placées au hasard
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_CAPTION :{WHITE}Créer des industries au hasard
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY :{YELLOW}Êtes-vous sûr de vouloir créer beaucoup d'industries au hasard{NBSP}?
STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Prix{NBSP}: {YELLOW}{CURRENCY_LONG}
STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Prospecter
STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Construire
STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Fonder
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES :{BLACK}Enlever toutes les industries
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_TOOLTIP :{BLACK}Enlève toutes les industries présentes sur la carte
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION :{WHITE}Enlever toutes les industries
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_QUERY :{YELLOW}Êtes-vous sûr de vouloir enlever toutes les industries{NBSP}?
# Industry cargoes window
STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Chaîne industrielle pour l'industrie «{NBSP}{STRING}{NBSP}»
@ -2843,6 +2849,8 @@ STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF{
STR_SAVELOAD_FILTER_TITLE :{BLACK}Filtre{NBSP}:
STR_SAVELOAD_OVERWRITE_TITLE :{WHITE}Écraser le fichier
STR_SAVELOAD_OVERWRITE_WARNING :{YELLOW}Êtes-vous sûr de vouloir écraser le fichier existant{NBSP}?
STR_SAVELOAD_DIRECTORY :{STRING} (Répertoire)
STR_SAVELOAD_PARENT_DIRECTORY :{STRING} (Répertoire parent)
STR_SAVELOAD_OSKTITLE :{BLACK}Entrer un nom pour la sauvegarde
@ -2861,7 +2869,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Alt. d'e
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Augmenter l'altitude d'enneigement
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Baisser l'altitude d'enneigement
STR_MAPGEN_LAND_GENERATOR :{BLACK}Générateur{NBSP}:
STR_MAPGEN_TREE_PLACER :{BLACK}Ajout des arbres{NBSP}:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Type de terrain{NBSP}:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Niveau de la mer{NBSP}:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Nb. de rivières{NBSP}:
@ -4696,7 +4703,7 @@ STR_TOWN_BUILDING_NAME_OFFICE_BLOCK_1 :Immeuble de bur
STR_TOWN_BUILDING_NAME_SMALL_BLOCK_OF_FLATS_1 :Petit immeuble résidentiel
STR_TOWN_BUILDING_NAME_CHURCH_1 :Église
STR_TOWN_BUILDING_NAME_LARGE_OFFICE_BLOCK_1 :Gros immeuble de bureaux
STR_TOWN_BUILDING_NAME_TOWN_HOUSES_1 :Bâtiments municipaux
STR_TOWN_BUILDING_NAME_TOWN_HOUSES_1 :Maisons de ville
STR_TOWN_BUILDING_NAME_HOTEL_1 :Hôtel
STR_TOWN_BUILDING_NAME_STATUE_1 :Statue
STR_TOWN_BUILDING_NAME_FOUNTAIN_1 :Fontaine

@ -1123,8 +1123,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari Cairtbheil
STR_GAME_OPTIONS_CURRENCY_IRR :Rial Iorànach (IRR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Carbadan-rathaid
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Tagh taobh an rathaid air a dhràibheas na carbadan
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Draibheadh air an taobh chlì
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Draibheadh air an taobh deas
@ -2971,7 +2969,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Àirde n
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Gluais an loidhne-shneachda suas aon cheum
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Gluais an loidhne-shneachda sìos aon cheum
STR_MAPGEN_LAND_GENERATOR :{BLACK}Gineadair crutha-thìre:
STR_MAPGEN_TREE_PLACER :{BLACK}Algairim chraobhan:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Seòrsa a' chrutha-thìre:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Àirde na mara:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Aibhnichean:

@ -938,8 +938,6 @@ STR_GAME_OPTIONS_CURRENCY_CNY :Renminbi chiné
STR_GAME_OPTIONS_CURRENCY_HKD :Dólar de Hong Kong (HKD)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Vehículos de estrada
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Selecciona o lado da estrada polo que circularán os vehículos
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Conducir pola esquerda
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Conducir pola dereita
@ -2812,7 +2810,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Cota de
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Subir a cota de neve unha altura
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Baixar a cota de neve unha altura
STR_MAPGEN_LAND_GENERATOR :{BLACK}Xerador de terreo:
STR_MAPGEN_TREE_PLACER :{BLACK}Algoritmo para árbores:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tipo de terreo:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nivel do mar:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Ríos:

@ -241,7 +241,7 @@ STR_TOOLTIP_CATCHMENT :{BLACK}Anzeige
STR_TOOLTIP_CLOSE_WINDOW :{BLACK}Fenster schließen
STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Titelleiste klicken und ziehen, um das Fenster zu verschieben
STR_TOOLTIP_SHADE :{BLACK}Fenster einklappen - Nur die Titelleiste zeigen
STR_TOOLTIP_SHADE :{BLACK}Fenster einklappen Nur die Titelleiste zeigen
STR_TOOLTIP_DEBUG :{BLACK}Zeige Daten für NewGRF-Fehlerbeseitigung
STR_TOOLTIP_DEFSIZE :{BLACK}Standardgröße des Fensters wieder herstellen. Strg+Klick um die aktuelle Größe als Standard zu speichern
STR_TOOLTIP_STICKY :{BLACK}Fenster wird nicht durch die „Schließe alle Fenster“-Taste geschlossen. Strg+Klick, um den Status als Standard zu speichern
@ -719,7 +719,7 @@ STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLAC
STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} von {COMPANY} erreicht „{STRING}“-Status!
# Smallmap window
STR_SMALLMAP_CAPTION :{WHITE}Weltkarte - {STRING}
STR_SMALLMAP_CAPTION :{WHITE}Weltkarte {STRING}
STR_SMALLMAP_TYPE_CONTOURS :Höhenrelief
STR_SMALLMAP_TYPE_VEHICLES :Fahrzeuge
@ -798,7 +798,7 @@ STR_STATUSBAR_SAVING_GAME :{RED}* * SPEI
# News message history
STR_MESSAGE_HISTORY :{WHITE}Nachrichtenchronik
STR_MESSAGE_HISTORY_TOOLTIP :{BLACK}Eine Liste der aktuellen Nachrichten
STR_MESSAGE_NEWS_FORMAT :{STRING} - {STRING}
STR_MESSAGE_NEWS_FORMAT :{STRING} {STRING}
STR_NEWS_MESSAGE_CAPTION :{WHITE}Mitteilung
STR_NEWS_CUSTOM_ITEM :{BIG_FONT}{BLACK}{STRING}
@ -885,7 +885,7 @@ STR_NEWS_VEHICLE_AUTORENEW_FAILED :{WHITE}Automati
STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}Neue{G r "" s ""} {STRING} jetzt erhältlich!
STR_NEWS_NEW_VEHICLE_TYPE :{BIG_FONT}{BLACK}{ENGINE}
STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Neue{G r "" s ""} {STRING} jetzt erhältlich! - {ENGINE}
STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Neue{G r "" s ""} {STRING} jetzt erhältlich! {ENGINE}
STR_NEWS_SHOW_VEHICLE_GROUP_TOOLTIP :{BLACK}Das Gruppenfenster mit der bereits ausgewählten Fahrzeuggruppe öffnen
@ -961,8 +961,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Hongkong-Dollar
STR_GAME_OPTIONS_CURRENCY_INR :Indische Rupie (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Fahrzeuge
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Wähle, auf welcher Straßenseite der Verkehr fahren soll
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Linksverkehr
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Rechtsverkehr
@ -1017,6 +1015,7 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :Andere
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Größe der Bedienelemente
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Wähle die Größe der Bedienelemente
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_AUTO :(automatisch erkennen)
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Doppelt
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Vierfach
@ -1024,6 +1023,7 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Vierfach
STR_GAME_OPTIONS_FONT_ZOOM :{BLACK}Schriftgröße
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Die Schriftgröße der Spieloberfläche auswählen
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_AUTO :(automatisch erkennen)
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :Normal
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Zweifach
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Vierfach
@ -2063,7 +2063,7 @@ STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_ZONES_WITHIN_TOWN :Innerhalb des E
STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_ZONES_ANYWHERE :Überall
# Config errors
STR_CONFIG_ERROR :{WHITE}Fehler in der Konfigurations-Datei...
STR_CONFIG_ERROR :{WHITE}Fehler in der Konfigurations-Datei ...
STR_CONFIG_ERROR_ARRAY :{WHITE}... Fehler im Array „{STRING}“
STR_CONFIG_ERROR_INVALID_VALUE :{WHITE}... ungültiger Wert „{STRING}“ für „{STRING}“
STR_CONFIG_ERROR_TRAILING_CHARACTERS :{WHITE}... angehängte Zeichen an der Einstellung „{STRING}“
@ -2071,8 +2071,8 @@ STR_CONFIG_ERROR_DUPLICATE_GRFID :{WHITE}... igno
STR_CONFIG_ERROR_INVALID_GRF :{WHITE}... ignoriere ungültiges NewGRF „{STRING}“: {STRING}
STR_CONFIG_ERROR_INVALID_GRF_NOT_FOUND :nicht gefunden
STR_CONFIG_ERROR_INVALID_GRF_UNSAFE :ungeignet für statischen Gebrauch
STR_CONFIG_ERROR_INVALID_GRF_SYSTEM :System - NewGRF
STR_CONFIG_ERROR_INVALID_GRF_INCOMPATIBLE :inkompatibel zu dieser OpenTTD - Version
STR_CONFIG_ERROR_INVALID_GRF_SYSTEM :System-NewGRF
STR_CONFIG_ERROR_INVALID_GRF_INCOMPATIBLE :inkompatibel zu dieser OpenTTD-Version
STR_CONFIG_ERROR_INVALID_GRF_UNKNOWN :unbekannt
STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_LEVEL :{WHITE}... Kompressionsgrad „{STRING}“ ist ungültig
STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... „{STRING}“ nicht als Format für Spielstände verfügbar. Nutze stattdessen „{STRING}“
@ -2158,7 +2158,7 @@ STR_CHEAT_INFLATION_INCOME :{LTBLUE}Ändere
STR_CHEAT_INFLATION_INCOME_QUERY_CAPT :{WHITE}Ändert den Faktor der Inflation des Einkommens
# Livery window
STR_LIVERY_CAPTION :{WHITE}{COMPANY} - Farbschema
STR_LIVERY_CAPTION :{WHITE}{COMPANY} Farbschema
STR_LIVERY_GENERAL_TOOLTIP :{BLACK}Allgemeines Farbschema anzeigen
STR_LIVERY_TRAIN_TOOLTIP :{BLACK}Zugfarbschema anzeigen
@ -2258,7 +2258,7 @@ STR_NETWORK_SERVER_LIST_ENTER_NAME_TOOLTIP :{BLACK}Dieser N
STR_NETWORK_SERVER_LIST_GAME_NAME :{BLACK}Name
STR_NETWORK_SERVER_LIST_GAME_NAME_TOOLTIP :{BLACK}Name des Spiels
STR_NETWORK_SERVER_LIST_GENERAL_ONLINE :{BLACK}{COMMA}/{COMMA} - {COMMA}/{COMMA}
STR_NETWORK_SERVER_LIST_GENERAL_ONLINE :{BLACK}{COMMA}/{COMMA} {COMMA}/{COMMA}
STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION :{BLACK}Teilnehmer
STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION_TOOLTIP :{BLACK}Teilnehmer anwesend/max.{}Firmen anwesend/max.
STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT :{BLACK}{COMMA}x{COMMA}
@ -2275,7 +2275,7 @@ STR_NETWORK_SERVER_LIST_LAST_JOINED_SERVER :{BLACK}Zuletzt
STR_NETWORK_SERVER_LIST_CLICK_TO_SELECT_LAST :{BLACK}Zuletzt besuchten Server auswählen
STR_NETWORK_SERVER_LIST_GAME_INFO :{SILVER}SPIEL-INFO
STR_NETWORK_SERVER_LIST_CLIENTS :{SILVER}Teilnehmer: {WHITE}{COMMA} / {COMMA} - {COMMA} / {COMMA}
STR_NETWORK_SERVER_LIST_CLIENTS :{SILVER}Teilnehmer: {WHITE}{COMMA} / {COMMA} {COMMA} / {COMMA}
STR_NETWORK_SERVER_LIST_LANGUAGE :{SILVER}Sprache: {WHITE}{STRING}
STR_NETWORK_SERVER_LIST_LANDSCAPE :{SILVER}Landschaft: {WHITE}{STRING}
STR_NETWORK_SERVER_LIST_MAP_SIZE :{SILVER}Spielfeldgröße: {WHITE}{COMMA}x{COMMA}
@ -3058,7 +3058,7 @@ STR_ERROR_INVALID_SIGNAL :{WHITE}Ungülti
# Bridge selection window
STR_SELECT_RAIL_BRIDGE_CAPTION :{WHITE}Eisenbahnbrücke auswählen
STR_SELECT_ROAD_BRIDGE_CAPTION :{WHITE}Straßenbrücke wählen
STR_SELECT_BRIDGE_SELECTION_TOOLTIP :{BLACK}Brückenauswahl - Auf die gewünschte Brücke klicken, um sie zu bauen
STR_SELECT_BRIDGE_SELECTION_TOOLTIP :{BLACK}Brückenauswahl Auf die gewünschte Brücke klicken, um sie zu bauen
STR_SELECT_BRIDGE_INFO :{GOLD}{STRING},{} {VELOCITY} {WHITE}{CURRENCY_LONG}
STR_SELECT_BRIDGE_SCENEDIT_INFO :{GOLD}{STRING},{} {VELOCITY}
STR_BRIDGE_NAME_SUSPENSION_STEEL :Stahlhängebrücke
@ -3272,12 +3272,18 @@ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Zufall
# Fund new industry window
STR_FUND_INDUSTRY_CAPTION :{WHITE}Neue Industrie finanzieren
STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Gewünschte Industrie aus der Liste auswählen
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :Viele zufällige Industrien
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :{BLACK}Zufallsindustrien erzeugen
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Das Spielfeld mit zufällig platzierten Industrien füllen
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_CAPTION :{WHITE}Zufallsindustrien erzeugen
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY :{YELLOW}Möchten Sie wirklich viele zufällige Industrien erzeugen?
STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Kosten: {YELLOW}{CURRENCY_LONG}
STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Prospektieren
STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Bauen
STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Finanzieren
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES :{BLACK}Alle Industrien entfernen
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_TOOLTIP :{BLACK}Alle Industrien, die sich momentan auf der Karte befinden, entfernen
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION :{WHITE}Alle Industrien entfernen
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_QUERY :{YELLOW}Sind Sie sich sicher, dass Sie alle Industrien entfernen wollen?
# Industry cargoes window
STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Produktionskette für {STRING}
@ -3435,7 +3441,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Firmeneigenes G
STR_ABOUT_OPENTTD :{WHITE}OpenTTD
STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Ursprüngliches Copyright {COPYRIGHT} 1995 Chris Sawyer, alle Rechte vorbehalten
STR_ABOUT_VERSION :{BLACK}OpenTTD-Version {REV}
STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-{STRING} OpenTTD-Team
STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002{STRING} OpenTTD-Team
# Framerate display window
STR_FRAMERATE_CAPTION :{WHITE}Bildwiederholrate
@ -3522,6 +3528,8 @@ STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF:
STR_SAVELOAD_FILTER_TITLE :{BLACK}Suchtext:
STR_SAVELOAD_OVERWRITE_TITLE :{WHITE}Datei überschreiben
STR_SAVELOAD_OVERWRITE_WARNING :{YELLOW}Existierende Datei wirklich überschreiben?
STR_SAVELOAD_DIRECTORY :{STRING} (Verzeichnis)
STR_SAVELOAD_PARENT_DIRECTORY :{STRING} (Überverzeichnis)
STR_SAVELOAD_UNKNOWN_ID :{YELLOW}Diese Datei ist möglicherweise von einem anderen Spiel.
STR_SAVELOAD_DIFFERENT_ID :{YELLOW}Diese Datei ist von einem anderen Spiel.
STR_SAVELOAD_OVERWRITE_TITLE_DIFFERENT_ID :{WHITE}Datei überschreiben (Anderes Spiel)
@ -3544,7 +3552,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Schneegr
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Schneegrenze um eine Stufe erhöhen
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Schneegrenze um eine Stufe senken
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landgenerator:
STR_MAPGEN_TREE_PLACER :{BLACK}Baumalgorithmus:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Landschaftstyp:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Gewässermenge:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Flüsse:
@ -3604,9 +3611,9 @@ STR_GENERATION_PREPARING_GAME :{BLACK}Spiel wi
# NewGRF settings
STR_NEWGRF_SETTINGS_CAPTION :{WHITE}NewGRF-Einstellungen
STR_NEWGRF_SETTINGS_INFO_TITLE :{WHITE}Detailierte NewGRF - Informationen
STR_NEWGRF_SETTINGS_ACTIVE_LIST :{WHITE}Aktivierte NewGRF - Dateien
STR_NEWGRF_SETTINGS_INACTIVE_LIST :{WHITE}Inaktive NewGRF - Dateien
STR_NEWGRF_SETTINGS_INFO_TITLE :{WHITE}Detailierte NewGRF-Informationen
STR_NEWGRF_SETTINGS_ACTIVE_LIST :{WHITE}Aktivierte NewGRF-Dateien
STR_NEWGRF_SETTINGS_INACTIVE_LIST :{WHITE}Inaktive NewGRF-Dateien
STR_NEWGRF_SETTINGS_SELECT_PRESET :{ORANGE}Wähle Voreinstellung
STR_NEWGRF_FILTER_TITLE :{ORANGE}Filter:
STR_NEWGRF_SETTINGS_PRESET_LIST_TOOLTIP :{BLACK}Ausgewählte Voreinstellung laden
@ -3676,7 +3683,7 @@ STR_NEWGRF_PARAMETERS_SETTING :{STRING}: {ORAN
STR_NEWGRF_PARAMETERS_NUM_PARAM :{LTBLUE}Anzahl Parameter: {ORANGE}{NUM}
# NewGRF inspect window
STR_NEWGRF_INSPECT_CAPTION :{WHITE}Inspiziere - {STRING}
STR_NEWGRF_INSPECT_CAPTION :{WHITE}Inspiziere {STRING}
STR_NEWGRF_INSPECT_PARENT_BUTTON :{BLACK}übergeordnetes Objekt
STR_NEWGRF_INSPECT_PARENT_TOOLTIP :{BLACK}Inspiziere das Objekt im übergeordneten Geltungsbereich
STR_NEWGRF_INSPECT_REFRESH :{BLACK}A
@ -3725,12 +3732,10 @@ STR_NEWGRF_ERROR_AFTER_TRANSLATED_FILE :der NewGRF-Date
STR_NEWGRF_ERROR_TOO_MANY_NEWGRFS_LOADED :Zu viele NewGRFs geladen
STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :Das Laden von {1:STRING} als statisches NewGRF mit {STRING} könnte Synchronisationsfehler hervorrufen
STR_NEWGRF_ERROR_UNEXPECTED_SPRITE :Unerwartetes Sprite (Sprite {3:NUM})
STR_NEWGRF_ERROR_UNKNOWN_PROPERTY :Unbekannte Action 0 - Eigenschaft {4:HEX} (Sprite {3:NUM})
STR_NEWGRF_ERROR_UNKNOWN_PROPERTY :Unbekannte Action-0-Eigenschaft {4:HEX} (Sprite {3:NUM})
STR_NEWGRF_ERROR_INVALID_ID :Zugriff auf eine ungültige ID (Sprite {3:NUM})
STR_NEWGRF_ERROR_CORRUPT_SPRITE :{YELLOW}{STRING} enthält fehlerhafte Grafiken. Diese werden als Fragezeichen (?) dargestellt
STR_NEWGRF_ERROR_MULTIPLE_ACTION_8 :Enthält mehrere Action 8 - Einträge (Sprite {3:NUM})
STR_NEWGRF_ERROR_MULTIPLE_ACTION_8 :Enthält mehrere Action-8-Einträge (Sprite {3:NUM})
STR_NEWGRF_ERROR_READ_BOUNDS :Lesezugriff über das Ende des Pseudosprites hinaus (Sprite {3:NUM})
STR_NEWGRF_ERROR_GRM_FAILED :Die angeforderte GRF-Ressource ist nicht verfügbar (Sprite {3:NUM})
STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{1:STRING} wurde von {STRING} deaktiviert
@ -3785,7 +3790,7 @@ STR_INVALID_VEHICLE :<ungültiges Fa
# NewGRF scanning window
STR_NEWGRF_SCAN_CAPTION :{WHITE}NewGRFs werden eingelesen
STR_NEWGRF_SCAN_MESSAGE :{BLACK}NewGRFs werden eingelesen. Je nach deren Anzahl könnte dies eine Weile dauern...
STR_NEWGRF_SCAN_MESSAGE :{BLACK}NewGRFs werden eingelesen. Je nach deren Anzahl könnte dies eine Weile dauern ...
STR_NEWGRF_SCAN_STATUS :{BLACK}{NUM} NewGRF{P "" s} von geschätzten {NUM} NewGRF{P "" s} eingelesen
STR_NEWGRF_SCAN_ARCHIVES :Archivdateien werden eingelesen
@ -3807,7 +3812,7 @@ STR_TOWN_DIRECTORY_CAPTION :{WHITE}Städte
STR_TOWN_DIRECTORY_NONE :{ORANGE}- Keine -
STR_TOWN_DIRECTORY_TOWN :{ORANGE}{TOWN}{BLACK} ({COMMA})
STR_TOWN_DIRECTORY_CITY :{ORANGE}{TOWN}{YELLOW} (Großstadt){BLACK} ({COMMA})
STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Städtenamen - Klick auf den Namen zentriert Hauptansicht auf die Stadt. Strg+Klick öffnet neue Zusatzansicht zentriert auf die Stadt
STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Städtenamen Klick auf den Namen zentriert Hauptansicht auf die Stadt. Strg+Klick öffnet neue Zusatzansicht zentriert auf die Stadt
STR_TOWN_POPULATION :{BLACK}Weltbevölkerung: {COMMA}
# Town view window
@ -3844,7 +3849,7 @@ STR_LOCAL_AUTHORITY_ZONE_TOOLTIP :{BLACK}Zeige Zo
STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}Bewertung der Transportfirma:
STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING}
STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}Verfügbare Maßnahmen:
STR_LOCAL_AUTHORITY_ACTIONS_TOOLTIP :{BLACK}Liste der verfügbaren Maßnahmen in dieser Stadt - Klick zeigt Einzelheiten an
STR_LOCAL_AUTHORITY_ACTIONS_TOOLTIP :{BLACK}Liste der verfügbaren Maßnahmen in dieser Stadt Klick zeigt Einzelheiten an
STR_LOCAL_AUTHORITY_DO_IT_BUTTON :{BLACK}Ausführen
STR_LOCAL_AUTHORITY_DO_IT_TOOLTIP :{BLACK}Ausgewählte Maßnahme durchführen
@ -3929,9 +3934,9 @@ STR_STORY_BOOK_NEXT_PAGE_TOOLTIP :{BLACK}Die näc
STR_STORY_BOOK_INVALID_GOAL_REF :{RED}Ungültiger Verweis auf ein Spielziel
# Station list window
STR_STATION_LIST_TOOLTIP :{BLACK}Stationsnamen - Klick auf den Namen zentriert Hauptansicht auf die Station. Strg+Klick öffnet neue Zusatzansicht zentriert auf die Station
STR_STATION_LIST_TOOLTIP :{BLACK}Stationsnamen Klick auf den Namen zentriert Hauptansicht auf die Station. Strg+Klick öffnet neue Zusatzansicht zentriert auf die Station
STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Strg gedrückt halten, um mehrere Einträge auszuwählen
STR_STATION_LIST_CAPTION :{WHITE}{COMPANY} - {COMMA} Haltestelle{P "" n}
STR_STATION_LIST_CAPTION :{WHITE}{COMPANY} {COMMA} Haltestelle{P "" n}
STR_STATION_LIST_STATION :{YELLOW}{STATION} {STATION_FEATURES}
STR_STATION_LIST_WAYPOINT :{YELLOW}{WAYPOINT}
STR_STATION_LIST_NONE :{YELLOW}- Keine -
@ -4113,7 +4118,7 @@ STR_BUOY_VIEW_CHANGE_BUOY_NAME :{BLACK}Namen de
STR_EDIT_WAYPOINT_NAME :{WHITE}Namen des Wegpunkts ändern
# Finances window
STR_FINANCES_CAPTION :{WHITE}{COMPANY} Finanzen {BLACK}{COMPANY_NUM}
STR_FINANCES_CAPTION :{WHITE}{COMPANY} - Finanzen {BLACK}{COMPANY_NUM}
STR_FINANCES_EXPENDITURE_INCOME_TITLE :{WHITE}Ausgaben / Einnahmen
STR_FINANCES_YEAR :{WHITE}{NUM}
STR_FINANCES_SECTION_CONSTRUCTION :{GOLD}Baukosten
@ -4219,7 +4224,7 @@ STR_INDUSTRY_DIRECTORY_ITEM_PROD1 :{ORANGE}{INDUST
STR_INDUSTRY_DIRECTORY_ITEM_PROD2 :{ORANGE}{INDUSTRY} {STRING}, {STRING}
STR_INDUSTRY_DIRECTORY_ITEM_PROD3 :{ORANGE}{INDUSTRY} {STRING}, {STRING}, {STRING}
STR_INDUSTRY_DIRECTORY_ITEM_PRODMORE :{ORANGE}{INDUSTRY} {STRING}, {STRING}, {STRING} und {NUM} weitere ...
STR_INDUSTRY_DIRECTORY_LIST_CAPTION :{BLACK}Industrienamen - Klick auf den Namen zentriert Hauptansicht auf die Industrie. Strg+Klick öffnet neue Zusatzansicht zentriert auf die Industrie
STR_INDUSTRY_DIRECTORY_LIST_CAPTION :{BLACK}Industrienamen Klick auf den Namen zentriert Hauptansicht auf die Industrie. Strg+Klick öffnet neue Zusatzansicht zentriert auf die Industrie
STR_INDUSTRY_DIRECTORY_ACCEPTED_CARGO_FILTER :{BLACK}Angenommene Fracht: {SILVER}{STRING}
STR_INDUSTRY_DIRECTORY_PRODUCED_CARGO_FILTER :{BLACK}Produzierte Fracht: {SILVER}{STRING}
STR_INDUSTRY_DIRECTORY_FILTER_ALL_TYPES :Alle Frachtarten
@ -4251,15 +4256,15 @@ STR_CONFIG_GAME_PRODUCTION :{WHITE}Produkti
STR_CONFIG_GAME_PRODUCTION_LEVEL :{WHITE}Produktionsrate ändern (prozentual, bis zu 800%)
# Vehicle lists
STR_VEHICLE_LIST_TRAIN_CAPTION :{WHITE}{STRING} - {COMMA} Z{P ug üge}
STR_VEHICLE_LIST_ROAD_VEHICLE_CAPTION :{WHITE}{STRING} - {COMMA} Straßenfahrzeug{P "" e}
STR_VEHICLE_LIST_SHIP_CAPTION :{WHITE}{STRING} - {COMMA} Schiff{P "" e}
STR_VEHICLE_LIST_AIRCRAFT_CAPTION :{WHITE}{STRING} - {COMMA} Flugzeug{P "" e}
STR_VEHICLE_LIST_TRAIN_CAPTION :{WHITE}{STRING} {COMMA} Z{P ug üge}
STR_VEHICLE_LIST_ROAD_VEHICLE_CAPTION :{WHITE}{STRING} {COMMA} Straßenfahrzeug{P "" e}
STR_VEHICLE_LIST_SHIP_CAPTION :{WHITE}{STRING} {COMMA} Schiff{P "" e}
STR_VEHICLE_LIST_AIRCRAFT_CAPTION :{WHITE}{STRING} {COMMA} Flugzeug{P "" e}
STR_VEHICLE_LIST_TRAIN_LIST_TOOLTIP :{BLACK}Züge - für Einzelheiten auf den Zug klicken
STR_VEHICLE_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Straßenfahrzeuge - für Einzelheiten auf das Fahrzeug klicken
STR_VEHICLE_LIST_SHIP_TOOLTIP :{BLACK}Schiffe - für Einzelheiten auf das Schiff klicken
STR_VEHICLE_LIST_AIRCRAFT_TOOLTIP :{BLACK}Flugzeuge - für Einzelheiten auf das Flugzeug klicken
STR_VEHICLE_LIST_TRAIN_LIST_TOOLTIP :{BLACK}Züge für Einzelheiten auf den Zug klicken
STR_VEHICLE_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Straßenfahrzeuge für Einzelheiten auf das Fahrzeug klicken
STR_VEHICLE_LIST_SHIP_TOOLTIP :{BLACK}Schiffe für Einzelheiten auf das Schiff klicken
STR_VEHICLE_LIST_AIRCRAFT_TOOLTIP :{BLACK}Flugzeuge für Einzelheiten auf das Flugzeug klicken
STR_VEHICLE_LIST_PROFIT_THIS_YEAR_LAST_YEAR :{TINY_FONT}{BLACK}Gewinn im laufenden Jahr: {CURRENCY_LONG} (vergangenes Jahr: {CURRENCY_LONG})
STR_VEHICLE_LIST_PROFIT_THIS_YEAR_LAST_YEAR_LIFETIME :{STRING} (seit Inbetriebnahme: {CURRENCY_LONG})
@ -4329,7 +4334,7 @@ STR_GROUP_DEFAULT_AIRCRAFTS :Ungruppierte Fl
STR_GROUP_COUNT_WITH_SUBGROUP :{TINY_FONT}{COMMA} (+{COMMA})
STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Gruppen - Klick auf eine Gruppe zeigt Liste aller Fahrzeuge der Gruppe an
STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Gruppen Klick auf eine Gruppe zeigt Liste aller Fahrzeuge der Gruppe an
STR_GROUP_CREATE_TOOLTIP :{BLACK}Neue Gruppe erstellen
STR_GROUP_DELETE_TOOLTIP :{BLACK}Ausgewählte Gruppe löschen
STR_GROUP_RENAME_TOOLTIP :{BLACK}Ausgewählte Gruppe umbenennen
@ -4346,9 +4351,9 @@ STR_GROUP_REMOVE_ALL_VEHICLES :Liste leeren
STR_GROUP_RENAME_CAPTION :{BLACK}Gruppe umbenennen
STR_GROUP_PROFIT_THIS_YEAR :Gewinn in diesem Jahr:
STR_GROUP_PROFIT_LAST_YEAR :Gewinn im letzten Jahr:
STR_GROUP_OCCUPANCY :Aktuelle Auslastung:
STR_GROUP_PROFIT_THIS_YEAR :Gewinn dieses Jahr:
STR_GROUP_PROFIT_LAST_YEAR :Gewinn letztes Jahr:
STR_GROUP_OCCUPANCY :Aktuelle Nutzung:
STR_GROUP_OCCUPANCY_VALUE :{NUM}%
# Build vehicle window
@ -4552,7 +4557,7 @@ STR_ENGINE_PREVIEW_COST_MAX_SPEED_TYPE_RANGE_CAP_CAP_RUNCOST :{BLACK}Kosten:
STR_ENGINE_PREVIEW_COST_MAX_SPEED_TYPE_RANGE_CAP_RUNCOST :{BLACK}Kosten: {CURRENCY_LONG} Max. Geschw.: {VELOCITY}{}Flugzeugtyp: {STRING} Reichweite: {COMMA} tiles{}Kapazität: {CARGO_LONG}{}Laufende Kosten: {CURRENCY_LONG}/Jahr
# Autoreplace window
STR_REPLACE_VEHICLES_WHITE :{WHITE}{STRING} ersetzen - {STRING}
STR_REPLACE_VEHICLES_WHITE :{WHITE}{STRING} ersetzen {STRING}
STR_REPLACE_VEHICLE_TRAIN :Zug
STR_REPLACE_VEHICLE_ROAD_VEHICLE :Straßenfahrzeug
STR_REPLACE_VEHICLE_SHIP :Schiff
@ -4637,10 +4642,10 @@ STR_VEHICLE_VIEW_ROAD_VEHICLE_SHOW_DETAILS_TOOLTIP :{BLACK}Einzelhe
STR_VEHICLE_VIEW_SHIP_SHOW_DETAILS_TOOLTIP :{BLACK}Zeige Einzelheiten des Schiffes
STR_VEHICLE_VIEW_AIRCRAFT_SHOW_DETAILS_TOOLTIP :{BLACK}Zeige Einzelheiten des Flugzeuges
STR_VEHICLE_VIEW_TRAIN_STATUS_START_STOP_TOOLTIP :{BLACK}Momentane Zugaktion - Klicken zum Starten/Anhalten des Zuges
STR_VEHICLE_VIEW_ROAD_VEHICLE_STATUS_START_STOP_TOOLTIP :{BLACK}Momentane Fahrzeugaktion - Klicken zum Starten/Anhalten des Fahrzeugs
STR_VEHICLE_VIEW_SHIP_STATE_STATUS_STOP_TOOLTIP :{BLACK}Momentane Schiffsaktion - Klicken zum Starten/Anhalten des Schiffs
STR_VEHICLE_VIEW_AIRCRAFT_STATUS_START_STOP_TOOLTIP :{BLACK}Momentane Flugzeugaktion - Klicken zum Starten/Anhalten des Flugzeugs
STR_VEHICLE_VIEW_TRAIN_STATUS_START_STOP_TOOLTIP :{BLACK}Momentane Zugaktion Klicken zum Starten/Anhalten des Zuges
STR_VEHICLE_VIEW_ROAD_VEHICLE_STATUS_START_STOP_TOOLTIP :{BLACK}Momentane Fahrzeugaktion Klicken zum Starten/Anhalten des Fahrzeugs
STR_VEHICLE_VIEW_SHIP_STATE_STATUS_STOP_TOOLTIP :{BLACK}Momentane Schiffsaktion Klicken zum Starten/Anhalten des Schiffs
STR_VEHICLE_VIEW_AIRCRAFT_STATUS_START_STOP_TOOLTIP :{BLACK}Momentane Flugzeugaktion Klicken zum Starten/Anhalten des Flugzeugs
STR_VEHICLE_VIEW_ORDER_LOCATION_TOOLTIP :{BLACK}Hauptansicht auf Auftragsziel zentrieren. Strg+Klick öffnet ein neues Ansichtsfenster auf dem Standort des Auftragsziels
@ -4801,7 +4806,7 @@ STR_ORDERS_CAPTION :{WHITE}{VEHICLE
STR_ORDERS_TIMETABLE_VIEW :{BLACK}Fahrplan
STR_ORDERS_TIMETABLE_VIEW_TOOLTIP :{BLACK}Zur Fahrplanansicht wechseln
STR_ORDERS_LIST_TOOLTIP :{BLACK}Auftragsliste - Auftrag anklicken, um ihn zu markieren. Strg+Klick springt zum Auftragsziel
STR_ORDERS_LIST_TOOLTIP :{BLACK}Auftragsliste Auftrag anklicken, um ihn zu markieren. Strg+Klick springt zum Auftragsziel
STR_ORDER_INDEX :{COMMA}:{NBSP}
STR_ORDER_TEXT :{STRING} {STRING} {STRING}
@ -5046,7 +5051,7 @@ STR_TIMETABLE_TITLE :{WHITE}{VEHICLE
STR_TIMETABLE_ORDER_VIEW :{BLACK}Aufträge
STR_TIMETABLE_ORDER_VIEW_TOOLTIP :{BLACK}Zur Auftragsanzeige wechseln
STR_TIMETABLE_TOOLTIP :{BLACK}Fahrplan - Einträge anklicken, um sie zu markieren
STR_TIMETABLE_TOOLTIP :{BLACK}Fahrplan Einträge anklicken, um sie zu markieren
STR_TIMETABLE_NO_TRAVEL :Nicht unterwegs
STR_TIMETABLE_NOT_TIMETABLEABLE :Unterwegs (automatisch; Fahrplan abhängig vom nächsten manuellen Auftrag)
@ -5245,7 +5250,7 @@ STR_AI_SETTINGS_START_DELAY :Wartezeit in Ta
# Textfile window
STR_TEXTFILE_README_CAPTION :{WHITE}{STRING}-Liesmich von {STRING}
STR_TEXTFILE_CHANGELOG_CAPTION :{WHITE}{STRING} Änderungen von {STRING}
STR_TEXTFILE_CHANGELOG_CAPTION :{WHITE}{STRING}-Änderungen von {STRING}
STR_TEXTFILE_LICENCE_CAPTION :{WHITE}{STRING}-Lizenz von {STRING}
STR_TEXTFILE_WRAP_TEXT :{WHITE}Text umbrechen
STR_TEXTFILE_WRAP_TEXT_TOOLTIP :{BLACK}Text des Fensters so umbrechen, dass es ohne Scrollen hineinpasst
@ -5309,7 +5314,7 @@ STR_ERROR_GAME_SAVE_FAILED :{WHITE}Spielspe
STR_ERROR_UNABLE_TO_DELETE_FILE :{WHITE}Datei kann nicht gelöscht werden
STR_ERROR_GAME_LOAD_FAILED :{WHITE}Laden des Spieles fehlgeschlagen{}{STRING}
STR_GAME_SAVELOAD_ERROR_BROKEN_INTERNAL_ERROR :Interner Fehler: {STRING}
STR_GAME_SAVELOAD_ERROR_BROKEN_SAVEGAME :Spielstandsdatei defekt - {STRING}
STR_GAME_SAVELOAD_ERROR_BROKEN_SAVEGAME :Spielstandsdatei defekt {STRING}
STR_GAME_SAVELOAD_ERROR_TOO_NEW_SAVEGAME :Spielstand wurde mit einer neueren Spielversion erstellt
STR_GAME_SAVELOAD_ERROR_FILE_NOT_READABLE :Datei kann nicht gelesen werden
STR_GAME_SAVELOAD_ERROR_FILE_NOT_WRITEABLE :Datei kann nicht geschrieben werden
@ -5359,7 +5364,7 @@ STR_ERROR_MESSAGE_CAPTION_OTHER_COMPANY :{YELLOW}Nachric
# Generic construction errors
STR_ERROR_OFF_EDGE_OF_MAP :{WHITE}Zu weit vom Spielfeldrand entfernt
STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP :{WHITE}Zu nahe am Spielfeldrand
STR_ERROR_NOT_ENOUGH_CASH_REQUIRES_CURRENCY :{WHITE}Nicht genug Geld - Es werden {CURRENCY_LONG} benötigt
STR_ERROR_NOT_ENOUGH_CASH_REQUIRES_CURRENCY :{WHITE}Nicht genug Geld Es werden {CURRENCY_LONG} benötigt
STR_ERROR_FLAT_LAND_REQUIRED :{WHITE}Ebenes Land erforderlich
STR_ERROR_LAND_SLOPED_IN_WRONG_DIRECTION :{WHITE}Das Land neigt sich in die falsche Richtung
STR_ERROR_CAN_T_DO_THIS :{WHITE}Befehl nicht ausführbar ...
@ -5759,9 +5764,9 @@ STR_BASEGRAPHICS_WIN_DESCRIPTION :Originale „Tr
STR_BASESOUNDS_DOS_DESCRIPTION :Originale „Transport Tycoon Deluxe“-DOS-Basissounds.
STR_BASESOUNDS_WIN_DESCRIPTION :Originale „Transport Tycoon Deluxe“-Windows-Basissounds.
STR_BASESOUNDS_NONE_DESCRIPTION :Ein Soundpaket ohne Sounds.
STR_BASEMUSIC_WIN_DESCRIPTION :Originales „Transport Tycoon Deluxe“-Windows-Musikset.
STR_BASEMUSIC_DOS_DESCRIPTION :Originales „Transport Tycoon Deluxe“-DOS-Musikset.
STR_BASEMUSIC_TTO_DESCRIPTION :Originales „Transport Tycoon (Original/World Editor)“-DOS-Musikset.
STR_BASEMUSIC_WIN_DESCRIPTION :Originale Musik von Transport Tycoon Deluxe in der Windows-Edition.
STR_BASEMUSIC_DOS_DESCRIPTION :Originale Musik von Transport Tycoon Deluxe in der DOS-Edition.
STR_BASEMUSIC_TTO_DESCRIPTION :Originale Musik von Transport Tycoon (Original / World Editor) in der DOS-Edition.
STR_BASEMUSIC_NONE_DESCRIPTION :Ein Musikpaket ohne Musik.
STR_TRADITIONAL_TRAIN_NAME :Zug {COMMA}
@ -6167,8 +6172,8 @@ STR_FORMAT_WAYPOINT_NAME_SERIAL :Wegpunkt {TOWN}
STR_FORMAT_DEPOT_NAME_TRAIN :{TOWN} Zugdepot
STR_FORMAT_DEPOT_NAME_TRAIN_SERIAL :{TOWN} Zugdepot #{COMMA}
STR_FORMAT_DEPOT_NAME_ROAD_VEHICLE :{TOWN} Straßenfahrzeug - Depot
STR_FORMAT_DEPOT_NAME_ROAD_VEHICLE_SERIAL :{TOWN} Straßenfahrzeug - Depot #{COMMA}
STR_FORMAT_DEPOT_NAME_ROAD_VEHICLE :{TOWN} Straßenfahrzeug Depot
STR_FORMAT_DEPOT_NAME_ROAD_VEHICLE_SERIAL :{TOWN} Straßenfahrzeug Depot #{COMMA}
STR_FORMAT_DEPOT_NAME_SHIP :{TOWN} Werft
STR_FORMAT_DEPOT_NAME_SHIP_SERIAL :{TOWN} Werft #{COMMA}
STR_FORMAT_DEPOT_NAME_AIRCRAFT :{STATION} Hangar

@ -1036,8 +1036,6 @@ STR_GAME_OPTIONS_CURRENCY_RUB :Νεο Ρώσι
STR_GAME_OPTIONS_CURRENCY_MXN :Πεσος Μεξικου (MXN)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Οχήματα δρόμου
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Επιλογή πλευράς δρόμου όπου τα οχήματα οδηγούν
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Οδηγούν από αριστερά
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Οδηγούν από δεξιά
@ -2894,7 +2892,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Ύψος
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Μετακίνηση του ύψους της γραμμής χιονιού ένα πάνω
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Μετακίνηση του ύψους της γραμμής χιονιού ένα κάτω
STR_MAPGEN_LAND_GENERATOR :{BLACK}Δημιουργός εδάφους:
STR_MAPGEN_TREE_PLACER :{BLACK}Αλγόριθμος δέντρων:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Τύπος εδάφους:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Επίπεδο θάλασσας:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Ποτάμια:

@ -937,8 +937,6 @@ STR_GAME_OPTIONS_CURRENCY_IRR :ריאל איר
STR_GAME_OPTIONS_CURRENCY_RUB :רובל רוסי (RUB)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}רכבי כביש
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}בחר את צד הכביש בו יסעו כלי הרכב
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :סע בצד שמאל
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :סע בצד ימין
@ -2755,7 +2753,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}גובה
STR_MAPGEN_SNOW_LINE_UP :{BLACK}הגבה את קו השלג
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}הנמך את קו השלג
STR_MAPGEN_LAND_GENERATOR :{BLACK} :מחולל פני שטח
STR_MAPGEN_TREE_PLACER :{BLACK}אלגוריתם העצים:
STR_MAPGEN_TERRAIN_TYPE :{BLACK} :סוג הקרקע
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK} :כמות ימים/אגמים
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}נהרות:

@ -1003,8 +1003,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Hongkongi Doll
STR_GAME_OPTIONS_CURRENCY_INR :Indiai Rúpia (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Közúti járművek
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}A közúti közlekedés oldalának kiválasztása
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Balra hajtás
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Jobbra hajtás
@ -2888,7 +2886,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Hóhatá
STR_MAPGEN_SNOW_LINE_UP :{BLACK}A hóhatár megnövelése eggyel
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}A hóhatár csökkentése eggyel
STR_MAPGEN_LAND_GENERATOR :{BLACK}Térkép generátor:
STR_MAPGEN_TREE_PLACER :{BLACK}Fa algoritmus:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tereptípus:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Tengerszint:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Folyók:

@ -889,8 +889,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari (Gel)
STR_GAME_OPTIONS_CURRENCY_IRR :Íranskt ríal (IRR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Aksturstefna
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Aksturstefna bifreiða
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vinstristefna
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Hægristefna
@ -2545,7 +2543,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Hæð sn
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Hækka snjólínu upp um eitt þrep
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Lækka snjólínu niður um eitt þrep
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landmyndun:
STR_MAPGEN_TREE_PLACER :{BLACK}Planta trjám:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Gerð lands:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Magn sjávar:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Ár:

@ -949,8 +949,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Dollar Hong Kon
STR_GAME_OPTIONS_CURRENCY_INR :India Rupee (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Kendaraan jalan raya
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Pilih lajur yang dilalui bus/truk
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Berkendara di lajur kiri
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Berkendara di lajur kanan
@ -1005,6 +1003,7 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :lainnya
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Ukuran antarmuka
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Pilih ukuran elemen antarmuka yang akan digunakan
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_AUTO :(deteksi-otomatis)
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Kali dua
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Kali empat
@ -1012,6 +1011,7 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Kali empat
STR_GAME_OPTIONS_FONT_ZOOM :{BLACK}Ukuran font
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Pilih ukuran font antarmuka yang akan digunakan
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_AUTO :(deteksi-otomatis)
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :Normal
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Kali dua
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :4 kali
@ -2606,12 +2606,18 @@ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Acak
# Fund new industry window
STR_FUND_INDUSTRY_CAPTION :{WHITE}Danai industri baru
STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Pilih jenis industri yang di inginkan dari daftar
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :Bangun industri secara acak
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :{BLACK}Bangun industri secara acak
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Dukung Peta dengan penempatan industri secara otomatis
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_CAPTION :{WHITE}Bangun industri secara acak
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY :{YELLOW}Yakin ingin membuat banyak industri acak?
STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Biaya: {YELLOW}{CURRENCY_LONG}
STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Prospek
STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Bangun
STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Danai
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES :{BLACK}Hapus semua industri
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_TOOLTIP :{BLACK}Hapus semua industri yang ada saat ini di peta
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION :{WHITE}Hapus semua industri
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_QUERY :{YELLOW}Yakin ingin menghapus semua industri?
# Industry cargoes window
STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Hubungan industri untuk industri {STRING}
@ -2842,6 +2848,8 @@ STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF:
STR_SAVELOAD_FILTER_TITLE :{BLACK}Filter string:
STR_SAVELOAD_OVERWRITE_TITLE :{WHITE}Timpa Berkas
STR_SAVELOAD_OVERWRITE_WARNING :{YELLOW}Yakin ingin menimpa berkas yang ada?
STR_SAVELOAD_DIRECTORY :{STRING} (Direktori)
STR_SAVELOAD_PARENT_DIRECTORY :{STRING} (Direktori induk)
STR_SAVELOAD_OSKTITLE :{BLACK}Masukkan nama dari permainan tersimpan
@ -2860,7 +2868,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Tinggi g
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Naikkan ketinggian garis salju satu angka
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Turunkan ketinggian garis salju satu angka
STR_MAPGEN_LAND_GENERATOR :{BLACK}Algoritma pulau:
STR_MAPGEN_TREE_PLACER :{BLACK}Algoritma pohon:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Jenis dataran:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Area perairan:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Sungai:

@ -918,8 +918,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari na Seoirsi
STR_GAME_OPTIONS_CURRENCY_IRR :Rial na hIaráine (IRR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Feithiclí Bóithre
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Roghnaigh an taobh den bhóthair ar a mbeidh feithiclí ag tiomáint
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Tiomáin ar chlé
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Tiomáin ar dheis
@ -2698,7 +2696,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Airde na
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Bog airde na líne sneachta suas ceann amháin
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Bog airde na líne sneachta síos ceann amháin
STR_MAPGEN_LAND_GENERATOR :{BLACK}Talamh a chruthú:
STR_MAPGEN_TREE_PLACER :{BLACK}Algartam na gcrann:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Cineál tír-raoin:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Leibhéal na farraige:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Aibhneacha:

@ -941,8 +941,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Dollaro di Hong
STR_GAME_OPTIONS_CURRENCY_INR :Rupia indiana (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Automezzi
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Seleziona il lato della strada sul quale devono guidare i veicoli
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Guida a sinistra
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Guida a destra
@ -2851,7 +2849,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Altezza
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Sposta in su di uno l'altezza delle nevi perenni
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Sposta in giù di uno l'altezza delle nevi perenni
STR_MAPGEN_LAND_GENERATOR :{BLACK}Generatore:
STR_MAPGEN_TREE_PLACER :{BLACK}Algoritmo alberi:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tipo di terreno:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Livello del mare:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Fiumi:

@ -921,8 +921,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :グルジア
STR_GAME_OPTIONS_CURRENCY_IRR :イラン リアル(IRR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}自動車
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}車両の通行方向(右側/左側)を選択します
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :左側通行
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :右側通行
@ -2707,7 +2705,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}雪線
STR_MAPGEN_SNOW_LINE_UP :{BLACK}雪線を上げる
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}雪線を下げる
STR_MAPGEN_LAND_GENERATOR :{BLACK}地形作成:
STR_MAPGEN_TREE_PLACER :{BLACK}植林アルゴリズム:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}地形種類:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}海水位:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}河川:

@ -961,8 +961,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :홍콩 달러 (
STR_GAME_OPTIONS_CURRENCY_INR :인도 루피 (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}차량 통행 방식
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}차량 통행 방법 선택
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :좌측통행
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :우측통행
@ -1017,6 +1015,7 @@ 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_AUTO :(자동 탐지)
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :기본 크기
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :2배 크기
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :4배 크기
@ -1024,6 +1023,7 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :4배 크기
STR_GAME_OPTIONS_FONT_ZOOM :{BLACK}글씨 크기
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_TOOLTIP :{BLACK}인터페이스에서 사용할 글씨 크기를 선택하세요
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_AUTO :(자동 탐지)
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :기본 크기
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :2배 크기
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :4배 크기
@ -3291,12 +3291,18 @@ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}임의
# Fund new industry window
STR_FUND_INDUSTRY_CAPTION :{WHITE}새 산업시설 건설
STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}목록에서 적당한 산업시설을 선택하세요
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :무작위 산업시설 건설
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :{BLACK}무작위 산업시설 건설
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}무작위로 산업시설을 건설합니다
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_CAPTION :{WHITE}무작위 산업시설 건설
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY :{YELLOW}정말 산업시설을 무작위로 건설하시겠습니까?
STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}가격: {YELLOW}{CURRENCY_LONG}
STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}답사
STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}건설
STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}투자
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES :{BLACK}모든 산업시설 제거
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_TOOLTIP :{BLACK}현재 지도 상에 있는 모든 산업시설을 제거합니다
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION :{WHITE}모든 산업시설 제거
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_QUERY :{YELLOW}정말 모든 산업시설을 제거하시겠습니까?
# Industry cargoes window
STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}{STRING}{G 0 "과" "와"} 관련된 산업시설 연계도
@ -3541,6 +3547,8 @@ STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF:
STR_SAVELOAD_FILTER_TITLE :{BLACK}검색할 문자열:
STR_SAVELOAD_OVERWRITE_TITLE :{WHITE}파일 덮어쓰기
STR_SAVELOAD_OVERWRITE_WARNING :{YELLOW}정말로 이미 존재하는 파일에 덮어씌우시겠습니까?
STR_SAVELOAD_DIRECTORY :{STRING} (폴더)
STR_SAVELOAD_PARENT_DIRECTORY :{STRING} (상위 폴더)
STR_SAVELOAD_UNKNOWN_ID :{YELLOW}이 파일은 다른 맵일 수 있습니다.
STR_SAVELOAD_DIFFERENT_ID :{YELLOW}이 파일은 다른 맵입니다.
STR_SAVELOAD_OVERWRITE_TITLE_DIFFERENT_ID :{WHITE}파일 덮어쓰기 (다른 맵)
@ -3563,7 +3571,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}설선
STR_MAPGEN_SNOW_LINE_UP :{BLACK}설선 고도를 1칸 높입니다
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}설선 고도를 1칸 낮춥니다
STR_MAPGEN_LAND_GENERATOR :{BLACK}지형 만들기:
STR_MAPGEN_TREE_PLACER :{BLACK}나무 알고리즘:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}지형 종류:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}해수면:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}강:

@ -1115,8 +1115,6 @@ STR_GAME_OPTIONS_CURRENCY_IRR :Regalis Iranica
STR_GAME_OPTIONS_CURRENCY_RUB :Novus Rubelus Russicus (RUB)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Vehicula Viaria
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Eligere latus viae gubernandi
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Gubernantur sinistro
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Gubernantur dextro
@ -2945,7 +2943,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Altitudo
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Tollere altitudinem lineae nivis
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Inclinere altitudinem lineae nivis
STR_MAPGEN_LAND_GENERATOR :{BLACK}Generatrum terrae:
STR_MAPGEN_TREE_PLACER :{BLACK}Algorithmus arbores ponendi:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Typus terrae:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Magnitudo maris:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Numerus fluviorum:

@ -950,8 +950,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Honkongas dolā
STR_GAME_OPTIONS_CURRENCY_INR :Indijas rūpija (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Autotransporta līdzekļi
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Ceļa braucamās puses izvēle
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Brauc pa kreiso pusi
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Brauc pa labo pusi
@ -2858,7 +2856,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Sniega l
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Paaugstināt sniega līnijas augstumu
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Pazemināt sniega līnijas augstumu
STR_MAPGEN_LAND_GENERATOR :{BLACK}Zemes radītājs:
STR_MAPGEN_TREE_PLACER :{BLACK}Koku algoritms:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Apvidus reljefs:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Jūras līmenis:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Upes:

@ -1128,8 +1128,6 @@ STR_GAME_OPTIONS_CURRENCY_CNY :Kinų renminbi
STR_GAME_OPTIONS_CURRENCY_HKD :Honkongo doleris (HKD)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Automobilių eismas
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Pasirinkite, kuria kelio puse važiuoja automobiliai
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Kaire puse
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Dešine puse
@ -2941,7 +2939,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Sniego l
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Paaukštinti sniego liniją
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Pažeminti sniego liniją
STR_MAPGEN_LAND_GENERATOR :{BLACK}Generavimo algoritmas:
STR_MAPGEN_TREE_PLACER :{BLACK}Medžių algoritmas:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Vietovės tipas:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Jūros lygis:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Upių kiekis:

@ -938,8 +938,6 @@ STR_GAME_OPTIONS_CURRENCY_CNY :Chinesesch Renm
STR_GAME_OPTIONS_CURRENCY_HKD :Hong Kong Dollar (HKD)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Stroossegefierer
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Wéi eng Stroossesäit sollen d'Gefierer fueren
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Lénks fueren
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Riets fueren
@ -2820,7 +2818,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Weis d'S
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Beweg Schnéilinnhéicht erop
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Beweg Schnéilinnhéicht erof
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landgenerator:
STR_MAPGEN_TREE_PLACER :{BLACK}Baam Algorithmus:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrain Typ:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Mieresspigel:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Flëss:

@ -893,8 +893,6 @@ STR_GAME_OPTIONS_CURRENCY_CUSTOM :Sesuaikan...
STR_GAME_OPTIONS_CURRENCY_GEL :Georgian Lari (GEL)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Kenderaan Jalanraya
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Pilih laluan memandu kenderaan sebelah kiri atau kanan
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Memandu di sebelah kiri
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Memandu di sebelah kanan
@ -2447,7 +2445,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Paras ke
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Tinggikan paras garis salji satu petak
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Rendahkan paras garis salji satu petak
STR_MAPGEN_LAND_GENERATOR :{BLACK}Janaan tanah:
STR_MAPGEN_TREE_PLACER :{BLACK}Algoritma pokok:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Jenis rupa bumi:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Paras laut:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Sungai:

@ -951,8 +951,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Hong Kong Dolla
STR_GAME_OPTIONS_CURRENCY_INR :Indisk rupi (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Kjøretøy
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Velg kjøreside for veier
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Venstrekjøring
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Høyrekjøring
@ -2864,7 +2862,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Høyde p
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Flytt høyden på snøgrensen ett hakk opp
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Flytt høyden på snøgrensen ett hakk ned
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landskapsgenerator
STR_MAPGEN_TREE_PLACER :{BLACK}Trealgoritme:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrengtype:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Havnivå:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Elver:

@ -920,8 +920,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgiske Lari
STR_GAME_OPTIONS_CURRENCY_IRR :Iranske Rial (IRR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Veg-køyrety
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Vel køyreretning
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Venstrekøyring
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Høgrekøyring
@ -2622,7 +2620,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Høgd p
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Flytt høgda på snøgrensa eitt hakk opp
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Flytt høgda på snøgrensa eitt hakk ned
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landskapsgenerator:
STR_MAPGEN_TREE_PLACER :{BLACK}Trealgoritme:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrengtype
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Havflate:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Elver:

@ -1329,8 +1329,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Dolar hongkońs
STR_GAME_OPTIONS_CURRENCY_INR :Rupia Indyjska (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Pojazdy drogowe
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Wybierz stronę, po której będą jeździć samochody
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Jazda po lewej
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Jazda po prawej
@ -1385,6 +1383,7 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :inna
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Rozmiar interfejsu
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Wybierz rozmiar elementów interfejsu
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_AUTO :(wykryj automatycznie)
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normalny
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Podwójny
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Poczwórny
@ -1392,6 +1391,7 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Poczwórny
STR_GAME_OPTIONS_FONT_ZOOM :{BLACK}Wielkość czcionki
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Wybierz wielkość czcionki interfejsu
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_AUTO :(wykryj automatycznie)
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :Normalna
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Podwójna
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Poczwórna
@ -2986,12 +2986,18 @@ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Losowo
# Fund new industry window
STR_FUND_INDUSTRY_CAPTION :{WHITE}Ufunduj nowe przedsiębiorstwo
STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Wybierz przedsiębiorstwo z listy
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :Wiele losowych
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :{BLACK}Utwórz losowe przedsiębiorstwa
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Pokryj mapę losowo położonymi przedsiębiorstwami
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_CAPTION :{WHITE}Utwórz losowe przedsiębiorstwa
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY :{YELLOW}Czy na pewno chcesz ufundować wiele losowych przedsiębiorstw?
STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Koszt: {YELLOW}{CURRENCY_LONG}
STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Zleć poszukiwanie
STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Zbuduj
STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Ufunduj
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES :{BLACK}Usuń wszystkie przedsiębiorstwa
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_TOOLTIP :{BLACK}Usuwa wszystkie przedsiębiorstwa, istniejące obecnie na mapie
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION :{WHITE}Usuń wszystkie przedsiębiorstwa
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_QUERY :{YELLOW}Czy na pewno chcesz usunąć wszystkie istniejące przedsiębiorstwa?
# Industry cargoes window
STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Kolejność przetwarzania dla {STRING}
@ -3222,6 +3228,8 @@ STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF:
STR_SAVELOAD_FILTER_TITLE :{BLACK}Fraza filtru:
STR_SAVELOAD_OVERWRITE_TITLE :{WHITE}Zastąp plik
STR_SAVELOAD_OVERWRITE_WARNING :{YELLOW}Czy na pewno chcesz zastąpić istniejący stan gry?
STR_SAVELOAD_DIRECTORY :{STRING} (folder)
STR_SAVELOAD_PARENT_DIRECTORY :{STRING} (folder nadrzędny)
STR_SAVELOAD_OSKTITLE :{BLACK}Wprowadź nazwę pod jaką zapisać grę
@ -3240,7 +3248,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Śnieg o
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Podnieś wysokość śniegu o jeden w górę
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Obniż wysokość śniegu o jeden w dół
STR_MAPGEN_LAND_GENERATOR :{BLACK}Generator terenu:
STR_MAPGEN_TREE_PLACER :{BLACK}Algorytm drzew:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Typ terenu:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Poziom wody:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Liczba rzek:

@ -940,8 +940,6 @@ STR_GAME_OPTIONS_CURRENCY_CNY :Renminbi chinê
STR_GAME_OPTIONS_CURRENCY_HKD :Dólar de Hong Kong (HKD)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Veículos rodoviários
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Seleccione o lado da estrada por onde os veículos circulam
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Circular pela esquerda
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Circular pela direita
@ -2822,7 +2820,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Altura l
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Mover a linha de neve um nível acima
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Mover a linha de neve um nível abaixo
STR_MAPGEN_LAND_GENERATOR :{BLACK}Criação do terreno:
STR_MAPGEN_TREE_PLACER :{BLACK}Alg. de colocação de árvores:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tipo de terreno:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nível do mar:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Rios:

@ -925,8 +925,6 @@ STR_GAME_OPTIONS_CURRENCY_IRR :Rial Iranian (I
STR_GAME_OPTIONS_CURRENCY_RUB :Ruble rusești (RUB)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Autovehiculele circulă...
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Alege partea străzii pe care se circulă
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Pe partea stângă
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Pe partea dreaptă
@ -2706,7 +2704,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Înălţ
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Mută linia zăpezii cu un punct în sus
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Mută linia zăpezii cu un punct în jos
STR_MAPGEN_LAND_GENERATOR :{BLACK}Generator de teren:
STR_MAPGEN_TREE_PLACER :{BLACK}Algoritm arbore:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tip teren:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nivelul mării:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Râuri:

@ -1095,8 +1095,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Гонконг
STR_GAME_OPTIONS_CURRENCY_INR :Индийская рупия (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Движение автомобилей
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Сторона дороги, по которой ездит автотранспорт
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Левостороннее
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Правостороннее
@ -1975,7 +1973,7 @@ STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Найт
STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Изменить настройки ИИ / игрового скрипта
STR_INTRO_TOOLTIP_QUIT :{BLACK}Выйти из OpenTTD
STR_INTRO_BASESET :{BLACK}В выбранном наборе базовой графики отсутствует {NUM} спрайт{P "" а ов}. Пожалуйста, обновите набор графики.
STR_INTRO_BASESET :{BLACK}В выбранном наборе базовой графики отсутству{P 0 е ю ю}т {NUM} спрайт{P "" а ов}. Пожалуйста, обновите набор графики.
STR_INTRO_TRANSLATION :{BLACK}На этот язык не переведен{P 0 а ы о} {NUM} строк{P а и ""}. Вы можете помочь проекту, зарегистрировавшись как переводчик. Инструкции в файле readme.txt.
# Quit window
@ -2761,8 +2759,8 @@ STR_FOUND_TOWN_NEW_TOWN_BUTTON :{BLACK}Новы
STR_FOUND_TOWN_NEW_TOWN_TOOLTIP :{BLACK}Построить новый город. Shift+щелчок - оценка стоимости основания.
STR_FOUND_TOWN_RANDOM_TOWN_BUTTON :{BLACK}Случайный город
STR_FOUND_TOWN_RANDOM_TOWN_TOOLTIP :{BLACK}Создать город в случайном месте
STR_FOUND_TOWN_MANY_RANDOM_TOWNS :{BLACK}Много случайных городов
STR_FOUND_TOWN_RANDOM_TOWNS_TOOLTIP :{BLACK}Случайно разместить на карте города
STR_FOUND_TOWN_MANY_RANDOM_TOWNS :{BLACK}Множество различных городов
STR_FOUND_TOWN_RANDOM_TOWNS_TOOLTIP :{BLACK}Разместить на карте различные города случайным образом
STR_FOUND_TOWN_NAME_TITLE :{YELLOW}Название города:
STR_FOUND_TOWN_NAME_EDITOR_TITLE :{BLACK}Введите название города
@ -2789,13 +2787,19 @@ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Случ
# Fund new industry window
STR_FUND_INDUSTRY_CAPTION :{WHITE}Создать новое предприятие
STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Выберите тип производства из списка
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :Много предприятий
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Случайно разместить предприятия на карте
STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Выберите тип предприятия из списка
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :{BLACK}Множество различных предприятий
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Разместить на карте различные предприятия случайным образом
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_CAPTION :{WHITE}Множество различных предприятий
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY :{YELLOW}Разместить на карте различные предприятия случайным образом?
STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Цена: {YELLOW}{CURRENCY_LONG}
STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Разведать
STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Построить
STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Профинансировать
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES :{BLACK}Убрать все предприятия
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_TOOLTIP :{BLACK}Убрать все предприятия с карты
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION :{WHITE}Убрать все предприятия
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_QUERY :{YELLOW}Убрать все предприятия с карты?
# Industry cargoes window
STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Цепочка грузоперевозок для {STRING.gen}
@ -3028,6 +3032,8 @@ STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF:
STR_SAVELOAD_FILTER_TITLE :{BLACK}Фильтр:
STR_SAVELOAD_OVERWRITE_TITLE :{WHITE}Перезапись файла
STR_SAVELOAD_OVERWRITE_WARNING :{YELLOW}Перезаписать файл?
STR_SAVELOAD_DIRECTORY :{STRING} (Каталог)
STR_SAVELOAD_PARENT_DIRECTORY :{STRING} (Родительский каталог)
STR_SAVELOAD_OSKTITLE :{BLACK}Введите название сохраняемой игры
@ -3046,7 +3052,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Снег
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Поднять снеговую линию
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Опустить снеговую линию
STR_MAPGEN_LAND_GENERATOR :{BLACK}Генератор ландшафта:
STR_MAPGEN_TREE_PLACER :{BLACK}Генератор лесов:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Тип ландшафта:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Количество морей и озёр:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Количество рек:

@ -1117,8 +1117,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Gruzijski Lari
STR_GAME_OPTIONS_CURRENCY_IRR :Iranski Rijal (IRR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Drumska vozila
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Izaberi stranu puta kojom će se kretati drumska vozila
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Levom stranom
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Desnom stranom
@ -2907,7 +2905,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Nivo sne
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Sužava snežni pokrivač naviše za jedan
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Proširuje snežni pojas naniže za jedan
STR_MAPGEN_LAND_GENERATOR :{BLACK}Oblikovanje reljefa:
STR_MAPGEN_TREE_PLACER :{BLACK}Algoritam za drveća:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Vrsta terena:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nivo mora:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Broj reka:

@ -939,8 +939,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :港币 (HKD)
STR_GAME_OPTIONS_CURRENCY_INR :印度卢布INR
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}汽车行驶
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}选择汽车行驶的方向
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :左侧通行
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :右侧通行
@ -2821,7 +2819,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}雪线
STR_MAPGEN_SNOW_LINE_UP :{BLACK}提高雪线高度
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}降低雪线高度
STR_MAPGEN_LAND_GENERATOR :{BLACK}生成地形:
STR_MAPGEN_TREE_PLACER :{BLACK}生成树木:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}地形特点:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}海洋面积:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}河流数量:

@ -1017,8 +1017,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Hongkongský do
STR_GAME_OPTIONS_CURRENCY_INR :Indická rupia (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Cestné vozidlá
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Výber strany, po ktorej jazdia cestné vozidlá
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Jazdia naľavo
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Jazdia napravo
@ -1073,6 +1071,7 @@ STR_GAME_OPTIONS_RESOLUTION_OTHER :iné
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Veľkosť rozhrania
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Výber veľkosti prvkov rozhrania
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_AUTO :(automaticky zistené)
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normálna
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dvojnásobná veľkosť
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Štvornásobná veľkosť
@ -1080,6 +1079,7 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Štvornásobná
STR_GAME_OPTIONS_FONT_ZOOM :{BLACK}Veľkosť písma
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Výber veľkosti písma v rozhraní
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_AUTO :(automaticky zistené)
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :Normálna
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Dvojnásobná veľkosť
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Štvornásobná veľkosť
@ -2646,7 +2646,7 @@ STR_FOUND_TOWN_NEW_TOWN_TOOLTIP :{BLACK}Založi
STR_FOUND_TOWN_RANDOM_TOWN_BUTTON :{BLACK}Nahodné mesto
STR_FOUND_TOWN_RANDOM_TOWN_TOOLTIP :{BLACK}Postaviť mesto na náhodnej pozícii
STR_FOUND_TOWN_MANY_RANDOM_TOWNS :{BLACK}Veľa náhodných miest
STR_FOUND_TOWN_RANDOM_TOWNS_TOOLTIP :{BLACK}Pokryt mapu nahodne umiestnenymi mestami
STR_FOUND_TOWN_RANDOM_TOWNS_TOOLTIP :{BLACK}Pokryť mapu náhodne umiestnenými mestami
STR_FOUND_TOWN_NAME_TITLE :{YELLOW}Meno mesta:
STR_FOUND_TOWN_NAME_EDITOR_TITLE :{BLACK}Vložte meno mesta
@ -2674,12 +2674,18 @@ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Náhodn
# Fund new industry window
STR_FUND_INDUSTRY_CAPTION :{WHITE}Financovať nový priemysel
STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Vyberte vhodný typ priemyslu zo zoznamu
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :Veľa náhodného priemyslu
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Pokryt mapu nahodne umiestnenym priemyslom
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :{BLACK}Vytvoriť náhodný priemysel
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Pokryť mapu náhodne umiestneným priemyslom
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_CAPTION :{WHITE}Vytvoriť náhodný priemysel
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY :{YELLOW}Ste si istý, že chcete vytvoriť veľké množstvo náhodného priemyslu?
STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Cena: {YELLOW}{CURRENCY_LONG}
STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Vyhladat
STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Postavit
STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Založit
STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Postaviť
STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Založiť
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES :{BLACK}Odstrániť všetok priemysel
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_TOOLTIP :{BLACK}Odstrániť všetok priemysel umiestnený na mape
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION :{WHITE}Odstrániť všetok priemysel
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_QUERY :{YELLOW}Ste si istý, že chcete odstrániť všetok priemysel?
# Industry cargoes window
STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Reťazec pre priemysel: {STRING}
@ -2892,7 +2898,7 @@ STR_SAVELOAD_SAVE_SCENARIO :{WHITE}Uložiť
STR_SAVELOAD_LOAD_SCENARIO :{WHITE}Nahrať scenár
STR_SAVELOAD_LOAD_HEIGHTMAP :{WHITE}Nahrať výškovú mapu
STR_SAVELOAD_SAVE_HEIGHTMAP :{WHITE}Uložiť Výškovú mapu
STR_SAVELOAD_HOME_BUTTON :{BLACK}Kliknutim sem sa presuniete do sucasneho vychodzieho adresara pre ukladanie
STR_SAVELOAD_HOME_BUTTON :{BLACK}Kliknutím sem sa presuniete do súčasného predvoleného priečinku pre ukladanie
STR_SAVELOAD_BYTES_FREE :{BLACK}{BYTES} voľných
STR_SAVELOAD_LIST_TOOLTIP :{BLACK}Zoznam diskov, adresárov a súborov s uloženou hrou
STR_SAVELOAD_EDITBOX_TOOLTIP :{BLACK}Vybraný názov pre uloženie hry
@ -2910,6 +2916,8 @@ STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF:
STR_SAVELOAD_FILTER_TITLE :{BLACK}Filtrovací reťazec:
STR_SAVELOAD_OVERWRITE_TITLE :{WHITE}Prepísanie súboru
STR_SAVELOAD_OVERWRITE_WARNING :{YELLOW}Ste si istý, že chcete prepísať existujúci súbor?
STR_SAVELOAD_DIRECTORY :{STRING} (Priečinok)
STR_SAVELOAD_PARENT_DIRECTORY :{STRING} (Nadradený priečinok)
STR_SAVELOAD_OSKTITLE :{BLACK}Zadajte názov pre uloženie hry
@ -2928,7 +2936,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Výška
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Zvýšiť výšku hranice snehu o jedno
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Znížiť výšku hranice snehu o jedno
STR_MAPGEN_LAND_GENERATOR :{BLACK}Generátor krajiny:
STR_MAPGEN_TREE_PLACER :{BLACK}Generátor stromov:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Typ terénu:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Rozloha mora:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Rieky:
@ -4445,11 +4452,11 @@ STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... v ce
# Industry related errors
STR_ERROR_TOO_MANY_INDUSTRIES :{WHITE}... príliš veľa priemyslu
STR_ERROR_CAN_T_GENERATE_INDUSTRIES :{WHITE}Nemozno vygenerovat priemysel ...
STR_ERROR_CAN_T_GENERATE_INDUSTRIES :{WHITE}Nemožno vygenerovať priemysel...
STR_ERROR_CAN_T_BUILD_HERE :{WHITE}{STRING} sa tu nedá postaviť...
STR_ERROR_CAN_T_CONSTRUCT_THIS_INDUSTRY :{WHITE}Nemôžeš tu postaviť tento typ priemyslu...
STR_ERROR_INDUSTRY_TOO_CLOSE :{WHITE}... príliš blízko iného priemyslu
STR_ERROR_MUST_FOUND_TOWN_FIRST :{WHITE}... najskor treba postavit mesto...
STR_ERROR_MUST_FOUND_TOWN_FIRST :{WHITE}... najskôr je potrebné založiť mesto
STR_ERROR_ONLY_ONE_ALLOWED_PER_TOWN :{WHITE}... povolené len jedno pre 1mesto
STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS_WITH_POPULATION_OF_1200 :{WHITE}... môže byť postavené v mestách z populáciou väčšou ako 1200
STR_ERROR_CAN_ONLY_BE_BUILT_IN_RAINFOREST :{WHITE}... môže byť postavené len v dažďovom pralese

@ -1072,8 +1072,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Gruzijski Lari
STR_GAME_OPTIONS_CURRENCY_IRR :Iranski Rial (IRR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Cestna vozila
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Izberi smer vožnje cestnih vozil
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Vožnja po levi
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Vožnja po desni
@ -2854,7 +2852,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Višina
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Premik snežne meje eno enoto višje
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Premik snežne meje eno enoto nižje
STR_MAPGEN_LAND_GENERATOR :{BLACK}Ustvarjalec terena:
STR_MAPGEN_TREE_PLACER :{BLACK}Algoritem dreves:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tip terena:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Morska gladina:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Reke:

@ -949,8 +949,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Dólar hongkon
STR_GAME_OPTIONS_CURRENCY_INR :Rupia india (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Vehículos de carretera
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Selecciona el lado de la carretera por donde se debe conducir
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Conducir por la izquierda
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Conducir por la derecha
@ -1570,7 +1568,7 @@ STR_CONFIG_SETTING_ECONOMY_TYPE :Tipo de econom
STR_CONFIG_SETTING_ECONOMY_TYPE_HELPTEXT :La economía fluida hace que los cambios de producción sean más frecuentes y en pasos más pequeños. La economía congelada detiene los cambios de producción y los cierres de industrias. Esta configuración puede no tener efecto si los tipos de industria los proporciona un NewGRF.
STR_CONFIG_SETTING_ECONOMY_TYPE_ORIGINAL :Original
STR_CONFIG_SETTING_ECONOMY_TYPE_SMOOTH :Suave
STR_CONFIG_SETTING_ECONOMY_TYPE_FROZEN :Congelado
STR_CONFIG_SETTING_ECONOMY_TYPE_FROZEN :Congelada
STR_CONFIG_SETTING_ALLOW_SHARES :Permitir comprar acciones de otras empresas: {STRING}
STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Cuando se activa, permite comprar y vender acciones de empresas. Las acciones de una empresa solamente estarán disponibles cuando la empresa cumpla una edad determinada
STR_CONFIG_SETTING_MIN_YEARS_FOR_SHARES :Edad mínima de una empresa para comerciar con sus acciones: {STRING}
@ -2860,7 +2858,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Altura l
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Mover la línea de nieve hacia arriba
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Mover la línea de nieve hacia abajo
STR_MAPGEN_LAND_GENERATOR :{BLACK}Generador terreno:
STR_MAPGEN_TREE_PLACER :{BLACK}Algoritmo árboles:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tipo de terreno
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nivel del mar:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Ríos:

@ -950,8 +950,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Dólar honkoné
STR_GAME_OPTIONS_CURRENCY_INR :Rupia india (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Vehículos de carretera
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Elegir de qué lado irá la circulación
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Manejar por la izquierda
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Manejar por la derecha
@ -2607,12 +2605,18 @@ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Aleatori
# Fund new industry window
STR_FUND_INDUSTRY_CAPTION :{WHITE}Fundación de una nueva industria
STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Elegir de la lista la industria adecuada
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :Muchas industrias al azar
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :{BLACK}Crear industrias al azar
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Cubrir el mapa con industrias colocadas al azar
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_CAPTION :{WHITE}Crear industrias al azar
STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY :{YELLOW}¿Seguro de crear muchas industrias al azar?
STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Costo: {YELLOW}{CURRENCY_LONG}
STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Prospección
STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Construir
STR_FUND_INDUSTRY_FUND_NEW_INDUSTRY :{BLACK}Fundar
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES :{BLACK}Eliminar todas las industrias
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_TOOLTIP :{BLACK}Eliminar todas las industrias que haya en el mapa
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION :{WHITE}Eliminar todas las industrias
STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_QUERY :{YELLOW}¿Seguro de eliminar todas las industrias?
# Industry cargoes window
STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Cadena industrial para la industria de {STRING}
@ -2861,7 +2865,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Nivel de
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Mover el nivel de inicio de nieve hacia arriba
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Mover el nivel de inicio de nieve hacia abajo
STR_MAPGEN_LAND_GENERATOR :{BLACK}Generador de terreno:
STR_MAPGEN_TREE_PLACER :{BLACK}Algoritmo de árboles:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Tipo de terreno
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Nivel del mar:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Ríos:

@ -939,8 +939,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Hongkongdollar
STR_GAME_OPTIONS_CURRENCY_INR :Indisk rupie (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Vägfordon
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Välj sida av vägen som fordonen kör på
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Kör på vänster sida
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Kör på höger sida
@ -2821,7 +2819,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Snögrä
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Höj snögränsens höjd ett steg
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Sänk snögränsens höjd ett steg
STR_MAPGEN_LAND_GENERATOR :{BLACK}Landgenerator:
STR_MAPGEN_TREE_PLACER :{BLACK}Trädalgoritm:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terrängtyp:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Havsnivå
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Flod:

@ -907,8 +907,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :ஹாங்க
STR_GAME_OPTIONS_CURRENCY_INR :இந்திய ரூபாய் (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}சாலை வாகனங்கள்
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}வாகனங்கள் சாலையின் எந்தப்பக்கத்தில் செல்ல வேண்டும்
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :இடப்பக்கம் ஒட்டு
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :வலப்பக்கம் ஒட்டு
@ -2516,7 +2514,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}பன
STR_MAPGEN_SNOW_LINE_UP :{BLACK}பனி கோடின் உயரத்தை ஒரு அடி உயர்த்து
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}பனி கோடின் உயரத்தை ஒரு அடி இறக்கு
STR_MAPGEN_LAND_GENERATOR :{BLACK}பூமி உருவாக்குனர்:
STR_MAPGEN_TREE_PLACER :{BLACK}மரம் நடுதல்:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}நிலவகை:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}கடல் மட்டம்:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}ஆறுகள்:

@ -909,8 +909,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgian Lari (
STR_GAME_OPTIONS_CURRENCY_IRR :Iranian Rial (IRR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}ยานยนต์
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}เลือกฝั่งถนนในการขับยานพาหนะ
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :ขับชิดซ้าย
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :ขับชิดขวา
@ -2643,7 +2641,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}เส
STR_MAPGEN_SNOW_LINE_UP :{BLACK}ปรับเปลี่ยนความสูงของหิมะขึ้นไป 1 ระดับ
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}ปรับเปลี่ยนความสูงของหิมะลงมา 1 ระดับ
STR_MAPGEN_LAND_GENERATOR :{BLACK}เครื่องมือสร้างสภาพพื้นดิน:
STR_MAPGEN_TREE_PLACER :{BLACK}Tอัลกอริธึมต้นไม้:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}ประเภทภูมิประเทศ:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}ระดับทะเล:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}แม่น้ำ:

@ -920,8 +920,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :喬治亞拉里
STR_GAME_OPTIONS_CURRENCY_IRR :伊朗里亞爾 (IRR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}車輛
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}選擇車輛在路上的行駛位置
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :靠左行駛
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :靠右行駛
@ -2703,7 +2701,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}雪線
STR_MAPGEN_SNOW_LINE_UP :{BLACK}將雪線高度上移一層
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}將雪線高度下移一層
STR_MAPGEN_LAND_GENERATOR :{BLACK}地形產生器:
STR_MAPGEN_TREE_PLACER :{BLACK}植樹演算法:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}地形種類:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}海平面:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}河流:

@ -940,8 +940,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Hong Kong Dolar
STR_GAME_OPTIONS_CURRENCY_INR :Hindistan Rupisi (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Karayolu taşıtları
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Trafik akış yönünü seçin
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Soldan trafik
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Sağdan trafik
@ -2822,7 +2820,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Kar yük
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
STR_MAPGEN_LAND_GENERATOR :{BLACK}Harita üretici:
STR_MAPGEN_TREE_PLACER :{BLACK}Ağaç algoritması:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Arazi türü:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Deniz seviyesi:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Nehirler:

@ -1067,8 +1067,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Гонконг
STR_GAME_OPTIONS_CURRENCY_INR :Індійська рупія (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Сторона руху транспорту
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Виберіть, по якій стороні рухається дорожній транспорт
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :лівосторонній рух
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :правосторонній рух
@ -2952,7 +2950,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Висо
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Підвищити лінію снігу
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Понизити лінію снігу
STR_MAPGEN_LAND_GENERATOR :{BLACK}Ландшафт:
STR_MAPGEN_TREE_PLACER :{BLACK}Насадження дерев:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Тип ландшафту:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Рівень моря:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Ріки:

@ -918,8 +918,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Georgyske Lari
STR_GAME_OPTIONS_CURRENCY_IRR :Iraanske Rial (IRR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Weinen
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Selektearje de kant fan de dyk dêr't weinen ride moatte
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Lofts ride
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Rjochts ride
@ -2492,7 +2490,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Hichte s
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Sniegrins ien omheech ferpleatsje:
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Sniegrins ien nei beneden ferpleatsje:
STR_MAPGEN_LAND_GENERATOR :{BLACK}Lângenerator:
STR_MAPGEN_TREE_PLACER :{BLACK}Boskalgoritme:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Terreintype:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Seenivo:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Rivieren:

@ -910,8 +910,6 @@ STR_GAME_OPTIONS_CURRENCY_GEL :لیره گرج
STR_GAME_OPTIONS_CURRENCY_IRR :ریال ایران (IRR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK} خودروی جاده ای
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}انتخاب جهت فرمان ماشین ها
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :چپ فرمان
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :راست فرمان
@ -2405,7 +2403,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}ارتف
STR_MAPGEN_SNOW_LINE_UP :{BLACK}اضافه کردن یک واحد به ارتفاع خط برف
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}کم کردن یک واحد از ارتفاع خط برف
STR_MAPGEN_LAND_GENERATOR :{BLACK}سازنده زمین:
STR_MAPGEN_TREE_PLACER :{BLACK}الگوریتم درخت ها:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}نوع پستی/بلندی:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}سطح دریا:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}رودخانه ها:

@ -885,8 +885,6 @@ STR_GAME_OPTIONS_CURRENCY_ZAR :جنوبی اف
STR_GAME_OPTIONS_CURRENCY_CUSTOM :اپنی مرضی کی ۔۔۔
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}گاڑیاں
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}اختیار کریں کہ گاڑی سڑک کی کس طرف چلے
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :بائیں طرف چلے
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :دائیں طرف چلے

@ -939,8 +939,6 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Đô-la Hồng
STR_GAME_OPTIONS_CURRENCY_INR :Rupee Ấn Độ (INR)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Xe cộ
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Chọn phía đường lái xe
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Lái bên trái
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Lái bên phải
@ -2823,7 +2821,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Độ ca
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Di chuyển độ cao tuyết phủ lên cao
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Di chuyển độ cao tuyết phủ xuống thấp
STR_MAPGEN_LAND_GENERATOR :{BLACK}Tạo nền đất:
STR_MAPGEN_TREE_PLACER :{BLACK}Cơ chế trồng cây:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Kiểu nền đất:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Mực nước biển:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Số sông/suối:

@ -921,8 +921,6 @@ STR_GAME_OPTIONS_CURRENCY_RUB :Rwbl Rwsaidd Ne
STR_GAME_OPTIONS_CURRENCY_CNY :Renminbi Tseina (CNY)
############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Cerbydau Ffordd
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_TOOLTIP :{BLACK}Dewiswch ar ba ochr i'r ffordd y dylai cerbydau yrru
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT :Gyrru ar y chwith
STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_RIGHT :Gyrru ar y dde
@ -2715,7 +2713,6 @@ STR_MAPGEN_SNOW_LINE_HEIGHT :{BLACK}Uchder L
STR_MAPGEN_SNOW_LINE_UP :{BLACK}Symud y llinell eira un yn uwch
STR_MAPGEN_SNOW_LINE_DOWN :{BLACK}Symud y llinell eira un yn is
STR_MAPGEN_LAND_GENERATOR :{BLACK}Cynhyrchydd Tir:
STR_MAPGEN_TREE_PLACER :{BLACK}Algorithm Coed:
STR_MAPGEN_TERRAIN_TYPE :{BLACK}Math Tirwedd:
STR_MAPGEN_QUANTITY_OF_SEA_LAKES :{BLACK}Lefel y Môr:
STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Afonydd:

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save