Merge branch 'master' into jgrpp

Remove the viewport sign cache as this is now superseded by the kd tree
implementation

# Conflicts:
#	src/crashlog.cpp
#	src/lang/english.txt
#	src/misc.cpp
#	src/pathfinder/follow_track.hpp
#	src/pbs.cpp
#	src/rail_cmd.cpp
#	src/saveload/vehicle_sl.cpp
#	src/settings.cpp
#	src/settings_gui.cpp
#	src/ship_cmd.cpp
#	src/station.cpp
#	src/station_base.h
#	src/station_cmd.cpp
#	src/table/settings.ini
#	src/thread/thread_morphos.cpp
#	src/town_cmd.cpp
#	src/train_cmd.cpp
#	src/viewport.cpp
#	src/waypoint.cpp
pull/82/head
Jonathan G Rennison 5 years ago
commit 5e6d283463

@ -292,13 +292,13 @@ INCLUDE_FILE_PATTERNS =
PREDEFINED = ENABLE_NETWORK \ PREDEFINED = ENABLE_NETWORK \
WITH_ZLIB \ WITH_ZLIB \
WITH_LZO \ WITH_LZO \
WITH_LZMA \ WITH_LIBLZMA \
WITH_SDL \ WITH_SDL \
WITH_PNG \ WITH_PNG \
WITH_FONTCONFIG \ WITH_FONTCONFIG \
WITH_FREETYPE \ WITH_FREETYPE \
WITH_ICU_SORT \ WITH_ICU_I18N \
WITH_ICU_LAYOUT \ WITH_ICU_LX \
UNICODE \ UNICODE \
_UNICODE \ _UNICODE \
_GNU_SOURCE \ _GNU_SOURCE \

@ -438,12 +438,11 @@ OpenTTD has been ported to several platforms and operating systems. It should
not be very difficult to port it to a new platform. The currently working not be very difficult to port it to a new platform. The currently working
platforms are: platforms are:
- BeOS (SDL or Allegro)
- DOS (Allegro) - DOS (Allegro)
- FreeBSD (SDL) - FreeBSD (SDL)
- Haiku (SDL)
- Linux (SDL or Allegro) - Linux (SDL or Allegro)
- macOS (universal) (Cocoa video and sound drivers) - macOS (universal) (Cocoa video and sound drivers)
- MorphOS (SDL)
- OpenBSD (SDL) - OpenBSD (SDL)
- OS/2 (SDL) - OS/2 (SDL)
- Windows (Win32 GDI (faster) or SDL or Allegro) - Windows (Win32 GDI (faster) or SDL or Allegro)
@ -808,7 +807,7 @@ and it should build automatically. In case you want to build with SDL support
you need to add WITH_SDL to the project settings. you need to add WITH_SDL to the project settings.
PNG (WITH_PNG), ZLIB (WITH_ZLIB), LZO (WITH_LZO), Freetype (WITH_FREETYPE) and PNG (WITH_PNG), ZLIB (WITH_ZLIB), LZO (WITH_LZO), Freetype (WITH_FREETYPE) and
LZMA (WITH_LZMA) support is enabled by default. For these to work you need their libLZMA (WITH_LIBLZMA) support is enabled by default. For these to work you need their
development files. To get them just use vcpkg from https://github.com/Microsoft/vcpkg development files. To get them just use vcpkg from https://github.com/Microsoft/vcpkg
using x86-windows-static and x64-windows-static triplets. using x86-windows-static and x64-windows-static triplets.
For more help with VS see docs/Readme_Windows_MSVC.md. For more help with VS see docs/Readme_Windows_MSVC.md.
@ -833,17 +832,10 @@ However, for the first build one has to do a '`./configure`' first.
To make a universal binary type '`./configure --enabled-universal`' To make a universal binary type '`./configure --enabled-universal`'
instead of '`./configure`'. instead of '`./configure`'.
### BeOS: ### Haiku:
Use '`make`', but do a '`./configure`' before the first build. Use '`make`', but do a '`./configure`' before the first build.
### MorphOS:
Use '`make`'. However, for the first build one has to do a '`./configure`'
first. Note that you need the MorphOS SDK, latest libnix updates (else C++
parts of OpenTTD will not build) and the powersdl.library SDK. Optionally libz,
libpng and freetype2 developer files.
### OS/2: ### OS/2:
A comprehensive GNU build environment is required to build the OS/2 version. A comprehensive GNU build environment is required to build the OS/2 version.

@ -1,9 +1,10 @@
steps: steps:
# Rebase to origin/master for every PR. This means users don't have to # Rebase to target branch for every PR. This means users don't have to
# rebase every time master changes. As long as the PR applies cleanly, we # rebase every time target branch changes. As long as the PR applies cleanly, we
# will validate it. # will validate it.
- script: | - bash: |
git config user.email 'info@openttd.org' git config user.email 'info@openttd.org'
git config user.name 'OpenTTD CI' git config user.name 'OpenTTD CI'
git rebase origin/master git rebase origin/${SYSTEM_PULLREQUEST_TARGETBRANCH}
displayName: 'Rebase to master' displayName: 'Rebase to target branch'
condition: and(succeeded(), eq(variables['Build.Reason'], 'PullRequest'))

@ -4,11 +4,27 @@ parameters:
ContainerCommand: '' ContainerCommand: ''
steps: steps:
# 'envVars' in the 'Docker@1' task is a bit funky. When you want to use a
# variable, you have to quote it. But the quote is also sent directly to
# Docker and ends up in the variable, which you don't want. To work around
# this, we set the correct variable first (which becomes an env-variable), and
# pass that env-variable through to Docker. We cannot use the normal
# 'variables' entry, as we are a template. So that results in this bit of
# Bash code. Not because it is pretty, but it is the only way we found that
# works.
- bash: |
echo "##vso[task.setvariable variable=TARGET_BRANCH]${SYSTEM_PULLREQUEST_TARGETBRANCH}"
echo "Target branch is ${SYSTEM_PULLREQUEST_TARGETBRANCH}"
displayName: "Set target branch"
condition: and(succeeded(), eq(variables['Build.Reason'], 'PullRequest'))
- task: Docker@1 - task: Docker@1
${{ if eq(parameters.Image, 'compile-farm') }}: ${{ if eq(parameters.Image, 'compile-farm') }}:
displayName: 'Build' displayName: 'Build'
${{ if eq(parameters.Image, 'compile-farm-ci') }}: ${{ if eq(parameters.Image, 'compile-farm-ci') }}:
displayName: 'Build and test' displayName: 'Build and test'
# Run the commit-checker only if it is a Pull Request
condition: and(succeeded(), or(ne(variables['Agent.JobName'], 'commit-checker'), eq(variables['Build.Reason'], 'PullRequest')))
inputs: inputs:
command: 'Run an image' command: 'Run an image'
imageName: openttd/${{ parameters.Image }}:${{ parameters.Tag }} imageName: openttd/${{ parameters.Image }}:${{ parameters.Tag }}
@ -16,3 +32,5 @@ steps:
workingDirectory: '$(Build.SourcesDirectory)' workingDirectory: '$(Build.SourcesDirectory)'
containerCommand: ${{ parameters.ContainerCommand }} containerCommand: ${{ parameters.ContainerCommand }}
runInBackground: false runInBackground: false
envVars: |
TARGET_BRANCH

@ -82,7 +82,6 @@ set_default() {
with_iconv="1" with_iconv="1"
with_midi="" with_midi=""
with_midi_arg="" with_midi_arg=""
with_libtimidity="1"
with_fluidsynth="1" with_fluidsynth="1"
with_freetype="1" with_freetype="1"
with_fontconfig="1" with_fontconfig="1"
@ -163,7 +162,6 @@ set_default() {
with_iconv with_iconv
with_midi with_midi
with_midi_arg with_midi_arg
with_libtimidity
with_fluidsynth with_fluidsynth
with_freetype with_freetype
with_fontconfig with_fontconfig
@ -376,10 +374,6 @@ detect_params() {
--without-libpng) with_png="0";; --without-libpng) with_png="0";;
--with-libpng=*) with_png="$optarg";; --with-libpng=*) with_png="$optarg";;
--with-libtimidity) with_libtimidity="2";;
--without-libtimidity) with_libtimidity="0";;
--with-libtimidity=*) with_libtimidity="$optarg";;
--with-fluidsynth) with_fluidsynth="2";; --with-fluidsynth) with_fluidsynth="2";;
--without-fluidsynth) with_fluidsynth="0";; --without-fluidsynth) with_fluidsynth="0";;
--with-fluidsynth=*) with_fluidsynth="$optarg";; --with-fluidsynth=*) with_fluidsynth="$optarg";;
@ -583,10 +577,10 @@ check_params() {
# Check if all params have valid values # Check if all params have valid values
# OS only allows DETECT, UNIX, OSX, FREEBSD, DRAGONFLY, OPENBSD, NETBSD, MORPHOS, BEOS, HAIKU, SUNOS, CYGWIN, MINGW, OS2, and DOS # OS only allows DETECT, UNIX, OSX, FREEBSD, DRAGONFLY, OPENBSD, NETBSD, HAIKU, SUNOS, CYGWIN, MINGW, OS2, and DOS
if [ -z "`echo $os | egrep '^(DETECT|UNIX|OSX|FREEBSD|DRAGONFLY|OPENBSD|NETBSD|HPUX|MORPHOS|BEOS|HAIKU|SUNOS|CYGWIN|MINGW|OS2|DOS)$'`" ]; then if [ -z "`echo $os | egrep '^(DETECT|UNIX|OSX|FREEBSD|DRAGONFLY|OPENBSD|NETBSD|HPUX|HAIKU|SUNOS|CYGWIN|MINGW|OS2|DOS)$'`" ]; then
log 1 "configure: error: invalid option --os=$os" log 1 "configure: error: invalid option --os=$os"
log 1 " Available options are: --os=[DETECT|UNIX|OSX|FREEBSD|DRAGONFLY|OPENBSD|NETBSD|HPUX|MORPHOS|BEOS|HAIKU|SUNOS|CYGWIN|MINGW|OS2|DOS]" log 1 " Available options are: --os=[DETECT|UNIX|OSX|FREEBSD|DRAGONFLY|OPENBSD|NETBSD|HPUX|HAIKU|SUNOS|CYGWIN|MINGW|OS2|DOS]"
exit 1 exit 1
fi fi
# cpu_type can be either 32 or 64 # cpu_type can be either 32 or 64
@ -653,7 +647,7 @@ check_params() {
detect_sse_capable_architecture detect_sse_capable_architecture
if [ "$enable_static" = "1" ]; then if [ "$enable_static" = "1" ]; then
if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "MORPHOS" ] || [ "$os" = "DOS" ]; then if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "DOS" ]; then
enable_static="2" enable_static="2"
else else
enable_static="0" enable_static="0"
@ -663,8 +657,8 @@ check_params() {
if [ "$enable_static" != "0" ]; then if [ "$enable_static" != "0" ]; then
log 1 "checking static... yes" log 1 "checking static... yes"
if [ "$os" != "MINGW" ] && [ "$os" != "CYGWIN" ] && [ "$os" != "OSX" ] && [ "$os" != "MORPHOS" ] && [ "$os" != "DOS" ]; then if [ "$os" != "MINGW" ] && [ "$os" != "CYGWIN" ] && [ "$os" != "OSX" ] && [ "$os" != "DOS" ]; then
log 1 "WARNING: static is only known to work on Windows, DOS, MacOSX and MorphOS" log 1 "WARNING: static is only known to work on Windows, DOS, and MacOSX"
log 1 "WARNING: use static at your own risk on this platform" log 1 "WARNING: use static at your own risk on this platform"
sleep 5 sleep 5
@ -919,7 +913,6 @@ check_params() {
detect_fontconfig detect_fontconfig
detect_icu_layout detect_icu_layout
detect_icu_sort detect_icu_sort
detect_libtimidity
detect_fluidsynth detect_fluidsynth
if [ "$with_direct_music" != "0" ]; then if [ "$with_direct_music" != "0" ]; then
@ -963,9 +956,7 @@ check_params() {
fi fi
if [ "$enable_debug" = "0" ] && [ "$enable_profiling" = "0" ] && [ "$enable_strip" != "0" ]; then if [ "$enable_debug" = "0" ] && [ "$enable_profiling" = "0" ] && [ "$enable_strip" != "0" ]; then
if [ "$os" = "MORPHOS" ]; then if [ "$os" = "OSX" ]; then
strip_arg="--strip-all --strip-unneeded --remove-section .comment"
elif [ "$os" = "OSX" ]; then
strip_arg="" strip_arg=""
elif [ "$os" = "OS2" ]; then elif [ "$os" = "OS2" ]; then
strip_arg="" strip_arg=""
@ -1609,10 +1600,6 @@ make_cflags_and_ldflags() {
if [ "$enable_debug" = "0" ]; then if [ "$enable_debug" = "0" ]; then
# No debug, add default stuff # No debug, add default stuff
OBJS_SUBDIR="release" OBJS_SUBDIR="release"
if [ "$os" = "MORPHOS" ]; then
CFLAGS="-I/gg/os-include -noixemul -fstrict-aliasing -fexpensive-optimizations -mcpu=604 -fno-inline -mstring -mmultiple $CFLAGS"
LDFLAGS="$LDFLAGS -noixemul"
fi
if [ "$enable_profiling" = "0" ]; then if [ "$enable_profiling" = "0" ]; then
# -fomit-frame-pointer and -pg do not go well together (gcc errors they are incompatible) # -fomit-frame-pointer and -pg do not go well together (gcc errors they are incompatible)
@ -1701,7 +1688,7 @@ make_cflags_and_ldflags() {
fi fi
fi fi
if [ "$os" != "CYGWIN" ] && [ "$os" != "HAIKU" ] && [ "$os" != "OPENBSD" ] && [ "$os" != "MINGW" ] && [ "$os" != "MORPHOS" ] && [ "$os" != "OSX" ] && [ "$os" != "DOS" ] && [ "$os" != "OS2" ]; then if [ "$os" != "CYGWIN" ] && [ "$os" != "HAIKU" ] && [ "$os" != "OPENBSD" ] && [ "$os" != "MINGW" ] && [ "$os" != "OSX" ] && [ "$os" != "DOS" ] && [ "$os" != "OS2" ]; then
LIBS="$LIBS -lpthread" LIBS="$LIBS -lpthread"
fi fi
if [ "$os" != "CYGWIN" ] && [ "$os" != "HAIKU" ] && [ "$os" != "MINGW" ] && [ "$os" != "MORPHOS" ] && [ "$os" != "OSX" ] && [ "$os" != "DOS" ] && [ "$os" != "WINCE" ] && [ "$os" != "PSP" ] && [ "$os" != "OS2" ]; then if [ "$os" != "CYGWIN" ] && [ "$os" != "HAIKU" ] && [ "$os" != "MINGW" ] && [ "$os" != "MORPHOS" ] && [ "$os" != "OSX" ] && [ "$os" != "DOS" ] && [ "$os" != "WINCE" ] && [ "$os" != "PSP" ] && [ "$os" != "OS2" ]; then
@ -1932,11 +1919,6 @@ EOL
LIBS="$LIBS -lc" LIBS="$LIBS -lc"
fi fi
if [ "$os" = "MORPHOS" ]; then
# -Wstrict-prototypes generates much noise because of system headers
CFLAGS="$CFLAGS -Wno-strict-prototypes"
fi
if [ "$os" = "OPENBSD" ]; then if [ "$os" = "OPENBSD" ]; then
LIBS="$LIBS -pthread" LIBS="$LIBS -pthread"
fi fi
@ -1960,12 +1942,12 @@ EOL
fi fi
fi fi
if [ "$os" = "BEOS" ] || [ "$os" = "HAIKU" ]; then if [ "$os" = "HAIKU" ]; then
LIBS="$LIBS -lmidi -lbe" LIBS="$LIBS -lmidi -lbe"
fi fi
# Most targets act like UNIX, just with some additions # Most targets act like UNIX, just with some additions
if [ "$os" = "BEOS" ] || [ "$os" = "HAIKU" ] || [ "$os" = "OSX" ] || [ "$os" = "MORPHOS" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "DRAGONFLY" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ] || [ "$os" = "OS2" ]; then if [ "$os" = "HAIKU" ] || [ "$os" = "OSX" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "DRAGONFLY" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ] || [ "$os" = "OS2" ]; then
CFLAGS="$CFLAGS -DUNIX" CFLAGS="$CFLAGS -DUNIX"
fi fi
# And others like Windows # And others like Windows
@ -2020,7 +2002,7 @@ EOL
fi fi
if [ -n "$lzma_config" ]; then if [ -n "$lzma_config" ]; then
CFLAGS="$CFLAGS -DWITH_LZMA" CFLAGS="$CFLAGS -DWITH_LIBLZMA"
CFLAGS="$CFLAGS `$lzma_config --cflags | tr '\n\r' ' '`" CFLAGS="$CFLAGS `$lzma_config --cflags | tr '\n\r' ' '`"
if [ "$enable_static" != "0" ]; then if [ "$enable_static" != "0" ]; then
@ -2091,7 +2073,7 @@ EOL
fi fi
if [ -n "$icu_layout_config" ]; then if [ -n "$icu_layout_config" ]; then
CFLAGS="$CFLAGS -DWITH_ICU_LAYOUT" CFLAGS="$CFLAGS -DWITH_ICU_LX"
CFLAGS="$CFLAGS `$icu_layout_config --cflags | tr '\n\r' ' '`" CFLAGS="$CFLAGS `$icu_layout_config --cflags | tr '\n\r' ' '`"
if [ "$static_icu" != "0" ]; then if [ "$static_icu" != "0" ]; then
@ -2102,7 +2084,7 @@ EOL
fi fi
if [ -n "$icu_sort_config" ]; then if [ -n "$icu_sort_config" ]; then
CFLAGS="$CFLAGS -DWITH_ICU_SORT" CFLAGS="$CFLAGS -DWITH_ICU_I18N"
CFLAGS="$CFLAGS `$icu_sort_config --cflags | tr '\n\r' ' '`" CFLAGS="$CFLAGS `$icu_sort_config --cflags | tr '\n\r' ' '`"
if [ "$static_icu" != "0" ]; then if [ "$static_icu" != "0" ]; then
@ -2131,17 +2113,6 @@ EOL
CFLAGS="$CFLAGS -DWITH_XAUDIO2" CFLAGS="$CFLAGS -DWITH_XAUDIO2"
fi fi
if [ -n "$libtimidity_config" ]; then
CFLAGS="$CFLAGS -DLIBTIMIDITY"
CFLAGS="$CFLAGS `$libtimidity_config --cflags | tr '\n\r' ' '`"
if [ "$enable_static" != "0" ]; then
LIBS="$LIBS `$libtimidity_config --libs --static | tr '\n\r' ' '`"
else
LIBS="$LIBS `$libtimidity_config --libs | tr '\n\r' ' '`"
fi
fi
if [ -n "$fluidsynth" ]; then if [ -n "$fluidsynth" ]; then
LIBS="$LIBS -lfluidsynth" LIBS="$LIBS -lfluidsynth"
CFLAGS="$CFLAGS -DFLUIDSYNTH" CFLAGS="$CFLAGS -DFLUIDSYNTH"
@ -2180,10 +2151,6 @@ EOL
if [ "$enable_network" != "0" ]; then if [ "$enable_network" != "0" ]; then
CFLAGS="$CFLAGS -DENABLE_NETWORK" CFLAGS="$CFLAGS -DENABLE_NETWORK"
if [ "$os" = "BEOS" ]; then
LDFLAGS="$LDFLAGS -lbind -lsocket"
fi
if [ "$os" = "HAIKU" ]; then if [ "$os" = "HAIKU" ]; then
LDFLAGS="$LDFLAGS -lnetwork" LDFLAGS="$LDFLAGS -lnetwork"
fi fi
@ -2680,7 +2647,7 @@ detect_awk() {
detect_os() { detect_os() {
if [ "$os" = "DETECT" ]; then if [ "$os" = "DETECT" ]; then
# Detect UNIX, OSX, FREEBSD, DRAGONFLY, OPENBSD, NETBSD, HPUX, MORPHOS, BEOS, SUNOS, CYGWIN, MINGW, OS2, and DOS # Detect UNIX, OSX, FREEBSD, DRAGONFLY, OPENBSD, NETBSD, HPUX, SUNOS, CYGWIN, MINGW, OS2, and DOS
# Try first via dumpmachine, then via uname # Try first via dumpmachine, then via uname
os=`echo "$host" | tr '[A-Z]' '[a-z]' | $awk ' os=`echo "$host" | tr '[A-Z]' '[a-z]' | $awk '
@ -2691,8 +2658,6 @@ detect_os() {
/openbsd/ { print "OPENBSD"; exit} /openbsd/ { print "OPENBSD"; exit}
/netbsd/ { print "NETBSD"; exit} /netbsd/ { print "NETBSD"; exit}
/hp-ux/ { print "HPUX"; exit} /hp-ux/ { print "HPUX"; exit}
/morphos/ { print "MORPHOS"; exit}
/beos/ { print "BEOS"; exit}
/haiku/ { print "HAIKU"; exit} /haiku/ { print "HAIKU"; exit}
/sunos/ { print "SUNOS"; exit} /sunos/ { print "SUNOS"; exit}
/solaris/ { print "SUNOS"; exit} /solaris/ { print "SUNOS"; exit}
@ -2711,8 +2676,6 @@ detect_os() {
/openbsd/ { print "OPENBSD"; exit} /openbsd/ { print "OPENBSD"; exit}
/netbsd/ { print "NETBSD"; exit} /netbsd/ { print "NETBSD"; exit}
/hp-ux/ { print "HPUX"; exit} /hp-ux/ { print "HPUX"; exit}
/morphos/ { print "MORPHOS"; exit}
/beos/ { print "BEOS"; exit}
/haiku/ { print "HAIKU"; exit} /haiku/ { print "HAIKU"; exit}
/sunos/ { print "SUNOS"; exit} /sunos/ { print "SUNOS"; exit}
/cygwin/ { print "CYGWIN"; exit} /cygwin/ { print "CYGWIN"; exit}
@ -2725,7 +2688,7 @@ detect_os() {
if [ -z "$os" ]; then if [ -z "$os" ]; then
log 1 "detecting OS... none detected" log 1 "detecting OS... none detected"
log 1 "I couldn't detect your OS. Please use --os=OS to force one" log 1 "I couldn't detect your OS. Please use --os=OS to force one"
log 1 "Allowed values are: UNIX, OSX, FREEBSD, DRAGONFLY, OPENBSD, NETBSD, MORPHOS, HPUX, BEOS, HAIKU, SUNOS, CYGWIN, MINGW, OS2, and DOS" log 1 "Allowed values are: UNIX, OSX, FREEBSD, DRAGONFLY, OPENBSD, NETBSD, HPUX, HAIKU, SUNOS, CYGWIN, MINGW, OS2, and DOS"
exit 1 exit 1
fi fi
@ -3097,10 +3060,6 @@ detect_lzo2() {
detect_library "$with_lzo2" "lzo2" "liblzo2.a" "lzo/" "lzo1x.h" detect_library "$with_lzo2" "lzo2" "liblzo2.a" "lzo/" "lzo1x.h"
} }
detect_libtimidity() {
detect_pkg_config "$with_libtimidity" "libtimidity" "libtimidity_config" "0.1" "1"
}
detect_fluidsynth() { detect_fluidsynth() {
detect_library "$with_fluidsynth" "fluidsynth" "" "" "fluidsynth.h" detect_library "$with_fluidsynth" "fluidsynth" "" "" "fluidsynth.h"
} }
@ -3838,7 +3797,7 @@ showhelp() {
echo " --lipo=LIPO the lipo to use (OSX ONLY) [HOST-lipo]" echo " --lipo=LIPO the lipo to use (OSX ONLY) [HOST-lipo]"
echo " --os=OS the OS we are compiling for [DETECT]" echo " --os=OS the OS we are compiling for [DETECT]"
echo " DETECT/UNIX/OSX/FREEBSD/DRAGONFLY/OPENBSD/" echo " DETECT/UNIX/OSX/FREEBSD/DRAGONFLY/OPENBSD/"
echo " NETBSD/MORPHOS/HPUX/BEOS/SUNOS/CYGWIN/" echo " NETBSD/HPUX/SUNOS/CYGWIN/"
echo " MINGW/OS2/DOS/HAIKU" echo " MINGW/OS2/DOS/HAIKU"
echo "" echo ""
echo "Paths:" echo "Paths:"
@ -3908,8 +3867,6 @@ showhelp() {
echo " --with-midi=midi define which midi-player to use" echo " --with-midi=midi define which midi-player to use"
echo " --with-midi-arg=arg define which args to use for the" echo " --with-midi-arg=arg define which args to use for the"
echo " midi-player" echo " midi-player"
echo " --with-libtimidity[=\"pkg-config libtimidity\"]"
echo " enables libtimidity support"
echo " --with-fluidsynth enables fluidsynth support" echo " --with-fluidsynth enables fluidsynth support"
echo " --with-allegro[=\"pkg-config allegro\"]" echo " --with-allegro[=\"pkg-config allegro\"]"
echo " enables Allegro video driver support" echo " enables Allegro video driver support"

10
configure vendored

@ -117,17 +117,15 @@ AWKCOMMAND='
if ($0 == "AI" && "'$enable_ai'" == "0") { next; } if ($0 == "AI" && "'$enable_ai'" == "0") { next; }
if ($0 == "COCOA" && "'$with_cocoa'" == "0") { next; } if ($0 == "COCOA" && "'$with_cocoa'" == "0") { next; }
if ($0 == "DOS" && "'$os'" != "DOS") { next; } if ($0 == "DOS" && "'$os'" != "DOS") { next; }
if ($0 == "BEOS" && "'$os'" != "BEOS" && if ($0 == "HAIKU" && "'$os'" != "HAIKU") { next; }
"'$os'" != "HAIKU") { next; }
if ($0 == "WIN32" && "'$os'" != "MINGW" && if ($0 == "WIN32" && "'$os'" != "MINGW" &&
"'$os'" != "CYGWIN" && "'$os'" != "MSVC") { next; } "'$os'" != "CYGWIN" && "'$os'" != "MSVC") { next; }
if ($0 == "MORPHOS" && "'$os'" != "MORPHOS") { next; }
if ($0 == "MSVC" && "'$os'" != "MSVC") { next; } if ($0 == "MSVC" && "'$os'" != "MSVC") { next; }
if ($0 == "DIRECTMUSIC" && "'$with_direct_music'" == "0") { next; } if ($0 == "DIRECTMUSIC" && "'$with_direct_music'" == "0") { next; }
if ($0 == "LIBTIMIDITY" && "'$libtimidity'" == "" ) { next; }
if ($0 == "FLUIDSYNTH" && "'$fluidsynth'" == "" ) { next; } if ($0 == "FLUIDSYNTH" && "'$fluidsynth'" == "" ) { next; }
if ($0 == "HAVE_THREAD" && "'$with_threads'" == "0") { next; } if ($0 == "USE_XAUDIO2" && "'$with_xaudio2'" == "0") { next; }
if ($0 == "SSE" && "'$with_sse'" != "1") { next; } if ($0 == "USE_THREADS" && "'$with_threads'" == "0") { next; }
if ($0 == "USE_SSE" && "'$with_sse'" != "1") { next; }
skip += 1; skip += 1;

@ -132,14 +132,14 @@ load_main_data() {
if ($0 == "DEDICATED" && "'$enable_dedicated'" != "1") { next; } if ($0 == "DEDICATED" && "'$enable_dedicated'" != "1") { next; }
if ($0 == "AI" && "'$enable_ai'" == "0") { next; } if ($0 == "AI" && "'$enable_ai'" == "0") { next; }
if ($0 == "COCOA" && "'$with_cocoa'" == "0") { next; } if ($0 == "COCOA" && "'$with_cocoa'" == "0") { next; }
if ($0 == "BEOS" && "'$os'" != "BEOS") { next; } if ($0 == "HAIKU" && "'$os'" != "HAIKU") { next; }
if ($0 == "WIN32" && "'$os'" != "MINGW" && if ($0 == "WIN32" && "'$os'" != "MINGW" &&
"'$os'" != "CYGWIN" && "'$os'" != "MSVC" ) { next; } "'$os'" != "CYGWIN" && "'$os'" != "MSVC" ) { next; }
if ($0 == "MSVC" && "'$os'" != "MSVC") { next; } if ($0 == "MSVC" && "'$os'" != "MSVC") { next; }
if ($0 == "DIRECTMUSIC" && "'$enable_directmusic'" != "1") { next; } if ($0 == "DIRECTMUSIC" && "'$enable_directmusic'" != "1") { next; }
if ($0 == "FLUIDSYNTH" && "'$enable_fluidsynth'" != "1") { next; } if ($0 == "FLUIDSYNTH" && "'$enable_fluidsynth'" != "1") { next; }
if ($0 == "LIBTIMIDITY" && "'$libtimidity'" == "" ) { next; } if ($0 == "USE_XAUDIO2" && "'$with_xaudio2'" == "0") { next; }
if ($0 == "HAVE_THREAD" && "'$with_threads'" == "0") { next; } if ($0 == "USE_THREADS" && "'$with_threads'" == "0") { next; }
skip += 1; skip += 1;

@ -179,8 +179,9 @@ Sub load_main_data(filename, ByRef vcxproj, ByRef filters, ByRef files)
line = "MSVC" Or _ line = "MSVC" Or _
line = "DIRECTMUSIC" Or _ line = "DIRECTMUSIC" Or _
line = "AI" Or _ line = "AI" Or _
line = "SSE" Or _ line = "USE_SSE" Or _
line = "HAVE_THREAD" _ line = "USE_XAUDIO2" Or _
line = "USE_THREADS" _
) Then skip = skip + 1 ) Then skip = skip + 1
deep = deep + 1 deep = deep + 1
Case "#" Case "#"

@ -107,7 +107,7 @@
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed> <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers> <OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling> <StringPooling>true</StringPooling>
<ExceptionHandling>Sync</ExceptionHandling> <ExceptionHandling>Sync</ExceptionHandling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
@ -172,7 +172,7 @@
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader> <PrecompiledHeader>
@ -230,7 +230,7 @@
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed> <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers> <OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling> <StringPooling>true</StringPooling>
<ExceptionHandling>Sync</ExceptionHandling> <ExceptionHandling>Sync</ExceptionHandling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
@ -293,7 +293,7 @@
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader> <PrecompiledHeader>
@ -462,6 +462,7 @@
<ClInclude Include="..\src\base_media_base.h" /> <ClInclude Include="..\src\base_media_base.h" />
<ClInclude Include="..\src\base_media_func.h" /> <ClInclude Include="..\src\base_media_func.h" />
<ClInclude Include="..\src\base_station_base.h" /> <ClInclude Include="..\src\base_station_base.h" />
<ClInclude Include="..\src\bitmap_type.h" />
<ClInclude Include="..\src\bmp.h" /> <ClInclude Include="..\src\bmp.h" />
<ClInclude Include="..\src\bridge.h" /> <ClInclude Include="..\src\bridge.h" />
<ClInclude Include="..\src\cargo_type.h" /> <ClInclude Include="..\src\cargo_type.h" />
@ -673,6 +674,7 @@
<ClInclude Include="..\src\station_base.h" /> <ClInclude Include="..\src\station_base.h" />
<ClInclude Include="..\src\station_func.h" /> <ClInclude Include="..\src\station_func.h" />
<ClInclude Include="..\src\station_gui.h" /> <ClInclude Include="..\src\station_gui.h" />
<ClInclude Include="..\src\station_kdtree.h" />
<ClInclude Include="..\src\station_type.h" /> <ClInclude Include="..\src\station_type.h" />
<ClInclude Include="..\src\statusbar_gui.h" /> <ClInclude Include="..\src\statusbar_gui.h" />
<ClInclude Include="..\src\stdafx.h" /> <ClInclude Include="..\src\stdafx.h" />
@ -709,6 +711,7 @@
<ClInclude Include="..\src\town.h" /> <ClInclude Include="..\src\town.h" />
<ClInclude Include="..\src\town_gui.h" /> <ClInclude Include="..\src\town_gui.h" />
<ClInclude Include="..\src\town_type.h" /> <ClInclude Include="..\src\town_type.h" />
<ClInclude Include="..\src\town_kdtree.h" />
<ClInclude Include="..\src\townname_func.h" /> <ClInclude Include="..\src\townname_func.h" />
<ClInclude Include="..\src\townname_type.h" /> <ClInclude Include="..\src\townname_type.h" />
<ClInclude Include="..\src\track_func.h" /> <ClInclude Include="..\src\track_func.h" />
@ -726,6 +729,7 @@
<ClInclude Include="..\src\vehicle_type.h" /> <ClInclude Include="..\src\vehicle_type.h" />
<ClInclude Include="..\src\vehiclelist.h" /> <ClInclude Include="..\src\vehiclelist.h" />
<ClInclude Include="..\src\viewport_func.h" /> <ClInclude Include="..\src\viewport_func.h" />
<ClInclude Include="..\src\viewport_kdtree.h" />
<ClInclude Include="..\src\viewport_sprite_sorter.h" /> <ClInclude Include="..\src\viewport_sprite_sorter.h" />
<ClInclude Include="..\src\viewport_type.h" /> <ClInclude Include="..\src\viewport_type.h" />
<ClInclude Include="..\src\water.h" /> <ClInclude Include="..\src\water.h" />
@ -758,6 +762,7 @@
<ClCompile Include="..\src\core\geometry_func.cpp" /> <ClCompile Include="..\src\core\geometry_func.cpp" />
<ClInclude Include="..\src\core\geometry_func.hpp" /> <ClInclude Include="..\src\core\geometry_func.hpp" />
<ClInclude Include="..\src\core\geometry_type.hpp" /> <ClInclude Include="..\src\core\geometry_type.hpp" />
<ClInclude Include="..\src\core\kdtree.hpp" />
<ClCompile Include="..\src\core\math_func.cpp" /> <ClCompile Include="..\src\core\math_func.cpp" />
<ClInclude Include="..\src\core\math_func.hpp" /> <ClInclude Include="..\src\core\math_func.hpp" />
<ClInclude Include="..\src\core\mem_func.hpp" /> <ClInclude Include="..\src\core\mem_func.hpp" />

@ -477,6 +477,9 @@
<ClInclude Include="..\src\base_station_base.h"> <ClInclude Include="..\src\base_station_base.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\bitmap_type.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\bmp.h"> <ClInclude Include="..\src\bmp.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
@ -1110,6 +1113,9 @@
<ClInclude Include="..\src\station_gui.h"> <ClInclude Include="..\src\station_gui.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\station_kdtree.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\station_type.h"> <ClInclude Include="..\src\station_type.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
@ -1218,6 +1224,9 @@
<ClInclude Include="..\src\town_type.h"> <ClInclude Include="..\src\town_type.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\town_kdtree.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\townname_func.h"> <ClInclude Include="..\src\townname_func.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
@ -1269,6 +1278,9 @@
<ClInclude Include="..\src\viewport_func.h"> <ClInclude Include="..\src\viewport_func.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\viewport_kdtree.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\viewport_sprite_sorter.h"> <ClInclude Include="..\src\viewport_sprite_sorter.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
@ -1365,6 +1377,9 @@
<ClInclude Include="..\src\core\geometry_type.hpp"> <ClInclude Include="..\src\core\geometry_type.hpp">
<Filter>Core Source Code</Filter> <Filter>Core Source Code</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\core\kdtree.hpp">
<Filter>Core Source Code</Filter>
</ClInclude>
<ClCompile Include="..\src\core\math_func.cpp"> <ClCompile Include="..\src\core\math_func.cpp">
<Filter>Core Source Code</Filter> <Filter>Core Source Code</Filter>
</ClCompile> </ClCompile>

@ -107,7 +107,7 @@
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed> <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers> <OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling> <StringPooling>true</StringPooling>
<ExceptionHandling>Sync</ExceptionHandling> <ExceptionHandling>Sync</ExceptionHandling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
@ -172,7 +172,7 @@
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader> <PrecompiledHeader>
@ -230,7 +230,7 @@
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed> <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers> <OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling> <StringPooling>true</StringPooling>
<ExceptionHandling>Sync</ExceptionHandling> <ExceptionHandling>Sync</ExceptionHandling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
@ -293,7 +293,7 @@
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader> <PrecompiledHeader>

@ -107,7 +107,7 @@
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed> <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers> <OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling> <StringPooling>true</StringPooling>
<ExceptionHandling>Sync</ExceptionHandling> <ExceptionHandling>Sync</ExceptionHandling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
@ -172,7 +172,7 @@
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader> <PrecompiledHeader>
@ -230,7 +230,7 @@
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed> <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers> <OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling> <StringPooling>true</StringPooling>
<ExceptionHandling>Sync</ExceptionHandling> <ExceptionHandling>Sync</ExceptionHandling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
@ -293,7 +293,7 @@
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader> <PrecompiledHeader>
@ -462,6 +462,7 @@
<ClInclude Include="..\src\base_media_base.h" /> <ClInclude Include="..\src\base_media_base.h" />
<ClInclude Include="..\src\base_media_func.h" /> <ClInclude Include="..\src\base_media_func.h" />
<ClInclude Include="..\src\base_station_base.h" /> <ClInclude Include="..\src\base_station_base.h" />
<ClInclude Include="..\src\bitmap_type.h" />
<ClInclude Include="..\src\bmp.h" /> <ClInclude Include="..\src\bmp.h" />
<ClInclude Include="..\src\bridge.h" /> <ClInclude Include="..\src\bridge.h" />
<ClInclude Include="..\src\cargo_type.h" /> <ClInclude Include="..\src\cargo_type.h" />
@ -673,6 +674,7 @@
<ClInclude Include="..\src\station_base.h" /> <ClInclude Include="..\src\station_base.h" />
<ClInclude Include="..\src\station_func.h" /> <ClInclude Include="..\src\station_func.h" />
<ClInclude Include="..\src\station_gui.h" /> <ClInclude Include="..\src\station_gui.h" />
<ClInclude Include="..\src\station_kdtree.h" />
<ClInclude Include="..\src\station_type.h" /> <ClInclude Include="..\src\station_type.h" />
<ClInclude Include="..\src\statusbar_gui.h" /> <ClInclude Include="..\src\statusbar_gui.h" />
<ClInclude Include="..\src\stdafx.h" /> <ClInclude Include="..\src\stdafx.h" />
@ -709,6 +711,7 @@
<ClInclude Include="..\src\town.h" /> <ClInclude Include="..\src\town.h" />
<ClInclude Include="..\src\town_gui.h" /> <ClInclude Include="..\src\town_gui.h" />
<ClInclude Include="..\src\town_type.h" /> <ClInclude Include="..\src\town_type.h" />
<ClInclude Include="..\src\town_kdtree.h" />
<ClInclude Include="..\src\townname_func.h" /> <ClInclude Include="..\src\townname_func.h" />
<ClInclude Include="..\src\townname_type.h" /> <ClInclude Include="..\src\townname_type.h" />
<ClInclude Include="..\src\track_func.h" /> <ClInclude Include="..\src\track_func.h" />
@ -726,6 +729,7 @@
<ClInclude Include="..\src\vehicle_type.h" /> <ClInclude Include="..\src\vehicle_type.h" />
<ClInclude Include="..\src\vehiclelist.h" /> <ClInclude Include="..\src\vehiclelist.h" />
<ClInclude Include="..\src\viewport_func.h" /> <ClInclude Include="..\src\viewport_func.h" />
<ClInclude Include="..\src\viewport_kdtree.h" />
<ClInclude Include="..\src\viewport_sprite_sorter.h" /> <ClInclude Include="..\src\viewport_sprite_sorter.h" />
<ClInclude Include="..\src\viewport_type.h" /> <ClInclude Include="..\src\viewport_type.h" />
<ClInclude Include="..\src\water.h" /> <ClInclude Include="..\src\water.h" />
@ -758,6 +762,7 @@
<ClCompile Include="..\src\core\geometry_func.cpp" /> <ClCompile Include="..\src\core\geometry_func.cpp" />
<ClInclude Include="..\src\core\geometry_func.hpp" /> <ClInclude Include="..\src\core\geometry_func.hpp" />
<ClInclude Include="..\src\core\geometry_type.hpp" /> <ClInclude Include="..\src\core\geometry_type.hpp" />
<ClInclude Include="..\src\core\kdtree.hpp" />
<ClCompile Include="..\src\core\math_func.cpp" /> <ClCompile Include="..\src\core\math_func.cpp" />
<ClInclude Include="..\src\core\math_func.hpp" /> <ClInclude Include="..\src\core\math_func.hpp" />
<ClInclude Include="..\src\core\mem_func.hpp" /> <ClInclude Include="..\src\core\mem_func.hpp" />

@ -477,6 +477,9 @@
<ClInclude Include="..\src\base_station_base.h"> <ClInclude Include="..\src\base_station_base.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\bitmap_type.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\bmp.h"> <ClInclude Include="..\src\bmp.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
@ -1110,6 +1113,9 @@
<ClInclude Include="..\src\station_gui.h"> <ClInclude Include="..\src\station_gui.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\station_kdtree.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\station_type.h"> <ClInclude Include="..\src\station_type.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
@ -1218,6 +1224,9 @@
<ClInclude Include="..\src\town_type.h"> <ClInclude Include="..\src\town_type.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\town_kdtree.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\townname_func.h"> <ClInclude Include="..\src\townname_func.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
@ -1269,6 +1278,9 @@
<ClInclude Include="..\src\viewport_func.h"> <ClInclude Include="..\src\viewport_func.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\viewport_kdtree.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\viewport_sprite_sorter.h"> <ClInclude Include="..\src\viewport_sprite_sorter.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
@ -1365,6 +1377,9 @@
<ClInclude Include="..\src\core\geometry_type.hpp"> <ClInclude Include="..\src\core\geometry_type.hpp">
<Filter>Core Source Code</Filter> <Filter>Core Source Code</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\core\kdtree.hpp">
<Filter>Core Source Code</Filter>
</ClInclude>
<ClCompile Include="..\src\core\math_func.cpp"> <ClCompile Include="..\src\core\math_func.cpp">
<Filter>Core Source Code</Filter> <Filter>Core Source Code</Filter>
</ClCompile> </ClCompile>

@ -107,7 +107,7 @@
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed> <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers> <OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling> <StringPooling>true</StringPooling>
<ExceptionHandling>Sync</ExceptionHandling> <ExceptionHandling>Sync</ExceptionHandling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
@ -172,7 +172,7 @@
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader> <PrecompiledHeader>
@ -230,7 +230,7 @@
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed> <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers> <OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling> <StringPooling>true</StringPooling>
<ExceptionHandling>Sync</ExceptionHandling> <ExceptionHandling>Sync</ExceptionHandling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
@ -293,7 +293,7 @@
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader> <PrecompiledHeader>

@ -107,7 +107,7 @@
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed> <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers> <OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling> <StringPooling>true</StringPooling>
<ExceptionHandling>Sync</ExceptionHandling> <ExceptionHandling>Sync</ExceptionHandling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
@ -172,7 +172,7 @@
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader> <PrecompiledHeader>
@ -230,7 +230,7 @@
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed> <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers> <OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling> <StringPooling>true</StringPooling>
<ExceptionHandling>Sync</ExceptionHandling> <ExceptionHandling>Sync</ExceptionHandling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
@ -293,7 +293,7 @@
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader> <PrecompiledHeader>
@ -462,6 +462,7 @@
<ClInclude Include="..\src\base_media_base.h" /> <ClInclude Include="..\src\base_media_base.h" />
<ClInclude Include="..\src\base_media_func.h" /> <ClInclude Include="..\src\base_media_func.h" />
<ClInclude Include="..\src\base_station_base.h" /> <ClInclude Include="..\src\base_station_base.h" />
<ClInclude Include="..\src\bitmap_type.h" />
<ClInclude Include="..\src\bmp.h" /> <ClInclude Include="..\src\bmp.h" />
<ClInclude Include="..\src\bridge.h" /> <ClInclude Include="..\src\bridge.h" />
<ClInclude Include="..\src\cargo_type.h" /> <ClInclude Include="..\src\cargo_type.h" />
@ -673,6 +674,7 @@
<ClInclude Include="..\src\station_base.h" /> <ClInclude Include="..\src\station_base.h" />
<ClInclude Include="..\src\station_func.h" /> <ClInclude Include="..\src\station_func.h" />
<ClInclude Include="..\src\station_gui.h" /> <ClInclude Include="..\src\station_gui.h" />
<ClInclude Include="..\src\station_kdtree.h" />
<ClInclude Include="..\src\station_type.h" /> <ClInclude Include="..\src\station_type.h" />
<ClInclude Include="..\src\statusbar_gui.h" /> <ClInclude Include="..\src\statusbar_gui.h" />
<ClInclude Include="..\src\stdafx.h" /> <ClInclude Include="..\src\stdafx.h" />
@ -709,6 +711,7 @@
<ClInclude Include="..\src\town.h" /> <ClInclude Include="..\src\town.h" />
<ClInclude Include="..\src\town_gui.h" /> <ClInclude Include="..\src\town_gui.h" />
<ClInclude Include="..\src\town_type.h" /> <ClInclude Include="..\src\town_type.h" />
<ClInclude Include="..\src\town_kdtree.h" />
<ClInclude Include="..\src\townname_func.h" /> <ClInclude Include="..\src\townname_func.h" />
<ClInclude Include="..\src\townname_type.h" /> <ClInclude Include="..\src\townname_type.h" />
<ClInclude Include="..\src\track_func.h" /> <ClInclude Include="..\src\track_func.h" />
@ -726,6 +729,7 @@
<ClInclude Include="..\src\vehicle_type.h" /> <ClInclude Include="..\src\vehicle_type.h" />
<ClInclude Include="..\src\vehiclelist.h" /> <ClInclude Include="..\src\vehiclelist.h" />
<ClInclude Include="..\src\viewport_func.h" /> <ClInclude Include="..\src\viewport_func.h" />
<ClInclude Include="..\src\viewport_kdtree.h" />
<ClInclude Include="..\src\viewport_sprite_sorter.h" /> <ClInclude Include="..\src\viewport_sprite_sorter.h" />
<ClInclude Include="..\src\viewport_type.h" /> <ClInclude Include="..\src\viewport_type.h" />
<ClInclude Include="..\src\water.h" /> <ClInclude Include="..\src\water.h" />
@ -758,6 +762,7 @@
<ClCompile Include="..\src\core\geometry_func.cpp" /> <ClCompile Include="..\src\core\geometry_func.cpp" />
<ClInclude Include="..\src\core\geometry_func.hpp" /> <ClInclude Include="..\src\core\geometry_func.hpp" />
<ClInclude Include="..\src\core\geometry_type.hpp" /> <ClInclude Include="..\src\core\geometry_type.hpp" />
<ClInclude Include="..\src\core\kdtree.hpp" />
<ClCompile Include="..\src\core\math_func.cpp" /> <ClCompile Include="..\src\core\math_func.cpp" />
<ClInclude Include="..\src\core\math_func.hpp" /> <ClInclude Include="..\src\core\math_func.hpp" />
<ClInclude Include="..\src\core\mem_func.hpp" /> <ClInclude Include="..\src\core\mem_func.hpp" />

@ -477,6 +477,9 @@
<ClInclude Include="..\src\base_station_base.h"> <ClInclude Include="..\src\base_station_base.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\bitmap_type.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\bmp.h"> <ClInclude Include="..\src\bmp.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
@ -1110,6 +1113,9 @@
<ClInclude Include="..\src\station_gui.h"> <ClInclude Include="..\src\station_gui.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\station_kdtree.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\station_type.h"> <ClInclude Include="..\src\station_type.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
@ -1218,6 +1224,9 @@
<ClInclude Include="..\src\town_type.h"> <ClInclude Include="..\src\town_type.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\town_kdtree.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\townname_func.h"> <ClInclude Include="..\src\townname_func.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
@ -1269,6 +1278,9 @@
<ClInclude Include="..\src\viewport_func.h"> <ClInclude Include="..\src\viewport_func.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\viewport_kdtree.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\src\viewport_sprite_sorter.h"> <ClInclude Include="..\src\viewport_sprite_sorter.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
@ -1365,6 +1377,9 @@
<ClInclude Include="..\src\core\geometry_type.hpp"> <ClInclude Include="..\src\core\geometry_type.hpp">
<Filter>Core Source Code</Filter> <Filter>Core Source Code</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="..\src\core\kdtree.hpp">
<Filter>Core Source Code</Filter>
</ClInclude>
<ClCompile Include="..\src\core\math_func.cpp"> <ClCompile Include="..\src\core\math_func.cpp">
<Filter>Core Source Code</Filter> <Filter>Core Source Code</Filter>
</ClCompile> </ClCompile>

@ -107,7 +107,7 @@
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed> <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers> <OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling> <StringPooling>true</StringPooling>
<ExceptionHandling>Sync</ExceptionHandling> <ExceptionHandling>Sync</ExceptionHandling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
@ -172,7 +172,7 @@
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader> <PrecompiledHeader>
@ -230,7 +230,7 @@
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed> <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers> <OmitFramePointers>true</OmitFramePointers>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;WITH_ASSERT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling> <StringPooling>true</StringPooling>
<ExceptionHandling>Sync</ExceptionHandling> <ExceptionHandling>Sync</ExceptionHandling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary> <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
@ -293,7 +293,7 @@
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking> <FunctionLevelLinking>true</FunctionLevelLinking>
<AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\objs\langs;..\objs\settings;..\src\3rdparty\squirrel\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_XAUDIO2;WITH_SSE;WITH_ZLIB;WITH_LZO;WITH_LIBLZMA;WITH_PNG;WITH_FREETYPE;WITH_UNISCRIBE;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR="OpenTTD";_SQ64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader> <PrecompiledHeader>

@ -125,8 +125,8 @@ townname.cpp
vehicle.cpp vehicle.cpp
vehiclelist.cpp vehiclelist.cpp
viewport.cpp viewport.cpp
#if SSE #if USE_SSE
viewport_sprite_sorter_sse4.cpp viewport_sprite_sorter_sse4.cpp
#end #end
waypoint.cpp waypoint.cpp
widget.cpp widget.cpp
@ -150,6 +150,7 @@ autoslope.h
base_media_base.h base_media_base.h
base_media_func.h base_media_func.h
base_station_base.h base_station_base.h
bitmap_type.h
bmp.h bmp.h
bridge.h bridge.h
cargo_type.h cargo_type.h
@ -361,6 +362,7 @@ spritecache.h
station_base.h station_base.h
station_func.h station_func.h
station_gui.h station_gui.h
station_kdtree.h
station_type.h station_type.h
statusbar_gui.h statusbar_gui.h
stdafx.h stdafx.h
@ -397,6 +399,7 @@ toolbar_gui.h
town.h town.h
town_gui.h town_gui.h
town_type.h town_type.h
town_kdtree.h
townname_func.h townname_func.h
townname_type.h townname_type.h
track_func.h track_func.h
@ -414,6 +417,7 @@ vehicle_gui_base.h
vehicle_type.h vehicle_type.h
vehiclelist.h vehiclelist.h
viewport_func.h viewport_func.h
viewport_kdtree.h
viewport_sprite_sorter.h viewport_sprite_sorter.h
viewport_type.h viewport_type.h
water.h water.h
@ -434,20 +438,19 @@ zoom_type.h
zoning.h zoning.h
#if WIN32 #if WIN32
#else #else
music/bemidi.h music/bemidi.h
music/cocoa_m.h music/cocoa_m.h
music/extmidi.h music/extmidi.h
music/libtimidity.h music/fluidsynth.h
music/fluidsynth.h music/os2_m.h
music/os2_m.h music/qtmidi.h
music/qtmidi.h os/macosx/macos.h
os/macosx/macos.h os/macosx/osx_stdafx.h
os/macosx/osx_stdafx.h os/macosx/splash.h
os/macosx/splash.h os/macosx/string_osx.h
os/macosx/string_osx.h sound/cocoa_s.h
sound/cocoa_s.h video/cocoa/cocoa_keys.h
video/cocoa/cocoa_keys.h video/cocoa/cocoa_v.h
video/cocoa/cocoa_v.h
#end #end
# Core Source Code # Core Source Code
@ -465,6 +468,7 @@ core/enum_type.hpp
core/geometry_func.cpp core/geometry_func.cpp
core/geometry_func.hpp core/geometry_func.hpp
core/geometry_type.hpp core/geometry_type.hpp
core/kdtree.hpp
core/math_func.cpp core/math_func.cpp
core/math_func.hpp core/math_func.hpp
core/mem_func.hpp core/mem_func.hpp
@ -968,36 +972,36 @@ script/api/script_window.cpp
# Blitters # Blitters
#if DEDICATED #if DEDICATED
#else #else
blitter/32bpp_anim.cpp blitter/32bpp_anim.cpp
blitter/32bpp_anim.hpp blitter/32bpp_anim.hpp
#if SSE #if USE_SSE
blitter/32bpp_anim_sse2.cpp blitter/32bpp_anim_sse2.cpp
blitter/32bpp_anim_sse2.hpp blitter/32bpp_anim_sse2.hpp
blitter/32bpp_anim_sse4.cpp blitter/32bpp_anim_sse4.cpp
blitter/32bpp_anim_sse4.hpp blitter/32bpp_anim_sse4.hpp
#end #end
blitter/32bpp_base.cpp blitter/32bpp_base.cpp
blitter/32bpp_base.hpp blitter/32bpp_base.hpp
blitter/32bpp_optimized.cpp blitter/32bpp_optimized.cpp
blitter/32bpp_optimized.hpp blitter/32bpp_optimized.hpp
blitter/32bpp_simple.cpp blitter/32bpp_simple.cpp
blitter/32bpp_simple.hpp blitter/32bpp_simple.hpp
#if SSE #if USE_SSE
blitter/32bpp_sse_func.hpp blitter/32bpp_sse_func.hpp
blitter/32bpp_sse_type.h blitter/32bpp_sse_type.h
blitter/32bpp_sse2.cpp blitter/32bpp_sse2.cpp
blitter/32bpp_sse2.hpp blitter/32bpp_sse2.hpp
blitter/32bpp_sse4.cpp blitter/32bpp_sse4.cpp
blitter/32bpp_sse4.hpp blitter/32bpp_sse4.hpp
blitter/32bpp_ssse3.cpp blitter/32bpp_ssse3.cpp
blitter/32bpp_ssse3.hpp blitter/32bpp_ssse3.hpp
#end #end
blitter/8bpp_base.cpp blitter/8bpp_base.cpp
blitter/8bpp_base.hpp blitter/8bpp_base.hpp
blitter/8bpp_optimized.cpp blitter/8bpp_optimized.cpp
blitter/8bpp_optimized.hpp blitter/8bpp_optimized.hpp
blitter/8bpp_simple.cpp blitter/8bpp_simple.cpp
blitter/8bpp_simple.hpp blitter/8bpp_simple.hpp
#end #end
blitter/base.hpp blitter/base.hpp
blitter/common.hpp blitter/common.hpp
@ -1140,67 +1144,63 @@ video/dedicated_v.cpp
video/null_v.cpp video/null_v.cpp
#if DEDICATED #if DEDICATED
#else #else
#if ALLEGRO #if ALLEGRO
video/allegro_v.cpp video/allegro_v.cpp
#end #end
#if SDL #if SDL
video/sdl_v.cpp video/sdl_v.cpp
#end #end
#if WIN32 #if WIN32
video/win32_v.cpp video/win32_v.cpp
#end #end
#end #end
# Music # Music
#if DEDICATED #if DEDICATED
#else #else
#if ALLEGRO #if ALLEGRO
music/allegro_m.cpp music/allegro_m.cpp
#end #end
#if DIRECTMUSIC #if DIRECTMUSIC
music/dmusic.cpp music/dmusic.cpp
#end #end
#end #end
music/null_m.cpp music/null_m.cpp
music/midifile.cpp music/midifile.cpp
#if DEDICATED #if DEDICATED
#else #else
#if WIN32 #if WIN32
music/win32_m.cpp music/win32_m.cpp
#else
#if DOS
#else #else
#if MORPHOS #if DOS
#else #else
music/extmidi.cpp music/extmidi.cpp
#end #end
#end #end
#end #if HAIKU
#if BEOS music/bemidi.cpp
music/bemidi.cpp #end
#end #if FLUIDSYNTH
#if LIBTIMIDITY music/fluidsynth.cpp
music/libtimidity.cpp #end
#end
#if FLUIDSYNTH
music/fluidsynth.cpp
#end
#end #end
# Sound # Sound
sound/null_s.cpp sound/null_s.cpp
#if DEDICATED #if DEDICATED
#else #else
#if ALLEGRO #if ALLEGRO
sound/allegro_s.cpp sound/allegro_s.cpp
#end #end
#if SDL #if SDL
sound/sdl_s.cpp sound/sdl_s.cpp
#end #end
#if WIN32 #if WIN32
sound/win32_s.cpp sound/win32_s.cpp
sound/xaudio2_s.cpp #if USE_XAUDIO2
#end sound/xaudio2_s.cpp
#end
#end
#end #end
#if OSX #if OSX
@ -1235,18 +1235,14 @@ sound/null_s.cpp
# Threading # Threading
thread/thread.h thread/thread.h
#if HAVE_THREAD #if USE_THREADS
#if WIN32 #if WIN32
thread/thread_win32.cpp thread/thread_win32.cpp
#else #else
#if OS2 #if OS2
thread/thread_os2.cpp thread/thread_os2.cpp
#else #else
#if MORPHOS thread/thread_pthread.cpp
thread/thread_morphos.cpp
#else
thread/thread_pthread.cpp
#end
#end #end
#end #end
#else #else

@ -0,0 +1,120 @@
/* $Id$ */
/*
* 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 bitmap_type.hpp Bitmap functions. */
#ifndef BITMAP_TYPE_HPP
#define BITMAP_TYPE_HPP
#include <vector>
/** Represents a tile area containing containing individually set tiles.
* Each tile must be contained within the preallocated area.
* A std::vector<bool> is used to mark which tiles are contained.
*/
class BitmapTileArea : public TileArea {
protected:
std::vector<bool> data;
inline uint Index(uint x, uint y) const { return y * this->w + x; }
inline uint Index(TileIndex tile) const { return Index(TileX(tile) - TileX(this->tile), TileY(tile) - TileY(this->tile)); }
public:
BitmapTileArea()
{
this->tile = INVALID_TILE;
this->w = 0;
this->h = 0;
}
/**
* Reset and clear the BitmapTileArea.
*/
void Reset()
{
this->tile = INVALID_TILE;
this->w = 0;
this->h = 0;
this->data.clear();
}
/**
* Initialize the BitmapTileArea with the specified Rect.
* @param rect Rect to use.
*/
void Initialize(Rect r)
{
this->tile = TileXY(r.left, r.top);
this->w = r.right - r.left + 1;
this->h = r.bottom - r.top + 1;
this->data.clear();
this->data.resize(Index(w, h));
}
/**
* Add a tile as part of the tile area.
* @param tile Tile to add.
*/
inline void SetTile(TileIndex tile)
{
assert(this->Contains(tile));
this->data[Index(tile)] = true;
}
/**
* Clear a tile from the tile area.
* @param tile Tile to clear
*/
inline void ClrTile(TileIndex tile)
{
assert(this->Contains(tile));
this->data[Index(tile)] = false;
}
/**
* Test if a tile is part of the tile area.
* @param tile Tile to check
*/
inline bool HasTile(TileIndex tile) const
{
return this->Contains(tile) && this->data[Index(tile)];
}
};
/** Iterator to iterate over all tiles belonging to a bitmaptilearea. */
class BitmapTileIterator : public OrthogonalTileIterator {
protected:
const BitmapTileArea *bitmap;
public:
/**
* Construct the iterator.
* @param bitmap BitmapTileArea to iterate.
*/
BitmapTileIterator(const BitmapTileArea &bitmap) : OrthogonalTileIterator(bitmap), bitmap(&bitmap)
{
if (!this->bitmap->HasTile(TileIndex(this->tile))) ++(*this);
}
inline TileIterator& operator ++()
{
(*this).OrthogonalTileIterator::operator++();
while (this->tile != INVALID_TILE && !this->bitmap->HasTile(TileIndex(this->tile))) {
(*this).OrthogonalTileIterator::operator++();
}
return *this;
}
virtual TileIterator *Clone() const
{
return new BitmapTileIterator(*this);
}
};
#endif /* BITMAP_TYPE_HPP */

@ -150,9 +150,9 @@ void AddCargoDelivery(CargoID cargo_type, CompanyID company, uint32 amount, Sour
if (iter != _cargo_deliveries.end()) iter->second += amount; if (iter != _cargo_deliveries.end()) iter->second += amount;
/* Industry delivery. */ /* Industry delivery. */
for (const Industry * const *ip = st->industries_near.Begin(); ip != st->industries_near.End(); ip++) { for (Industry *ind : st->industries_near) {
if ((*ip)->index != dest) continue; if (ind->index != dest) continue;
CargoMonitorID num = EncodeCargoIndustryMonitor(company, cargo_type, (*ip)->index); CargoMonitorID num = EncodeCargoIndustryMonitor(company, cargo_type, ind->index);
CargoMonitorMap::iterator iter = _cargo_deliveries.find(num); CargoMonitorMap::iterator iter = _cargo_deliveries.find(num);
if (iter != _cargo_deliveries.end()) iter->second += amount; if (iter != _cargo_deliveries.end()) iter->second += amount;
} }

@ -523,8 +523,6 @@ class DropDownListColourItem : public DropDownListItem {
public: public:
DropDownListColourItem(int result, bool masked) : DropDownListItem(result, masked) {} DropDownListColourItem(int result, bool masked) : DropDownListItem(result, masked) {}
virtual ~DropDownListColourItem() {}
StringID String() const StringID String() const
{ {
return this->result >= COLOUR_END ? STR_COLOUR_DEFAULT : _colour_dropdown[this->result]; return this->result >= COLOUR_END ? STR_COLOUR_DEFAULT : _colour_dropdown[this->result];
@ -540,7 +538,7 @@ public:
return true; return true;
} }
void Draw(int left, int right, int top, int bottom, bool sel, int bg_colour) const void Draw(int left, int right, int top, int bottom, bool sel, Colours bg_colour) const
{ {
bool rtl = _current_text_dir == TD_RTL; bool rtl = _current_text_dir == TD_RTL;
int height = bottom - top; int height = bottom - top;

@ -25,24 +25,8 @@
*/ */
template <typename T, size_t length> template <typename T, size_t length>
struct SmallStackSafeStackAlloc { struct SmallStackSafeStackAlloc {
#if !defined(__NDS__)
/** Storing the data on the stack */ /** Storing the data on the stack */
T data[length]; T data[length];
#else
/** Storing it on the heap */
T *data;
/** The length (in elements) of data in this allocator. */
size_t len;
/** Allocating the memory */
SmallStackSafeStackAlloc() : data(MallocT<T>(length)), len(length) {}
/** And freeing when it goes out of scope */
~SmallStackSafeStackAlloc()
{
free(data);
}
#endif
/** /**
* Gets a pointer to the data stored in this wrapper. * Gets a pointer to the data stored in this wrapper.
@ -69,11 +53,7 @@ struct SmallStackSafeStackAlloc {
*/ */
inline T *EndOf() inline T *EndOf()
{ {
#if !defined(__NDS__)
return endof(data); return endof(data);
#else
return &data[len];
#endif
} }
}; };

@ -26,7 +26,7 @@
#define TTD_BIG_ENDIAN 1 #define TTD_BIG_ENDIAN 1
/* Windows has always LITTLE_ENDIAN */ /* Windows has always LITTLE_ENDIAN */
#if defined(_WIN32) || defined(__OS2__) #if defined(_WIN32) || defined(__OS2__) || defined(__HAIKU__) || defined(__DJGPP__)
# define TTD_ENDIAN TTD_LITTLE_ENDIAN # define TTD_ENDIAN TTD_LITTLE_ENDIAN
#elif defined(OSX) #elif defined(OSX)
# include <sys/types.h> # include <sys/types.h>

@ -12,11 +12,6 @@
#ifndef GEOMETRY_TYPE_HPP #ifndef GEOMETRY_TYPE_HPP
#define GEOMETRY_TYPE_HPP #define GEOMETRY_TYPE_HPP
#if defined(__AMIGA__)
/* AmigaOS already has a Point declared */
#define Point OTTD_Point
#endif /* __AMIGA__ */
#if defined(__APPLE__) #if defined(__APPLE__)
/* Mac OS X already has both Rect and Point declared */ /* Mac OS X already has both Rect and Point declared */
#define Rect OTTD_Rect #define Rect OTTD_Rect

@ -0,0 +1,473 @@
/*
* 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 kdtree.hpp K-d tree template specialised for 2-dimensional Manhattan geometry */
#ifndef KDTREE_HPP
#define KDTREE_HPP
#include "../stdafx.h"
#include <vector>
#include <algorithm>
#include <limits>
/**
* K-dimensional tree, specialised for 2-dimensional space.
* This is not intended as a primary storage of data, but as an index into existing data.
* Usually the type stored by this tree should be an index into an existing array.
*
* This implementation assumes Manhattan distances are used.
*
* Be careful when using this in game code, depending on usage pattern, the tree shape may
* end up different for different clients in multiplayer, causing iteration order to differ
* and possibly having elements returned in different order. The using code should be designed
* to produce the same result regardless of iteration order.
*
* The element type T must be less-than comparable for FindNearest to work.
*
* @tparam T Type stored in the tree, should be cheap to copy.
* @tparam TxyFunc Functor type to extract coordinate from a T value and dimension index (0 or 1).
* @tparam CoordT Type of coordinate values extracted via TxyFunc.
* @tparam DistT Type to use for representing distance values.
*/
template <typename T, typename TxyFunc, typename CoordT, typename DistT>
class Kdtree {
/** Type of a node in the tree */
struct node {
T element; ///< Element stored at node
size_t left; ///< Index of node to the left, INVALID_NODE if none
size_t right; ///< Index of node to the right, INVALID_NODE if none
node(T element) : element(element), left(INVALID_NODE), right(INVALID_NODE) { }
};
static const size_t INVALID_NODE = SIZE_MAX; ///< Index value indicating no-such-node
std::vector<node> nodes; ///< Pool of all nodes in the tree
std::vector<size_t> free_list; ///< List of dead indices in the nodes vector
size_t root; ///< Index of root node
TxyFunc xyfunc; ///< Functor to extract a coordinate from an element
size_t unbalanced; ///< Number approximating how unbalanced the tree might be
/** Create one new node in the tree, return its index in the pool */
size_t AddNode(const T &element)
{
if (this->free_list.size() == 0) {
this->nodes.emplace_back(element);
return this->nodes.size() - 1;
} else {
size_t newidx = this->free_list.back();
this->free_list.pop_back();
this->nodes[newidx] = node{ element };
return newidx;
}
}
/** Find a coordinate value to split a range of elements at */
template <typename It>
CoordT SelectSplitCoord(It begin, It end, int level)
{
It mid = begin + (end - begin) / 2;
std::nth_element(begin, mid, end, [&](T a, T b) { return this->xyfunc(a, level % 2) < this->xyfunc(b, level % 2); });
return this->xyfunc(*mid, level % 2);
}
/** Construct a subtree from elements between begin and end iterators, return index of root */
template <typename It>
size_t BuildSubtree(It begin, It end, int level)
{
ptrdiff_t count = end - begin;
if (count == 0) {
return INVALID_NODE;
} else if (count == 1) {
return this->AddNode(*begin);
} else if (count > 1) {
CoordT split_coord = SelectSplitCoord(begin, end, level);
It split = std::partition(begin, end, [&](T v) { return this->xyfunc(v, level % 2) < split_coord; });
size_t newidx = this->AddNode(*split);
this->nodes[newidx].left = this->BuildSubtree(begin, split, level + 1);
this->nodes[newidx].right = this->BuildSubtree(split + 1, end, level + 1);
return newidx;
} else {
NOT_REACHED();
}
}
/** Rebuild the tree with all existing elements, optionally adding or removing one more */
bool Rebuild(const T *include_element, const T *exclude_element)
{
size_t initial_count = this->Count();
if (initial_count < 8) return false; // arbitrary value for "not worth rebalancing"
T root_element = this->nodes[this->root].element;
std::vector<T> elements = this->FreeSubtree(this->root);
elements.push_back(root_element);
if (include_element != NULL) {
elements.push_back(*include_element);
initial_count++;
}
if (exclude_element != NULL) {
typename std::vector<T>::iterator removed = std::remove(elements.begin(), elements.end(), *exclude_element);
elements.erase(removed, elements.end());
initial_count--;
}
this->Build(elements.begin(), elements.end());
assert(initial_count == this->Count());
return true;
}
/** Insert one element in the tree somewhere below node_idx */
void InsertRecursive(const T &element, size_t node_idx, int level)
{
/* Dimension index of current level */
int dim = level % 2;
/* Node reference */
node &n = this->nodes[node_idx];
/* Coordinate of element splitting at this node */
CoordT nc = this->xyfunc(n.element, dim);
/* Coordinate of the new element */
CoordT ec = this->xyfunc(element, dim);
/* Which side to insert on */
size_t &next = (ec < nc) ? n.left : n.right;
if (next == INVALID_NODE) {
/* New leaf */
size_t newidx = this->AddNode(element);
/* Vector may have been reallocated at this point, n and next are invalid */
node &nn = this->nodes[node_idx];
if (ec < nc) nn.left = newidx; else nn.right = newidx;
} else {
this->InsertRecursive(element, next, level + 1);
}
}
/**
* Free all children of the given node
* @return Collection of elements that were removed from tree.
*/
std::vector<T> FreeSubtree(size_t node_idx)
{
std::vector<T> subtree_elements;
node &n = this->nodes[node_idx];
/* We'll be appending items to the free_list, get index of our first item */
size_t first_free = this->free_list.size();
/* Prepare the descent with our children */
if (n.left != INVALID_NODE) this->free_list.push_back(n.left);
if (n.right != INVALID_NODE) this->free_list.push_back(n.right);
n.left = n.right = INVALID_NODE;
/* Recursively free the nodes being collected */
for (size_t i = first_free; i < this->free_list.size(); i++) {
node &fn = this->nodes[this->free_list[i]];
subtree_elements.push_back(fn.element);
if (fn.left != INVALID_NODE) this->free_list.push_back(fn.left);
if (fn.right != INVALID_NODE) this->free_list.push_back(fn.right);
fn.left = fn.right = INVALID_NODE;
}
return subtree_elements;
}
/**
* Find and remove one element from the tree.
* @param element The element to search for
* @param node_idx Sub-tree to search in
* @param level Current depth in the tree
* @return New root node index of the sub-tree processed
*/
size_t RemoveRecursive(const T &element, size_t node_idx, int level)
{
/* Node reference */
node &n = this->nodes[node_idx];
if (n.element == element) {
/* Remove this one */
this->free_list.push_back(node_idx);
if (n.left == INVALID_NODE && n.right == INVALID_NODE) {
/* Simple case, leaf, new child node for parent is "none" */
return INVALID_NODE;
} else {
/* Complex case, rebuild the sub-tree */
std::vector<T> subtree_elements = this->FreeSubtree(node_idx);
return this->BuildSubtree(subtree_elements.begin(), subtree_elements.end(), level);;
}
} else {
/* Search in a sub-tree */
/* Dimension index of current level */
int dim = level % 2;
/* Coordinate of element splitting at this node */
CoordT nc = this->xyfunc(n.element, dim);
/* Coordinate of the element being removed */
CoordT ec = this->xyfunc(element, dim);
/* Which side to remove from */
size_t next = (ec < nc) ? n.left : n.right;
assert(next != INVALID_NODE); // node must exist somewhere and must be found before a leaf is reached
/* Descend */
size_t new_branch = this->RemoveRecursive(element, next, level + 1);
if (new_branch != next) {
/* Vector may have been reallocated at this point, n and next are invalid */
node &nn = this->nodes[node_idx];
if (ec < nc) nn.left = new_branch; else nn.right = new_branch;
}
return node_idx;
}
}
DistT ManhattanDistance(const T &element, CoordT x, CoordT y) const
{
return abs((DistT)this->xyfunc(element, 0) - (DistT)x) + abs((DistT)this->xyfunc(element, 1) - (DistT)y);
}
/** A data element and its distance to a searched-for point */
using node_distance = std::pair<T, DistT>;
/** Ordering function for node_distance objects, elements with equal distance are ordered by less-than comparison */
static node_distance SelectNearestNodeDistance(const node_distance &a, const node_distance &b)
{
if (a.second < b.second) return a;
if (b.second < a.second) return b;
if (a.first < b.first) return a;
if (b.first < a.first) return b;
NOT_REACHED(); // a.first == b.first: same element must not be inserted twice
}
/** Search a sub-tree for the element nearest to a given point */
node_distance FindNearestRecursive(CoordT xy[2], size_t node_idx, int level) const
{
/* Dimension index of current level */
int dim = level % 2;
/* Node reference */
const node &n = this->nodes[node_idx];
/* Coordinate of element splitting at this node */
CoordT c = this->xyfunc(n.element, dim);
/* This node's distance to target */
DistT thisdist = ManhattanDistance(n.element, xy[0], xy[1]);
/* Assume this node is the best choice for now */
node_distance best = std::make_pair(n.element, thisdist);
/* Next node to visit */
size_t next = (xy[dim] < c) ? n.left : n.right;
if (next != INVALID_NODE) {
/* Check if there is a better node down the tree */
best = SelectNearestNodeDistance(best, this->FindNearestRecursive(xy, next, level + 1));
}
/* Check if the distance from current best is worse than distance from target to splitting line,
* if it is we also need to check the other side of the split. */
size_t opposite = (xy[dim] >= c) ? n.left : n.right; // reverse of above
if (opposite != INVALID_NODE && best.second >= abs((int)xy[dim] - (int)c)) {
node_distance other_candidate = this->FindNearestRecursive(xy, opposite, level + 1);
best = SelectNearestNodeDistance(best, other_candidate);
}
return best;
}
template <typename Outputter>
void FindContainedRecursive(CoordT p1[2], CoordT p2[2], size_t node_idx, int level, Outputter outputter) const
{
/* Dimension index of current level */
int dim = level % 2;
/* Node reference */
const node &n = this->nodes[node_idx];
/* Coordinate of element splitting at this node */
CoordT ec = this->xyfunc(n.element, dim);
/* Opposite coordinate of element */
CoordT oc = this->xyfunc(n.element, 1 - dim);
/* Test if this element is within rectangle */
if (ec >= p1[dim] && ec < p2[dim] && oc >= p1[1 - dim] && oc < p2[1 - dim]) outputter(n.element);
/* Recurse left if part of rectangle is left of split */
if (p1[dim] < ec && n.left != INVALID_NODE) this->FindContainedRecursive(p1, p2, n.left, level + 1, outputter);
/* Recurse right if part of rectangle is right of split */
if (p2[dim] > ec && n.right != INVALID_NODE) this->FindContainedRecursive(p1, p2, n.right, level + 1, outputter);
}
/** Debugging function, counts number of occurrences of an element regardless of its correct position in the tree */
size_t CountValue(const T &element, size_t node_idx) const
{
if (node_idx == INVALID_NODE) return 0;
const node &n = this->nodes[node_idx];
return CountValue(element, n.left) + CountValue(element, n.right) + ((n.element == element) ? 1 : 0);
}
void IncrementUnbalanced(size_t amount = 1)
{
this->unbalanced += amount;
}
/** Check if the entire tree is in need of rebuilding */
bool IsUnbalanced()
{
size_t count = this->Count();
if (count < 8) return false;
return this->unbalanced > this->Count() / 4;
}
/** Verify that the invariant is true for a sub-tree, assert if not */
void CheckInvariant(size_t node_idx, int level, CoordT min_x, CoordT max_x, CoordT min_y, CoordT max_y)
{
if (node_idx == INVALID_NODE) return;
const node &n = this->nodes[node_idx];
CoordT cx = this->xyfunc(n.element, 0);
CoordT cy = this->xyfunc(n.element, 1);
assert(cx >= min_x);
assert(cx < max_x);
assert(cy >= min_y);
assert(cy < max_y);
if (level % 2 == 0) {
// split in dimension 0 = x
CheckInvariant(n.left, level + 1, min_x, cx, min_y, max_y);
CheckInvariant(n.right, level + 1, cx, max_x, min_y, max_y);
} else {
// split in dimension 1 = y
CheckInvariant(n.left, level + 1, min_x, max_x, min_y, cy);
CheckInvariant(n.right, level + 1, min_x, max_x, cy, max_y);
}
}
/** Verify the invariant for the entire tree, does nothing unless KDTREE_DEBUG is defined */
void CheckInvariant()
{
#ifdef KDTREE_DEBUG
CheckInvariant(this->root, 0, std::numeric_limits<CoordT>::min(), std::numeric_limits<CoordT>::max(), std::numeric_limits<CoordT>::min(), std::numeric_limits<CoordT>::max());
#endif
}
public:
/** Construct a new Kdtree with the given xyfunc */
Kdtree(TxyFunc xyfunc) : root(INVALID_NODE), xyfunc(xyfunc), unbalanced(0) { }
/**
* Clear and rebuild the tree from a new sequence of elements,
* @tparam It Iterator type for element sequence.
* @param begin First element in sequence.
* @param end One past last element in sequence.
*/
template <typename It>
void Build(It begin, It end)
{
this->nodes.clear();
this->free_list.clear();
this->unbalanced = 0;
if (begin == end) return;
this->nodes.reserve(end - begin);
this->root = this->BuildSubtree(begin, end, 0);
CheckInvariant();
}
/**
* Reconstruct the tree with the same elements, letting it be fully balanced.
*/
void Rebuild()
{
this->Rebuild(NULL, NULL);
}
/**
* Insert a single element in the tree.
* Repeatedly inserting single elements may cause the tree to become unbalanced.
* Undefined behaviour if the element already exists in the tree.
*/
void Insert(const T &element)
{
if (this->Count() == 0) {
this->root = this->AddNode(element);
} else {
if (!this->IsUnbalanced() || !this->Rebuild(&element, NULL)) {
this->InsertRecursive(element, this->root, 0);
this->IncrementUnbalanced();
}
CheckInvariant();
}
}
/**
* Remove a single element from the tree, if it exists.
* Since elements are stored in interior nodes as well as leaf nodes, removing one may
* require a larger sub-tree to be re-built. Because of this, worst case run time is
* as bad as a full tree rebuild.
*/
void Remove(const T &element)
{
size_t count = this->Count();
if (count == 0) return;
if (!this->IsUnbalanced() || !this->Rebuild(NULL, &element)) {
/* If the removed element is the root node, this modifies this->root */
this->root = this->RemoveRecursive(element, this->root, 0);
this->IncrementUnbalanced();
}
CheckInvariant();
}
/** Get number of elements stored in tree */
size_t Count() const
{
assert(this->free_list.size() <= this->nodes.size());
return this->nodes.size() - this->free_list.size();
}
/**
* Find the element closest to given coordinate, in Manhattan distance.
* For multiple elements with the same distance, the one comparing smaller with
* a less-than comparison is chosen.
*/
T FindNearest(CoordT x, CoordT y) const
{
assert(this->Count() > 0);
CoordT xy[2] = { x, y };
return this->FindNearestRecursive(xy, this->root, 0).first;
}
/**
* Find all items contained within the given rectangle.
* @note Start coordinates are inclusive, end coordinates are exclusive. x1<x2 && y1<y2 is a precondition.
* @param x1 Start first coordinate, points found are greater or equals to this.
* @param y1 Start second coordinate, points found are greater or equals to this.
* @param x2 End first coordinate, points found are less than this.
* @param y2 End second coordinate, points found are less than this.
* @param outputter Callback used to return values from the search.
*/
template <typename Outputter>
void FindContained(CoordT x1, CoordT y1, CoordT x2, CoordT y2, Outputter outputter) const
{
assert(x1 < x2);
assert(y1 < y2);
if (this->Count() == 0) return;
CoordT p1[2] = { x1, y1 };
CoordT p2[2] = { x2, y2 };
this->FindContainedRecursive(p1, p2, this->root, 0, outputter);
}
/**
* Find all items contained within the given rectangle.
* @note End coordinates are exclusive, x1<x2 && y1<y2 is a precondition.
*/
std::vector<T> FindContained(CoordT x1, CoordT y1, CoordT x2, CoordT y2) const
{
std::vector<T> result;
this->FindContained(x1, y1, x2, y2, [&result](T e) {result.push_back(e); });
return result;
}
};
#endif

@ -56,10 +56,10 @@
# include <ft2build.h> # include <ft2build.h>
# include FT_FREETYPE_H # include FT_FREETYPE_H
#endif /* WITH_FREETYPE */ #endif /* WITH_FREETYPE */
#if defined(WITH_ICU_LAYOUT) || defined(WITH_ICU_SORT) #if defined(WITH_ICU_LX) || defined(WITH_ICU_I18N)
# include <unicode/uversion.h> # include <unicode/uversion.h>
#endif /* WITH_ICU_SORT || WITH_ICU_LAYOUT */ #endif /* WITH_ICU_LX || WITH_ICU_I18N */
#ifdef WITH_LZMA #ifdef WITH_LIBLZMA
# include <lzma.h> # include <lzma.h>
#endif #endif
#ifdef WITH_LZO #ifdef WITH_LZO
@ -264,21 +264,21 @@ char *CrashLog::LogLibraries(char *buffer, const char *last) const
buffer += seprintf(buffer, last, " FreeType: %d.%d.%d\n", major, minor, patch); buffer += seprintf(buffer, last, " FreeType: %d.%d.%d\n", major, minor, patch);
#endif /* WITH_FREETYPE */ #endif /* WITH_FREETYPE */
#if defined(WITH_ICU_LAYOUT) || defined(WITH_ICU_SORT) #if defined(WITH_ICU_LX) || defined(WITH_ICU_I18N)
/* 4 times 0-255, separated by dots (.) and a trailing '\0' */ /* 4 times 0-255, separated by dots (.) and a trailing '\0' */
char buf[4 * 3 + 3 + 1]; char buf[4 * 3 + 3 + 1];
UVersionInfo ver; UVersionInfo ver;
u_getVersion(ver); u_getVersion(ver);
u_versionToString(ver, buf); u_versionToString(ver, buf);
#ifdef WITH_ICU_SORT #ifdef WITH_ICU_I18N
buffer += seprintf(buffer, last, " ICU i18n: %s\n", buf); buffer += seprintf(buffer, last, " ICU i18n: %s\n", buf);
#endif #endif
#ifdef WITH_ICU_LAYOUT #ifdef WITH_ICU_LX
buffer += seprintf(buffer, last, " ICU lx: %s\n", buf); buffer += seprintf(buffer, last, " ICU lx: %s\n", buf);
#endif #endif
#endif /* WITH_ICU_SORT || WITH_ICU_LAYOUT */ #endif /* WITH_ICU_LX || WITH_ICU_I18N */
#ifdef WITH_LZMA #ifdef WITH_LIBLZMA
buffer += seprintf(buffer, last, " LZMA: %s\n", lzma_version_string()); buffer += seprintf(buffer, last, " LZMA: %s\n", lzma_version_string());
#endif #endif

@ -13,6 +13,7 @@
#define DEBUG_H #define DEBUG_H
#include "cpu.h" #include "cpu.h"
#include <chrono>
/* Debugging messages policy: /* Debugging messages policy:
* These should be the severities used for direct DEBUG() calls * These should be the severities used for direct DEBUG() calls
@ -86,21 +87,40 @@ const char *GetDebugString();
* *
* TIC() / TOC() creates its own block, so make sure not the mangle * TIC() / TOC() creates its own block, so make sure not the mangle
* it with another block. * it with another block.
*
* The output is counted in CPU cycles, and not comparable accross
* machines. Mainly useful for local optimisations.
**/ **/
#define TIC() {\ #define TIC() {\
uint64 _xxx_ = ottd_rdtsc();\ uint64 _xxx_ = ottd_rdtsc();\
static uint64 __sum__ = 0;\ static uint64 _sum_ = 0;\
static uint32 __i__ = 0; static uint32 _i_ = 0;
#define TOC(str, count)\ #define TOC(str, count)\
__sum__ += ottd_rdtsc() - _xxx_;\ _sum_ += ottd_rdtsc() - _xxx_;\
if (++__i__ == count) {\ if (++_i_ == count) {\
DEBUG(misc, 0, "[%s] " OTTD_PRINTF64 " [avg: %.1f]", str, __sum__, __sum__/(double)__i__);\ DEBUG(misc, 0, "[%s] " OTTD_PRINTF64 " [avg: %.1f]", str, _sum_, _sum_/(double)_i_);\
__i__ = 0;\ _i_ = 0;\
__sum__ = 0;\ _sum_ = 0;\
}\ }\
} }
/* Chrono based version. The output is in microseconds. */
#define TICC() {\
auto _start_ = std::chrono::high_resolution_clock::now();\
static uint64 _sum_ = 0;\
static uint32 _i_ = 0;
#define TOCC(str, _count_)\
_sum_ += (std::chrono::duration_cast<std::chrono::microseconds>(std::chrono::high_resolution_clock::now() - _start_)).count();\
if (++_i_ == _count_) {\
DEBUG(misc, 0, "[%s] " OTTD_PRINTF64 " us [avg: %.1f us]", str, _sum_, _sum_/(double)_i_);\
_i_ = 0;\
_sum_ = 0;\
}\
}
void ShowInfo(const char *str); void ShowInfo(const char *str);
void CDECL ShowInfoF(const char *str, ...) WARN_FORMAT(1, 2); void CDECL ShowInfoF(const char *str, ...) WARN_FORMAT(1, 2);

@ -16,16 +16,15 @@
char *_log_file = NULL; ///< File to reroute output of a forked OpenTTD to char *_log_file = NULL; ///< File to reroute output of a forked OpenTTD to
FILE *_log_fd = NULL; ///< File to reroute output of a forked OpenTTD to FILE *_log_fd = NULL; ///< File to reroute output of a forked OpenTTD to
#if defined(UNIX) && !defined(__MORPHOS__) #if defined(UNIX)
#include <unistd.h> #include <unistd.h>
#include "safeguards.h" #include "safeguards.h"
#if (defined(SUNOS) && !defined(_LP64) && !defined(_I32LPx)) || defined(__HAIKU__) #if defined(SUNOS) && !defined(_LP64) && !defined(_I32LPx)
/* Solaris has, in certain situation, pid_t defined as long, while in other /* Solaris has, in certain situation, pid_t defined as long, while in other
* cases it has it defined as int... this handles all cases nicely. * cases it has it defined as int... this handles all cases nicely.
* Haiku has also defined pid_t as a long.
*/ */
# define PRINTF_PID_T "%ld" # define PRINTF_PID_T "%ld"
#else #else
@ -71,7 +70,7 @@ void DedicatedFork()
#else #else
/** Empty helper function call for NOT(UNIX and not MORPHOS) systems */ /** Empty helper function call for NOT(UNIX) systems */
void DedicatedFork() {} void DedicatedFork() {}
#endif /* ENABLE_NETWORK */ #endif /* ENABLE_NETWORK */

@ -1076,8 +1076,9 @@ static uint DeliverGoodsToIndustry(const Station *st, CargoID cargo_type, uint n
uint accepted = 0; uint accepted = 0;
for (uint i = 0; i < st->industries_near.Length() && num_pieces != 0; i++) { for (Industry *ind : st->industries_near) {
Industry *ind = st->industries_near[i]; if (num_pieces == 0) break;
if (ind->index == source) continue; if (ind->index == source) continue;
uint cargo_index; uint cargo_index;

@ -29,7 +29,7 @@
#include <algorithm> #include <algorithm>
#ifdef WITH_XDG_BASEDIR #ifdef WITH_XDG_BASEDIR
#include "basedir.h" #include <basedir.h>
#endif #endif
#include "safeguards.h" #include "safeguards.h"
@ -539,16 +539,6 @@ void FioCreateDirectory(const char *name)
CreateDirectory(OTTD2FS(name), NULL); CreateDirectory(OTTD2FS(name), NULL);
#elif defined(OS2) && !defined(__INNOTEK_LIBC__) #elif defined(OS2) && !defined(__INNOTEK_LIBC__)
mkdir(OTTD2FS(name)); mkdir(OTTD2FS(name));
#elif defined(__MORPHOS__) || defined(__AMIGAOS__)
char buf[MAX_PATH];
strecpy(buf, name, lastof(buf));
size_t len = strlen(name) - 1;
if (buf[len] == '/') {
buf[len] = '\0'; // Kill pathsep, so mkdir() will not fail
}
mkdir(OTTD2FS(buf), 0755);
#else #else
mkdir(OTTD2FS(name), 0755); mkdir(OTTD2FS(name), 0755);
#endif #endif
@ -1066,7 +1056,7 @@ void DetermineBasePaths(const char *exe)
AppendPathSeparator(tmp, lastof(tmp)); AppendPathSeparator(tmp, lastof(tmp));
_searchpaths[SP_PERSONAL_DIR_XDG] = stredup(tmp); _searchpaths[SP_PERSONAL_DIR_XDG] = stredup(tmp);
#endif #endif
#if defined(__MORPHOS__) || defined(__AMIGA__) || defined(DOS) || defined(OS2) || !defined(WITH_PERSONAL_DIR) #if defined(DOS) || defined(OS2) || !defined(WITH_PERSONAL_DIR)
_searchpaths[SP_PERSONAL_DIR] = NULL; _searchpaths[SP_PERSONAL_DIR] = NULL;
#else #else
#ifdef __HAIKU__ #ifdef __HAIKU__
@ -1109,13 +1099,9 @@ void DetermineBasePaths(const char *exe)
_searchpaths[SP_SHARED_DIR] = NULL; _searchpaths[SP_SHARED_DIR] = NULL;
#endif #endif
#if defined(__MORPHOS__) || defined(__AMIGA__)
_searchpaths[SP_WORKING_DIR] = NULL;
#else
if (getcwd(tmp, MAX_PATH) == NULL) *tmp = '\0'; if (getcwd(tmp, MAX_PATH) == NULL) *tmp = '\0';
AppendPathSeparator(tmp, lastof(tmp)); AppendPathSeparator(tmp, lastof(tmp));
_searchpaths[SP_WORKING_DIR] = stredup(tmp); _searchpaths[SP_WORKING_DIR] = stredup(tmp);
#endif
_do_scan_working_directory = DoScanWorkingDirectory(); _do_scan_working_directory = DoScanWorkingDirectory();
@ -1135,7 +1121,7 @@ void DetermineBasePaths(const char *exe)
} }
} }
#if defined(__MORPHOS__) || defined(__AMIGA__) || defined(DOS) || defined(OS2) #if !defined(GLOBAL_DATA_DIR)
_searchpaths[SP_INSTALLATION_DIR] = NULL; _searchpaths[SP_INSTALLATION_DIR] = NULL;
#else #else
seprintf(tmp, lastof(tmp), "%s", GLOBAL_DATA_DIR); seprintf(tmp, lastof(tmp), "%s", GLOBAL_DATA_DIR);
@ -1239,7 +1225,7 @@ void DeterminePaths(const char *exe)
} }
/* Make the necessary folders */ /* Make the necessary folders */
#if !defined(__MORPHOS__) && !defined(__AMIGA__) && defined(WITH_PERSONAL_DIR) #if defined(WITH_PERSONAL_DIR)
FioCreateDirectory(config_dir); FioCreateDirectory(config_dir);
if (config_dir != _personal_dir) FioCreateDirectory(_personal_dir); if (config_dir != _personal_dir) FioCreateDirectory(_personal_dir);
#endif #endif

@ -162,7 +162,7 @@ const char *FiosBrowseTo(const FiosItem *item)
break; break;
case FIOS_TYPE_PARENT: { case FIOS_TYPE_PARENT: {
/* Check for possible NULL ptr (not required for UNIXes, but AmigaOS-alikes) */ /* Check for possible NULL ptr */
char *s = strrchr(_fios_path, PATHSEPCHAR); char *s = strrchr(_fios_path, PATHSEPCHAR);
if (s != NULL && s != _fios_path) { if (s != NULL && s != _fios_path) {
s[0] = '\0'; // Remove last path separator character, so we can go up one level. s[0] = '\0'; // Remove last path separator character, so we can go up one level.
@ -170,11 +170,6 @@ const char *FiosBrowseTo(const FiosItem *item)
s = strrchr(_fios_path, PATHSEPCHAR); s = strrchr(_fios_path, PATHSEPCHAR);
if (s != NULL) { if (s != NULL) {
s[1] = '\0'; // go up a directory s[1] = '\0'; // go up a directory
#if defined(__MORPHOS__) || defined(__AMIGAOS__)
/* On MorphOS or AmigaOS paths look like: "Volume:directory/subdirectory" */
} else if ((s = strrchr(_fios_path, ':')) != NULL) {
s[1] = '\0';
#endif
} }
break; break;
} }
@ -215,21 +210,7 @@ static void FiosMakeFilename(char *buf, const char *path, const char *name, cons
/* Don't append the extension if it is already there */ /* Don't append the extension if it is already there */
period = strrchr(name, '.'); period = strrchr(name, '.');
if (period != NULL && strcasecmp(period, ext) == 0) ext = ""; if (period != NULL && strcasecmp(period, ext) == 0) ext = "";
#if defined(__MORPHOS__) || defined(__AMIGAOS__)
if (path != NULL) {
unsigned char sepchar = path[(strlen(path) - 1)];
if (sepchar != ':' && sepchar != '/') {
seprintf(buf, last, "%s" PATHSEP "%s%s", path, name, ext);
} else {
seprintf(buf, last, "%s%s%s", path, name, ext);
}
} else {
seprintf(buf, last, "%s%s", name, ext);
}
#else
seprintf(buf, last, "%s" PATHSEP "%s%s", path, name, ext); seprintf(buf, last, "%s" PATHSEP "%s%s", path, name, ext);
#endif
} }
/** /**

@ -17,9 +17,9 @@
#include "table/control_codes.h" #include "table/control_codes.h"
#ifdef WITH_ICU_LAYOUT #ifdef WITH_ICU_LX
#include <unicode/ustring.h> #include <unicode/ustring.h>
#endif /* WITH_ICU_LAYOUT */ #endif /* WITH_ICU_LX */
#ifdef WITH_UNISCRIBE #ifdef WITH_UNISCRIBE
#include "os/windows/string_uniscribe.h" #include "os/windows/string_uniscribe.h"
@ -50,7 +50,7 @@ Font::Font(FontSize size, TextColour colour) :
assert(size < FS_END); assert(size < FS_END);
} }
#ifdef WITH_ICU_LAYOUT #ifdef WITH_ICU_LX
/* Implementation details of LEFontInstance */ /* Implementation details of LEFontInstance */
le_int32 Font::getUnitsPerEM() const le_int32 Font::getUnitsPerEM() const
@ -226,7 +226,7 @@ public:
return length; return length;
} }
}; };
#endif /* WITH_ICU_LAYOUT */ #endif /* WITH_ICU_LX */
/*** Paragraph layout ***/ /*** Paragraph layout ***/
/** /**
@ -674,11 +674,11 @@ Layouter::Layouter(const char *str, int maxw, TextColour colour, FontSize fontsi
} else { } else {
/* Line is new, layout it */ /* Line is new, layout it */
FontState old_state = state; FontState old_state = state;
#if defined(WITH_ICU_LAYOUT) || defined(WITH_UNISCRIBE) || defined(WITH_COCOA) #if defined(WITH_ICU_LX) || defined(WITH_UNISCRIBE) || defined(WITH_COCOA)
const char *old_str = str; const char *old_str = str;
#endif #endif
#ifdef WITH_ICU_LAYOUT #ifdef WITH_ICU_LX
GetLayouter<ICUParagraphLayoutFactory>(line, str, state); GetLayouter<ICUParagraphLayoutFactory>(line, str, state);
if (line.layout == NULL) { if (line.layout == NULL) {
static bool warned = false; static bool warned = false;

@ -21,12 +21,12 @@
#include <stack> #include <stack>
#include <vector> #include <vector>
#ifdef WITH_ICU_LAYOUT #ifdef WITH_ICU_LX
#include "layout/ParagraphLayout.h" #include "layout/ParagraphLayout.h"
#define ICU_FONTINSTANCE : public icu::LEFontInstance #define ICU_FONTINSTANCE : public icu::LEFontInstance
#else /* WITH_ICU_LAYOUT */ #else /* WITH_ICU_LX */
#define ICU_FONTINSTANCE #define ICU_FONTINSTANCE
#endif /* WITH_ICU_LAYOUT */ #endif /* WITH_ICU_LX */
/** /**
* Text drawing parameters, which can change while drawing a line, but are kept between multiple parts * Text drawing parameters, which can change while drawing a line, but are kept between multiple parts
@ -89,7 +89,7 @@ public:
Font(FontSize size, TextColour colour); Font(FontSize size, TextColour colour);
#ifdef WITH_ICU_LAYOUT #ifdef WITH_ICU_LX
/* Implementation details of LEFontInstance */ /* Implementation details of LEFontInstance */
le_int32 getUnitsPerEM() const; le_int32 getUnitsPerEM() const;
@ -105,7 +105,7 @@ public:
LEGlyphID mapCharToGlyph(LEUnicode32 ch) const; LEGlyphID mapCharToGlyph(LEUnicode32 ch) const;
void getGlyphAdvance(LEGlyphID glyph, LEPoint &advance) const; void getGlyphAdvance(LEGlyphID glyph, LEPoint &advance) const;
le_bool getGlyphPoint(LEGlyphID glyph, le_int32 pointNumber, LEPoint &point) const; le_bool getGlyphPoint(LEGlyphID glyph, le_int32 pointNumber, LEPoint &point) const;
#endif /* WITH_ICU_LAYOUT */ #endif /* WITH_ICU_LX */
}; };
/** Mapping from index to font. */ /** Mapping from index to font. */

@ -18,6 +18,7 @@
#include "industry_map.h" #include "industry_map.h"
#include "industrytype.h" #include "industrytype.h"
#include "tilearea_type.h" #include "tilearea_type.h"
#include "station_base.h"
typedef Pool<Industry, IndustryID, 64, 64000> IndustryPool; typedef Pool<Industry, IndustryID, 64, 64000> IndustryPool;
@ -41,6 +42,7 @@ enum ProductionLevels {
struct Industry : IndustryPool::PoolItem<&_industry_pool> { struct Industry : IndustryPool::PoolItem<&_industry_pool> {
TileArea location; ///< Location of the industry TileArea location; ///< Location of the industry
Town *town; ///< Nearest town Town *town; ///< Nearest town
Station *neutral_station; ///< Associated neutral station
CargoID produced_cargo[INDUSTRY_NUM_OUTPUTS]; ///< 16 production cargo slots CargoID produced_cargo[INDUSTRY_NUM_OUTPUTS]; ///< 16 production cargo slots
uint16 produced_cargo_waiting[INDUSTRY_NUM_OUTPUTS]; ///< amount of cargo produced per cargo uint16 produced_cargo_waiting[INDUSTRY_NUM_OUTPUTS]; ///< amount of cargo produced per cargo
uint16 incoming_cargo_waiting[INDUSTRY_NUM_INPUTS]; ///< incoming cargo waiting to be processed uint16 incoming_cargo_waiting[INDUSTRY_NUM_INPUTS]; ///< incoming cargo waiting to be processed
@ -61,6 +63,7 @@ struct Industry : IndustryPool::PoolItem<&_industry_pool> {
byte was_cargo_delivered; ///< flag that indicate this has been the closest industry chosen for cargo delivery by a station. see DeliverGoodsToIndustry byte was_cargo_delivered; ///< flag that indicate this has been the closest industry chosen for cargo delivery by a station. see DeliverGoodsToIndustry
PartOfSubsidyByte part_of_subsidy; ///< NOSAVE: is this industry a source/destination of a subsidy? PartOfSubsidyByte part_of_subsidy; ///< NOSAVE: is this industry a source/destination of a subsidy?
StationList stations_near; ///< NOSAVE: List of nearby stations.
OwnerByte founder; ///< Founder of the industry OwnerByte founder; ///< Founder of the industry
Date construction_date; ///< Date of the construction of the industry Date construction_date; ///< Date of the construction of the industry

@ -183,6 +183,10 @@ Industry::~Industry()
DeleteSubsidyWith(ST_INDUSTRY, this->index); DeleteSubsidyWith(ST_INDUSTRY, this->index);
CargoPacket::InvalidateAllFrom(ST_INDUSTRY, this->index); CargoPacket::InvalidateAllFrom(ST_INDUSTRY, this->index);
for (Station *st : this->stations_near) {
st->industries_near.erase(this);
}
} }
/** /**
@ -192,7 +196,6 @@ Industry::~Industry()
void Industry::PostDestructor(size_t index) void Industry::PostDestructor(size_t index)
{ {
InvalidateWindowData(WC_INDUSTRY_DIRECTORY, 0, 0); InvalidateWindowData(WC_INDUSTRY_DIRECTORY, 0, 0);
Station::RecomputeIndustriesNearForAll();
} }
@ -517,8 +520,6 @@ static bool TransportIndustryGoods(TileIndex tile)
const IndustrySpec *indspec = GetIndustrySpec(i->type); const IndustrySpec *indspec = GetIndustrySpec(i->type);
bool moved_cargo = false; bool moved_cargo = false;
StationFinder stations(i->location);
for (uint j = 0; j < lengthof(i->produced_cargo_waiting); j++) { for (uint j = 0; j < lengthof(i->produced_cargo_waiting); j++) {
uint cw = min(i->produced_cargo_waiting[j], 255); uint cw = min(i->produced_cargo_waiting[j], 255);
if (cw > indspec->minimal_cargo && i->produced_cargo[j] != CT_INVALID) { if (cw > indspec->minimal_cargo && i->produced_cargo[j] != CT_INVALID) {
@ -529,7 +530,7 @@ static bool TransportIndustryGoods(TileIndex tile)
i->this_month_production[j] += cw; i->this_month_production[j] += cw;
uint am = MoveGoodsToStation(i->produced_cargo[j], cw, ST_INDUSTRY, i->index, stations.GetStations()); uint am = MoveGoodsToStation(i->produced_cargo[j], cw, ST_INDUSTRY, i->index, &i->stations_near);
i->this_month_transported[j] += am; i->this_month_transported[j] += am;
moved_cargo |= (am != 0); moved_cargo |= (am != 0);
@ -1652,6 +1653,37 @@ static void AdvertiseIndustryOpening(const Industry *ind)
Game::NewEvent(new ScriptEventIndustryOpen(ind->index)); Game::NewEvent(new ScriptEventIndustryOpen(ind->index));
} }
/**
* Populate an industry's list of nearby stations, and if it accepts any cargo, also
* add the industry to each station's nearby industry list.
* @param ind Industry
*/
static void PopulateStationsNearby(Industry *ind)
{
if (ind->neutral_station != NULL && !_settings_game.station.serve_neutral_industries) {
/* Industry has a neutral station. Use it and ignore any other nearby stations. */
ind->stations_near.insert(ind->neutral_station);
ind->neutral_station->industries_near.clear();
ind->neutral_station->industries_near.insert(ind);
return;
}
/* Get our list of nearby stations. */
FindStationsAroundTiles(ind->location, &ind->stations_near, false);
/* Test if industry can accept cargo */
uint cargo_index;
for (cargo_index = 0; cargo_index < lengthof(ind->accepts_cargo); cargo_index++) {
if (ind->accepts_cargo[cargo_index] != CT_INVALID) break;
}
if (cargo_index >= lengthof(ind->accepts_cargo)) return;
/* Cargo is accepted, add industry to nearby stations nearby industry list. */
for (Station *st : ind->stations_near) {
st->industries_near.insert(ind);
}
}
/** /**
* Put an industry on the map. * Put an industry on the map.
* @param i Just allocated poolitem, mostly empty. * @param i Just allocated poolitem, mostly empty.
@ -1825,7 +1857,7 @@ static void DoCreateNewIndustry(Industry *i, TileIndex tile, IndustryType type,
} }
InvalidateWindowData(WC_INDUSTRY_DIRECTORY, 0, 0); InvalidateWindowData(WC_INDUSTRY_DIRECTORY, 0, 0);
Station::RecomputeIndustriesNearForAll(); if (!_generating_world) PopulateStationsNearby(i);
} }
/** /**
@ -2430,11 +2462,7 @@ static void CanCargoServiceIndustry(CargoID cargo, Industry *ind, bool *c_accept
*/ */
static int WhoCanServiceIndustry(Industry *ind) static int WhoCanServiceIndustry(Industry *ind)
{ {
/* Find all stations within reach of the industry */ if (ind->stations_near.size() == 0) return 0; // No stations found at all => nobody services
StationList stations;
FindStationsAroundTiles(ind->location, &stations);
if (stations.Length() == 0) return 0; // No stations found at all => nobody services
const Vehicle *v; const Vehicle *v;
int result = 0; int result = 0;
@ -2470,7 +2498,7 @@ static int WhoCanServiceIndustry(Industry *ind)
/* Same cargo produced by industry is dropped here => not serviced by vehicle v */ /* Same cargo produced by industry is dropped here => not serviced by vehicle v */
if ((o->GetUnloadType() & OUFB_UNLOAD) && !c_accepts) break; if ((o->GetUnloadType() & OUFB_UNLOAD) && !c_accepts) break;
if (stations.Contains(st)) { if (ind->stations_near.find(st) != ind->stations_near.end()) {
if (v->owner == _local_company) return 2; // Company services industry if (v->owner == _local_company) return 2; // Company services industry
result = 1; // Competitor services industry result = 1; // Competitor services industry
} }
@ -2909,3 +2937,8 @@ extern const TileTypeProcs _tile_type_industry_procs = {
GetFoundation_Industry, // get_foundation_proc GetFoundation_Industry, // get_foundation_proc
TerraformTile_Industry, // terraform_tile_proc TerraformTile_Industry, // terraform_tile_proc
}; };
bool IndustryCompare::operator() (const Industry *lhs, const Industry *rhs) const
{
return lhs->index < rhs->index;
}

@ -293,14 +293,8 @@ void AskExitGame()
SetDParam(0, STR_OSNAME_WINDOWS); SetDParam(0, STR_OSNAME_WINDOWS);
#elif defined(__APPLE__) #elif defined(__APPLE__)
SetDParam(0, STR_OSNAME_OSX); SetDParam(0, STR_OSNAME_OSX);
#elif defined(__BEOS__)
SetDParam(0, STR_OSNAME_BEOS);
#elif defined(__HAIKU__) #elif defined(__HAIKU__)
SetDParam(0, STR_OSNAME_HAIKU); SetDParam(0, STR_OSNAME_HAIKU);
#elif defined(__MORPHOS__)
SetDParam(0, STR_OSNAME_MORPHOS);
#elif defined(__AMIGA__)
SetDParam(0, STR_OSNAME_AMIGAOS);
#elif defined(__OS2__) #elif defined(__OS2__)
SetDParam(0, STR_OSNAME_OS2); SetDParam(0, STR_OSNAME_OS2);
#elif defined(SUNOS) #elif defined(SUNOS)

@ -1771,10 +1771,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1443,10 +1443,7 @@ STR_OSNAME_WINDOWS :ويندوز
STR_OSNAME_DOS :دوس STR_OSNAME_DOS :دوس
STR_OSNAME_UNIX :يونكس STR_OSNAME_UNIX :يونكس
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :بي او اس
STR_OSNAME_HAIKU :هايكو STR_OSNAME_HAIKU :هايكو
STR_OSNAME_MORPHOS :مورف او اس
STR_OSNAME_AMIGAOS :اميقا
STR_OSNAME_OS2 :او اس/2 STR_OSNAME_OS2 :او اس/2
STR_OSNAME_SUNOS :صن STR_OSNAME_SUNOS :صن

@ -1683,10 +1683,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -2096,10 +2096,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1787,10 +1787,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1719,10 +1719,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :ДОС STR_OSNAME_DOS :ДОС
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1201,8 +1201,8 @@ STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :El pendent de l
STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% STR_CONFIG_SETTING_PERCENTAGE :{COMMA}%
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Pendent de les costes per als vehicles de carretera: {STRING} STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Pendent de les costes per als vehicles de carretera: {STRING}
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :El pendent de les caselles amb costes per a vehicles de carretera. Els valors alts fan que sigui més difícil pujar els turons. STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :El pendent de les caselles amb costes per a vehicles de carretera. Els valors alts fan que sigui més difícil pujar els turons.
STR_CONFIG_SETTING_FORBID_90_DEG :Prohibeix fer girs de 90 graus als trens i vaixells: {STRING} STR_CONFIG_SETTING_FORBID_90_DEG :Prohibeix fer girs de 90 graus als trens: {STRING}
STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Els girs de 90 graus succeeixen quan hi ha una via horitzontal seguida d'una de vertical a la cel·la annexa, provocant que el tren giri 90 graus quan travessi la vora de la cel·la en lloc dels 45 graus usuals en les altres combinacions. Això també s'aplica al gir dels vaixells. STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Els girs de 90 graus succeeixen quan hi ha una via horitzontal seguida d'una de vertical a la cel·la annexa, provocant que el tren giri 90 graus quan travessi la vora de la cel·la en lloc dels 45 graus usuals en les altres combinacions.
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Permet ajuntar estacions no annexes: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Permet ajuntar estacions no annexes: {STRING}
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Aquesta opció permet afegir parts noves a una estació existent sense estar les parts noves en contacte directe amb les existents. Cal clicar Ctrl+Clic mentre es col·loquen les parts noves. STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Aquesta opció permet afegir parts noves a una estació existent sense estar les parts noves en contacte directe amb les existents. Cal clicar Ctrl+Clic mentre es col·loquen les parts noves.
STR_CONFIG_SETTING_INFLATION :Inflació: {STRING} STR_CONFIG_SETTING_INFLATION :Inflació: {STRING}
@ -1258,8 +1258,8 @@ STR_CONFIG_SETTING_PLANE_SPEED :Factor de veloc
STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Estableix la velocitat relativa dels avions en comparació amb els altres tipus de vehicles, per reduir la quantitat de guanys de transport dels avions STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Estableix la velocitat relativa dels avions en comparació amb els altres tipus de vehicles, per reduir la quantitat de guanys de transport dels avions
STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA}
STR_CONFIG_SETTING_PLANE_CRASHES :Nombre d'accidents d'avió: {STRING} STR_CONFIG_SETTING_PLANE_CRASHES :Nombre d'accidents d'avió: {STRING}
STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Estableix la probabilitat amb què succeeixen els accidents d'avió STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Estableix la probabilitat amb què succeeixen els accidents d'avió.{}* Els avions grans sempre tenen un risc d'estavellar-se quan aterren en aeroports petits.
STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Cap STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Cap*
STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Reduït STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Reduït
STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal
STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Permet situar parades en carreteres que són propietat de la població: {STRING} STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Permet situar parades en carreteres que són propietat de la població: {STRING}
@ -1584,6 +1584,10 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Activant aquest
STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Prohibit STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Prohibit
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Permès STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Permès
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Permès, disposició dels carrers personalitzada STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Permès, disposició dels carrers personalitzada
STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Generació de càrrega a les poblacions: {STRING}
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Estableix quanta càrrega es produirà a les cases en funció dels habitants de la població.{}Creixement quadràtic: una població el doble de gran generarà el quàdruple de passatgers.{}Creixement lineal: una població el doble de gran generarà el doble de passatgers.
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Quadràtica (original)
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Lineal
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Disposició de nous arbres durant la partida: {STRING} STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Disposició de nous arbres durant la partida: {STRING}
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Controla l'aparició aleatòria dels arbres durant una partida. Això podria afectar a les indústries que es basen en el creixement dels arbres, per exemple les serradores STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Controla l'aparició aleatòria dels arbres durant una partida. Això podria afectar a les indústries que es basen en el creixement dels arbres, per exemple les serradores
@ -1798,10 +1802,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1280,6 +1280,8 @@ STR_CONFIG_SETTING_AUTOSLOPE :Dopusti uređiv
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Dopusti uređivanje krajolika ispod građevina i pruga bez njihovog uklanjanja STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Dopusti uređivanje krajolika ispod građevina i pruga bez njihovog uklanjanja
STR_CONFIG_SETTING_CATCHMENT :Dopusti realističnije veličine područja zahvaćanja: {STRING} STR_CONFIG_SETTING_CATCHMENT :Dopusti realističnije veličine područja zahvaćanja: {STRING}
STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Različiti dohvati za različite vrste stanica i zračnih luka STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Različiti dohvati za različite vrste stanica i zračnih luka
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES :Stanice kompanije mogu opsluživati industrije sa priključenim neutralnim stanicama: {STRING}
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :Kada je uključeno, industrije sa priključenim stanicama (kao naftne platforme) mogu biti opsluživane od strane kompanija koje imaju stanice izgrađene u blizini. Kada je isključeno, ove industrije mogu biti opsluživane samo putem svojih priključenih stanica. Bilo koja stanica u blizini u vlasništvu neke kompanije neće moći opsluživati ove industrije niti će stanice priključene industriji moći opsluživati bilo što osim te industrije.
STR_CONFIG_SETTING_EXTRADYNAMITE :Dopusti rušenje više cesta, mostova i tunela u vlasništvu grada: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE :Dopusti rušenje više cesta, mostova i tunela u vlasništvu grada: {STRING}
STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Jednostavnije uklanjanje infrastrukture i građevina u vlasništvu grada STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Jednostavnije uklanjanje infrastrukture i građevina u vlasništvu grada
STR_CONFIG_SETTING_TRAIN_LENGTH :Najveća dužina vlakova: {STRING} STR_CONFIG_SETTING_TRAIN_LENGTH :Najveća dužina vlakova: {STRING}
@ -1296,8 +1298,8 @@ STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Kosina nagiba p
STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% STR_CONFIG_SETTING_PERCENTAGE :{COMMA}%
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Strmina nagiba za cestovna vozila: {STRING} STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Strmina nagiba za cestovna vozila: {STRING}
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Kosina nagiba polja za cestovna vozila. Veće vrijednosti čine nagib težim za penjanje STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Kosina nagiba polja za cestovna vozila. Veće vrijednosti čine nagib težim za penjanje
STR_CONFIG_SETTING_FORBID_90_DEG :Zabrani vlakovima i brodovima skretanja pod 90 stupnjeva: {STRING} STR_CONFIG_SETTING_FORBID_90_DEG :Zabrani vlakovima skretanja pod 90 stupnjeva: {STRING}
STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Okreti za 90 stupnjeva se događaju kada vodoravni dio pruge odmah nastavlja okomiti dio pruge na sljedećem polju, dakle čineći zaokret vlaka od 90 stupnjeva prelaskom ruba polja umjesto uobičajenih 45 stupnjeva kod drugih kombinacija pruge. Ovo se primjenjuje i na radijus okretanja brodova STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Okreti za 90 stupnjeva se događaju kada se na vodoravni dio pruge odmah nastavlja okomiti dio pruge na sljedećem polju, dakle čineći zaokret vlaka od 90 stupnjeva prelaskom ruba polja umjesto uobičajenih 45 stupnjeva kod drugih kombinacija pruge.
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Dopusti spajanje postaja koje nisu izravno jedna do druge {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Dopusti spajanje postaja koje nisu izravno jedna do druge {STRING}
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Dopusti dodavanje dijelova stanice bez izravnog dodira s postojećim dijelovima. Potrebno pritisnuti Ctrl+klik dok se dodaju novi dijelovi STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Dopusti dodavanje dijelova stanice bez izravnog dodira s postojećim dijelovima. Potrebno pritisnuti Ctrl+klik dok se dodaju novi dijelovi
STR_CONFIG_SETTING_INFLATION :Inflacija: {STRING} STR_CONFIG_SETTING_INFLATION :Inflacija: {STRING}
@ -1353,8 +1355,8 @@ STR_CONFIG_SETTING_PLANE_SPEED :Faktor brzine z
STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Postavite relativnu brzinu zrakoplova u odnosu na ostale vrste vozila, kako bi se smanjio iznos prihoda od prijevoza zrakoplovom STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Postavite relativnu brzinu zrakoplova u odnosu na ostale vrste vozila, kako bi se smanjio iznos prihoda od prijevoza zrakoplovom
STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA}
STR_CONFIG_SETTING_PLANE_CRASHES :Broj padova zrakoplova: {STRING} STR_CONFIG_SETTING_PLANE_CRASHES :Broj padova zrakoplova: {STRING}
STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Odredi šansu za događanje zrakoplovne nesreće STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Odredi šansu za događanje avionske nesreće.{}* Veliki avioni uvijek riskiraju nesreću kad slijeću na male aerodrome
STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Ništa STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Ništa*
STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Smanjeno STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Smanjeno
STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normalno STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normalno
STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Dopusti prolazne postaje na cestama u vlasništvu gradova: {STRING} STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Dopusti prolazne postaje na cestama u vlasništvu gradova: {STRING}
@ -1679,6 +1681,10 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Uklučivanje ov
STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Zabranjeno STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Zabranjeno
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Dopušteno STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Dopušteno
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Dopušteno, proizvoljan raspored grada STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Dopušteno, proizvoljan raspored grada
STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Proizvodnja tereta u gradu: {STRING}
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Koliko tereta proizvode kuće u gradu u odnosu na ukupno stanovništvo grada.{}Kvadratni rast: Grad dvostruke veličine proizvodi četverostruku količinu putnika.{}Linearni rast: Grad dvostruke veličine proizvodi dvostruku količinu putnika.
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Kvadratno (originalno)
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Linearno
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Smještaj drveća u igri: {STRING} STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Smještaj drveća u igri: {STRING}
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Kontroliraj nasumično pojavljivanje stabala tijekom igre. Ovo može utjecati na industrije koje ovise o rastu stabala, npr. pilane STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Kontroliraj nasumično pojavljivanje stabala tijekom igre. Ovo može utjecati na industrije koje ovise o rastu stabala, npr. pilane
@ -1893,10 +1899,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS
@ -3640,7 +3643,7 @@ STR_DEPOT_VEHICLE_TOOLTIP :{BLACK}{ENGINE}
STR_DEPOT_VEHICLE_TOOLTIP_CHAIN :{BLACK}{NUM} vozil{P o a a}{STRING} STR_DEPOT_VEHICLE_TOOLTIP_CHAIN :{BLACK}{NUM} vozil{P o a a}{STRING}
STR_DEPOT_VEHICLE_TOOLTIP_CARGO :{}{CARGO_LONG} ({CARGO_SHORT}) STR_DEPOT_VEHICLE_TOOLTIP_CARGO :{}{CARGO_LONG} ({CARGO_SHORT})
STR_DEPOT_TRAIN_LIST_TOOLTIP :{BLACK}Vlakovi - drži lijevi klik i vuci vozilo za dodavanje/skidanjed iz vlaka, desni klik za informacije. Drži tipku Ctrl da obje funkcije rade na slijedu STR_DEPOT_TRAIN_LIST_TOOLTIP :{BLACK}Vlakovi - drži lijevi klik i vuci vozilo za dodavanje/skidanje iz vlaka, desni klik za informacije. Drži tipku Ctrl da obje funkcije rade na slijedu
STR_DEPOT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Vozila - desni klik na vozilo za informacije STR_DEPOT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Vozila - desni klik na vozilo za informacije
STR_DEPOT_SHIP_LIST_TOOLTIP :{BLACK}Brodovi - desni klik na brod za informacije STR_DEPOT_SHIP_LIST_TOOLTIP :{BLACK}Brodovi - desni klik na brod za informacije
STR_DEPOT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Zrakoplov - desni klik na zrakoplov za informacije STR_DEPOT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Zrakoplov - desni klik na zrakoplov za informacije

@ -1865,10 +1865,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unixu STR_OSNAME_UNIX :Unixu
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1185,6 +1185,8 @@ STR_CONFIG_SETTING_AUTOSLOPE :Tillad landskab
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Tillad landskabsformning under bygninger og spor uden at fjerne dem STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Tillad landskabsformning under bygninger og spor uden at fjerne dem
STR_CONFIG_SETTING_CATCHMENT :Tillad mere realistisk størrelse på stationernes opland: {STRING} STR_CONFIG_SETTING_CATCHMENT :Tillad mere realistisk størrelse på stationernes opland: {STRING}
STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Har forskellige størrelser oplande til forskellige typer af stationer og lufthavne STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Har forskellige størrelser oplande til forskellige typer af stationer og lufthavne
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES :Selskabers stationer kan betjene industrier med tilknyttede neutrale stationer: {STRING}
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :Når aktiveret kan industries med tilknyttede stationer (så som Boreplatforme) også betjenes af andre selskabers stationer i nærheden. Når deaktiveret, kan disse industrier kun betjenes af deres egen tilknyttede station. Andre stationer i nærheden kan ikke betjene dem, og industriens tilknyttede station vil heller ikke betjene andet end industrien.
STR_CONFIG_SETTING_EXTRADYNAMITE :Tillad nedriving af flere by-ejede veje, broer og tunneler: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE :Tillad nedriving af flere by-ejede veje, broer og tunneler: {STRING}
STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Gør det nemmere at fjerne by-ejede infrastruktur og bygninger STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Gør det nemmere at fjerne by-ejede infrastruktur og bygninger
STR_CONFIG_SETTING_TRAIN_LENGTH :Den maksimale længde af tog: {STRING} STR_CONFIG_SETTING_TRAIN_LENGTH :Den maksimale længde af tog: {STRING}
@ -1201,8 +1203,8 @@ STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Stejlhed af skr
STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% STR_CONFIG_SETTING_PERCENTAGE :{COMMA}%
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Skrånings stejlhed for vejkøretøjer: {STRING} STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Skrånings stejlhed for vejkøretøjer: {STRING}
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Stejlhed af skrå felter for vej køretøjer. Højere værdier gør det vanskeligere at bestige en bakke STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Stejlhed af skrå felter for vej køretøjer. Højere værdier gør det vanskeligere at bestige en bakke
STR_CONFIG_SETTING_FORBID_90_DEG :Forbyd skibe og tog at dreje 90 grader: {STRING} STR_CONFIG_SETTING_FORBID_90_DEG :Forbyd tog at dreje 90 grader: {STRING}
STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90 graders drejninger forekommer når et horisontalt spor er direkte efterfulgt af et lodret spor stykke på det tilstødende felt, hvorved toget drejer 90 grader ved kørsel på feltets kant stedet for de sædvanlige 45 grader for andre spor kombinationer. Dette gælder også for drejeradius af skibe STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90 graders drejninger forekommer når et vandret sporstykke er direkte efterfulgt af et lodret sporstykke på det tilstødende felt. Således drejer toget 90 grader når det passerer feltets kant, i stedet for de sædvanlige 45 grader for andre sporkombinationer.
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Tillad sammenkædning af stationer der ikke ligger direkte op ad hinanden: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Tillad sammenkædning af stationer der ikke ligger direkte op ad hinanden: {STRING}
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Tillad at tilføje dele til en station uden direkte at berøre eksisterende dele. Ctrl+Klik for at sætte nye dele STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Tillad at tilføje dele til en station uden direkte at berøre eksisterende dele. Ctrl+Klik for at sætte nye dele
STR_CONFIG_SETTING_INFLATION :Inflation: {STRING} STR_CONFIG_SETTING_INFLATION :Inflation: {STRING}
@ -1258,8 +1260,8 @@ STR_CONFIG_SETTING_PLANE_SPEED :Fly hastigheds-
STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Indstil den relative hastighed af fly i forhold til andre køretøjstyper, for at reducere mængden af indkomst for transport med fly STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Indstil den relative hastighed af fly i forhold til andre køretøjstyper, for at reducere mængden af indkomst for transport med fly
STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA}
STR_CONFIG_SETTING_PLANE_CRASHES :Antal flystyrt: {STRING} STR_CONFIG_SETTING_PLANE_CRASHES :Antal flystyrt: {STRING}
STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Angiv chancen for et flystyrt sker STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Angiv sandsynligheden for at fly styrter ned.{}* Store fly har altid en risiko for at styrte når de lander på små lufthavne.
STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Ingen STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Ingen*
STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :reduceret STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :reduceret
STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal
STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Tillad gennemkørsels-stop på veje ejet af en by: {STRING} STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Tillad gennemkørsels-stop på veje ejet af en by: {STRING}
@ -1584,6 +1586,10 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Hvis denne inds
STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Forbudt STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Forbudt
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Tilladt STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Tilladt
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Tilladt, tilpasset by-layout STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Tilladt, tilpasset by-layout
STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Godsgenerering i byer: {STRING}
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Hvor meget gods der bliver produceret af byers bygninger, i forhold til byens samlede indbyggertal.{}Kvadratisk vækst: En by med dobbelt indbyggertal genererer fire gange så mange passagerer.{}Lineær vækst: En by med dobbelt indbyggertal genererer dobbelt så mange passagerer.
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Kvadratisk (original)
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Lineær
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Placering af træer i spillet: {STRING} STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Placering af træer i spillet: {STRING}
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Kontroller den tilfældige fremkomst af træer i løbet af spillet. Dette vil påvirke industrier der afhænger træers vækst, f.eks. savværker STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Kontroller den tilfældige fremkomst af træer i løbet af spillet. Dette vil påvirke industrier der afhænger træers vækst, f.eks. savværker
@ -1798,10 +1804,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -326,10 +326,10 @@ STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Lijst me
STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Financiële informatie over het bedrijf weergeven STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Financiële informatie over het bedrijf weergeven
STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Algemene informatie over het bedrijf weergeven STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Algemene informatie over het bedrijf weergeven
STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Verhaal weergeven STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Verhaal weergeven
STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Geef doellijst weer STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Doellijst weergeven
STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Grafieken weergeven STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Grafieken weergeven
STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Bedrijfsscoretabel weergeven STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Bedrijfsscoretabel weergeven
STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Financier de bouw van nieuwe industrie of geef lijst van alle industrieën weer STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Bouw van nieuwe industrie financieren of lijst van alle industrieën weergeven
STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Lijst met treinen van het bedrijf weergeven. Ctrl+klik schakelt tussen lijst van groepen/voertuigen. STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Lijst met treinen van het bedrijf weergeven. Ctrl+klik schakelt tussen lijst van groepen/voertuigen.
STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Lijst met wegvoertuigen van het bedrijf weergeven. Ctrl+klik schakelt tussen lijst van groepen/voertuigen. STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Lijst met wegvoertuigen van het bedrijf weergeven. Ctrl+klik schakelt tussen lijst van groepen/voertuigen.
STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Lijst met schepen van het bedrijf weergeven. Ctrl+klik schakelt tussen lijst van groepen/voertuigen. STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Lijst met schepen van het bedrijf weergeven. Ctrl+klik schakelt tussen lijst van groepen/voertuigen.
@ -343,7 +343,7 @@ STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}Vliegvel
STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Hiermee open je de landschapsbalk om land te verhogen/verlagen, bomen te planten, enz. STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Hiermee open je de landschapsbalk om land te verhogen/verlagen, bomen te planten, enz.
STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK}Geluid-/muziekvenster weergeven STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK}Geluid-/muziekvenster weergeven
STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Laatste (nieuws-)bericht weergeven, berichtinstellingen weergeven STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Laatste (nieuws-)bericht weergeven, berichtinstellingen weergeven
STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Landinformatie, console, scriptdebug, screenshots, over OpenTTD STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Landinformatie, console, foutopsporing in scripts, schermfoto's, over OpenTTD
STR_TOOLBAR_TOOLTIP_SWITCH_TOOLBAR :{BLACK}Knoppenbalken wisselen STR_TOOLBAR_TOOLTIP_SWITCH_TOOLBAR :{BLACK}Knoppenbalken wisselen
# Extra tooltips for the scenario editor toolbar # Extra tooltips for the scenario editor toolbar
@ -474,10 +474,10 @@ STR_ABOUT_MENU_LAND_BLOCK_INFO :Landinformatie
STR_ABOUT_MENU_SEPARATOR : STR_ABOUT_MENU_SEPARATOR :
STR_ABOUT_MENU_TOGGLE_CONSOLE :Console in-uitschakelen STR_ABOUT_MENU_TOGGLE_CONSOLE :Console in-uitschakelen
STR_ABOUT_MENU_AI_DEBUG :Probleemoplossing AI/spelscript STR_ABOUT_MENU_AI_DEBUG :Probleemoplossing AI/spelscript
STR_ABOUT_MENU_SCREENSHOT :Schermafbeelding STR_ABOUT_MENU_SCREENSHOT :Schermfoto
STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Ingezoomde schermafbeelding STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Ingezoomde schermfoto
STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Schermafbeelding met standaardzoom STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Schermfoto met standaardzoom
STR_ABOUT_MENU_GIANT_SCREENSHOT :Schermafbeelding van de hele kaart STR_ABOUT_MENU_GIANT_SCREENSHOT :Schermfoto van de hele kaart
STR_ABOUT_MENU_SHOW_FRAMERATE :Framesnelheid weergeven STR_ABOUT_MENU_SHOW_FRAMERATE :Framesnelheid weergeven
STR_ABOUT_MENU_ABOUT_OPENTTD :Over 'OpenTTD' STR_ABOUT_MENU_ABOUT_OPENTTD :Over 'OpenTTD'
STR_ABOUT_MENU_SPRITE_ALIGNER :Sprite-uitlijner STR_ABOUT_MENU_SPRITE_ALIGNER :Sprite-uitlijner
@ -1163,7 +1163,7 @@ STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Het niveau van
STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Bouwsnelheid: {STRING} STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Bouwsnelheid: {STRING}
STR_CONFIG_SETTING_CONSTRUCTION_SPEED_HELPTEXT :Beperk de hoeveelheid bouwactiviteiten voor computerspeler STR_CONFIG_SETTING_CONSTRUCTION_SPEED_HELPTEXT :Beperk de hoeveelheid bouwactiviteiten voor computerspeler
STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS :Voertuigstoringen: {STRING} STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS :Voertuigstoringen: {STRING}
STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS_HELPTEXT :Controle hoe vaak onvoldoende onderhouden voertuigen kapot kunnen gaan STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS_HELPTEXT :Bepaal hoe vaak onvoldoende onderhouden voertuigen kapot kunnen gaan
STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER :Subsidiefactor: {STRING} STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER :Subsidiefactor: {STRING}
STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Instellen hoeveel wordt betaald voor gesubsidieerde verbindingen STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Instellen hoeveel wordt betaald voor gesubsidieerde verbindingen
STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Bouwkosten: {STRING} STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Bouwkosten: {STRING}
@ -1201,7 +1201,7 @@ STR_CONFIG_SETTING_PERCENTAGE :{COMMA}%
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Hellingsteilheid voor wegvoertuigen: {STRING} STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Hellingsteilheid voor wegvoertuigen: {STRING}
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Steilheid van een schuine tegel voor een wegvoertuig. Hogere waarden maken het moeilijker om een heuvel te beklimmen STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Steilheid van een schuine tegel voor een wegvoertuig. Hogere waarden maken het moeilijker om een heuvel te beklimmen
STR_CONFIG_SETTING_FORBID_90_DEG :Treinen en schepen mogen niet 90° draaien: {STRING} STR_CONFIG_SETTING_FORBID_90_DEG :Treinen en schepen mogen niet 90° draaien: {STRING}
STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Draaiingen met 90° treden op wanneer een horizontale baan direct gevolgd wordt door een verticaal baanstuk op de aangrenzende tegel, waardoor de trein daarna 90 graden draait wanneer de tegelrand wordt overgestoken in plaats van de gebruikelijke 45 graden voor andere spoorcombinaties. Dit geldt ook voor de draaicirkel van schepen STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Draaiingen met 90° treden op wanneer een horizontale baan direct gevolgd wordt door een verticaal baanstuk op de aangrenzende tegel, waardoor de trein daarna 90 graden draait wanneer de tegelrand wordt overgestoken in plaats van de gebruikelijke 45 graden voor andere spoorcombinaties.
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Samenvoegen van indirect aansluitende stations toestaan: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Samenvoegen van indirect aansluitende stations toestaan: {STRING}
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Staat toe dat er aanvullende onderdelen aan een station worden geplaatst zonder dat reeds bestaande onderdelen beïnvloed worden. Ctrl+klik is vereist tijdens het plaatsen van nieuwe onderdelen. STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Staat toe dat er aanvullende onderdelen aan een station worden geplaatst zonder dat reeds bestaande onderdelen beïnvloed worden. Ctrl+klik is vereist tijdens het plaatsen van nieuwe onderdelen.
STR_CONFIG_SETTING_INFLATION :Inflatie: {STRING} STR_CONFIG_SETTING_INFLATION :Inflatie: {STRING}
@ -1231,7 +1231,7 @@ STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :Indien ingescha
STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Nieuwe orders zijn standaard 'non-stop': {STRING} STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Nieuwe orders zijn standaard 'non-stop': {STRING}
STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Normaal gesproken zal een voertuig stoppen op elk station dit wordt gepasseerd. Door het inschakelen van deze instelling, zal het rijden door alle station op weg naar de eindbestemming zonder te stoppen. Merk op dat deze instelling alleen een standaardwaarde voor nieuwe orders bepaalt. Individuele opdrachten kan expliciet worden ingesteld op het gedrag STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Normaal gesproken zal een voertuig stoppen op elk station dit wordt gepasseerd. Door het inschakelen van deze instelling, zal het rijden door alle station op weg naar de eindbestemming zonder te stoppen. Merk op dat deze instelling alleen een standaardwaarde voor nieuwe orders bepaalt. Individuele opdrachten kan expliciet worden ingesteld op het gedrag
STR_CONFIG_SETTING_STOP_LOCATION :Nieuwe treinorders stoppen de trein standaard {STRING} van het perron STR_CONFIG_SETTING_STOP_LOCATION :Nieuwe treinorders stoppen de trein standaard {STRING} van het perron
STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :Plaats waar een trein standaard stopt bij het platform . De 'bij einde' betekent in de buurt van de ingang, 'midden' betekent in het midden van het platform, en 'einde' betekent ver weg van de ingang. Merk op dat deze instelling alleen een standaardwaarde voor nieuwe orders bepaalt. Individuele opdrachten kunnen expliciet worden ingesteld op het gedrag STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :Plaats waar een trein standaard stopt aan het perron. 'Aan het begin' betekent in de buurt van de ingang, 'In het midden' betekent in het midden van het perron, en 'Aan het einde' betekent ver weg van de ingang. Merk op dat deze instelling alleen een standaardwaarde voor nieuwe orders bepaalt. Je kunt opdrachten expliciet instellen op elk gewenst gedrag.
STR_CONFIG_SETTING_STOP_LOCATION_NEAR_END :aan het begin STR_CONFIG_SETTING_STOP_LOCATION_NEAR_END :aan het begin
STR_CONFIG_SETTING_STOP_LOCATION_MIDDLE :in het midden STR_CONFIG_SETTING_STOP_LOCATION_MIDDLE :in het midden
STR_CONFIG_SETTING_STOP_LOCATION_FAR_END :aan het einde STR_CONFIG_SETTING_STOP_LOCATION_FAR_END :aan het einde
@ -1258,7 +1258,7 @@ STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Stel de relatie
STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA}
STR_CONFIG_SETTING_PLANE_CRASHES :Aantal neerstortende vliegtuigen: {STRING} STR_CONFIG_SETTING_PLANE_CRASHES :Aantal neerstortende vliegtuigen: {STRING}
STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Bepaalt de kans op neerstorten van een vliegtuig STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Bepaalt de kans op neerstorten van een vliegtuig
STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Geen STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Geen*
STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Verminderd STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Verminderd
STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normaal STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normaal
STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Haltes plaatsen op door stad beheerde wegen toestaan: {STRING} STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Haltes plaatsen op door stad beheerde wegen toestaan: {STRING}
@ -1419,7 +1419,7 @@ STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT :Geef aan of laa
STR_CONFIG_SETTING_TIMETABLE_IN_TICKS :Dienstregeling in tikken weergeven i.p.v. in dagen: {STRING} STR_CONFIG_SETTING_TIMETABLE_IN_TICKS :Dienstregeling in tikken weergeven i.p.v. in dagen: {STRING}
STR_CONFIG_SETTING_TIMETABLE_IN_TICKS_HELPTEXT :Reistijden in tijdtabellen in speltikken weergeven in plaats van dagen STR_CONFIG_SETTING_TIMETABLE_IN_TICKS_HELPTEXT :Reistijden in tijdtabellen in speltikken weergeven in plaats van dagen
STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE :Aankomst- en vertrektijden in dienstregeling weergeven: {STRING} STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE :Aankomst- en vertrektijden in dienstregeling weergeven: {STRING}
STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE_HELPTEXT :Geef de verwachte aankomst-en vertrektijden in de dienstregeling STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE_HELPTEXT :Geef de verwachte aankomst-en vertrektijden in de dienstregeling weer
STR_CONFIG_SETTING_QUICKGOTO :Snel voertuigorders maken: {STRING} STR_CONFIG_SETTING_QUICKGOTO :Snel voertuigorders maken: {STRING}
STR_CONFIG_SETTING_QUICKGOTO_HELPTEXT :Pre-selecteer de 'Ga naar cursor' bij het openen van de orders venster STR_CONFIG_SETTING_QUICKGOTO_HELPTEXT :Pre-selecteer de 'Ga naar cursor' bij het openen van de orders venster
STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE :Standaard spoorsoort (bij nieuw of opgeslagen spel): {STRING} STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE :Standaard spoorsoort (bij nieuw of opgeslagen spel): {STRING}
@ -1445,11 +1445,11 @@ STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Speel geluidsef
STR_CONFIG_SETTING_SOUND_CLICK :Klikgeluid knoppen: {STRING} STR_CONFIG_SETTING_SOUND_CLICK :Klikgeluid knoppen: {STRING}
STR_CONFIG_SETTING_SOUND_CLICK_HELPTEXT :Piep bij het klikken op knoppen STR_CONFIG_SETTING_SOUND_CLICK_HELPTEXT :Piep bij het klikken op knoppen
STR_CONFIG_SETTING_SOUND_DISASTER :Rampen/ongelukken: {STRING} STR_CONFIG_SETTING_SOUND_DISASTER :Rampen/ongelukken: {STRING}
STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Speel geluidseffecten van ongelukken en rampen STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT :Speel geluidseffecten af bij ongelukken en rampen
STR_CONFIG_SETTING_SOUND_VEHICLE :Voertuigen: {STRING} STR_CONFIG_SETTING_SOUND_VEHICLE :Voertuigen: {STRING}
STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT :Speel geluidseffecten van voertuigen STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT :Speel geluidseffecten van voertuigen af
STR_CONFIG_SETTING_SOUND_AMBIENT :Omgeving: {STRING} STR_CONFIG_SETTING_SOUND_AMBIENT :Omgeving: {STRING}
STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Speel omgevingsgeluidseffecten van landschap, industrieën en steden STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT :Speel omgevingsgeluidseffecten van landschap, industrieën en steden af
STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Bouwen van infrastructuur uitschakelen wanneer geen geschikt voertuig beschikbaar is: {STRING} STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING :Bouwen van infrastructuur uitschakelen wanneer geen geschikt voertuig beschikbaar is: {STRING}
STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Wanneer je dit inschakelt, is de infrastructuur alleen beschikbaar als er ook voertuigen beschikbaar zijn. Dit voorkomt verspilling van tijd en geld aan onbruikbare infrastructuur STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING_HELPTEXT :Wanneer je dit inschakelt, is de infrastructuur alleen beschikbaar als er ook voertuigen beschikbaar zijn. Dit voorkomt verspilling van tijd en geld aan onbruikbare infrastructuur
@ -1579,10 +1579,14 @@ STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Door deze optie
STR_CONFIG_SETTING_NOISE_LEVEL :Geluidsniveaucontrole door steden voor vliegvelden toestaan: {STRING} STR_CONFIG_SETTING_NOISE_LEVEL :Geluidsniveaucontrole door steden voor vliegvelden toestaan: {STRING}
STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Met deze instelling uitgeschakeld kunnen er twee luchthavens in elke stad zijn. Als deze instelling is ingeschakeld, wordt het aantal luchthavens in een stad beperkt door het lawaai tollerantie van de stad, die afhankelijk is van de bevolking en de luchthaven grootte en afstand STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Met deze instelling uitgeschakeld kunnen er twee luchthavens in elke stad zijn. Als deze instelling is ingeschakeld, wordt het aantal luchthavens in een stad beperkt door het lawaai tollerantie van de stad, die afhankelijk is van de bevolking en de luchthaven grootte en afstand
STR_CONFIG_SETTING_TOWN_FOUNDING :Steden stichten in spel: {STRING} STR_CONFIG_SETTING_TOWN_FOUNDING :Steden stichten in spel: {STRING}
STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Het inschakelen van deze instelling laat spelers toe om nieuwe steden op te richten tijdens het spel. STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Wanneer deze instelling is ingeschakeld, kunnen spelers nieuwe steden stichten tijdens het spel.
STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Verboden STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Verboden
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Toestaan STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Toestaan
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Toestaan, eigen wegpatroon STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Toestaan, eigen wegpatroon
STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Genereren van vracht in steden: {STRING}
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Hoeveel vracht wordt geproduceerd door huizen in steden, in relatie tot de totale bevolking van de stad.{}Kwadratische groei: een stad die twee keer zo groot is, genereert vier keer zo veel passagiers.{}Lineaire groei: een stad die twee keer zo groot is, genereert twee keer zo veel passagiers.
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Kwadratisch (origineel)
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Lineair
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Plaatsing van bomen in het spel: {STRING} STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Plaatsing van bomen in het spel: {STRING}
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Beheert het willekeurig verschijnen van bomen tijdens het spel. Dit kan gevolgen hebben voor industrietakken die afhankelijk zijn van groei van bomen, bijvoorbeeld houtzagerijen. STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Beheert het willekeurig verschijnen van bomen tijdens het spel. Dit kan gevolgen hebben voor industrietakken die afhankelijk zijn van groei van bomen, bijvoorbeeld houtzagerijen.
@ -1599,7 +1603,7 @@ STR_CONFIG_SETTING_SNAP_RADIUS_HELPTEXT :Afstand tussen
STR_CONFIG_SETTING_SNAP_RADIUS_VALUE :{COMMA} pixel{P 0 "" s} STR_CONFIG_SETTING_SNAP_RADIUS_VALUE :{COMMA} pixel{P 0 "" s}
STR_CONFIG_SETTING_SNAP_RADIUS_DISABLED :Uitgeschakeld STR_CONFIG_SETTING_SNAP_RADIUS_DISABLED :Uitgeschakeld
STR_CONFIG_SETTING_SOFT_LIMIT :Maximumaantal (niet-blijvende) vensters: {STRING} STR_CONFIG_SETTING_SOFT_LIMIT :Maximumaantal (niet-blijvende) vensters: {STRING}
STR_CONFIG_SETTING_SOFT_LIMIT_HELPTEXT :Aantal niet-klevende open vensters voor oude vensters automatisch worden gesloten om ruimte voor nieuwe vensters te maken STR_CONFIG_SETTING_SOFT_LIMIT_HELPTEXT :Aantal niet-blijvende open vensters voordat oude vensters automatisch worden gesloten om ruimte voor nieuwe vensters te maken
STR_CONFIG_SETTING_SOFT_LIMIT_VALUE :{COMMA} STR_CONFIG_SETTING_SOFT_LIMIT_VALUE :{COMMA}
STR_CONFIG_SETTING_SOFT_LIMIT_DISABLED :uitgeschakeld STR_CONFIG_SETTING_SOFT_LIMIT_DISABLED :uitgeschakeld
STR_CONFIG_SETTING_ZOOM_MIN :Maximaal inzoomniveau: {STRING} STR_CONFIG_SETTING_ZOOM_MIN :Maximaal inzoomniveau: {STRING}
@ -1797,10 +1801,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS
@ -2895,7 +2896,7 @@ STR_NEWGRF_SETTINGS_UPGRADE :{BLACK}Opwaarde
STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Opwaarderen van NewGRF-bestanden waar je een nieuwere versie van hebt geïnstalleerd STR_NEWGRF_SETTINGS_UPGRADE_TOOLTIP :{BLACK}Opwaarderen van NewGRF-bestanden waar je een nieuwere versie van hebt geïnstalleerd
STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Een lijst van de NewGRF-bestanden die zijn geïnstalleerd. STR_NEWGRF_SETTINGS_FILE_TOOLTIP :{BLACK}Een lijst van de NewGRF-bestanden die zijn geïnstalleerd.
STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Stel parameters in STR_NEWGRF_SETTINGS_SET_PARAMETERS :{BLACK}Parameters instellen
STR_NEWGRF_SETTINGS_SHOW_PARAMETERS :{BLACK}Parameters weergeven STR_NEWGRF_SETTINGS_SHOW_PARAMETERS :{BLACK}Parameters weergeven
STR_NEWGRF_SETTINGS_TOGGLE_PALETTE :{BLACK}Palet omzetten STR_NEWGRF_SETTINGS_TOGGLE_PALETTE :{BLACK}Palet omzetten
STR_NEWGRF_SETTINGS_TOGGLE_PALETTE_TOOLTIP :{BLACK}Verander het palet van het geselecteerde NewGRF-bestand.{}Gebruik deze mogelijkheid als de afbeeldingen van dit NewGRF-bestand er paars uit zien in het spel STR_NEWGRF_SETTINGS_TOGGLE_PALETTE_TOOLTIP :{BLACK}Verander het palet van het geselecteerde NewGRF-bestand.{}Gebruik deze mogelijkheid als de afbeeldingen van dit NewGRF-bestand er paars uit zien in het spel

@ -1192,6 +1192,8 @@ STR_CONFIG_SETTING_AUTOSLOPE :Allow landscapi
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Allow landscaping under buildings and tracks without removing them STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Allow landscaping under buildings and tracks without removing them
STR_CONFIG_SETTING_CATCHMENT :Allow more realistically sized catchment areas: {STRING2} STR_CONFIG_SETTING_CATCHMENT :Allow more realistically sized catchment areas: {STRING2}
STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Have differently sized catchment areas for different types of stations and airports STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Have differently sized catchment areas for different types of stations and airports
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES :Company stations can serve industries with attached neutral stations: {STRING2}
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :When enabled, industries with attached stations (such as Oil Rigs) may also be served by company owned stations built nearby. When disabled, these industries may only be served by their attached stations. Any nearby company stations won't be able to serve them, nor will the attached station serve anything else other than the industry
STR_CONFIG_SETTING_CATCHMENT_INCREASE :Increase station catchment radius: {STRING2} STR_CONFIG_SETTING_CATCHMENT_INCREASE :Increase station catchment radius: {STRING2}
STR_CONFIG_SETTING_CATCHMENT_INCREASE_HELPTEXT :Increase radius of station catchment areas by this many tiles STR_CONFIG_SETTING_CATCHMENT_INCREASE_HELPTEXT :Increase radius of station catchment areas by this many tiles
STR_CONFIG_SETTING_STATION_RATING_CARGO_CLASS_WAIT_TIME :Station rating tolerance to waiting time depends on cargo class: {STRING2} STR_CONFIG_SETTING_STATION_RATING_CARGO_CLASS_WAIT_TIME :Station rating tolerance to waiting time depends on cargo class: {STRING2}
@ -1730,6 +1732,10 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Enabling this s
STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Forbidden STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Forbidden
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Allowed STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Allowed
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Allowed, custom town layout STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Allowed, custom town layout
STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Town cargo generation: {STRING2}
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :How much cargo is produced by houses in towns, relative to the overall population of the town.{}Quadratic growth: A town twice the size generates four times as many passengers.{}Linear growth: A town twice the size generates twice the amount of passengers.
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Quadratic (original)
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Linear
STR_CONFIG_SETTING_TOWN_CARGO_FACTOR :Town cargo generation factor (less < 0 < more): {STRING2} STR_CONFIG_SETTING_TOWN_CARGO_FACTOR :Town cargo generation factor (less < 0 < more): {STRING2}
STR_CONFIG_SETTING_TOWN_CARGO_FACTOR_HELPTEXT :Passenger, mail, and other town cargo production is scaled by approximately 2^factor (exponential) STR_CONFIG_SETTING_TOWN_CARGO_FACTOR_HELPTEXT :Passenger, mail, and other town cargo production is scaled by approximately 2^factor (exponential)
@ -2016,10 +2022,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1747,10 +1747,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -995,7 +995,12 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normal
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Double size STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Double size
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quad size 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_NORMAL :Normal
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Double size
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Quad size
STR_GAME_OPTIONS_BASE_GRF :{BLACK}Base graphics set STR_GAME_OPTIONS_BASE_GRF :{BLACK}Base graphics set
STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Select the base graphics set to use STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Select the base graphics set to use
@ -1195,8 +1200,8 @@ STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Steepness of a
STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% STR_CONFIG_SETTING_PERCENTAGE :{COMMA}%
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Slope steepness for road vehicles: {STRING} STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Slope steepness for road vehicles: {STRING}
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Steepness of a sloped tile for a road vehicle. Higher values make it more difficult to climb a hill STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Steepness of a sloped tile for a road vehicle. Higher values make it more difficult to climb a hill
STR_CONFIG_SETTING_FORBID_90_DEG :Forbid trains and ships from making 90° turns: {STRING} STR_CONFIG_SETTING_FORBID_90_DEG :Forbid trains from making 90° turns: {STRING}
STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90 degree turns occur when a horizontal track is directly followed by a vertical track piece on the adjacent tile, thus making the train turn by 90 degree when traversing the tile edge instead of the usual 45 degrees for other track combinations. This also applies to the turning radius of ships STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90 degree turns occur when a horizontal track is directly followed by a vertical track piece on the adjacent tile, thus making the train turn by 90 degrees when traversing the tile edge instead of the usual 45 degrees for other track combinations.
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Allow joining stations not directly adjacent: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Allow joining stations not directly adjacent: {STRING}
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Allow adding parts to a station without directly touching the existing parts. Needs Ctrl+Click while placing the new parts STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Allow adding parts to a station without directly touching the existing parts. Needs Ctrl+Click while placing the new parts
STR_CONFIG_SETTING_INFLATION :Inflation: {STRING} STR_CONFIG_SETTING_INFLATION :Inflation: {STRING}
@ -1252,8 +1257,8 @@ STR_CONFIG_SETTING_PLANE_SPEED :Plane speed fac
STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Set the relative speed of planes compared to other vehicle types, to reduce the amount of income of transport by aircraft STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Set the relative speed of planes compared to other vehicle types, to reduce the amount of income of transport by aircraft
STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA}
STR_CONFIG_SETTING_PLANE_CRASHES :Number of plane crashes: {STRING} STR_CONFIG_SETTING_PLANE_CRASHES :Number of plane crashes: {STRING}
STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Set the chance of an aircraft crash happening STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Set the chance of a random aircraft crash happening.{}* Large airplanes always have a risk of crashing when landing on small airports
STR_CONFIG_SETTING_PLANE_CRASHES_NONE :None STR_CONFIG_SETTING_PLANE_CRASHES_NONE :None*
STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Reduced STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Reduced
STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal
STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Allow drive-through road stops on town owned roads: {STRING} STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Allow drive-through road stops on town owned roads: {STRING}
@ -1578,6 +1583,10 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Enabling this s
STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Forbidden STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Forbidden
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Allowed STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Allowed
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Allowed, custom town layout STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Allowed, custom town layout
STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Town cargo generation: {STRING}
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :How much cargo is produced by houses in towns, relative to the overall population of the town.{}Quadratic growth: A town twice the size generates four times as many passengers.{}Linear growth: A town twice the size generates twice the amount of passengers.
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Quadratic (original)
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Linear
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :In-game placement of trees: {STRING} STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :In-game placement of trees: {STRING}
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Control random appearance of trees during the game. This might affect industries which rely on tree growth, for example lumber mills STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Control random appearance of trees during the game. This might affect industries which rely on tree growth, for example lumber mills
@ -1792,10 +1801,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS
@ -2739,6 +2745,9 @@ STR_FRAMERATE_DRAWING :{BLACK}Graphics
STR_FRAMERATE_DRAWING_VIEWPORTS :{BLACK} World viewports: STR_FRAMERATE_DRAWING_VIEWPORTS :{BLACK} World viewports:
STR_FRAMERATE_VIDEO :{BLACK}Video output: STR_FRAMERATE_VIDEO :{BLACK}Video output:
STR_FRAMERATE_SOUND :{BLACK}Sound mixing: STR_FRAMERATE_SOUND :{BLACK}Sound mixing:
STR_FRAMERATE_ALLSCRIPTS :{BLACK} GS/AI total:
STR_FRAMERATE_GAMESCRIPT :{BLACK} Game script:
STR_FRAMERATE_AI :{BLACK} AI {NUM} {STRING}
############ End of leave-in-this-order ############ End of leave-in-this-order
############ Leave those lines in this order!! ############ Leave those lines in this order!!
STR_FRAMETIME_CAPTION_GAMELOOP :Game loop STR_FRAMETIME_CAPTION_GAMELOOP :Game loop
@ -2753,6 +2762,9 @@ STR_FRAMETIME_CAPTION_DRAWING :Graphics render
STR_FRAMETIME_CAPTION_DRAWING_VIEWPORTS :World viewport rendering STR_FRAMETIME_CAPTION_DRAWING_VIEWPORTS :World viewport rendering
STR_FRAMETIME_CAPTION_VIDEO :Video output STR_FRAMETIME_CAPTION_VIDEO :Video output
STR_FRAMETIME_CAPTION_SOUND :Sound mixing STR_FRAMETIME_CAPTION_SOUND :Sound mixing
STR_FRAMETIME_CAPTION_ALLSCRIPTS :GS/AI scripts total
STR_FRAMETIME_CAPTION_GAMESCRIPT :Game script
STR_FRAMETIME_CAPTION_AI :AI {NUM} {STRING}
############ End of leave-in-this-order ############ End of leave-in-this-order

@ -1430,10 +1430,7 @@ STR_OSNAME_WINDOWS :Vindozo
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unikso STR_OSNAME_UNIX :Unikso
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1831,10 +1831,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1594,10 +1594,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

File diff suppressed because it is too large Load Diff

@ -1201,8 +1201,8 @@ STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Inclinaison d'u
STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% STR_CONFIG_SETTING_PERCENTAGE :{COMMA}%
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Inclinaison des pentes pour les véhicules routiers{NBSP}: {STRING} STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Inclinaison des pentes pour les véhicules routiers{NBSP}: {STRING}
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Inclinaison d'une case en pente pour un véhicule routier. Les valeurs les plus hautes rendent lascension plus difficile STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Inclinaison d'une case en pente pour un véhicule routier. Les valeurs les plus hautes rendent lascension plus difficile
STR_CONFIG_SETTING_FORBID_90_DEG :Interdire aux trains et aux navires les virages à 90°{NBSP}: {STRING} STR_CONFIG_SETTING_FORBID_90_DEG :Interdire aux trains les virages à 90°{NBSP}: {STRING}
STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Les virages à 90° se produisent lorsqu'une voie horizontale est directement suivie par une voie verticale, impliquant que le train tourne de 90° en traversant la bordure de la case au lieu des 45° habituels pour les autres combinaisons de voies.{}S'applique également à la rotation des navires. STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Les virages à 90° se produisent lorsqu'une voie horizontale est directement suivie par une voie verticale, impliquant que le train tourne de 90° en traversant la bordure de la case au lieu des 45° habituels pour les autres combinaisons de voies.
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Permettre de joindre des stations non adjacentes{NBSP}: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Permettre de joindre des stations non adjacentes{NBSP}: {STRING}
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Autoriser l'ajout à une station de morceaux ne touchant pas directement les morceaux existants. Un Ctrl-clic est requis pour placer les nouveaux morceaux. STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Autoriser l'ajout à une station de morceaux ne touchant pas directement les morceaux existants. Un Ctrl-clic est requis pour placer les nouveaux morceaux.
STR_CONFIG_SETTING_INFLATION :Inflation{NBSP}: {STRING} STR_CONFIG_SETTING_INFLATION :Inflation{NBSP}: {STRING}
@ -1258,8 +1258,8 @@ STR_CONFIG_SETTING_PLANE_SPEED :Facteur de vite
STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Définir la vitesse relative des aéronefs par rapport aux autres types de véhicule, pour réduire les revenus du transport aérien STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Définir la vitesse relative des aéronefs par rapport aux autres types de véhicule, pour réduire les revenus du transport aérien
STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA}
STR_CONFIG_SETTING_PLANE_CRASHES :Nombre d'accidents d'avion{NBSP}: {STRING} STR_CONFIG_SETTING_PLANE_CRASHES :Nombre d'accidents d'avion{NBSP}: {STRING}
STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Définir la probabilité qu'un accident d'avion se produise STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Définir la probabilité qu'un accident d'avion se produise.{}* Les jets auront toujours un risque de s'écraser en atterrissant sur les petits aéroports
STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Aucun STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Aucun*
STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Réduit STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Réduit
STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal
STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Autoriser les arrêts de bus sur les routes des municipalités{NBSP}: {STRING} STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Autoriser les arrêts de bus sur les routes des municipalités{NBSP}: {STRING}
@ -1798,10 +1798,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1981,10 +1981,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1774,10 +1774,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1954,10 +1954,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1894,10 +1894,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1796,10 +1796,7 @@ STR_OSNAME_WINDOWS :חלונות
STR_OSNAME_DOS :דוס STR_OSNAME_DOS :דוס
STR_OSNAME_UNIX :יוניקס STR_OSNAME_UNIX :יוניקס
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :מערכת הפעלה בי
STR_OSNAME_HAIKU :הייקו STR_OSNAME_HAIKU :הייקו
STR_OSNAME_MORPHOS :מערכת הפעלה מורפ
STR_OSNAME_AMIGAOS :מערכת הפעלה אניגמה
STR_OSNAME_OS2 :מערכת הפעלה או.אס שתיים STR_OSNAME_OS2 :מערכת הפעלה או.אס שתיים
STR_OSNAME_SUNOS :סולריס STR_OSNAME_SUNOS :סולריס

@ -1248,6 +1248,8 @@ STR_CONFIG_SETTING_AUTOSLOPE :Épületek, vá
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Tájrendezés engedélyezése épületek és utak alatt azok eltávolítása nélkül STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Tájrendezés engedélyezése épületek és utak alatt azok eltávolítása nélkül
STR_CONFIG_SETTING_CATCHMENT :Élethűbben méretezett állomási vonzáskörzetek bekapcsolása: {STRING} STR_CONFIG_SETTING_CATCHMENT :Élethűbben méretezett állomási vonzáskörzetek bekapcsolása: {STRING}
STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :A különböző állomások és repterek más vonzáskörzettel rendelkeznek STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :A különböző állomások és repterek más vonzáskörzettel rendelkeznek
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES :A vállalatok állomásai elláthatnak beépített semleges állomással rendelkező gazdasági épületeket: {STRING}
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :Ha be van kapcsolva, akkor az olyan gazdasági épületeket, amelyekhez beépített állomás tartozik (pl. olajfúró tornyok), el lehet látni a vállalatok által épített közeli állomásokkal is. Ha ki van kapcsolva, akkor csak a beépített állomásukkal lehet ellátni ezeket a gazdasági épületeket. A vállalatok közeli állomásai nem tudják őket ellátni, és a beépített állomások sem látnak el mást, csak az adott gazdasági épületet.
STR_CONFIG_SETTING_EXTRADYNAMITE :Települési tulajdonú utak/hidak/alagutak rombolásának engedélyezése: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE :Települési tulajdonú utak/hidak/alagutak rombolásának engedélyezése: {STRING}
STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Városi tulajdonú infrastruktúra és épületek könnyebb eltávolíthatósága STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Városi tulajdonú infrastruktúra és épületek könnyebb eltávolíthatósága
STR_CONFIG_SETTING_TRAIN_LENGTH :Vonatok maximális hossza: {STRING} STR_CONFIG_SETTING_TRAIN_LENGTH :Vonatok maximális hossza: {STRING}
@ -1264,8 +1266,8 @@ STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Egy emelkedő m
STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% STR_CONFIG_SETTING_PERCENTAGE :{COMMA}%
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Emelkedő meredeksége közúti járműveknek: {STRING} STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Emelkedő meredeksége közúti járműveknek: {STRING}
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Egy emelkedő mező meredeksége közúti járműveknek. Nagyobb érték esetén a jármű nehezebben mássza meg az emelkedőt STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Egy emelkedő mező meredeksége közúti járműveknek. Nagyobb érték esetén a jármű nehezebben mássza meg az emelkedőt
STR_CONFIG_SETTING_FORBID_90_DEG :Vonatok és hajók nem tehetnek 90 fokos kanyart: {STRING} STR_CONFIG_SETTING_FORBID_90_DEG :Vonatok nem tehetnek 90 fokos kanyart: {STRING}
STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90 fokos kanyarok akkor fordulnak elő, ha egy vízszintes pályaelemet egy függőleges elem követ közvetlenül a következő mezőn, ami által a vonat egy 90 fokos kanyart tesz a szokásos 45 fokos helyett. Ez ugyanígy előfordulhat hajók esetében is STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90 fokos kanyarok akkor fordulnak elő, ha egy vízszintes pályaelemet egy függőleges elem követ közvetlenül a következő mezőn, ami által a vonat egy 90 fokos kanyart tesz a szokásos 45 fokos helyett.
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Nem közvetlen szomszédos állomások egyesítése: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Nem közvetlen szomszédos állomások egyesítése: {STRING}
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Állomásrészek hozzáadásának engedélyezése úgy, hogy az nem érinti közvetlenül a meglévő részeket. Ctrl+kattintás szükséges hozzá az új részek elhelyezése közben STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Állomásrészek hozzáadásának engedélyezése úgy, hogy az nem érinti közvetlenül a meglévő részeket. Ctrl+kattintás szükséges hozzá az új részek elhelyezése közben
STR_CONFIG_SETTING_INFLATION :Infláció: {STRING} STR_CONFIG_SETTING_INFLATION :Infláció: {STRING}
@ -1321,8 +1323,8 @@ STR_CONFIG_SETTING_PLANE_SPEED :Repülőgép se
STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Repülőgépek relatív sebességének beállítása más járműtípusokhoz viszonyítva, a légi szállítás bevételének csökkentéséhez STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Repülőgépek relatív sebességének beállítása más járműtípusokhoz viszonyítva, a légi szállítás bevételének csökkentéséhez
STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA}
STR_CONFIG_SETTING_PLANE_CRASHES :Repülőgép-szerencsétlenségek száma: {STRING} STR_CONFIG_SETTING_PLANE_CRASHES :Repülőgép-szerencsétlenségek száma: {STRING}
STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Repülőgép-szerencsétlenség esélyének beállítása STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Repülőgép-szerencsétlenség esélyének beállítása.{}* Nagy repülőgépek esetén mindig fennáll a baleset veszélye, ha kis reptéren próbálnak leszállni!
STR_CONFIG_SETTING_PLANE_CRASHES_NONE :nincs STR_CONFIG_SETTING_PLANE_CRASHES_NONE :nincs*
STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :csökkentett STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :csökkentett
STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :normál STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :normál
STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Áthaladó megállóhelyek engedélyezése települési tulajdonú utakon: {STRING} STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Áthaladó megállóhelyek engedélyezése települési tulajdonú utakon: {STRING}
@ -1647,6 +1649,10 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Bekapcsolva a j
STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :tiltott STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :tiltott
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :megengedett STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :megengedett
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :megengedett, egyéni városelrendezés STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :megengedett, egyéni városelrendezés
STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Termelés a településeken: {STRING}
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Azt adja meg, hogy mennyi rakományt termelnek a városi épületek a település lakosságának függvényében.{}Négyzetes növekedés: Egy kétszer nagyobb település négyszer több utast termel.{}Lineáris növekedés: Egy kétszer nagyobb település kétszer több utast termel.
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Négyzetes (eredeti)
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Lineáris
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Játékbeli faelhelyezkedés: {STRING} STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Játékbeli faelhelyezkedés: {STRING}
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Fák véletlenszerű megjelenésének szabályozása a játék során. Ez befolyásolhatja a gazdasági épületeket, melyek a fák növekedésétől függnek, mint a favágók STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Fák véletlenszerű megjelenésének szabályozása a játék során. Ez befolyásolhatja a gazdasági épületeket, melyek a fák növekedésétől függnek, mint a favágók
@ -1861,10 +1867,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1635,10 +1635,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1780,10 +1780,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1770,10 +1770,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1821,10 +1821,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1774,10 +1774,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -472,6 +472,7 @@ STR_TOOLBAR_SOUND_MUSIC :효과음/배
############ range for message menu starts ############ range for message menu starts
STR_NEWS_MENU_LAST_MESSAGE_NEWS_REPORT :최근 메시지/뉴스 기록 STR_NEWS_MENU_LAST_MESSAGE_NEWS_REPORT :최근 메시지/뉴스 기록
STR_NEWS_MENU_MESSAGE_HISTORY_MENU :과거 메시지 목록 STR_NEWS_MENU_MESSAGE_HISTORY_MENU :과거 메시지 목록
STR_NEWS_MENU_DELETE_ALL_MESSAGES :모든 뉴스 메시지 삭제
############ range ends here ############ range ends here
############ range for about menu starts ############ range for about menu starts
@ -996,13 +997,18 @@ STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}사용
STR_GAME_OPTIONS_RESOLUTION_OTHER :기타 STR_GAME_OPTIONS_RESOLUTION_OTHER :기타
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}인터페이스 크기 STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}인터페이스 크기
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}인터페이스의 크기를 선택하십시오. STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}인터페이스의 크기를 선택합니다.
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :보통 STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :기본 크기
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :2배 크기 STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :2배 크기
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :4배 크기 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_NORMAL :기본 크기
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :2배 크기
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :4배 크기
STR_GAME_OPTIONS_BASE_GRF :{BLACK}기본 그래픽 세트 STR_GAME_OPTIONS_BASE_GRF :{BLACK}기본 그래픽 세트
STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}사용하실 기본 그래픽을 선택하세요. STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}사용하실 기본 그래픽을 선택하세요.
@ -1206,7 +1212,7 @@ STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :열차에 적
STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% STR_CONFIG_SETTING_PERCENTAGE :{COMMA}%
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :경사도 설정 (자동차/전차용): {STRING} STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :경사도 설정 (자동차/전차용): {STRING}
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :자동차/전차에 적용시킬 경사도를 설정합니다. 값이 높을수록 차량이 언덕을 오를 때 더 힘이 듭니다. STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :자동차/전차에 적용시킬 경사도를 설정합니다. 값이 높을수록 차량이 언덕을 오를 때 더 힘이 듭니다.
STR_CONFIG_SETTING_FORBID_90_DEG :열차/선박의 90도 회전을 금지함: {STRING} STR_CONFIG_SETTING_FORBID_90_DEG :열차의 90도 회전을 금지함: {STRING}
STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :─ 모양의 수평 선로와 │ 모양의 수직 선로가 바로 이어져 만날 때 90도 회전이 발생합니다. 이 설정을 켜면, 열차가 칸 가장자리를 통과할 때 90도로 회전할 수 있도록 허용합니다. 이 설정은 선박의 회전 반경에도 적용됩니다. STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :─ 모양의 수평 선로와 │ 모양의 수직 선로가 바로 이어져 만날 때 90도 회전이 발생합니다. 이 설정을 켜면, 열차가 칸 가장자리를 통과할 때 90도로 회전할 수 있도록 허용합니다. 이 설정은 선박의 회전 반경에도 적용됩니다.
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :역이 같은 방향으로 붙어있지 않아도 같은 이름의 역 짓기 허용: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :역이 같은 방향으로 붙어있지 않아도 같은 이름의 역 짓기 허용: {STRING}
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :이미 존재하는 역을 직접 건드리지 않고도 역의 일부분을 새로 추가/확장하는 것을 허용합니다. 인접한 칸에 기존과 다른 새로운 역을 놓을 때에는 CTRL+클릭해야 합니다. STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :이미 존재하는 역을 직접 건드리지 않고도 역의 일부분을 새로 추가/확장하는 것을 허용합니다. 인접한 칸에 기존과 다른 새로운 역을 놓을 때에는 CTRL+클릭해야 합니다.
@ -1264,8 +1270,8 @@ STR_CONFIG_SETTING_PLANE_SPEED :항공기 속
STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :항공 수송에 대한 수익을 제한하기 위해, 다른 운송 수단의 속력을 1로 보았을 때의 항공기의 속력 비율을 설정합니다. STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :항공 수송에 대한 수익을 제한하기 위해, 다른 운송 수단의 속력을 1로 보았을 때의 항공기의 속력 비율을 설정합니다.
STR_CONFIG_SETTING_PLANE_SPEED_VALUE :(실제 속력) x {COMMA}분의 1 STR_CONFIG_SETTING_PLANE_SPEED_VALUE :(실제 속력) x {COMMA}분의 1
STR_CONFIG_SETTING_PLANE_CRASHES :항공기 추락 빈도수: {STRING} STR_CONFIG_SETTING_PLANE_CRASHES :항공기 추락 빈도수: {STRING}
STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :항공기 충돌 사고가 일어날 수 있는지 여부를 설정합니다. STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :항공기 충돌 사고가 일어날 수 있는지 여부를 설정합니다.{}* 대형 항공기는 소형 공항에 착륙할 때 항상 충돌 사고를 일으킬 가능성이 있습니다.
STR_CONFIG_SETTING_PLANE_CRASHES_NONE :없음 STR_CONFIG_SETTING_PLANE_CRASHES_NONE :없음*
STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :적음 STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :적음
STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :보통 STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :보통
STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :도시 소유의 도로 위에 버스 정류장 건설 허용: {STRING} STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :도시 소유의 도로 위에 버스 정류장 건설 허용: {STRING}
@ -1996,10 +2002,7 @@ STR_OSNAME_WINDOWS :{G=f}Windows
STR_OSNAME_DOS :{G=f}DOS STR_OSNAME_DOS :{G=f}DOS
STR_OSNAME_UNIX :{G=f}Unix STR_OSNAME_UNIX :{G=f}Unix
STR_OSNAME_OSX :{G=f}OS{NBSP}X STR_OSNAME_OSX :{G=f}OS{NBSP}X
STR_OSNAME_BEOS :{G=f}BeOS
STR_OSNAME_HAIKU :{G=f}Haiku STR_OSNAME_HAIKU :{G=f}Haiku
STR_OSNAME_MORPHOS :{G=f}MorphOS
STR_OSNAME_AMIGAOS :{G=f}AmigaOS
STR_OSNAME_OS2 :{G=f}OS/2 STR_OSNAME_OS2 :{G=f}OS/2
STR_OSNAME_SUNOS :{G=f}SunOS STR_OSNAME_SUNOS :{G=f}SunOS
@ -2288,6 +2291,7 @@ STR_NETWORK_CONNECTION_DISCONNECT :{BLACK}접속
STR_NETWORK_NEED_GAME_PASSWORD_CAPTION :{WHITE}서버 암호가 걸려있습니다. 암호를 입력하세요. STR_NETWORK_NEED_GAME_PASSWORD_CAPTION :{WHITE}서버 암호가 걸려있습니다. 암호를 입력하세요.
STR_NETWORK_NEED_COMPANY_PASSWORD_CAPTION :{WHITE}회사 암호가 걸려있습니다. 암호를 입력하세요. STR_NETWORK_NEED_COMPANY_PASSWORD_CAPTION :{WHITE}회사 암호가 걸려있습니다. 암호를 입력하세요.
STR_NETWORK_COMPANY_LIST_CLIENT_LIST_CAPTION :{WHITE}접속자 목록
# Network company list added strings # Network company list added strings
STR_NETWORK_COMPANY_LIST_CLIENT_LIST :접속자 목록 STR_NETWORK_COMPANY_LIST_CLIENT_LIST :접속자 목록
@ -3256,6 +3260,9 @@ STR_FRAMERATE_DRAWING :{BLACK}그래
STR_FRAMERATE_DRAWING_VIEWPORTS :{BLACK} 세계 화면: STR_FRAMERATE_DRAWING_VIEWPORTS :{BLACK} 세계 화면:
STR_FRAMERATE_VIDEO :{BLACK}비디오 출력: STR_FRAMERATE_VIDEO :{BLACK}비디오 출력:
STR_FRAMERATE_SOUND :{BLACK}사운드 합성: STR_FRAMERATE_SOUND :{BLACK}사운드 합성:
STR_FRAMERATE_ALLSCRIPTS :{BLACK} 총 게임 스크립트/AI:
STR_FRAMERATE_GAMESCRIPT :{BLACK} 게임 스크립트:
STR_FRAMERATE_AI :{BLACK} 인공지능 {NUM} {STRING}
############ End of leave-in-this-order ############ End of leave-in-this-order
############ Leave those lines in this order!! ############ Leave those lines in this order!!
STR_FRAMETIME_CAPTION_GAMELOOP :게임 루프 STR_FRAMETIME_CAPTION_GAMELOOP :게임 루프
@ -3270,6 +3277,9 @@ STR_FRAMETIME_CAPTION_DRAWING :그래픽 렌
STR_FRAMETIME_CAPTION_DRAWING_VIEWPORTS :세계 화면 렌더링 STR_FRAMETIME_CAPTION_DRAWING_VIEWPORTS :세계 화면 렌더링
STR_FRAMETIME_CAPTION_VIDEO :비디오 출력 STR_FRAMETIME_CAPTION_VIDEO :비디오 출력
STR_FRAMETIME_CAPTION_SOUND :사운드 합성 STR_FRAMETIME_CAPTION_SOUND :사운드 합성
STR_FRAMETIME_CAPTION_ALLSCRIPTS :게임 스크립트/인공지능의 전체 스크립트 양입니다.
STR_FRAMETIME_CAPTION_GAMESCRIPT :게임 스크립트
STR_FRAMETIME_CAPTION_AI :인공지능 {NUM} {STRING}
############ End of leave-in-this-order ############ End of leave-in-this-order
@ -3634,6 +3644,7 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}성취
# Goal window # Goal window
STR_GOALS_CAPTION :{WHITE}{COMPANY} 목표 STR_GOALS_CAPTION :{WHITE}{COMPANY} 목표
STR_GOALS_SPECTATOR_CAPTION :{WHITE}전체 목표 STR_GOALS_SPECTATOR_CAPTION :{WHITE}전체 목표
STR_GOALS_SPECTATOR :전체 목표
STR_GOALS_GLOBAL_TITLE :{BLACK}전체 목표: STR_GOALS_GLOBAL_TITLE :{BLACK}전체 목표:
STR_GOALS_TEXT :{ORANGE}{STRING} STR_GOALS_TEXT :{ORANGE}{STRING}
STR_GOALS_NONE :{ORANGE}- 없음 - STR_GOALS_NONE :{ORANGE}- 없음 -
@ -3682,6 +3693,7 @@ STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}산업
# Story book window # Story book window
STR_STORY_BOOK_CAPTION :{WHITE}{COMPANY}의 스토리 북 STR_STORY_BOOK_CAPTION :{WHITE}{COMPANY}의 스토리 북
STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}전체 스토리 북 STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}전체 스토리 북
STR_STORY_BOOK_SPECTATOR :전체 스토리 북
STR_STORY_BOOK_TITLE :{YELLOW}{STRING} STR_STORY_BOOK_TITLE :{YELLOW}{STRING}
STR_STORY_BOOK_GENERIC_PAGE_ITEM :{NUM}쪽 STR_STORY_BOOK_GENERIC_PAGE_ITEM :{NUM}쪽
STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}드롭 다운 목록에서 이동하고자 하는 쪽수를 선택하세요. STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}드롭 다운 목록에서 이동하고자 하는 쪽수를 선택하세요.

@ -1971,10 +1971,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1717,10 +1717,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1989,10 +1989,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1773,10 +1773,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1531,10 +1531,7 @@ STR_OSNAME_WINDOWS :Tetingkap
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1186,6 +1186,8 @@ STR_CONFIG_SETTING_AUTOSLOPE :Tillat endring
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Tillat endring av landskapet under bygninger og spor uten å fjerne dem STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Tillat endring av landskapet under bygninger og spor uten å fjerne dem
STR_CONFIG_SETTING_CATCHMENT :Mer realistisk størrelse på oppfangingsområder: {STRING} STR_CONFIG_SETTING_CATCHMENT :Mer realistisk størrelse på oppfangingsområder: {STRING}
STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Ha oppsamlingsområder i forskjellige størrelser for forskjellige typer stasjoner og lufthavner STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Ha oppsamlingsområder i forskjellige størrelser for forskjellige typer stasjoner og lufthavner
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES :Firmaets stasjoner kan betjene industrier med tilknyttede nøytrale stasjoner: {STRING}
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :Hvis aktivert, vil industrier med egne stasjoner (slik som oljerigger) også kunne betjenes av firma-stasjoner bygget i nærheten. Hvis deaktivert, vil disse industriene bare kunne betjenes av sine egne stasjoner. Nærliggende firma-stasjoner vil ikke kunne betjene dem, heller ikke vil den egne stasjonen betjene noe annet enn den tilhørende industrien.
STR_CONFIG_SETTING_EXTRADYNAMITE :Tillat fjerning av flere veier, broer osv. eid av byene: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE :Tillat fjerning av flere veier, broer osv. eid av byene: {STRING}
STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Gjør det enklere å fjerne infrastruktur og bygninger som tilhører byer STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Gjør det enklere å fjerne infrastruktur og bygninger som tilhører byer
STR_CONFIG_SETTING_TRAIN_LENGTH :Maksimal toglengde: {STRING} STR_CONFIG_SETTING_TRAIN_LENGTH :Maksimal toglengde: {STRING}
@ -1202,8 +1204,8 @@ STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Brattheten av e
STR_CONFIG_SETTING_PERCENTAGE :{COMMA} % STR_CONFIG_SETTING_PERCENTAGE :{COMMA} %
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Skråningens bratthet for veikjøretøy: {STRING} STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Skråningens bratthet for veikjøretøy: {STRING}
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Brattheten av et skrått kartelement for et veikjøretøy. Høyere verdier gjør det vanskeligere å kjøre opp bakken STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Brattheten av et skrått kartelement for et veikjøretøy. Høyere verdier gjør det vanskeligere å kjøre opp bakken
STR_CONFIG_SETTING_FORBID_90_DEG :Forby tog og skip å gjøre 90° svinger: {STRING} STR_CONFIG_SETTING_FORBID_90_DEG :Forby tog å gjøre 90° svinger: {STRING}
STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90-graders svinger oppstår når et horisontalt spor etterfølges av et vertikalt spor på tilstøtende kartelement, som dermed fører til at toget må snu 90 grader når det krysser kartelementet, istedenfor de vanlige 45 grader for andre spor-kombinasjoner. Dette gjelder også for båters svingradius STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90-graders svinger oppstår når et horisontalt spor etterfølges av et vertikalt spor på tilstøtende kartelement, som medfører at toget må svinge 90 grader når det krysser kartelementet, i stedet for de vanlige 45 grader for andre spor-kombinasjoner.
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Tillat sammenslåing av stasjoner som ikke ligger inntil hverandre: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Tillat sammenslåing av stasjoner som ikke ligger inntil hverandre: {STRING}
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Gjør det mulig å legge til deler til en stasjon uten at de er direkte ved siden av hverandre. Bruk Ctrl+klikk for å bygge slike stasjoner. STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Gjør det mulig å legge til deler til en stasjon uten at de er direkte ved siden av hverandre. Bruk Ctrl+klikk for å bygge slike stasjoner.
STR_CONFIG_SETTING_INFLATION :Inflasjon: {STRING} STR_CONFIG_SETTING_INFLATION :Inflasjon: {STRING}
@ -1260,8 +1262,8 @@ STR_CONFIG_SETTING_PLANE_SPEED :Flyfart faktor:
STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Still den relative hastigheten til fly sammenlignet med andre kjøretøy, for å redusere inntekter ved luftfrakt STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Still den relative hastigheten til fly sammenlignet med andre kjøretøy, for å redusere inntekter ved luftfrakt
STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA}
STR_CONFIG_SETTING_PLANE_CRASHES :Antall flystyrter: {STRING} STR_CONFIG_SETTING_PLANE_CRASHES :Antall flystyrter: {STRING}
STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Bestem sjansen for en flykatastrofe STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Bestem sannsynligheten for flykrasj.{}* Store fly vil alltid kunne krasje når de lander på små flyplasser.
STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Ingen STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Ingen*
STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Redusert STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Redusert
STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normalt STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normalt
STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Tillat stoppesteder med gjennomkjøring på by-eide veier: {STRING} STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Tillat stoppesteder med gjennomkjøring på by-eide veier: {STRING}
@ -1586,6 +1588,10 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Ved å aktivere
STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Forbudt STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Forbudt
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Tillatt STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Tillatt
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Tillatt, egendefinert oppsett av by STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Tillatt, egendefinert oppsett av by
STR_CONFIG_SETTING_TOWN_CARGOGENMODE :varegenerering byer: {STRING}
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Hvor mye varer som genereres av hus i byer, i forhold til byens folketall.{}Kvadratisk vekst: En by av dobbel størrelse genererer fire ganger så mange passasjerer.{}Lineær vekst: En by av dobbel størrelse genererer dobbelt så mange passasjerer.
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Kvadratisk (original)
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Lineær
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Plassering av trær i spillet: {STRING} STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Plassering av trær i spillet: {STRING}
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Kontroll tilfeldige utseender til tre under spillet. Dette kan påvirke industrier som avhenger av trevekst, for eksempel trelast STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Kontroll tilfeldige utseender til tre under spillet. Dette kan påvirke industrier som avhenger av trevekst, for eksempel trelast
@ -1800,10 +1806,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1693,10 +1693,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1374,6 +1374,7 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Podwójny
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Poczwórny STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Poczwórny
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Poczwórny
STR_GAME_OPTIONS_BASE_GRF :{BLACK}Podstawowy zestaw grafik STR_GAME_OPTIONS_BASE_GRF :{BLACK}Podstawowy zestaw grafik
STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Wybierz podstawowy zestaw grafik do użycia STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Wybierz podstawowy zestaw grafik do użycia
@ -1955,6 +1956,7 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Aktywacja tej o
STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Zabronione STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Zabronione
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Dozwolone STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Dozwolone
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Dozwolone, dowolny układ miasta STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Dozwolone, dowolny układ miasta
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Liniowy
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Rozmieszczenie drzew w grze: {STRING} STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Rozmieszczenie drzew w grze: {STRING}
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Losowe pojawianie się drzew podczas gry. Może mieć to wpływ na zakłady opierające się na wyrastaniu drzew, np. tartaki STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Losowe pojawianie się drzew podczas gry. Może mieć to wpływ na zakłady opierające się na wyrastaniu drzew, np. tartaki
@ -2169,10 +2171,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS
@ -2759,7 +2758,7 @@ STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}Jednokie
STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Zamiana sygnałów{}Jeżeli włączone, kliknięcie na istniejący sygnał spowoduje zamianę go na wybrany typ i wariant. CTRL+klik przełącza istniejący wariant. Shift+klik pokazuje szacowany koszt zamiany STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Zamiana sygnałów{}Jeżeli włączone, kliknięcie na istniejący sygnał spowoduje zamianę go na wybrany typ i wariant. CTRL+klik przełącza istniejący wariant. Shift+klik pokazuje szacowany koszt zamiany
STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}Gęstość sygnałów przy przeciąganiu STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}Gęstość sygnałów przy przeciąganiu
STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}Zmniejsz odległość między sygnałami przy przeciąganiu STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}Zmniejsz odległość między sygnałami przy przeciąganiu
STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Zwiększ gęstość sygnałów przy przeciąganiu STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Zwiększ odległość między sygnałami przy przeciąganiu
# Bridge selection window # Bridge selection window
STR_SELECT_RAIL_BRIDGE_CAPTION :{WHITE}Wybierz rodzaj mostu kolejowego STR_SELECT_RAIL_BRIDGE_CAPTION :{WHITE}Wybierz rodzaj mostu kolejowego
@ -3083,6 +3082,7 @@ STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD
# Framerate display window # Framerate display window
STR_FRAMERATE_CAPTION :{WHITE}Ilość klatek na sekundę STR_FRAMERATE_CAPTION :{WHITE}Ilość klatek na sekundę
STR_FRAMERATE_CAPTION_SMALL :{STRING}{WHITE} ({DECIMAL}x)
STR_FRAMERATE_RATE_GAMELOOP_TOOLTIP :{BLACK}Liczba ticków gry symulowanych na sekundę. STR_FRAMERATE_RATE_GAMELOOP_TOOLTIP :{BLACK}Liczba ticków gry symulowanych na sekundę.
STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}Liczba renderowanych klatek wideo na sekundę. STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}Liczba renderowanych klatek wideo na sekundę.
STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}Jak szybko gra obecnie działa, w porównaniu do oczekiwanej prędkości przy normalnym tempie symulacji. STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}Jak szybko gra obecnie działa, w porównaniu do oczekiwanej prędkości przy normalnym tempie symulacji.
@ -3107,6 +3107,7 @@ STR_FRAMERATE_SOUND :{WHITE}Miksowan
############ End of leave-in-this-order ############ End of leave-in-this-order
############ Leave those lines in this order!! ############ Leave those lines in this order!!
STR_FRAMETIME_CAPTION_GAMELOOP :Pętla gry STR_FRAMETIME_CAPTION_GAMELOOP :Pętla gry
STR_FRAMETIME_CAPTION_GL_ECONOMY :Obsługa ładunku
STR_FRAMETIME_CAPTION_GL_LINKGRAPH :Opóźnienie wykresu połączeń STR_FRAMETIME_CAPTION_GL_LINKGRAPH :Opóźnienie wykresu połączeń
STR_FRAMETIME_CAPTION_DRAWING :Renderowanie grafiki STR_FRAMETIME_CAPTION_DRAWING :Renderowanie grafiki
STR_FRAMETIME_CAPTION_DRAWING_VIEWPORTS :Renderowanie okna podgląu świata STR_FRAMETIME_CAPTION_DRAWING_VIEWPORTS :Renderowanie okna podgląu świata
@ -3466,6 +3467,7 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}Daj ła
# Goal window # Goal window
STR_GOALS_CAPTION :{WHITE}Cele firmy {COMPANY} STR_GOALS_CAPTION :{WHITE}Cele firmy {COMPANY}
STR_GOALS_SPECTATOR_CAPTION :{WHITE}Cele globalne STR_GOALS_SPECTATOR_CAPTION :{WHITE}Cele globalne
STR_GOALS_SPECTATOR :Cele globalne
STR_GOALS_GLOBAL_TITLE :{BLACK}Cele globalne: STR_GOALS_GLOBAL_TITLE :{BLACK}Cele globalne:
STR_GOALS_TEXT :{ORANGE}{STRING} STR_GOALS_TEXT :{ORANGE}{STRING}
STR_GOALS_NONE :{ORANGE}- Brak - STR_GOALS_NONE :{ORANGE}- Brak -
@ -3514,6 +3516,7 @@ STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klik na
# Story book window # Story book window
STR_STORY_BOOK_CAPTION :{WHITE}Dziennik Historii Firmy {COMPANY} STR_STORY_BOOK_CAPTION :{WHITE}Dziennik Historii Firmy {COMPANY}
STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}Ogólny przewodnik STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}Ogólny przewodnik
STR_STORY_BOOK_SPECTATOR :Ogólny przewodnik
STR_STORY_BOOK_TITLE :{YELLOW}{STRING} STR_STORY_BOOK_TITLE :{YELLOW}{STRING}
STR_STORY_BOOK_GENERIC_PAGE_ITEM :Strona {NUM} STR_STORY_BOOK_GENERIC_PAGE_ITEM :Strona {NUM}
STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Skocz na właściwą stronę wybierając ją z listy. STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Skocz na właściwą stronę wybierając ją z listy.

@ -1798,10 +1798,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1747,10 +1747,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1337,6 +1337,8 @@ STR_CONFIG_SETTING_AUTOSLOPE :Разреши
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Разрешить изменение ландшафта под домами и дорогами, не требуя их сноса STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Разрешить изменение ландшафта под домами и дорогами, не требуя их сноса
STR_CONFIG_SETTING_CATCHMENT :Зона покрытия зависит от типа станции: {STRING} STR_CONFIG_SETTING_CATCHMENT :Зона покрытия зависит от типа станции: {STRING}
STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Установить различный размер зоны покрытия для различных типов станций и аэропортов STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Установить различный размер зоны покрытия для различных типов станций и аэропортов
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES :Предприятия с собственными станциями используют станции игроков: {STRING}
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :При включении - предприятия, имеющие собственные станции погрузки (например, нефтяные платформы), смогут обслуживаться также и станциями игроков, построенными поблизости.{}При отключении - предприятия будут производить погрузку только через свои внутренние станции, и эти станции будут обслуживать только своё предприятие.
STR_CONFIG_SETTING_EXTRADYNAMITE :Разрешить снос (почти) всех городских объектов: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE :Разрешить снос (почти) всех городских объектов: {STRING}
STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Упростить снос городских зданий и инфраструктуры STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Упростить снос городских зданий и инфраструктуры
STR_CONFIG_SETTING_TRAIN_LENGTH :Максимальная длина состава: {STRING} STR_CONFIG_SETTING_TRAIN_LENGTH :Максимальная длина состава: {STRING}
@ -1353,8 +1355,8 @@ STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Настрой
STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% STR_CONFIG_SETTING_PERCENTAGE :{COMMA}%
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Крутизна склона для автотранспорта: {STRING} STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Крутизна склона для автотранспорта: {STRING}
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Настройка крутизны склона для автотранспорта. Высокие значения делают подъём более тяжёлым. STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Настройка крутизны склона для автотранспорта. Высокие значения делают подъём более тяжёлым.
STR_CONFIG_SETTING_FORBID_90_DEG :Запретить 90-градусные повороты на ж/д и море: {STRING} STR_CONFIG_SETTING_FORBID_90_DEG :Запретить 90-градусные повороты на ж/д: {STRING}
STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Поворот на 90° происходит, когда к горизонтальному участку рельсов примыкает вертикальный. В остальных случаях поезда поворачивают на 45°. Запрет поворота на 90° относится также и к кораблям. STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Поворот на 90° происходит, когда к горизонтальному участку рельсов примыкает вертикальный. В остальных случаях поезда поворачивают на 45°.
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Разрешить объединение не примыкающих друг к другу станций: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Разрешить объединение не примыкающих друг к другу станций: {STRING}
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Разрешить объединять несколько станций в одну, даже если они не примыкают друг к другу. Требуется нажать Ctrl+щелчок при расширении станции. STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Разрешить объединять несколько станций в одну, даже если они не примыкают друг к другу. Требуется нажать Ctrl+щелчок при расширении станции.
STR_CONFIG_SETTING_INFLATION :Включить инфляцию: {STRING} STR_CONFIG_SETTING_INFLATION :Включить инфляцию: {STRING}
@ -1410,7 +1412,7 @@ STR_CONFIG_SETTING_PLANE_SPEED :Множите
STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Ограничение скорости воздушных судов относительно другого транспорта для снижения сверхприбылей от использования самолётов STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Ограничение скорости воздушных судов относительно другого транспорта для снижения сверхприбылей от использования самолётов
STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA}
STR_CONFIG_SETTING_PLANE_CRASHES :Вероятность падения самолётов: {STRING} STR_CONFIG_SETTING_PLANE_CRASHES :Вероятность падения самолётов: {STRING}
STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Настройка вероятности падения самолёта STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Настройка вероятности падения самолёта.{}У крупных самолётов всегда есть риск крушения при посадке в маленьких аэропортах.
STR_CONFIG_SETTING_PLANE_CRASHES_NONE :отсутствует STR_CONFIG_SETTING_PLANE_CRASHES_NONE :отсутствует
STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :сниженная STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :сниженная
STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :обычная STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :обычная
@ -1738,6 +1740,10 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Включен
STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :запрещено STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :запрещено
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :разрешено STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :разрешено
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :разрешено с выбором сети дорог STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :разрешено с выбором сети дорог
STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Количество грузов и пассажиров в городах: {STRING}
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Зависимость количества грузов и пассажиров от размера города.{}Линейная: в городе двукратного размера появляется в 2 раза больше пассажиров.{}Квадратичная: в городе двукратного размера появляется в 4 раза больше пассажиров.
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :квадратичная зависимость (оригинальная)
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :линейная зависимость
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Размножение деревьев в игре: {STRING} STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Размножение деревьев в игре: {STRING}
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Настройка возможности самостоятельного размножения деревьев в игре. Это может влиять на работоспособность некоторых предприятий, например, лесопилок. STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Настройка возможности самостоятельного размножения деревьев в игре. Это может влиять на работоспособность некоторых предприятий, например, лесопилок.
@ -1952,10 +1958,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1977,10 +1977,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1780,10 +1780,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1838,10 +1838,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1924,10 +1924,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1783,10 +1783,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1201,8 +1201,8 @@ STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Grado de inclin
STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% STR_CONFIG_SETTING_PERCENTAGE :{COMMA}%
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Inclinación de pendientes para vehículos de carretera: {STRING} STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Inclinación de pendientes para vehículos de carretera: {STRING}
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Grado de inclinación de una casilla con pendiente para un vehículo de carretera. Los valores altos hacen que sea más difícil subir las colinas STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Grado de inclinación de una casilla con pendiente para un vehículo de carretera. Los valores altos hacen que sea más difícil subir las colinas
STR_CONFIG_SETTING_FORBID_90_DEG :Prohibir a trenes y barcos realizar giros de 90°: {STRING} STR_CONFIG_SETTING_FORBID_90_DEG :Prohibir a trenes realizar giros de 90°: {STRING}
STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Los giros de 90° ocurren en vías férreas perpendiculares donde el tren gira 90° al pasar de una casilla a otra, en lugar de los 45° habituales en otras combinaciones de vías. Esto también se aplica al radio de giro de los barcos STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Los giros de 90° ocurren en vías férreas perpendiculares donde el tren gira 90° al pasar de una casilla a otra, en lugar de los 45° habituales en otras combinaciones de vías.
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Permitir la ampliación de estaciones no adyacentes: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Permitir la ampliación de estaciones no adyacentes: {STRING}
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Permitir añadir de partes a una estación sin tener que estar en contacto directo con las partes existentes. Se debe pulsar Ctrl+Clic para añadir las nuevas partes STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Permitir añadir de partes a una estación sin tener que estar en contacto directo con las partes existentes. Se debe pulsar Ctrl+Clic para añadir las nuevas partes
STR_CONFIG_SETTING_INFLATION :Inflación: {STRING} STR_CONFIG_SETTING_INFLATION :Inflación: {STRING}
@ -1259,7 +1259,7 @@ STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Establece la ve
STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1/{COMMA} STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1/{COMMA}
STR_CONFIG_SETTING_PLANE_CRASHES :Cantidad de accidentes aéreos: {STRING} STR_CONFIG_SETTING_PLANE_CRASHES :Cantidad de accidentes aéreos: {STRING}
STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Probabilidad de que ocurran accidentes aéreos STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Probabilidad de que ocurran accidentes aéreos
STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Ninguno STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Ninguno*
STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Reducida STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Reducida
STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal
STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Permitir la construcción de paradas intermedias sobre carreteras en pueblos: {STRING} STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Permitir la construcción de paradas intermedias sobre carreteras en pueblos: {STRING}
@ -1798,10 +1798,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1791,10 +1791,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1540,10 +1540,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1721,10 +1721,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :ระบบปฏิบัติการ Haiku STR_OSNAME_HAIKU :ระบบปฏิบัติการ Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1770,10 +1770,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1796,10 +1796,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -314,6 +314,8 @@ STR_COLOUR_ORANGE :Помаран
STR_COLOUR_BROWN :Коричневий STR_COLOUR_BROWN :Коричневий
STR_COLOUR_GREY :Сірий STR_COLOUR_GREY :Сірий
STR_COLOUR_WHITE :Білий STR_COLOUR_WHITE :Білий
STR_COLOUR_RANDOM :Випадково
STR_COLOUR_DEFAULT :Звичайний
# Units used in OpenTTD # Units used in OpenTTD
STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}миль/год STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}миль/год
@ -589,6 +591,7 @@ STR_TOOLBAR_SOUND_MUSIC :Звук/Муз
############ range for message menu starts ############ range for message menu starts
STR_NEWS_MENU_LAST_MESSAGE_NEWS_REPORT :Останнє повідомлення STR_NEWS_MENU_LAST_MESSAGE_NEWS_REPORT :Останнє повідомлення
STR_NEWS_MENU_MESSAGE_HISTORY_MENU :Історія повідомлень STR_NEWS_MENU_MESSAGE_HISTORY_MENU :Історія повідомлень
STR_NEWS_MENU_DELETE_ALL_MESSAGES :Видалити всі повідомлення
############ range ends here ############ range ends here
############ range for about menu starts ############ range for about menu starts
@ -600,6 +603,7 @@ STR_ABOUT_MENU_SCREENSHOT :Знімок е
STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Знімок екрану з максимальним збільшенням STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Знімок екрану з максимальним збільшенням
STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Знімок екрану зі стандартним збільшенням STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Знімок екрану зі стандартним збільшенням
STR_ABOUT_MENU_GIANT_SCREENSHOT :Знімок всієї карти STR_ABOUT_MENU_GIANT_SCREENSHOT :Знімок всієї карти
STR_ABOUT_MENU_SHOW_FRAMERATE :Швидкість генерації гри
STR_ABOUT_MENU_ABOUT_OPENTTD :Про гру 'OpenTTD' STR_ABOUT_MENU_ABOUT_OPENTTD :Про гру 'OpenTTD'
STR_ABOUT_MENU_SPRITE_ALIGNER :Вирівнювання спрайтів STR_ABOUT_MENU_SPRITE_ALIGNER :Вирівнювання спрайтів
STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :Вкл./відкл. обмежуючі рамки STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :Вкл./відкл. обмежуючі рамки
@ -778,6 +782,7 @@ STR_MUSIC_RULER_MARKER :{TINY_FONT}{BLA
STR_MUSIC_TRACK_NONE :{TINY_FONT}{DKGREEN}-- STR_MUSIC_TRACK_NONE :{TINY_FONT}{DKGREEN}--
STR_MUSIC_TRACK_DIGIT :{TINY_FONT}{DKGREEN}{ZEROFILL_NUM} STR_MUSIC_TRACK_DIGIT :{TINY_FONT}{DKGREEN}{ZEROFILL_NUM}
STR_MUSIC_TITLE_NONE :{TINY_FONT}{DKGREEN}------ STR_MUSIC_TITLE_NONE :{TINY_FONT}{DKGREEN}------
STR_MUSIC_TITLE_NOMUSIC :{TINY_FONT}{DKGREEN}Немає доступної музики
STR_MUSIC_TITLE_NAME :{TINY_FONT}{DKGREEN}"{STRING}" STR_MUSIC_TITLE_NAME :{TINY_FONT}{DKGREEN}"{STRING}"
STR_MUSIC_TRACK :{TINY_FONT}{BLACK}Доріжка STR_MUSIC_TRACK :{TINY_FONT}{BLACK}Доріжка
STR_MUSIC_XTITLE :{TINY_FONT}{BLACK}Заголовок STR_MUSIC_XTITLE :{TINY_FONT}{BLACK}Заголовок
@ -798,11 +803,14 @@ STR_MUSIC_TOOLTIP_TOGGLE_PROGRAM_SHUFFLE :{BLACK}Вкл./
STR_MUSIC_TOOLTIP_SHOW_MUSIC_TRACK_SELECTION :{BLACK}Показує вікно вибору музичної програми STR_MUSIC_TOOLTIP_SHOW_MUSIC_TRACK_SELECTION :{BLACK}Показує вікно вибору музичної програми
# Playlist window # Playlist window
STR_PLAYLIST_MUSIC_SELECTION_SETNAME :{WHITE}Музична програма - '{STRING}'
STR_PLAYLIST_TRACK_NAME :{TINY_FONT}{LTBLUE}{ZEROFILL_NUM} "{STRING}" STR_PLAYLIST_TRACK_NAME :{TINY_FONT}{LTBLUE}{ZEROFILL_NUM} "{STRING}"
STR_PLAYLIST_TRACK_INDEX :{TINY_FONT}{BLACK}Назва доріжки STR_PLAYLIST_TRACK_INDEX :{TINY_FONT}{BLACK}Назва доріжки
STR_PLAYLIST_PROGRAM :{TINY_FONT}{BLACK}Програма - '{STRING}' STR_PLAYLIST_PROGRAM :{TINY_FONT}{BLACK}Програма - '{STRING}'
STR_PLAYLIST_CLEAR :{TINY_FONT}{BLACK}Очистити STR_PLAYLIST_CLEAR :{TINY_FONT}{BLACK}Очистити
STR_PLAYLIST_CHANGE_SET :{BLACK}Змінити набір
STR_PLAYLIST_TOOLTIP_CLEAR_CURRENT_PROGRAM_CUSTOM1 :{BLACK}Очистити програму (тільки для Набору 1 або Набору 2) STR_PLAYLIST_TOOLTIP_CLEAR_CURRENT_PROGRAM_CUSTOM1 :{BLACK}Очистити програму (тільки для Набору 1 або Набору 2)
STR_PLAYLIST_TOOLTIP_CHANGE_SET :{BLACK}Виберіть інший набір музичного оформлення
STR_PLAYLIST_TOOLTIP_CLICK_TO_ADD_TRACK :{BLACK}Виберіть доріжку, щоб додати до програми (тільки для Набору 1 або Набору 2) STR_PLAYLIST_TOOLTIP_CLICK_TO_ADD_TRACK :{BLACK}Виберіть доріжку, щоб додати до програми (тільки для Набору 1 або Набору 2)
STR_PLAYLIST_TOOLTIP_CLICK_TO_REMOVE_TRACK :{BLACK}Клацніть мишою на мелодії для її видалення зі списку (лише Набір1 та Набір2) STR_PLAYLIST_TOOLTIP_CLICK_TO_REMOVE_TRACK :{BLACK}Клацніть мишою на мелодії для її видалення зі списку (лише Набір1 та Набір2)
@ -938,6 +946,7 @@ STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLAC
STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Керівник) STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Керівник)
STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}{STRING} субсидував спорудження нового міста {TOWN}! STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}{STRING} субсидував спорудження нового міста {TOWN}!
STR_NEWS_NEW_TOWN_UNSPONSORED :{BLACK}{BIG_FONT}Нове місто {TOWN} побудовано!
STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}Будується {STRING} біля {TOWN}! STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}Будується {STRING} біля {TOWN}!
STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}Насаджено {STRING} біля {TOWN}! STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}Насаджено {STRING} біля {TOWN}!
@ -1005,9 +1014,9 @@ STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION :{BIG_FONT}{BLAC
# Extra view window # Extra view window
STR_EXTRA_VIEW_PORT_TITLE :{WHITE}Вікно {COMMA} STR_EXTRA_VIEW_PORT_TITLE :{WHITE}Вікно {COMMA}
STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN :{BLACK}Копіювати до вікна STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN :{BLACK}Змінити вікно
STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN_TT :{BLACK}Копіювати місцеположення з основного екрану до цього вікна STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN_TT :{BLACK}Копіювати місцеположення з основного екрану до цього вікна
STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Вставити з вікна STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Вставити в головне вікно
STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}Перейти на основному екрані до цього місця STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}Перейти на основному екрані до цього місця
# Game options window # Game options window
@ -1051,6 +1060,7 @@ STR_GAME_OPTIONS_CURRENCY_CUSTOM :Власна...
STR_GAME_OPTIONS_CURRENCY_GEL :Грузинські ларі (GEL) STR_GAME_OPTIONS_CURRENCY_GEL :Грузинські ларі (GEL)
STR_GAME_OPTIONS_CURRENCY_IRR :Іранський ріал (IRR) STR_GAME_OPTIONS_CURRENCY_IRR :Іранський ріал (IRR)
STR_GAME_OPTIONS_CURRENCY_RUB :Російський новий рубель (RUB) STR_GAME_OPTIONS_CURRENCY_RUB :Російський новий рубель (RUB)
STR_GAME_OPTIONS_CURRENCY_MXN :Мексиканське песо (MXN)
############ end of currency region ############ end of currency region
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Сторона руху транспорту STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Сторона руху транспорту
@ -1113,7 +1123,12 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Нормаль
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Подвійний розмір STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Подвійний розмір
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Почетверний розмір STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Почетверний розмір
STR_GAME_OPTIONS_FONT_ZOOM :{BLACK}Розмір шрифту
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Виберть розмір шрифту інтерфейсу
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :Нормальний
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Подвійний розмір
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Почетверний розмір
STR_GAME_OPTIONS_BASE_GRF :{BLACK}Базовий набір графіки STR_GAME_OPTIONS_BASE_GRF :{BLACK}Базовий набір графіки
STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Оберіть, яку основну графіку використовувати STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Оберіть, яку основну графіку використовувати
@ -1297,6 +1312,8 @@ STR_CONFIG_SETTING_AUTOSLOPE :Дозволи
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Можливість змінювати ландшафт під будівлями та дорогами без необхідності їх зносу STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Можливість змінювати ландшафт під будівлями та дорогами без необхідності їх зносу
STR_CONFIG_SETTING_CATCHMENT :Більш реалістічні зони покриття станцій: {STRING} STR_CONFIG_SETTING_CATCHMENT :Більш реалістічні зони покриття станцій: {STRING}
STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :При включенні розмір зони покриття станції залежить від її типу та розміру STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :При включенні розмір зони покриття станції залежить від її типу та розміру
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES :Підприємства з власними станціями обслуговують станції гравців: {STRING}
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :Якщо увімкнено - підприємства, що мають власні станції завантаження (наприклад, нафтові платформ), зможуть обслуговуватися також і збудованими поруч станціями гравців.{}При відключенні - підприємства будуть виконувати завантаження тільки через свої внутрішні станції, а ці станції будуть обслуговувати лише своє підприємство.
STR_CONFIG_SETTING_EXTRADYNAMITE :Дозволити видаляти більше міських будівель: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE :Дозволити видаляти більше міських будівель: {STRING}
STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :При включенні видалення міських будівель та інфраструктури стає біль простішим STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :При включенні видалення міських будівель та інфраструктури стає біль простішим
STR_CONFIG_SETTING_TRAIN_LENGTH :Максимальна довжина потягів: {STRING} STR_CONFIG_SETTING_TRAIN_LENGTH :Максимальна довжина потягів: {STRING}
@ -1313,7 +1330,7 @@ STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Налашту
STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% STR_CONFIG_SETTING_PERCENTAGE :{COMMA}%
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Крутизна схилів для дорожнього транспорту: {STRING} STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Крутизна схилів для дорожнього транспорту: {STRING}
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Налаштування крутизни схилів для дорожнього транспорту. Чим вище значення, тим складніше підйом на схилах. STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Налаштування крутизни схилів для дорожнього транспорту. Чим вище значення, тим складніше підйом на схилах.
STR_CONFIG_SETTING_FORBID_90_DEG :Заборонити поїздам і кораблям повертати на 90°: {STRING} STR_CONFIG_SETTING_FORBID_90_DEG :Заборонити поїздам повертати на 90°: {STRING}
STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :При включенні прямокутні перетини шляхів не будуть вважатися поворотами. Для повороту необходно прокладати шляхи під кутом 45°. STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :При включенні прямокутні перетини шляхів не будуть вважатися поворотами. Для повороту необходно прокладати шляхи під кутом 45°.
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Станції можуть складатися з не суміжних частин: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Станції можуть складатися з не суміжних частин: {STRING}
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Дозволяє об'єднання в одну станцію частин, що не примикають одна до одної. Щоб приєднати нову станцію до існуючої необхідно використовувати Ctrl+Click при будівництві. STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Дозволяє об'єднання в одну станцію частин, що не примикають одна до одної. Щоб приєднати нову станцію до існуючої необхідно використовувати Ctrl+Click при будівництві.
@ -1370,7 +1387,7 @@ STR_CONFIG_SETTING_PLANE_SPEED :Множник
STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Налаштування співвідношення швідкості повітряного транспорту та швидкості інших видів транспорту з метою зменьшення високих прибутків від авіації. STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Налаштування співвідношення швідкості повітряного транспорту та швидкості інших видів транспорту з метою зменьшення високих прибутків від авіації.
STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA}
STR_CONFIG_SETTING_PLANE_CRASHES :Частота повітряних катастроф: {STRING} STR_CONFIG_SETTING_PLANE_CRASHES :Частота повітряних катастроф: {STRING}
STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Налаштування частоти повітряних катастроф STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Налаштування частоти повітряних катастроф.{}* Великі літаки мають більший ризик катастрофив малих аеропортах
STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Немає STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Немає
STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Низька STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Низька
STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Нормальна STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Нормальна
@ -1382,6 +1399,8 @@ STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}Цю н
STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE :Витрати на утримання інфраструктури: {STRING} STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE :Витрати на утримання інфраструктури: {STRING}
STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE_HELPTEXT :При включенні інфраструктура потребує коштів для утримання. Витрати збільшуються не пропорційно з ростом розміру мережі, більше впливаючи на великі компанії ніж на малі STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE_HELPTEXT :При включенні інфраструктура потребує коштів для утримання. Витрати збільшуються не пропорційно з ростом розміру мережі, більше впливаючи на великі компанії ніж на малі
STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR :Колір компанії: {STRING}
STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_HELPTEXT :Виберіть початковий колір для компанії
STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS :Аеропорти не застарівають: {STRING} STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS :Аеропорти не застарівають: {STRING}
STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :При включенні кожен аеропорт буде доступним для будівництва безстроково після його впровадження. STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :При включенні кожен аеропорт буде доступним для будівництва безстроково після його впровадження.
@ -1466,6 +1485,12 @@ STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_HELPTEXT :Колір по
STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_GREEN :зелений STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_GREEN :зелений
STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_DARK_GREEN :темнозелений STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_DARK_GREEN :темнозелений
STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :фіолетовий STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :фіолетовий
STR_CONFIG_SETTING_SCROLLMODE :Переміщення вікна обзору: {STRING}
STR_CONFIG_SETTING_SCROLLMODE_HELPTEXT :Спосіб пересування ігрового поля
STR_CONFIG_SETTING_SCROLLMODE_DEFAULT :Переміщувати ПКМ, зафіксувавши курсор
STR_CONFIG_SETTING_SCROLLMODE_RMB_LOCKED :Переміщувати карту ПКМ, зафіксувавши курсор
STR_CONFIG_SETTING_SCROLLMODE_RMB :Переміщувати карту ПКМ
STR_CONFIG_SETTING_SCROLLMODE_LMB :Переміщувати ЛКМ
STR_CONFIG_SETTING_SMOOTH_SCROLLING :Плавна прокрутка у вікні: {STRING} STR_CONFIG_SETTING_SMOOTH_SCROLLING :Плавна прокрутка у вікні: {STRING}
STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Налаштування способу прокрутки основного екрану при клацанні мишою по зменшенній карті, або інших діях, що призводять до переміщення по карті (кнопки "Оглянути", тощо). При включенні опції переміщення карти відбувається плавно. При виключенні - відбувається моментальне переміщення в необхідну точку STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Налаштування способу прокрутки основного екрану при клацанні мишою по зменшенній карті, або інших діях, що призводять до переміщення по карті (кнопки "Оглянути", тощо). При включенні опції переміщення карти відбувається плавно. При виключенні - відбувається моментальне переміщення в необхідну точку
STR_CONFIG_SETTING_MEASURE_TOOLTIP :Показувати підказки про розміри під час будівництва: {STRING} STR_CONFIG_SETTING_MEASURE_TOOLTIP :Показувати підказки про розміри під час будівництва: {STRING}
@ -1497,6 +1522,8 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_COMMAND :Команда+
STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_CONTROL :Ctrl+клац мишою STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_CONTROL :Ctrl+клац мишою
STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :не емулювати STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :не емулювати
STR_CONFIG_SETTING_RIGHT_MOUSE_WND_CLOSE :Закрити вікно правою кнопкою миші: {STRING}
STR_CONFIG_SETTING_RIGHT_MOUSE_WND_CLOSE_HELPTEXT :Закривати вікно кліком правої кнопки миші по ньому. При цьому віключається поява підказок за правою кнопкою.
STR_CONFIG_SETTING_AUTOSAVE :Автозбереження: {STRING} STR_CONFIG_SETTING_AUTOSAVE :Автозбереження: {STRING}
STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Оберіть проміжок між автоматичними збереженнями гри STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Оберіть проміжок між автоматичними збереженнями гри
@ -1686,6 +1713,10 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Дозволя
STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Заборонено STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Заборонено
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Дозволено STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Дозволено
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Дозволено (з вибором дорожньої сітки) STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Дозволено (з вибором дорожньої сітки)
STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Кількість вантажів та пасажирів у містах: {STRING}
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Скільки вантажів генерується будинками в містах відносно населення.{}Квадратична залежність: Вдвічі більше місто генерує вчетверо більше вантажів.{}Лінійна: Вдвічі більше місто генерує вдвічі більше вантажів.
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Квадратична(оригінальна)
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :лінійна залежність
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Поява дерев під час гри: {STRING} STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Поява дерев під час гри: {STRING}
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Налаштування випадкової появи дерев на карті в процесі гри. Ця настройка також впливає на відповідні підприємства, такі як лісопилки. STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Налаштування випадкової появи дерев на карті в процесі гри. Ця настройка також впливає на відповідні підприємства, такі як лісопилки.
@ -1886,6 +1917,7 @@ STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Пере
STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Показати налаштування AI / Ігрового Скрипта STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Показати налаштування AI / Ігрового Скрипта
STR_INTRO_TOOLTIP_QUIT :{BLACK}Вийти з OpenTTD STR_INTRO_TOOLTIP_QUIT :{BLACK}Вийти з OpenTTD
STR_INTRO_BASESET :{BLACK}В обраному наборі базової графіки немає {NUM} спрайт{P а ів ів}. Будь ласка, оновіть набір графіки.
STR_INTRO_TRANSLATION :{BLACK}Переклад має {NUM} неперекладених рядків. Зареєструйтесь як перекладач вашої мови та покращіть OpenTTD. Детальніше читайте в readme.txt. STR_INTRO_TRANSLATION :{BLACK}Переклад має {NUM} неперекладених рядків. Зареєструйтесь як перекладач вашої мови та покращіть OpenTTD. Детальніше читайте в readme.txt.
# Quit window # Quit window
@ -1899,10 +1931,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS
@ -1931,6 +1960,7 @@ STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Змін
STR_CHEAT_SETUP_PROD :{LTBLUE}Дозволити зміну рівня виробництва: {ORANGE}{STRING} STR_CHEAT_SETUP_PROD :{LTBLUE}Дозволити зміну рівня виробництва: {ORANGE}{STRING}
# Livery window # Livery window
STR_LIVERY_CAPTION :{WHITE}Кольори компанії «{COMPANY}»
STR_LIVERY_GENERAL_TOOLTIP :{BLACK}Показати загальне фарбування STR_LIVERY_GENERAL_TOOLTIP :{BLACK}Показати загальне фарбування
STR_LIVERY_TRAIN_TOOLTIP :{BLACK}Показати фарбування поїздів STR_LIVERY_TRAIN_TOOLTIP :{BLACK}Показати фарбування поїздів
@ -2190,6 +2220,7 @@ STR_NETWORK_CONNECTION_DISCONNECT :{BLACK}Роз'
STR_NETWORK_NEED_GAME_PASSWORD_CAPTION :{WHITE}Сервер захищено паролем. Введіть пароль STR_NETWORK_NEED_GAME_PASSWORD_CAPTION :{WHITE}Сервер захищено паролем. Введіть пароль
STR_NETWORK_NEED_COMPANY_PASSWORD_CAPTION :{WHITE}Компанія захищена паролем. Введіть пароль STR_NETWORK_NEED_COMPANY_PASSWORD_CAPTION :{WHITE}Компанія захищена паролем. Введіть пароль
STR_NETWORK_COMPANY_LIST_CLIENT_LIST_CAPTION :{WHITE}Список клієнтів
# Network company list added strings # Network company list added strings
STR_NETWORK_COMPANY_LIST_CLIENT_LIST :Список клієнтів STR_NETWORK_COMPANY_LIST_CLIENT_LIST :Список клієнтів
@ -2402,6 +2433,7 @@ STR_LINKGRAPH_LEGEND_CAPTION :{BLACK}Леге
STR_LINKGRAPH_LEGEND_ALL :{BLACK}Усе STR_LINKGRAPH_LEGEND_ALL :{BLACK}Усе
STR_LINKGRAPH_LEGEND_NONE :{BLACK}Немає STR_LINKGRAPH_LEGEND_NONE :{BLACK}Немає
STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Виберіть компанії для відображення STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Виберіть компанії для відображення
STR_LINKGRAPH_LEGEND_COMPANY_TOOLTIP :{BLACK}{STRING}{}{COMPANY}
# Linkgraph legend window and linkgraph legend in smallmap # Linkgraph legend window and linkgraph legend in smallmap
STR_LINKGRAPH_LEGEND_UNUSED :{TINY_FONT}{BLACK}не використовується STR_LINKGRAPH_LEGEND_UNUSED :{TINY_FONT}{BLACK}не використовується
@ -2489,9 +2521,9 @@ STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Комб
STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}Розширений сигнал (електричний){}Розширений сигнал дозволяє більше ніж одному поїзду одночасно заходити до блоку сигналів, якщо поїзд може зарезервувати шлях до безпечної точки зупинки. Розширені сигнали дозволяють проїжджати їх з обох сторін STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}Розширений сигнал (електричний){}Розширений сигнал дозволяє більше ніж одному поїзду одночасно заходити до блоку сигналів, якщо поїзд може зарезервувати шлях до безпечної точки зупинки. Розширені сигнали дозволяють проїжджати їх з обох сторін
STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}Односторонній розширений сигнал (електричний){}Розширений сигнал дозволяє більше ніж одному поїзду одночасно заходити до блоку сигналів, якщо поїзд може зарезервувати шлях до безпечної точки зупинки. Односторонні розширені сигнали не дозволяють вїжджати з іншої сторони STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}Односторонній розширений сигнал (електричний){}Розширений сигнал дозволяє більше ніж одному поїзду одночасно заходити до блоку сигналів, якщо поїзд може зарезервувати шлях до безпечної точки зупинки. Односторонні розширені сигнали не дозволяють вїжджати з іншої сторони
STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Заміна сигналів{}Коли обрано, натискання на існуючому сигналі замінить його на обраний тип і варіант сигналу, CTRL+натискання замінить існуючий варіант. Утримуйте Shift для показу витрат на заміну STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Заміна сигналів{}Коли обрано, натискання на існуючому сигналі замінить його на обраний тип і варіант сигналу, CTRL+натискання замінить існуючий варіант. Утримуйте Shift для показу витрат на заміну
STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}Частота сигналів при перетаскуванні STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}Відстань між сигналами при перетаскуванні
STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}Зменшити частоту сигналів STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}Зменшити відстань між сигналами
STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Збільшити частоту сигналів STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Збільшити відстань між сигналами
# Bridge selection window # Bridge selection window
STR_SELECT_RAIL_BRIDGE_CAPTION :{WHITE}Виберіть міст STR_SELECT_RAIL_BRIDGE_CAPTION :{WHITE}Виберіть міст
@ -2712,6 +2744,7 @@ STR_LAND_AREA_INFORMATION_AIRPORTTILE_NAME :{BLACK}Назв
STR_LAND_AREA_INFORMATION_NEWGRF_NAME :{BLACK}NewGRF: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_NEWGRF_NAME :{BLACK}NewGRF: {LTBLUE}{STRING}
STR_LAND_AREA_INFORMATION_CARGO_ACCEPTED :{BLACK}Приймає: {LTBLUE} STR_LAND_AREA_INFORMATION_CARGO_ACCEPTED :{BLACK}Приймає: {LTBLUE}
STR_LAND_AREA_INFORMATION_CARGO_EIGHTS :({COMMA}/8 {STRING}) STR_LAND_AREA_INFORMATION_CARGO_EIGHTS :({COMMA}/8 {STRING})
STR_LANG_AREA_INFORMATION_RAIL_TYPE :{BLACK}Тип зал.колії: {LTBLUE}{STRING}
STR_LANG_AREA_INFORMATION_RAIL_SPEED_LIMIT :{BLACK}Ліміт швидкості залізниці: {LTBLUE}{VELOCITY} STR_LANG_AREA_INFORMATION_RAIL_SPEED_LIMIT :{BLACK}Ліміт швидкості залізниці: {LTBLUE}{VELOCITY}
STR_LANG_AREA_INFORMATION_ROAD_SPEED_LIMIT :{BLACK}Ліміт швидкості авто: {LTBLUE}{VELOCITY} STR_LANG_AREA_INFORMATION_ROAD_SPEED_LIMIT :{BLACK}Ліміт швидкості авто: {LTBLUE}{VELOCITY}
@ -2724,29 +2757,29 @@ STR_LAI_CLEAR_DESCRIPTION_FIELDS :Поле
STR_LAI_CLEAR_DESCRIPTION_SNOW_COVERED_LAND :Засніжена земля STR_LAI_CLEAR_DESCRIPTION_SNOW_COVERED_LAND :Засніжена земля
STR_LAI_CLEAR_DESCRIPTION_DESERT :Пустеля STR_LAI_CLEAR_DESCRIPTION_DESERT :Пустеля
STR_LAI_RAIL_DESCRIPTION_TRACK :Звичайна колія STR_LAI_RAIL_DESCRIPTION_TRACK :Залізнична колія
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_SIGNALS :Звичайна колія з блок-сигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_SIGNALS :Залізнична колія з блок-сигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRESIGNALS :Звичайна колія з пресигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRESIGNALS :Залізнична колія з пресигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXITSIGNALS :Звичайна колія з вихідними сигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXITSIGNALS :Залізнична колія з вихідними сигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBOSIGNALS :Звичайна колія з комбосигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBOSIGNALS :Залізнична колія з комбосигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBSSIGNALS :Звичайна колія з маршрутними сигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBSSIGNALS :Залізнична колія з маршрутними сигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NOENTRYSIGNALS :Звичайна колія з односторонніми маршрутними сигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NOENTRYSIGNALS :Залізнична колія з односторонніми маршрутними сигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PRESIGNALS :Звичайна колія з блок-сигналами і пресигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PRESIGNALS :Залізнична колія з блок-сигналами і пресигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_EXITSIGNALS :Звичайна колія з блок-сигналами і вихідними сигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_EXITSIGNALS :Залізнична колія з блок-сигналами і вихідними сигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_COMBOSIGNALS :Звичайна колія з блок-сигналами і комбосигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_COMBOSIGNALS :Залізнична колія з блок-сигналами і комбосигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PBSSIGNALS :Звичайна колія з блок-сигналами та маршрутними сигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PBSSIGNALS :Залізнична колія з блок-сигналами та маршрутними сигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_NOENTRYSIGNALS :Звичайна колія з блок-сигналами та одност. маршрутними сигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_NOENTRYSIGNALS :Залізнична колія з блок-сигналами та одност. маршрутними сигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_EXITSIGNALS :Звичайна колія з пресигналами і вихідними сигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_EXITSIGNALS :Залізнична колія з пресигналами і вихідними сигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_COMBOSIGNALS :Звичайна колія з пресигналами і комбосигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_COMBOSIGNALS :Залізнична колія з пресигналами і комбосигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_PBSSIGNALS :Звичайна колія з пресигналами і маршрутними сигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_PBSSIGNALS :Залізнична колія з пресигналами і маршрутними сигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_NOENTRYSIGNALS :Звичайна колія з пресигналами і одност. маршрутними сигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_NOENTRYSIGNALS :Залізнична колія з пресигналами і одност. маршрутними сигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_COMBOSIGNALS :Звичайна колія з вихідними сигналами та комбосигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_COMBOSIGNALS :Залізнична колія з вихідними сигналами та комбосигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_PBSSIGNALS :Звичайна колія з вихідними та маршрутними сигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_PBSSIGNALS :Залізнична колія з вихідними та маршрутними сигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_NOENTRYSIGNALS :Звичайна колія з вихідними та одност. маршрутними сигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_NOENTRYSIGNALS :Залізнична колія з вихідними та одност. маршрутними сигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_PBSSIGNALS :Звичайна колія з комбосигналами і маршрутними сигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_PBSSIGNALS :Залізнична колія з комбосигналами і маршрутними сигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_NOENTRYSIGNALS :Звичайна колія з комбосигналами та одност. маршрутними сигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_NOENTRYSIGNALS :Залізнична колія з комбосигналами та одност. маршрутними сигналами
STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBS_NOENTRYSIGNALS :Звичайна колія з маршрутними та одност. маршрутними сигналами STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBS_NOENTRYSIGNALS :Залізнична колія з маршрутними та одност. маршрутними сигналами
STR_LAI_RAIL_DESCRIPTION_TRAIN_DEPOT :Звичайна колія залізничне депо STR_LAI_RAIL_DESCRIPTION_TRAIN_DEPOT :Залізничне депо
STR_LAI_ROAD_DESCRIPTION_ROAD :Дорога STR_LAI_ROAD_DESCRIPTION_ROAD :Дорога
STR_LAI_ROAD_DESCRIPTION_ROAD_WITH_STREETLIGHTS :Дорога з вуличними ліхтарями STR_LAI_ROAD_DESCRIPTION_ROAD_WITH_STREETLIGHTS :Дорога з вуличними ліхтарями
@ -2813,13 +2846,58 @@ STR_ABOUT_VERSION :{BLACK}OpenTTD
STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2019 команда OpenTTD STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2019 команда OpenTTD
# Framerate display window # Framerate display window
STR_FRAMERATE_CAPTION :{WHITE}Швидкість гри
STR_FRAMERATE_CAPTION_SMALL :{STRING}{WHITE} ({DECIMAL}x)
STR_FRAMERATE_RATE_GAMELOOP :{BLACK}Швидкість прорахунку гри: {STRING}
STR_FRAMERATE_RATE_GAMELOOP_TOOLTIP :{BLACK}Кількість ігрових циклів в секунду.
STR_FRAMERATE_RATE_BLITTER :{BLACK}Виведення на екран: {STRING}
STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}Кількість кадрів побудованих за секунду
STR_FRAMERATE_SPEED_FACTOR :{BLACK}Наявна швидкість гри: {DECIMAL}x
STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK} Як швидко гра біжить в даний час, в порівнянні з очікуваною швидкістю при звичайній швидкості моделювання.
STR_FRAMERATE_CURRENT :{WHITE}Зараз
STR_FRAMERATE_AVERAGE :{WHITE}Середнє
STR_FRAMERATE_DATA_POINTS :{BLACK}Дані отримано з {COMMA} вимірюван {P "ня" "нь" "нь" } STR_FRAMERATE_DATA_POINTS :{BLACK}Дані отримано з {COMMA} вимірюван {P "ня" "нь" "нь" }
STR_FRAMERATE_MS_GOOD :{LTBLUE}{DECIMAL} ms STR_FRAMERATE_MS_GOOD :{LTBLUE}{DECIMAL} мс
STR_FRAMERATE_MS_WARN :{YELLOW}{DECIMAL} ms STR_FRAMERATE_MS_WARN :{YELLOW}{DECIMAL} ms
STR_FRAMERATE_MS_BAD :{RED}{DECIMAL} мс
STR_FRAMERATE_FPS_GOOD :{LTBLUE}{DECIMAL} кадрів/сек
STR_FRAMERATE_FPS_WARN :{YELLOW}{DECIMAL} кадр{P "" "и" "ів"}/сек STR_FRAMERATE_FPS_WARN :{YELLOW}{DECIMAL} кадр{P "" "и" "ів"}/сек
STR_FRAMERATE_FPS_BAD :{RED}{DECIMAL} кадрів/сек
STR_FRAMERATE_GRAPH_MILLISECONDS :{TINY_FONT}{COMMA} мс
STR_FRAMERATE_GRAPH_SECONDS :{TINY_FONT}{COMMA} с
############ Leave those lines in this order!! ############ Leave those lines in this order!!
STR_FRAMERATE_GAMELOOP :{BLACK}Швидкість прорахунку гри:
STR_FRAMERATE_GL_ECONOMY :{BLACK} Розрахунок вантажів:
STR_FRAMERATE_GL_TRAINS :{BLACK} Рух поїздів:
STR_FRAMERATE_GL_ROADVEHS :{BLACK} Рух автомобілів:
STR_FRAMERATE_GL_SHIPS :{BLACK} Рух кораблів:
STR_FRAMERATE_GL_AIRCRAFT :{BLACK} Рух літаків:
STR_FRAMERATE_GL_LANDSCAPE :{BLACK} Зміни на карті:
STR_FRAMERATE_GL_LINKGRAPH :{BLACK} Затримка графу розподілу:
STR_FRAMERATE_DRAWING :{BLACK}Побудова зображень:
STR_FRAMERATE_DRAWING_VIEWPORTS :{BLACK} Додаткові вікна:
STR_FRAMERATE_VIDEO :{BLACK}Виведення на екран:
STR_FRAMERATE_SOUND :{BLACK}Обробка звуків:
STR_FRAMERATE_ALLSCRIPTS :{BLACK} Виконання скриптів:
STR_FRAMERATE_GAMESCRIPT :{BLACK} Ігровий Скрипт:
STR_FRAMERATE_AI :{BLACK} ШІ {NUM} {STRING}
############ End of leave-in-this-order ############ End of leave-in-this-order
############ Leave those lines in this order!! ############ Leave those lines in this order!!
STR_FRAMETIME_CAPTION_GAMELOOP :Прорахунок ігрового циклу
STR_FRAMETIME_CAPTION_GL_ECONOMY :Розрахунок обсягу вантажів
STR_FRAMETIME_CAPTION_GL_TRAINS :Прорахунок поїздів
STR_FRAMETIME_CAPTION_GL_ROADVEHS :Рух автомобілів
STR_FRAMETIME_CAPTION_GL_SHIPS :Рух кораблів
STR_FRAMETIME_CAPTION_GL_AIRCRAFT :Прорахунок літаків
STR_FRAMETIME_CAPTION_GL_LANDSCAPE :Розрахунок змін на карті
STR_FRAMETIME_CAPTION_GL_LINKGRAPH :Затримка графу розподілу
STR_FRAMETIME_CAPTION_DRAWING :Відображення графіки
STR_FRAMETIME_CAPTION_DRAWING_VIEWPORTS :Додаткові вікна перегляду
STR_FRAMETIME_CAPTION_VIDEO :Виведення на екран
STR_FRAMETIME_CAPTION_SOUND :Обробка звуку
STR_FRAMETIME_CAPTION_ALLSCRIPTS :Час виконання скриптів
STR_FRAMETIME_CAPTION_GAMESCRIPT :Час виконання ігрового скрипту
STR_FRAMETIME_CAPTION_AI :ШІ {NUM} {STRING}
############ End of leave-in-this-order ############ End of leave-in-this-order
@ -2845,6 +2923,9 @@ STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Дета
STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Інформація відсутня STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Інформація відсутня
STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING}
STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF: {WHITE}{STRING} STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF: {WHITE}{STRING}
STR_SAVELOAD_FILTER_TITLE :{BLACK}Фільтр:
STR_SAVELOAD_OVERWRITE_TITLE :{WHITE}Перезаписати файл
STR_SAVELOAD_OVERWRITE_WARNING :{YELLOW} Ви справді хочете перезаписати існуючий файл?
STR_SAVELOAD_OSKTITLE :{BLACK}Введіть назву файла збереженої гри STR_SAVELOAD_OSKTITLE :{BLACK}Введіть назву файла збереженої гри
@ -2962,7 +3043,12 @@ STR_NEWGRF_SETTINGS_VERSION :{BLACK}Верс
STR_NEWGRF_SETTINGS_MIN_VERSION :{BLACK}Мінімальна підтримувана версія: {SILVER}{NUM} STR_NEWGRF_SETTINGS_MIN_VERSION :{BLACK}Мінімальна підтримувана версія: {SILVER}{NUM}
STR_NEWGRF_SETTINGS_MD5SUM :{BLACK}MD5сума: {SILVER}{STRING} STR_NEWGRF_SETTINGS_MD5SUM :{BLACK}MD5сума: {SILVER}{STRING}
STR_NEWGRF_SETTINGS_PALETTE :{BLACK}Палітра: {SILVER}{STRING} STR_NEWGRF_SETTINGS_PALETTE :{BLACK}Палітра: {SILVER}{STRING}
STR_NEWGRF_SETTINGS_PALETTE_DEFAULT :Звичайна (D)
STR_NEWGRF_SETTINGS_PALETTE_DEFAULT_32BPP :Стандартна (D) / 32 bpp
STR_NEWGRF_SETTINGS_PALETTE_LEGACY :Застаріла
STR_NEWGRF_SETTINGS_PALETTE_LEGACY_32BPP :Застаріла (W) / 32 bpp
STR_NEWGRF_SETTINGS_PARAMETER :{BLACK}Параметри: {SILVER}{STRING} STR_NEWGRF_SETTINGS_PARAMETER :{BLACK}Параметри: {SILVER}{STRING}
STR_NEWGRF_SETTINGS_PARAMETER_NONE :нема
STR_NEWGRF_SETTINGS_NO_INFO :{BLACK}Немає доступної інформації STR_NEWGRF_SETTINGS_NO_INFO :{BLACK}Немає доступної інформації
STR_NEWGRF_SETTINGS_NOT_FOUND :{RED}Таких файлів не знайдено STR_NEWGRF_SETTINGS_NOT_FOUND :{RED}Таких файлів не знайдено
@ -3043,6 +3129,8 @@ STR_NEWGRF_ERROR_READ_BOUNDS :Вихід за
STR_NEWGRF_ERROR_GRM_FAILED :Недоступні необхідні ресурси GRF (спрайт {3:NUM}) STR_NEWGRF_ERROR_GRM_FAILED :Недоступні необхідні ресурси GRF (спрайт {3:NUM})
STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{1:STRING} був вимкнений {STRING} STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{1:STRING} був вимкнений {STRING}
STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Некоректний або невідомий формат розміщення спрайтів (спрайт {3:NUM}) STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :Некоректний або невідомий формат розміщення спрайтів (спрайт {3:NUM})
STR_NEWGRF_ERROR_LIST_PROPERTY_TOO_LONG :Дуже багато елементів у списку значень (спрайт {3:NUM}, властивість {4:HEX})
STR_NEWGRF_ERROR_INDPROD_CALLBACK :Невірна обробка продукції підприємства (спрайт {3:NUM}, "{1:STRING}")
# NewGRF related 'general' warnings # NewGRF related 'general' warnings
STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}Обережно! STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}Обережно!
@ -3107,6 +3195,7 @@ STR_EDIT_SIGN_SIGN_OSKTITLE :{BLACK}Введ
STR_TOWN_DIRECTORY_CAPTION :{WHITE}Міста STR_TOWN_DIRECTORY_CAPTION :{WHITE}Міста
STR_TOWN_DIRECTORY_NONE :{ORANGE}- немає - STR_TOWN_DIRECTORY_NONE :{ORANGE}- немає -
STR_TOWN_DIRECTORY_TOWN :{ORANGE}{TOWN}{BLACK} ({COMMA}) STR_TOWN_DIRECTORY_TOWN :{ORANGE}{TOWN}{BLACK} ({COMMA})
STR_TOWN_DIRECTORY_CITY :{ORANGE}{TOWN}{YELLOW} (Мегаполіс){BLACK} ({COMMA})
STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Назви міст - натисніть на назву, щоб показати місто у центрі екрану. Ctrl+клац мишою відкриває нове вікно з видом на місто STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Назви міст - натисніть на назву, щоб показати місто у центрі екрану. Ctrl+клац мишою відкриває нове вікно з видом на місто
STR_TOWN_POPULATION :{BLACK}Населення світу: {COMMA} STR_TOWN_POPULATION :{BLACK}Населення світу: {COMMA}
@ -3114,6 +3203,7 @@ STR_TOWN_POPULATION :{BLACK}Насе
STR_TOWN_VIEW_TOWN_CAPTION :{WHITE}{TOWN} STR_TOWN_VIEW_TOWN_CAPTION :{WHITE}{TOWN}
STR_TOWN_VIEW_CITY_CAPTION :{WHITE}{TOWN} (місто) STR_TOWN_VIEW_CITY_CAPTION :{WHITE}{TOWN} (місто)
STR_TOWN_VIEW_POPULATION_HOUSES :{BLACK}Населення: {ORANGE}{COMMA}{BLACK} Будинки: {ORANGE}{COMMA} STR_TOWN_VIEW_POPULATION_HOUSES :{BLACK}Населення: {ORANGE}{COMMA}{BLACK} Будинки: {ORANGE}{COMMA}
STR_TOWN_VIEW_CARGO_LAST_MONTH_MAX :{BLACK}{CARGO_LIST} минулого місяця: {ORANGE}{COMMA}{BLACK} макс: {ORANGE}{COMMA}
STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Вантаж, потрібний для зростання міста: STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Вантаж, потрібний для зростання міста:
STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{ORANGE}{STRING}{RED} потрібно STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{ORANGE}{STRING}{RED} потрібно
STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING}{BLACK} потрібно взимку STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING}{BLACK} потрібно взимку
@ -3166,6 +3256,7 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}Під
# Goal window # Goal window
STR_GOALS_CAPTION :{WHITE}Цілі {COMPANY} STR_GOALS_CAPTION :{WHITE}Цілі {COMPANY}
STR_GOALS_SPECTATOR_CAPTION :{WHITE}Глобальні цілі: STR_GOALS_SPECTATOR_CAPTION :{WHITE}Глобальні цілі:
STR_GOALS_SPECTATOR :Загальні задачі
STR_GOALS_GLOBAL_TITLE :{BLACK}Глобальні цілі: STR_GOALS_GLOBAL_TITLE :{BLACK}Глобальні цілі:
STR_GOALS_TEXT :{ORANGE}{STRING} STR_GOALS_TEXT :{ORANGE}{STRING}
STR_GOALS_NONE :{ORANGE}- нема - STR_GOALS_NONE :{ORANGE}- нема -
@ -3214,6 +3305,7 @@ STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Нати
# Story book window # Story book window
STR_STORY_BOOK_CAPTION :{WHITE}Історія {COMPANY} STR_STORY_BOOK_CAPTION :{WHITE}Історія {COMPANY}
STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}Світова історія STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}Світова історія
STR_STORY_BOOK_SPECTATOR :Всесвітня історія
STR_STORY_BOOK_TITLE :{YELLOW}{STRING} STR_STORY_BOOK_TITLE :{YELLOW}{STRING}
STR_STORY_BOOK_GENERIC_PAGE_ITEM :Стор. {NUM} STR_STORY_BOOK_GENERIC_PAGE_ITEM :Стор. {NUM}
STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Перейти до сторінки, вибраної в цьому списку. STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Перейти до сторінки, вибраної в цьому списку.
@ -3420,7 +3512,13 @@ STR_INDUSTRY_VIEW_LOCATION_TOOLTIP :{BLACK}Пока
STR_INDUSTRY_VIEW_PRODUCTION_LEVEL :{BLACK}Обсяг виробництва: {YELLOW}{COMMA}% STR_INDUSTRY_VIEW_PRODUCTION_LEVEL :{BLACK}Обсяг виробництва: {YELLOW}{COMMA}%
STR_INDUSTRY_VIEW_INDUSTRY_ANNOUNCED_CLOSURE :{YELLOW}Підприємство оголосило про близьке закриття! STR_INDUSTRY_VIEW_INDUSTRY_ANNOUNCED_CLOSURE :{YELLOW}Підприємство оголосило про близьке закриття!
STR_INDUSTRY_VIEW_REQUIRES_N_CARGO :{BLACK}Потребує: {YELLOW}{STRING}{STRING}
STR_INDUSTRY_VIEW_PRODUCES_N_CARGO :{BLACK}Виробляє: {YELLOW}{STRING}{STRING}
STR_INDUSTRY_VIEW_CARGO_LIST_EXTENSION :, {STRING}{STRING}
STR_INDUSTRY_VIEW_REQUIRES :{BLACK}Потребує:
STR_INDUSTRY_VIEW_ACCEPT_CARGO :{YELLOW}{STRING}{BLACK}{3:STRING}
STR_INDUSTRY_VIEW_ACCEPT_CARGO_AMOUNT :{YELLOW}{STRING}{BLACK}: {CARGO_SHORT} очікує{STRING}
STR_CONFIG_GAME_PRODUCTION :{WHITE}Змінити виробництво (кратне 8, до 2040) STR_CONFIG_GAME_PRODUCTION :{WHITE}Змінити виробництво (кратне 8, до 2040)
STR_CONFIG_GAME_PRODUCTION_LEVEL :{WHITE}Змінити обсяг виробництва (до 800%) STR_CONFIG_GAME_PRODUCTION_LEVEL :{WHITE}Змінити обсяг виробництва (до 800%)
@ -3474,6 +3572,7 @@ STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Груп
STR_GROUP_CREATE_TOOLTIP :{BLACK}Клацніть мишою, щоб створити групу STR_GROUP_CREATE_TOOLTIP :{BLACK}Клацніть мишою, щоб створити групу
STR_GROUP_DELETE_TOOLTIP :{BLACK}Стерти вибрану групу STR_GROUP_DELETE_TOOLTIP :{BLACK}Стерти вибрану групу
STR_GROUP_RENAME_TOOLTIP :{BLACK}Перейменувати вибрану групу STR_GROUP_RENAME_TOOLTIP :{BLACK}Перейменувати вибрану групу
STR_GROUP_LIVERY_TOOLTIP :{BLACK}Змінити колір вибраної групи
STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Клацніть мишою, щоб захистити групу від глобальної автозаміни STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Клацніть мишою, щоб захистити групу від глобальної автозаміни
STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Видалити групу STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Видалити групу
@ -3484,6 +3583,10 @@ STR_GROUP_REMOVE_ALL_VEHICLES :Позбути
STR_GROUP_RENAME_CAPTION :{BLACK}Перейменувати групу STR_GROUP_RENAME_CAPTION :{BLACK}Перейменувати групу
STR_GROUP_PROFIT_THIS_YEAR :Прибуток цього року:
STR_GROUP_PROFIT_LAST_YEAR :Прибуток минулого року:
STR_GROUP_OCCUPANCY :Використання:
STR_GROUP_OCCUPANCY_VALUE :{NUM}%
# Build vehicle window # Build vehicle window
STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION :Новий неелектрифікований поїзд STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION :Новий неелектрифікований поїзд
@ -3513,9 +3616,11 @@ STR_PURCHASE_INFO_AIRCRAFT_CAPACITY :{BLACK}Міст
STR_PURCHASE_INFO_PWAGPOWER_PWAGWEIGHT :{BLACK}Потужність: {GOLD}+{POWER}{BLACK} Вага: {GOLD}+{WEIGHT_SHORT} STR_PURCHASE_INFO_PWAGPOWER_PWAGWEIGHT :{BLACK}Потужність: {GOLD}+{POWER}{BLACK} Вага: {GOLD}+{WEIGHT_SHORT}
STR_PURCHASE_INFO_REFITTABLE_TO :{BLACK}Може бути переобладненим на: {GOLD}{STRING} STR_PURCHASE_INFO_REFITTABLE_TO :{BLACK}Може бути переобладненим на: {GOLD}{STRING}
STR_PURCHASE_INFO_ALL_TYPES :Всі типи вантажів STR_PURCHASE_INFO_ALL_TYPES :Всі типи вантажів
STR_PURCHASE_INFO_NONE :Нема
STR_PURCHASE_INFO_ALL_BUT :Всі, крім {CARGO_LIST} STR_PURCHASE_INFO_ALL_BUT :Всі, крім {CARGO_LIST}
STR_PURCHASE_INFO_MAX_TE :{BLACK}Максимальна тягова сила: {GOLD}{FORCE} STR_PURCHASE_INFO_MAX_TE :{BLACK}Максимальна тягова сила: {GOLD}{FORCE}
STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Дальність: {GOLD}{COMMA} клітинок STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Дальність: {GOLD}{COMMA} клітинок
STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Тип літака: {GOLD}{STRING}
STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Список поїздів. Клацніть на поїзд для інформації. Ctrl+клац мишою вимикає показ типу транспорту STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Список поїздів. Клацніть на поїзд для інформації. Ctrl+клац мишою вимикає показ типу транспорту
STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Список автомобілів. Клацніть на авто для отримання інформації. Ctrl+клац мишою вимикає показ типу транспорту STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Список автомобілів. Клацніть на авто для отримання інформації. Ctrl+клац мишою вимикає показ типу транспорту
@ -3650,6 +3755,10 @@ STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE :магнітн
STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Ціна: {CURRENCY_LONG} Вага: {WEIGHT_SHORT}{}Швидкість: {VELOCITY}{}Потужність: {POWER}{}Вартість експлуатації: {CURRENCY_LONG}/рік{}Місткість: {CARGO_LONG} STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Ціна: {CURRENCY_LONG} Вага: {WEIGHT_SHORT}{}Швидкість: {VELOCITY}{}Потужність: {POWER}{}Вартість експлуатації: {CURRENCY_LONG}/рік{}Місткість: {CARGO_LONG}
STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Вартість: {CURRENCY_LONG} Вага: {WEIGHT_SHORT}{}Швидкість: {VELOCITY} Потужність: {POWER} Макс. тяга: {6:FORCE}{}Вартість експлуатації: {4:CURRENCY_LONG}/рік{}Місткість: {5:CARGO_LONG} STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Вартість: {CURRENCY_LONG} Вага: {WEIGHT_SHORT}{}Швидкість: {VELOCITY} Потужність: {POWER} Макс. тяга: {6:FORCE}{}Вартість експлуатації: {4:CURRENCY_LONG}/рік{}Місткість: {5:CARGO_LONG}
STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAP_RUNCOST :{BLACK}Вартість: {CURRENCY_LONG} Макс. швидкість: {VELOCITY}{}Місткість: {CARGO_LONG}{}Вартість експлуатації: {CURRENCY_LONG}/рік STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAP_RUNCOST :{BLACK}Вартість: {CURRENCY_LONG} Макс. швидкість: {VELOCITY}{}Місткість: {CARGO_LONG}{}Вартість експлуатації: {CURRENCY_LONG}/рік
STR_ENGINE_PREVIEW_COST_MAX_SPEED_TYPE_CAP_CAP_RUNCOST :{BLACK}Вартість: {CURRENCY_LONG} Макс. швидкість: {VELOCITY}{}Тип: {STRING}{}Місткість: {CARGO_LONG}, {CARGO_LONG}{}Вартість експлуатації: {CURRENCY_LONG}/рік
STR_ENGINE_PREVIEW_COST_MAX_SPEED_TYPE_CAP_RUNCOST :{BLACK}Вартість: {CURRENCY_LONG} Макс. швидкість: {VELOCITY}{}Тип: {STRING}{}Місткість: {CARGO_LONG}{}Експлуатація: {CURRENCY_LONG}/рік
STR_ENGINE_PREVIEW_COST_MAX_SPEED_TYPE_RANGE_CAP_CAP_RUNCOST :{BLACK}Вартість: {CURRENCY_LONG} Макс. швидкість: {VELOCITY}{}Тип: {STRING} Дальність: {COMMA} клітин{P ка ки ок}Місткість: {CARGO_LONG}, {CARGO_LONG}{}Експлуатація: {CURRENCY_LONG}/рік
STR_ENGINE_PREVIEW_COST_MAX_SPEED_TYPE_RANGE_CAP_RUNCOST :{BLACK}Вартість: {CURRENCY_LONG} Макс. швидкість: {VELOCITY}{}Тип: {STRING} Дальність: {COMMA} клітин{P ка ки ок}Місткість: {CARGO_LONG}{}Експлуатація: {CURRENCY_LONG}/рік
# Autoreplace window # Autoreplace window
STR_REPLACE_VEHICLES_WHITE :{WHITE}Оновити {STRING} - {STRING} STR_REPLACE_VEHICLES_WHITE :{WHITE}Оновити {STRING} - {STRING}
@ -3679,6 +3788,7 @@ STR_REPLACE_HELP_STOP_BUTTON :{BLACK}Нати
STR_REPLACE_ENGINE_WAGON_SELECT_HELP :{BLACK}Переключення між вікнами заміни потягів та вагонів. STR_REPLACE_ENGINE_WAGON_SELECT_HELP :{BLACK}Переключення між вікнами заміни потягів та вагонів.
STR_REPLACE_ENGINES :Локомотиви STR_REPLACE_ENGINES :Локомотиви
STR_REPLACE_WAGONS :Вагони STR_REPLACE_WAGONS :Вагони
STR_REPLACE_ALL_RAILTYPE :Весь з/д транспорт
STR_REPLACE_HELP_RAILTYPE :{BLACK}Виберіть тип колії, для якого ви збираєтесь оновити потяги STR_REPLACE_HELP_RAILTYPE :{BLACK}Виберіть тип колії, для якого ви збираєтесь оновити потяги
STR_REPLACE_HELP_REPLACE_INFO_TAB :{BLACK}Показує, яким потягом буде замінено потяг, вибраний ліворуч STR_REPLACE_HELP_REPLACE_INFO_TAB :{BLACK}Показує, яким потягом буде замінено потяг, вибраний ліворуч
@ -3771,6 +3881,8 @@ STR_VEHICLE_INFO_AGE :{COMMA} р{P і
STR_VEHICLE_INFO_AGE_RED :{RED}{COMMA} р{P ік оки оків} ({COMMA}) STR_VEHICLE_INFO_AGE_RED :{RED}{COMMA} р{P ік оки оків} ({COMMA})
STR_VEHICLE_INFO_MAX_SPEED :{BLACK}Макс. швидкість: {LTBLUE}{VELOCITY} STR_VEHICLE_INFO_MAX_SPEED :{BLACK}Макс. швидкість: {LTBLUE}{VELOCITY}
STR_VEHICLE_INFO_MAX_SPEED_TYPE :{BLACK}Макс. швидкість: {LTBLUE}{VELOCITY} {BLACK}Тип: {LTBLUE}{STRING}
STR_VEHICLE_INFO_MAX_SPEED_TYPE_RANGE :{BLACK}Макс. швидкість: {LTBLUE}{VELOCITY} {BLACK}Тип: {LTBLUE}{STRING} {BLACK}Дальність: {LTBLUE}{COMMA} клітин{P ка ки ок }
STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED :{BLACK}Вага: {LTBLUE}{WEIGHT_SHORT} {BLACK}Потужність: {LTBLUE}{POWER}{BLACK} Макс. швидкість: {LTBLUE}{VELOCITY} STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED :{BLACK}Вага: {LTBLUE}{WEIGHT_SHORT} {BLACK}Потужність: {LTBLUE}{POWER}{BLACK} Макс. швидкість: {LTBLUE}{VELOCITY}
STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE :{BLACK}Вага: {LTBLUE}{WEIGHT_SHORT} {BLACK}Потужність: {LTBLUE}{POWER}{BLACK} Макс. швидкість: {LTBLUE}{VELOCITY} {BLACK}Макс. тяга: {LTBLUE}{FORCE} STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE :{BLACK}Вага: {LTBLUE}{WEIGHT_SHORT} {BLACK}Потужність: {LTBLUE}{POWER}{BLACK} Макс. швидкість: {LTBLUE}{VELOCITY} {BLACK}Макс. тяга: {LTBLUE}{FORCE}
@ -3904,6 +4016,7 @@ STR_ORDER_CONDITIONAL_AGE :Вік (рок
STR_ORDER_CONDITIONAL_REQUIRES_SERVICE :Потребує техогляду STR_ORDER_CONDITIONAL_REQUIRES_SERVICE :Потребує техогляду
STR_ORDER_CONDITIONAL_UNCONDITIONALLY :Завжди STR_ORDER_CONDITIONAL_UNCONDITIONALLY :Завжди
STR_ORDER_CONDITIONAL_REMAINING_LIFETIME :Залишок строку служби (років) STR_ORDER_CONDITIONAL_REMAINING_LIFETIME :Залишок строку служби (років)
STR_ORDER_CONDITIONAL_MAX_RELIABILITY :Максимальна надійність
STR_ORDER_CONDITIONAL_COMPARATOR_TOOLTIP :{BLACK}Як порівнювати дані транспорту з заданим значенням STR_ORDER_CONDITIONAL_COMPARATOR_TOOLTIP :{BLACK}Як порівнювати дані транспорту з заданим значенням
STR_ORDER_CONDITIONAL_COMPARATOR_EQUALS :дорівнює STR_ORDER_CONDITIONAL_COMPARATOR_EQUALS :дорівнює
@ -4336,6 +4449,7 @@ STR_ERROR_DRIVE_THROUGH_ON_TOWN_ROAD :{WHITE}... ця
STR_ERROR_DRIVE_THROUGH_DIRECTION :{WHITE}... дорога не в тому напрямку STR_ERROR_DRIVE_THROUGH_DIRECTION :{WHITE}... дорога не в тому напрямку
STR_ERROR_DRIVE_THROUGH_CORNER :{WHITE}... проїзні зупинки не можуть мати поворотів STR_ERROR_DRIVE_THROUGH_CORNER :{WHITE}... проїзні зупинки не можуть мати поворотів
STR_ERROR_DRIVE_THROUGH_JUNCTION :{WHITE}... проїзні зупинки не можуть мати перехресть STR_ERROR_DRIVE_THROUGH_JUNCTION :{WHITE}... проїзні зупинки не можуть мати перехресть
STR_ERROR_DRIVE_THROUGH_ON_ONEWAY_ROAD :{WHITE}... дорога одностороння або заблокована
# Station destruction related errors # Station destruction related errors
STR_ERROR_CAN_T_REMOVE_PART_OF_STATION :{WHITE}Не можна зруйнувати частину станції... STR_ERROR_CAN_T_REMOVE_PART_OF_STATION :{WHITE}Не можна зруйнувати частину станції...
@ -4588,6 +4702,7 @@ STR_BASESOUNDS_WIN_DESCRIPTION :Оригіна
STR_BASESOUNDS_NONE_DESCRIPTION :Порожній набір звуків. STR_BASESOUNDS_NONE_DESCRIPTION :Порожній набір звуків.
STR_BASEMUSIC_WIN_DESCRIPTION :Оригінальна музика з Transport Tycoon Deluxe Windows edition. STR_BASEMUSIC_WIN_DESCRIPTION :Оригінальна музика з Transport Tycoon Deluxe Windows edition.
STR_BASEMUSIC_DOS_DESCRIPTION :Оригінальна музика Transport Tycoon Deluxe(DOS) STR_BASEMUSIC_DOS_DESCRIPTION :Оригінальна музика Transport Tycoon Deluxe(DOS)
STR_BASEMUSIC_TTO_DESCRIPTION :Оригінальна музика Transport Tycoon Deluxe(DOS)
STR_BASEMUSIC_NONE_DESCRIPTION :Порожній набір музики. STR_BASEMUSIC_NONE_DESCRIPTION :Порожній набір музики.
##id 0x2000 ##id 0x2000

@ -665,10 +665,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1704,10 +1704,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -952,9 +952,6 @@ STR_QUIT_NO :{BLACK}Не
STR_OSNAME_WINDOWS :Windows STR_OSNAME_WINDOWS :Windows
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1487,10 +1487,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :هایکو STR_OSNAME_HAIKU :هایکو
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1384,10 +1384,7 @@ STR_OSNAME_WINDOWS :ونڈوز
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :یونیکس STR_OSNAME_UNIX :یونیکس
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1786,10 +1786,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -1773,10 +1773,7 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_DOS :DOS STR_OSNAME_DOS :DOS
STR_OSNAME_UNIX :Unix STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku STR_OSNAME_HAIKU :Haiku
STR_OSNAME_MORPHOS :MorphOS
STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2 STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS STR_OSNAME_SUNOS :SunOS

@ -13,9 +13,9 @@
#define LANGUAGE_H #define LANGUAGE_H
#include "core/smallvec_type.hpp" #include "core/smallvec_type.hpp"
#ifdef WITH_ICU_SORT #ifdef WITH_ICU_I18N
#include <unicode/coll.h> #include <unicode/coll.h>
#endif /* WITH_ICU_SORT */ #endif /* WITH_ICU_I18N */
#include "strings_type.h" #include "strings_type.h"
static const uint8 CASE_GENDER_LEN = 16; ///< The (maximum) length of a case/gender string. static const uint8 CASE_GENDER_LEN = 16; ///< The (maximum) length of a case/gender string.
@ -104,9 +104,9 @@ extern LanguageList _languages;
/** The currently loaded language. */ /** The currently loaded language. */
extern const LanguageMetadata *_current_language; extern const LanguageMetadata *_current_language;
#ifdef WITH_ICU_SORT #ifdef WITH_ICU_I18N
extern icu::Collator *_current_collator; extern icu::Collator *_current_collator;
#endif /* WITH_ICU_SORT */ #endif /* WITH_ICU_I18N */
bool ReadLanguagePack(const LanguageMetadata *lang); bool ReadLanguagePack(const LanguageMetadata *lang);
const LanguageMetadata *GetLanguage(byte newgrflangid); const LanguageMetadata *GetLanguage(byte newgrflangid);

@ -28,6 +28,9 @@
#include "core/pool_type.hpp" #include "core/pool_type.hpp"
#include "game/game.hpp" #include "game/game.hpp"
#include "linkgraph/linkgraphschedule.h" #include "linkgraph/linkgraphschedule.h"
#include "station_kdtree.h"
#include "town_kdtree.h"
#include "viewport_kdtree.h"
#include "tracerestrict.h" #include "tracerestrict.h"
#include "programmable_signals.h" #include "programmable_signals.h"
#include "viewport_func.h" #include "viewport_func.h"
@ -68,7 +71,6 @@ void InitializeGame(uint size_x, uint size_y, bool reset_date, bool reset_settin
AllocateMap(size_x, size_y); AllocateMap(size_x, size_y);
ViewportMapClearTunnelCache(); ViewportMapClearTunnelCache();
ViewportClearStationSignCache();
ClearCommandLog(); ClearCommandLog();
_pause_mode = PM_UNPAUSED; _pause_mode = PM_UNPAUSED;
@ -92,6 +94,10 @@ void InitializeGame(uint size_x, uint size_y, bool reset_date, bool reset_settin
ClearCargoPacketDeferredPayments(); ClearCargoPacketDeferredPayments();
PoolBase::Clean(PT_NORMAL); PoolBase::Clean(PT_NORMAL);
RebuildStationKdtree();
RebuildTownKdtree();
RebuildViewportKdtree();
FreeSignalPrograms(); FreeSignalPrograms();
FreeSignalDependencies(); FreeSignalDependencies();

@ -1,128 +0,0 @@
/* $Id$ */
/*
* 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 libtimidity.cpp Playing music via the timidity library. */
#include "../stdafx.h"
#include "../openttd.h"
#include "../sound_type.h"
#include "../debug.h"
#include "libtimidity.h"
#include "midifile.hpp"
#include "../base_media_base.h"
#include <fcntl.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <unistd.h>
#include <signal.h>
#include <sys/stat.h>
#include <errno.h>
#include <timidity.h>
#include "../safeguards.h"
/** The state of playing. */
enum MidiState {
MIDI_STOPPED = 0,
MIDI_PLAYING = 1,
};
static struct {
MidIStream *stream;
MidSongOptions options;
MidSong *song;
MidiState status;
uint32 song_length;
uint32 song_position;
} _midi; ///< Metadata about the midi we're playing.
/** Factory for the libtimidity driver. */
static FMusicDriver_LibTimidity iFMusicDriver_LibTimidity;
const char *MusicDriver_LibTimidity::Start(const char * const *param)
{
_midi.status = MIDI_STOPPED;
_midi.song = NULL;
if (mid_init(param == NULL ? NULL : const_cast<char *>(param[0])) < 0) {
/* If init fails, it can be because no configuration was found.
* If it was not forced via param, try to load it without a
* configuration. Who knows that works. */
if (param != NULL || mid_init_no_config() < 0) {
return "error initializing timidity";
}
}
DEBUG(driver, 1, "successfully initialised timidity");
_midi.options.rate = 44100;
_midi.options.format = MID_AUDIO_S16LSB;
_midi.options.channels = 2;
_midi.options.buffer_size = _midi.options.rate;
return NULL;
}
void MusicDriver_LibTimidity::Stop()
{
if (_midi.status == MIDI_PLAYING) this->StopSong();
mid_exit();
}
void MusicDriver_LibTimidity::PlaySong(const MusicSongInfo &song)
{
std::string filename = MidiFile::GetSMFFile(song);
this->StopSong();
if (filename.empty()) return;
_midi.stream = mid_istream_open_file(filename.c_str());
if (_midi.stream == NULL) {
DEBUG(driver, 0, "Could not open music file");
return;
}
_midi.song = mid_song_load(_midi.stream, &_midi.options);
mid_istream_close(_midi.stream);
_midi.song_length = mid_song_get_total_time(_midi.song);
if (_midi.song == NULL) {
DEBUG(driver, 1, "Invalid MIDI file");
return;
}
mid_song_start(_midi.song);
_midi.status = MIDI_PLAYING;
}
void MusicDriver_LibTimidity::StopSong()
{
_midi.status = MIDI_STOPPED;
/* mid_song_free cannot handle NULL! */
if (_midi.song != NULL) mid_song_free(_midi.song);
_midi.song = NULL;
}
bool MusicDriver_LibTimidity::IsSongPlaying()
{
if (_midi.status == MIDI_PLAYING) {
_midi.song_position = mid_song_get_time(_midi.song);
if (_midi.song_position >= _midi.song_length) {
_midi.status = MIDI_STOPPED;
_midi.song_position = 0;
}
}
return (_midi.status == MIDI_PLAYING);
}
void MusicDriver_LibTimidity::SetVolume(byte vol)
{
if (_midi.song != NULL) mid_song_set_volume(_midi.song, vol);
}

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

Loading…
Cancel
Save